aboutsummaryrefslogtreecommitdiff
path: root/test/SemaTemplate/class-template-spec.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-11-12 00:46:20 +0000
committerDouglas Gregor <dgregor@apple.com>2009-11-12 00:46:20 +0000
commit8b13c08b1a181b290600814c765f9f199a74f414 (patch)
tree59f604da0d01f6e82c7db0d96eb6c17c07937f12 /test/SemaTemplate/class-template-spec.cpp
parent1144c218f5d74f2270ebcd5ddd82dc472790eaef (diff)
Improve recovery in a wonky case where one tries to specialize a
template template parameter. When building a template-id type, check whether the template-name itself is dependent (even if the template arguments are not!) and handle it as a template-id type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86913 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaTemplate/class-template-spec.cpp')
-rw-r--r--test/SemaTemplate/class-template-spec.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/test/SemaTemplate/class-template-spec.cpp b/test/SemaTemplate/class-template-spec.cpp
index 4cd43b469a..5bc9a6cd67 100644
--- a/test/SemaTemplate/class-template-spec.cpp
+++ b/test/SemaTemplate/class-template-spec.cpp
@@ -104,3 +104,8 @@ Foo<int>* v;
Foo<int>& F() { return *v; }
template <typename T> class Foo {};
Foo<int> x;
+
+
+// Template template parameters
+template<template<class T> class Wibble>
+class Wibble<int> { }; // expected-error{{cannot specialize a template template parameter}}