https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61540

            Bug ID: 61540
           Summary: internal compiler error in
                    try_make_edge_direct_virtual_call
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: jamborm at gcc dot gnu.org
          Reporter: jamborm at gcc dot gnu.org

Created attachment 32958
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=32958&action=edit
Simple testcase

$ ~/gcc/trunk/inst/bin/g++ pr.C -O3 -fno-early-inlining -S
pr.C:38:1: internal compiler error: in try_make_edge_direct_virtual_call, at
ipa-prop.c:3007
 }
 ^
0xa39460 try_make_edge_direct_virtual_call
        /home/mjambor/gcc/trunk/src/gcc/ipa-prop.c:3006
0xa39460 update_indirect_edges_after_inlining
        /home/mjambor/gcc/trunk/src/gcc/ipa-prop.c:3062
0xa39460 propagate_info_to_inlined_callees
        /home/mjambor/gcc/trunk/src/gcc/ipa-prop.c:3138
0xa38e1e propagate_info_to_inlined_callees
        /home/mjambor/gcc/trunk/src/gcc/ipa-prop.c:3142
0x10dd48c inline_call(cgraph_edge*, bool, vec<cgraph_edge*, va_heap, vl_ptr>*,
int*, bool, bool*)
        /home/mjambor/gcc/trunk/src/gcc/ipa-inline-transform.c:282
0x10da041 recursive_inlining
        /home/mjambor/gcc/trunk/src/gcc/ipa-inline.c:1401
0x10da041 inline_small_functions
        /home/mjambor/gcc/trunk/src/gcc/ipa-inline.c:1773
0x10da041 ipa_inline
        /home/mjambor/gcc/trunk/src/gcc/ipa-inline.c:2190
0x10da041 execute
        /home/mjambor/gcc/trunk/src/gcc/ipa-inline.c:2552


The testcase does invoke undefined behavior but the assert triggering
this should emit a builtin_unreachable instead.

Reply via email to