summaryrefslogtreecommitdiff
path: root/test/SemaTemplate/deduction.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2017-01-04 02:03:39 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2017-01-04 02:03:39 +0000
commit6471f5e9b1b702cebcc61c94af519e693c097fcf (patch)
treeffb590a9ddc468ef8675005158aed42ad445b2aa /test/SemaTemplate/deduction.cpp
parent08f2fcfb4c15294345893d17b24cafab80d58019 (diff)
downloadclang-6471f5e9b1b702cebcc61c94af519e693c097fcf.tar.gz
Remove accidentally-added lines in r290923 test, and add another testcase.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@290926 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaTemplate/deduction.cpp')
-rw-r--r--test/SemaTemplate/deduction.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/test/SemaTemplate/deduction.cpp b/test/SemaTemplate/deduction.cpp
index fdf21bc79a..5695cab9a2 100644
--- a/test/SemaTemplate/deduction.cpp
+++ b/test/SemaTemplate/deduction.cpp
@@ -385,8 +385,6 @@ namespace overload_vs_pack {
int n1 = g1(X<int, float>(), f, g); // expected-error {{no matching function}}
int n2 = g2(x<int, float>, f, g); // expected-error {{no matching function}}
- int n3 = g1(X<int, float, double, char>(), f);
- int n4 = g2(x<int, float, double, long>, f);
int &a1 = h1<double>(0); // ok, skip deduction for 'f's, deduce matching value from 'g'
int &a2 = h2<double>(0);
@@ -399,4 +397,13 @@ namespace overload_vs_pack {
template<typename ...T> int partial_deduction_2(void (*...f)(T), ...); // expected-note {{deduced incomplete pack <(no value), double> for template parameter 'T'}}
int pd2 = partial_deduction_2(f, g); // expected-error {{no matching function}}
+
+ namespace cwg_example {
+ void f(char, char);
+ void f(int, int);
+ void x(int, char);
+
+ template<typename T, typename ...U> void j(void(*)(U...), void (*...fns)(T, U));
+ void test() { j(x, f, x); }
+ }
}