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

            Bug ID: 78692
           Summary: [7 Regression] ICE (segfault)
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: doko at gcc dot gnu.org
  Target Milestone: ---

seen with r243108 on x86_64-linux-gnu, works with -O1

$ cat jni_channel.ii
int a;
void *b;
extern "C" {
struct c {
  virtual int d();
};
struct e {
  virtual int operator()(int, const void *, int) = 0;
};
class f {
  int g();
  int h;
  e &i;
};
struct : c, e {
  int operator()(int, const void *, int) { throw int(); }
} j;
int f::g() { a = i(h, b, 0); }
}

$ g++ -std=c++98 -c -O2 jni_channel.iijni_channel.ii: In member function 'int
f::g()':
jni_channel.ii:18:19: internal compiler error: Segmentation fault
 int f::g() { a = i(h, b, 0); }
                  ~^~~~~~~~~
0xb0bb0f crash_signal
        ../../src/gcc/toplev.c:333
0xb43df4 is_complex_reg
        ../../src/gcc/tree-complex.c:177
0xb43df4 init_dont_simulate_again
        ../../src/gcc/tree-complex.c:231
0xb43df4 tree_lower_complex
        ../../src/gcc/tree-complex.c:1662
0xb43df4 execute
        ../../src/gcc/tree-complex.c:1788
Please submit a full bug report,
with preprocessed source if appropriate.

Reply via email to