https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82357
--- Comment #4 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- (In reply to Markus Trippelsdorf from comment #3) > 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 () Sorry wrong PR. Please ignore.