gdb: workaround sparc memcpy fortify error
Building on an x86_64-linux system with --enable-targets=all fails on the sparc code with a fortify error: cc1: warnings being treated as errors In file included from /usr/include/string.h:640, from gnulib/string.h:23, from ../../gdb/gdb_string.h:25, from ../../gdb/vec.h:25, from ../../gdb/memattr.h:24, from ../../gdb/target.h:60, from ../../gdb/exec.h:23, from ../../gdb/gdbcore.h:31, from ../../gdb/sparc-tdep.c:29: In function 'memcpy', inlined from 'sparc32_store_return_value' at ../../gdb/sparc-tdep.c:1112, inlined from 'sparc32_return_value' at ../../gdb/sparc-tdep.c:1170: /usr/include/bits/string3.h:52: error: call to __builtin___memcpy_chk will always overflow destination buffer make: *** [sparc-tdep.o] Error 1 This is due to the gcc optimizer bug PR37060, so tweak the gdb_assert () to avoid the issue. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
2462afa169
commit
a9789a6b9d
2 changed files with 6 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2010-04-21 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* gdb/sparc-tdep.c (sparc32_store_return_value): Add gdb_assert ()
|
||||
for len <= 8.
|
||||
|
||||
2010-04-21 Chris Moller <cmoller@redhat.com>
|
||||
|
||||
PR 9167
|
||||
|
|
|
@ -1105,6 +1105,7 @@ sparc32_store_return_value (struct type *type, struct regcache *regcache,
|
|||
|
||||
gdb_assert (!sparc_structure_or_union_p (type));
|
||||
gdb_assert (!(sparc_floating_p (type) && len == 16));
|
||||
gdb_assert (len <= 8);
|
||||
|
||||
if (sparc_floating_p (type))
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue