[RFA 9/9] Remove struct complaints

Tom Tromey tom@tromey.com
Tue May 22 05:07:00 GMT 2018


struct complaints now just holds a single enum value, so remove it and
symfile_complaint_book and replace it with a global variable.

gdb/ChangeLog
2018-05-21  Tom Tromey  <tom@tromey.com>

	* complaints.c (struct complaints): Remove.
	(symfile_complaint_book): Remove.
	(series): New global.
	(complaint_internal): Update.
	(clear_complaints): Update.
---
 gdb/ChangeLog    |  8 ++++++++
 gdb/complaints.c | 15 ++++-----------
 2 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/gdb/complaints.c b/gdb/complaints.c
index 2c69b8ca2c..1bf99d40f0 100644
--- a/gdb/complaints.c
+++ b/gdb/complaints.c
@@ -39,14 +39,9 @@ enum complaint_series {
 
 static std::unordered_map<const char *, int> counters;
 
-struct complaints
-{
-  enum complaint_series series;
-};
+/* How to print the next complaint.  */
 
-static struct complaints symfile_complaint_book = {
-  ISOLATED_MESSAGE
-};
+static complaint_series series;
 
 /* How many complaints about a particular thing should be printed
    before we stop whining about it?  Default is no whining at all,
@@ -60,13 +55,11 @@ void
 complaint_internal (const char *fmt, ...)
 {
   va_list args;
-  enum complaint_series series;
 
   if (counters[fmt]++ > stop_whining)
     return;
 
   va_start (args, fmt);
-  series = symfile_complaint_book.series;
 
   if (deprecated_warning_hook)
     (*deprecated_warning_hook) (fmt, args);
@@ -104,9 +97,9 @@ clear_complaints (int less_verbose)
   counters.clear ();
 
   if (!less_verbose)
-    symfile_complaint_book.series = ISOLATED_MESSAGE;
+    series = ISOLATED_MESSAGE;
   else
-    symfile_complaint_book.series = SHORT_FIRST_MESSAGE;
+    series = SHORT_FIRST_MESSAGE;
 }
 
 static void
-- 
2.13.6



More information about the Gdb-patches mailing list