summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>2009-06-12 12:20:14 +0200
committerEric Blake <ebb9@byu.net>2009-06-13 07:09:19 -0600
commit8bd67d9a23c7189e0cb9cccc1dd5ad4a166c4f6c (patch)
treeeca6b68634c2e2adaeced0f95386854d0f8cf5b0
parentab014edea195ad492846d916e7a8eddcee42d9dc (diff)
downloadm4-8bd67d9a23c7189e0cb9cccc1dd5ad4a166c4f6c.tar.gz
Avoid pointer arithmetic on `void *'.
* modules/m4.c (dump_symbol_CB): Cast obstack_base return value to `char *' before using it. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de> Signed-off-by: Eric Blake <ebb9@byu.net>
-rw-r--r--ChangeLog6
-rw-r--r--modules/m4.c5
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 88e64e25..815be008 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-06-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Avoid pointer arithmetic on `void *'.
+ * modules/m4.c (dump_symbol_CB): Cast obstack_base return value
+ to `char *' before using it.
+
2009-05-04 Eric Blake <ebb9@byu.net>
Silence verbose testsuite runs.
diff --git a/modules/m4.c b/modules/m4.c
index f3cfc94d..0597fe74 100644
--- a/modules/m4.c
+++ b/modules/m4.c
@@ -275,12 +275,13 @@ dump_symbol_CB (m4_symbol_table *ignored M4_GNUC_UNUSED, const char *name,
if (symbol_data->size == 0)
{
+ char *base;
size_t offset = obstack_object_size (symbol_data->obs);
obstack_blank (symbol_data->obs, sizeof *symbol_data->base);
symbol_data->size = (obstack_room (symbol_data->obs)
/ sizeof *symbol_data->base);
- symbol_data->base = (m4_string *) (obstack_base (symbol_data->obs)
- + offset);
+ base = (char *) obstack_base (symbol_data->obs) + offset;
+ symbol_data->base = (m4_string *) base;
}
else
{