This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH v2 1/6] Fix CORE_ADDR size assertion in symfile-mem.c
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Tue, 25 Feb 2020 15:22:38 -0700
- Subject: [PATCH v2 1/6] Fix CORE_ADDR size assertion in symfile-mem.c
- References: <20200225222243.8260-1-tom@tromey.com>
symfile-mem.c has some assertions about the size of various types, to
ensure that gdb and BFD don't get out of sync in a way that would
cause bugs.
Once CORE_ADDR is always 64-bit, one of these assertions can fail for
a 32-bit BFD build. However, the real requirement here is just that
CORE_ADDR is wider -- because this code promotes a bfd_vma to a
CORE_ADDR.
This patch corrects the assert.
gdb/ChangeLog
2020-02-25 Tom Tromey <tom@tromey.com>
* symfile-mem.c: Update CORE_ADDR size assert.
---
gdb/ChangeLog | 4 ++++
gdb/symfile-mem.c | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/gdb/symfile-mem.c b/gdb/symfile-mem.c
index a62d0d0c8f4..e2d2e43d7fa 100644
--- a/gdb/symfile-mem.c
+++ b/gdb/symfile-mem.c
@@ -57,7 +57,7 @@
/* Verify parameters of target_read_memory_bfd and target_read_memory are
compatible. */
-gdb_static_assert (sizeof (CORE_ADDR) == sizeof (bfd_vma));
+gdb_static_assert (sizeof (CORE_ADDR) >= sizeof (bfd_vma));
gdb_static_assert (sizeof (gdb_byte) == sizeof (bfd_byte));
gdb_static_assert (sizeof (ssize_t) <= sizeof (bfd_size_type));
--
2.17.2