diff options
author | Sebastian Redl <sebastian.redl@getdesigned.at> | 2012-03-15 21:40:51 +0000 |
---|---|---|
committer | Sebastian Redl <sebastian.redl@getdesigned.at> | 2012-03-15 21:40:51 +0000 |
commit | 1918166de779a3270131f6468533d229bb4ef106 (patch) | |
tree | ebf51c408ab7104684d8d70453f72d28051dc105 /clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp | |
parent | 01cecbffd677df87fceb1675ce6bd29056f7421e (diff) | |
download | bcm5719-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.cpp | 13 |
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}}); + } +} |