summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
diff options
context:
space:
mode:
authorSebastian Redl <sebastian.redl@getdesigned.at>2012-03-15 21:40:51 +0000
committerSebastian Redl <sebastian.redl@getdesigned.at>2012-03-15 21:40:51 +0000
commit1918166de779a3270131f6468533d229bb4ef106 (patch)
treeebf51c408ab7104684d8d70453f72d28051dc105 /clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
parent01cecbffd677df87fceb1675ce6bd29056f7421e (diff)
downloadbcm5719-llvm-1918166de779a3270131f6468533d229bb4ef106.tar.gz
bcm5719-llvm-1918166de779a3270131f6468533d229bb4ef106.zip
Support deducing template arguments from nested initializer lists. PR12119.
llvm-svn: 152848
Diffstat (limited to 'clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp')
-rw-r--r--clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp b/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
index 23b51515f9d..0e0e8f254b0 100644
--- a/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
+++ b/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
@@ -137,3 +137,16 @@ struct haslist1 {
haslist1::haslist1()
: il{1, 2, 3} // expected-warning{{at the end of the constructor}}
{}
+
+namespace PR12119 {
+ // Deduction with nested initializer lists.
+ template<typename T> void f(std::initializer_list<T>);
+ template<typename T> void g(std::initializer_list<std::initializer_list<T>>);
+
+ void foo() {
+ f({0, {1}});
+ g({{0, 1}, {2, 3}});
+ std::initializer_list<int> il = {1, 2};
+ g({il, {2, 3}});
+ }
+}
OpenPOWER on IntegriCloud