https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86422
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- So with a debug build I can see (gdb) run Starting program: /home/abuild/rguenther/gcc8-g/gcc/cc1plus -quiet /tmp/CodePoint.ii Program received signal SIGSEGV, Segmentation fault. 0x0000000001576cf6 in verify_vssa (bb=<basic_block 0x7fff7bc081a0 (1591494)>, current_vdef=<ssa_name 0x7fff2894d3a8>, visited=0x1389be00) at /space/rguenther/src/svn/gcc-8-branch/gcc/tree-ssa.c:632 632 if (bitmap_bit_p (visited, bb->index)) (gdb) p bb $1 = <basic_block 0x7fff7bc081a0 (1591494)> (ick btw, that are many basic blocks) and the SEGFAULT is a stack overflow due to recursion in verify_vssa which does /* Verify destination PHI uses and recurse. */ edge_iterator ei; edge e; FOR_EACH_EDGE (e, ei, bb->succs) { gphi *phi = get_virtual_phi (e->dest); if (phi && PHI_ARG_DEF_FROM_EDGE (phi, e) != current_vdef) { error ("PHI node with wrong VUSE on edge from BB %d", e->src->index); print_gimple_stmt (stderr, phi, 0, TDF_VOPS); fprintf (stderr, "expected "); print_generic_expr (stderr, current_vdef); fprintf (stderr, "\n"); err = true; } /* Recurse. */ err |= verify_vssa (e->dest, current_vdef, visited); which is of course stupid. I'll fix that. Re-running with -fno-checking now to side-step the above issue (as said, this is a --enable-checking build). I do know we have some algorithms that recurse to dominator sons and very likely the CFG structure will result in big recursion depth there as well. So maybe a workaround for you is to do ulimit -s unlimited?