[pushed] Fix remote-sim.c compilation

Message ID 20211004151615.1842079-1-tromey@adacore.com
State New
Headers show
Series
  • [pushed] Fix remote-sim.c compilation
Related show

Commit Message

Lancelot SIX via Gdb-patches Oct. 4, 2021, 3:16 p.m.
The change "make string-like set show commands use std::string
variable" caused remote-sim.c to fail to build.  The issue is that the
code does:

  const std::string &sysroot = gdb_sysroot;
  if (is_target_filename (sysroot))
    sysroot += strlen (TARGET_SYSROOT_PREFIX);

... which isn't valid.

This patch changes this code to use a 'const char *' again, fixing the
build.
---
 gdb/remote-sim.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

-- 
2.31.1

Patch

diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c
index 5bfce2a9a31..3143b4213a6 100644
--- a/gdb/remote-sim.c
+++ b/gdb/remote-sim.c
@@ -682,7 +682,7 @@  gdbsim_target_open (const char *args, int from_tty)
   struct sim_inferior_data *sim_data;
   SIM_DESC gdbsim_desc;
 
-  const std::string &sysroot = gdb_sysroot;
+  const char *sysroot = gdb_sysroot.c_str ();
   if (is_target_filename (sysroot))
     sysroot += strlen (TARGET_SYSROOT_PREFIX);
 
@@ -703,7 +703,7 @@  gdbsim_target_open (const char *args, int from_tty)
   len = (7 + 1			/* gdbsim */
 	 + strlen (" -E little")
 	 + strlen (" --architecture=xxxxxxxxxx")
-	 + strlen (" --sysroot=") + sysroot.length () +
+	 + strlen (" --sysroot=") + strlen (sysroot) +
 	 + (args ? strlen (args) : 0)
 	 + 50) /* slack */ ;
   arg_buf = (char *) alloca (len);
@@ -730,7 +730,7 @@  gdbsim_target_open (const char *args, int from_tty)
     }
   /* Pass along gdb's concept of the sysroot.  */
   strcat (arg_buf, " --sysroot=");
-  strcat (arg_buf, sysroot.c_str ());
+  strcat (arg_buf, sysroot);
   /* finally, any explicit args */
   if (args)
     {