1/* { dg-do compile } */ 2/* { dg-options "-O2" } */ 3 4/* This was causing a failure in the out of SSA pass because VRP was 5 trying to insert assertions for SSA names that flow through 6 abnormal edges. */ 7void f(int) __attribute__((__noreturn__)); 8int d(const char *); 9char * j (); 10 11char * 12foo (int x) 13{ 14 char *path = __null; 15 try 16 { 17 path = j (); 18 if (path != __null) 19 if (d (path) != 0) 20 f (127); 21 f (127); 22 } 23 catch (...) { } 24 25 return path; 26} 27