This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 39/66] Change more TUI functions to take a tui_source_window_base


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]