c++: Implement P2615 'Meaningful Exports' [PR107688]
[official-gcc.git] / gcc / testsuite / g++.dg / modules / export-4_a.C
blob5f99577dc9918a4e8457b42b1ce779db147474ca
1 // P2615R1 valid declarations
2 // PR c++/107688
3 // { dg-additional-options "-fmodules-ts" }
4 // { dg-module-cmi M }
6 export module M;
8 export {}
9 export { static_assert(true); }
11 export namespace Empty {}
12 export using namespace Empty;
14 export {
15   template <typename T> struct S {};
16   template <typename T> struct S<T*> { using a = int; };
17   template <> struct S<int*> { using b = int; };
18   template struct S<int>;
21 extern "C++" {
22   export void foo();