llvm-for-llvmta/tools/clang/test/CXX/expr/expr.post/expr.call/p4.cpp

23 lines
762 B
C++

// RUN: %clang_cc1 -verify %s
void a(int x = 0, int y); // #1 expected-error {{missing default argument on parameter 'y'}}
void b() {
a(); // expected-error {{no matching function}} expected-note@#1 {{requires 2 arguments, but 0 were provided}}
a(0); // expected-error {{no matching function}} expected-note@#1 {{requires 2 arguments, but 1 was provided}}
a(0, 0);
}
void a(int x, int y = 0);
void c() {
a();
a(0);
a(0, 0);
}
template<typename ...T> void f(int x = 0, T ...); // #2
void g() {
f<int>(); // expected-error {{no matching function}} expected-note@#2 {{requires 2 arguments, but 0 were provided}}
f<int>(0); // expected-error {{no matching function}} expected-note@#2 {{requires 2 arguments, but 1 was provided}}
f<int>(0, 0);
}