1 // { dg-require-weak "" } 2 // { dg-skip-if "Linkonce not weak" { *-*-mingw* *-*-cygwin } } 3 // { dg-final { scan-assembler ".weak\[ \t\]_?_ZThn._N7Derived3FooEv" { target { ! { *-*-darwin* } } } } } 4 // { dg-final { scan-assembler ".weak_definition\[ \t\]_?_ZThn._N7Derived3FooEv" { target { *-*-darwin* } } } } 5 6 struct Base 7 { 8 virtual void Foo (); 9 }; 10 11 struct Filler 12 { 13 virtual void Baz (); 14 }; 15 16 struct Derived : Filler, Base 17 { 18 virtual void Foo (); 19 }; 20 Foo()21inline void Derived::Foo () 22 { 23 } 24 25 Derived f; 26