diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | NEWS | 2 | ||||
m--------- | gnulib | 0 | ||||
-rw-r--r-- | src/builtin.c | 12 |
4 files changed, 16 insertions, 6 deletions
@@ -1,3 +1,11 @@ +2011-03-01 Eric Blake <eblake@redhat.com> + + Release Version 1.4.16. + * gnulib: Update to latest. + * NEWS: Mention the release. + * src/builtin.c (m4_defn): Silence spurious -Wstrict-overflow + warnings from gcc 4.5.1 at -O2. + 2011-02-28 Eric Blake <eblake@redhat.com> index: fix typo in previous commit @@ -1,6 +1,6 @@ GNU M4 NEWS - User visible changes. -* Noteworthy changes in release 1.4.16 (2011-01-??) [?] +* Noteworthy changes in release 1.4.16 (2011-03-01) [stable] ** Fix regressions in the `index' builtin. On glibc platforms, this avoids false positives from a strstr bug in glibc 2.9 through 2.12; diff --git a/gnulib b/gnulib -Subproject 06901ea287fd2d4d8f68afab41c6dbf95a854b5 +Subproject ef05ce61b0e5354256e0096c7dc022bf09bbf1d diff --git a/src/builtin.c b/src/builtin.c index 8ff03e80..632ef794 100644 --- a/src/builtin.c +++ b/src/builtin.c @@ -889,14 +889,16 @@ m4_defn (struct obstack *obs, int argc, token_data **argv) { symbol *s; builtin_func *b; - int i; + unsigned int i; if (bad_argc (argv[0], argc, 2, -1)) return; - for (i = 1; i < argc; i++) + assert (0 < argc && argc <= INT_MAX); + for (i = 1; i < (unsigned) argc; i++) { - s = lookup_symbol (ARG (i), SYMBOL_LOOKUP); + const char *arg = ARG((int) i); + s = lookup_symbol (arg, SYMBOL_LOOKUP); if (s == NULL) continue; @@ -912,11 +914,11 @@ m4_defn (struct obstack *obs, int argc, token_data **argv) b = SYMBOL_FUNC (s); if (b == m4_placeholder) M4ERROR ((warning_status, 0, "\ -builtin `%s' requested by frozen file is not supported", ARG (i))); +builtin `%s' requested by frozen file is not supported", arg)); else if (argc != 2) M4ERROR ((warning_status, 0, "Warning: cannot concatenate builtin `%s'", - ARG (i))); + arg)); else push_macro (b); break; |