------- 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

Reply via email to