http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57147
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> 2013-05-03 09:57:17 UTC --- A similar testcase is for not 'const' but 'noreturn' discovery which should end up purging the fallthru edge. struct __jmp_buf_tag {}; typedef struct __jmp_buf_tag jmp_buf[1]; extern int _setjmp (struct __jmp_buf_tag __env[1]); jmp_buf g_return_jmp_buf; void SetNaClSwitchExpectations (void) { __builtin_longjmp (g_return_jmp_buf, 1); } void TestSyscall(void) { SetNaClSwitchExpectations(); _setjmp (g_return_jmp_buf); } which triggers a similar bug in remove_fallthru_edge ...