From a63607ed439ce64133d0c1927e8ef7eccd013539 Mon Sep 17 00:00:00 2001
From: Joseph Myers <joseph@codesourcery.com>
Date: Fri, 4 Nov 2005 01:16:32 +0000
Subject: [PATCH] cp-tree.h (cp_cpp_error), [...]): Take va_list* parameter.

gcc/cp:
	* cp-tree.h (cp_cpp_error), error.c (cp_cpp_error): Take va_list*
	parameter.

libcpp:
	* include/cpplib.h (struct cpp_callbacks): Make error take
	va_list* parameter.
	* errors.c (cpp_error): Update call to callback.

From-SVN: r106466
---
 gcc/cp/ChangeLog        | 5 +++++
 gcc/cp/cp-tree.h        | 2 +-
 gcc/cp/error.c          | 4 ++--
 libcpp/ChangeLog        | 6 ++++++
 libcpp/errors.c         | 2 +-
 libcpp/include/cpplib.h | 2 +-
 6 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 5d281d31361d..a270fba8e8ac 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2005-11-04  Joseph S. Myers  <joseph@codesourcery.com>
+
+	* cp-tree.h (cp_cpp_error), error.c (cp_cpp_error): Take va_list*
+	parameter.
+
 2005-11-03  Joseph S. Myers  <joseph@codesourcery.com>
 
 	PR c++/17964
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index e1ca9f3bea7a..978a95f85af4 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 d5144b446f73..22c2d304d88c 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 3a489b4c1c0b..422203c64a19 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,9 @@
+2005-11-04  Joseph S. Myers  <joseph@codesourcery.com>
+
+	* 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  <pinskia@physics.uc.edu>
 
 	PR preprocessor/22042
diff --git a/libcpp/errors.c b/libcpp/errors.c
index 554d9e3c5f1a..97de4900001b 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 c5d8e85391a4..adae96b35605 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);
 };
 
-- 
GitLab