summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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
{