This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 39/66] Change more TUI functions to take a tui_source_window_base
- 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, 23 Jun 2019 16:43:02 -0600
- Subject: [PATCH 39/66] Change more TUI functions to take a tui_source_window_base
- References: <20190623224329.16060-1-tom@tromey.com>
Several more TUI functions should only be called with a source or
disassembly window. This patch changes these functions so that this
can be caught at compile time.
2019-06-23 Tom Tromey <tom@tromey.com>
* tui/tui-winsource.h (tui_set_exec_info_content)
(tui_show_exec_info_content, tui_erase_exec_info_content)
(tui_clear_exec_info_content, tui_update_exec_info): Change
argument to tui_source_window_base.
* tui/tui-winsource.c (tui_set_exec_info_content)
(tui_show_exec_info_content, tui_erase_exec_info_content)
(tui_clear_exec_info_content, tui_update_exec_info): Change
argument to tui_source_window_base.
---
gdb/ChangeLog | 11 +++++++++++
gdb/tui/tui-winsource.c | 26 ++++++++++----------------
gdb/tui/tui-winsource.h | 10 +++++-----
3 files changed, 26 insertions(+), 21 deletions(-)
diff --git a/gdb/tui/tui-winsource.c b/gdb/tui/tui-winsource.c
index 2de5c53214e..e55ce40a206 100644
--- a/gdb/tui/tui-winsource.c
+++ b/gdb/tui/tui-winsource.c
@@ -483,12 +483,11 @@ tui_update_breakpoint_info (struct tui_win_info *win,
based upon the input window which is either the source or
disassembly window. */
void
-tui_set_exec_info_content (struct tui_win_info *win_info)
+tui_set_exec_info_content (struct tui_source_window_base *win_info)
{
- tui_source_window_base *base = (tui_source_window_base *) win_info;
- if (base->execution_info != NULL)
+ if (win_info->execution_info != NULL)
{
- struct tui_gen_win_info *exec_info_ptr = base->execution_info;
+ struct tui_gen_win_info *exec_info_ptr = win_info->execution_info;
if (exec_info_ptr->content == NULL)
exec_info_ptr->content =
@@ -532,10 +531,9 @@ tui_set_exec_info_content (struct tui_win_info *win_info)
void
-tui_show_exec_info_content (struct tui_win_info *win_info)
+tui_show_exec_info_content (struct tui_source_window_base *win_info)
{
- tui_source_window_base *base = (tui_source_window_base *) win_info;
- struct tui_gen_win_info *exec_info = base->execution_info;
+ struct tui_gen_win_info *exec_info = win_info->execution_info;
int cur_line;
werase (exec_info->handle);
@@ -552,28 +550,24 @@ tui_show_exec_info_content (struct tui_win_info *win_info)
void
-tui_erase_exec_info_content (struct tui_win_info *win_info)
+tui_erase_exec_info_content (struct tui_source_window_base *win_info)
{
- tui_source_window_base *base = (tui_source_window_base *) win_info;
- struct tui_gen_win_info *exec_info = base->execution_info;
+ struct tui_gen_win_info *exec_info = win_info->execution_info;
werase (exec_info->handle);
exec_info->refresh_window ();
}
void
-tui_clear_exec_info_content (struct tui_win_info *win_info)
+tui_clear_exec_info_content (struct tui_source_window_base *win_info)
{
- tui_source_window_base *base = (tui_source_window_base *) win_info;
- base->execution_info->content_in_use = FALSE;
+ win_info->execution_info->content_in_use = FALSE;
tui_erase_exec_info_content (win_info);
-
- return;
}
/* Function to update the execution info window. */
void
-tui_update_exec_info (struct tui_win_info *win_info)
+tui_update_exec_info (struct tui_source_window_base *win_info)
{
tui_set_exec_info_content (win_info);
tui_show_exec_info_content (win_info);
diff --git a/gdb/tui/tui-winsource.h b/gdb/tui/tui-winsource.h
index 3ed461a3157..09a9d5abf4a 100644
--- a/gdb/tui/tui-winsource.h
+++ b/gdb/tui/tui-winsource.h
@@ -53,11 +53,11 @@ extern void tui_update_source_windows_with_line (struct symtab *,
extern void tui_clear_source_content (struct tui_win_info *, int);
extern void tui_erase_source_content (struct tui_win_info *, int);
extern void tui_show_source_content (struct tui_win_info *);
-extern void tui_set_exec_info_content (struct tui_win_info *);
-extern void tui_show_exec_info_content (struct tui_win_info *);
-extern void tui_erase_exec_info_content (struct tui_win_info *);
-extern void tui_clear_exec_info_content (struct tui_win_info *);
-extern void tui_update_exec_info (struct tui_win_info *);
+extern void tui_set_exec_info_content (struct tui_source_window_base *);
+extern void tui_show_exec_info_content (struct tui_source_window_base *);
+extern void tui_erase_exec_info_content (struct tui_source_window_base *);
+extern void tui_clear_exec_info_content (struct tui_source_window_base *);
+extern void tui_update_exec_info (struct tui_source_window_base *);
extern void tui_alloc_source_buffer (struct tui_win_info *);
extern int tui_line_is_displayed (int,
--
2.17.2