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

             Bug #: 53441
           Summary: [4.8 Regression] obj-c++.dg/ivar-invalid-type-1.mm ICE
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Keywords: ice-checking, ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: objc++
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: ubiz...@gmail.com
            Target: x86_64-pc-linux-gnu


Created attachment 27464
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27464
Preprocessed source of the failing test

gcc/testsuite/obj-c++.dg/ivar-invalid-type-1.mm currently ICEs on
x86_64-pc-linux-gnu (and probably other targets) with:

$ ~/gcc-build/gcc/cc1objplus ivar-invalid-type-1.mii

/home/uros/gcc-svn/trunk/gcc/testsuite/obj-c++.dg/ivar-invalid-type-1.mm:16:15:
internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.

(gdb) bt
#0  constructor_name_p (name=0x7ffff1b33108, type=0x0) at
../../gcc-svn/trunk/gcc/cp/name-lookup.c:1961
#1  0x00000000005897cb in grokdeclarator (declarator=0x17c8740,
declspecs=<optimized out>, decl_context=<optimized out>, initialized=0, 
    attrlist=0x7fffffffdaa8) at ../../gcc-svn/trunk/gcc/cp/decl.c:9806
#2  0x00000000006157ca in grokfield (declarator=<optimized out>,
declspecs=0x7fffffffdb10, init=0x0, init_const_expr_p=<optimized out>, 
    asmspec_tree=0x0, attrlist=0x101010101010101) at
../../gcc-svn/trunk/gcc/cp/decl2.c:810
#3  0x0000000000652dc4 in cp_parser_objc_class_ivars (parser=0x7ffff1b331b8) at
../../gcc-svn/trunk/gcc/cp/parser.c:24093
#4  cp_parser_objc_class_ivars (parser=0x7ffff1b331b8) at
../../gcc-svn/trunk/gcc/cp/parser.c:23986
#5  0x000000000065c568 in cp_parser_objc_class_interface (attributes=0x0,
parser=0x7ffff1b331b8) at ../../gcc-svn/trunk/gcc/cp/parser.c:24248
#6  cp_parser_objc_declaration (parser=0x7ffff1b331b8, attributes=0x0) at
../../gcc-svn/trunk/gcc/cp/parser.c:24341

(gdb) li
1956    bool
1957    constructor_name_p (tree name, tree type)
1958    {
1959      tree ctor_name;
1960
1961      gcc_assert (MAYBE_CLASS_TYPE_P (type));
1962
1963      if (!name)
1964        return false;
1965

(gdb) p type
$1 = (tree_node *) 0x0

Reply via email to