sparc64-tdep.c: Don't assign using memcpy return
authorSimon Marchi <simon.marchi@polymtl.ca>
Sat, 24 Oct 2015 22:36:24 +0000 (18:36 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Sat, 24 Oct 2015 22:36:24 +0000 (18:36 -0400)
This:

  valbuf = memcpy (buf, valbuf, len);

causes a build failure in C++, because memcpy returns the value of
"buf" as a void *.  Instead of adding a cast, we can just do the
assignment separately.

gdb/ChangeLog:

* sparc64-tdep.c (sparc64_store_arguments): Split assignment of
valbuf.

gdb/ChangeLog
gdb/sparc64-tdep.c

index 0a8a693..e86cbad 100644 (file)
@@ -1,5 +1,10 @@
 2015-10-24  Simon Marchi  <simon.marchi@polymtl.ca>
 
+       * sparc64-tdep.c (sparc64_store_arguments): Split assignment of
+       valbuf.
+
+2015-10-24  Simon Marchi  <simon.marchi@polymtl.ca>
+
        * ia64-tdep.c (ia64_pseudo_register_write): Remove cast.
        (ia64_push_dummy_call): Remove cast and change type of "to" to
        array of gdb_byte.
index 4c05277..a23740e 100644 (file)
@@ -890,7 +890,8 @@ sparc64_store_arguments (struct regcache *regcache, int nargs,
          /* Structure, Union or long double Complex arguments.  */
          gdb_assert (len <= 16);
          memset (buf, 0, sizeof (buf));
-         valbuf = memcpy (buf, valbuf, len);
+         memcpy (buf, valbuf, len);
+         valbuf = buf;
 
          if (element % 2 && sparc64_16_byte_align_p (type))
            element++;