summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp')
-rw-r--r--clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp b/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
index c8595d2e364..75c6734bce3 100644
--- a/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
+++ b/clang/test/SemaCXX/cxx0x-initializer-stdinitializerlist.cpp
@@ -220,10 +220,14 @@ namespace initlist_of_array {
namespace init_list_deduction_failure {
void f();
void f(int);
+ // FIXME: It'd be nice to track that 'T' became a non-deduced context due to
+ // overload resolution failure for 'f'.
template<typename T> void g(std::initializer_list<T>);
- // expected-note@-1 {{candidate template ignored: couldn't resolve reference to overloaded function 'f'}}
- void h() { g({f}); }
- // expected-error@-1 {{no matching function for call to 'g'}}
+ // expected-note@-1 {{candidate template ignored: couldn't infer template argument 'T'}}
+ void h() {
+ g({f}); // expected-error {{no matching function for call to 'g'}}
+ g({f, h}); // ok
+ }
}
namespace deleted_copy {
OpenPOWER on IntegriCloud