(j3.2006) description of VOLATILE

Kurt W Hirchert hirchert
Thu Apr 17 11:02:51 EDT 2014

While researching the answer to a question asked in another forum, I had 
reason to carefully look at the description of VOLATILE [102:1-23].  One 
editorial inconsistency struck me:  For objects in general, it says that 
outside agents (i.e., "means not specified by the program") may both 
reference the value of the object and change the value of the object.  
For pointer and allocatable objects, it lists a bunch of other 
attributes that can be changed by outside agents, but makes no mention 
of the outside agents making use of the attributes set established in 

In practice, I doubt that any compiler is going to get this wrong, and 
even if I read this perversely to say that this means that Fortran isn't 
required to make its changes to these attributes accessible to the 
outside agents in a timely manner,  I can't think of any plausible way a 
compiler can keep the Fortran changes and outside agent changes to these 
attributes properly sequenced for use in Fortran without also updating 
those attributes in a timely manner for the outside agents.  
Nevertheless, this inconsistency concerns me.  Am I being overly picky?


More information about the J3 mailing list