This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[FYI] Don't cast a tui_win_info directly to tui_gen_win_info
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Sun, 16 Jun 2019 14:11:40 -0600
- Subject: [FYI] Don't cast a tui_win_info directly to tui_gen_win_info
I found a few spots that directly cast a tui_win_info to a
tui_gen_win_info. However, I think it's a bit better here to take the
address of the "generic" member. As far as I know, nothing relies on
being able to downcast here, so this gives us the freedom to rearrange
the structure.
gdb/ChangeLog
2019-06-16 Tom Tromey <tom@tromey.com>
* tui/tui-wingeneral.c (tui_unhighlight_win, tui_highlight_win)
(make_all_visible): Use address of member.
---
gdb/ChangeLog | 5 +++++
gdb/tui/tui-wingeneral.c | 6 +++---
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/gdb/tui/tui-wingeneral.c b/gdb/tui/tui-wingeneral.c
index b474aa0f1d9..cacc0b84454 100644
--- a/gdb/tui/tui-wingeneral.c
+++ b/gdb/tui/tui-wingeneral.c
@@ -112,7 +112,7 @@ tui_unhighlight_win (struct tui_win_info *win_info)
if (win_info != NULL
&& win_info->generic.handle != NULL)
{
- box_win ((struct tui_gen_win_info *) win_info, NO_HILITE);
+ box_win (&win_info->generic, NO_HILITE);
wrefresh (win_info->generic.handle);
tui_set_win_highlight (win_info, 0);
}
@@ -126,7 +126,7 @@ tui_highlight_win (struct tui_win_info *win_info)
&& win_info->can_highlight
&& win_info->generic.handle != NULL)
{
- box_win ((struct tui_gen_win_info *) win_info, HILITE);
+ box_win (&win_info->generic, HILITE);
wrefresh (win_info->generic.handle);
tui_set_win_highlight (win_info, 1);
}
@@ -227,7 +227,7 @@ make_all_visible (int visible)
if (tui_win_is_source_type ((tui_win_list[i])->generic.type))
make_visible ((tui_win_list[i])->detail.source_info.execution_info,
visible);
- make_visible ((struct tui_gen_win_info *) tui_win_list[i], visible);
+ make_visible (&tui_win_list[i]->generic, visible);
}
}
--
2.17.2