[Bug c++/28348] New: ICE trying to gimplify invalid code

reichelt at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Tue Jul 11 16:23:00 GMT 2006


The following invalid code snippet triggers an ICE since at least GCC 2.95.3:

=========================================
namespace N
{
   struct A {};
   typedef void foo(A);
}

template<typename T> void bar() { T t; foo(t); }

template void bar<N::A>();
=========================================

gimplification failed:
foo <type_decl 0x2aaaaaf1fb60 foo
    type <function_type 0x2aaaaaf7c580 foo
        type <void_type 0x2aaaaae140b0 void type_6 VOID
            align 8 symtab 0 alias set -1
            pointer_to_this <pointer_type 0x2aaaaae14160>>
        QI
        size <integer_cst 0x2aaaaadef7b0 constant invariant 8>
        unit size <integer_cst 0x2aaaaadef7e0 constant invariant 1>
        align 8 symtab 0 alias set -1
        arg-types <tree_list 0x2aaaaaf222d0 value <record_type 0x2aaaaaf7c370
A>
            chain <tree_list 0x2aaaaae0dcf0 value <void_type 0x2aaaaae140b0
void
>>>
        pointer_to_this <pointer_type 0x2aaaaaf7cc60>>
    used VOID file bug.cc line 4
    align 1 context <namespace_decl 0x2aaaaaf1f820 N>
    result <function_type 0x2aaaaaf7c4d0 type <void_type 0x2aaaaae140b0 void>
        QI size <integer_cst 0x2aaaaadef7b0 8> unit size <integer_cst
0x2aaaaade
f7e0 1>
        align 8 symtab 0 alias set -1 arg-types <tree_list 0x2aaaaaf222d0>>>
bug.cc: In function 'void bar() [with T = N::A]':
bug.cc:9:   instantiated from here
bug.cc:7: internal compiler error: gimplification failed
Please submit a full bug report, [etc.]


-- 
           Summary: ICE trying to gimplify invalid code
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code, monitored
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: reichelt at gcc dot gnu dot org


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



More information about the Gcc-bugs mailing list