/* { dg-do compile } */ /* { dg-options "-O2" } */ /* This was causing a failure in the out of SSA pass because VRP was trying to insert assertions for SSA names that flow through abnormal edges. */ void f(int) __attribute__((__noreturn__)); int d(const char *); char * j (); char * foo (int x) { char *path = __null; try { path = j (); if (path != __null) if (d (path) != 0) f (127); f (127); } catch (...) { } return path; }