summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/nested-name-spec-locations.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaCXX/nested-name-spec-locations.cpp')
-rw-r--r--clang/test/SemaCXX/nested-name-spec-locations.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/nested-name-spec-locations.cpp b/clang/test/SemaCXX/nested-name-spec-locations.cpp
index f0f42f754cb..e4dd6cf9861 100644
--- a/clang/test/SemaCXX/nested-name-spec-locations.cpp
+++ b/clang/test/SemaCXX/nested-name-spec-locations.cpp
@@ -40,3 +40,24 @@ struct UnresolvedUsingTypenameDeclTester {
UnresolvedUsingTypenameDeclTester<int> UnresolvedUsingTypenameDeclCheck; // expected-note{{in instantiation of template class}}
+
+template<typename T, typename U>
+struct PseudoDestructorExprTester {
+ void f(T *t) {
+ t->T::template Inner<typename add_reference<U>::type
+ * // expected-error{{as a pointer to a reference of type}}
+ >::Blarg::~Blarg();
+ }
+};
+
+struct HasInnerTemplate {
+ template<typename T>
+ struct Inner;
+
+ typedef HasInnerTemplate T;
+};
+
+void PseudoDestructorExprCheck(
+ PseudoDestructorExprTester<HasInnerTemplate, float> tester) {
+ tester.f(0); // expected-note{{in instantiation of member function}}
+}
OpenPOWER on IntegriCloud