summaryrefslogtreecommitdiff
path: root/test/SemaTemplate/alias-templates.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2017-01-09 21:23:21 +0000
committerDimitry Andric <dim@FreeBSD.org>2017-01-09 21:23:21 +0000
commitfdc82ccb3f2b23a89e7002fe8238e1422b00f96a (patch)
treef189aa0a3010e0eb212970b8eadf0a8b098985ea /test/SemaTemplate/alias-templates.cpp
parent6694ed095d6b27a2c92ec4fd63664fcd88a05749 (diff)
Diffstat (limited to 'test/SemaTemplate/alias-templates.cpp')
-rw-r--r--test/SemaTemplate/alias-templates.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/SemaTemplate/alias-templates.cpp b/test/SemaTemplate/alias-templates.cpp
index bcdc84e19f7e..d70e86817849 100644
--- a/test/SemaTemplate/alias-templates.cpp
+++ b/test/SemaTemplate/alias-templates.cpp
@@ -244,3 +244,13 @@ namespace redecl {
template<typename = void> using A = int;
A<> a; // ok
}
+
+namespace PR31514 {
+ template<typename T, typename> using EnableTupleSize = T;
+
+ template<typename T> struct tuple_size { static const int value = 0; };
+ template<typename T> struct tuple_size<EnableTupleSize<const T, decltype(tuple_size<T>::value)>> {};
+ template<typename T> struct tuple_size<EnableTupleSize<volatile T, decltype(tuple_size<T>::value)>> {};
+
+ tuple_size<const int> t;
+}