This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFC] Use macro for void typecast necessary for ncurses library.
- From: Joel Brobecker <brobecker at adacore dot com>
- To: Pierre Muller <pierre dot muller at ics-cnrs dot unistra dot fr>
- Cc: 'Pedro Alves' <pedro at codesourcery dot com>, gdb-patches at sourceware dot org
- Date: Thu, 15 Apr 2010 21:35:44 -0700
- Subject: Re: [RFC] Use macro for void typecast necessary for ncurses library.
- References: <003001cadae7$2e639860$8b2ac920$@muller@ics-cnrs.unistra.fr> <20100414155944.GK19194@adacore.com> <000001cadbef$a21bad70$e6530850$@muller@ics-cnrs.unistra.fr> <201004141738.22662.pedro@codesourcery.com> <000601cadc72$e751a330$b5f4e990$@muller@ics-cnrs.unistra.fr> <20100415155258.GN19194@adacore.com> <000901cadcec$365f5390$a31dfab0$@muller@ics-cnrs.unistra.fr>
> > Suggestion (which you are free to ignore): Would it make sense to
> > define
> > a new function or macro to have the cast (and therefore the comment) in
> > only one place?
> Here is an implementation of your idea.
Argh - I didn't realize that two "routines" where involved. For some
reason, when I looked at the initial patch, I only noticed wstandout,
and I thought it was used 4 times.
For the record - my idea was to define a macro such as unchecked_wstandout
that contains the cast, but if we have to do it for at least 2 routines,
there is no real benefit.
I ended up checking in the attached patch. Sorry about the screwup,
and thanks for giving it a try...
--
Joel
commit e0737f6d628f1aa573cc2d1fd827be90b5d48a09
Author: Joel Brobecker <brobecker@adacore.com>
Date: Thu Apr 15 21:32:52 2010 -0700
* tui/tui-regs.c (tui_display_register): Add comment about
a couple of casts.
* tui/tui-stack.c (tui_show_locator_content): Ditto.
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0a8f5b1..7c2ec94 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2010-04-16 Joel Brobecker <brobecker@adacore.com>
+
+ * tui/tui-regs.c (tui_display_register): Add comment about
+ a couple of casts.
+ * tui/tui-stack.c (tui_show_locator_content): Ditto.
+
2010-04-15 Stan Shebs <stan@codesourcery.com>
* frame.c: Include tracepoint.h.
diff --git a/gdb/tui/tui-regs.c b/gdb/tui/tui-regs.c
index 8cbd338..a339bea 100644
--- a/gdb/tui/tui-regs.c
+++ b/gdb/tui/tui-regs.c
@@ -541,6 +541,11 @@ tui_display_register (struct tui_data_element *data,
int i;
if (data->highlight)
+ /* We ignore the return value, casting it to void in order to avoid
+ a compiler warning. The warning itself was introduced by a patch
+ to ncurses 5.7 dated 2009-08-29, changing this macro to expand
+ to code that causes the compiler to generate an unused-value
+ warning. */
(void) wstandout (win_info->handle);
wmove (win_info->handle, 0, 0);
@@ -551,6 +556,11 @@ tui_display_register (struct tui_data_element *data,
waddstr (win_info->handle, data->content);
if (data->highlight)
+ /* We ignore the return value, casting it to void in order to avoid
+ a compiler warning. The warning itself was introduced by a patch
+ to ncurses 5.7 dated 2009-08-29, changing this macro to expand
+ to code that causes the compiler to generate an unused-value
+ warning. */
(void) wstandend (win_info->handle);
tui_refresh_win (win_info);
}
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c
index 1630bea..d6b514d 100644
--- a/gdb/tui/tui-stack.c
+++ b/gdb/tui/tui-stack.c
@@ -256,6 +256,11 @@ tui_show_locator_content (void)
string = tui_make_status_line (&element->which_element.locator);
wmove (locator->handle, 0, 0);
+ /* We ignore the return value from wstandout and wstandend, casting
+ them to void in order to avoid a compiler warning. The warning
+ itself was introduced by a patch to ncurses 5.7 dated 2009-08-29,
+ changing these macro to expand to code that causes the compiler
+ to generate an unused-value warning. */
(void) wstandout (locator->handle);
waddstr (locator->handle, string);
wclrtoeol (locator->handle);