diff options
Diffstat (limited to 'test/SemaCXX/using-decl-templates.cpp')
-rw-r--r-- | test/SemaCXX/using-decl-templates.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/test/SemaCXX/using-decl-templates.cpp b/test/SemaCXX/using-decl-templates.cpp index d766bb3ac6bf..d5cc3a08eb75 100644 --- a/test/SemaCXX/using-decl-templates.cpp +++ b/test/SemaCXX/using-decl-templates.cpp @@ -90,5 +90,14 @@ namespace aliastemplateinst { template<typename T> struct A { }; template<typename T> using APtr = A<T*>; // expected-note{{previous use is here}} - template struct APtr<int>; // expected-error{{elaborated type refers to a type alias template}} + template struct APtr<int>; // expected-error{{type alias template 'APtr' cannot be referenced with a struct specifier}} } + +namespace DontDiagnoseInvalidTest { +template <bool Value> struct Base { + static_assert(Value, ""); // expected-error {{static_assert failed}} +}; +struct Derived : Base<false> { // expected-note {{requested here}} + using Base<false>::Base; // OK. Don't diagnose that 'Base' isn't a base class of Derived. +}; +} // namespace DontDiagnoseInvalidTest |