public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
From: Tom Tromey <tromey@sourceware.org>
To: gdb-cvs@sourceware.org
Subject: [binutils-gdb] Change tui_update_source_window for better type safety
Date: Tue, 25 Jun 2019 14:00:00 -0000	[thread overview]
Message-ID: <20190625140019.122525.qmail@sourceware.org> (raw)

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=be4da58857ee4a26b7e58893211ea4f54922e8fd

commit be4da58857ee4a26b7e58893211ea4f54922e8fd
Author: Tom Tromey <tom@tromey.com>
Date:   Sun Jun 16 16:31:37 2019 -0600

    Change tui_update_source_window for better type safety
    
    tui_update_source_window can only be called for source and disassembly
    windows, so change the argument type to enforce this at compile time.
    
    gdb/ChangeLog
    2019-06-25  Tom Tromey  <tom@tromey.com>
    
    	* tui/tui-winsource.h (tui_update_source_window)
    	(tui_update_source_window_as_is): Change parameter type.
    	* tui/tui-winsource.c (tui_update_source_window): Change win_info
    	to be a tui_source_window_base.
    	(tui_update_source_window_as_is): Likewise.
    	* tui/tui-win.c (make_visible_with_new_height): Update.

Diff:
---
 gdb/ChangeLog           | 9 +++++++++
 gdb/tui/tui-win.c       | 4 ++--
 gdb/tui/tui-winsource.c | 7 +++----
 gdb/tui/tui-winsource.h | 4 ++--
 4 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 25c2d01..e7395da 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,14 @@
 2019-06-25  Tom Tromey  <tom@tromey.com>
 
+	* tui/tui-winsource.h (tui_update_source_window)
+	(tui_update_source_window_as_is): Change parameter type.
+	* tui/tui-winsource.c (tui_update_source_window): Change win_info
+	to be a tui_source_window_base.
+	(tui_update_source_window_as_is): Likewise.
+	* tui/tui-win.c (make_visible_with_new_height): Update.
+
+2019-06-25  Tom Tromey  <tom@tromey.com>
+
 	* tui/tui-winsource.c (tui_erase_source_content)
 	(tui_show_source_content, tui_show_exec_info_content)
 	(tui_erase_exec_info_content): Use refresh_window method.
diff --git a/gdb/tui/tui-win.c b/gdb/tui/tui-win.c
index a40e6c5..c8fd267 100644
--- a/gdb/tui/tui-win.c
+++ b/gdb/tui/tui-win.c
@@ -1327,7 +1327,7 @@ make_visible_with_new_height (struct tui_win_info *win_info)
 
 	  line_or_addr = base->start_line_or_addr;
 	  tui_free_win_content (win_info);
-	  tui_update_source_window (win_info, gdbarch,
+	  tui_update_source_window (base, gdbarch,
 				    cursal.symtab, line_or_addr, TRUE);
 	}
       else if (deprecated_safe_get_selected_frame () != NULL)
@@ -1349,7 +1349,7 @@ make_visible_with_new_height (struct tui_win_info *win_info)
 	      line.loa = LOA_ADDRESS;
 	      find_line_pc (s, cursal.line, &line.u.addr);
 	    }
-	  tui_update_source_window (win_info, gdbarch, s, line, TRUE);
+	  tui_update_source_window (base, gdbarch, s, line, TRUE);
 	}
       if (win_info->has_locator ())
 	{
diff --git a/gdb/tui/tui-winsource.c b/gdb/tui/tui-winsource.c
index 254c7e0..1ec9cec 100644
--- a/gdb/tui/tui-winsource.c
+++ b/gdb/tui/tui-winsource.c
@@ -69,14 +69,13 @@ tui_display_main ()
 /* Function to display source in the source window.  This function
    initializes the horizontal scroll to 0.  */
 void
-tui_update_source_window (struct tui_win_info *win_info,
+tui_update_source_window (struct tui_source_window_base *win_info,
 			  struct gdbarch *gdbarch,
 			  struct symtab *s,
 			  struct tui_line_or_address line_or_addr,
 			  int noerror)
 {
-  tui_source_window_base *base = (tui_source_window_base *) win_info;
-  base->horizontal_offset = 0;
+  win_info->horizontal_offset = 0;
   tui_update_source_window_as_is (win_info, gdbarch, s, line_or_addr, noerror);
 
   return;
@@ -86,7 +85,7 @@ tui_update_source_window (struct tui_win_info *win_info,
 /* Function to display source in the source/asm window.  This function
    shows the source as specified by the horizontal offset.  */
 void
-tui_update_source_window_as_is (struct tui_win_info *win_info, 
+tui_update_source_window_as_is (struct tui_source_window_base *win_info, 
 				struct gdbarch *gdbarch,
 				struct symtab *s,
 				struct tui_line_or_address line_or_addr, 
diff --git a/gdb/tui/tui-winsource.h b/gdb/tui/tui-winsource.h
index ada3964..6f2dc35 100644
--- a/gdb/tui/tui-winsource.h
+++ b/gdb/tui/tui-winsource.h
@@ -39,11 +39,11 @@ extern int tui_update_breakpoint_info (struct tui_win_info *win,
 
 /* Function to display the "main" routine.  */
 extern void tui_display_main (void);
-extern void tui_update_source_window (struct tui_win_info *, 
+extern void tui_update_source_window (struct tui_source_window_base *, 
 				      struct gdbarch *, struct symtab *,
 				      struct tui_line_or_address, 
 				      int);
-extern void tui_update_source_window_as_is (struct tui_win_info *,
+extern void tui_update_source_window_as_is (struct tui_source_window_base *,
 					    struct gdbarch *, struct symtab *,
 					    struct tui_line_or_address, 
 					    int);


                 reply	other threads:[~2019-06-25 14:00 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190625140019.122525.qmail@sourceware.org \
    --to=tromey@sourceware.org \
    --cc=gdb-cvs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).