diff options
-rw-r--r-- | clang/include/clang/Basic/DiagnosticSemaKinds.td | 5 | ||||
-rw-r--r-- | clang/lib/Sema/SemaChecking.cpp | 2 | ||||
-rw-r--r-- | clang/test/Sema/varargs-x86-64.c | 4 | ||||
-rw-r--r-- | clang/test/Sema/varargs.c | 10 |
4 files changed, 11 insertions, 10 deletions
diff --git a/clang/include/clang/Basic/DiagnosticSemaKinds.td b/clang/include/clang/Basic/DiagnosticSemaKinds.td index 822124f0dd9..b08241d849c 100644 --- a/clang/include/clang/Basic/DiagnosticSemaKinds.td +++ b/clang/include/clang/Basic/DiagnosticSemaKinds.td @@ -7411,8 +7411,9 @@ def err_va_start_used_in_wrong_abi_function : Error< "'va_start' used in %select{System V|Win64}0 ABI function">; def err_ms_va_start_used_in_sysv_function : Error< "'__builtin_ms_va_start' used in System V ABI function">; -def warn_second_parameter_of_va_start_not_last_named_argument : Warning< - "second parameter of 'va_start' not last named argument">, InGroup<Varargs>; +def warn_second_arg_of_va_start_not_last_named_param : Warning< + "second argument to 'va_start' is not the last named parameter">, + InGroup<Varargs>; def warn_va_start_of_reference_type_is_undefined : Warning< "'va_start' has undefined behavior with reference types">, InGroup<Varargs>; def err_first_argument_to_va_arg_not_of_type_va_list : Error< diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp index b50869384ed..b1e6b99ce48 100644 --- a/clang/lib/Sema/SemaChecking.cpp +++ b/clang/lib/Sema/SemaChecking.cpp @@ -2723,7 +2723,7 @@ bool Sema::SemaBuiltinVAStartImpl(CallExpr *TheCall) { if (!SecondArgIsLastNamedArgument) Diag(TheCall->getArg(1)->getLocStart(), - diag::warn_second_parameter_of_va_start_not_last_named_argument); + diag::warn_second_arg_of_va_start_not_last_named_param); else if (Type->isReferenceType()) { Diag(Arg->getLocStart(), diag::warn_va_start_of_reference_type_is_undefined); diff --git a/clang/test/Sema/varargs-x86-64.c b/clang/test/Sema/varargs-x86-64.c index d50dd6a6fc1..e3ded6fbf6b 100644 --- a/clang/test/Sema/varargs-x86-64.c +++ b/clang/test/Sema/varargs-x86-64.c @@ -21,8 +21,8 @@ void __attribute__((ms_abi)) g1(int a) { void __attribute__((ms_abi)) g2(int a, int b, ...) { __builtin_ms_va_list ap; - __builtin_ms_va_start(ap, 10); // expected-warning {{second parameter of 'va_start' not last named argument}} - __builtin_ms_va_start(ap, a); // expected-warning {{second parameter of 'va_start' not last named argument}} + __builtin_ms_va_start(ap, 10); // expected-warning {{second argument to 'va_start' is not the last named parameter}} + __builtin_ms_va_start(ap, a); // expected-warning {{second argument to 'va_start' is not the last named parameter}} __builtin_ms_va_start(ap, b); } diff --git a/clang/test/Sema/varargs.c b/clang/test/Sema/varargs.c index 5329c2e61c9..82fa42b2c1c 100644 --- a/clang/test/Sema/varargs.c +++ b/clang/test/Sema/varargs.c @@ -4,7 +4,7 @@ void f1(int a) { __builtin_va_list ap; - + __builtin_va_start(ap, a, a); // expected-error {{too many arguments to function}} __builtin_va_start(ap, a); // expected-error {{'va_start' used in function with fixed args}} } @@ -12,16 +12,16 @@ void f1(int a) void f2(int a, int b, ...) { __builtin_va_list ap; - - __builtin_va_start(ap, 10); // expected-warning {{second parameter of 'va_start' not last named argument}} - __builtin_va_start(ap, a); // expected-warning {{second parameter of 'va_start' not last named argument}} + + __builtin_va_start(ap, 10); // expected-warning {{second argument to 'va_start' is not the last named parameter}} + __builtin_va_start(ap, a); // expected-warning {{second argument to 'va_start' is not the last named parameter}} __builtin_va_start(ap, b); } void f3(float a, ...) { __builtin_va_list ap; - + __builtin_va_start(ap, a); __builtin_va_start(ap, (a)); } |