blob: c16e6a999b5220fa9a3aeb05ce75e825188ee76c [file] [log] [blame]
// PR c++/122994
// { dg-additional-options "-fmodules -Wtemplate-names-tu-local" }
// { dg-module-cmi m }
export module m;
extern "C++" {
static int internal() { return 42; }
}
export int a = internal();
export int b = []{ return internal(); }();
export template <typename T> int c
= []{ return internal(); }(); // { dg-warning "refers to TU-local entity" }
export template <typename T> int d
= []{ return internal(); }(); // { dg-warning "refers to TU-local entity" }
template int d<int>;
export int e = []{
return []{
return internal();
}();
}();
export int f = []{
struct S {
inline int foo() {
return internal();
}
};
return S{}.foo();
}();
export extern "C++" {
int merge = []{ return internal(); }();
}