https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80046

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4
             Status|UNCONFIRMED                 |WAITING
   Last reconfirmed|                            |2017-03-22
                 CC|                            |janus at gcc dot gnu.org
      Known to work|                            |4.8.5
            Summary|Explicit interface required |[5/6/7 Regression] Explicit
                   |for  at (1): pointer        |interface required for  at
                   |argument                    |(1): pointer argument
     Ever confirmed|0                           |1
      Known to fail|                            |5.4.0, 6.3.0, 7.0

--- Comment #1 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
The code compiles with gfortran 4.8.5. The change occurred between revisions
r197920 (2013-04-12, compiles) and r197969 (2013-04-15, error), likely r197922:
the error occurs in gcc/fortran/expr.c.

Note that the errors has been introduced in order to satisfy F08:7.2.2.4

4 If the characteristics of the pointer object or the pointer target are such
  that an explicit interface is required, both the pointer object and
  the pointer target shall have an explicit interface.

Note that the code compiles if I replace

  procedure(), pointer :: cloneProc => null()

with

  procedure(NodeCloner), pointer :: cloneProc => null()

So I wonder if the test in comment 0 is a valid F08 code.

Reply via email to