// { dg-additional-options "-fmodules-ts" } export module linkage; // { dg-module-cmi "linkage" } inline void Foo () {} export inline void Baz () __attribute__((used)); inline void Bink () {} export inline void Baz () { Foo (); Bink (); } extern "C" inline void cfunc (void) __attribute__((used)); extern "C" inline void cfunc (void) {} namespace Inner { inline void Foo2 () {} export inline void Baz2 () __attribute__((used)); inline void Bink2 () {} export inline void Baz2 () { Foo2 (); Bink2 (); } } // { dg-final { scan-assembler "_ZW7linkage3Foov:" } } // { dg-final { scan-assembler "_ZW7linkage4Binkv:" } } // { dg-final { scan-assembler "_ZN5InnerW7linkage4Foo2Ev:" } } // { dg-final { scan-assembler "_ZN5InnerW7linkage5Bink2Ev:" } } // { dg-final { scan-assembler "_ZW7linkage3Bazv:" } } // { dg-final { scan-assembler "_ZN5InnerW7linkage4Baz2Ev:" } } // { dg-final { scan-assembler "cfunc:" } }