cmake/Tests/CompileFeatures/cxx_inline_namespaces.cpp

26 lines
276 B
C++
Raw Normal View History

2016-07-09 11:21:54 +02:00
namespace Lib {
inline namespace Lib_1 {
template <typename T>
class A;
2015-04-27 22:25:09 +02:00
}
2016-07-09 11:21:54 +02:00
template <typename T>
void g(T);
2015-04-27 22:25:09 +02:00
}
2016-07-09 11:21:54 +02:00
struct MyClass
{
2015-04-27 22:25:09 +02:00
};
2016-07-09 11:21:54 +02:00
namespace Lib {
template <>
class A<MyClass>
2015-04-27 22:25:09 +02:00
{
};
}
void someFunc()
{
Lib::A<MyClass> a;
2016-07-09 11:21:54 +02:00
g(a); // ok, Lib is an associated namespace of A
2015-04-27 22:25:09 +02:00
}