[Bug fortran/55983] [4.7/4.8 Regression] ICE in find_typebound_proc_uop, at fortran/class.c:2711

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Jan 15 08:29:00 GMT 2013


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

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-invalid-code
                 CC|                            |janus at gcc dot gnu.org
            Summary|ICE in                      |[4.7/4.8 Regression] ICE in
                   |find_typebound_proc_uop, at |find_typebound_proc_uop, at
                   |fortran/class.c:2711        |fortran/class.c:2711

--- Comment #1 from janus at gcc dot gnu.org 2013-01-15 08:27:39 UTC ---

> $ /usr/lib/gcc-snapshot/bin/gfortran -ffree-form -std=f2008 bug2.f
> f951: internal compiler error: in find_typebound_proc_uop, at
> fortran/class.c:2711

Confirmed with trunk and 4.7. (Btw, why don't you use a .f90 suffix? Then you
don't need -ffree-form ...)

4.6 correctly complains:

c0.f90:24.25:

      call bcx%fill_halos()
                         1
Error: Derived type 'bcd_t' at (1) is being used before it is defined
c0.f90:16.32:

    class(bcd_t), pointer :: bcx, bcy
                                1
Error: The pointer component 'bcx' of 'mpdata_t' at (1) is a type that has not
been declared


It seems you are missing a use statement and found an ICE-on-invalid
regression.



More information about the Gcc-bugs mailing list