[Bug fortran/35831] [F95] Shape mismatch check missing for dummy procedure argument

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sat Sep 10 11:27:00 GMT 2011


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)



More information about the Gcc-bugs mailing list