https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81194
--- Comment #11 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Peter Bergner from comment #10) > I'm testing the attached patch which fixes the ICE. Except this ICEs on the following simple test case. I'll see if this is due to a simple oversite or ... bergner@pike:~/gcc/BUGS/PR81194$ cat swtch.i int a; void b (void) { switch (a) { case 6: default: break; } } bergner@pike:~/gcc/BUGS/PR81194$ /home/bergner/gcc/build/gcc-fsf-mainline-pr81194-x86_64-debug/gcc/xgcc -B/home/bergner/gcc/build/gcc-fsf-mainline-pr81194-x86_64-debug/gcc -O2 -S swtch.i during GIMPLE pass: cfg swtch.i: In function ‘b’: swtch.i:3:1: internal compiler error: Segmentation fault b (void) ^ 0x10e97613 crash_signal /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/toplev.c:338 0x1060bcb8 find_edge(basic_block_def*, basic_block_def*) /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/cfganal.c:498 0x11ce3783 make_edge(basic_block_def*, basic_block_def*, int) /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/cfg.c:315 0x10f0390f make_edges /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/tree-cfg.c:930 0x10f0168b build_gimple_cfg /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/tree-cfg.c:248 0x10f01f27 execute_build_cfg /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/tree-cfg.c:398 0x10f0209b execute /home/bergner/gcc/gcc-fsf-mainline-pr80775/gcc/tree-cfg.c:434 It seems cleanup_tree_cfg() has removed the entire function at this point.