diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 5d281d31361..a270fba8e8a 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2005-11-04 Joseph S. Myers + + * cp-tree.h (cp_cpp_error), error.c (cp_cpp_error): Take va_list* + parameter. + 2005-11-03 Joseph S. Myers PR c++/17964 diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index e1ca9f3bea7..978a95f85af 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -4438,7 +4438,7 @@ extern void cp_genericize (tree); #define ATTRIBUTE_GCC_CXXDIAG(m, n) ATTRIBUTE_NONNULL(m) #endif extern void cp_cpp_error (cpp_reader *, int, - const char *, va_list) + const char *, va_list *) ATTRIBUTE_GCC_CXXDIAG(3,0); #endif /* ! GCC_CP_TREE_H */ diff --git a/gcc/cp/error.c b/gcc/cp/error.c index d5144b446f7..22c2d304d88 100644 --- a/gcc/cp/error.c +++ b/gcc/cp/error.c @@ -2334,7 +2334,7 @@ cp_printer (pretty_printer *pp, text_info *text, const char *spec, void cp_cpp_error (cpp_reader *pfile ATTRIBUTE_UNUSED, int level, - const char *msg, va_list ap) + const char *msg, va_list *ap) { diagnostic_info diagnostic; diagnostic_t dlevel; @@ -2356,7 +2356,7 @@ cp_cpp_error (cpp_reader *pfile ATTRIBUTE_UNUSED, int level, default: gcc_unreachable (); } - diagnostic_set_info_translated (&diagnostic, msg, &ap, + diagnostic_set_info_translated (&diagnostic, msg, ap, input_location, dlevel); report_diagnostic (&diagnostic); } diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index 3a489b4c1c0..422203c64a1 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,9 @@ +2005-11-04 Joseph S. Myers + + * include/cpplib.h (struct cpp_callbacks): Make error take + va_list* parameter. + * errors.c (cpp_error): Update call to callback. + 2005-11-03 Andrew Pinski PR preprocessor/22042 diff --git a/libcpp/errors.c b/libcpp/errors.c index 554d9e3c5f1..97de4900001 100644 --- a/libcpp/errors.c +++ b/libcpp/errors.c @@ -141,7 +141,7 @@ cpp_error (cpp_reader * pfile, int level, const char *msgid, ...) va_start (ap, msgid); if (CPP_OPTION (pfile, client_diagnostic)) - pfile->cb.error (pfile, level, _(msgid), ap); + pfile->cb.error (pfile, level, _(msgid), &ap); else { if (CPP_OPTION (pfile, traditional)) diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h index c5d8e85391a..adae96b3560 100644 --- a/libcpp/include/cpplib.h +++ b/libcpp/include/cpplib.h @@ -473,7 +473,7 @@ struct cpp_callbacks /* Called to emit a diagnostic if client_diagnostic option is true. This callback receives the translated message. */ - void (*error) (cpp_reader *, int, const char *, va_list) + void (*error) (cpp_reader *, int, const char *, va_list *) ATTRIBUTE_PRINTF(3,0); };