Print

Print


On Mar 3, 2014, at 2:10 PM, Lionel, Steve <[log in to unmask]> wrote:

> I’m not really sure why I saw that I needed –standard-semantics to get the code to work – it didn’t look to me like a case where we require that. I’ll poke at it some more.
> 
> I see it now. In the assignment:
> 
> array = [Foo(1)]
> 
> we require that option to get the automatic (re)allocation of "array", since this is intrinsic assignment. I had been staring at the defined assignment in the next statement but that's not the issue.

Right.  That feature of the code was more transparent in the cut-down alternative I included in an earlier reply.  It might also be the key to the “standard conforming” disconnect.  At any one point there is only one Fortran standard (currently F2008) that “cancels and replaces” the previous version. Similarly, F2003 cancelled F95.  The auto-reallocate first appeared in F2003.  If NAG claims full conformance only to f95, then “not standard conforming” might have been a shortened version of “not conforming to the (now cancelled) version of the standard that we promise to support”.   

Like Intel, Cray used to also require a switch to turn on auto allocation.  Since starting to claim F2008 conformance, we reversed this so that the default is to have the feature enabled, with a switch to turn it off. 

Cheers,
Bill



> 
> Steve

Bill Long                                                                       [log in to unmask]
Fortran Technical Suport  &                                  voice:  651-605-9024
Bioinformatics Software Development                     fax:  651-605-9142
Cray Inc./ Cray Plaza, Suite 210/ 380 Jackson St./ St. Paul, MN 55101