http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35831

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Shape mismatch check        |[F95] Shape mismatch check
                   |missing for dummy procedure |missing for dummy procedure
                   |argument                    |argument

--- Comment #7 from janus at gcc dot gnu.org 2011-09-10 11:24:02 UTC ---
Some more F08 standard quotes:

"12.5.2.9 Actual arguments associated with dummy procedure entities
If the interface of a dummy procedure is explicit, its characteristics as a
procedure (12.3.1) shall be the same as those of its effective argument, ..."

"12.3.1 Characteristics of procedures
The characteristics of a procedure are the classification of the procedure as a
function or subroutine, whether it is pure, whether it is elemental, whether it
has the BIND attribute, the characteristics of its dummy arguments, ..."

"12.3.2.2 Characteristics of dummy data objects
The characteristics of a dummy data object are its type, its type parameters
(if any), its shape, ...
If a shape, size, or type parameter is assumed or deferred, it is a
characteristic."


Combining the three statements above, F08 clearly demands that the *shape* of
the argument should be the same (meaning that the bounds themselves may
differ).


"1.3.128 shape
array dimensionality of a data entity, represented as a rank-one array whose
size is the rank of the data entity and whose elements are the extents of the
data entity"


So I would conclude that:
 * comment #0 is invalid (as well as the original c.l.f. example)
 * comment #2 is valid (ifort's check seems to be too strict)

Reply via email to