diff options
Diffstat (limited to 'test/Modules/Inputs/cxx-templates-common.h')
-rw-r--r-- | test/Modules/Inputs/cxx-templates-common.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/Modules/Inputs/cxx-templates-common.h b/test/Modules/Inputs/cxx-templates-common.h index 682ef939cec0f..a9ca624486718 100644 --- a/test/Modules/Inputs/cxx-templates-common.h +++ b/test/Modules/Inputs/cxx-templates-common.h @@ -32,7 +32,25 @@ template<typename T> struct Outer { }; template<typename T> struct WithPartialSpecialization {}; +template<typename T> struct WithPartialSpecialization<void(T)> { typedef int type; }; typedef WithPartialSpecialization<int*> WithPartialSpecializationUse; +typedef WithPartialSpecialization<void(int)> WithPartialSpecializationUse2; template<typename T> struct WithExplicitSpecialization; typedef WithExplicitSpecialization<int> WithExplicitSpecializationUse; + +template<typename T> struct WithImplicitSpecialMembers { int n; }; + +template<typename T> struct WithAliasTemplate { + template<typename> using X = T; +}; + +template<typename T> struct WithAnonymousDecls { + struct { bool k; }; + union { int a, b; }; + struct { int c, d; } s; + enum { e = 123 }; + typedef int X; +}; + +#include "cxx-templates-textual.h" |