// { dg-options "-O2" } // { dg-final { scan-assembler-not "\n_?_ZN1AILi0EE4foo1Ev\[: \t\n\]" } } template struct A { void foo1 () throw (); void foo2 (); void UNRELATED (); }; template <> void A<0>::UNRELATED (); template inline void A::foo1 () throw () {} template inline void A::foo2 () {} void bar (A<0> &a) { a.foo1 (); }