| // RUN: %clang_cc1 -std=c++20 %s -verify -fsyntax-only | |
| export module M; | |
| namespace { | |
| class TULocalClass {}; | |
| } | |
| template <typename T> | |
| class Templ {}; | |
| class C { | |
| TULocalClass foo() { return TULocalClass(); } // expected-warning {{TU local entity 'TULocalClass' is exposed}} | |
| private: | |
| TULocalClass Member; // expected-warning {{TU local entity 'TULocalClass' is exposed}} | |
| }; | |
| static inline void its() {} | |
| template<int> void g() { its(); } | |
| void f0() { | |
| g<1>(); | |
| } | |
| inline void f1() { | |
| g<1>(); // expected-warning {{TU local entity 'g<1>' is exposed}} | |
| } |