[Bug fortran/55960] New: [OOP] ICE in replace_comp, at fortran/expr.c:4356

janus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Jan 13 10:14:00 GMT 2013


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

             Bug #: 55960
           Summary: [OOP] ICE in replace_comp, at fortran/expr.c:4356
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: janus@gcc.gnu.org


Reported at http://gcc.gnu.org/ml/fortran/2013-01/msg00109.html.

Reduced test case:

module pdfs
  type, abstract :: pdf
  contains
    procedure(getdims), deferred :: getdims
    procedure(getx), deferred :: getx
  end type pdf

  abstract interface
    pure function getdims(this)
      import pdf
      class(pdf), intent(in) :: this
      integer getdims
    end function getdims

    pure function getx(this)
      import pdf
      class(pdf), intent(in) :: this
      real, dimension(getdims(this)) :: getx
    end function getx
  end interface

end module pdfs


Yields the ICE:

f951: internal compiler error: in replace_comp, at fortran/expr.c:4356
0x57af34 replace_comp
        /home/jweil/gcc48/trunk/gcc/fortran/expr.c:4356
0x57a3a5 gfc_traverse_expr(gfc_expr*, gfc_symbol*, bool (*)(gfc_expr*,
gfc_symbol*, int*), int)
        /home/jweil/gcc48/trunk/gcc/fortran/expr.c:4073
0x57afa5 gfc_expr_replace_comp(gfc_expr*, gfc_component*)
        /home/jweil/gcc48/trunk/gcc/fortran/expr.c:4366
0x5f0c77 resolve_fl_derived0
        /home/jweil/gcc48/trunk/gcc/fortran/resolve.c:12622
0x5f1d9e resolve_fl_derived
        /home/jweil/gcc48/trunk/gcc/fortran/resolve.c:12961
0x5f296a resolve_symbol
        /home/jweil/gcc48/trunk/gcc/fortran/resolve.c:13229
0x611e1a do_traverse_symtree
        /home/jweil/gcc48/trunk/gcc/fortran/symbol.c:3449
0x611ee6 gfc_traverse_ns(gfc_namespace*, void (*)(gfc_symbol*))
        /home/jweil/gcc48/trunk/gcc/fortran/symbol.c:3474
0x5f68db resolve_types
        /home/jweil/gcc48/trunk/gcc/fortran/resolve.c:14889
0x5f6d28 gfc_resolve(gfc_namespace*)
        /home/jweil/gcc48/trunk/gcc/fortran/resolve.c:14989
0x5ce730 gfc_parse_file()
        /home/jweil/gcc48/trunk/gcc/fortran/parse.c:4603
0x61b4c1 gfc_be_parse_file
        /home/jweil/gcc48/trunk/gcc/fortran/f95-lang.c:189



More information about the Gcc-bugs mailing list