2015-03-24 Paolo Carlini <paolo.carlini@oracle.com>
[official-gcc.git] / gcc / testsuite / g++.dg / ipa / pr61085.C
blob531f59d53025aba8a7764a1466959f5b2d472589
1 /* { dg-do run } */
2 /* { dg-options "-O2 -fno-early-inlining" } */
4 struct A {};
5 struct B : virtual A {
6   unsigned m_i;
7   B() : m_i () {}
8   virtual A *m_virt ()
9   {
10     return 0;
11   }
12   ~B ()
13   {
14     m_foo ();
15     while (m_i)
16       ;
17   }
18   void m_foo ()
19   {
20     m_virt ();
21   }
24 class C : B {
25   A *m_virt () {
26     __builtin_abort ();
27   }
30 int main ()
32   C c;