(j3.2006) question about multiple duplicate local identifiers in Fortran 2003

Michael Ingrassia michaeli
Wed Apr 23 14:03:47 EDT 2008


The program

INTERFACE T
  FUNCTION F(J)
  END FUNCTION
END INTERFACE

TYPE T
  INTEGER :: I
END TYPE T

EXTERNAL F
PRINT *, F(T(17))
END

uses the name T as both a generic name and as the name of a derived type.
Constraint C489 [04-007:63:39] rules out the syntax T(17) as a valid
structure constructor.  But I don't see a prohibition against the syntax
T(17) as a generic function reference, in which case the PRINT statement has an
unambiguous interpretation.   Was it intended that the program be
standard-conforming?

	--Michael I.




More information about the J3 mailing list