summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/issue150.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaTemplate/issue150.cpp')
-rw-r--r--clang/test/SemaTemplate/issue150.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/clang/test/SemaTemplate/issue150.cpp b/clang/test/SemaTemplate/issue150.cpp
index 0d7930723fc..2cfa8c5cb1e 100644
--- a/clang/test/SemaTemplate/issue150.cpp
+++ b/clang/test/SemaTemplate/issue150.cpp
@@ -69,3 +69,29 @@ namespace MultiReplacePartial {
int check0[is_same<X<int, int, Y>::type, Y<int, int*, int* const> >::value? 1 : -1];
}
+
+namespace PR9016 {
+ template<typename > struct allocator ;
+ template<typename > struct less ;
+
+ template<class T, template<class> class Compare, class Default,
+ template<class> class Alloc>
+ struct interval_set { };
+
+ template <class X, template<class> class = less> struct interval_type_default {
+ typedef X type;
+ };
+
+ template <class T,
+ template<class _T, template<class> class Compare = less,
+ class = typename interval_type_default<_T,Compare>::type,
+ template<class> class = allocator> class IntervalSet>
+ struct ZZZ
+ {
+ IntervalSet<T> IntervalSetT;
+ };
+
+ void test() {
+ ZZZ<int, interval_set> zzz;
+ }
+}
OpenPOWER on IntegriCloud