This is the mail archive of the gdb-cvs@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]

[binutils-gdb] Fix tic6x-uclinux GDBserver build failure


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

commit 3491a34c4f7de10dbd19c719052642d8471c45a6
Author: Yao Qi <yao.qi@linaro.org>
Date:   Thu Nov 16 10:05:27 2017 +0000

    Fix tic6x-uclinux GDBserver build failure
    
    I can't find a c6x-uclinux c++ compiler, so I use my host g++ to build
    tic6x-uclinux GDBserver, and find the following build failures.  They are
    not target specific, so I believe they are real errors.  This patch fixes
    them.
    
    ../binutils-gdb/gdb/gdbserver/linux-tic6x-low.c:313:34: error: invalid
    conversion from 'void*' to 'tic6x_register*' [-fpermissive]
       union tic6x_register *regset = buf;
                                      ^
    ../binutils-gdb/gdb/gdbserver/linux-tic6x-low.c: In function 'void tic6x_store_gregset(regcache*, const void*)':
    ../binutils-gdb/gdb/gdbserver/linux-tic6x-low.c:324:40: error: invalid
    conversion from 'const void*' to 'const tic6x_register*' [-fpermissive]
       const union tic6x_register *regset = buf;
                                            ^
    
    ../binutils-gdb/gdb/gdbserver/linux-tic6x-low.c: At global scope:
    ../binutils-gdb/gdb/gdbserver/linux-tic6x-low.c:359:28: error: redefinition of 'usrregs_info tic6x_usrregs_info'
     static struct usrregs_info tic6x_usrregs_info =
                                ^
    ../binutils-gdb/gdb/gdbserver/linux-tic6x-low.c:186:28: note: 'usrregs_info tic6x_usrregs_info' previously declared here
     static struct usrregs_info tic6x_usrregs_info;
                                ^
    
    gdb/gdbserver:
    
    2017-11-16  Yao Qi  <yao.qi@linaro.org>
    
    	* linux-tic6x-low.c (tic6x_fill_gregset): Cast buf.
    	(tic6x_store_gregset): Likewise.
    	(tic6x_usrregs_info): Move it up.

Diff:
---
 gdb/gdbserver/ChangeLog         |  6 ++++++
 gdb/gdbserver/linux-tic6x-low.c | 17 +++++++----------
 2 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 069ef93..138d6bc 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,9 @@
+2017-11-16  Yao Qi  <yao.qi@linaro.org>
+
+	* linux-tic6x-low.c (tic6x_fill_gregset): Cast buf.
+	(tic6x_store_gregset): Likewise.
+	(tic6x_usrregs_info): Move it up.
+
 2017-11-15  Alan Hayward  <alan.hayward@arm.com>
 
 	* Makefile.in: Update arch rules.
diff --git a/gdb/gdbserver/linux-tic6x-low.c b/gdb/gdbserver/linux-tic6x-low.c
index 7a32f7e..6dda52e 100644
--- a/gdb/gdbserver/linux-tic6x-low.c
+++ b/gdb/gdbserver/linux-tic6x-low.c
@@ -182,8 +182,11 @@ tic6x_sw_breakpoint_from_kind (int kind, int *size)
   return (const gdb_byte *) &tic6x_breakpoint;
 }
 
-/* Forward definition.  */
-static struct usrregs_info tic6x_usrregs_info;
+static struct usrregs_info tic6x_usrregs_info =
+  {
+    TIC6X_NUM_REGS,
+    NULL, /* Set in tic6x_read_description.  */
+  };
 
 static const struct target_desc *
 tic6x_read_description (void)
@@ -310,7 +313,7 @@ tic6x_supply_register (struct regcache *regcache, int regno,
 static void
 tic6x_fill_gregset (struct regcache *regcache, void *buf)
 {
-  union tic6x_register *regset = buf;
+  auto regset = static_cast<union tic6x_register *> (buf);
   int i;
 
   for (i = 0; i < TIC6X_NUM_REGS; i++)
@@ -321,7 +324,7 @@ tic6x_fill_gregset (struct regcache *regcache, void *buf)
 static void
 tic6x_store_gregset (struct regcache *regcache, const void *buf)
 {
-  const union tic6x_register *regset = buf;
+  const auto regset = static_cast<const union tic6x_register *> (buf);
   int i;
 
   for (i = 0; i < TIC6X_NUM_REGS; i++)
@@ -356,12 +359,6 @@ static struct regsets_info tic6x_regsets_info =
     NULL, /* disabled_regsets */
   };
 
-static struct usrregs_info tic6x_usrregs_info =
-  {
-    TIC6X_NUM_REGS,
-    NULL, /* Set in tic6x_read_description.  */
-  };
-
 static struct regs_info regs_info =
   {
     NULL, /* regset_bitmap */


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