http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25829
--- Comment #23 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-13 13:15:39 UTC --- (In reply to comment #22) > I think the easiest is to not set the "restrict" of dummy arguments involved > in > ASYNCHRONOUS I/O. It seems that GCC understands something different than I by "restrict"; it seems to be much less aggressive than I thought - and seems to match exactly what we need, such that no action seems to be required. Cf. http://gcc.gnu.org/ml/gcc/2011-07/msg00208.html and see PR 49733 for a missed-optimization PR, which is for adding an variable attribute which does optimize across function calls - which is allowed most of the time in Fortran (except for ASYNCHRONOUS and for coarrays).