(j3.2006) (SC22WG5.5239) J3 Fortran interp letter ballot #30 - due 13-Jun-2014
Robert Corbett
robert.corbett
Sat Jun 7 07:16:21 EDT 2014
The following Fortran interpretations are being balloted:
Yes No Number Title
-Y- --- F08/0099 VOLATILE in specification expressions
-Y- --- F08/0100 IMPORT statement and prior explicit declaration
-Y- --- F08/0101 NAMELIST and multiple occurrences of a variable
-C- --- F08/0102 MERGE and polymorphism
--- -N- F08/0103 Pointers to internal procedures with different
host instances
-Y- --- F08/0104 IEEE Inquiry Functions
-Y- --- F08/0105 Is the ASYNCHRONOUS attribute allowed with the
VALUE attribute?
-Y- --- F08/0106 MOVE_ALLOC for a remote array
------------------------------------------
F08/0102 C
The answers given agree with what the text of the Fortran 2008
standard says. I think the language would be better if MERGE
were defined differently, but such a change should not be done
as part of an interpretation. I do not think the edit is
necessary, but I agree to its inclusion for the sake of clarity.
I am slightly bothered by answer A2. It states "Only MERGE
invocation E is polymorphic." The code shown is not standard
conforming, for reasons given in answer A3, and so it is
questionable if it is polymorphic or not.
------------------------------------------
F08/0103 N
The answer given prohibits certain optimizations for little gain.
An internal procedure that does not reference any variables or
procedures in the host scope that are bound to a particular host
instance could be implemented more efficiently if the standard
made the result of ASSOCIATED with two arguments that are
procedures undefined if those procedures are different instances
of an internal procedure. I see little use for the two argument
form of ASSOCIATED where the arguments are procedures. I see
even less use for it when the two arguments refer to the same
internal procedure.
------------------------------------------
Robert Corbett
representing Oracle America
More information about the J3
mailing list