(j3.2006) (SC22WG5.5441) Result of WG5 straw ballot 8 on Fortran 2008 interpretations

Van Snyder Van.Snyder
Mon Feb 2 16:00:51 EST 2015


Concerning F08/0102, I wrote
> 
>   Further, it does not follow that the result is polymorphic if and only
>   if TSOURCE and FSOURCE are polymorphic, simply because they are
>   required to have the same declared and dynamic type and type
>   parameters.  Remove "Because ... types)," from the edit (and
>   capitalize "the"), leaving only the requirement (not the unsupported
>   conclusion) "The result is polymorphic if and only if both TSOURCE and
>   FSOURCE are polymorphic."
>   
> Decision of /INTERP: pass unchanged. 
> 
> Reasons: 
> The requirement on the type of TSOURCE being the same as the type of 
> FSOURCE (at [368:24]) is not qualified explicitly or implicitly to be 
> referring to one or the other, therefore this must mean both the 
> declared type and the dynamic type, see interp F08/0047. 
> 
> It does follow that the result is polymorphic if and only if TSOURCE 
> and FSOURCE are polymorphic. If TSOURCE is not polymorphic, the result 
> has its dynamic type and so is not polymorphic. If FSOURCE is not 
> polymorphic, TSOURCE has the dynamic type of FSOURCE and so the result
> does too and is therefore not polymorphic.

The phrase "simply because they are required to have the same declared
type and type parameters" was apparently not considered in constructing
the final decision.  I agree that TSOURCE and FSOURCE are required to
have the same type and type parameters, but that is not sufficient
reason for the result to be polymorphic.  We should either remove the
reasoning from the edit, or complete it.





More information about the J3 mailing list