summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/overload-call.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2017-01-09 00:43:47 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2017-01-09 00:43:47 +0000
commitd22652122df911fedd058dc5add1bb4478c7163e (patch)
tree43f2e53e24f32244fb713ee56a9ce5b0a54155e1 /clang/test/SemaCXX/overload-call.cpp
parente24f5e204b9fcce3fbafa90130b631af2480d4ef (diff)
downloadbcm5719-llvm-d22652122df911fedd058dc5add1bb4478c7163e.tar.gz
bcm5719-llvm-d22652122df911fedd058dc5add1bb4478c7163e.zip
Implement C++ DR1391 (wg21.link/cwg1391)
Check for implicit conversion sequences for non-dependent function template parameters between deduction and substitution. The idea is to accept as many cases as possible, on the basis that substitution failure outside the immediate context is much more common during substitution than during implicit conversion sequence formation. This re-commits r290808, reverted in r290811, with a fix for handling of explicitly-specified template argument packs. llvm-svn: 291410
Diffstat (limited to 'clang/test/SemaCXX/overload-call.cpp')
-rw-r--r--clang/test/SemaCXX/overload-call.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/test/SemaCXX/overload-call.cpp b/clang/test/SemaCXX/overload-call.cpp
index 3a01bf24b31..0e3a9ee50bb 100644
--- a/clang/test/SemaCXX/overload-call.cpp
+++ b/clang/test/SemaCXX/overload-call.cpp
@@ -338,7 +338,7 @@ namespace PR5756 {
// Tests the exact text used to note the candidates
namespace test1 {
- template <class T> void foo(T t, unsigned N); // expected-note {{candidate function [with T = int] not viable: no known conversion from 'const char [6]' to 'unsigned int' for 2nd argument}}
+ template <class T> void foo(T t, unsigned N); // expected-note {{candidate function not viable: no known conversion from 'const char [6]' to 'unsigned int' for 2nd argument}}
void foo(int n, char N); // expected-note {{candidate function not viable: no known conversion from 'const char [6]' to 'char' for 2nd argument}}
void foo(int n, const char *s, int t); // expected-note {{candidate function not viable: requires 3 arguments, but 2 were provided}}
void foo(int n, const char *s, int t, ...); // expected-note {{candidate function not viable: requires at least 3 arguments, but 2 were provided}}
OpenPOWER on IntegriCloud