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

           Summary: hang or spurious compiler message using procedure
                    pointer with pass
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: sjbe...@comcast.net


Created attachment 22077
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22077
code demonstrating bug referenced in report

Compiling the attached module, with gfortran 4.6 trunk results in the following
error message:

==============
gfortran test_2.f90
test_2.f90:6.52:

  procedure(fun_interface), pointer, pass :: fun_ptr
                                                    1
Error: Non-polymorphic passed-object dummy argument of 'fun_ptr' at (1)

==============

potential problem 1 : the error message appears incorrect because the target of
the passed-object dummy argument isn't polymorphic.

potential problem 2: if the error message is correct and if the type of the
passed-object dummy argument in the sample code is changed from a declaration
of "type" to "class", the module compiles but hangs when the passed-object
dummy argument is referenced. 

The relevant statements are labeled in the attached file.

============


et:blotII2 sjbespa$ /volumes/dev/gfortran-4.6-trunk/bin/gfortran -v
Using built-in specs.
COLLECT_GCC=/volumes/dev/gfortran-4.6-trunk/bin/gfortran
COLLECT_LTO_WRAPPER=/Volumes/dev/gfortran-4.6-trunk/bin/../libexec/gcc/x86_64-apple-darwin10/4.6.0/lto-wrapper
Target: x86_64-apple-darwin10
Configured with: ../gfortran-4.6-src/configure
--prefix=/volumes/dev/gfortran-4.6-trunk --enable-languages=fortran
--host=x86_64-apple-darwin10 --build=x86_64-apple-darwin10
--target=x86_64-apple-darwin10
Thread model: posix
gcc version 4.6.0 20101013 (experimental) (GCC)

Reply via email to