aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2014-06-13 13:08:23 -0600
committerTom Tromey <tromey@redhat.com>2014-06-20 08:44:19 -0600
commit26f2dc3065ea8621b898fe5b98ef19afbf02aaf7 (patch)
tree4cd816f400c0d0691cd7f7da3c770cc9320d9662 /gdb
parent698b3e08336ffac76d45d9ddb6a85ae166098140 (diff)
downloadgdb-26f2dc3065ea8621b898fe5b98ef19afbf02aaf7.zip
gdb-26f2dc3065ea8621b898fe5b98ef19afbf02aaf7.tar.gz
gdb-26f2dc3065ea8621b898fe5b98ef19afbf02aaf7.tar.bz2
make obstack object allocators more type-safe
This changes OBSTACK_ZALLOC and OBSTACK_CALLOC to cast their value to the correct type. This is more type-safe and also is more in line with the other object-allocation macros in libiberty.h. Making this change revealed one trivial error in dwarf2read.c. On the whole that seems pretty good to me. Tested by rebuilding. 2014-06-20 Tom Tromey <tromey@redhat.com> * dwarf2read.c (dw2_get_real_path): Use correct type in OBSTACK_CALLOC. * gdb_obstack.h (OBSTACK_ZALLOC, OBSTACK_CALLOC): Cast result.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/dwarf2read.c2
-rw-r--r--gdb/gdb_obstack.h6
3 files changed, 10 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1fc54b2..be26dc9 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,9 @@
+2014-06-20 Tom Tromey <tromey@redhat.com>
+
+ * dwarf2read.c (dw2_get_real_path): Use correct type in
+ OBSTACK_CALLOC.
+ * gdb_obstack.h (OBSTACK_ZALLOC, OBSTACK_CALLOC): Cast result.
+
2014-06-20 Gary Benson <gbenson@redhat.com>
* common/gdb_thread_db.h: Moved to nat. All includes updated.
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 9a9f5aa..ba64256 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -3297,7 +3297,7 @@ dw2_get_real_path (struct objfile *objfile,
{
if (qfn->real_names == NULL)
qfn->real_names = OBSTACK_CALLOC (&objfile->objfile_obstack,
- qfn->num_file_names, char *);
+ qfn->num_file_names, const char *);
if (qfn->real_names[index] == NULL)
qfn->real_names[index] = gdb_realpath (qfn->file_names[index]);
diff --git a/gdb/gdb_obstack.h b/gdb/gdb_obstack.h
index 0b39400..ec2dd97 100644
--- a/gdb/gdb_obstack.h
+++ b/gdb/gdb_obstack.h
@@ -25,11 +25,11 @@
/* Utility macros - wrap obstack alloc into something more robust. */
#define OBSTACK_ZALLOC(OBSTACK,TYPE) \
- (memset (obstack_alloc ((OBSTACK), sizeof (TYPE)), 0, sizeof (TYPE)))
+ ((TYPE *) memset (obstack_alloc ((OBSTACK), sizeof (TYPE)), 0, sizeof (TYPE)))
#define OBSTACK_CALLOC(OBSTACK,NUMBER,TYPE) \
- (memset (obstack_alloc ((OBSTACK), (NUMBER) * sizeof (TYPE)), \
- 0, (NUMBER) * sizeof (TYPE)))
+ ((TYPE *) memset (obstack_alloc ((OBSTACK), (NUMBER) * sizeof (TYPE)), \
+ 0, (NUMBER) * sizeof (TYPE)))
/* Unless explicitly specified, GDB obstacks always use xmalloc() and
xfree(). */