http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25829

--- Comment #22 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-13 
09:24:40 UTC ---
Note: TR 29113 introduces a wider coverage of ASYNCHRONOUS, cf. almost-PDTR
29113 at ftp://ftp.nag.co.uk/sc22wg5/N1851-N1900/N1866.pdf.

I think the easiest is to not set the "restrict" of dummy arguments involved in
ASYNCHRONOUS I/O. That way, one has:

  call user_write(id, var)
  ...
  call user_wait(id)
  var = ...

The address of the "var" escapes at "user_write" and is thus available to
"user_wait" - hence, "var =" will not be moved across "user_wait". Ditto for
gfortran's asynchronous I/O.

Reply via email to