https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82492
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|c++ |tree-optimization --- Comment #3 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- Segfaults in tree-ssa-sccvn: trippels@gcc67 ~ % cat _png.ii void _setjmp(int); void png_set_longjmp_fn(); struct SeqBase { virtual void m_fn1() {} void m_fn2() { m_fn1(); } } a; void write_png() { a.m_fn2(); try { png_set_longjmp_fn(); _setjmp(0); } catch (...) { } } trippels@gcc67 ~ % ~/gcc_7/usr/local/bin/g++ -c -O2 _png.ii _png.ii: In function ‘void write_png()’: _png.ii:7:6: internal compiler error: Segmentation fault void write_png() { ^~~~~~~~~ #0 0x00000000013474d1 in visit_use(tree_node*) () #1 0x0000000001345a55 in DFS(tree_node*) () #2 0x0000000001344630 in sccvn_dom_walker::before_dom_children(basic_block_def*) () #3 0x00000000014a8835 in dom_walker::walk(basic_block_def*) () #4 0x0000000001342a98 in run_scc_vn(vn_lookup_kind) () #5 0x0000000001329537 in (anonymous namespace)::pass_fre::execute(function*) () #6 0x000000000120e434 in execute_one_pass(opt_pass*) () #7 0x0000000000893ed2 in execute_pass_list(function*, opt_pass*) [clone .cold.77] () #8 0x0000000001556441 in symbol_table::compile() () #9 0x00000000010b3aff in symbol_table::finalize_compilation_unit() () #10 0x000000000159b4b0 in compile_file() () #11 0x0000000000f6130d in toplev::main(int, char**) () #12 0x0000000000f625ab in main ()