------- Comment #17 from burnus at gcc dot gnu dot org 2010-01-08 10:42 ------- (In reply to comment #16) > Here, the ME might be tempted to change the order of WAIT and "var = 7"; thus > in this case we probably need to tell the ME about the ASYNCHRONOUS attribute.
Probably by dropping the "restricted" for the pointer argument (as one would to for TARGET). One should also check that it works for: subroutine finish(var, wait) BLOCK asynchronous :: var wait(wait) var = 7 end BLOCK end subroutine finish assuming that "asynchronous" applies in the block to the dummy argument. (Should work analogously for volatile.) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25829