Be careful about comdat boundary in ICF (PR ipa/82352).
[official-gcc.git] / gcc / testsuite / g++.dg / opt / ptrmem6.C
blob891c4ff176faf8352e7d8d8038482894bd43d57a
1 // PR tree-opt/18040
2 // { dg-do compile }
3 // { dg-options "-O3" }
5 int PyObject_IsTrue();
6 struct object_base
8   void ptr() const;
9   void ptr1() const;
11 struct object : public object_base
13   typedef void (object::*bool_type)() const;
14   inline operator bool_type() const
15     { return PyObject_IsTrue()
16        ? &object_base::ptr : &object::ptr1; }
18 void f();
19 void g (void)
21     for (unsigned n = 0; n < 100; ++n)
22     {
23         object kv;
24         if (kv)
25           f();
26     }