summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/dependent-base-classes.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-01-12 17:52:59 +0000
committerDouglas Gregor <dgregor@apple.com>2010-01-12 17:52:59 +0000
commit46c59614d345a91ff586daea0cb4537f8bc1866a (patch)
treec2c88881e2af96d4920fc49e9dbb8c14aaa251f4 /clang/test/SemaTemplate/dependent-base-classes.cpp
parentb7168c270ed72d1335f9c6768db953244f029273 (diff)
downloadbcm5719-llvm-46c59614d345a91ff586daea0cb4537f8bc1866a.tar.gz
bcm5719-llvm-46c59614d345a91ff586daea0cb4537f8bc1866a.zip
Parse dependent template-ids in base clauses and member
initializers. This isn't actually in the C++ grammar (in any version), but that's clearly an oversight: both GCC and EDG support this syntax, and it's used within Boost code. I'll file a core issue proposing precisely the change made here. Fixes PR6008. llvm-svn: 93243
Diffstat (limited to 'clang/test/SemaTemplate/dependent-base-classes.cpp')
-rw-r--r--clang/test/SemaTemplate/dependent-base-classes.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/test/SemaTemplate/dependent-base-classes.cpp b/clang/test/SemaTemplate/dependent-base-classes.cpp
new file mode 100644
index 00000000000..56979209ea1
--- /dev/null
+++ b/clang/test/SemaTemplate/dependent-base-classes.cpp
@@ -0,0 +1,6 @@
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+
+template<typename T, typename U>
+struct X0 : T::template apply<U> {
+ X0(U u) : T::template apply<U>(u) { }
+};
OpenPOWER on IntegriCloud