// { dg-do compile } // { dg-additional-options "-g" } class A { public: virtual bool m_fn1 () const = 0; }; class B { const A *m_fn2 () const; }; inline const A * B::m_fn2 () const { class C : A { bool m_fn1 () const { } C () {} }; } void fn1 (A &p1) { p1.m_fn1 (); }