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

            Bug ID: 63580
           Summary: [5 Regression] ICE : error: invalid argument to gimple
                    call
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: trippels at gcc dot gnu.org
                CC: marxin at gcc dot gnu.org

trippels@gcc1-power7 status % cat defaults.ii
struct A
{
};
template <class L, class R> A operator%(L, R);
template <class A0, class A1, class A2, class A3>
void make_tuple (A0 &, A1, A2, A3);
A
bar (int p1, char p2, int p3, double p4)
{
  A a;
  make_tuple (p1, p2, p3, p4);
  return "int; char; string; double; " % a;
}
A
foo (int p1, char p2, int p3, double p4)
{
  A b;
  make_tuple (p1, p2, p3, p4);
  return "int; char; string; double; " % b;
}

trippels@gcc1-power7 status % g++ -c -w -O2 -fPIC defaults.ii
defaults.ii: In function ‘A bar(int, char, int, double)’:
defaults.ii:20:1: error: invalid argument to gimple call
 }
 ^
p1
# .MEM_5 = VDEF <.MEM_1(D)>
<retval> = _Z3fooicid.localalias.0 (p1, p2_2(D), p3_3(D), p4_4(D)); [tail call]
defaults.ii:20:1: internal compiler error: verify_gimple failed
0x109d2c2f verify_gimple_in_cfg(function*, bool)
        ../../gcc/gcc/tree-cfg.c:5025
0x10893493 execute_function_todo
        ../../gcc/gcc/passes.c:1755
0x10894137 do_per_function
        ../../gcc/gcc/passes.c:1489
0x10894137 do_per_function
        ../../gcc/gcc/passes.c:1479
0x108942ef execute_todo
        ../../gcc/gcc/passes.c:1812
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
trippels@gcc1-power7 status % g++ -c -fno-ipa-icf -O2 -fPIC defaults.ii
trippels@gcc1-power7 status %

Reply via email to