| 2014-05-13 Eric Blake <[email protected]> |
| |
| doc: fix line-wrapped macro definitions |
| * doc/m4.texi: Drop bogus @c. |
| Reported by Marijn Schouten, fix by Patrice Dumas copied from |
| autoconf code base. |
| |
| 2014-02-05 Vitezslav Crhonek <[email protected]> (tiny change) |
| |
| main: diagnose unsupported --word-regexp |
| * src/m4.c (long_options): Don't allow long option if short option |
| is rejected. |
| |
| 2014-01-01 Eric Blake <[email protected]> |
| |
| maint: bump copyright year |
| * all files: Version control now has a commit in 2014. |
| * gnulib: Update to latest. |
| |
| 2013-11-08 Eric Blake <[email protected]> |
| |
| build: fix regression for DragonFly BSD |
| * gnulib: Update to latest gnulib, for fpending fix. |
| |
| 2013-09-24 Eric Blake <[email protected]> |
| |
| build: improve default build for non-gcc |
| * gnulib: Update to latest gnulib. |
| * configure.ac (gl_WARN_ADD): Drop flags now guaranteed by gnulib. |
| (--enable-gcc-warnings): Set default based on a tarball-only file, |
| rather than whether .git exists. |
| * THANKS: Update. |
| |
| 2013-09-15 Gary V. Vaughan <[email protected]> |
| |
| configury: specify subdir-objects for future automake releases. |
| Latest automake warns about future incompatibility if |
| subdir-objects is not specified by AM_INIT_AUTOMAKE. |
| * configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects. |
| |
| bootstrap: require newer texinfo release. |
| * bootstrap.conf (buildreq): Bump required makeinfo binary |
| release number to 4.13 to support --bulid-dir option. |
| |
| bootstrap: don't double-specify --no-changelog to gnulib-tool. |
| * bootstrap.conf (gnulib_tool_option_extras): Rename from |
| this... |
| (gnulib_tool_options): ...this, and append options rather than |
| overwrite. |
| |
| bootstrap: sync with upstream. |
| * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace, |
| gl/build-aux/funclib.sh, gl/build-aux/options-parser: Update |
| from upstream to pick up recent improvements. |
| * bootstrap: Regenerate. |
| |
| 2013-08-17 Michael Witten <[email protected]> (tiny change) |
| |
| Clean up documentation |
| * doc/m4.texinfo: Note that m4 is mostly compatible with SVR4. |
| |
| 2013-08-17 Eric Blake <[email protected]> |
| |
| maint: update to latest gnulib |
| * gnulib: Update to latest, for various fixes. |
| |
| 2013-04-18 Eric Blake <[email protected]> |
| |
| maint: update to latest gnulib |
| * gnulib: Update to latest, for regex fixes. |
| |
| 2013-03-15 Eric Blake <[email protected]> |
| |
| build: avoid test failure on HPUX |
| * doc/m4.texi (Command line files): Skip tests on systems where it |
| is impossible to start with stdin/out closed. |
| Reported by Gary V. Vaughan. |
| |
| 2013-03-12 Eric Blake <[email protected]> |
| |
| maint: update to latest gnulib |
| * gnulib: Update to latest, for mingw compile fixes. |
| |
| 2013-03-11 Eric Blake <[email protected]> |
| |
| build: fix large diversions on mingw |
| * gl/lib/clean-temp.c.diff: New file. |
| * NEWS: Mention the fix. |
| |
| 2013-03-08 Gary V. Vaughan <[email protected]> |
| |
| bootstrap: remove reintroduced CVS cruft. |
| * bootstrap.conf (m4_ignore_gnulib_ignore): Remove. |
| The code this was factored from was removed between making the |
| bootstrap branch, and merging, so this function is actually |
| obsolete. |
| |
| maint: automake 1.11.5 and earlier generate insecure dist |
| rules. |
| * configure.ac (AM_INIT_AUTOMAKE): Require 1.11.5 or newer. |
| |
| 2010-09-17 Gary V. Vaughan <[email protected]> |
| |
| bootstrap: upgrade to canonical upstream version. |
| * bootstrap.conf: New file to configure gnulib bootstrap. |
| * gl: New gnulib overrides directory. |
| * gl/modules/bootstrap, gl/modules/extract-trace, |
| gl/modules/funclib.sh, gl/modules/inline-source, |
| gl/modules/options-parser: Import canonical bootstrap modules. |
| * gl/build-aux/bootstrap.in, gl/build-aux/extract-trace, |
| gl/build-aux/funclib.sh, gl/build-aix/inline-source, |
| gl/build-aux/options-parser: Import module implementations. |
| * bootstrap: Regenerate. |
| * m4/gnulib-cache.m4: Regenerate. |
| |
| 2013-01-02 Eric Blake <[email protected]> |
| |
| maint: automake recommends *.texi now |
| * doc/m4.texinfo: Move... |
| * doc/m4.texi: ...here, for the eventual automake 1.14. |
| * HACKING: Reflect the rename. |
| * doc/Makefile.am (info_TEXINFOS): Likewise. |
| * checks/Makefile.am ($(srcdir)/stamp-checks): Likewise. |
| |
| 2013-01-01 Eric Blake <[email protected]> |
| |
| maint: bump copyright year |
| * all files: Version control now has a commit in 2013. |
| |
| maint: update to latest gnulib |
| * gnulib: Update to latest, for rational range regex, build fixes, |
| copyright update. |
| * NEWS: Document this. |
| |
| 2012-12-22 Eric Blake <[email protected]> |
| |
| maint: enable tight_scope syntax check |
| * src/Makefile.am (m4_SOURCES): Move m4.h... |
| (noinst_HEADERS): ...into separate listing for syntax check. |
| * src/m4.h: Add 'extern' to function declarations. |
| (expansion_level): Declare extern variable here... |
| * src/debug.c: ...not here. |
| |
| maint: move syntax check exemptions into cfg.mk |
| * .x-sc_prohibit_tab_based_indentation: Delete file. |
| * .x-update-copyright: Likewise. |
| * Makefile.am (syntax_check_exceptions): Delete rule. |
| * cfg.mk (exclude_file_name_regexp): Move exemptions here. |
| (local-checks-to-skip): Re-enable copyright check. |
| |
| build: update to latest gnulib |
| * gnulib: Update to latest. |
| |
| 2012-11-19 Eric Blake <[email protected]> |
| |
| build: avoid problematic gcc 4.4 warnings |
| * configure.ac (nw): Disable gcc warnings that cause build |
| failures under RHEL 6.3. |
| * gnulib: Update to latest. |
| |
| 2012-11-14 Paul Eggert <[email protected]> |
| |
| doc: improve prehistory discussion |
| * doc/m4.texinfo (History): Describe M6 and related processors. |
| From a suggestion by Doug McIlroy in |
| <http://lists.gnu.org/archive/html/m4-discuss/2012-05/msg00004.html>. |
| Also, improve citation quality by giving URLs and so forth. |
| |
| 2012-09-21 Eric Blake <[email protected]> |
| |
| maint: drop more CVS cruft |
| * bootstrap (Version control): Don't generate .cvsignore or |
| prepopulate m4/.gitignore. |
| * .gitignore: Allow m4/gnulib-cache.m4 manually. |
| |
| 2012-09-06 Eric Blake <[email protected]> |
| |
| maint: enable gcc warnings during git development |
| * configure.ac (gl_gcc_warnings): Alter default based on environment. |
| |
| 2012-09-05 Stefanno Lattarini <[email protected]> (tiny change) |
| |
| maint: convert the last hand-written Makefile to automake |
| * checks/Makefile.in: Rename ... |
| * checks/Makefile.am: ... like this, and simplify and adjust to |
| make it proper as Automake input. |
| |
| 2012-09-04 Eric Blake <[email protected]> |
| |
| maint: merge gitignore files |
| * build-aux/.gitignore: Delete. |
| * checks/.gitignore: Likewise. |
| * doc/.gitignore: Likewise. |
| * examples/.gitignore: Likewise. |
| * src/.gitignore: Likewise. |
| * .gitignore: Cover rules from deleted files. |
| |
| maint: drop CVS cruft |
| * .cvsignore: Remove. |
| * build-aux/.cvsignore: Likewise. |
| * checks/.cvsignore: Likewise. |
| * doc/.cvsignore: Likewise. |
| * examples/.cvsignore: Likewise. |
| * src/.cvsignore: Likewise. |
| |
| build: add more compiler checking |
| * configure.ac (nw): Turn on some warnings that no longer trigger |
| a gcc warning, or where we reduce the scope of unwarned code. |
| * src/m4.h (progname): Drop redundant declaration. |
| * src/builtin.c (includes): Use header for program_name. |
| |
| build: pick up latest gnulib fixes |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Regenerate. |
| * missing: Break symlink in order to work around automake version |
| mismatch issue. |
| * .gitignore: Update. |
| * .cvsignore: Likewise. |
| |
| build: mark several pure functions |
| * src/m4.h (M4_GNUC_PURE): New macro. |
| * src/m4.c (fault_handler): Mark pure. |
| * src/builtin.c (find_builtin_by_addr, find_builtin_by_name): |
| Likewise. |
| * src/symtab.c (hash): Likewise. |
| |
| 2012-09-01 Eric Blake <[email protected]> |
| |
| build: silence gcc warning |
| * configure.ac (M4_cv_gcc_pragma_push_works): New test. |
| (-Wformat-nonliteral): Disable for older gcc. |
| * src/format.c (expand_format): Mark our only uses of nonliteral |
| format as being safe. |
| |
| doc: fix misuse of @xref |
| * doc/m4.texinfo (Inhibiting Invocation): Reword. |
| |
| 2012-07-21 Eric Blake <[email protected]> |
| |
| bootstrap: avoid undefined variables |
| * bootstrap (func_fatal_error, func_usage, func_help) |
| (func_version): Use constants, not undefined variables; propagate |
| any write failures. |
| (func_missing_arg): Drop duplicate declaration. Preinitialize |
| exit_cmd. |
| Reported by Stefano Lattarini. |
| |
| 2012-06-26 Eric Blake <[email protected]> |
| |
| build: get missing from automake, not gnulib |
| * build-aux/missing: Break link to gnulib. |
| * .gitignore: Reflect this. |
| |
| 2012-06-25 Eric Blake <[email protected]> |
| |
| maint: update copyright year |
| * all files: Run 'make update-copyright'. |
| |
| build: deal with newer glibc vs. FORTIFY_SOURCE |
| * configure.ac (FORTIFY_SOURCE): Make conditional on optimization. |
| |
| 2011-05-02 Eric Blake <[email protected]> |
| |
| build: pick up latest gnulib fixes |
| * gnulib: Update to latest, for fclose improvements. |
| |
| 2011-04-30 Eric Blake <[email protected]> |
| |
| build: improve SIGPIPE emulation on mingw |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Import sigpipe module, drop strtol. |
| |
| 2011-04-29 Eric Blake <[email protected]> |
| |
| m4_defn: avoid compiler warning |
| * src/builtin.c (m4_defn): Nuke redundant condition. |
| |
| m4_error: fix missing va_end |
| * src/m4.c (m4_error, m4_error_at_line): Add missing va_end. |
| |
| 2011-03-01 Eric Blake <[email protected]> |
| |
| 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 <[email protected]> |
| |
| index: fix typo in previous commit |
| * doc/m4.texinfo (Index macro): Actually expose the bug. |
| |
| 2011-02-26 Eric Blake <[email protected]> |
| |
| index: fix another regression from faulty strstr |
| * gnulib: Update to latest, for strstr fix. |
| * doc/m4.texinfo (Index macro): Test for the bug. |
| * NEWS: Document the fix. |
| * THANKS: Update. |
| Reported by Mike Stump, with additional analysis from Ralf |
| Wildenhues and Jim Meyering. |
| |
| 2011-02-07 Eric Blake <[email protected]> |
| |
| maint: speed up configure, using latest gnulib |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Import fclose and rename modules. |
| * configure.ac (gl_ASSERT_NO_GNULIB_POSIXCHECK): Speed up normal |
| configure runs (and document how to rerun GNULIB_POSIXCHECK). |
| * HACKING: Document GNULIB_POSIXCHECK. |
| |
| maint: update http git cloning instructions |
| * HACKING: Git http doesn't like the redirect at git.sv.gnu.org. |
| * THANKS: Update. |
| Reported by Mike Dupont. |
| |
| 2011-02-01 Eric Blake <[email protected]> |
| |
| maint: update to latest gnulib |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Regenerate. |
| * src/builtin.c (m4_ifelse): Use STREQ. |
| |
| 2011-01-25 Eric Blake <[email protected]> |
| |
| maint: reflect recent copyright assignments |
| * AUTHORS: Update. |
| |
| 2011-01-03 Eric Blake <[email protected]> |
| |
| maint: update copyright year |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Regenerate. |
| * all other files: Run 'make update-copyright'. |
| |
| maint: document use of copyright ranges |
| * README: Copy coreutils wording for allowing copyright year |
| ranges. Also mention libsigsegv 2.9. |
| * cfg.mk (UPDATE_COPYRIGHT_USE_INTERVALS): Now that GNU Coding |
| Standards permit it, prefer shorthand copyright. |
| * HACKING: Update libsigsegv preference. |
| * NEWS: 1.4.16 will be in 2011. |
| * doc/m4.texinfo (History): Likewise. |
| |
| 2010-12-31 Eric Blake <[email protected]> |
| |
| main: avoid leaking string on Haiku |
| * src/m4.c (main): Avoid leak when SIGBUS == SIGSEGV. |
| * THANKS: Update. |
| Reported by Scott McCreary. |
| |
| 2010-12-24 Eric Blake <[email protected]> |
| |
| build: pull in various gnulib fixes |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Reflect spawn-pipe module name change. |
| * src/builtin.c (includes): Likewise. |
| (define_user_macro): Alter comment to appease syntax-check. |
| * src/input.c (pop_wrapup): Likewise. |
| * src/output.c (undivert_all): Likewise. |
| * cfg.mk (local-checks-to-skip): Skip new rule. |
| |
| maint: reflect recent copyright assignment |
| * AUTHORS: Add Raphael Poss. |
| |
| 2010-10-21 Eric Blake <[email protected]> |
| |
| build: work around glibc and libsigsegv bugs |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Regenerate. |
| * docs/m4.texinfo (Index macro): Expose strstr bug. |
| * NEWS: Mention fixes. |
| |
| docs: mention more history |
| * doc/m4.texinfo (History): Add upcoming 1.4.16 release. |
| |
| 2010-08-31 Eric Blake <[email protected]> |
| |
| Release Version 1.4.15. |
| * gnulib: Update to latest. |
| * NEWS: Mention the release. |
| |
| 2010-08-30 Eric Blake <[email protected]> |
| |
| Clean up compiler warnings. |
| * src/builtin.c (m4_patsubst): Drop dead store. |
| * src/eval.c (unary_term): Likewise. |
| * src/input.c (match_input): Likewise. Also drop useless casts to |
| void. |
| * src/symtab.c (symtab_debug): Drop useless casts. |
| |
| Test previous commit. |
| * doc/m4.texinfo (Format): Add a test. |
| * NEWS: Document the fix. |
| * THANKS: Update. |
| |
| 2010-08-30 Carlo Teubner <[email protected]> (tiny change) |
| |
| Avoid a crash with bad format string. |
| * src/format.c (expand_format): Fix off-by-one error. |
| |
| 2010-08-30 Eric Blake <[email protected]> |
| |
| Document recent bug fixes. |
| * NEWS: Add some entries. |
| * gnulib: Update to latest, for more AIX fixes. |
| |
| 2010-07-30 Eric Blake <[email protected]> |
| |
| Update to newer gnulib. |
| * gnulib: Update to latest, for strtod fix. |
| * src/Makefile.am (m4_LDADD): Update link libraries accordingly. |
| * cfg.mk (local-checks-to-skip): Skip broken check. |
| * doc/m4.texinfo: Drop all use of @acronym{}. |
| * THANKS: Update. |
| Reported by Rainer Tammer. |
| |
| 2010-06-04 Eric Blake <[email protected]> |
| |
| Reflect recent copyright assignment. |
| * AUTHORS: Add David Warme. |
| |
| Update to newer gnulib. |
| * gnulib: Update to latest, and include C++ tests. |
| * configure.ac (gl_CXX_CHOICE_DEFAULT_NO): Make default for C++ |
| tests be disabled... |
| * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): ...but run them when |
| building package. |
| * m4/gnulib-cache.m4: Regenerate. |
| * build-aux/.cvsignore: Likewise. |
| * build-aux/.gitignore: Likewise. |
| |
| Fix build on newer glibc. |
| * src/m4.h (includes): Add <sys/stat.h>. |
| * THANKS: Update. |
| Reported by Todd Rinaldo. |
| |
| 2010-03-02 Giuseppe Scrivano <[email protected]> (tiny change) |
| |
| Support bootstrap --gnulib-srcdir=DIR. |
| * bootstrap: Add --gnulib-srcdir option, which overrides |
| GNULIB_SRCDIR, for consistency with gnulib bootstrap. |
| |
| 2010-02-24 Eric Blake <[email protected]> |
| |
| Release Version 1.4.14. |
| * gnulib: Update to latest. |
| * README: Increase libsigsegv recommendation. |
| * HACKING: Likewise. Tweak release instructions. |
| * NEWS: Mention the release. |
| |
| Improve parsing example. |
| * doc/m4.texinfo (Input processing): Double-quote argument to |
| translit, for robustness. |
| * THANKS: Update. |
| Reported by Chris Penev. |
| |
| 2010-01-29 Eric Blake <[email protected]> |
| |
| Document upcoming release. |
| * gnulib: Update to latest. |
| * doc/m4.texinfo (History): Mention 1.4.14. |
| |
| 2010-01-06 Eric Blake <[email protected]> |
| |
| Use correct license on auxiliary documentation. |
| * gnulib: Update to latest. |
| * AUTHORS: Use GFDL 1.3, not 1.2. |
| * BACKLOG: Likewise. |
| * README: Likewise. |
| * THANKS: Likewise. |
| * TODO: Likewise. |
| * NEWS: Place under GFDL. |
| * cfg.mk (old_NEWS_hash): Update. |
| |
| 2010-01-05 Eric Blake <[email protected]> |
| |
| Remove more TAB characters. |
| * THANKS: Use space for alignment. |
| * bootstrap: Likewise. |
| * checks/stackovf.test: Likewise. |
| * configure.ac: Likewise. |
| * src/builtin.c: Likewise. Also update some stale comments. |
| * src/debug.c: Likewise. |
| * src/eval.c: Likewise. |
| * src/format.c: Likewise. |
| * src/freeze.c: Likewise. |
| * src/input.c: Likewise. |
| * src/m4.c: Likewise. |
| * src/m4.h: Likewise. |
| * src/macro.c: Likewise. |
| * src/output.c: Likewise. |
| * src/path.c: Likewise. |
| * src/symtab.c: Likewise. |
| |
| Clarify minimum bootstrap requirements. |
| * bootstrap: Avoid out-of-date duplicated data. |
| |
| Security fix by requiring newer automake features. |
| * configure.ac (AM_INIT_AUTOMAKE): Add dist-xz, color-tests, |
| parallel-tests, and silent-rules. |
| (AC_PREREQ): Bump autoconf requirement to 2.62, per automake. |
| * HACKING: Update minimum requirements. |
| * NEWS: Document the fix. |
| |
| Drop hard-coding of GPG id. |
| * gnulib: Update to latest. |
| * m4/gnulib-cache.m4: Regenerate. |
| * cfg.mk (gpg_key_ID): Delete, now that maint.mk provides a |
| sensible default. |
| (update-copyright-env): Don't let environment interfere with wrap |
| column. |
| |
| 2010-01-01 Eric Blake <[email protected]> |
| |
| Update copyright year. |
| All files impacted, via 'make update-copyright'. Additionally: |
| * .gitignore: Ignore backup files. |
| |
| 2009-12-29 Eric Blake <[email protected]> |
| |
| Document new indentation policy. |
| * HACKING: Document indentation policy. |
| * .x-sc_prohibit_tab_based_indentation: New file. |
| * cfg.mk (sc_prohibit_tab_based_indentation): New rule. |
| * Makefile.am (syntax_check_exceptions): New macro. |
| (EXTRA_DIST): Distribute exception files, and .prev-version. |
| |
| Switch to indentation by space, not tab. |
| * .gitmodules: Convert leading tabs to spaces. |
| * TODO: Likewise. |
| * bootstrap: Likewise. |
| * c-boxes.el: Likewise. |
| * checks/check-them: Likewise. |
| * checks/get-them: Likewise. |
| * checks/stackovf.test: Likewise. |
| * configure.ac: Likewise. |
| * src/builtin.c: Likewise. |
| * src/debug.c: Likewise. |
| * src/eval.c: Likewise. |
| * src/format.c: Likewise. |
| * src/freeze.c: Likewise. |
| * src/input.c: Likewise. |
| * src/m4.c: Likewise. |
| * src/m4.h: Likewise. |
| * src/macro.c: Likewise. |
| * src/output.c: Likewise. |
| * src/path.c: Likewise. |
| * src/symtab.c: Likewise. |
| |
| Update to latest gnulib. |
| * gnulib: Update. |
| * m4/gnulib-cache.m4: Import xoset. |
| * src/output.c (includes): Ensure that gnulib oset usage will |
| call xalloc_die on memory failure. |
| * build-aux/.cvsignore: Regenerate. |
| * build-aux/.gitignore: Likewise. |
| |
| 2009-11-28 Eric Blake <[email protected]> |
| |
| Work around BSD getopt bug. |
| * gnulib: Update. |
| * doc/m4.texinfo (Command line files): Add test. |
| |
| Use fastmap for better regex performance. |
| * src/input.c (word_start): Delete. |
| (pop_wrapup): Free memory on exit. |
| (set_word_regexp): Compile a fastmap instead. |
| (peek_token, next_token): Use the fastmap. |
| |
| 2009-11-26 Eric Blake <[email protected]> |
| |
| Ignore write failures before stack overflow exit. |
| * m4/gnulib-cache.m4: Import ignore-value module. |
| * src/m4.c (fault_handler): Use it to avoid compiler warning. |
| |
| 2009-11-25 Eric Blake <[email protected]> |
| |
| Allow use of compiler warnings. |
| * m4/gnulib-cache.m4: Import manywarnings module. |
| * configure.ac (WERROR_CFLAGS, WARN_CFLAGS): New variables. |
| * src/Makefile.am (AM_CFLAGS): Use them. |
| * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Turn on warnings during |
| distcheck. |
| * src/m4.h (M4_GNUC_NORETURN): New macro. |
| (trace_post): Delete unused parameter. |
| * src/m4.c (usage): Mark as noreturn. |
| (main): Remove unused parameter. |
| * src/debug.c (trace_post): Likewise. |
| (trace_pre): Cover all enum values. |
| * src/symtab.c (lookup_symbol): Likewise. |
| * src/builtin.c (define_macro, m4_dumpdef): Likewise. |
| (m4_define, m4_undefine, m4_pushdef, m4_popdef, m4_sysval) |
| (m4_divert, m4_undivert, m4_dnl, m4_changequote, m4_changecom) |
| (m4_changeword, m4_syscmd, m4_include, m4_sinclude, m4_m4exit) |
| (m4_debugmode, m4_debugfile, m4_placeholder): Mark unused |
| parameters. |
| (mkstemp_helper): Use parameter. |
| (substitute): Avoid signed vs. unsigned comparison. |
| * src/format.c (arg_int, arg_long, arg_double): Likewise. |
| * src/input.c (next_token): Likewise. |
| * src/output.c (freeze_diversions): Likewise. |
| (m4_tmpname): Allow C++ compilation. |
| * src/freeze.c (produce_frozen_state, GET_NUMBER): Use correct |
| type. |
| * src/macro.c (call_macro): Cover all enum values. |
| (expand_macro): Update caller. |
| * src/path.c (m4_fopen): Remove unused parameter. |
| (m4_path_search): Update caller. |
| |
| Silence syntax-check warnings. |
| * src/m4.h (STREQ): New macro. |
| * src/builtin.c (find_builtin_by_name): Use it. |
| * src/input.c (set_word_regexp): Likewise. |
| * src/m4.c (process_file): Likewise. |
| (main): Consistently spell warning, and mark output strings. |
| Avoid unsafe parsing functions. |
| (process_file): Mark output strings. |
| * src/output.c (make_diversion): Likewise. |
| * src/format.c (arg_int, arg_long, arg_double): New helpers. |
| (ARG_INT, ARG_LONG, ARG_DOUBLE): Use them to detect parse errors. |
| * BACKLOG: Avoid whitespace problems. |
| * TODO: Likewise. |
| * HACKING: Likewise. |
| * examples/esyscmd.m4: Likewise. |
| * examples/file.m4: Likewise. |
| * examples/fstab.m4: Likewise. |
| * examples/patsubst.m4: Likewise. |
| |
| Use gnulib maintainer-makefile module. |
| * m4/gnulib-cache.m4: Import maintainer-makefile module. |
| * cfg.mk (local-checks-to-skip): Drop changelog-check; add |
| sc_cast_of_x_alloc_return_value. |
| (gnulib_dir, gnu_rel_host, url_dir_list): Delete; provided by |
| maint.mk. |
| (config_h_header, old_NEWS_hash): New macros. |
| * .prev-version: New file. |
| * maint.mk: Remove from version control; use gnulib instead. |
| * .gitignore: Update. |
| * HACKING: Update. |
| |
| Update from gnulib. |
| * gnulib: Update. |
| * m4/gnulib-cache.m4: Use --makefile-name. |
| * lib/Makefile.am: Wrap the gnulib-generated file. |
| * tests/Makefile.am: Likewise. |
| * .gitignore: Track our wrappers. |
| * doc/m4.texinfo (Improved capitalize): Fix typo. |
| |
| 2009-10-05 Eric Blake <[email protected]> |
| |
| Update from gnulib. |
| * gnulib: Update. |
| * m4/gnulib-cache.m4: Import gnu-web-doc-update module. |
| * build-aux/.gitignore: Ignore new file. |
| * build-aux/.cvsignore: Likewise. |
| |
| 2009-08-20 Eric Blake <[email protected]> |
| |
| Update from gnulib. |
| * gnulib: Update. |
| * AUTHORS: Mention recent copyright assignment. |
| |
| 2009-08-17 Eric Blake <[email protected]> |
| |
| Enhance test with closed descriptors. |
| * doc/m4.texinfo (Command line files): Enhance test from |
| 2009-07-20 to actually test the bug being fixed. |
| |
| Update copyright year. |
| * AUTHORS: Run UPDATE_COPYRIGHT_FORCE=1 make update-copyright. |
| * BACKLOG: Likewise. |
| * Makefile.am: Likewise. |
| * TODO: Likewise. |
| * acinclude.m4: Likewise. |
| * c-boxes.el: Likewise. |
| * cfg.mk: Likewise. |
| * checks/Makefile.in: Likewise. |
| * checks/check-them: Likewise. |
| * checks/stackovf.test: Likewise. |
| * doc/Makefile.am: Likewise. |
| * examples/Makefile.am: Likewise. |
| * src/Makefile.am: Likewise. |
| * src/debug.c: Likewise. |
| * src/eval.c: Likewise. |
| * src/freeze.c: Likewise. |
| * src/m4.h: Likewise. |
| * src/macro.c: Likewise. |
| * src/path.c: Likewise. |
| * src/symtab.c: Likewise. |
| |
| Prepare to bulk update copyright year. |
| * gnulib: Update. |
| * m4/gnulib-cache.m4: Import update-copyright and vc-list-files |
| modules. |
| * maint.mk: Fix copyright. |
| (build_aux, VC_LIST, VC_LIST_EXCEPT, update-copyright): New macros |
| and rules borrowed from gnulib. |
| * cfg.mk (update-copyright-env): Enforce longhand behavior. |
| * .cvsignore: Reflect these changes. |
| * .gitignore: Likewise. |
| * .x-update-copyright: New file. |
| |
| 2009-08-14 Eric Blake <[email protected]> |
| |
| Explicitly request GNU getopt extensions. |
| * gnulib: Update. |
| * m4/gnulib-cache.m4: Use getopt-gnu, not obsolete getopt module. |
| |
| 2009-07-22 Eric Blake <[email protected]> |
| |
| Fix testsuite on Solaris. |
| * doc/m4.texinfo (Command line files): Tolerate different spelling |
| of EBADF. |
| * src/builtin.c (m4_esyscmd): Clear errno before reaping. |
| |
| 2009-07-21 Eric Blake <[email protected]> |
| |
| Fix testsuite on mingw. |
| * gnulib: Update. |
| |
| 2009-07-20 Eric Blake <[email protected]> |
| |
| Pick up gnulib fixes for sub-process execution. |
| * gnulib: Update. |
| * doc/m4.texinfo (Command line files): Add test; regression |
| introduced 2009-03-05. |
| * NEWS: Document the change. |
| |
| Avoid cygwin 1.7 crash with closed stdout. |
| * gnulib: Update. |
| * doc/m4.texinfo (Command line files): Add test; regression |
| introduced 2008-07-17. |
| * NEWS: Document the change. |
| |
| A status of 127 does not always imply esyscmd failure. |
| * src/builtin.c (m4_esyscmd): Silence gnulib message; regression |
| introduced 2009-03-05. |
| * doc/m4.texinfo (Sysval): Test this. |
| * NEWS: Document the change. |
| |
| 2009-06-25 Eric Blake <[email protected]> |
| |
| Fix description of limits on diversions. |
| * doc/m4.texinfo (Diversions): Fix grammar. Be less pessimistic |
| about limitations. |
| * THANKS: Update. |
| Reported by Elias Benali. |
| |
| 2009-06-17 Eric Blake <[email protected]> |
| |
| Update to latest gnulib. |
| * gnulib: Import fixes for Interix compilation. |
| * THANKS: Update. |
| Reported by Jay Krell. |
| |
| 2009-05-22 Eric Blake <[email protected]> |
| |
| Update to latest gnulib. |
| * gnulib: Import fixes for AIX compilation. |
| * THANKS: Update. |
| Reported by Jens Rehsack. |
| |
| 2009-04-13 Eric Blake <[email protected]> |
| |
| Fix GFDL usage. |
| * doc/m4.texinfo (copying): Complete transition to GFDL 1.3, |
| started 2008-12-12. |
| Reported by Santiago Vila. |
| |
| 2009-04-01 Eric Blake <[email protected]> |
| |
| Release Version 1.4.13. |
| * NEWS: Mention the release. |
| |
| 2009-03-31 Eric Blake <[email protected]> |
| |
| Tweak submodule instructions. |
| * HACKING: Improve directions. |
| * gnulib: Update to latest version. |
| |
| 2009-03-23 Eric Blake <[email protected]> |
| |
| Don't force file overwrites during bootstrap. |
| * bootstrap: Ensure that rerunning bootstrap doesn't alter tree. |
| |
| Drop dist-lzma, now that xz replaces lzma. |
| * configure.ac (AM_INIT_AUTOMAKE): Drop dist-lzma. Until a stable |
| automake release includes dist-xz, the release process will just |
| manually create a .xz tarball. |
| * gnulib: Update to latest gnulib. |
| |
| 2009-03-19 Eric Blake <[email protected]> |
| |
| Exploit git submodule by adding appropriate symlinks. |
| * bootstrap: No longer copy files from gnulib. |
| * COPYING: Change to symlink pointing into gnulib. |
| * INSTALL: Likewise. |
| * build-aux/compile: Likewise. |
| * build-aux/config.guess: Likewise. |
| * build-aux/config.sub: Likewise. |
| * build-aux/depcomp: Likewise. |
| * build-aux/install-sh: Likewise. |
| * build-aux/mdate-sh: Likewise. |
| * build-aux/missing: Likewise. |
| * build-aux/texinfo.tex: Likewise. |
| * .cvsignore: Reflect these changes. |
| * .gitignore: Likewise. |
| * build-aux/.cvsignore: New file. |
| * build-aux/.gitignore: Likewise. |
| |
| 2009-03-18 Eric Blake <[email protected]> |
| |
| Make gnulib a git submodule. |
| * .gitmodules: New file. |
| * gnulib: Record which version of gnulib has been tested. |
| * bootstrap: Aid in submodule usage. |
| * cfg.mk (gnulib_dir): Alter default location of gnulib. |
| * HACKING: Mention how to use submodule. |
| |
| Use latest compile script, even with stable automake. |
| * bootstrap: Also sync build-aux/compile. |
| |
| 2009-03-12 Eric Blake <[email protected]> |
| |
| Fix awk script portability. |
| * checks/get-them: In gsub, properly escape {. Close all files |
| before exiting. |
| Reported by Gary V. Vaughan. |
| |
| 2009-03-05 Eric Blake <[email protected]> |
| |
| Allow configuration choice in syscmd shell. |
| * configure.ac (SYSCMD_SHELL): New test. |
| * src/builtin.c (m4_syscmd, m4_esyscmd): Use it to avoid |
| hard-coding the shell location. |
| * doc/m4.texinfo (Syscmd, Esyscmd): Document this. |
| * README: Document new configure option. |
| * NEWS: Likewise. |
| |
| Remove cruft now that gnulib modules do the work. |
| * configure.ac (M4_cv_func_system_consistent): Delete. |
| * src/builtin.c (M4SYSVAL_EXITBITS, M4SYSVAL_TERMSIGBITS): |
| Delete. |
| |
| Use gnulib pipe module instead of popen(3). |
| * m4/gnulib-cache.m4: Import pipe and wait-process modules. |
| * src/builtin.c (m4_esyscmd): Rewrite with pipe module. |
| Resolves a failure on AIX, reported by Gary V. Vaughan. |
| |
| Use gnulib execute module instead of system(3). |
| * m4/gnulib-cache.m4: Import execute module. |
| * src/builtin.c (m4_sysval): Move computation... |
| (m4_esyscmd): ...into caller. |
| (m4_syscmd): Rewrite with execute module. |
| Resolves a failure on AIX, reported by Gary V. Vaughan. |
| |
| 2009-03-03 Eric Blake <[email protected]> |
| |
| Try to tolerate spaces in directory names in testsuite. |
| * doc/m4.texinfo (Diversions, Using frozen files): Provide shell |
| quoting, in case __program__ contains spaces. |
| |
| Improve web-manual maintainer rule. |
| * maint.mk (web-manual): Work with VPATH builds. Factor |
| package-specific detail... |
| * cfg.mk (manual_title): ...to new variable. |
| |
| 2009-02-26 Eric Blake <[email protected]> |
| |
| Make bootstrap easier on Solaris. |
| * bootstrap: Add GNULIB_SRCDIR. Useful when a wrapper script |
| gnulib-tool exists earlier on the path to work around /bin/sh |
| failure in parsing $GNULIB_SRCDIR/gnulib-tool. |
| |
| 2009-02-19 Eric Blake <[email protected]> |
| |
| Fix regression in translit. |
| * src/builtin.c (m4_translit): Use correct comparison. |
| * doc/m4.texinfo (Translit): Enhance test. |
| |
| Speed up input engine, by searching for quotes by buffer. |
| * src/input.c (struct input_block): Add end pointer to string. |
| (push_string_finish, push_wrapup): Populate it. |
| (next_token): For quotes, attempt a buffer search. |
| * NEWS: Document this. |
| |
| 2009-02-18 Eric Blake <[email protected]> |
| |
| Speed up translit when from argument is short. |
| * m4/gnulib-cache.m4: Import memchr2 module. |
| * src/builtin.c (m4_translit): Use memchr2 when possible. |
| * doc/m4.texinfo (Translit): Add tests. |
| * NEWS: Document this. |
| |
| Update copyright year. |
| * THANKS: Mention 2009 in copyright year. |
| |
| Prefer buffer over byte operations. |
| * src/format.c (expand_format): Use strchr for speed. |
| * src/builtin.c (substitute, expand_user_macro): Likewise. |
| |
| Speed up esyscmd with buffer reads. |
| * src/builtin.c (m4_esyscmd): Read blocks directly into obstack, |
| rather than repeatedly reading bytes. Detect read errors. |
| |
| Avoid risk of stack overflow. |
| * src/output.c (insert_file): Avoid stack allocation of large |
| buffer. |
| (freeze_diversions): Avoid spurious semicolon. |
| |
| 2009-02-16 Eric Blake <[email protected]> |
| |
| Avoid test failure due to different errno. |
| * doc/m4.texinfo (Using frozen files): Ignore stdout, since |
| hardened systems can prevent attempts to read /. |
| * THANKS: Update. |
| Reported by Ronny Peine, in Gentoo bug 259184. |
| |
| Avoid tests that make no sense, because m4 is single-threaded. |
| * m4/gnulib-cache.m4: Avoid lock-tests and tls-tests. |
| |
| 2009-02-12 Eric Blake <[email protected]> |
| |
| Avoid quadratic code when walking definition stack. |
| * examples/stack_sep.m4: Use linear, not quadratic |
| implementation. |
| * doc/m4.texinfo (Improved copy): Fix documentation and add test, |
| based on recent autoconf bug fix. |
| |
| 2009-01-24 Eric Blake <[email protected]> |
| |
| Add URLs to --help output. |
| * src/m4.c (usage): Use enhanced version-etc features. |
| |
| 2009-01-02 Eric Blake <[email protected]> |
| |
| Use nicer email address in web manual. |
| * maint.mk (web-manual): Use new option in gendocs.sh. |
| |
| Nuke xdelta diffs at release time; no one reported using them. |
| * maint.mk (got-xdelta, delta-xdelta): Delete. |
| * HACKING: Likewise. |
| |
| 2009-01-01 Eric Blake <[email protected]> |
| |
| Update copyright year. |
| * NEWS: M4 1.4.13 will occur in 2009. |
| * doc/m4.texinfo (History): Likewise. |
| |
| 2008-12-24 Eric Blake <[email protected]> |
| |
| Prepare for eventual release. |
| * doc/m4.texinfo (History): Mention 1.4.13. |
| |
| 2008-12-22 Eric Blake <[email protected]> |
| |
| Make --debugfile argument optional. |
| * src/builtin.c (m4_debugfile): Make error message consistent. |
| * src/m4.c (long_options): Make the argument optional, to allow |
| setting debug file back to stderr. |
| (main): Make --debugfile order-dependent. |
| (usage): Document this. |
| * doc/m4.texinfo (Debugging options): Likewise. |
| * NEWS: Likewise. |
| |
| Use @var correctly. |
| * doc/m4.texinfo (Operation modes, Preprocessor features) |
| (Limits control, Frozen state, Debugging options): Use lower case |
| names in @var. |
| (Improved copy): Use @code, not @var, as appropriate. |
| |
| 2008-12-18 Eric Blake <[email protected]> |
| |
| Document optimized forloop. |
| * doc/m4.texinfo (Improved forloop): Mention alternate style that |
| avoids define overhead. |
| * examples/forloop3.m4: New file. |
| * examples/Makefile.am (EXTRA_DIST): Distribute it. |
| |
| Deal with M4 1.4.x limitation on builtin tokens. |
| * doc/m4.texinfo (Composition): Mention limitation on curry. |
| (Improved copy): New node. |
| * examples/stack_sep.m4: New file. |
| * examples/Makefile.am (EXTRA_DIST): Distribute it. |
| |
| Document copy composite using stack_foreach and curry. |
| * doc/m4.texinfo (Stacks): New node, to document pushdef stack |
| manipulation. |
| (Ifelse): Move define_blind... |
| (Composition): ...to this new node. Document currying, then use |
| it to implement copy and rename. |
| * examples/curry.m4: New file. |
| * examples/stack.m4: Likewise. |
| * examples/Makefile.am (EXTRA_DIST): Distribute them. |
| |
| 2008-12-17 Eric Blake <[email protected]> |
| |
| Don't override signal handlers installed by c-stack. |
| * src/m4.c (main): Reorder installation of signal handlers, so we |
| don't trash a SIGBUS handler installed by c-stack. Also provide a |
| SIGSEGV fallback, for platforms where c-stack combined with |
| libsigsegv uses something lower level than SIGSEGV. |
| |
| 2008-12-12 Eric Blake <[email protected]> |
| |
| Double size of temp file cache. |
| * src/output.c (tmp_file, tmp_file_owner): Split... |
| (tmp_file1, tmp_file2, tmp_file1_owner, tmp_file2_owner): ...into |
| two variables. |
| (tmp_file2_recent): New variable. |
| (m4_tmpopen, m4_tmpclose, m4_tmpremove, m4_tmprename) |
| (output_exit): Adjust callers. |
| |
| Use fewer seeks on cached files. |
| * src/output.c (m4_tmpfile): Use write, not append mode. |
| (m4_tmpopen): Add parameter to decide when to skip seeks. |
| (m4_tmprename, make_diversion, insert_diversion_helper) |
| (freeze_diversions): Adjust callers. |
| |
| Cache most recently spilled diversion. |
| * src/output.c (tmp_file, tmp_file_owner): New variables, for |
| 1-deep cache of spilled diversions. |
| (m4_tmpfile): Open in append mode, since we might revisit |
| diversion without closing it now. |
| (m4_tmpopen): Check cache first. |
| (m4_tmpclose): Update cache, rather than closing. Add parameter. |
| (m4_tmpremove): Close cache before removing. |
| (m4_tmprename): Deal with open files when renaming. |
| (output_exit): Close cache before exiting. |
| (make_room_for, make_diversion, insert_diversion_helper): Adjust |
| callers. |
| * configure.ac (RENAME_OPEN_FILE_WORKS): New configure test. |
| |
| Correctly track size of in-memory diversions. |
| * src/output.c (insert_diversion_helper): Correctly track total |
| in-memory diversion size after undivert. |
| |
| Avoid quadratic behavior for some cases of divert/undivert. |
| * src/output.c (struct m4_diversion): Improve comments. |
| (m4_tmpname, make_diversion): Strengthen preconditions. |
| (m4_tmprename): New function. |
| (output_init, output_exit): Move after internal functions. |
| (make_room_for): Don't bother copying uninitialized bytes. |
| (insert_diversion_helper): Transfer metadata, rather than copying |
| contents, when undiverting into a previously unused diversion. |
| * src/m4.h (includes): Add assert.h. |
| * doc/m4.texinfo (Diversions): Add test. |
| (Undivert): Enhance test. |
| * NEWS: Document the speedup. |
| |
| 2008-12-12 Eric Blake <[email protected]> |
| |
| Upgrade to FDL 1.3, keep COPYING in repository. |
| * Makefile.am (MAINTAINERCLEANFILES): Don't remove COPYING. |
| * .cvsignore: Don't ignore it. |
| * .gitignore: Likewise. |
| * COPYING: Store in repository, per automake 1.10.2 |
| recommendation. |
| * m4/gnulib-cache.m4: Replace fdl module with fdl-1.3. |
| * doc/m4.texinfo (GNU Free Documentation License): Upgrade |
| license. |
| * doc/Makefile.am (m4_TEXINFOS): Likewise. |
| * NEWS: Mention the documentation license change. |
| |
| 2008-10-10 Eric Blake <[email protected]> |
| |
| Release Version 1.4.12. |
| * NEWS: Mention the release. |
| |
| 2008-10-06 Eric Blake <[email protected]> |
| |
| Work around Solaris' sed inability to process NUL. |
| * checks/check-them (SED): Allow user to override. |
| |
| 2008-09-25 Eric Blake <[email protected]> |
| |
| Tweak error message on command line failure. |
| * src/m4.c (process_file): Match wording of include builtin. |
| * src/freeze.c (produce_frozen_state): Likewise. |
| * m4/gnulib-cache.m4: Regenerate. |
| * doc/m4.texinfo (Command line files, Using frozen files): Update |
| tests accordingly. |
| |
| 2008-09-24 Eric Blake <[email protected]> |
| |
| Unify error handling for reading directories. |
| * src/path.c (m4_path_search): Factor open attempts... |
| (m4_fopen): ...into new function, to reject directories. |
| * doc/m4.texinfo (Include): Document that directories cannot be |
| input files. |
| |
| Avoid bugs on platforms that mishandle trailing /. |
| * m4/gnulib-cache.m4: Import fopen module. |
| * doc/m4.texinfo (Command line files, Include): Add tests. |
| (Using frozen files): This test now works on mingw. |
| * checks/check-them (examples): Expand xerr to allow ignoring |
| error output because of differences in platform errno values. |
| |
| 2008-09-22 Eric Blake <[email protected]> |
| |
| Support alternate path separator. |
| * m4/gnulib-cache.m4: Import dirname and filenamecat modules. |
| * src/m4.h (includes): Add headers. |
| * src/path.c (m4_path_search): Avoid literal use of '/' as path |
| separator and when detecting absolute paths. |
| |
| 2008-09-16 Eric Blake <[email protected]> |
| |
| Fix bootstrap for Solaris /bin/sh. |
| * bootstrap: Avoid shell quoting pitfall. |
| |
| 2008-09-01 Eric Blake <[email protected]> |
| |
| Fix building with -DDEBUG=1. |
| * src/input.c (lex_debug) [DEBUG_INPUT]: Fix compilation failure. |
| * src/symtab.c (symtab_debug) [DEBUG_SYM]: Likewise. |
| * src/m4.c (includes) [DEBUG_STKOVF]: Likewise. |
| Reported by Tom G. Christensen. |
| |
| 2008-09-01 Ralf Wildenhues <[email protected]> |
| |
| Typos in source code comments. |
| * src/builtin.c: Fix typos in comments. |
| * src/input.c: Likewise. |
| |
| 2008-08-29 Eric Blake <[email protected]> |
| |
| Fix manual date information. |
| * doc/m4.texinfo: UPDATED refers to the day the manual was built, |
| not the release date of M4. |
| Based on a bison patch by Akim Demaille. |
| |
| 2008-08-27 Eric Blake <[email protected]> |
| |
| Fix typo. |
| * doc/m4.texinfo (Invoking m4): 'm4 -d+f' is not supported in this |
| branch. |
| |
| 2008-08-25 Eric Blake <[email protected]> |
| |
| Update recommendation now that libsigsegv 2.6 is released. |
| * NEWS: Recommend libsigsegv 2.6+. |
| * README: Likewise. |
| |
| 2008-08-21 Eric Blake <[email protected]> |
| |
| Fix crash with traced defn(undef), regression from 2007-08-09. |
| * src/builtin.c (m4_defn): Handle traced but undefined macros. |
| * doc/m4.texinfo (Trace): Test it. |
| * NEWS: Document it. |
| |
| 2008-08-18 Eric Blake <[email protected]> |
| |
| Fix crash with 'm4 -N9', regression from 2006-09-14. |
| * src/m4.c (main): Add missing break. |
| * NEWS: Document it. |
| |
| 2008-08-15 Eric Blake <[email protected]> |
| |
| Documentation updates. |
| * doc/m4.texinfo (History): Mention 1.4.12. |
| (Builtin): Enhance regression tests. |
| (Debug Levels): Mention effect of -l. Enhance regression tests. |
| (Incompatibilities): Fix typo, and mention trace output. |
| (Improved capitalize): Simplify example. |
| |
| Avoid compiler warning. |
| * src/builtin.c (m4_ifelse): Avoid unused variable. |
| * THANKS: Update. |
| Reported by Tom G. Christensen. |
| |
| Improve 'git diff' of manual source. |
| * .gitattributes (*.texi*): Add diff attribute. |
| * bootstrap: Tell git how to use it. |
| Inspired by Jim Meyering's similar patch for coreutils. |
| |
| 2008-08-11 Eric Blake <[email protected]> |
| |
| Avoid triggering OS/2 bug in testsuite. |
| * doc/m4.texinfo (Mkstemp): Don't assume test(1) status is 1. |
| Reported by Elbert Pol. |
| |
| 2008-08-03 Eric Blake <[email protected]> |
| |
| Increase ulimit stack value to be larger than SIGSTKSZ. |
| * checks/stackovf.test (tmpfile): Use 300K rather than 50K, since |
| at least OpenBSD's sh died early from an undersized stack limit. |
| |
| 2008-07-17 Eric Blake <[email protected]> |
| |
| Remove redundant examples/stackovf.sh. |
| * examples/stackovf.sh: Delete, now that checks has better |
| version. |
| * examples/Makefile.am (EXTRA_DIST): Don't distribute it. |
| |
| 2008-07-17 Eric Blake <[email protected]> |
| |
| Adjust to c-stack changes in gnulib. |
| * src/Makefile.am (m4_LDADD): Use libsigsegv when available and |
| necessary, via LIBCSTACK. |
| * src/m4.c (main) [DEBUG_STACKOVF]: Make it easier to test fault |
| handlers. |
| * checks/stackovf.test: New file. |
| * checks/Makefile.in (CHECKS): Add stackovf.test, and factor... |
| (DOC_CHECKS): ...generated documentation tests into new macro. |
| (DISTFILES): Distribute stackovf.test. |
| * checks/check-them: Special-case stackovf.test. |
| * NEWS: Enhance the NEWS item for -L improvements. |
| * README: Mention the optional dependency. |
| * HACKING: Mention maintenance burden added by libsigsegv. |
| |
| 2008-06-21 Eric Blake <[email protected]> |
| |
| Use new sigaction module. |
| * m4/gnulib-cache.m4: Import sigaction module. |
| * src/m4.c (main): Drop signal() calls. |
| |
| 2008-06-18 Eric Blake <[email protected]> |
| |
| Also trap SIGILL, SIGFPE, SIGBUS. |
| * m4/gnulib-cache.m4: Import strsignal module. |
| * src/m4.c (main): Register more handlers, and prefer sigaction |
| when available. |
| (SIGBUS, NSIG): Provide fallback when lacking. |
| (signal_message): New variable, to keep async-safety. |
| (fault_handler): Display faulting signal description. |
| * configure.ac (gl_DISABLE_THREADS): Request gnulib modules to |
| optimize for single-threaded operation. |
| |
| 2008-06-06 Eric Blake <[email protected]> |
| |
| Inform users what to do in case of programmer error. |
| * src/m4.h (EXIT_INTERNAL_ERROR): New macro. |
| * configure.ac (AC_TYPE_SIGNAL): Delete, now that we assume C89. |
| * src/m4.c (fault_handler): New method. |
| (program_error_message): New variable, for async-safety. |
| (main): Print bug reporting address rather than dump core on any |
| failed assertions or detected non-stack-overflow faults. |
| |
| 2008-06-06 Eric Blake <[email protected]> |
| |
| Replace stackovf with gnulib c-stack. |
| * m4/gnulib.cache.m4: Import c-stack module. |
| * configure.ac (AC_CHECK_HEADERS_ONCE): Remove check for |
| siginfo.h, sys/wait.h. |
| (AC_CHECK_TYPES): Likewise for siginfo_t. |
| (AC_CHECK_MEMBERS): Likewise for sa_sigaction, ss_sp. |
| (AC_CHECK_FUNCS_ONCE): Likewise for sigaction, sigaltstack, |
| sigstack, sigvec, strerror. |
| (M4_cv_use_stackovf): Likewise for stack overflow detection. |
| * src/Makefile.am (m4_SOURCES): Don't build stackovf.c. |
| * src/stackovf.c: Delete. |
| * src/m4.h (setup_stackovf_trap): Delete. |
| * src/m4.c (stackovf_handler): Delete. |
| (main): Use c_stack_action instead of setup_stackovf_trap. If |
| stack overflow is detectable, don't limit -L artificially. |
| (usage): Document unlimited default on supported systems. |
| * doc/m4.texinfo (Limits control): Document new default nesting |
| limit. |
| * NEWS: Document this change. |
| |
| 2008-07-30 Eric Blake <[email protected]> |
| |
| Avoid regressions in trace and comment output. |
| * doc/m4.texinfo (Trace): Add test. |
| (Comments): Likewise. |
| |
| 2008-07-28 Eric Blake <[email protected]> |
| |
| Optimize iteration examples. |
| * examples/forloop2.m4: Avoid excess indir, by passing current |
| counter value as parameter. |
| * examples/foreachq3.m4: Avoid unneeded ifelse, by injecting an |
| ignored argument. |
| * doc/m4.texinfo (Improved forloop, Improved foreach): Update the |
| documentation to match. |
| |
| 2008-07-26 Eric Blake <[email protected]> |
| |
| Give example for O(n) foreach on m4 1.4.x. |
| * examples/foreachq4.m4: New file. |
| * examples/Makefile.am (EXTRA_DIST): Distribute it. |
| * doc/m4.texinfo (Improved foreach): Document linear foreach with |
| m4 1.4.5 and greater. |
| |
| 2008-07-17 Eric Blake <[email protected]> |
| |
| Fix missing copyright notices. |
| * acinclude.m4: Add copyright license details. |
| * c-boxes.el: Likewise. |
| * checks/get-them: Likewise. |
| * checks/check-them: Likewise. |
| |
| 2008-07-13 Eric Blake <[email protected]> |
| |
| Add -g/--gnu command line argument. |
| * src/m4.c (usage): Mention the new option. |
| (long_options, OPTSTRING): Add new option. |
| (main): Use it. |
| * NEWS: Document this addition. |
| * doc/m4.texinfo (Limits control): Likewise. |
| (Incompatibilities): Mention future use of POSIXLY_CORRECT. |
| * THANKS: Update. |
| Reported by Joel E. Denny. |
| |
| 2008-07-11 Eric Blake <[email protected]> |
| |
| Avoid bogus whitespace in @ovar, @dvar. |
| * doc/m4.texinfo (ovar, dvar): Add @c. |
| Based on patch by Ralf Wildenhues to Autoconf manual. |
| |
| 2008-06-16 Eric Blake <[email protected]> |
| |
| Add missing const qualifications. |
| * src/builtin.c (builtin_tab): Declare array elements as const. |
| |
| 2008-06-03 Eric Blake <[email protected]> |
| |
| Use progname module rather than rolling our own program_name. |
| * m4/gnulib-cache.m4: Import progname module. |
| * src/m4.c (program_name): Replace... |
| (main): ...with a call to set_program_name. |
| |
| 2008-06-02 Eric Blake <[email protected]> |
| |
| Allow autobuild usage. |
| * m4/gnulib.cache: Import autobuild module. |
| |
| 2008-05-23 Eric Blake <[email protected]> |
| |
| Make closing files be consistent. |
| * src/freeze.c (reload_frozen_state): Use close_stream. |
| Reported by Jean-Charles Longuet. |
| |
| 2008-05-22 Eric Blake <[email protected]> |
| |
| Don't allow failure to freeze give exit status of 0. |
| * src/freeze.c (produce_frozen_state): Guarantee non-zero exit on |
| fopen failure. |
| * doc/m4.texinfo (Using frozen files): Test the fix. |
| * THANKS: Update. |
| Reported by Jean-Charles Longuet. |
| |
| 2008-05-09 Eric Blake <[email protected]> |
| |
| Improve error message when frozen file is invalid. |
| * src/freeze.c (reload_frozen_state): Track current line. |
| [GET_STRING]: New helper macro. |
| |
| 2008-05-09 Eric Blake <[email protected]> |
| |
| Detect integer overflow when loading frozen file. |
| * src/m4.h (includes): Add limits.h. |
| (_): Define as a no-op placeholder for now. |
| * src/freeze.c (reload_frozen_state) [GET_NUMBER]: Rewrite to fail |
| immediately on overflow. |
| Reported by Jim Meyering. |
| |
| 2008-05-07 Eric Blake <[email protected]> |
| |
| Fix traceon regression introduced 2006-06-06. |
| * src/builtin.m4 (traceon): Only perform insertion if lookup |
| fails. |
| * doc/m4.texinfo (Trace): Test for the bug. |
| * NEWS: Document it. |
| |
| 2008-05-03 Eric Blake <[email protected]> |
| |
| Document define_blind. |
| * doc/m4.texinfo (Ifelse): Add a new composite macro. |
| * THANKS: Update. |
| Suggested by Mike R. |
| |
| 2008-04-24 Eric Blake <[email protected]> |
| |
| Add debugmode test. |
| * doc/m4.texinfo (Debug Levels): Test -di behavior. |
| (Changeword, Location): Correct examples. |
| * checks/check-them (examples): Update to account for recommended |
| location for running tests. |
| * doc/m4.texinfo (Debug Levels): Test this behavior. |
| |
| 2008-04-21 Eric Blake <[email protected]> |
| |
| Fix spelling of attribution to Christopher Strachey. |
| * doc/m4.texinfo (History, Inhibiting Invocation): Fix typo. |
| * THANKS: Update. |
| Reported by Fernando Carrijo. |
| |
| 2008-04-17 Eric Blake <[email protected]> |
| |
| Fix buildbot failure. |
| * doc/m4.texinfo (Diversions): Consume all of m4's output, in case |
| SIGPIPE is ignored. |
| * THANKS: Update. |
| Detected by Bob Proulx's buildbot. |
| |
| 2008-04-17 Eric Blake <[email protected]> |
| |
| Avoid gcc shadowing warnings. |
| * src/builtin.c (m4_format): s/format/expand_format, so local |
| variables can be named format. |
| * src/format.c (format): Rename... |
| (expand_format): ...to this, and avoid the name index. |
| * src/input.c (push_file): Avoid the name close. |
| * src/m4.h (expand_format): Adjust prototype. |
| * src/output.c (threshold_diversion_CB): Avoid the name div. |
| |
| 2008-04-15 Eric Blake <[email protected]> |
| |
| Another 'make installcheck' fix. |
| * doc/m4.texinfo (Diversions): s/m4/__program__/ in case |
| --program-prefix was active. |
| |
| 2008-04-11 Eric Blake <[email protected]> |
| |
| Ensure --program-prefix doesn't regress. |
| * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Enforce change from |
| 2008-03-10 by testing it at 'make distcheck' time. |
| |
| 2008-04-11 Eric Blake <[email protected]> |
| |
| Improve OS/2+emx build. |
| * src/m4.h [__EMX__]: OS/2 does not have a Unix-compatible |
| system(3), no matter what other macros it pre-defined. |
| * doc/m4.texinfo (Mkstemp): Rework test to avoid globbing failure |
| on OS/2. |
| * src/builtin.c (predefined_tab): Ensure all possible system |
| identifiers are defined, not just the first; the testsuite will |
| catch if multiple identifiers mistakenly made it through. |
| * THANKS: Update. |
| Reported by Elbert Pol. |
| |
| 2008-04-09 Eric Blake <[email protected]> |
| |
| Remove redundant configure macros. |
| * configure.ac (AC_CANONICAL_BUILD, AC_CANONICAL_HOST) |
| (AC_SYS_LARGEFILE, AC_TYPE_SIZE_T): Delete, since gnulib does |
| this. |
| (AC_CHECK_HEADERS_ONCE): Remove limits.h. |
| |
| 2008-08-07 Bruno Haible <[email protected]> (tiny change) |
| |
| Run m4 tests prior to gnulib unit tests. |
| * Makefile.am (SUBDIRS): Swap order of directories. |
| |
| 2008-04-02 Eric Blake <[email protected]> |
| |
| Release Version 1.4.11. |
| * NEWS: Mention the release. |
| |
| Prepare for release. |
| * maint.mk (alpha): Check for PREV_VERSION setting sooner, and |
| remove tag operation. |
| (version-check): Enhance this check. |
| (prev-tarball): Depend on version-check. |
| (this-vc-tag): Delete, and mention need to run tag... |
| * HACKING: ...here, prior to make maintainer-distcheck. |
| Update the instructions to match this particular release process. |
| * Makefile.am (.version, announcement): Allow for VPATH build. |
| * cfg.mk (gnulib_dir): Likewise. |
| * doc/Makefile.am ($(srcdir)/m4.1): Include release number in man |
| page. |
| |
| 2008-04-01 Eric Blake <[email protected]> |
| |
| Speed up index builtin. |
| * m4/gnulib-cache: Import strstr module. |
| * NEWS: Mention the speedup. |
| |
| 2008-03-29 Eric Blake <[email protected]> |
| |
| Fix testsuite on mingw, OpenBSD. |
| * src/format.c (ARG_DOUBLE): Use strtod, not atof. |
| * src/Makefile.am (m4_LDADD): Use POW_LIB when needed. |
| * doc/m4.texinfo (Format): Add hex-float support. |
| * NEWS: Document this. |
| |
| 2008-03-27 Eric Blake <[email protected]> |
| |
| Pull other useful doc fixes from branch-1.6. |
| * doc/m4.texinfo (Arguments): Enable test of |
| --warn-macro-sequence. |
| (Defn): Test length of builtin token. |
| (Builtin, Ifelse, Changequote): Add more regression tests. |
| |
| 2008-03-27 Eric Blake <[email protected]> |
| |
| Add test for divert bug on 2007-05-28, patched 2007-07-21. |
| * doc/m4.texinfo (Diversions): Add test. |
| |
| 2008-03-24 Eric Blake <[email protected]> |
| |
| Pull GNUmakefile from gnulib. |
| * m4/gnulib-cache.m4: Import gnumakefile module. |
| * GNUmakefile: Remove from version control; supplied by gnulib |
| instead. |
| * configure.ac (AC_INIT): Track intra-release version with |
| git-version-gen. |
| (AC_CONFIG_LINKS): Let gnulib do this now. |
| * Makefile.am (distclean-local): Likewise. |
| (EXTRA_DIST): Likewise. Also handle renamed files. |
| * (.version, dist-hook): Improve version handling. |
| * Makefile.cfg: Rename... |
| * cfg.mk: ...to this. |
| * Makefile.maint: Rename... |
| * maint.mk: ...to this. |
| (ME, makefile-check, m4-check): Use new macro instead of |
| hard-coded name. |
| * HACKING: Mention that maintainer rules should now work in VPATH |
| builds. |
| |
| 2008-03-15 Eric Blake <[email protected]> |
| |
| Document join, in order to fix bug in m4wrap example. |
| * doc/m4.texinfo (Improved m4wrap): New node. |
| (Defn, Location): Enhance tests. |
| (Shift): Document the composite macro join. |
| (Incompatibilities): Move documentation of LIFO vs. FIFO... |
| (M4wrap): ...here, to match improved example. |
| |
| 2008-03-10 Eric Blake <[email protected]> |
| |
| Allow 'make installcheck' with './configure --program-prefix'. |
| * checks/Makefile.in (program_transform_name): New macro. |
| (installcheck): Use it to transform name of m4 before testing. |
| * checks/check-them (m4): Add -m option, to allow testing m4 by a |
| different name. |
| * checks/get-them: Allow xout and xerr notation. |
| |
| 2008-02-25 Eric Blake <[email protected]> |
| |
| Improve release process. |
| * configure.ac (AM_INIT_AUTOMAKE): Increase requirement, and add |
| dist-lzma. |
| * HACKING: Update for git release procedures. |
| * Makefile.cfg: New file. |
| * GNUmakefile: Use it. |
| * Makefile.maint (gzip_rsyncable, GZIP_ENV, GIT, VC, VC-tag) |
| (VERSION_REGEXP, this-vc-tag, my_distdir, null_AM_MAKEFLAGS) |
| (TMPDIR, gnulib-version): New macros, borrowed from coreutils. |
| (makefile-check, news-date-check, changelog-check, m4-check) |
| (vc-diff-check, maintainer-distcheck, vc-dist, my-distcheck) |
| (announcement, alpha, beta, major): New rules, borrowed from |
| coreutils. |
| (TEXI2HTML, cvs-release, update-timestamps, cvs-news, cvs-commit) |
| (cvs-dist): Delete. |
| * Makefile.am (EXTRA_DIST): Distribute new file. |
| |
| 2008-02-19 Eric Blake <[email protected]> |
| |
| Clean up foreach example. |
| * doc/m4.texinfo (Foreach, Improved foreach): Document another |
| shortcoming in foreach.m4. |
| |
| 2008-02-16 Eric Blake <[email protected]> |
| |
| Add regression test for multi-character quote recursion. |
| * examples/foreach2.m4: Use $0 rather than spelling out name. |
| * examples/foreachq2.m4: Likewise. |
| * examples/forloop2.m4: Likewise. |
| * examples/hanoi.m4: Likewise. |
| * examples/trace.m4: Likewise. |
| * doc/m4.texinfo (Improved forloop): Document advantage of $0. |
| (Improved foreach): Adjust dump from file. |
| |
| 2008-02-13 Eric Blake <[email protected]> |
| |
| Fix texinfo grammar. |
| * doc/m4.texinfo (Incompatibilities): Use @. after capital. |
| (History): Use @: after abbreviations. |
| (M4exit): Use correct Latin abbreviation. |
| |
| 2008-02-11 Eric Blake <[email protected]> |
| |
| Document behavior of __gnu__(). |
| * doc/m4.texinfo (Platform macros): Enhance test. |
| (Macro expansion): New test. |
| |
| 2008-01-31 Ralf Wildenhues <[email protected]> |
| |
| * checks/Makefile.in: Use @SET_MAKE@, and use @SHELL@ rather |
| than hard-coding /bin/sh. |
| * THANKS: Update. |
| Reported by Lawson Chan. |
| |
| 2007-12-13 Paolo Bonzini <[email protected]> (tiny change) |
| |
| * doc/m4.texinfo (Inhibiting Invocation): Fix quoting of a quoting |
| example. |
| * THANKS: Update. |
| Reported by Giovanni Toffetti. |
| |
| 2007-12-07 Eric Blake <[email protected]> |
| |
| Minor security fix: Quote output of mkstemp. |
| * src/builtin.c (mkstemp_helper): Produce quoted output. |
| * doc/m4.texinfo (Mkstemp): Update the documentation and tests. |
| * NEWS: Document this change. |
| |
| 2007-12-04 Eric Blake <[email protected]> |
| |
| Fix builds with OpenBSD make. |
| * doc/Makefile.am (HELP2MAN): New macro. |
| (man_MANS, m4.1): Fix rules for building m4.1 into srcdir. |
| * README: Update copyright. |
| * HACKING: Mention help2man and makeinfo dependencies. |
| |
| 2007-11-22 Eric Blake <[email protected]> |
| |
| Security fix: avoid arbitrary code execution with 'm4 -F'. |
| * src/freeze.c (produce_frozen_state): Never pass raw file name as |
| printf format. |
| * NEWS: Document this fix. |
| |
| 2007-11-07 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Pseudo Arguments): Test more corner cases. |
| |
| 2007-11-05 Eric Blake <[email protected]> |
| |
| Use build-aux directory. |
| * configure.ac (PACKAGE, VERSION): Delete, since Automake does |
| this now. |
| (AC_CONFIG_AUX_DIR): Add, with auxiliary files in build-aux |
| instead of the top level. |
| (AC_INIT_AUTOMAKE): Increase requirement, and add dist-lzma. |
| * Makefile.am (EXTRA_DIST): Gnulib now manages gendocs.sh. |
| * bootstrap: Adjust accordingly. |
| * m4/gnulib-cache.m4: Add --aux-dir option. |
| * doc/Makefile.am (m4.1): Rewrite rule to use build-aux/missing. |
| |
| 2007-10-31 Eric Blake <[email protected]> |
| |
| Test more corner cases. |
| * doc/m4.texinfo (Changecom, Pseudo Arguments): Beef up tests. |
| (Improved foreach): Document alternate foreachq style. |
| |
| 2007-10-28 Eric Blake <[email protected]> |
| |
| More test coverage for autoconf usage patterns. |
| * doc/m4.texinfo (Inhibiting Invocation, Pseudo Arguments) |
| (Builtin): Add new undocumented tests. |
| (Shift): Document cond macro, and add new test. |
| |
| 2007-10-27 Eric Blake <[email protected]> |
| |
| Document one use of changequote(`(',`)'). |
| * doc/m4.texinfo (Changequote): Add new test, based on recent |
| autoconf addition of m4_expand. |
| |
| 2007-10-22 Eric Blake <[email protected]> |
| |
| Never let printf failures go undetected. |
| * m4/gnulib-cache.m4: Import announce-gen, git-version-gen, |
| intprops, strtod, and xprintf modules. Remove deprecated free |
| module. Replace vasprintf-posix and xvasprintf with |
| xvasprintf-posix. |
| * src/m4.h: Include xprintf.h. |
| * src/builtin.c (ntoa): Export. |
| (m4_errprint): Adjust all *printf callers. |
| * src/debug.c (debug_message_prefix, trace_format): Likewise. |
| * src/freeze.c (produce_frozen_state): Likewise. |
| * src/input.c [DEBUG_INPUT]: Likewise. |
| * src/m4.c (usage): Likewise. |
| * src/m4.h (DEBUG_PRINT1, DEBUG_PRINT3, DEBUG_MESSAGE) |
| (DEBUG_MESSAGE1, DEBUG_MESSAGE2): Likewise. |
| * src/output.c (shipout_text, freeze_diversione): Likewise. |
| * src/path.c [DEBUG_INCL]: Likewise. |
| * src/stackovf.c (process_sigsegv) [DEBUG_STKOVF]: Likewise. |
| * src/symtab.c [DEBUG_SYM]: Likewise. |
| |
| 2007-10-17 Eric Blake <[email protected]> |
| |
| Fix 'm4 -F file -t undefined'. |
| * src/freeze.c (produce_frozen_state): Avoid core dump. |
| * doc/m4.texinfo (Using frozen files): Test for the bug. |
| * NEWS: Mention the fix. |
| |
| 2007-10-09 Eric Blake <[email protected]> |
| |
| Avoid regexp regression. |
| * doc/m4.texinfo (Regexp, Patsubst): Test \ expansion. |
| |
| 2007-10-02 Eric Blake <[email protected]> |
| |
| Add more examples and tests. |
| * doc/m4.texinfo (Patsubst): Use the examples directory. Also |
| document shortfall. |
| (Improved capitalize): New node. |
| (Index macro, Regexp): Test more code paths. |
| * examples/capitalize.m4: Update to match manual. |
| * examples/capitalize2.m4: New file. |
| * examples/foreachq3.m4: Likewise. |
| * examples/join.m4: Likewise. |
| * examples/loop.m4: Likewise. |
| * examples/wraplifo.m4: Likewise. |
| * examples/wraplifo2.m4: Likewise. |
| * examples/Makefile.am (EXTRA_DIST): Distribute new files. |
| |
| 2007-09-24 Eric Blake <[email protected]> |
| |
| Create .gitignore alongside .cvsignore. |
| * bootstrap (LC_ALL): Set up front. |
| (version control) Borrow idea from head, to avoid churn in |
| m4/.*ignore files modified by gnulib-tool. |
| |
| 2007-09-13 Eric Blake <[email protected]> |
| |
| * AUTHORS: Fix typo. |
| |
| 2007-09-07 Eric Blake <[email protected]> |
| |
| * AUTHORS: Simplify, to match libtool and autoconf layout. |
| * THANKS: Sync with head. |
| |
| 2007-08-10 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Compatibility): Sync with head. |
| |
| 2007-08-10 Konrad Schwarz <[email protected]> (tiny change) |
| and Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Defn): Update wording. |
| |
| 2007-08-09 Eric Blake <[email protected]> |
| |
| POSIX requires defn(`a',`b') to concatenate definitions. |
| * src/builtin.c (m4_defn): Allow multiple arguments, but warn if |
| trying to mix a builtin with anything else. |
| * doc/m4.texinfo (Defn): Document a use for this POSIX |
| requirement. |
| (Incompatibilities): Update to match current status. |
| * NEWS: Document this change. |
| * THANKS: Update. |
| Reported by Konrad Schwarz. |
| |
| 2007-08-04 Eric Blake <[email protected]> |
| |
| Normalize all GPL license notices. |
| * GNUmakefile: Update license wording. |
| * Makefile.am: Likewise. |
| * Makefile.maint: Likewise. |
| * bootstrap: Likewise. |
| * commit: Likewise. |
| * configure.ac: Likewise. |
| * checks/Makefile.in: Likewise. |
| * doc/Makefile.am: Likewise. |
| * examples/Makefile.am: Likewise. |
| * src/Makefile.am: Likewise. |
| * src/builtin.c: Likewise. |
| * src/debug.c: Likewise. |
| * src/eval.c: Likewise. |
| * src/format.c: Likewise. |
| * src/freeze.c: Likewise. |
| * src/input.c: Likewise. |
| * src/m4.c: Likewise. |
| * src/m4.h: Likewise. |
| * src/macro.c: Likewise. |
| * src/output.c: Likewise. |
| * src/path.c: Likewise. |
| * src/stackovf.c: Likewise. |
| * src/symtab.c: Likewise. |
| |
| 2007-07-21 Eric Blake <[email protected]> |
| |
| Fix regression on NetBSD from 2007-05-28. |
| * src/output.c (m4_tmpopen): Explicitly reset append-mode stream |
| position to byte 0. |
| * NEWS: Document this fix. |
| * THANKS: Update. |
| Reported by Thomas Klausner. |
| |
| 2007-07-20 Eric Blake <[email protected]> |
| |
| Fix 'make distcheck' issues. |
| * Makefile.am (EXTRA_DIST): No need to distribute |
| gpl-3.0.texi.diff anymore. |
| * m4/gnulib-cache.m4: Update to latest gnulib. |
| |
| 2007-07-14 Eric Blake <[email protected]> |
| |
| Reflect upstream license .texi changes. |
| * doc/m4.texinfo (Copying): Rename node... |
| (GNU General Public License): ...to this. |
| (GNU Free Documentation License): Adjust node location. |
| * local/doc/gpl-3.0.texi.diff: Remove file. |
| |
| 2007-07-10 Eric Blake <[email protected]> |
| |
| Start 1.4.10a. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Start changes since 1.4.10. |
| * doc/m4.texinfo (History): Mention 1.4.11. |
| (Copying This Package, Copying This Manual): Add index entries. |
| * local/lib/version-etc.c.diff: Delete, now that gnulib has been |
| updated. |
| * Makefile.am (EXTRA_DIST): Remove dead file. |
| |
| 2007-07-09 Eric Blake <[email protected]> |
| |
| Release Version 1.4.10. |
| * doc/Makefile.am (m4_TEXINFOS): Distribute gpl-3.0.texi. |
| * Makefile.am (EXTRA_DIST): Distribute gnulib diffs. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.9. |
| |
| * src/format.c: Missed a GPLv3 conversion. |
| |
| Avoid undefined behavior of %.*c in printf. |
| * src/format.c (format): Special case %c. |
| * TODO: Document that more remains to be done. |
| * NEWS: Document the fix. |
| |
| 2007-07-05 Eric Blake <[email protected]> |
| |
| Fix up gnulib-tool usage. |
| * m4/gnulib-cache.m4: Change local-dir to local, not `.'. |
| * version-etc.c.diff: Move to... |
| * local/lib/version-etc.c.diff: ...here. |
| * gpl-3.0.texi.diff: Move to... |
| * local/doc/gpl-3.0.texi.diff: ...here. |
| |
| 2007-07-04 Eric Blake <[email protected]> |
| |
| Upgrade to GPL version 3 or later. |
| * bootstrap: Pick up GPLv3. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool |
| --local-dir=. --import gpl-3.0'. |
| * doc/m4.texinfo (Copying This Package): New appendix. |
| * NEWS: Mention this change. |
| * README: Mention why some files still claim to be version 2. |
| * version-etc.c.diff: New file, to make sure --version claims |
| correct GPL version. Temporary until gnulib makes move. |
| * gpl-3.0.texi.diff: New file, to allow inclusion of GPLv3 as |
| appendix, rather than section, of the manual. |
| * GNUmakefile: Update to new license. |
| * Makefile.am: Likewise. |
| * Makefile.maint: Likewise. |
| * commit: Likewise. |
| * configure.ac: Likewise. |
| * checks/Makefile.in: Likewise. |
| * doc/Makefile.am: Likewise. |
| * examples/Makefile.am: Likewise. |
| * src/Makefile.am: Likewise. |
| * src/builtin.c: Likewise. |
| * src/debug.c: Likewise. |
| * src/eval.c: Likewise. |
| * src/freeze.c: Likewise. |
| * src/input.c: Likewise. |
| * src/m4.c: Likewise. |
| * src/m4.h: Likewise. |
| * src/macro.c: Likewise. |
| * src/output.c: Likewise. |
| * src/path.c: Likewise. |
| * src/stackovf.c: Likewise. |
| * src/symtab.c: Likewise. |
| |
| 2007-06-26 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import assert'. |
| |
| 2007-06-26 Karl Berry <[email protected]> (tiny change) |
| |
| Match Free Software Directory categories. |
| * doc/m4.texinfo (dircategory): Update. |
| |
| 2007-05-31 Eric Blake <[email protected]> |
| |
| * src/output.c (output_text): Fix regression from 2007-05-28. |
| * doc/m4.texinfo (History): Mention 1.4.10. |
| (Format): Make testsuite output easier to debug. |
| |
| 2007-05-29 Eric Blake <[email protected]> |
| |
| Start 1.4.9c. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Start changes since 1.4.9b, and fix typo. |
| |
| Beta Release Version 1.4.9b. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.9. |
| |
| Improve format support. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import |
| vasprintf-posix'. |
| * src/format.c (format): Parse %'hhd, %a, %A. Avoid calling |
| printf with too few arguments, as in format(%*.*d,-1,-1,1). |
| * doc/m4.texinfo (Format): Expand tests, and improve |
| documentation. |
| * NEWS: Document this change. |
| |
| 2007-05-28 Eric Blake <[email protected]> |
| |
| Fix large diversion corner cases, including 1.4.8 regression. |
| * src/output.c (m4_tmpfile, m4_tmpopen): Simplify use of errno. |
| (make_room_for): Use NULL, not 0, for pointers. |
| (insert_diversion_helper): Avoid using rewind. |
| (freeze_diversions): Allow freezing large diversions. |
| * NEWS: Document this fix. |
| |
| Also run gnulib unit tests during make check. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool |
| --tests-base=tests --with-tests'. |
| * configure.ac (AC_CONFIG_FILES): Build gnulib testdir. |
| * Makefile.am (SUBDIRS): Run gnulib tests before ours. |
| |
| 2007-05-25 Eric Blake <[email protected]> |
| |
| Backport prompts in examples from head. |
| * src/macro.c (expand_macro): Shorten message. |
| * doc/m4.texinfo (Manual, Command line files, Comments) |
| (Inhibiting Invocation, Macro Arguments, Macro expansion, Indir) |
| (Builtin, Shift, Forloop, Foreach, Dumpdef, Trace, Debug Levels) |
| (Debug Output, Include, Format, Syscmd, Mkstemp, Location) |
| (Using frozen files, Improved forloop, Improved foreach): Add |
| prompts to examples. |
| * checks/get-them: Ignore prompts in examples. |
| |
| Fix sync line interaction with multiline comments. |
| * doc/m4.texinfo (Other Incompatibilities): Add example, and |
| document bug in --syncline/divert interaction. |
| (Preprocessor features): Augment test. |
| * src/m4.h (output_text): Export. |
| (shipout_text, next_token): Add parameter. |
| * src/freeze.c (reload_frozen_state): Don't interfere with |
| synclines when reloading state. |
| * src/output.c (output_text): Export. |
| (shipout_text): Take new parameter for start line of token. |
| Output at most one syncline per token. |
| * src/input.c (next_token): Report line where multiline tokens |
| start. |
| * src/macro.c (expand_input, expand_token, expand_argument): |
| Adjust callers so that line is passed from input to output. |
| * NEWS: Document this fix. |
| Reported by Sergey Poznyakoff. |
| |
| Test -s in testsuite. |
| * doc/m4.texinfo (Preprocessor features): Add a test. |
| * checks/get-them: Support extra options in testsuite. |
| * checks/check-them (examples): Use extra options. |
| * THANKS: Update. |
| Reported by Sergey Poznyakoff. |
| |
| 2007-05-24 Eric Blake <[email protected]> |
| |
| Support POSIX flush semantics on all platforms. |
| * m4/gnulib-cache.m4: Remove closeout, and augment with |
| 'gnulib-tool --import closein fflush'. |
| * src/m4.h (includes): Use closein, not closeout. |
| * src/m4.c (main): Ensure stdin is flushed when not all input is |
| consumed. |
| (process_file): No return needed. |
| * src/debug.c (debug_flush_files): Rely on gnulib module, rather |
| than excluding mingw. |
| * NEWS: Document this change. |
| |
| Work around cygwin and mingw fseeko bugs. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import fseeko'. |
| * src/debug.c (debug_flush_files): Prefer fseeko over fseek. |
| |
| 2007-04-25 Eric Blake <[email protected]> |
| |
| Fix negative division within eval, regression of 2007-01-06. |
| * doc/m4.texinfo (Eval): Catch this bug. |
| * src/eval.c (mult_term): Fix it. |
| * NEWS: Document this. |
| * THANKS: Update. |
| Reported by Cesar Strauss. |
| |
| 2007-04-23 Eric Blake <[email protected]> |
| |
| Start 1.4.9a. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Start changes since 1.4.9. |
| |
| 2007-03-23 Eric Blake <[email protected]> |
| |
| Release 1.4.9: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.8b. |
| |
| 2007-03-16 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Mkstemp): Tweak wording. |
| * src/output.c (output_init): Adjust to latest gnulib. |
| |
| 2007-03-15 Eric Blake <[email protected]> |
| |
| Avoid Tandem/NSK's broken long long (without a symmetric unsigned |
| long long, it confuses gnulib). |
| * configure.ac (AC_TYPE_LONG_LONG_INT): Declare long long broken |
| if unsigned long long doesn't work. |
| * THANKS: Update. |
| Reported by Matthew Woehlke. |
| |
| 2007-03-07 Eric Blake <[email protected]> |
| |
| * AUTHORS: Update. |
| * doc/m4.texinfo: Minor tweaks, avoid makeinfo warning. |
| |
| 2007-03-01 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Pick up more index entries from head. Follow |
| more texinfo recommendations. |
| (Sysval): Improve tests. |
| |
| Avoid overfull \vbox warning from texinfo, due to indices that |
| weren't quite big enough to split across page boundaries. |
| * doc/m4.texinfo: Add lots of concept index entries. |
| (Concept Index): Move to be last, as recommended by texinfo |
| manual. |
| (Define, Arguments, Pseudo Arguments): Add more function entries. |
| |
| 2007-02-28 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Eval): Clean up wording to reflext POSIX XCU ERN |
| 137. |
| (Pseudo Arguments): Add useful example. |
| |
| * doc/m4.texinfo (Pushdef, Incompatibilities): Clean up wording to |
| reflect POSIX XCU ERN 118. |
| |
| * src/m4.h (DEFAULT_MACRO_SEQUENCE): Factor out from... |
| * src/m4.c (usage): ...here,... |
| * src/builtin.c (set_macro_sequence): ...and here. |
| (define_user_macro): Fix typo. |
| * doc/m4.texinfo (Preprocessor features, Arguments): Fix minor |
| inaccuracies. |
| (Shift): Document composite macro argn for portably getting at |
| positional parameters beyond 9. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Start changes of 1.4.8c. |
| |
| 2007-02-24 Eric Blake <[email protected]> |
| |
| Beta Release 1.4.8b: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.8. |
| |
| Reserve all uses of raw ${} in macro definitions, not just |
| ${<digit>}. |
| * src/builtin.c (set_macro_sequence): Change default macro |
| sequence. |
| * doc/m4.texinfo (Operation modes): Update to match. |
| * src/m4.c (usage): Likewise. |
| * NEWS: Likewise. |
| |
| 2007-02-23 Eric Blake <[email protected]> |
| |
| * src/m4.h (includes): Update to latest gnulib. |
| |
| 2007-02-08 Eric Blake <[email protected]> |
| |
| Rename --warn-syntax to --warn-macro-sequence[=regex], to make it |
| more flexible, and so that autoconf can use it. |
| * src/m4.h (set_macro_sequence, free_macro_sequence): New |
| prototypes. |
| * src/builtin.c (macro_sequence_buf, macro_sequence_regs) |
| (macro_sequence_inuse, set_macro_sequence, free_macro_sequence): |
| New variables and functions. |
| (define_user_macro): Allow flexibility in regular expression used |
| to trigger warning. |
| * src/m4.c (warn_syntax): Delete. |
| (usage, WARN_MACRO_SEQUENCE_OPTION, main): Implement changed |
| spelling of option, along with optional argument. |
| * doc/m4.texinfo (Operation modes, Arguments): Document this |
| change. |
| * NEWS: Document this change. |
| |
| 2007-02-05 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Module strstr no longer exists. |
| |
| Avoid bool bitfields, as they don't work on AIX. |
| * src/m4.h (bool_bitfield): New typedef. |
| (struct symbol, struct builtin): Use it. |
| * src/input.c (struct input_block): Likewise. |
| Reported by Albert Chin. |
| |
| * doc/m4.texinfo (Sysval): Avoid SIGPIPE in test as unreliable. |
| Reported by Albert Chin. |
| * THANKS: Update. |
| |
| 2006-06-18 Bruno Haible <[email protected]> (tiny change) |
| |
| * doc/m4.texinfo (Input processing): Further clarifications. |
| |
| 2007-02-03 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Input processing, Quoting Arguments): Beef up |
| the examples. |
| Reported by Bruno Haible. |
| |
| 2007-02-01 Eric Blake <[email protected]> |
| |
| * src/m4.c (fatal_warnings): New variable. |
| (usage): Document new -E behavior. |
| (main): Make -E an additive option. |
| (m4_error, m4_error_at_line): Change exit status when required. |
| * NEWS: Document this change. |
| * doc/m4.texinfo (Operation modes): Likewise. |
| Reported by Ralf Wildenhues. |
| |
| 2007-01-27 Eric Blake <[email protected]> |
| |
| * src/m4.h (warn_syntax): Declare. |
| (init_pattern_buffer): Export. |
| * src/m4.c (warn_syntax, usage, WARN_SYNTAX_OPTIONS) |
| (long_options, main): Implement new option. |
| * src/builtin.c (init_pattern_buffer): Allow NULL regs argument. |
| (define_user_macro): Warn on $11 and ${1} if requested. |
| * src/input.c (init_pattern_buffer): Delete duplicate method. |
| * doc/m4.texinfo (Operation modes): Document it. |
| (Arguments): Document future direction of ${11} vs. $11. |
| (Incompatibilities): Fix wording on POSIX limitations. |
| * checks/get-them: Parse @{ and @} correctly. |
| * NEWS: Document this change. |
| |
| 2007-01-26 Eric Blake <[email protected]> |
| |
| * src/builtin.c (includes): Adjust to gnulib changes. |
| |
| 2007-01-15 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Pull in various improvements from head. |
| * src/builtin.c (include): Alter exit status on failure. |
| * NEWS: Document this fix. |
| |
| 2007-01-13 Eric Blake <[email protected]> |
| |
| * configure.ac (AC_CHECK_MEMBERS): Check for stack_t.ss_sp, and |
| assume the fallback of ss_base for BSDI 4.0.1. |
| * src/stackovf.c (setup_stackovf_trap) [HAVE_SIGALTSTACK && |
| ! HAVE_STACK_T_SS_SP]: Use this check. |
| Reported by Chris McGuire. |
| * THANKS: Update. |
| * NEWS: Document the improvement. |
| |
| 2007-01-09 Eric Blake <[email protected]> |
| |
| * src/eval.c (ASSIGN): New enumerator. |
| (eval_lex): Recognize '='. |
| (equality_term): Treat '=' like '==', but warn that it is |
| deprecated. |
| * doc/m4.texinfo (Eval): Document and test this. |
| (Incompatibilities): Document the POSIX incompatibility. |
| * NEWS: Document this change. |
| |
| 2007-01-06 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import stdint'. |
| * checks/check-them: Record expected exit status. |
| * checks/get-them: Check exit status. |
| * src/m4.h (eval_t, unsigned_eval_t): Delete, use POSIX int32_t |
| instead. |
| * src/builtin.c: All users changed. |
| * src/eval.c: Likewise. Also document where we are triggering |
| undefined or implementation-defined behavior. |
| (BADOP, NEGATIVE_EXPONENT, INVALID_OPERATOR, eval_lex, evaluate) |
| (logical_or_term, logical_and_term, logical_not_term, not_term) |
| (equality_term, unary_term): Port from head to follow POSIX |
| semantics. |
| (exp_term): Reject 0**0 as undefined. |
| * doc/m4.texinfo (History): Mention 1.4.9. |
| (Format, Incompatibilities): Update to document POSIX compliance. |
| * NEWS: Document this change. |
| |
| 2007-01-04 Eric Blake <[email protected]> |
| |
| * NEWS: Document previous fix. |
| * THANKS: Update. |
| |
| 2007-01-04 Sami Liedes <[email protected]> (tiny change) |
| |
| Fix Debian bug 405594, introduced 2006-11-01 from a bad |
| copy-n-paste from head. |
| * src/m4.c (main): Use correct file name after --. |
| |
| 2007-01-04 Eric Blake <[email protected]> |
| |
| Fix regression from 1.4.7 in large file handling on some |
| platforms, introduced on 2006-10-13. |
| * configure.ac (AC_LARGE_SYSFILE): Guarantee that large files |
| will be handled. |
| * NEWS: Document this fix. |
| |
| 2007-01-03 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import |
| version-etc-fsf'. |
| * src/m4.c (AUTHORS, main): Use FSF wording for --version (plus |
| it bumps the copyright year). |
| |
| 2006-12-27 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Patsubst): Fix typo. |
| |
| 2006-12-16 Eric Blake <[email protected]> |
| |
| * src/m4.c (main): Check for errors when closing stdin. |
| |
| 2006-12-09 Ralf Wildenhues <[email protected]> |
| |
| * doc/m4.texinfo: Fix some typos. |
| |
| 2006-12-09 Eric Blake <[email protected]> |
| |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Start changes of 1.4.8a. |
| |
| 2006-11-20 Eric Blake <[email protected]> |
| |
| Release 1.4.8: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.7. |
| |
| 2006-11-16 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Include, Search Path, Diversions, Divert): |
| Minor tweaks noticed while porting to head. |
| |
| 2006-11-14 Eric Blake <[email protected]> |
| |
| * src/output.c (cleanup_tmpfile, freeze_diversions): Clean up |
| spent iterators. |
| (m4_tmpname): Avoid memory leak. |
| |
| 2006-11-13 Eric Blake <[email protected]> |
| |
| * src/output.c (cleanup_tmpfile): Avoid double error message when |
| umask is prohibitive. |
| (m4_tmpname, m4_tmpopen, m4_tmpclose, m4_tmpremove): New |
| functions. |
| (m4_tmpfile): Add parameter, move cloexec action here. |
| (make_room_for): Adjust caller. Don't keep too many files open. |
| (insert_diversion_helper): Unlink emptied temp files. |
| (make_diversion): Don't keep too many files open. |
| * doc/m4.texinfo (Diversions): Tweak wording, now that open file |
| descriptors are no longer a limiting factor. |
| * NEWS: Document this change. |
| |
| Backport sparse diversion handling from head. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import |
| avltree-oset'. |
| * src/output.c (struct m4_diversion): Rename from struct |
| diversion, and update members. All users changed. |
| (diversion_table): Change to an ordered set, instead of an array. |
| (div0): New storage for diversion 0. |
| (diversions): No longer needed. |
| (free_list): New list to allow recycling diversion storage. |
| (diversion_storage): New storage to reduce malloc overhead. |
| (cmp_diversion_CB, threshold_diversion_CB): New callbacks. |
| (output_init, output_exit, cleanup_tmpfile, make_room_for) |
| (make_diversion): Handle new diversion storage scheme. |
| (insert_diversion_helper): New function. |
| (insert_diversion, undivert_all, freeze_diversions): Use it. |
| * doc/m4.texinfo (Divert, Diversions): Move hidden test of memory |
| exhaustion to visible test of large diversion numbers. |
| * NEWS: Document this fix. |
| |
| 2006-11-11 Eric Blake <[email protected]> |
| |
| * src/builtin.c (m4_translit): Slight optimization. |
| |
| * src/m4.h (to_uchar): Depend on HAVE_INLINE. |
| |
| * src/builtin.c: Remove unnecessary casts. |
| (expand_ranges): Make 8-bit clean. |
| * doc/m4.texinfo (Translit): Add tests and wording. |
| * NEWS: Document this fix. |
| |
| 2006-11-07 Eric Blake <[email protected]> |
| |
| * src/m4.h (output_exit): New prototype. |
| * src/m4.c (main): Use it. |
| * src/output.c (cleanup_tmpfile): Close files before removing |
| directory. |
| (insert_diversion): Check for failure. |
| (output_exit): Avoid memory leak. |
| * doc/m4.texinfo (Diversions): Test this bug. |
| |
| * doc/m4.texinfo (Esyscmd, Errprint): Minor touchups. |
| |
| 2006-11-01 Eric Blake <[email protected]> |
| |
| Allow C++ compilation on Linux, as a safety measure in type |
| checking. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import |
| stdbool'. |
| * src/m4.h (hack_symbol, hack_all_symbols): Use full prototype. |
| (boolean): Kill this, and use stdbool.h instead. |
| * src/debug.c, src/eval.c, src/input.c, src/macro.c, src/m4.c: |
| * src/output.c, src/symtab.c: All users changed. |
| * src/symtab.c (hack_all_symbols): Update prototype. |
| * src/builtin.c (dump_symbol, set_trace): Update signature. |
| (m4_dumpdef, m4_traceon, m4_traceoff): Update callers. |
| (mkstemp_helper, m4_m4wrap, expand_ranges, m4_translit): Allow |
| C++ compilation. |
| * src/debug.c (trace_flush): Likewise. |
| * src/freeze.c (reload_frozen_state): Likewise. |
| * src/input.c (push_file, push_string_finish, push_wrapup): |
| (token_bottom, next_token): Likewise. |
| * src/m4.c (main): Likewise. |
| |
| * doc/m4.texinfo (Invoking m4): Update according to POSIX 200x |
| draft wording. |
| * src/m4.h (m4_path_search): Tweak signature. |
| * src/path.c (m4_path_search): Likewise. |
| * src/builtin.c (include): Update caller. |
| * src/m4.c (main): Allow -D, -U, -t, and -s to be interspersed |
| with file names. Don't write to **argv. |
| (process_file): New helper method. |
| * NEWS: Document this fix. |
| |
| 2006-10-31 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import strstr'. |
| * doc/m4.texinfo (Translit): Improve the documentation. |
| * src/builtin.c (m4_translit): Optimize to O(n) instead of O(n^2) |
| algorithm. |
| (m4_index): Simplify, and speed up slightly. |
| * NEWS: Document this fix. |
| |
| 2006-10-28 Eric Blake <[email protected]> |
| |
| * src/input.c (set_quotes): Don't allow empty end-quote with |
| non-empty start-quote. |
| (set_comment): Likewise for end-comment. |
| * src/builtin.c (m4_changecom): Adjust caller. |
| * doc/m4.texinfo (Changequote, Changecom): Update documentation to |
| match behavior. |
| (Incompatibilities): Document another POSIX bug. |
| * NEWS: Mention this change. |
| |
| 2006-10-27 Ralf Wildenhues <[email protected]> |
| |
| * examples/Makefile.am (EXTRA_DIST): Distribute recently-added |
| files. |
| |
| 2006-10-26 Eric Blake <[email protected]> |
| |
| Silence -Wwrite-strings -Wpointer-arith warnings. |
| * src/builtin.c (define_user_macro): Allow NULL argument. |
| (m4_builtin, m4_indir): Cast away const of "". |
| * src/format.c (format): Likewise. |
| * src/macro.c (collect_arguments): Likewise. |
| (expand_macro): Avoid math on void*. |
| * src/m4.c (main): Adjust caller. |
| * src/output.c (freeze_diversions): Detect off_t overflow. |
| |
| * src/input.c (pop_input): Remove unnecessary code. |
| |
| 2006-10-25 Eric Blake <[email protected]> |
| |
| * src/symtab.c (symtab_init): Avoid size_t overflow. |
| * src/output.c (make_diversion): Avoid size_t overflow. |
| * doc/m4.texinfo (Diversions): Test this fix. |
| * src/input.c (input_block): Remove unused member. Reduce size |
| of struct. |
| (push_file, pop_input): Avoid useless assignment. |
| * NEWS: Document the bug fix. |
| |
| Redo location tracking. Instead of having just files track the |
| line to return to when popping input, now all input blocks track |
| their current line. |
| * src/input.c (INPUT_STRING_WRAP, INPUT_FILE_INIT): No longer |
| needed. |
| (input_block): Have line and file storage for all input types, and |
| rename some members. |
| (input_change): New global flag. |
| (push_file, push_macro, push_string_init, push_wrapup): Store |
| location. |
| (push_string_finish, pop_input, pop_wrapup): Notice changes in |
| input blocks. |
| (peek_input): Adjust to new member names. |
| (next_char, next_char1): Adjust location if needed. |
| (skip_line): Simplify restoring location. |
| * doc/m4.texinfo (Location): Augment the test to catch line |
| location of expansion of multi-line arguments. |
| Reported by Stepan Kasal. |
| |
| 2006-10-23 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Macro Arguments): Document that leading space |
| in argument collection stops at macro expansion. |
| (Incompatibilities): Document POSIX whitespace wording issue. |
| |
| 2006-10-20 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Trailing '@comment' doesn't format nicely in |
| TeX, so recognize '@w{ }' instead. Likewise, @code{_name} at the |
| end of a TeX line splits incorrectly. |
| (Foreach, Improved foreach): Write these sections, borrowing ideas |
| from CVS head and from m4sugar. |
| * checks/get-them: Accomodate new way to show trailing space in |
| examples. |
| * examples/foreach.m4: Make usable in documentation. |
| * examples/foreachq.m4: New file. |
| * examples/foreachq2.m4: New file. |
| * examples/foreach2.m4: New file. |
| * NEWS: Document the documentation updates. |
| |
| 2006-10-19 Eric Blake <[email protected]> |
| |
| * src/builtin.c (mkstemp_helper, m4_mkstemp): New functions. |
| (m4_maketemp): Provide traditional behavior. |
| * doc/m4.texinfo (Mkstemp): Rename from Maketemp. Document the |
| new `mkstemp' macro and the flaws of the old `maketemp'. |
| (Incompatibilities): Move maketemp discussion to... |
| (Extensions): ...here, since -G now supresses the GNU extension. |
| * NEWS: Document this. |
| |
| * examples/forloop.m4: Simplify. |
| * examples/forloop2.m4: New file. |
| * examples/quote.m4: New file. |
| * doc/m4.texinfo (Loops): Rename to... |
| (Shift): ...this node. |
| (Forloop, Foreach, Improved forloop, Improved foreach): New |
| nodes. |
| |
| 2006-10-17 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Update with 'gnulib-tool --import |
| config-h'. |
| * configure.ac (AC_CONFIG_HEADERS): Create config.h alongside |
| gnulib headers, rather than in top directory. |
| * src/Makefile.am (AUTOMAKE_OPTIONS): Add nostdinc, to reduce make |
| output clutter. |
| |
| 2006-10-16 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Backport some minor cleanups from head. |
| (Cleardivert): Rename from cleardiv. |
| |
| * doc/m4.texinfo (Invoking m4): Promote to a chapter, instead of |
| a section of Preliminaries. |
| (Operation modes, Preprocessor features, Limits control) |
| (Frozen state, Debugging options, Command line files): Subdivide |
| into new sections. |
| (Input processing, Quoting Arguments, Define, Arguments) |
| (Cleardiv, Format, M4exit): Fix grammar of references. |
| (Inhibiting Invocation, Macro Arguments, Builtin, Trace) |
| (Debug Levels, Debug Output, Include, Search Path, Divert) |
| (Platform macros, Syscmd, Location, Extensions): Point to new |
| sections. |
| (Top, Loops, Include, Undivert, Location, Incompatibilities): |
| Improve file references. |
| |
| 2006-10-14 Eric Blake <[email protected]> |
| |
| * m4/input.c (file_clean): Don't close stdin twice, POSIX says it |
| is not portable. |
| Reported by Ralf Wildenhues. |
| |
| * src/builtin.c (m4_undivert): Check for read error. |
| |
| 2006-10-13 Eric Blake <[email protected]> |
| |
| * src/m4.h (UNIX, W32_NATIVE, OS2): Move platform checks after |
| header files are included, since <unistd.h> can affect the tests. |
| * THANKS: Updated. |
| Reported by Martin Koeppe. |
| |
| Backport head's usage of clean-temp module, as it is cleaner than |
| using tmpfile-safer. |
| * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import |
| clean-temp closeout', and remove tmpfile-safer. |
| * src/m4.h (includes): Adjust. |
| (m4_path_search): Rename from path_search, to avoid collision |
| with gnulib. |
| * src/m4.c (main): Install closeout handler. Adjust caller. |
| (usage): Now done by closeout module. |
| * src/builtin.c (m4_m4exit): Likewise. |
| (m4_undivert, include): Adjust callers. |
| * src/freeze.c (reload_frozen_state): Likewise. |
| * src/path.c (m4_path_search): Rename from path_search. |
| * src/output.c (output_temp_dir): New variable. |
| (cleanup_tmpfile, m4_tmpfile): New functions, from head. |
| (insert_diversion, make_room_for): Use them. |
| * doc/m4.texinfo (Diversions): Document this, and add a test. |
| (Improved fatal_error): Fix typo. |
| (Maketemp): Port test to mingw, and no longer hide from |
| documentation. |
| * NEWS: Document the change in TMPDIR behavior. |
| |
| * configure.ac (m4_pattern_forbid): Narrow the range of forbidden |
| macros, to work with recent gnulib-tool update. |
| |
| * src/builtin.c (m4_builtin, m4_indir): Allow transparent |
| handling of defn results. |
| * doc/m4.texinfo (Builtin, Indir): Add test cases. |
| * NEWS: Document this. |
| |
| 2006-10-12 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Location): Fix typo in previous commit. |
| (Changeword): Catch one more case. |
| * src/input.c (skip_line): Fix case when outer file used macro to |
| supply the \n. |
| |
| 2006-10-11 Eric Blake <[email protected]> |
| |
| * src/input.c (enum input_type): Add additional types, to shave |
| time off the common case. |
| (push_wrapup): Wrapped strings remember location. |
| (push_string_finish): Normal strings carry no location. |
| (push_file): Start new files uninitialized. |
| (peek_input, next_char_1): Optimize common cases by updating |
| location only on new input types. |
| (pop_input): Update to honor new input types. |
| (skip_line, push_string_finish): Fix regression in previous patch |
| when dnl is not followed by newline in included file. |
| (push_string_init): Initialize all fields of INPUT_STRING sooner. |
| (peek_token): Simplify. |
| (peek_input): Don't pop input files on peek, so that __file__ and |
| __line__ as last token of include file work correctly. |
| * doc/m4.texinfo (History): Mention 1.4.8. |
| (Answers): Split into sections, one per answer. |
| (Improved exch, Improved cleardivert, Improved fatal_error): New |
| nodes. |
| (Dnl, M4wrap, Location, M4exit, Improved fatal_error): Update to |
| new m4wrap location semantics. |
| (Changeword): Add test that caught the regression. |
| * NEWS: Document this. |
| |
| * src/macro.c (expand_macro): In macro expansion errors, report |
| line number at open parenthesis. |
| * src/input.c (next_token): Fix off-by-one bug in reporting end |
| of file in unterminated comment and string. |
| (file_names): New obstack, necessary since expand_macro now hangs |
| on to file names longer than the files remain open. |
| (input_init): Initialize new obstack. |
| (push_file): Use new obstack. Delay updates to current_file |
| until after expand_macro has restored state. |
| (peek_input, next_char_1): Update current_file if necessary. |
| (pop_wrapup): Release memory. |
| * doc/m4.texinfo (Macro Arguments, Changequote, Changecom): Catch |
| the off-by-one bug. |
| (Dnl): Update to the new location reporting rules. |
| * NEWS: Document these changes. |
| |
| 2006-10-10 Eric Blake <[email protected]> |
| |
| * src/macro.c (argc_stack, argv_stack): New variables for sharing |
| obstacks across multiple macro calls. |
| (expand_input): Initialize and tear down stack once per input |
| file, instead of once per macro. |
| (expand_macro): Reuse existing stacks when possible. |
| (collect_arguments): Simplify slightly. |
| |
| * src/path.c (include_env_init): Fix botched patch application. |
| Reported by Ralf Wildenhues. |
| |
| 2006-10-09 Eric Blake <[email protected]> |
| |
| * src/m4.c (usage, main): Detect write failures to stderr. |
| * src/builtin.c (m4_m4exit): Likewise. |
| * NEWS: Document this. |
| |
| * src/macro.c (expand_macro): Allow --nesting-limit=0 to remove |
| the limit. |
| * NEWS: Document this. |
| * doc/m4.texinfo (Invoking m4): Likewise. |
| |
| 2006-10-09 Ralf Wildenhues <[email protected]> |
| |
| * src/path.c (include_env_init): Copy the string returned |
| by getenv before overwriting it; POSIX disallows this. |
| |
| 2006-10-09 Eric Blake <[email protected]> |
| |
| * src/m4.c (main): Defer debugfile until after --help. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Start changes of 1.4.7a. |
| |
| 2006-09-25 Eric Blake <[email protected]> |
| |
| Release 1.4.7: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.6. |
| |
| 2006-09-21 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Invoking m4): Add clarification on option |
| processing behavior. |
| * THANKS: Update. |
| Reported by Mikhail Teterin. |
| |
| * bootstrap: Add --force option, based on idea from coreutils. |
| * README: Document that ./bootstrap and autoreconf are for |
| developers, and not lightly done in tarballs. |
| |
| 2006-09-20 Eric Blake <[email protected]> |
| |
| * src/m4.c (usage, OPTSTRING, main): Rename -e to -i, and give |
| deprecation warning on -e. |
| * doc/m4.texinfo (Invoking m4, Extensions): Document this. |
| * NEWS: Document this. |
| |
| 2006-09-19 Eric Blake <[email protected]> |
| |
| * src/m4.c (usage, long_options, main, DEBUGFILE_OPTION): Rename |
| -o/--error-output to --debugfile, and deprecate the former. This |
| will allow a future release to be more consistent with other GNU |
| tools, with -o/--output affecting stdout, not debug. |
| * doc/m4.texinfo (Invoking m4, Debug Output): Document this. |
| * NEWS: Document this. |
| |
| 2006-09-14 Eric Blake <[email protected]> |
| |
| * src/m4.c (main): Warn on deprecated options -B, -S, -T, -N, |
| --diversions. `m4 --help --version' now displays help, not |
| version. |
| (interactive, frozen_file_to_read, frozen_file_to_write): Move to |
| smaller scope. |
| (show_help, show_version): No longer needed. |
| (long_options, DIVERSIONS_OPTION): Backport patch from head to |
| distinguish between -N and --diversions in warning. |
| * doc/m4.texinfo (Invoking m4): Document this. |
| * NEWS: Likewise. |
| |
| 2006-09-11 Eric Blake <[email protected]> |
| |
| * src/Makefile.am (m4_LDADD): Add any gnulib dependent libraries. |
| * src/debug.c (debug_flush_files) [UNIX]: Flush stdin if it is |
| seekable. |
| (debug_set_file): Use STDOUT_FILENO. |
| * src/builtin.c (m4_m4exit): Flush stdin before exiting, to comply |
| with POSIX in regards to unread input. |
| * NEWS: Document this fix. |
| * doc/m4.texinfo (Syscmd, Esyscmd, M4exit): Likewise. |
| |
| 2006-09-07 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Update to newer gnulib-tool. |
| * src/m4.h (push_file): Change prototype. |
| * src/input.c (push_file, peek_input, next_char_1): Only call getc |
| once at EOF, to avoid double ^D on terminal stdin; regression from |
| 2006-09-04. |
| (push_file, pop_file): Allow reading stdin twice. |
| * src/m4.c (main): Likewise. |
| * src/builtin.c (include): Update caller. |
| * NEWS: Document this change. |
| * doc/m4.texinfo (Invoking m4, Incompatibilities): Likewise. |
| (Syscmd): Add a test that failed before this patch. |
| |
| 2006-09-07 Ralf Wildenhues <[email protected]> |
| |
| * checks/check-them: Quote $pwd. |
| |
| 2006-09-05 Eric Blake <[email protected]> |
| |
| * src/builtin.c (define_macro): Warn on invalid macro name. |
| * NEWS: Document this change. |
| * doc/m4.texinfo: Fix typos. |
| (Invoking m4, Macro Arguments, Pseudo Arguments, Defn, Indir) |
| (Ifelse): Backport some improvements from head. |
| |
| 2006-09-04 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Changeword): Skip test on mingw, where the |
| native echo is braindead. |
| * checks/check-them (strip_needed): Ignore \r in output. Now the |
| testsuite will pass when cross-compiling from cygwin to mingw. |
| |
| * src/input.c (peek_input): Fix regression in handling macro |
| without arguments as last token in file; debian bug 385720. |
| (next_token): Always consume an input character. |
| Reported by Andreas Schultz. |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Document this fix. |
| * doc/m4.texinfo (History): Mention next version. |
| (Changeword): Add example that exposes this bug. |
| * THANKS: Update. |
| |
| 2006-08-25 Eric Blake <[email protected]> |
| |
| Release 1.4.6: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.5. |
| |
| * Makefile.maint (web-manual): Give up on VPATH build during |
| distribution. But distributions are made so infrequently that |
| this is not too much of a hardship. |
| * Makefile.am (MAINTAINERCLEANFILES): Avoid error if lib/CVS/ |
| exists. |
| |
| 2006-08-24 Eric Blake <[email protected]> |
| |
| * src/builtin.c (m4_index, m4_substr, m4_translit): Similar to |
| Solaris, produce output on just one argument. |
| (m4_regexp, m4_patsubst): For consistency, do likewise. |
| (m4_patsubst): Allow zero-length match at end of string. |
| * doc/m4.texinfo (Sysval): Fix overfull hbox. |
| (Bugs, Macro Arguments): Minor fixes. |
| (Other tokens): Rearrange node order. |
| (Index macro, Substr, Translit, Regexp, Patsubst): Add tests. |
| * NEWS: Document these fixes. |
| |
| 2006-08-22 Eric Blake <[email protected]> |
| |
| * src/input.c (pop_input): Avoid empty filename with -di option. |
| * src/debug.c (debug_message_prefix): Put space before message. |
| |
| * m4/gnulib-cache.m4: We don't explicitly use alloca module. |
| |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import gnupload. |
| * Makefile.maint (fetch): Simplify, now that we can use gnupload. |
| |
| * checks/check-them: State why a test is skipped. |
| * doc/m4.texinfo (Changeword, Sysval, Maketemp): Likewise. |
| |
| * ChangeLog: Add copyright. |
| * AUTHORS: Likewise. |
| * BACKLOG: Likewise. |
| * README: Likewise. |
| * THANKS: Likewise. |
| * TODO: Likewise. |
| * examples/COPYING: New file, add copyright for all the examples. |
| * checks/get-them: Put copyright on testsuite files. |
| |
| 2006-08-18 Eric Blake <[email protected]> |
| |
| Don't let unrelated child processes see too many files. |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import cloexec. |
| * src/builtin.c (m4_esyscmd, m4_regexp, m4_patsubst): Fix |
| spelling in error message. |
| * src/debug.c [!__STDC__]: Assume C89, and nuke old varargs.h. |
| (debug_set_output): Close debug file on exec. |
| * src/m4.h (includes): Add cloexec.h. |
| * src/output.c (make_room_for): Close diversions on exec. |
| * src/path.c (path_search): Close include files on exec. |
| * NEWS: Document this. |
| |
| Regular expressions were leaking memory. |
| * src/builtin.c (init_pattern_buffer, free_pattern_buffer): New |
| helper methods. |
| (m4_regexp, m4_patsubst): Avoid memory leak. |
| * src/input.c (init_pattern_buffer) [ENABLE_CHANGEWORD]: Make |
| static. |
| (set_word_regexp) [ENABLE_CHANGEWORD]: Avoid memory leak. Change |
| from O(n^2) to O(n) for calculating word_start. |
| (next_token, peek_token) [ENABLE_CHANGEWORD]: Treat word_start as |
| O(1) bitmap, not O(n) search string. |
| * NEWS: Document this fix. |
| |
| 2006-08-17 Eric Blake <[email protected]> |
| |
| * NEWS: Document previous checkin. |
| |
| * src/builtin.c (substitute): Avoid core dump when accessing |
| beyond bound of regular expression. |
| Reported by Karl Nelson. |
| * doc/m4.texinfo (Regexp): Add example that causes core dump on |
| some architectures prior to this patch. |
| * THANKS: Updated. |
| |
| 2006-08-16 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Invoking m4, Debug Output): Fix wording to be |
| clear that dumpdef does not always go to stderr. |
| |
| * src/builtin.c (m4_errprint): Flush buffers before printing to |
| stderr. |
| * THANKS: Updated. |
| |
| 2006-08-15 Eric Blake <[email protected]> |
| |
| * src/builtin.c (m4_m4wrap, m4_errprint, m4_shift): Make blind, |
| per debian bug 96075. |
| * doc/m4.texinfo (Loops, M4wrap, Errprint): Document this change. |
| (Changeword): Don't use shift as an example of a swallowed word. |
| (Divert): Discuss fact that divert is an English word. |
| Reported by Richard A Nelson. |
| |
| 2006-08-14 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Invoking m4): Minor fixes. |
| |
| 2006-08-12 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Arguments): Hint at better exch macro. |
| (Answers): Provide a better definition. |
| |
| 2006-08-09 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Incompatibilities): Document that m4 does not |
| yet understand locales. |
| * NEWS: Fix wording of a few items. |
| |
| 2006-08-08 Eric Blake <[email protected]> |
| |
| Avoid printing `NONE:0:' in error messages. |
| * src/m4.h (m4_error_at_line): New function. |
| * src/m4.c (m4_error_at_line): Implement. |
| * src/input.c (skip_line, input_init, next_token): Use "", not |
| "NONE", for no file, since NONE can be a real file name. |
| * src/macro.c (expand_argument): Likewise. |
| * src/debug.c (debug_message_prefix, trace_header): Check for |
| current file. |
| * doc/m4.texinfo (Dnl, M4wrap): Adjust accordingly. |
| (Location): Document that synclines and internal message format |
| are not impacted by redefining these macros. |
| (M4exit): Hint at bug in fatal_error. |
| (Answers): Provide workaround to match m4 output. |
| |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import verror. |
| * src/m4.h (m4_error): New function. |
| (M4ERROR, M4ERROR_AT_LINE): Reimplement without hacking around |
| error module deficiencies. |
| (reference_error, suppress_line): No longer needed. |
| * src/m4.c (m4_error): Implement. |
| (main): No longer need to install error callback. |
| |
| 2006-08-04 Eric Blake <[email protected]> |
| |
| * src/m4.h (program_name): Declare. |
| (suppress_line): New variable. |
| (M4ERROR_AT_LINE): New macro. |
| * src/m4.c (reference_error, main): Follow GNU Coding Standards |
| for error message format. |
| * src/input.c (skip_line, next_token): Use M4ERROR_AT_LINE. |
| * src/macro.c (expand_argument): Likewise. |
| * checks/check-them (examples): Adjust to new message format. |
| * src/builtin.c (m4___program__): New builtin. |
| * doc/m4.texinfo (Location): Split from Errprint into new node, |
| and document __program__. |
| (Builtin, Ifdef, Ifelse, Dumpdef, Trace, Debug Output, Dnl) |
| (Include, Regexp, Patsubst, Incr, Eval): Adjust error message |
| format. |
| (Extensions): Document __program__. |
| * NEWS: Document this change. |
| |
| 2006-08-03 Eric Blake <[email protected]> |
| |
| Don't confuse leading `(' in comment or quote with start of |
| argument collection. |
| * src/m4.h (enum token_type): Add TOKEN_OPEN, TOKEN_COMMA, |
| TOKEN_CLOSE. |
| (peek_input): Make private to input.c. |
| (peek_token): New prototype. |
| * src/input.c (default_word_regexp): Reduce ifdefs. |
| (peek_input): Make static. |
| (next_token): Return new token types. |
| (match_input, MATCH): Add argument consume, which controls |
| whether match should be pushed back. |
| (peek_token): New function. |
| (token_type_string) [DEBUG_INPUT]: New function. |
| * src/macro.c (expand_token, expand_argument, collect_arguments): |
| Handle new token types. |
| * doc/m4.texinfo (Changequote, Changecom): Document this. |
| * NEWS: Document this. |
| |
| * src/stackovf.c (setup_stackovf_trap): Free memory on failure. |
| |
| * src/stackovf.c (setup_stackovf_trap): Gracefully avoid stack |
| overflow detection when sigstack exists but is not implemented. |
| Fixes debian bug 154053. |
| * THANKS: Updated. |
| Reported by David Perlin. |
| |
| 2006-08-02 Eric Blake <[email protected]> |
| |
| * src/input.c (MATCH): Fix EOF detection on multi-byte comment |
| close. |
| |
| 2006-08-01 Eric Blake <[email protected]> |
| |
| * src/input.c (skip_line, next_token): Remember current file in |
| case input file ends abruptly. Addresses debian bug 175365. |
| (pop_input): Defer freeing storage that holds previous file |
| name... |
| (pop_wrapup): to here, after error message is issued. |
| * src/macro.c (expand_argument): Remember current file in case |
| input file ends abruptly. |
| * doc/m4.texinfo (Macro Arguments, Dnl, Changequote, Changecom) |
| (M4wrap): Adjust testsuite accordingly. |
| (Errprint): Document line number limitation of m4wrap. |
| * NEWS: Document this fix. |
| * THANKS: Update. |
| |
| 2006-07-31 Eric Blake <[email protected]> |
| |
| * src/input.c (peek_input, next_char, match_input): Be eight-bit |
| clean; fixes debian bug 311378. |
| * doc/m4.texinfo (Syntax): Describe eight-bit handling. |
| (Changequote, Changecom): Add examples to test this. |
| * NEWS: Document this fix. |
| * THANKS: Update. |
| Reported by Steven Augart. |
| |
| * doc/m4.texinfo: Whitespace fix. |
| * checks/get-them: Avoid exceeding 14-char file name limit. |
| * THANKS: Update. |
| |
| 2006-07-30 Eric Blake <[email protected]> |
| |
| * src/path.c (path_search): Detect allocation failure. |
| |
| Use native free when it is good enough. |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import free. |
| * src/builtin.c (define_user_macro, m4_regexp, m4_patsubst): |
| Adjust calls. |
| * src/symtab.c (free_symbol): Likewise. |
| * src/m4.c (xfree, main): Likewise. |
| * src/m4.h (obstack_chunk_free): Likewise. |
| * src/path.c (path_search): Likewise. |
| * src/input.c (pop_wrapup, set_quotes, set_comment): Likewise. |
| |
| * doc/m4.texinfo (Errprint): Add example for last patch. |
| * checks/check-them: Account for VPATH in latest example. |
| |
| 2006-07-29 Eric Blake <[email protected]> |
| |
| * src/path.c (path_search): Add result parameter, so that |
| -I can be accounted for. Debian bug 53685. |
| * src/m4.h (path_search): Update prototype. |
| * src/m4.c (main): Adjust callers. |
| * src/freeze.c (reload_frozen_state): Likewise. |
| * src/builtin.c (include, m4_undivert): Likewise. |
| * NEWS: Document this change. |
| Reported by Nicolas Lichtmaier. |
| |
| 2006-07-28 Eric Blake <[email protected]> |
| |
| * Makefile.am (MAINTAINERCLEANFILES): Fix typo that tripped up |
| several non-GNU makes. |
| * src/stackovf.c (setup_stackovf_trap): Missed _ from yesterday. |
| * src/m4.h: Likewise. |
| * src/input.c (push_wrapup): Avoid compiler warning with Solaris |
| /usr/ccs/bin/ucbcc. |
| |
| 2006-07-27 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Use @acronym{GNU} throughout. |
| (History): Update for 1.4.6. |
| |
| * src/m4.h (_): Remove K&R cruft. |
| * src/builtin.c: Likewise. |
| * src/debug.c: Likewise. |
| * src/eval.c: Likewise. |
| * src/macro.c: Likewise. |
| * src/stackovf.c: Likewise. |
| |
| * doc/Makefile.am (m4.1): Improve man page. |
| * src/m4.c (usage): Improve --help output, including adding the |
| bug reporting address. |
| (main): Follow GNU Coding Standards for --version output. |
| |
| 2006-07-26 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Use begin-quote, end-quote, begin-comment, and |
| end-comment consistently, to match POSIX. |
| |
| * doc/m4.texinfo (Macro Arguments, Changequote, Changecom) |
| (Dnl, M4wrap, Include): Document EOF issues, and add examples. |
| (Incompatibilities): Document incompatibility of changecom |
| vs. macro names, and of EOF in include. |
| * src/input.c (next_token): Reject unterminated comments at EOF. |
| (skip_line): Warn on unterminated dnl at EOF. |
| * NEWS: Document these changes. |
| |
| 2006-07-25 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Update to reflect gnulib's split of |
| stdio-safer into fopen-safer and tmpfile-safer. |
| * src/m4.c: Remove redundant include. |
| |
| 2006-07-24 Eric Blake <[email protected]> |
| |
| Fix bugs related to stream handling. |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import |
| unlocked-io stdio-safer stdlib-safer close-stream. |
| * configure.ac (AC_CHECK_FUNCS_ONCE): Assume tmpfile; it can be |
| provided by gnulib if needed. |
| * src/output.c [! HAVE_TMPFILE]: Likewise. |
| * src/m4.h (includes): Replace unistd, stdio, and stdlib with |
| their safer counterparts. |
| (retcode): New global variable. |
| * src/input.c (pop_input): Check for read failure. |
| * src/freeze.c (reload_frozen_state): Likewise. |
| (produce_frozen_state): Check for write failure. |
| * src/debug.c (debug_set_file): Likewise. |
| * src/m4.c (usage, main): Likewise. |
| (retcode): Make global. |
| * src/builtin.c (m4_m4exit): Likewise. Ensure that the exit |
| status is non-zero except when everything succeeds. |
| * doc/m4.texinfo (M4exit): Document these changes. |
| (Incompatibilities): Remove documentation of bug now fixed. |
| * NEWS: Document these fixes. |
| |
| 2006-07-22 Eric Blake <[email protected]> |
| |
| * src/format.c (format): Avoid compiler warning that str may be |
| used uninitialized. |
| |
| 2006-07-21 Eric Blake <[email protected]> |
| |
| * src/m4.h [UNIX]: Add more platforms that are close enough to |
| categorize as UNIX, but which don't predefine __unix__. |
| Reported by Nelson H. F. Beebe. |
| |
| 2006-07-20 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: gnulib-tool has changed again. Regenerate |
| to explicitly ask for --assume-autoconf=2.60. |
| |
| 2006-07-19 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Sysval): Avoid kill -1, since ksh traps SIGHUP |
| and exits normally with 129. |
| Reported by Nelson H. F. Beebe. |
| * THANKS: Update. |
| |
| * src/m4.h (EXIT_MISMATCH): Define. |
| * src/freeze.c (reload_frozen_state): Detect version mismatch, by |
| exiting with status 63. |
| * src/m4.c (usage): Document this. |
| * doc/m4.texinfo (Invoking m4, Using frozen files): Likewise. |
| * NEWS: Likewise. |
| |
| * doc/m4.texinfo (copying): Relax restriction on front-cover and |
| back-cover texts. |
| |
| 2006-07-17 Eric Blake <[email protected]> |
| |
| * src/format.c (format): Support F, g, and G specifiers. |
| * doc/m4.texinfo (Format): Document this. |
| * NEWS: Document this addition. |
| |
| * doc/m4.texinfo (Builtin): Delete redundant text. |
| |
| * configure.ac (AC_INIT): Bump version number. |
| * src/builtin.c (substitute): Bah. Fix buffer overrun. |
| * NEWS: Document this fix. |
| |
| 2006-07-15 Eric Blake <[email protected]> |
| |
| Release 1.4.5: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.4. |
| |
| * src/m4.c (usage): Document exit status. |
| * doc/m4.texinfo: Use `exit status', not `exit code'. |
| (Invoking m4): Document exit status. |
| |
| * bootstrap: Backport --help, --version from head. |
| (func_update): New function, for easily grabbing up-to-date files |
| from gnulib. |
| * Makefile.maint (web-manual): Fix for VPATH builds. |
| |
| 2006-07-14 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Global cleanup. Avoid @code{...}'d, as it |
| looks bad in info. Use @deffn rather than @example for |
| describing prototypes. Fix awkward wording and grammar. |
| |
| * src/builtin.c (substitute): Warn on bad escape sequences. |
| Ignore trailing backslash. |
| * doc/m4.texinfo (Regexp): Add documentation for this. |
| * NEWS: Document this change. |
| |
| * src/builtin.c (m4_format, m4_indir): Warn on too few arguments. |
| * doc/m4.texinfo (Defn, Builtin, Debug Levels, Debug Output): Add |
| more examples. |
| (Dnl): Update example to show side effects. |
| * checks/get-them: Generate three digit test names. |
| * checks/Makefile.in (CHECKS): Accomodate 100+ tests. |
| |
| 2006-07-13 Eric Blake <[email protected]> |
| |
| * src/input.c (input_init): Simplify. |
| (set_word_regexp): Treat empty string as default, since empty |
| regexp would disable word parsing. |
| * src/m4.c (user_word_regexp): Default to empty string. |
| * src/builtin.c (builtin_tab): Make changeword blind. |
| * doc/m4.texinfo (Changeword): Document this. |
| * NEWS: Document this. |
| * TODO: Knock off completed items. |
| |
| * src/builtin.c (m4_undefine, m4_popdef): Visit all arguments, not |
| just the first. |
| * doc/m4.texinfo (Undefine, Pushdef): Test this. |
| * NEWS: Document this change. |
| |
| * src/builtin.c (numeric_arg): Treat empty string as 0, with a |
| warning. Detect quoted leading space and overflow as warnings. |
| (m4_eval): Treat empty radix as 10, and allow output in radix 1. |
| Treat width as minimum number of digits, as required by POSIX. |
| (m4_ifdef, m4_divert, m4_m4exit, m4_translit): Ignore extra |
| arguments. |
| (m4_substr): Likewise. Silently treat empty start as 0. |
| (m4_undivert): Treat ` 1a' as file, not diversion 1. |
| * src/eval.c (eval_lex): Parse radix 1 numbers. |
| * doc/m4.texinfo (Invoking m4): Fix wording; there is more than |
| one type of warning. |
| (Manual): Document behavior of numeric parsing of empty string. |
| (Divert, Incr): Document error handling. |
| (Eval): Document radices better. |
| (Incompatibilities): Document translit incompatibility. |
| * NEWS: Document these changes. |
| |
| * Makefile.maint (fetch): Get gendocs from gnulib, not texinfo. |
| (web-manual): Simplify. |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import gendocs. |
| * Makefile.am (EXTRA_DIST): Distribute gendocs.sh. |
| (MAINTAINERCLEANFILES): Clean it as well. |
| * doc/Makefile.am (EXTRA_DIST): Distribute gendocs_template. |
| (MAINTAINERCLEANFILES): Clean it as well. |
| |
| 2006-07-12 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Extensions): Document how to overcome |
| implementation difference in > 9 positional parameters. |
| |
| * src/m4.c (usage): Sort within sections. |
| (nesting_limit): Raise default from 250 to 1024. |
| * doc/m4.texinfo: Use file name, not filename, per GNU coding |
| standard. Use @option where appropriate. |
| (Invoking m4): Sort to match --help output. |
| (Debug Levels): Sort. |
| (Frozen files): Sort and break into two nodes. |
| |
| * src/m4.c (nesting_limit): Raise default from 250 to 1024. |
| * NEWS: Document raised -L limit. |
| |
| 2006-07-11 Eric Blake <[email protected]> |
| |
| * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New macro, to |
| stress-test changeword before a release. |
| * doc/m4.texinfo: More doc cleanups. |
| (Copying This Manual): New node; actually include the FDL in the |
| documentation. |
| * doc/Makefile.am (m4_TEXINFOS): Mention dependence on fdl.texi. |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import fdl. |
| * NEWS: Mention documentation improvements. |
| |
| * src/m4.h (OS2): New platform macro. |
| * src/builtin.c (predefined_tab) [OS2]: Use it to give OS/2 a |
| platform macro. |
| * doc/m4.texinfo (Platform macros): Document it. |
| (Sysval): Remove non-portable test of system(""). |
| * NEWS: Document this change. |
| Reported by Andreas Buening. |
| |
| 2006-07-09 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Undivert): Fix typo in last commit. |
| * src/m4.c (usage): Document M4PATH. |
| * src/path.c (path_search): Reject empty string. |
| * src/output.c (insert_diversion): Ignore diversion 0. |
| * src/builtin.c (m4_undivert): Ignore empty string. |
| * NEWS: Document this fix. |
| |
| 2006-07-08 Eric Blake <[email protected]> |
| |
| * checks/get-them: Make filtering easier. |
| * checks/check-them: Filter non-input lines, so line counts are |
| more realistic in the documentation, and so changeword tests work |
| even when dnl is disabled. |
| * doc/m4.texinfo: Adjust example line numbers. Clean up |
| front-matter, following autoconf's example. |
| (Changeword): Enable tests, skipping if changeword not supported. |
| (Define, Defn, Ifelse): Backport more examples from head. |
| (Input processing, Answers): New nodes, backported from head. |
| (Include): Expand test to cover empty filename. |
| (Undivert): Add test of undivert(0). |
| |
| 2006-07-07 Ralf Wildenhues <[email protected]> |
| |
| * doc/m4.texinfo: Fix spelling errors. |
| |
| 2006-07-07 Eric Blake <[email protected]> |
| |
| * THANKS: Update. |
| |
| * doc/Makefile.am (m4.1): No need to go through a temporary file; |
| this also ensures timestamps are updated. |
| * src/m4.h (includes): Require config.h. Assume string.h, |
| stdlib.h, errno. Include error.h, exit.h, and xalloc.h rather |
| than prototyping ourselves. |
| (builtin_func): Add parameter type-checking. |
| (voidstar): Delete, now that we assume C89. |
| * src/builtin.c, src/m4.c, src/macro.c, src/symtab.c: All users of |
| voidstar changed. |
| * src/m4.c (xfree) [WITH_DMALLOC]: Avoid clash with dmalloc's |
| xfree. |
| |
| 2006-07-06 Eric Blake <[email protected]> |
| |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import |
| binary-io. |
| * src/m4.h (includes): Add binary-io.h for O_BINARY. |
| * src/freeze.c (produce_frozen_state): Use O_BINARY to remove |
| #ifdef. Fixes patch from 2005-02-03 for cygwin. |
| * NEWS: Mention this fix. |
| |
| * configure.ac (FUNC_SYSTEM_BROKEN): New check for OS/2 bug. |
| * src/builtin.c (m4_syscmd): Work around OS/2 bug. |
| |
| * Makefile.am (SUBDIRS): Build . before src, so that autoheader |
| runs first when needed. |
| * doc/Makefile.am (m4.1): Backport rule from CVS head: build m4.1 |
| once in srcdir rather than multiple times in VPATH builds. |
| |
| 2006-07-03 Eric Blake <[email protected]> |
| |
| * checks/check-them: Use portable = in test. |
| * src/Makefile.am (AM_CPPFLAGS): Omit space between -I and |
| directory, as required by Solaris cc. Include built headers, as |
| required by Solaris make in VPATH build. |
| * checks/Makefile.in: Use $(srcdir) where needed. |
| (CHECKS): Factor $(srcdir) into macro. |
| (DISTFILES): Likewise. Automake takes care of distributing |
| Makefile.in. |
| (dist): Simplify. |
| (Makefile): Use modern syntax of config.status. |
| * doc/m4.texinfo (Loops, Include, Undivert, Incompatibilities): |
| Avoid overfull and underfull hboxes in dvi. |
| |
| Fix 'make check' in VPATH build. All files included by testsuite |
| now live in a single directory. Use forloop.m4 in testsuite. |
| * checks/incl.m4, checks/foo, checks/wrapfifo.m4: Move from |
| here... |
| * examples/incl.m4, examples/foo, examples/wrapfifo.m4: ...to |
| here. |
| * checks/Makefile.in (DISTFILES): Don't distribute moved files. |
| * examples/Makefile.am (EXTRA_DIST): Distribute new files. |
| * checks/check-them: Avoid s/// when filename is in pattern. |
| * examples/forloop.m4: Fix to match documentation. |
| * doc/m4.texinfo (Include, Undivert, Incompatibilities): Reflect |
| new locations. |
| (Loops, Format): Actually use forloop.m4 in tests. |
| |
| 2006-07-02 Eric Blake <[email protected]> |
| |
| * checks/Makefile.in (exec_prefix, prefix): New macros, so that |
| $(bindir) works in installcheck. |
| (check, installcheck): No longer change directory, so that |
| distcheck works with a read-only builddir. |
| * checks/check-them: Work when pwd is no longer builddir. |
| |
| 2006-07-01 Eric Blake <[email protected]> |
| |
| * GNUmakefile: New file, borrowed from coreutils. |
| * Makefile.am (EXTRA_DIST): Distribute GNUmakefile. |
| * Makefile.maint (Makefile): Delete this rule, now that |
| GNUmakefile includes Makefile. |
| |
| 2006-06-30 Eric Blake <[email protected]> |
| |
| For compatibility with other m4 implementations, sysval returns |
| signal<<8 rather than 0 if syscmd is terminated by a signal. |
| * configure.ac (AC_CHECK_HEADERS_ONCE): Check for sys/wait.h. |
| * src/builtin.c (include): Include sys/wait.h when stdlib.h does |
| not provide wait macros. |
| (WTERMSIG, WIFSIGNALED, WIFEXITED): More fallback macros. |
| (M4SYSVAL_EXITBITS, M4SYSVAL_TERMSIGBITS): New helper macros. |
| (m4_esyscmd): Set sysval to -1 on failure. |
| (m4_sysval): Print 127 on failure, and accomodate signals if they |
| are detectable. |
| * NEWS: Document this change. |
| * doc/m4.texinfo (Platform macros, Esyscmd, Sysval): Fix typos in |
| last commit. |
| * checks/check-them: Likewise. |
| * src/debug.c (debug_set_file): Work around mingw fstat bug. |
| |
| * src/m4.h (UNIX, W32_NATIVE): Improve platform detection macros. |
| * src/freeze.c (produce_frozen_state): Use new spelling of |
| platform macro. |
| * src/builtin.c (predefined_tab): Add __windows__ on non-unix |
| platforms. |
| (m4_syscmd, m4_esyscmd): The empty command is successful. |
| * doc/m4.texinfo (Shell commands): Rename from UNIX commands. |
| Document platform-dependence of system(). |
| (Syscmd): Add example. |
| (Esyscmd): Make example more robust, and actually demonstrate |
| rescanning. |
| (Sysval): Expand test to cover esyscmd code path, and to check |
| that empty command is successful. Add conditional check for |
| signal behavior. |
| (Other Incompatibilities): Move platform macros from here... |
| (Platform macros): ...to this new node. Add windows macro. |
| Check that exactly one platform macro is provided. |
| * checks/check-them: Improve trap cleanup. Tolerate dirname and |
| .exe in error messages. Allow for skipping checks. |
| * configure.ac (HAVE_EFGCVT): Kill dead configure check. |
| * NEWS: Document platform macros. |
| |
| 2006-06-29 Eric Blake <[email protected]> |
| |
| Fix buffer overrun bug. |
| * m4/gnulib-cache.m4: Augment with gnulib-tool --import |
| xvasprintf. |
| * src/format.c [HAVE_EFGCVT]: Delete this code, and use *printf |
| variant instead, since [efg]cvt are obsolete and our use of them |
| was buggy (savannah sr #104303). |
| (format): Fix buffer overflow by using xasprintf. |
| * doc/m4.texinfo (Format): Expand format test to catch both bugs. |
| * NEWS: Document this fix. |
| |
| * configure.ac (AC_CANONICAL_HOST, AC_CANONICAL_BUILD): Allow |
| cross-compilation. |
| (AC_CACHE_CHECK): Cache search for ecvt. |
| |
| 2006-06-27 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Eval): Document 32-bit signed limitations |
| required by POSIX, and add example that exposed core dump on x86 |
| architectures. |
| (Incompatibilities): Document incompatibility in eval precedence. |
| * src/eval.c (shift_term): Explicitly mask, to avoid undefined |
| behavior. |
| (mult_term): Explicitly check for -1, to avoid SIGFPE on x86. |
| * NEWS: Document this change. |
| |
| * doc/m4.texinfo: Use @noindent consistently. |
| (Quoting Arguments): Document that unquoted parentheses group |
| arguments. |
| (Pseudo Arguments): Expand tests to show this. |
| (Incompatibilities): Contrast traditional behavior of |
| changequote. |
| |
| 2006-06-24 Eric Blake <[email protected]> |
| |
| * configure.ac (AC_PREREQ): Autoconf 2.60 is now released. |
| (AC_CHECK_HEADERS_ONCE): Use this new feature. |
| (AC_CHECK_FUNCS_ONCE): Likewise. |
| |
| 2006-06-23 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Quoting cleanup throughout - follow |
| autoconf-recommended style of one level of quote per parenthesis |
| in the normal case. Adjust error messages to match GNU coding |
| standards (and to allow 'make check' to pass again). |
| (Quoted strings, Inhibiting Invocation): Turn more examples into |
| tests. |
| (Comments): Resolve FIXME by adding example. |
| (Define): Add example about underquoting. |
| (Defn): Add example about use of $0. |
| (Indir, Format): Resolve FIXME done in last commit. |
| (Ifelse): Add example about creating blind macro. |
| (Debugging): Fix grammar. |
| (Dnl): Add example about dnl with arguments. |
| (M4wrap): Be explicit that LIFO order is non compliant, and will |
| change in m4 2.0. |
| (Undivert): Resolve FIXME by adding example. |
| (Frozen files): Document that m4wrap and sysval will not work |
| consistently until m4 2.0. |
| (Incompatibilities): Document another POSIX compliance bug, this |
| time with changequote. Document a traditional incompatibility |
| with partial input spanning file boundaries. |
| |
| Make error messages more consistent with GNU coding standards - |
| start with lower case, and don't end sentence with punctuation. |
| * src/debug.c (trace_pre): Update message wording. |
| * src/eval.c (evaluate, cmp_term, shift_term, mult_term): |
| Likewise. |
| * src/freeze.c (produce_frozen_state, issue_expect_message), |
| (reload_frozen_state): Likewise. |
| * src/input.c (push_string_init, pop_init, init_macro_token), |
| (peek_input, next_char_1, set_word_regexp, next_token): Likewise. |
| * src/m4.c (stackovf_handler, main): Likewise. |
| * src/macro.c (expand_token, expand_argument, call_macro), |
| (expand_macro): Likewise. |
| * src/output.c (make_room_for, output_text, insert_file), |
| (freeze_diversions): Likewise. |
| * src/symtab.c (symtab_init, lookup_symbol): Likewise. |
| |
| * src/builtin.c (builtin_tab): Make format and indir blind. |
| (substitute): Prefer "Warning:" vs. "ERROR:" in messages. |
| * NEWS: Mention the change to builtins. |
| |
| 2006-06-22 Eric Blake <[email protected]> |
| |
| Robustify frozen file format. |
| * src/freeze.c (reload_frozen_state): Add GET_DIRECTIVE helper |
| macro. Require V first, and only accept it once. For F, use |
| placeholder if builtin is not found, rather than warning. |
| * src/m4.h (m4_placeholder): New prototype. |
| * src/builtin.c: Unify error message style. |
| (m4_placeholder): New function, warn if invoked. |
| (builtin_tab): Add m4_placeholder. |
| (m4_defn): Warn if placeholder is encountered. |
| (find_builtin_by_addr): Handle placeholder. |
| (find_builtin_by_name): Return placeholder on failure. |
| (m4_builtin): Treat placeholder as undefined. |
| * doc/m4.texinfo (Frozen files): Document changes in V and F. |
| * NEWS: Document this change. |
| Reported by Bruno Haible. |
| |
| * doc/m4.texinfo: Whitespace cleanup. TABs are evil in texinfo. |
| (tabchar): New macro, so that 'make check' still works. |
| (Invoking m4): Document that ignored compatibility options -B, -S, |
| and -T each consume an argument. |
| * checks/get-them: Honor @tabchar{}. |
| |
| Avoid compiler warnings during -DDEBUG. |
| * src/m4.h (M4_GNUC_ATTRIBUTE, M4_GNUC_UNUSED): New macros. |
| [DEBUG]: Also imply DEBUG_OUTPUT and DEBUG_STKOVF. |
| * src/input.c (print_token) [DEBUG_INPUT]: Use correct format. |
| (lex_debug) [DEBUG_INPUT]: Fix to compile. Mark unused. |
| (next_token) [DEBUG_INPUT]: Print before returning. |
| * src/path.c (include_dump) [DEBUG_INCL]: Mark unused. |
| * src/symtab.c (symtab_debug) [DEBUG_SYM]: Mark unused. |
| |
| Avoid mkstemp bugs on various platforms. |
| * m4/gnulib-cache.c: Augment with gnulib-tool --import mkstemp. |
| * src/output.c [! HAVE_MKSTEMP]: Delete. |
| * configure.ac (AC_CHECK_FUNCS): Don't check for mkstemp. |
| * src/m4.h (mkstemp) [! HAVE_MKSTEMP]: Prototype, if needed. |
| * NEWS: Document this. |
| |
| * Makefile.am (EXTRA_DIST): Distribute gnulib-cache.m4. |
| Reported by Bruno Haible. |
| |
| 2006-06-21 Eric Blake <[email protected]> |
| |
| Avoid obsolete sigstack when POSIX sigaltstack is available. |
| * src/m4.c: Blindly assume signal.h, since stackovf.c and gnulib |
| do likewise. |
| * configure.ac (AC_CHECK_HEADERS): Likewise. |
| (AC_CHECK_TYPES): New check for siginfo_t, since siginfo.h is |
| obsolete and most hosts now have it in signal.h. |
| (AC_CHECK_MEMBERS): New check for sigaction.sa_sigaction. |
| (AC_CACHE_CHECK): Cache decision to use stackovf. |
| (AC_EGREP_HEADER): Switch to AC_CHECK_TYPES. |
| * src/stackovf.c (DEBUG_STACKOVF): Remove unused define. |
| (SA_RESETHAND, SA_SIGINFO): Provide fallback definitions, to |
| simplify later code. |
| (PARAM_STACKOVF, PARAM_NOSTACKOVF): Move further away from NULL, |
| in case of dereferencing a member of a NULL pointer. |
| (sigsegv_handler) [HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define a |
| POSIX handler. |
| (setup_stackovf_trap): Use NULL instead of 0 for pointers, use |
| EXIT_FAILURE in error, indent preprocessor directives. |
| [HAVE_SIGALTSTACK && HAVE_SIGINFO_T]: Depend on siginfo_t, not |
| siginfo.h. |
| [HAVE_SIGACTION && defined SA_ONSTACK]: Prefer POSIX handler. |
| Reported by Santiago Vila. |
| |
| 2006-06-19 Eric Blake <[email protected]> |
| |
| * THANKS: Update. |
| |
| 2006-06-18 Andreas Buening <[email protected]> (tiny change) |
| |
| * checks/Makefile.in (PATH_SEPARATOR): New macro. |
| (check, installcheck): Use it, for OS/2. |
| |
| 2006-06-18 Eric Blake <[email protected]> |
| |
| Consistently use "GNU M4" as package name, "m4" as executable |
| name. |
| * NEWS: Document previous fix. |
| * THANKS: Update. |
| * README: Fix grammar. Document that --enable-changeword is on |
| its last leg. |
| * doc/m4.texinfo (Top, Changeword): Likewise. |
| (Sysval): Enhance this test. |
| (History): Backport this section from CVS head, and update. |
| |
| 2006-06-18 Bruno Haible <[email protected]> (tiny change) |
| Eric Blake <[email protected]> |
| |
| * src/builtin.c (WEXITSTATUS): Provide fallback definition. |
| (m4_esyscmd): Set sysval to 0xffff, to accomodate both |
| big-endian and little-endian wait status definitions. |
| (m4_sysval): Use WEXITSTATUS. |
| Reported by Andreas Buening. |
| |
| 2006-06-18 Eric Blake <[email protected]> |
| |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes in 1.4.4c. |
| |
| 2006-06-17 Eric Blake <[email protected]> |
| |
| Beta Release 1.4.4b: |
| * configure.ac (AC_INIT): Bump version number. |
| * NEWS: Describe changes since 1.4.4. |
| * Makefile.maint (cvs-news): Accomodate copyright line wrapping. |
| |
| * Makefile.am (MAINTAINERCLEANFILES): Clean files added by |
| bootstrap. |
| * checks/Makefile.in (maintainer-clean): Add missing target. |
| * COPYING: Remove generated file from CVS. |
| |
| 2006-06-16 Eric Blake <[email protected]> |
| |
| * checks/Makefile.in (DISTFILES): Distribute wrapfifo.m4. |
| |
| 2006-06-15 Eric Blake <[email protected]> |
| |
| * checks/wrapfifo.m4: New file. Use it... |
| * doc/m4.texinfo (Incompatibilities): here, in a new test case to |
| demonstrate how to get POSIX behavior of m4wrap prior to m4 2.0. |
| |
| * src/m4.h (to_uchar): New function. |
| * src/eval.c (eval_lex): Use it to avoid passing signed char to |
| isdigit, isalpha, isupper, islower, isspace, isalnum. |
| * src/builtin.c (expand_user_macro): Likewise. |
| * src/format.c (format): Likewise. |
| * src/macro.c (expand_argument): Likewise. |
| * NEWS: Document this security fix. |
| |
| Message cleanup. |
| * src/symtab.c (lookup_symbol): Use invalid, not illegal. |
| * src/freeze.c (reload_frozen_state): Fix typo in message. |
| (produce_frozen_state): Standardize on builtin, not built-in. |
| * src/builtin.c (numeric_arg, bad_argc): Likewise. |
| |
| * configure.ac (M4_EARLY, M4_INIT): Use gnulib. |
| (AC_PROG_RANLIB, AC_AIX, AC_MINIX, AC_CHECK_HEADERS), |
| (AC_FUNC_ALLOCA, AC_REPLACE_FUNCS): Avoid checks now done by |
| gnulib. |
| * Makefile.am (ACLOCAL_AMFLAGS): New entry, for gnulib. |
| * m4/gnulib-cache.m4: New file, from gnulib. |
| * bootstrap: Invoke gnulib-tool --update. |
| * src/m4.c (main): Cast away const. |
| * NEWS: Document that regex is updated. |
| * THANKS: Update. |
| |
| 2006-06-08 Eric Blake <[email protected]> |
| |
| * configure.ac (changeword): Work even when changeword is not a |
| macro. |
| (AC_PROG_AWK, AC_PROG_INSTALL, AC_PROG_MAKE_SET, AC_HEADER_STDC): |
| Delete; now done by automake. |
| (AC_ISC_POSIX, AC_C_CONST): Delete; now obsolete. |
| |
| 2006-06-07 Eric Blake <[email protected]> |
| |
| * lib/regex.c (bcmp_translate): Canonicalize type name. |
| * doc/Makefile.am (MAINTAINERCLEANFILES): Fix typo. |
| * configure.ac (changeword): Disable changeword for the creation |
| of configure, in case of bootstrapping with an m4 configured with |
| --enable-changeword. |
| |
| Distribute a rudimentary man page. |
| * Makefile.am (SUBDIRS): Move doc after src so that 'm4 --help' |
| can feed help2man. |
| * doc/Makefile.am (man_MANS, EXTRA_DIST, MAINTAINERDISTCLEAN), |
| (SUFFIXES, m4.1): New macros and rules to build m4.1. |
| |
| 2006-06-06 Eric Blake <[email protected]> |
| |
| * lib/regex.c (re_match_2_internal, bcmp_translate): Avoid |
| compiler warnings at -O2. |
| * lib/getopt.c (_getopt_internal): Likewise. |
| |
| Cleanup of previous patches. |
| * src/input.c (struct input_block): Remove traced member. |
| (push_macro, init_macro_token): Don't pass trace status around. |
| * src/m4.h (struct token_data): Remove traced member. |
| (struct symbol, struct builtin): Reduce unused space. |
| (TOKEN_DATA_FUNC): Simplify. |
| (TOKEN_DATA_FUNC_TRACED): Remove unused macro. |
| (push_macro, define_builtin): Remove unused parameter. |
| * src/builtin.c (define_builtin, builtin_init, define_macro), |
| (m4_defn): Don't pass trace status around. |
| * src/macro.c (expand_argument): Likewise. |
| * src/freeze.c (reload_frozen_state): Likewise. |
| * src/symtab.c: Whitespace cleanup. |
| * NEWS: Clean up wording. |
| * doc/m4.texinfo (Undefine, Dumpdef, Trace): Cleanup wording; |
| ensure tests actually expose bugs prior to today's patches. |
| |
| Trace status of builtins is no longer inherited across |
| define(...,defn(...)). Fixes bug that autom4te had been working |
| around. |
| * src/builtin.c (define_builtin): Don't override trace status. |
| * doc/m4.texinfo (Trace): Add test for this. |
| * NEWS: Document this. |
| |
| When changing macro definitions inside the arguments to the macro, |
| consistently preserve the old definition that was in effect before |
| argument collection, similar to the C pre-processor. |
| Reported by John Brzustowski. |
| * NEWS: Document this change. |
| * doc/m4.texinfo (Macro Arguments, Undefine, Dumpdef): Document |
| this policy, and add tests that expose core dumps prior to this |
| patch. |
| * src/m4.h (struct symbol): New members to track when a symbol is |
| still in use after removal from the symbol table. |
| (SYMBOL_PENDING_EXPANSIONS, SYMBOL_DELETED): Define. |
| (free_symbol): Prototype. |
| * src/macro.c (expand_macro): Track pending expansions of a |
| symbol. On completion, if a symbol is deleted and no longer |
| pending, free its memory. |
| * src/symtab.c (free_symbol): Export. Don't free memory if symbol |
| is still in use. |
| (lookup_symbol) <SYMBOL_INSERT>: Create new entry when old entry |
| is still in use. |
| (lookup_symbol) <SYMBOL_DELETE, SYMBOL_POPDEF>: Mark entries still |
| in use as deleted and remove from the table without freeing |
| memory. |
| (symtab_print_list) [DEBUG_SYM]: More debug output. |
| |
| * src/symtab.c (hack_all_symbols): Allow certain modifications of |
| the symbol table during traversal. |
| * src/builtin.c (set_trace): Replace SYMBOL_DELETE with |
| SYMBOL_POPDEF, since only the latter is safe with |
| hack_all_symbols. |
| |
| Solve crash when passing "indir(`foo')" to "m4 -tfoo". |
| * src/symtab.c (lookup_symbol) <SYMBOL_DELETE, SYMBOL_POPDEF>: |
| Preserve placeholder when macro is being traced. |
| * src/builtin.c (m4_ifdef, m4_indir): A traced but undefined |
| symbol is not defined. |
| (set_trace): Remove placeholder when no longer traced. |
| (m4_traceon): On named traces, always reserve a slot in the |
| symbol table. |
| (m4_traceoff): Don't warn about untracing a nonexistent symbol. |
| * NEWS: Document new trace behavior. |
| * doc/m4.texinfo (Trace): Tracing by name now consistently works |
| no matter whether that macro is currently defined. |
| (Incompatibilities): Document differences between traditional and |
| GNU trace. |
| |
| 2006-06-04 Paul Eggert <[email protected]> (tiny change) |
| Eric Blake <[email protected]> |
| |
| * src/m4.h (hash_table_size): Now size_t instead of int. |
| * src/m4.c (hash_table_size): Likewise. |
| (main): Adjust to this; use atol rather than atoi. |
| * src/symtab.c: Include <limits.h>, for CHAR_BIT. |
| (symtab_init, lookup_symbol, hack_all_symbols): |
| Use size_t for sizes and indexes, not int. |
| (symtab_print_list) [DEBUG_SYM]: Likewise. |
| (hash): Likewise. Don't case-fold in the hash function. |
| Shift by 7, not 3, for consistency with gnulib/lib/hash.c. |
| Don't assume hash word is 32 bits. |
| * NEWS: Document this change. |
| |
| 2006-06-04 Eric Blake <[email protected]> |
| |
| * src/symtab.c (symtab_debug, symtab_print_list) [DEBUG_SYM]: Fix |
| to allow compilation, for use in debugger. |
| (profiles, current_mode) [DEBUG_SYM]: New variables. |
| (show_profile, profile_strcmp) [DEBUG_SYM]: New methods for |
| determining hash table performance. |
| |
| 2006-05-31 Eric Blake <[email protected]> |
| John Brzustowski <[email protected]> |
| |
| * src/input.c (input_stack): Delete; use current_input instead. |
| (wrapup_stack): Dynamically allocate, so that recursion is handled |
| properly. |
| (push_wrapup): Use current wrapup stack. |
| (pop_wrapup): Rotate wrapup stack to current, and create new |
| wrapup stack. |
| (input_init): Dynamically allocate stacks. |
| * NEWS: Update, now that recursive m4wrap can no longer cause |
| core dump. |
| |
| 2006-05-31 Eric Blake <[email protected]> |
| |
| * lib/getopt.c: Fix copyright year. |
| * lib/obstack.c: Ditto. |
| * src/builtin.c: Ditto. |
| |
| 2006-05-30 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (M4wrap): Add test to expose m4wrap bug. |
| Reported by John Brzustowski. |
| (Incompatibilities): Document known POSIX incompatibilities. |
| * THANKS: Update. |
| |
| 2006-05-29 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo (Maketemp): Work even when running 'make check' |
| in read-only dir. |
| |
| Use automake. |
| * Makefile.am: New file. |
| * doc/Makefile.am: Ditto. |
| * examples/Makefile.am: Ditto. |
| * lib/Makefile.am: Ditto. |
| * src/Makefile.am: Ditto. |
| * acinclude.m4: New file, renamed from aclocal.m4. |
| * configure.ac (AM_INIT_AUTOMAKE): Invoke new macro. |
| (AC_ARG_PROGRAM): Now redundant. |
| (STACKOVF): Turn into automake conditional. |
| (AC_CONFIG_COMMANDS): stamp-h is a command, not a file. |
| * checks/Makefile.in: Converting this dir to automake was not |
| trivial; for now, just add missing targets demanded by top-level. |
| * INSTALL: Remove files that are now generated from CVS. |
| * Makefile.in: Ditto. |
| * aclocal.m4: Ditto. |
| * install-sh: Ditto. |
| * mkinstalldirs: Ditto. |
| * doc/Makefile.in: Ditto. |
| * doc/texinfo.tex: Ditto. |
| * examples/Makefile.in: Ditto. |
| * lib/Makefile.in: Ditto. |
| * src/Makefile.in: Ditto. |
| |
| * AUTHORS: Backport from CVS head, and update. |
| * doc/m4.texinfo (Changeword): Fix examples to match behavior. |
| |
| 2006-05-27 Eric Blake <[email protected]> |
| |
| * lib/regex.c (regex_compile): Kill compiler warnings. |
| * lib/getopt.c: Likewise. |
| * lib/obstack.c: Likewise. |
| * src/builtin.c (builtin_init): Likewise. |
| * src/path.c (path_search): Likewise. |
| |
| * doc/m4.texinfo: Fix usage of a vs. an. |
| (Loops, Include, Cleardiv, Patsubst, Format, M4exit): Kill |
| overfull hbox warnings. |
| (Inhibiting Invocation, Divert, Maketemp, M4exit): Add new tests. |
| |
| * configure.ac: Update to autoconf 2.59. Forbid ^M4_. Fix |
| quoting. |
| * aclocal.m4 (fp_PROG_CC_STDC): Delete; now covered by autoconf. |
| (fp_C_PROTOTYPES): Delete, GNU Coding Standards state we can now |
| assume C89. |
| (M4_WITH_DMALLOC): Rename from fp_WITH_DMALLOC. Fix quoting. |
| * src/m4.h (_): PROTOTYPES is no longer provided, assume C89. |
| * src/Makefile.in: Delete remains of ansi2knr. |
| * src/ansi2knr.1: Delete. |
| * src/ansi2knr.c: Delete. |
| |
| 2006-05-25 Eric Blake <[email protected]> |
| |
| * doc/m4.texinfo: Fix spelling errors. Use `invalid' instead of |
| `illegal'. |
| |
| * doc/m4.texinfo (Francois): No longer needed as a tex variable. |
| Reported by Karl Berry. |
| |
| 2006-05-24 Eric Blake <[email protected]> |
| |
| * Makefile.in (html): New target. |
| * doc/Makefile.in (html, m4.html): Likewise. |
| (MAKEINFOHTML): New macro. |
| * doc/m4.texinfo (Francois) [ifnottex]: Use newer texinfo |
| rendering. |
| (Regexp) [ifhtml]: Make cross-reference to emacs manual an |
| absolute URL. |
| Reported by Bob Badour. |
| |
| * THANKS: Update. Move reporter's email addresses here, instead |
| of in ChangeLog. |
| |
| 2006-05-11 Eric Blake <[email protected]> |
| |
| * THANKS: Update. |
| * doc/m4.texinfo (Changequote): Give testsuite exposure to bug |
| patched on 2005-12-04. |
| Reported by Ilya N. Golubev. |
| |
| * bootstrap: New file, so that generated files need not be stored |
| in CVS. |
| * Makefile.in (DISTFILES): Add bootstrap. |
| |
| Make testsuite less sensitive to doc changes. |
| * doc/m4.texinfo: Use m4.input instead of filename. |
| * checks/check-them (xerr): Turn m4.input into filename. |
| * checks/Makefile.in (dist): Depend on stamp-checks. |
| |
| Portability updates for OS/2. |
| * src/Makefile.in (EXEEXT, OBJEXT): Define. |
| (LINK): Use CFLAGS. |
| (.c.obj): Define. |
| * lib/Makefile.in (OBJEXT): Define. |
| (.c.obj): Define. |
| * doc/Makefile.in (install, uninstall): Install info files into |
| the dir listing. |
| Reported by Andreas Buening. |
| |
| 2006-05-09 Eric Blake <[email protected]> |
| |
| * install-sh: Update to newer upstream version. |
| * mkinstalldirs: Likewise. |
| Reported by Andreas Buening. |
| |
| * src/m4.c (main): Bump copyright year. |
| * Makefile.in (datarootdir): Define, for autoconf 2.59c. |
| * doc/Makefile.in (datarootdir): Likewise. |
| |
| 2006-05-08 Eric Blake <[email protected]> |
| |
| * THANKS: Update. |
| * doc/m4.texinfo (Bugs): Backport bug email address from head. |
| Reported by Stepan Kasal. |
| |
| 2005-12-04 Ilya N. Golubev <[email protected]> (tiny change) |
| |
| * input.c (match_input): Do not pass expression with side effect |
| to `obstack_grow'. Fix <INTERNAL ERROR: Recursive push_string!>. |
| * NEWS: Updated. |
| |
| 2005-12-04 Gary V. Vaughan <[email protected]> (tiny change) |
| |
| * doc/m4.texinfo (How to debug macros and input): s/woould/would/ |
| Reported by Damian Menscher. |
| |
| 2005-10-19 Gary V. Vaughan <[email protected]> (tiny change) |
| |
| * configure.ac (AC_INIT): Bump to 1.4.4a. |
| |
| 2005-10-19 Gary V. Vaughan <[email protected]> (tiny change) |
| |
| Release 1.4.4: |
| * configure.ac (AC_INIT): Bump to 1.4.4. |
| * NEWS: Describe 1.4.4's changes. |
| * INSTALL, install-sh, doc/texinfo.tex: Updated from upstream. |
| |
| 2005-10-17 John Gatewood Ham <[email protected]> (tiny change) |
| |
| * src/m4.c: fix return code when non-existent files are processed |
| |
| 2005-10-17 John Gatewood Ham <[email protected]> (tiny change) |
| |
| * README: update email address for bug reports. |
| |
| 2005-10-17 Gary V. Vaughan <[email protected]> |
| |
| * doc/m4.info: Generated files are not kept in the repository. |
| |
| 2005-05-01 Gary V. Vaughan <[email protected]> |
| |
| The FSF are moving offices today. Changed their contact address |
| in all files from `59 Temple Place, Suite 330, MA 02111-1307' to |
| `51 Franklin Street, Fifth Floor, MA 02110-1301'. |
| |
| Also, some of the files here were never updated from the previous |
| '675 Mass Ave, Cambridge, MA 02139', so changed those to the |
| '51 Franklin Street, Fifth Floor, MA 02110-1301' address too. |
| |
| 2005-03-31 Mike Frysinger <[email protected]> |
| |
| * Makefile.in (bindir, infodir): Substitute from configure rather |
| than hardcode. |
| * doc/Makefile.in (infodir): Ditto. |
| * src/Makefile.in (bindir): Ditto. |
| * NEWS: Updated. |
| |
| 2005-03-31 Gary V. Vaughan <[email protected]> |
| |
| Changes needed to automate the release process for 1.4.3: |
| |
| * Makefile.in (dist): Make .tar.bz2 tarball too. |
| * Makefile.maint (TSDEPS_DIST): Remove m4/libtool.m4. |
| (cvs-news): Look 1 line further down for NEWS release number. |
| (cvs-dist): We don't use automake, so make dist is fine. |
| Remove double . before suffixes. |
| (cvs-release): Don't mention manual.html. |
| (fetch): Get latest gendocs files. |
| (web-manual): Rewritten to use gendoc for multiformat manuals. |
| * doc/gendocs.sh: Don't save an old version in m4 CVS! |
| * doc/m4.texinfo (Index): HFS+ (the file system on my Mac) is case |
| preserving, but case insensitive, so generating html docs per node |
| clashes between Index.html, the node file, and index.html, the |
| top-level of the document tree... |
| (Index macro): ...so renamed to this. Changed all references. |
| |
| 2005-03-31 Gary V. Vaughan <[email protected]> (tiny change) |
| |
| * configure.ac (AC_INIT): Bump to 1.4.3a. |
| |
| 2005-03-31 Gary V. Vaughan <[email protected]> (tiny change) |
| |
| Release 1.4.3: |
| * configure.in (AC_INIT): Bump to 1.4.3. |
| * NEWS: Describe 1.4.3's changes. |
| |
| 2005-03-31 Gary V. Vaughan <[email protected]> |
| |
| * Makefile.maint: New file with release rules, from CVS libtool. |
| * Makefile.in (DISTFILES): Add Makefile.maint. |
| * INSTALL, install-sh, doc/texinfo.tex: Updated to latest |
| canonical versions. |
| |
| 2005-03-31 Eric Blake <[email protected]> (tiny change) |
| |
| * doc/m4.texinfo (Patsubst): Re-add trailing space required by |
| checks/47.patsubst, with a redundant @comment to prevent emacs |
| from removing it accidentally again. |
| * checks/get-them: Allow for trailing spaces tucked behind |
| @comment marks. |
| |
| 2005-03-31 Eric Blake <[email protected]> (tiny change) |
| |
| * doc/Makefile.in (install, uninstall): Accomodate DESTDIR. |
| * src/Makefile.in (install, uninstall): Likewise. |
| |
| 2005-02-07 Gary V. Vaughan <[email protected]> |
| |
| * lib/regex.c, lib/regex.h: Reverted gnulib update, which broke |
| on Cygwin. |
| Reported by Eric Blake. |
| |
| 2005-02-04 Gary V. Vaughan <[email protected]> |
| |
| * lib/regex.c, lib/regex.h: Updated from gnulib. |
| * src/input.c (set_word_regexp): Don't change the word_regexp |
| unless it compiles correctly. |
| * NEWS: Updated. |
| Reported by Frank Schwidom. |
| |
| * Makefile.in (stamp-h): Regenerate config.h properly. |
| |
| 2005-02-03 Gary V. Vaughan <[email protected]> |
| |
| * configure.ac (AC_DEFINE): Fix overquoting of description |
| argument. |
| |
| * src/m4.h (__CYGWIN__, WIN32): Canonicalise Windows and Cygwin |
| recognition macros. |
| * src/freeze.c (produce_frozen_state): Use \n line-endings even |
| on Windows, so that the frozen file reader will work. |
| Reported by Josef T. Burger. |
| |
| * src/m4.c (main): Modernise the --version output. |
| |
| 2005-02-03 Gary V. Vaughan <[email protected]> |
| |
| Modernise the configury a little to prevent spurious errors from |
| Autoconf-2.59's autoreconf: |
| |
| * config.h.in: Renamed to... |
| * config-h.in: ...this to better support DOS 8.3 file systems. |
| * acconfig.h: Removed. |
| * configure.in: Renamed to... |
| * configure.ac: ...this, and AC_DEFINE used to declare config.h |
| entry comments. Slight reorganisation and reformatting. |
| * aclocal.m4: Use third argument to AC_DEFINE to declare config.h |
| entry comments. |
| (AC_INIT): Use a modern 3 argument call. |
| * Makefile.in, checks/Makefile.in, doc/Makefile.in, |
| examples/Makefile.in, lib/Makefile.in, src/Makefile.in: |
| s/PRODUCT/PACKAGE/g. |
| * Makefile.in (DISTFILES): Removed acconfig.h, configure.in, |
| config.h.in. Added configure.ac, config-h.in. |
| (stamp-h.in): Removed acconfig.h from dependencies. |
| (configure): Depends on configure.ac, not configure.in. |
| * doc/Makefile.in (stamp-vti): Ditto. |
| * src/freeze.c (produce_frozen_state), src/m4.c (main): Adjust for |
| difference between PRODUCT="m4" and PACKAGE="GNU M4". |
| * configure: Regenerated. |
| |
| 2005-02-03 Noah Misch <[email protected]> |
| |
| * src/output.c (mkstemp): Make non-static, and build regardless of |
| HAVE_TMPFILE; src/builtin.c also needs this replacement. |
| * NEWS: Update. |
| |
| 2004-09-09 Vincent Lonngren <[email protected]> |
| |
| * configure.in (AC_CHECK_HEADERS): Commit works best when you save |
| changes from your editor buffer first. |
| |
| * configure.in (AC_CHECK_HEADERS): Add signal.h, sys/signal.h. |
| * src/m4.c: And include them as appropriate. |
| * NEWS: Updated. |
| |
| 2004-09-09 Andreas Schwab <[email protected]> |
| |
| Refactoring of the string read case in next_char provides about a |
| 20% speedup of M4 as typically used by autoconf: |
| |
| * src/input.c (next_char_1): Renamed from next_char. |
| (next_char): New macro. |
| * NEWS: Updated. |
| |
| 2004-08-21 Gary V. Vaughan <[email protected]> |
| |
| * configure.in (VERSION): Bump to 1.4.2a. |
| |
| 2004-08-19 Paul Eggert <[email protected]> |
| |
| Release 1.4.2. |
| * configure.in (VERSION): Bump to 1.4.2. |
| * News: Describe 1.4.2's changes. |
| |
| * src/m4.c (reference_error): Preserve errno, since M4ERROR |
| relies on this. |
| * src/builtin.c (m4_esyscmd): Clear errno before calling popen. |
| (m4_maketemp): Clear errno before calling mkstemp. |
| * src/path.c (path_search): Don't let "free" trash errno when |
| returning NULL. |
| * src/output.c (insert_file): Don't assume errno has a valid |
| value simply because fread returns zero. This fixes a |
| portability bug reported by Marion Hakanson in |
| <http://lists.gnu.org/archive/html/bug-m4/2004-07/msg00029.html>. |
| |
| 2004-06-09 Gary V. Vaughan <[email protected]> |
| |
| * configure.in (VERSION): Bump to 1.4.1a. |
| * NEWS: Place holder for next stable release. |
| |
| 2004-06-03 Paul Eggert <[email protected]> |
| |
| Release 1.4.1. |
| * configure.in (VERSION): Bump to 1.4.1. |
| * NEWS: Describe 1.4.1's changes. |
| |
| * aclocal.m4 (fp_PROG_CC_STDC): Use AC_DEFUN, not define, to |
| pacify Autoconf 2.59. |
| |
| * doc/m4.texinfo: Insert commas after @xref's that lack them, |
| to pacify Texinfo 4.7. |
| * doc/Makefile.in (info): Remove info-1, info-2, info-3. |
| |
| * src/m4.h, src/debug.c: Use #ifdef __STDC__, not #if __STDC__, to |
| pacify Sun C compilers. |
| |
| 2003-09-28 Akim Demaille <[email protected]> |
| |
| * src/symtab.c (lookup_symbol): Fix an uninitialized-variable |
| botch. |
| |
| 2003-09-03 Santiago Vila <[email protected]> |
| |
| * examples/stackovf.sh: Use tempfile if available. |
| |
| 2001-04-02 Robert Bihlmeyer <[email protected]> |
| |
| http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=92629 |
| * src/output.c (m4_insert_file): Do not mix buffered and |
| unbuffered I/O, as this breaks on the Hurd. (trivial change) |
| |
| 2001-02-01 Santiago Vila <[email protected]> |
| |
| http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=84451 |
| * src/m4.c (main): Fix format vulnerabilities. (trivial change) |
| |
| 2001-02-01 Matt Kraai <[email protected]> |
| |
| http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=84416 |
| * doc/m4.texinfo (Maketemp): Change maketemp to refer to a new, |
| empty file rather than to a nonexistent file. This closes a common |
| security hole. |
| * src/builtin.c (m4_maketemp): Implement the above, by using |
| mkstemp rather than mktemp. (trivial change) |
| |
| 2000-01-09 Akim Demaille <[email protected]> |
| |
| * src/builtin.c (expand_ranges): Added break after trailing dash. |
| This caused misbehaviors on some systems. |
| |
| Sat Nov 5 15:52:47 1994 François Pinard (pinard@icule) |
| |
| Release 1.4. |
| * doc/Makefile.in (realclean): Also remove stamp-vti. |
| Reported by Eric Backus. |
| |
| Wed Nov 2 00:47:53 1994 François Pinard (pinard@icule) |
| |
| * src/freeze.c (produce_frozen_state): If the frozen file cannot |
| be opened, return immediately after producing the error message. |
| Reported by Andreas Schwab. |
| |
| * configure.in: Check for const only after having found possible |
| ANSIfying compiler flags, this is of no use to check it before. |
| Reported by Alexander Lehmann. |
| |
| Tue Nov 1 22:02:37 1994 François Pinard (pinard@icule) |
| |
| * src/macro.c (collect_arguments): Cast obstack arguments to |
| (voidstar), so avoiding compiler warnings. |
| Reported by Joseph E. Sacco. |
| |
| * src/freeze.c (produce_frozen_state): Cast printed lengths to |
| (int) so they correspond to %d format items. |
| Reported by Joseph E. Sacco. |
| |
| * src/m4.c (main): Cast the argument to xfree to (voidstar). |
| * src/symtab.c (free_symbol): Idem. |
| Reported by Karl Vogel. |
| |
| Mon Oct 31 02:11:19 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in (DISTFILES): Distribute BACKLOG. |
| |
| * configure.in: Define PRODUCT and VERSION. |
| * acconfig.h: Document PRODUCT and VERSION. |
| * src/m4.c, src/freeze.c: Use PRODUCT and VERSION instead of the |
| constant string m4 and variable or parameter named version. |
| |
| Sun Oct 30 08:13:03 1994 François Pinard (pinard@icule) |
| |
| * src/m4.h, src/debug.c: Replace all #ifdef __STDC__ by #if |
| __STDC__. Alliant FX/2800 Concentrix 2.2 (i860-BSD4.3) compiler |
| defines __STDC__ to 0, for indicating it is *not* ANSI! |
| Reported by Kaveh R. Ghazi. |
| |
| * configure.in: Added obsolescent tests for AIX and Minix. |
| |
| * doc/Makefile.in (mostlyclean): Remove texclean in dependencies, |
| which texclean does not exist anymore. |
| Reported by Eric Backus, Jim Meyering, John David Anglin and |
| Joseph E. Sacco. |
| |
| Sat Oct 29 05:10:03 1994 François Pinard (pinard@icule) |
| |
| * aclocal.m4 (fp_C_PROTOTYPES): Force -D_HPUX_SOURCE with -Aa. |
| Reported by John David Anglin. |
| |
| * src/ansi2knr.c: New version, sent by Peter Deutsch. |
| * aclocal.m4 (fp_C_PROTOTYPES): Substitute empty or ansi2knr for |
| ANSI2KNR, depending on the fact the compiler is ANSI or not. |
| * src/Makefile.in: Use -Ovarargs=convert on ansi2knr calls. |
| Remove the sed filter after ansi2knr for debug.c. Use $O instead |
| of $U, put underline in extensions rather than in basenames. Use |
| implicit rules, now that regularity makes this possible. |
| Have $(OBJECTS) depend on $(ANSI2KNR), so to trigger compilation |
| of ansi2knr whenever it is needed. |
| * configure.in: Adjusted for correct STACKOVF substitution. |
| * src/debug.c (trace_format): When not __STDC__, use (...) as a |
| parameter list, so ansi2knr will convert it to (va_alist) va_dcl. |
| Reported by David MacKenzie. |
| |
| * Makefile.in: Remove binprefix. Use transform_name instead. |
| Reported by David MacKenzie. |
| |
| * doc/Makefile.in: Create version.texi, use it, clean it. |
| Reported by Jim Meyering. |
| |
| Fri Oct 28 20:33:55 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in (all, install, uninstall): Depend on Makefile. |
| |
| * Makefile.in: For actions invoking $(MAKE) from within compound |
| sh statements, exit non-zero if the sub-make fails. Otherwise, |
| the top-level make may exit successfully when it should fail. |
| Reported by Jim Kingdon. |
| |
| * {,/*}Makefile.in: Use && after all cd, in case they fail. |
| |
| * {,*/}Makefile.in: Declare PRODUCT and VERSION macros. |
| (dist): Use PRODUCT and VERSION instead of tricks on .fname. |
| * configure.in: Substitute PRODUCT and VERSION. |
| |
| * {,*/}Makefile.in (dist): Always try a hard link before a copy. |
| |
| Thu Oct 27 22:32:58 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in (mostlyclean-local): Do not remove *~. |
| * */Makefile.in (mostlyclean): Idem. |
| Reported by Robert E. Brown and Richard Stallman. |
| |
| Sun Oct 9 08:30:13 1994 François Pinard (pinard@icule) |
| |
| * src/m4.h: Get rid of CONFIG_BROKETS. |
| |
| Sun Oct 2 16:48:10 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Use AC_ARG_PROGRAM. |
| * aclocal.m4 (fp_C_PROTOTYPES): Substitute @kr@ by kr or empty. |
| Reported by David MacKenzie. |
| |
| Sat Oct 1 11:22:42 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Do not add -O to CFLAGS for GNU C, now that |
| configure does it automatically. |
| Reported by Jim Meyering. |
| |
| Fri Sep 23 08:16:58 1994 François Pinard (pinard@icule) |
| |
| * src/stackovf.c: Declare the handler_t typedef earlier in the |
| code, use it for stackovf_handler. |
| (setup_stackovf_trap): Use RETSIGTYPE instead of void while |
| casting sigsegv_handler. |
| Reported by Robert Bernstein. |
| |
| * src/m4.c (main): Initialize program_name to argv[0] without |
| basename'ing it. |
| Reported by Karl Berry. |
| |
| Sun Sep 18 11:42:50 1994 François Pinard (pinard@icule) |
| |
| * src/Makefile.in (TAGS): Include a ../lib/TAGS reference. |
| Reported by Karl Berry. |
| |
| Wed Sep 14 10:00:22 1994 François Pinard (pinard@icule) |
| |
| * lib/Makefile.in (mostlyclean): Added. |
| (TAGS): Make in $(srcdir). |
| |
| * configure.in: Use `choke me' in test, like everywhere! |
| |
| * {doc,examples,lib,src}/Makefile.in (check): Deleted, as |
| unreacheable and useless. |
| |
| * doc/Makefile.in (texclean): Deleted, merged in mostlyclean. |
| |
| * lib/Makefile.in (DISTFILES): Distribute TAGS. |
| (distclean): Do not remove TAGS. |
| (realclean): Remove it. |
| * Makefile.in: Make TAGS in lib also, not just in src. |
| Reported by Karl Berry. |
| |
| * Makefile.in (distclean, realclean): Instead of recursively |
| calling $(MAKE) for the -local part, allow parallel execution of |
| -recursive and -local, only delay the removal of config.status, |
| which is repeated in both goals. |
| |
| Tue Sep 13 19:21:05 1994 François Pinard (pinard@icule) |
| |
| Release 1.3. |
| * Makefile.in: Group all *clean-recursive goals in one, using sed |
| to remove `-recursive' while calling make recursively. Also, use |
| a subshell for each recursive $(MAKE). |
| Reported by Jim Meyering. |
| |
| * src/m4.h (memcpy): Define with bcopy for BSD systems. |
| Reported by Kaveh R. Ghazi. |
| |
| * src/Makefile.in (ansi2knr): Use $(LIBS) while linking, for SunOS |
| 4.1.3 requires -ldl to link even ansik2nr, and we need a way to |
| specify it. |
| |
| * configure.in: Use date instead of touch for stamp-h. |
| * Makefile.in (stamp-h.in): Idem. |
| |
| * Makefile.in (distclean, realclean): Force serial execution of |
| both goals, in case parallel makes are being used. |
| Reported by Jim Meyering. |
| |
| * src/Makefile.in (DISTFILES): Distribute TAGS. |
| (distclean): Do not remove TAGS. |
| (realclean): Remove it. |
| Reported by Karl Berry. |
| |
| Sat Sep 10 12:34:04 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Use fp_ to match aclocal.m4. Revert _OS_ macros |
| to old names, for following Autoconf. |
| |
| Thu Sep 8 15:07:27 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in (MDEFINES): Remove INSTALL substitutions, for |
| ./install.sh will not be correctly referred to in sub-Makefiles. |
| Reported by John David Anglin. |
| |
| * doc/Makefile.in (texclean): Remove *.cps and *.fns too. |
| Reported by Eric Backus. |
| |
| * Makefile.in, checks/Makefile.in, doc/Makefile.in, |
| examples/Makefile.in, lib/Makefile.in, src/Makefile.in: Limit |
| config.status into remaking this directory's Makefile only. |
| * Makefile.in (stamp-h): Do not check nor touch stamp-h. |
| * configure.in (AC_OUTPUT): Touch stamp-h if CONFIG_HEADERS. |
| Reported by Jim Meyering. |
| |
| Tue Sep 6 12:07:33 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Correct stack overflow detection logic, taking |
| care of systems having only incomplete implementations (like for |
| Pyramid 9820 OSx 5.0d). |
| Reported by Kaveh R. Ghazi. |
| |
| * src/Makefile.in (TAGS): Remote -t from etags call. |
| |
| Fri Sep 2 10:37:10 1994 François Pinard (pinard@icule) |
| |
| * lib/Makefile.in (install): Depend on all. |
| |
| Wed Aug 31 11:17:21 1994 François Pinard (pinard@icule) |
| |
| * examples/Makefile.in (mostlyclean): Do not depend on texclean. |
| Reported by Jim Meyering and John David Anglin. |
| |
| * Makefile.in (distclean-local): Delete config.log. |
| Reported by Jim Meyering. |
| |
| Solidify frozen files with respect to -P: |
| * src/m4.c: Have -P set prefix_all_buitins variable instead of |
| calling a function by that name. Declare the variable. |
| * src/m4.h: Adjust declaration for prefix_all_buitins. |
| * src/builtin.c (builtin_init): Merge in functionality from |
| previous prefix_all_buitins function, while making entries in the |
| symbol table, but not modifying the builtin description itself. |
| |
| * src/freeze.c (reload_frozen_state): Add a useless `break;', |
| because *many* compilers do not accept an empty `default:'. |
| Reported by Akiko Matsushita, Eric Backus, John David Anglin, |
| Joseph E. Sacco, Kaveh R. Ghazi, Tom McConnell and Ulrich Drepper. |
| |
| * configure.in: Use AC_TYPE_SIGNAL. |
| * src/stackovf.c (setup_stackovf_trap): Use RETSIGTYPE. |
| Reported by Robert Bernstein. |
| |
| * checks/Makefile.in (check): Modify PATH so check-them will find |
| m4 in the src directory. |
| * Makefile.in (check): Don't. |
| Reported by Akiko Matsushita and Jim Meyering. |
| |
| * src/output.c (make_room_for, output_character_helper): New |
| functions, for implementing a global MAXIMUM_TOTAL_SIZE instead of |
| a per buffer MAXIMUM_BUFFER_SIZE. |
| |
| * src/output.c (output_text): New function, for optimizing the |
| output of strings of characters. Use it. |
| |
| Tue Aug 30 01:44:29 1994 François Pinard (pinard@icule) |
| |
| * doc, src: New directories reorganizing the distribution. |
| * doc/Makefile.in, src/Makefile.in, examples/Makefile.in: New |
| files. |
| * Makefile.in: Adjusted. |
| * configure.in: Configure new Makefiles. |
| |
| * m4.h: Declare STRING typedef. Use it for comment and quote |
| strings, adjusting all references. (This is the rudiments of a |
| beginning for the eventual withdrawal of NUL terminated strings.) |
| * output.c (shipout_text): Accept a length parameter, and use it. |
| All callers adjusted. |
| |
| Mon Aug 29 12:27:19 1994 François Pinard (pinard@icule) |
| |
| * m4.h: Include <unistd.h> if it exists. |
| * stackovf.c: Don't. |
| |
| Clean up for current_diversion variable: |
| * output.c: Move current_diversion from builtin.c. |
| * m4.h: Declare current_diversion so builtin.c can access it. |
| * output.c (output_init, make_diversion): Initialize or update |
| current_diversion. |
| * builtin.c (builtin_init, m4_divert): Leave current_diversion |
| alone. |
| |
| Remove limit on number of diversions: |
| * output.c: Replace ndiversion by diversions, declare it. |
| (output_init): Allocate only diversion 0. |
| (make_diversion): Allocate new diversions as needed. |
| * m4.h, m4.c: Remove NDIVERSIONS and ndiversion related stuff. |
| * m4.c: Still accept -N, but do nothing with it. |
| Reported by David MacKenzie. |
| |
| Freeze diversions: |
| * output.c (freeze_diversions): New function. |
| * m4.h: Declare freeze_diversions. |
| * freeze.c: Document frozen file format, revise it, call |
| freeze_diversions to add diversions to frozen format, and code to |
| reload them properly. |
| * m4.c: Do not undivert automatically at end when status being |
| frozen. Do not call builtin_init when reloading frozen state. |
| |
| Speed up diversion processing: |
| * output.c: Add INITIAL_BUFFER_SIZE, MAXIMUM_BUFFER_SIZE, |
| COPY_BUFFER_SIZE, in-memory diversion buffers, struct diversion |
| structure and variables, cached variables out of output_diversion, |
| reallocate_diversion_for and OUTPUT_CHARACTER. |
| (shipout_text, make_diversion, insert_diversion): Adapted to new |
| structures. |
| (insert_file): Use better buffering. |
| Reported by David MacKenzie. |
| |
| Sun Aug 28 05:20:02 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in, lib/Makefile.in, checks/Makefile.in: Arrange so |
| dist works from another build directory. |
| |
| Sat Aug 27 14:32:45 1994 François Pinard (pinard@icule) |
| |
| * symtab.c (hack_all_symbols): Use hash_table_size instead of |
| constant HASHMAX, for -H option to work better. |
| |
| * builtin.c (DECLARE): Simplify by using _ (). |
| |
| * freeze.c: New file. |
| * Makefile.in: Compile it, distribute it. |
| * m4.c: Recognize, document and process --freeze-state (-F) and |
| --reload-state (-R) options. Pass a true flag to builtin_init |
| only if no reloading some state. |
| * builtin.c (define_builtin): Remove static specifier. |
| (find_builtin_by_name): Remove static specifier. |
| (builtin_init): Accept and obey a flag argument. |
| * m4.h: Add declarations for freeze.c, changes for builtin.c. |
| |
| Wed Aug 24 16:14:19 1994 François Pinard (pinard@icule) |
| |
| * builtin.c (dumpdef_cmp): Rewrite so the cast protect the const |
| specifier. |
| |
| * configure.in: Implement --with-dmalloc. |
| * acconfig.h: Document WITH_DMALLOC. |
| * m4.h: Add code for when WITH_DMALLOC. |
| |
| Mon Aug 15 12:38:05 1994 François Pinard (pinard@icule) |
| |
| * m4.c (long_options): Use "error-output", the dash was missing. |
| Reported by Akiko Matsushita. |
| |
| Fri Aug 12 16:38:01 1994 François Pinard (pinard@icule) |
| |
| * m4.h: Include <sys/types.h>. |
| * builtin.c, debug.c, m4.c, output.c, stackovf.c: Don't. |
| * m4.h: Declare len_lquote and len_rquote as size_t, not int. |
| int. |
| * input.c: Declare len_lquote, len_rquote, len_bcomm and len_ecomm |
| as size_t, not int. |
| * builtin.c (dump_args): Declare len as size_t, not int. |
| |
| * debug.c: Prototype the forward declaration of debug_set_file. |
| |
| * builtin.c (m4_undivert): Replace div by file, for avoiding the |
| shadowing of this variable. |
| * output.c (insert_diversion): Idem. |
| |
| * input.c: Delete def_rquote, def_lquote, def_bcomm and def_ecomm. |
| (input_init): Duplicate default quote and comment strings. |
| (set_quotes): Free previous quote strings in all cases. Duplicate |
| even default quote strings. |
| (set_comment): Free previous comment strings in all cases. |
| Duplicate even default comment strings. |
| |
| * configure.in: Updated for Autoconf 2.0. |
| * Makefile.in (distclean-local): Also delete config.cache. |
| |
| * m4.c (usage): Reorganize the --help output by topic. Include a |
| description for debugging flags. |
| |
| Fri Jul 29 10:15:52 1994 François Pinard (pinard@icule) |
| |
| * configure.in: If sigaction is available and SA_ONSTACK defined, |
| use sigaction. Otherwise, if sigvec is available and SV_ONSTACK |
| defined, use sigvec. Else don't compile stackovf.c. |
| * stackovf.c (setup_stackovf_trap): Idem. |
| Reported by Jim Avera, Karl Berry, Kaveh R. Ghazi, Matthias Rabe |
| and Simon Leinen. |
| |
| Thu Jul 21 22:43:17 1994 François Pinard (pinard@icule) |
| |
| * m4.c (usage): Replace printf par fputs. |
| |
| Mon Jul 18 23:48:23 1994 François Pinard (pinard@icule) |
| |
| * Release 1.2 |
| |
| Sun Jul 17 08:08:25 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Check for sigaction and sigvec. Add a new delayed |
| check for RLIMIT_STACK, combine in the checking for getrlimit. |
| All those things are not universally available. |
| * stackovf.c: Split setting up the trap handler and catching |
| signals, for better taking care of various configure outcomes. |
| * examples/stackovf.sh: Correct a typo. |
| Reported by Eric Backus, Jim Avera and Jim Meyering. |
| |
| Sat Jul 16 20:36:19 1994 François Pinard (pinard@icule) |
| |
| * ansi2knr.c: New version sent by its author, Peter Deutsch. |
| |
| Fri Jul 15 14:36:21 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in: Modify so parallel make will not try making |
| lib/libm4.a twice simultaneously. |
| Reported by Jim Meyering. |
| |
| Thu Jul 14 17:23:17 1994 François Pinard (pinard@icule) |
| |
| * stackovf.c (setup_stackovf_trap): Replace "Don't" by "Do not" in |
| error message, for when no code possibility exists. Even if this |
| line is completely #ifdef'ed out, it brings a syntax error. |
| Reported by Andreas Schwab, Jim Meyering and Joseph E. Sacco. |
| |
| * Makefile.in (install): Have install depend on all too, for lib |
| to be remade as needed. |
| |
| * examples/stackovf.sh: Try ksh, bsh and bash for shells |
| providing ulimit, instead of using only ksh. |
| Reported by Jim Avera and Joseph E. Sacco. |
| |
| Tue Jul 12 06:54:31 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in (check): Have it depend on all instead of m4. In |
| this way, a change in lib will be detected and processed. |
| |
| * builtin.c (numeric_arg): Use strtol and verify the conversion, |
| instead of using sscanf which stops as soon as there is a |
| non-digit in the input. Previously, incr(1xyzzy), eval(1,2xyzzy) |
| and divert(1xyzzy) were all accepted without any warning or error |
| messages. |
| * m4.h: Declare strtol as long if not including stdlib.h. |
| * configure.in: Check for limits.h, and replace strtol if missing. |
| * lib/Makefile.in: Substitute LIBOBJS. Distribute strtol.c. |
| * lib/strtol.c: New file, from elsewhere. |
| Reported by Andreas Schwab. |
| |
| Thu Jul 7 22:38:10 1994 François Pinard (pinard@icule) |
| |
| * macro.c (expand_macro): Cast value to (boolean) prior to |
| assigning it to traced. |
| Reported by Tom McConnell. |
| |
| * Makefile.in (m4): Always make all in lib first. |
| Reported by Jim Meyering. |
| |
| Wed Jul 6 13:16:31 1994 Jim Avera ([email protected]) |
| |
| * stackovf.c: Isolated OS-dependent sections; Improved portability, |
| adding support for SunOS/BSD (sigvec, sigstack, and 4-parameter signal |
| handlers), and a default error message if the fault address is not |
| available (when neither siginfo.h nor BSD sigcontext are supported). |
| * configure.in: Changes for stackovf.h: Check for sigcontext, |
| sigaction, sigstack, and define rlim_t as int if necessary. |
| * acconfig.h: Added HAVE_SIGCONTEXT and rlim_t. |
| * examples/stackovf.sh: Run m4 -L99999999 to allow stack overflow. |
| * ansi2knr.c: Fix for func-ptr args; convert "..." to varargs syntax. |
| |
| Tue Jul 5 19:13:54 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Use AC_SET_MAKE. |
| * Makefile.in: Use @SET_MAKE@. |
| Reported by Jim Meyering. |
| |
| * checks/check-them: Do not trap on SIGQUIT or SIGALRM. |
| Reported by Ian Taylor. |
| |
| Sat Jul 2 00:58:47 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Remove dependency of USE_STACKOVF on STDC_HEADERS, |
| because siginfo.h is unrelated to standard headers, and siginfo.h |
| is already checked for. |
| Reported by Joseph E. Sacco. |
| |
| * acconfig.h, aclocal.m4, m4.h: Replace HAVE_PROTOTYPES by |
| PROTOTYPES. |
| * aclocal.m4, configure.in: Replace AC_HAVE_PROTOTYPES by |
| AC_PROTOTYPES. |
| |
| Wed Jun 29 22:41:53 1994 François Pinard (pinard@icule) |
| |
| * builtin.c (substitute): Use \& to represent this part of the |
| string which was matched by the whole regexp, instead of |
| representing the whole string. Any usage of \0 issues a warning |
| and acts like \&, it will disappear in some subsequent release. |
| |
| Mon Jun 27 14:24:23 1994 François Pinard (pinard@icule) |
| |
| * m4.c: Complete prototype for forwarded declaration of usage. |
| |
| * input.c (init_macro_token): Correct own reference in error |
| message. Previous name get_macro_func was referred to instead. |
| (next_char): Correct own reference in error message. Previous |
| name advance_input was referred to instead. |
| |
| * m4.h: Declare eval_t and unsigned_eval_t typedefs to 32 bits. |
| * eval.c (logical_or_term, logical_and_term, or_term, xor_term, |
| and_term, not_term, logical_not_term, cmp_term, shift_term, |
| add_term, mult_term, exp_term, unary_term, simple_term): Add |
| prototype to forwarded declarations. Declare parameter v1 as |
| eval_t * instead of int *. Same for local variable v2 in dyadic |
| functions. Same for result in exp_term. |
| * builtin.c (m4_eval): Declare value as eval_t instead of int. |
| (ntoa): Declare value as eval_t instead of int. Declare uvalue as |
| unsigned_eval_t instead of unsigned int. Change casts accordingly. |
| (shipout_int): Cast first argument of ntoa to eval_t. |
| Reported by Thorsten Ohl. |
| |
| * macro.c: Complete the prototypes of forwarded expand_macro and |
| expand_token. |
| Reported by Thorsten Ohl. |
| |
| * m4.h: Define voidstar as void * or char * depending on __STDC__. |
| The Ultrix 3.1 compiler cannot do much with void pointers. |
| |
| * builtin.c (dumpdef_cmp): Replace void * by voidstar. |
| * m4.c (xfree): Replace void * by voidstar. |
| Reported by Tom McConnell. |
| |
| * ansi2knr.1: New, from elsewhere. |
| * Makefile.in (DISTFILES): Distribute ansi2knr.1 |
| |
| * Makefile.in (stamp-h.in): Avoid running ./config.status if |
| stamp-h does not exist yet. This avoids running it a second time |
| just after the initial ./configure. |
| Reported by David MacKenzie and Tom McConnell. |
| |
| * m4.h: Replace the enum debug_info declaration with a series of |
| #define's. The Ultrix 3.1 compiler would otherwise need casting |
| (int) to most references, when used in expressions. |
| Reported by Tom McConnell. |
| |
| Sat Jun 25 00:10:05 1994 François Pinard (pinard@icule) |
| |
| * aclocal.m4: Replace FP_PROTOTYPES by AC_HAVE_PROTOTYPES, |
| following an idea from Brook G. Milligan. AC_HAVE_PROTOTYPES |
| calls the compiler. Previously, FP_PROTOTYPES was only calling |
| the preprocessor; by not being subject to CFLAGS, this was |
| discouraging those flags asking for ANSI compilation. |
| * acconfig.h: Document HAVE_PROTOTYPES. |
| * configure.in: Use AC_HAVE_PROTOTYPES instead of FP_PROTOTYPES. |
| * m4.h: Define _() according to HAVE_PROTOTYPES, not __STDC__. |
| Reported by Eric Backus. |
| |
| * configure.in: Substitute CFLAGS and LDFLAGS, taking their value |
| from the environment. Default CFLAGS to -g if not set. |
| * Makefile.in: Have CFLAGS and LDFLAGS substituted from configure. |
| * lib/Makefile.in: Have CFLAGS substituted from configure. |
| Reported by Eric Backus and Tom McConnell. |
| |
| * configure.in: m4_undefine changeword before using AC_ENABLE. |
| |
| * m4.h: Declare prototypes for error (for ANSI compilers only), |
| prefix_all_builtins and reference_error. |
| Reported by Tom McConnell. |
| |
| * input.c (set_word_regexp): Do not try to initialize the array |
| test from a string, this does not work with non-ANSI compilers. |
| Reported by Eric Backus. |
| |
| * Makefile.in (dist): Clean examples/ before saving it. |
| (distclean-local): Also remove stamp-h. |
| Reported by Eric Backus. |
| |
| * Makefile.in (_stackovf.c): Goal for compiling stacokovf.c with |
| non ANSI compilers. |
| Reported by Tom McConnell. |
| |
| * checks/Makefile.in (clean): Depends on mostlyclean. |
| (mostlyclean): New goal. |
| |
| Fri Jun 24 23:30:31 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in (DISTFILES): Distribute install.sh. |
| * install.sh: New file, copied from elsewhere. |
| Reported by Assar Westerlund and Kaveh R. Ghazi. |
| |
| Thu Jun 23 00:00:30 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Define ENABLE_CHANGEWORD if --enable-changeword. |
| * acconfig.h: Explain ENABLE_CHANGEWORD. |
| |
| [These modifs all depend upon ENABLE_CHANGEWORD and are adapted |
| from code provided by Pete Chown] |
| * m4.h: Add original_text field to u_t variant of union u. |
| Declare TOKEN_DATA_FUNC macro. |
| * builtin.c: Declare changeword. |
| (m4_changeword): New function. |
| * input.c: Include "regex.h", define variables with word regexps. |
| (input_init): Initialize the word regexp. |
| (set_word_regexp): New. |
| (next_token): Declare local variables, use the previous code if |
| default_word_regexp is true. Else, match using a new code. Save |
| the original text. |
| * macro.c (expand_token): Ship out original text if not a macro |
| name. |
| Reported by Krste Asanovic and Pete Chown. |
| |
| [These modifs all depend upon ENABLE_CHANGEWORD] |
| * m4.h: Declare external user_word_regexp. |
| * m4.c: Declare user_word_regexp, and initialize it from |
| --word-regexp or -W, or NULL if not specified. |
| * input.c: Use user_word_regexp if specified, instead of |
| DEFAULT_WORD_REGEXP. |
| |
| * Makefile.in (m4): Revert Jan 3 1994 change. I'm unable to |
| agree with it. |
| |
| * Makefile.in, lib/Makefile.in: Limit suffixes to .c and .o. |
| * checks/Makefile.in: Empty the suffix list. |
| Reported by Geoff Russell, Joel Sherrill and Roland McGrath. |
| |
| * m4.c: Declare nesting_limit and initialize it to 250. |
| Implement -LNUMBER or --nesting-limit=NUMBER to change its |
| value. |
| * m4.h: Declare nesting_limit as external. |
| * macro.c (expand_macro): Stop execution whenever nesting limit |
| is exceeded. |
| Reported by Bengt Mertensson. |
| |
| * eval.c (evaluate): Diagnose excess characters in eval input. |
| Things like `eval(08)' used to return 0 with no diagnostic. |
| |
| * m4.h: Capitalize first letter of all macro arguments in |
| definitions. |
| |
| * m4.c: Declare warning_status, initialize it to 0. Add new |
| option -E, or --fatal-warnings, which sets warning_status to |
| EXIT_FAILURE instead. |
| * m4.h: Declare external warning_status. Define EXIT_SUCCESS and |
| EXIT_FAILURE if not otherwise done by header files. |
| * m4.c: Delete declarations for EXIT_SUCCESS and EXIT_FAILURE. |
| * m4.c, input.c, output.c, symtab.c, builtin.c, macro.c, debug.c, |
| eval.c: Replace 0 by warning_status and 1 by EXIT_FAILURE in first |
| argument of all M4ERROR calls. |
| Reported by Noah Friedman. |
| |
| * examples/incl-test.m4: Renamed from incl_test.m4. |
| * examples/include.m4: Include incl-test.m4 instead of |
| incl_test.m4. |
| * examples/multiquotes.m4: Renamed from multi-quotes.m. |
| |
| Wed Jun 22 21:58:54 1994 François Pinard (pinard@icule) |
| |
| * configure.in: Avoid USE_STACKOVF if <siginfo.h> not found. Note |
| that Jim developped stackovf.c on a 486 running SVR4.0 (ESIX), and |
| also tested it on a Sun Sparc workstation running SunOS 4.x. |
| |
| * format.c (format): When not HAVE_EFGCVT, m4 was failing the |
| 49.format check, abusing a `union values' argument with sprintf |
| without selecting the proper field. Now, save the formatting type |
| first, delaying the fetch of the corresponding argument. |
| Reported by Joseph E. Sacco and Tom Quinn. |
| |
| * format.c (format): Remove const from char *fmt declaration when |
| not HAVE_EFGCVT, because a NUL may be forced into it. |
| |
| * m4.h: Declare atof() when not STDC_HEADERS. |
| Reported by Joseph E. Sacco. |
| |
| * Regenerate configure using Autoconf 1.11, this corrects a |
| problem about an incorrect cpp seting on NeXT 3.1. |
| Reported by Alexander Lehmann. |
| |
| Sun Jun 5 16:25:19 1994 François Pinard (pinard@icule) |
| |
| * m4.h (_): Change argument from `x' to `Args'. |
| |
| Wed May 4 23:59:39 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in: Remove all occurrences of $(MFLAGS), which were |
| bringing more evil than good on a few systems. |
| Reported by Greg A. Woods. |
| |
| Fri Apr 22 15:59:35 1994 François Pinard (pinard@icule) |
| |
| * m4.h: Rename Args() to _(). |
| * m4.h: Remove extern specifier from all function declarations. |
| |
| Fri Apr 22 15:51:21 1994 Jim Avera ([email protected]) |
| |
| * stackovf.c: New file implementing stack-overflow detection. |
| * configure.in: Check for getrlimit, sigaction. If all of |
| standard headers, getrlimit and sigaction, define USE_STACKOVF and |
| substitute ${U}stackovf.o for STACKOVF. |
| * acconfig.h: Declare USE_STACKOVF. |
| * Makefile.in: Distribute stackovf.c, link with $(STACKOVF). |
| * m4.h: Declare setup_stackovf_trap(). |
| * m4.c: Call setup_stackovf_trap(). |
| * tests/stackovf_test.sh: New file. |
| |
| Wed Apr 13 14:10:30 1994 François Pinard (pinard@icule) |
| |
| * checks/Makefile.in: Rename .all-stamp to stamp-checks. |
| |
| * Makefile.in (Makefile, etc.): Adapt for Autoconf 1.8. |
| |
| Sun Jan 30 14:24:19 1994 (pinard at icule) |
| |
| * m4.h: Remove definition of volatile, not used anymore. |
| Reported by Jim Meyering and Joseph E. Sacco. |
| |
| * m4.h: Consistently use `do { ... } while (0)' in macros, instead |
| of `if ... else /* nothing */' for if macros. |
| Reported by Jim Meyering. |
| |
| * builtin.c (m4_regexp): Reorganize the code for avoiding a |
| warning from gcc about `repl' possibly used before defined. |
| Reported by Jim Meyering. |
| |
| * m4.h: Avoid a pre-ANSI <memory.h> together with <string.h>. |
| Reported by Jim Meyering. |
| |
| Tue Jan 25 18:39:37 1994 François Pinard (pinard at icule) |
| |
| * m4.h: Move the conditional definition of volatile after the |
| inclusion of system files, because they may define it first. |
| |
| Tue Jan 4 19:46:50 1994 François Pinard (pinard@icule) |
| |
| * checks/Makefile.in (CHECKS): Add a useless `*' before `[', to |
| get around a problem with Alpha make seeing a syntax error, there. |
| Reported by Vern Paxson. |
| |
| Mon Jan 3 00:21:45 1994 François Pinard (pinard@icule) |
| |
| * Makefile.in: Do not define LDFLAGS, use CFLAGS on link calls. |
| Reported by Richard Stallman. |
| |
| Sat Dec 25 08:06:05 1993 François Pinard (pinard@icule) |
| |
| * configure.in: Correct test for strerror, AC_FUNC_CHECK was used |
| instead of AC_HAVE_FUNCS. |
| Reported by Noah Friedman. |
| |
| Wed Dec 1 09:37:53 1993 François Pinard (pinard@icule) |
| |
| * m4.c: Initialize show_help and show_version to zero. |
| |
| * m4.c: Ensure EXIT_SUCCESS and EXIT_FAILURE are defined. |
| Use them in exit() and usage() calls. |
| |
| Sat Nov 27 10:43:24 1993 François Pinard (pinard@icule) |
| |
| * m4.h: Delete extern sys_nerr, sys_errlist declarations, and |
| syserr() macro. Delete errref, add reference_error and M4ERROR. |
| * m4.c: Replace errref, which was returning an input reference |
| string, with reference_error, which prints it on standard error. |
| * builtin.c, output.c: Use errno as second parameter to error, |
| instead of using syserr() with %s. |
| * *.c: Use M4ERROR instead of error: no more errref() with %s. |
| Doing so, the program name appears after the input reference |
| instead of before, which eases M-x next-error processing. |
| |
| Wed Nov 24 22:16:15 1993 François Pinard (pinard@icule) |
| |
| * checks/get-them: Escape braces with backslashes in patterns, |
| because HPUX-9.01 awk needs this. |
| Reported by Jim Meyering. |
| |
| Mon Nov 22 10:55:52 1993 François Pinard (pinard@icule) |
| |
| * builtin.c: Declare "FILE *popen ();". |
| |
| * m4.h: Remove MESSAGE{,1,2}, WARNING1, FATAL{,1}, INTERNAL_ERROR |
| macros, replace error_message_prefix() declaration by errref()'s. |
| Declare xrealloc, for use in errref(). |
| * m4.c: Delete error_message_prefix() function, add errref(). |
| * *.c: Use error() systematically in place of all error macros, |
| now that error() flushes stdout first. Make needed adjustments. |
| |
| * m4.h: Remove const in sys_errlist[] declaration, it creates |
| conflicts on SGI and Alpha. |
| Reported by Kaveh R. Ghazi. |
| |
| Sat Nov 20 08:26:15 1993 François Pinard (pinard@icule) |
| |
| * m4.c: Include <getopt.h> instead of "getopt.h". |
| |
| * configure.in: Output to config.h. Use HAVE_FUNCS preferably. |
| * acconfig.h: New, for documenting HAVE_EFGCVT. |
| * Makefile.in: Distribute acconfig.h, .stamp-h.in and config.h.in, |
| use them wherever appropriate. Also use -I. for compilations. |
| * lib/Makefile.in: Use -I.. for compilations. |
| * *.c: Include <config.h> or "config.h". |
| |
| * m4.h: Test for HAVE_MEMORY_H instead of NEED_MEMORY_H. |
| * configure.in: Use AC_HAVE_HEADERS(memory.h), delete AC_MEMORY_H. |
| |
| Wed Nov 17 09:34:55 1993 François Pinard (pinard@icule) |
| |
| * builtin.c (m4_eval): Cast strlen to (int) before comparing. |
| |
| * input.c (input_init): Initialize quote and comment strings |
| explicitely instead of calling set_quotes and set_comment: by |
| doing so, we ensure we do not free uninitialized variables. |
| |
| * checks/check-them: Reverse arguments to both diff, so the |
| expected is on the left and the obtained on the right. |
| |
| * m4.h: Add MESSAGE{,1,2}, WARNING1, FATAL{,1} and INTERNAL_ERROR |
| macros. Delete declarations for m4error, warning, fatal and |
| internal_error, add declaration for error_message_prefix. |
| * m4.c: Delete m4error, warning, fatal and internal_error |
| routines, add error_message_prefix routine. |
| * *.c: Replace m4error routine calls with MESSAGE* macro calls, |
| warning with WARNING*, fatal with FATAL* and internal_error with |
| INTERNAL_ERROR*. |
| * Makefile.in (_m4.c): Do not adjust ansi2knr output for va_alist, |
| this is not needed anymore. |
| |
| * m4.h: Declare extern FILE *debug. Add DEBUG_PRINT{1,3} and |
| DEBUG_MESSAGE{,1,2} macros. Delete declarations for debug_print |
| and debug_message, add declaration for debug_message_prefix. |
| * debug.c: Remove static specifier for FILE *debug declaration. |
| Delete debug_print and debug_message routines, add |
| debug_message_prefix routine. |
| * builtin.c, debug.c: Replace debug_print routine calls with |
| DEBUG_PRINT* macro calls. |
| * input.c, path.c: Replace debug_message routine calls with |
| DEBUG_MESSAGE* macro calls. |
| |
| * m4.h: Remove inclusion of <varargs.h>. |
| * debug.c: Include <stdarg.h> or <varargs.h>. |
| (trace_format): Use stdarg instead of varargs if __STDC__. |
| |
| * configure.in: Remove checks for vfprintf and _doprnt. These |
| implementations use varargs tricks which are not portable enough. |
| * lib/vfprintf.c: Deleted. |
| * lib/_doprnt.c: Deleted. |
| * lib/Makefile.in: Adjusted accordingly. Remove LIBOBJS. |
| Reported by Joel Sherrill. |
| |
| * path.c (add_include_directory): Use xstrdup. |
| |
| * builtin.c (find_builtin_by_name): Declare static. |
| |
| * *.[ch]: Add const to a few "char *" declarations. |
| |
| * configure.in: Remove commented tests for fileno() and fstat(). |
| * debug.c: Remove comments about HAVE_FILENO and HAVE_FSTAT. |
| |
| * debug.c (debug_flush_files): New. |
| * m4.h: Declares it. |
| * builtin.c (m4_syscmd, m4_esyscmd): Use it. |
| Reported by Nicolas Pioch. |
| |
| Fri Nov 12 10:02:26 1993 François Pinard (pinard@icule) |
| |
| * Makefile.in (m4.dvi): Use m4.texinfo instead of m4.texi. |
| Reported by Joel Sherrill. |
| |
| * builtin.c (prefix_all_builtins): Instead of the table size, use |
| the null entry at end for stopping the loop. It was overwritten. |
| Reported by Andreas Schwab and Jim Meyering. |
| |
| * builtin.c (prefix_all_builtins): Cast xmalloc to (char *). |
| Reported by Kaveh R. Ghazi. |
| |
| * macro.c (call_macro): Add * in (*SYMBOL_FUNC (sym)) (...). |
| Reported by Karl Vogel. |
| |
| Tue Nov 9 09:31:47 1993 François Pinard (pinard@icule) |
| |
| * m4.h: Do not define volatile if already defined. |
| Reported by René Seindal. |
| |
| * lib/Makefile.in: Add a forgotten ALLOCA=@ALLOCA@. Grrr! |
| |
| Reported by Bernhard Daeubler, Eric Backus, Hal Peterson, Hoang |
| Uong, Ian Taylor, Kaveh R. Ghazi, Tom McConnell and Walter Wong. |
| |
| Mon Nov 8 21:11:44 1993 François Pinard (pinard@icule) |
| |
| * m4.h: Define strchr and strrchr in terms of index and rindex, |
| instead of the other way around. |
| * builtin.c, m4.c, path.c: Use strchr instead of index. |
| |
| * input.c (next_char): Remove a "break;" after a "return ...;". |
| Reported by Tom McConnell. |
| |
| Mon Nov 8 12:45:34 1993 François Pinard (pinard@icule) |
| |
| * Release 1.1 |
| |
| * configure.in: Do not copy check files in the build hierarchy. |
| * checks/check-them: Identify the m4 version being checked. For |
| finding m4, look in $PATH instead of in the parent directory. |
| * Makefile.in (check): Prepend `pwd` to $PATH before checking. |
| * checks/Makefile.in (.all-stamp): Always create check files in |
| the source hierarchy, not anymore in the build hierarchy. |
| (check): cd to the source hierarchy before performing checks. |
| Do not copy nor clean COPYING anymore, take it from `..'. |
| Reported by Tom McConnell. |
| |
| * Makefile.in (Makefile): Use $(SHELL). |
| (config.status): Use $(SHELL). Use "config.status --recheck" |
| instead of "configure --no-create", which is obsolete. |
| Reported by Tom McConnell. |
| |
| Fri Nov 5 09:49:30 1993 François Pinard ([email protected]) |
| |
| * m4.c (usage): Use "%s" instead of "m4" in format string. |
| Reported by Jim Meyering. |
| |
| * Makefile.in: Distribute mkinstalldirs. |
| Reported by Pierre Gaumond. |
| Reported by Jim Meyering. |
| Reported by Tom McConnell. |
| Reported by Andreas Gustafsson. |
| |
| * checks/check-them: Renamed from checks/check_them. |
| * checks/get-them: Renamed from checks/get_them. |
| * checks/.all-stamp: Renamed from checks/.all_stamp. |
| * checks/Makefile.in: Changed accordingly. |
| Reported by Jim Meyering. |
| |
| Thu Nov 4 13:50:52 1993 François Pinard ([email protected]) |
| |
| * lib/Makefile.in (dist): Correct permissions on files. |
| |
| * output.c: Declare tmpfile, some systems don't. |
| |
| Wed Nov 3 09:09:16 1993 François Pinard (pinard@icule) |
| |
| * checks/Makefile.in (dist): Correct permissions on files. |
| |
| * Makefile.in (dist): Ensure recursive linking for subdirectory |
| `examples', also set read/write permissions on all its files. |
| |
| * mkinstalldirs: New, from elsewhere. |
| * Makefile.in: Use it. |
| |
| * debug.c: Synchronize debug messages and regular output when |
| the debug file and stdout are redirected to the same file. |
| * configure.in: Add (commented) checks for fileno and fstat. |
| Reported by Jim Avera. |
| |
| * builtin.c (m4_ifelse): Diagnose excess arguments if 5, 8, 11, |
| etc., arguments, then ignore the superfluous one. m4 used to |
| diagnose missing arguments and return the empty string. |
| Reported by Nick S. Kanakakorn. |
| |
| Tue Nov 2 00:55:41 1993 François Pinard (pinard@icule) |
| |
| * m4.c (main): At end of all input, ensure all undiverted text |
| goes to the main output stream. |
| Reported by Andreas Gustafsson. |
| |
| * m4.c (main): exit (0), instead of return 0. |
| |
| * m4.c: Implement -P and --prefix-builtins. |
| * builtin.c: Delete const specifier on builtin_tab. |
| (prefix_all_builtins): New. |
| Reported by Noah Friedman. |
| Reported by Scott Bartram. |
| |
| * c-boxes.el: New, from elsewhere. |
| * Makefile.in: Distribute it. |
| |
| * m4.h: Do not define bcopy if <string.h> defines it. |
| Reported by Stephen Perkins. |
| |
| * builtin.c (define_macro): Allow a missing second argument, in |
| which case it is implied empty. Affects define and pushdef. |
| Reported by Eric Allman. |
| |
| Mon Nov 1 07:45:24 1993 François Pinard (pinard@icule) |
| |
| * m4.h: Add blind_if_no_args in struct builtin, blind_no_args in |
| struct symbol adn SYMBOL_BLIND_NO_ARGS macro. |
| * builtin.c: Initialize all the blindness fields in builtin_tab. |
| (define_builtin): Copy the blindness of a builtin into its symbol. |
| * macro.c (expand_token): Avoid processing a blind builtin if the |
| next character is not an opening parenthesis. |
| Reported by David MacKenzie. |
| Reported by Noah Friedman. |
| |
| * configure.in: Ensure an exit status of 0 on completion. |
| Reported by Vivek P. Singhal. |
| |
| * eval.c (eval_lex): Admit both lower and upper case letters for |
| bases greater than 10. Only lower case letters were accepted. |
| |
| * eval.c (eval_lex): Recognize 0bDIGITS and 0rRADIX:DIGITS syntax. |
| Reported by Krste Asanovic. |
| |
| * eval.c: Rename NOT to LNOT. Add XOR, NOT, LSHIFT and RSHIFT. |
| * eval.c (logical_not_term): New name for not_term. |
| * eval.c (xor_term): New, between or_term and and_term. |
| * eval.c (not_term): New, between and_term and logical_not_term. |
| * eval.c (shift_term): New, between cmp_term and add_term. |
| Reported by Krste Asanovic: ~, ^, <<, >>. |
| Reported by Ben A. Mesander: ** vs ^. |
| |
| * m4.c: Delete xmalloc.c, xrealloc.c, xstrdup.c. |
| * m4.h: Delete xrealloc.c. |
| * lib/xmalloc.c: New, from elsewhere. |
| * lib/xstrdup.c: New, from elsewhere. |
| * lib/Makefile.in: Distribute and compile them. |
| |
| * m4.c: Change progname to program_name. |
| * builtin.c, eval.c, m4.c, m4.h: Rename error to m4error. |
| * lib/error.c: New, from elsewhere. |
| * lib/Makefile.in: Distribute and compile error.c. |
| * configure.in: Check AC_VPRINTF and for strerror. |
| * m4.c: Delete cmd_error. Use error instead. |
| * m4.c: Change label capitalisation to "ERROR", "Warning", etc. |
| |
| * m4.h: Delete #define const, let Autoconf takes care of this. |
| |
| * m4.c: Remove all code conditionalized by IMPLEMENT_M4OPTS. |
| Merge parse_args into main. Declare argv to be `char *const *', |
| then remove superfluous casts. |
| |
| * m4.c: Rename --no-gnu-extensions to --traditional. |
| Reported by Ben A. Mesander. |
| |
| * m4.c (usage): Add a status parameter. Supply one in various |
| calls. Add --help processing. Remove -V for --version. |
| |
| * lib/Makefile.in: Put $(CFLAGS) last in .c.o rule. |
| |
| * lib/Makefile.in: Have an AR=ar declaration. |
| Reported by Eric Backus. |
| Reported by Bjorn R. Bjornsson. |
| Reported by Tom Tromey. |
| Reported by Kristine Lund. |
| Reported by Marion Hakanson. |
| |
| Sat Oct 30 12:51:47 1993 François Pinard (pinard@icule) |
| |
| * Makefile.in (m4.info): Use -I$(srcdir) on $(MAKEINFO). |
| Reported by Noah Friedman. |
| |
| Mon Oct 25 14:58:48 1993 François Pinard (pinard@icule) |
| |
| * Makefile.in: Remove MDEFINES and cleanup. |
| |
| Wed Jun 9 14:59:46 1993 François Pinard (pinard@icule) |
| |
| * Makefile.in (dist): Replace "echo `pwd`" by a mere "pwd". |
| Create a gzip file. |
| |
| Sat Feb 6 14:59:22 1993 François Pinard (pinard@icule) |
| |
| * Makefile.in, lib/Makefile.in, check/Makefile.in: In dist goals, |
| ensure 777 mode for directories, so older tar's will restore file |
| modes properly. |
| |
| Sun Jan 17 15:38:05 1993 François Pinard (pinard@icule) |
| |
| * Makefile.in, lib/Makefile.in: Put $(CFLAGS) after $(CPPFLAGS), |
| so the installer can override automatically configured choices. |
| Reported by Karl Berry. |
| |
| Fri Jan 15 16:07:00 1993 François Pinard (pinard@icule) |
| |
| * lib/vfprintf.c: Stolen from Oleo distribution and adapted. The |
| previous version was not working properly on m68k-hp-bsd4.3. |
| Reported by Roland McGrath. |
| |
| * lib/_doprnt.c: Stolen from Oleo distribution. |
| * configure.in: Check for _doprnt.c if vfprintf.c selected. |
| * lib/Makefile.in: Distribute _doprnt.c. |
| Do not distribute regex.[ch].old anymore. |
| |
| Fri Jan 1 19:42:23 1993 François Pinard (pinard at icule) |
| |
| * Makefile.in, lib/Makefile.in: Reinstate $(CPPFLAGS), use it. |
| Richard wants it there. |
| |
| Sun Dec 27 07:01:54 1992 François Pinard (pinard at icule) |
| |
| * Makefile.in: Add DEFS to MDEFINES. |
| * lib/Makefile.in (.c.o): Remove $(CPPFLAGS). |
| (libm4.a): Remove the library before creating it. |
| (distclean): Remove tags and TAGS too. |
| |
| Wed Dec 23 12:46:55 1992 François Pinard (pinard at icule) |
| |
| * Makefile.in (dvi, m4.dvi): New goals. |
| |
| * builtin.c, eval.c, format.c, input.c, m4.[ch], m4.texinfo, |
| macro.c, output.c, path.c, symtab.c: Change Copyright from |
| 1989-1992 to the explicit enumeration 1989, 1990, 1991, 1992. |
| |
| * examples/divert.m4: Deleted, this bug has been corrected. |
| |
| * Makefile.in (texclean, mostlyclean): New goals. |
| |
| * Makefile.in (clean): Remove clutter from ansi2knr. |
| Reported by Pierre Gaumond. |
| Reported by Greg A. Woods. |
| |
| Sun Dec 20 10:40:20 1992 François Pinard (pinard at icule) |
| |
| * Makefile.in: Remove $(CPPFLAGS) from the .c.o rule. The user |
| might well use CFLAGS is s/he needs it. |
| |
| * Makefile.in: Allow installation of info files from a separate |
| build directory. |
| Reported by Jason Merrill. |
| Reported by David MacKenzie. |
| Reported by Skip Montanaro. |
| Reported by Erez Zadok. |
| Reported by Assar Westerlund. |
| |
| Sat Dec 19 08:21:34 1992 François Pinard (pinard at icule) |
| |
| * Release 1.0.3 |
| This is still a beta release for the future GNU m4 version 1.1. |
| |
| * lib/alloca.c: New, from elsewhere. |
| * lib/Makefile.in: Distribute it. Define and use $(ALLOCA). |
| |
| * m4.h: Do not define index/rindex if already defined. If |
| FALSE/TRUE are already defined, do not redefine them, but merely |
| define boolean typedef to int. |
| |
| * Makefile.in: Use $(DEFS) while compiling ansi2knr. |
| * ansi2knr.c: Rewrite #ifdef HAVE_STRING_H || STDC_HEADERS, |
| because some C compilers do not like connectives with #ifdef. |
| * m4.h: Define `volatile' only if __GNUC__, instead of once for |
| __GNUC__ and once for __STDC__. |
| * lib/regex.h: Leave const alone, AC_CONST will take care of it. |
| |
| * checks/Makefile.in: Use .all_stamp instead of $(CHECKS) for |
| Makefile dependencies. Without it, make keeps destroying and |
| remaking $(CHECKS) in a loop (why?). Distribute .all_stamp. |
| |
| * m4.h, m4.c, builtin.c, output.c: Change all divertion/DIVERTION |
| to diversion/DIVERSION, this was a spelling error. |
| |
| * m4.c: Declare version[], remove #include "version.h". |
| * version.h: Deleted. |
| * Makefile.in: Remove references to version.h. |
| |
| * output.c (shipout_text): Centralize all `#line NUM ["FILE"]' |
| production, by using a simpler and more robust algorithm. This |
| solves the problem of synclines sometimes written in the middle of |
| an output line. Delete sync_line() and output_lines variable. |
| * m4.h: Remove sync_line prototype and output_lines declaration. |
| * input.c (next_char), output.c (shipout_text): Remove references |
| to output_lines. |
| * input.c (push_file, pop_file): Merely put the value -1 in |
| output_current_line instead of calling sync_line, for delaying a |
| single `#line NUM FILE' before next output line. Do not test |
| for sync_output, because this is unnecessary clutter. |
| * output.c (make_divertion, insert_divertion): Idem. |
| * input.c: Rename must_advance_line to start_of_input_line, for |
| consistency. |
| |
| * debug.c (trace_header): Select a new debug line format, which |
| better complies with GNU standards for formatting error messages. |
| With option `-dfl', M-x next-error might be used on the output. |
| * m4.c (vmesg): Adjust format of error output to GNU standards. |
| * m4.texinfo: Adjust examples for `make check' to work. |
| |
| * m4.h, builtin.c, debug.c, input.c, macro.c, path.c: Use upper |
| case for enum debug_info constants, which were all lower case. |
| |
| * builtin.c (m4_regexp, m4_patsubst): Use re_search instead of |
| re_search_2. |
| * lib/regex.[ch]: Use new version from textutils 1.3.6, with some |
| collected patches. I tried a few times using newer regex.[ch], it |
| mysteriously stopped aborting with this one. Insecure feeling... |
| * lib/Makefile.in: Distribute regex.[ch].old, just in case! |
| |
| Fri Dec 18 11:08:03 1992 François Pinard (pinard at icule) |
| |
| * m4.c: Change `--no-warnings' to `--silent'. |
| Reported by David MacKenzie. |
| |
| * m4.c: Put all M4OPTS code upon IMPLEMENT_M4OPTS control, and |
| leave it off for now. See comment in m4.c for justification. |
| Reported by David MacKenzie. |
| |
| * configure.in: Replace AC_USG by AC_HAVE_HEADERS(string.h). |
| * m4.h, ansi2knr.c, lib/regex.h: Replace USG by HAVE_STRING_H. |
| |
| * Makefile.in: Add a new `info' goal. Use macro MAKEINFO. |
| |
| * Makefile.in: Ensure recursive cleaning is done before local |
| cleaning for all clean goals. |
| |
| * builtin.c (ntoa): Ensure the value is always interpreted as a |
| signed quantity, whatever the radix is. |
| |
| Wed Nov 18 07:57:19 1992 Jim Meyering (meyering@idefix) |
| |
| * builtin.c, format.c, input.c: Split long lines. |
| * m4.c: Use typedef macro_definition instead of struct |
| macro_definition. |
| * symtab.c: Use typedef symbol instead of struct symbol. |
| |
| Tue Nov 17 01:58:40 1992 François Pinard (pinard at icule) |
| |
| * *.[ch]: Remove all trailing whitespace, in code and comments. |
| |
| * configure.in: Find some awk. |
| * Makefile.in: Add $(AWK) to MDEFINES. |
| * checks/Makefile.in: Transmit $(AWK) to get_them. |
| * checks/get_them: Use $AWK instead of gawk. Add a close in the |
| awk script when switching files, because without this, mawk runs |
| out of file descriptors. |
| |
| Mon Nov 16 20:42:56 1992 François Pinard (pinard at icule) |
| |
| * Makefile.in (realclean): Delete m4.info*. |
| Reported by Jim Meyering. |
| |
| * Makefile.in: Adjust and link with checks/Makefile. |
| * checks/Makefile.in: New. |
| * configure.in: Output checks/Makefile. |
| |
| * checks/get_them: Have the dnl header of each test more |
| recognizable by next-error, also use a better message. |
| |
| Mon Nov 16 07:48:52 1992 Jim Meyering (meyering@idefix) |
| |
| * m4.h [__GNUC__]: Use __volatile__ instead of `volatile.' |
| And use that only if __GNUC__ since we're using it's GCC-specific |
| semantics that tell the compiler the associated function doesn't |
| return. |
| |
| * builtin.c (substitute): Don't use character as an array index. |
| (dumpdef_cmp): Make formal arguments `const void *' to avoid |
| warnings with gcc -W -Wall on systems with qsort prototype. |
| (m4_errprint): Cast obstack_finish to `char *' to avoid warnings |
| from gcc -W -Wall. |
| |
| * eval.c (most functions): Add parentheses to assignments used |
| as truth values go avoid warnings from gcc -Wall. |
| |
| * input.c, m4.c, output.c, path.c, symtab.c: Declare static |
| any functions that don't need external scope. |
| |
| * builtin.c, debug.c, format.c, m4.c, m4.h, macro.c, symtab.c |
| (many functions and arrays): Declare `const'. |
| |
| Sun Nov 15 09:42:09 1992 François Pinard (pinard at icule) |
| |
| * *.[ch]: Rename nil to NULL, using the declaration from <stdio.h>, |
| removing the declaration from m4.h. Also rename false to FALSE |
| and true to TRUE. |
| |
| * lib/Makefile.in (Makefile): New goal. |
| |
| * Makefile.in, lib/Makefile.in: Add a .c.o rule, so CFLAGS is not |
| so heavily loaded. It gets more easily overridable, calling make. |
| Reported by Jim Meyering. |
| |
| * Makefile.in (dist): Get .fname from the current directory name, |
| instead of from version.h. I need updating many files manually, |
| when the version changes, version.h is just one of them. |
| |
| Sat Nov 14 11:01:20 1992 François Pinard (pinard at icule) |
| |
| * m4.h: Remove the tag `boolean' on the enum introducing typedef |
| `boolean'. This tag conflicts with <sys/types.h> on SVR4. |
| Reported by Tom McConnell. |
| |
| Fri Nov 13 00:12:50 1992 François Pinard (pinard at icule) |
| |
| * m4.texinfo: Correct the examples for 33.divert, 38.divnum, |
| 39.cleardiv, which were describing missing or spurious newlines. |
| Modify examples 52.eval, 53.esyscmd and 54.sysval so the results |
| do not depend on machine word size, `/bin/false' implementation, |
| or `wc' output format. `make check' is more dependable, now. |
| |
| * checks/check_them: Summarize the failed tests by listing their |
| name, at end. If none, issue `All checks successful'. Output |
| `Checking' instead of `Input file:'. |
| |
| * checks/get_them, checks/check_them: Reindented. |
| |
| * Makefile.in (dist): chmod a+r before making the tar file. |
| |
| Thu Nov 12 14:42:57 1992 François Pinard (pinard at icule) |
| |
| * builtin.c (m4_dnl): Diagnose any parameter to `dnl'. |
| |
| * input.c (next_token): Reinitialize token_buttom just after using |
| it as a watermark with obstack_free. Or else, a future token, big |
| enough for triggering reallocation of the obstack chunk, could |
| void the initialized value of token_buttom, later causing panic in |
| obstack_free. Rename token_buttom to token_bottom everywhere. |
| |
| * m4.h: Before declaring errno, first include <errno.h> and |
| ensure that it does not define errno. |
| Reported by Richard Stallman. |
| |
| Wed Nov 11 17:40:35 1992 François Pinard (pinard at icule) |
| |
| * builtin.c: Define and use DECLARE macro for builtins. |
| |
| * builtin.c (m4_ifelse): Avoid any diagnostic when exactly one |
| argument, this is a common idiom for introducing long comments. |
| |
| * builtin.c (m4_ifelse): If 3n + 2 arguments, diagnose missing |
| arguments. The last argument was silently ignored. |
| |
| * m4.c (cmd_error): Add a missing semicolon before va_end(). |
| |
| Tue Nov 10 08:57:05 1992 François Pinard (pinard at icule) |
| |
| * Makefile.in: Now handle protoized sources. Define and use U. |
| Compile and use ansi2knr with old compilers. Update DISTFILES. |
| Add `aclocal.m4' to `configure' dependencies. |
| * ansi2knr.c: New, from Ghostscript distribution. |
| * configure.in: Define U through FP_PROTOTYPES for old compilers. |
| Add AC_ISC_POSIX, AC_CONST, AC_SIZE_T. |
| * aclocal.m4: New, provide FP_PROTOTYPES. |
| * m4.h: Conditionnaly protoized through Args, save for varags. |
| * builtin.c: Protoized. Then: |
| Include <sys/types.h> if size_t is not defined, before "regex.h". |
| (m4_ifelse): Fetch built-in name properly for diagnostic. |
| (m4_dumpdef): Remove wrong (char *) cast calling dump_symbol. |
| (m4_regexp): Add const to `msg' declaration. |
| (m4_patsubst): Add const to `msg' declaration. |
| * debug.c: Protoized, save for varargs. |
| * eval.c: Protoized. |
| * format.c: Protoized. |
| * input.c: Protoized. |
| * m4.c: Protoized, save for varargs. Then: |
| (xfree): Accept void * instead of char *. |
| (xmalloc): Return void * instead of char *. |
| (xrealloc): Accept and return void * instead of char *. |
| * macro.c: Protoized. |
| * output.c: Protoized. |
| * path.c: Protoized. Then cast some (char *) over xmalloc's. |
| * symtab.c: Protoized. |
| |
| Fri Nov 6 02:05:21 1992 François Pinard (pinard at icule) |
| |
| * m4.texinfo: Remove directory from diagnostics in 30.include, |
| 51.eval, 56.errprint and 57.m4exit tests. |
| |
| * m4.h: Remove declarations for int or void system functions, they |
| cause more conflicting trouble than they make good. |
| |
| * configure.in: Avoid configuration header file. Add some tests. |
| * m4.h: Remove #include "config.h". |
| * Makefile.in, lib/Makefile.in: Implement Autoconf interface. |
| Then, rewritten for better compliance with GNU standards. |
| |
| Thu Nov 5 12:37:13 1992 François Pinard (pinard at icule) |
| |
| * format.c (format): Avoid syntax error if not HAVE_EFGCVT, |
| because of a misplaced #endif. |
| |
| * Many *.[hc] files: Correct intra-line spacing here and there, |
| according to GNU indent 1.6 advice. |
| |
| * configure.in: New, using Autoconf 1.2. |
| * m4.h: Reverse NO_MEMORY_H to NEED_MEMORY_H. |
| * Delete old configure.in, configure, etc/configure.in, |
| etc/configure, lib/configure.in, lib/configure and config/*. |
| Reported by Jason Merrill. |
| |
| * symtab.c (hash): Change (char) NULL to '\0'. |
| Reported by Jason Merrill. |
| |
| * Delete .vers, etc/newdist.sh, etc/newvers.sh and |
| etc/nextvers.sh. Release numbers will be edited `by hand'. |
| * version.h: De-automatize, force value in. |
| |
| * m4.c: Changes in order to use a newer getopt.h. |
| Reported by David MacKenzie. |
| |
| * checks/: New name for examples/. |
| * checks/get_them: New location for etc/get_examples. |
| * checks/check_them: New location for etc/check_examples. |
| * Makefile.in, checks/get_them, checks/check_them: Adjust. |
| * lib/vfprintf.c: New location for etc/vfprintf.c. |
| * Delete empty etc/. |
| * examples/: New name for test/. |
| |
| Tue Mar 10 00:29:46 1992 François Pinard (pinard at icule) |
| |
| * Makefile.in (check): Add m4 as dependency. |
| |
| * m4.c: Accept --no-warnings instead of --no_warnings, and |
| --no-gnu-extensions instead of --no_gnu_extensions. Make the |
| usage message more informative. |
| Reported by David MacKenzie. |
| |
| Mon Mar 9 14:53:40 1992 François Pinard (pinard at icule) |
| |
| * etc/check_examples: New name for check_examples.sh. |
| * etc/get_examples: New name for get_examples.sh. |
| * Makefile.in, etc/Makefile.in: Use new names. |
| |
| * Makefile.in: Transmit $(CC) while making in lib. |
| |
| * Many *.[hc] files: GNU indent'ed, with further fine tuning of |
| code disposition by hand. |
| |
| Sun Mar 8 11:01:55 1992 François Pinard (pinard at icule) |
| |
| * m4.h: Delete definitions for abort() and exit(). |
| Reported by Richard Stallman. |
| |
| * config/hmake-unicos, config/s-unicos.h: New files. |
| Reported by Hal Peterson. |
| |
| * eval.c (exp_term): Have N^0 return 1. |
| Reported by Michael Fetterman. |
| |
| * eval.c, input.c, m4.h: Remove last comma in enums. |
| Reported by Mike Lijewski. |
| |
| * Transfer of maintenance duties from Rene' to Franc,ois. |
| |
| Thu Oct 24 15:18:46 1991 René Seindal (seindal at diku.dk) |
| |
| * Release 1.0. Many thanks to those, who provided me with bug |
| reports and feedback. |
| |
| * Uses GNU configure, taken from the gdb distribution. |
| |
| * Uses GNU getopt(), with long option names. |
| |
| * The -Q/+quiet option is added, which suppresses warnings about |
| missing or superflous arguments to built-in macros. |
| |
| * Added default options via the M4OPTS environment variable. |
| |
| * The built-in format can now be configured to use sprintf as |
| the formatting engine, for systems without [efg]cvt(3). |
| |
| * GNU library code is moved to the ./lib subdirectory; other |
| utility files are now in ./etc. |
| |
| * Several minor bugs have been fixed. |
| |
| Fri Jul 26 15:28:42 1991 René Seindal (seindal at diku.dk) |
| |
| * Fixed various bugs. Release 0.99, manual 0.09. Many thanks to |
| François Pinard and Roland H. Pesch for providing me with reports. |
| |
| * The builtins incr and decr are now implemented without use of |
| eval. |
| |
| * The builtin indir is added, to allow for indirect macro calls |
| (allows use of "illegal" macro names). |
| |
| * The debugging and tracing facilities has been enhanced |
| considerably. See the manual for details. |
| |
| * The -tMACRO option is added, marks MACRO for tracing as soon |
| as it is defined. |
| |
| * Builtins are traced after renaming iff they were before. |
| |
| * Named files can now be undiverted. |
| |
| * The -Nnum option can be used to increase the number of |
| divertions available. |
| |
| * Calling changecom without arguments now disables all comment |
| handling. |
| |
| * The function m4_patsubst() is now consistently declared |
| static. |
| |
| * A bug in dnl is fixed. |
| |
| * A bug in the multi-character quoting code is fixed. |
| |
| * Several typos in the manual has been corrected. More probably |
| persist. |
| |
| * The m4.info file is now installed along with the program. |
| |
| Thu Nov 15 21:51:06 1990 René Seindal (seindal at diku.dk) |
| |
| * Updated and enhanced version. Release 0.75, manual 0.07. |
| |
| * Implemented search path for include files (-I option and |
| M4PATH envronment variable). |
| |
| * Implemented builtin "format" for printf-like formatting. |
| |
| * Implemented builtin "regexp" for searching for regular |
| expressions. |
| |
| * Implemented builtin "patsubst" for substitution with regular |
| expressions. |
| |
| * Implemented builtin "esyscmd", which expands to a shell |
| commands output. |
| |
| * Implemented "__file__" and "__line__" for use in error |
| messages. |
| |
| * Implemented character ranges in "translit". |
| |
| * Implemented control over debugging output. |
| |
| * Implemented multi-character quotes. |
| |
| * Implemented multi-character comment delimiters. |
| |
| * Changed predefined macro "gnu" to "__gnu__". |
| |
| * Changed predefined macro "unix" to "__unix__", when the -G |
| option is not used. With -G, "unix" is still defined. |
| |
| * Changed "shift", "$@" and "$*" to not insert spaces afters |
| commas. |
| |
| * Added program name to error messages. |
| |
| * Fixed two missing null bytes bugs. |
| |
| Mon Jan 22 21:08:52 1990 René Seindal (seindal at diku.dk) |
| |
| * Initial beta release. Release 0.50, manual 0.05. |
| |
| ----- |
| |
| Local Variables: |
| coding: utf-8 |
| End: |
| |
| Copyright (C) 1990-1994, 2000-2001, 2003, 2005-2014, 2016-2017, |
| 2020-2021 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without |
| modification, are permitted provided the copyright notice |
| and this notice are preserved. |