summaryrefslogtreecommitdiffstats
path: root/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2014-10-17 02:46:42 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2014-10-17 02:46:42 +0000
commitcfaa5a32441407450ec86276f3ab2e06a2ebc952 (patch)
tree6c8a590c5aec4d05309a7925618145cacc7d4415 /clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
parent7e350c927c4322dc7eafe40a3a12f4ff2b0e8084 (diff)
downloadbcm5719-llvm-cfaa5a32441407450ec86276f3ab2e06a2ebc952.tar.gz
bcm5719-llvm-cfaa5a32441407450ec86276f3ab2e06a2ebc952.zip
Towards PR21289: don't lose track of unexpanded parameter packs with
non-dependent types, in CXXScalarValueInitExprs and in the nested-name-specifier or template arguments of a DeclRefExpr in particular. llvm-svn: 220028
Diffstat (limited to 'clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp')
-rw-r--r--clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp b/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
index dae68656669..8a70db6789b 100644
--- a/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
+++ b/clang/test/CXX/temp/temp.decls/temp.variadic/p5.cpp
@@ -422,3 +422,17 @@ namespace PR16303 {
B<1,2>::C<4,5,6> c1; // expected-note{{in instantiation of}}
B<1,2,3,4>::C<4,5,6> c2; // expected-note{{in instantiation of}}
}
+
+namespace PR21289 {
+ template<int> using T = int;
+ template<typename> struct S { static const int value = 0; };
+ template<typename> const int vt = 0; // expected-warning {{extension}}
+ int f(...);
+ template<int ...Ns> void g() {
+ f(T<Ns>()...);
+ f(S<T<Ns>>::value...);
+ f(vt<T<Ns>>...);
+ }
+ template void g<>();
+ template void g<1, 2, 3>();
+}
OpenPOWER on IntegriCloud