[review] Fix up complaints.h for namespace use
Commit Message
Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/713
......................................................................
Fix up complaints.h for namespace use
If 'complaint' is used in a namespace context, it will fail because
'stop_whining' is only declared at the top level. This patch fixes
this problem in a simple way, by moving the declaration of
'stop_whining' out of the macro and to the top-level.
gdb/ChangeLog
2019-11-26 Tom Tromey <tromey@adacore.com>
* complaints.h (stop_whining): Declare at top-level.
(complaint): Don't declare stop_whining.
Change-Id: Id397d4f7b850a855253fdf6b49cd7be1cddbecf5
---
M gdb/ChangeLog
M gdb/complaints.h
2 files changed, 9 insertions(+), 2 deletions(-)
Comments
Pedro Alves has posted comments on this change.
Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/713
......................................................................
Patch Set 1: Code-Review+2
@@ -1,5 +1,10 @@
2019-11-26 Tom Tromey <tromey@adacore.com>
+ * complaints.h (stop_whining): Declare at top-level.
+ (complaint): Don't declare stop_whining.
+
+2019-11-26 Tom Tromey <tromey@adacore.com>
+
* windows-nat.c (get_windows_debug_event): Remove parameters.
(windows_nat_target::wait): Update.
@@ -25,6 +25,10 @@
extern void complaint_internal (const char *fmt, ...)
ATTRIBUTE_PRINTF (1, 2);
+/* This controls whether complaints are emitted. */
+
+extern int stop_whining;
+
/* Register a complaint. This is a macro around complaint_internal to
avoid computing complaint's arguments when complaints are disabled.
Running FMT via gettext [i.e., _(FMT)] can be quite expensive, for
@@ -32,8 +36,6 @@
#define complaint(FMT, ...) \
do \
{ \
- extern int stop_whining; \
- \
if (stop_whining > 0) \
complaint_internal (FMT, ##__VA_ARGS__); \
} \