1 // PR rtl-optimization/92007
2 // { dg-do compile }
3 // { dg-options "-O2 -fno-tree-dominator-opts -fno-tree-forwprop --param max-cse-insns=0 -Wno-return-type -std=gnu++98 -freorder-blocks-and-partition" }
4 
5 void
6 sb (int *);
7 
8 class d4 {
9 public:
10   ~d4();
11   void gb ();
op()12   int op () { return no; }
wl()13   int wl () { return tf; }
ee()14   bool ee () try { gb (); } catch (...) { return false; }
b1()15   bool b1 () { return (tf == no) ? false : ee (); }
16 
17 private:
18   int no, tf;
19 };
20 
21 void
hs(int * v9)22 hs (int *v9)
23 {
24   d4 p6;
25 
26   p6.gb ();
27   if (p6.op () > p6.wl ())
28     {
29       p6.b1 ();
30       sb (v9);
31     }
32 }
33