| 1 | 2006-11-20  Eric Blake  <ebb9@byu.net> | 
|---|
| 2 |  | 
|---|
| 3 | Release 1.4.8: | 
|---|
| 4 |  | 
|---|
| 5 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 6 | * NEWS: Describe changes since 1.4.7. | 
|---|
| 7 |  | 
|---|
| 8 | 2006-11-16  Eric Blake  <ebb9@byu.net> | 
|---|
| 9 |  | 
|---|
| 10 | * doc/m4.texinfo (Include, Search Path, Diversions, Divert): | 
|---|
| 11 | Minor tweaks noticed while porting to head. | 
|---|
| 12 |  | 
|---|
| 13 | 2006-11-14  Eric Blake  <ebb9@byu.net> | 
|---|
| 14 |  | 
|---|
| 15 | * src/output.c (cleanup_tmpfile, freeze_diversions): Clean up | 
|---|
| 16 | spent iterators. | 
|---|
| 17 | (m4_tmpname): Avoid memory leak. | 
|---|
| 18 |  | 
|---|
| 19 | 2006-11-13  Eric Blake  <ebb9@byu.net> | 
|---|
| 20 |  | 
|---|
| 21 | * src/output.c (cleanup_tmpfile): Avoid double error message when | 
|---|
| 22 | umask is prohibitive. | 
|---|
| 23 | (m4_tmpname, m4_tmpopen, m4_tmpclose, m4_tmpremove): New | 
|---|
| 24 | functions. | 
|---|
| 25 | (m4_tmpfile): Add parameter, move cloexec action here. | 
|---|
| 26 | (make_room_for): Adjust caller.  Don't keep too many files open. | 
|---|
| 27 | (insert_diversion_helper): Unlink emptied temp files. | 
|---|
| 28 | (make_diversion): Don't keep too many files open. | 
|---|
| 29 | * doc/m4.texinfo (Diversions): Tweak wording, now that open file | 
|---|
| 30 | descriptors are no longer a limiting factor. | 
|---|
| 31 | * NEWS: Document this change. | 
|---|
| 32 |  | 
|---|
| 33 | Backport sparse diversion handling from head. | 
|---|
| 34 | * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import | 
|---|
| 35 | avltree-oset'. | 
|---|
| 36 | * src/output.c (struct m4_diversion): Rename from struct | 
|---|
| 37 | diversion, and update members.  All users changed. | 
|---|
| 38 | (diversion_table): Change to an ordered set, instead of an array. | 
|---|
| 39 | (div0): New storage for diversion 0. | 
|---|
| 40 | (diversions): No longer needed. | 
|---|
| 41 | (free_list): New list to allow recycling diversion storage. | 
|---|
| 42 | (diversion_storage): New storage to reduce malloc overhead. | 
|---|
| 43 | (cmp_diversion_CB, threshold_diversion_CB): New callbacks. | 
|---|
| 44 | (output_init, output_exit, cleanup_tmpfile, make_room_for) | 
|---|
| 45 | (make_diversion): Handle new diversion storage scheme. | 
|---|
| 46 | (insert_diversion_helper): New function. | 
|---|
| 47 | (insert_diversion, undivert_all, freeze_diversions): Use it. | 
|---|
| 48 | * doc/m4.texinfo (Divert, Diversions): Move hidden test of memory | 
|---|
| 49 | exhaustion to visible test of large diversion numbers. | 
|---|
| 50 | * NEWS: Document this fix. | 
|---|
| 51 |  | 
|---|
| 52 | 2006-11-11  Eric Blake  <ebb9@byu.net> | 
|---|
| 53 |  | 
|---|
| 54 | * src/builtin.c (m4_translit): Slight optimization. | 
|---|
| 55 |  | 
|---|
| 56 | * src/m4.h (to_uchar): Depend on HAVE_INLINE. | 
|---|
| 57 |  | 
|---|
| 58 | * src/builtin.c: Remove unnecessary casts. | 
|---|
| 59 | (expand_ranges): Make 8-bit clean. | 
|---|
| 60 | * doc/m4.texinfo (Translit): Add tests and wording. | 
|---|
| 61 | * NEWS: Document this fix. | 
|---|
| 62 |  | 
|---|
| 63 | 2006-11-07  Eric Blake  <ebb9@byu.net> | 
|---|
| 64 |  | 
|---|
| 65 | * src/m4.h (output_exit): New prototype. | 
|---|
| 66 | * src/m4.c (main): Use it. | 
|---|
| 67 | * src/output.c (cleanup_tmpfile): Close files before removing | 
|---|
| 68 | directory. | 
|---|
| 69 | (insert_diversion): Check for failure. | 
|---|
| 70 | (output_exit): Avoid memory leak. | 
|---|
| 71 | * doc/m4.texinfo (Diversions): Test this bug. | 
|---|
| 72 |  | 
|---|
| 73 | * doc/m4.texinfo (Esyscmd, Errprint): Minor touchups. | 
|---|
| 74 |  | 
|---|
| 75 | 2006-11-01  Eric Blake  <ebb9@byu.net> | 
|---|
| 76 |  | 
|---|
| 77 | Allow C++ compilation on Linux, as a safety measure in type | 
|---|
| 78 | checking. | 
|---|
| 79 | * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import | 
|---|
| 80 | stdbool'. | 
|---|
| 81 | * src/m4.h (hack_symbol, hack_all_symbols): Use full prototype. | 
|---|
| 82 | (boolean): Kill this, and use stdbool.h instead. | 
|---|
| 83 | * src/debug.c, src/eval.c, src/input.c, src/macro.c, src/m4.c: | 
|---|
| 84 | * src/output.c, src/symtab.c: All users changed. | 
|---|
| 85 | * src/symtab.c (hack_all_symbols): Update prototype. | 
|---|
| 86 | * src/builtin.c (dump_symbol, set_trace): Update signature. | 
|---|
| 87 | (m4_dumpdef, m4_traceon, m4_traceoff): Update callers. | 
|---|
| 88 | (mkstemp_helper, m4_m4wrap, expand_ranges, m4_translit): Allow | 
|---|
| 89 | C++ compilation. | 
|---|
| 90 | * src/debug.c (trace_flush): Likewise. | 
|---|
| 91 | * src/freeze.c (reload_frozen_state): Likewise. | 
|---|
| 92 | * src/input.c (push_file, push_string_finish, push_wrapup): | 
|---|
| 93 | (token_bottom, next_token): Likewise. | 
|---|
| 94 | * src/m4.c (main): Likewise. | 
|---|
| 95 |  | 
|---|
| 96 | * doc/m4.texinfo (Invoking m4): Update according to POSIX 200x | 
|---|
| 97 | draft wording. | 
|---|
| 98 | * src/m4.h (m4_path_search): Tweak signature. | 
|---|
| 99 | * src/path.c (m4_path_search): Likewise. | 
|---|
| 100 | * src/builtin.c (include): Update caller. | 
|---|
| 101 | * src/m4.c (main): Allow -D, -U, -t, and -s to be interspersed | 
|---|
| 102 | with file names.  Don't write to **argv. | 
|---|
| 103 | (process_file): New helper method. | 
|---|
| 104 | * NEWS: Document this fix. | 
|---|
| 105 |  | 
|---|
| 106 | 2006-10-31  Eric Blake  <ebb9@byu.net> | 
|---|
| 107 |  | 
|---|
| 108 | * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import strstr'. | 
|---|
| 109 | * doc/m4.texinfo (Translit): Improve the documentation. | 
|---|
| 110 | * src/builtin.c (m4_translit): Optimize to O(n) instead of O(n^2) | 
|---|
| 111 | algorithm. | 
|---|
| 112 | (m4_index): Simplify, and speed up slightly. | 
|---|
| 113 | * NEWS: Document this fix. | 
|---|
| 114 |  | 
|---|
| 115 | 2006-10-28  Eric Blake  <ebb9@byu.net> | 
|---|
| 116 |  | 
|---|
| 117 | * src/input.c (set_quotes): Don't allow empty end-quote with | 
|---|
| 118 | non-empty start-quote. | 
|---|
| 119 | (set_comment): Likewise for end-comment. | 
|---|
| 120 | * src/builtin.c (m4_changecom): Adjust caller. | 
|---|
| 121 | * doc/m4.texinfo (Changequote, Changecom): Update documentation to | 
|---|
| 122 | match behavior. | 
|---|
| 123 | (Incompatibilities): Document another POSIX bug. | 
|---|
| 124 | * NEWS: Mention this change. | 
|---|
| 125 |  | 
|---|
| 126 | 2006-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> | 
|---|
| 127 |  | 
|---|
| 128 | * examples/Makefile.am (EXTRA_DIST): Distribute recently-added | 
|---|
| 129 | files. | 
|---|
| 130 |  | 
|---|
| 131 | 2006-10-26  Eric Blake  <ebb9@byu.net> | 
|---|
| 132 |  | 
|---|
| 133 | Silence -Wwrite-strings -Wpointer-arith warnings. | 
|---|
| 134 | * src/builtin.c (define_user_macro): Allow NULL argument. | 
|---|
| 135 | (m4_builtin, m4_indir): Cast away const of "". | 
|---|
| 136 | * src/format.c (format): Likewise. | 
|---|
| 137 | * src/macro.c (collect_arguments): Likewise. | 
|---|
| 138 | (expand_macro): Avoid math on void*. | 
|---|
| 139 | * src/m4.c (main): Adjust caller. | 
|---|
| 140 | * src/output.c (freeze_diversions): Detect off_t overflow. | 
|---|
| 141 |  | 
|---|
| 142 | * src/input.c (pop_input): Remove unnecessary code. | 
|---|
| 143 |  | 
|---|
| 144 | 2006-10-25  Eric Blake  <ebb9@byu.net> | 
|---|
| 145 |  | 
|---|
| 146 | * src/symtab.c (symtab_init): Avoid size_t overflow. | 
|---|
| 147 | * src/output.c (make_diversion): Avoid size_t overflow. | 
|---|
| 148 | * doc/m4.texinfo (Diversions): Test this fix. | 
|---|
| 149 | * src/input.c (input_block): Remove unused member.  Reduce size | 
|---|
| 150 | of struct. | 
|---|
| 151 | (push_file, pop_input): Avoid useless assignment. | 
|---|
| 152 | * NEWS: Document the bug fix. | 
|---|
| 153 |  | 
|---|
| 154 | Redo location tracking.  Instead of having just files track the | 
|---|
| 155 | line to return to when popping input, now all input blocks track | 
|---|
| 156 | their current line. | 
|---|
| 157 | * src/input.c (INPUT_STRING_WRAP, INPUT_FILE_INIT): No longer | 
|---|
| 158 | needed. | 
|---|
| 159 | (input_block): Have line and file storage for all input types, and | 
|---|
| 160 | rename some members. | 
|---|
| 161 | (input_change): New global flag. | 
|---|
| 162 | (push_file, push_macro, push_string_init, push_wrapup): Store | 
|---|
| 163 | location. | 
|---|
| 164 | (push_string_finish, pop_input, pop_wrapup): Notice changes in | 
|---|
| 165 | input blocks. | 
|---|
| 166 | (peek_input): Adjust to new member names. | 
|---|
| 167 | (next_char, next_char1): Adjust location if needed. | 
|---|
| 168 | (skip_line): Simplify restoring location. | 
|---|
| 169 | * doc/m4.texinfo (Location): Augment the test to catch line | 
|---|
| 170 | location of expansion of multi-line arguments. | 
|---|
| 171 | Reported by Stepan Kasal. | 
|---|
| 172 |  | 
|---|
| 173 | 2006-10-23  Eric Blake  <ebb9@byu.net> | 
|---|
| 174 |  | 
|---|
| 175 | * doc/m4.texinfo (Macro Arguments): Document that leading space | 
|---|
| 176 | in argument collection stops at macro expansion. | 
|---|
| 177 | (Incompatibilities): Document POSIX whitespace wording issue. | 
|---|
| 178 |  | 
|---|
| 179 | 2006-10-20  Eric Blake  <ebb9@byu.net> | 
|---|
| 180 |  | 
|---|
| 181 | * doc/m4.texinfo: Trailing '@comment' doesn't format nicely in | 
|---|
| 182 | TeX, so recognize '@w{ }' instead.  Likewise, @code{_name} at the | 
|---|
| 183 | end of a TeX line splits incorrectly. | 
|---|
| 184 | (Foreach, Improved foreach): Write these sections, borrowing ideas | 
|---|
| 185 | from CVS head and from m4sugar. | 
|---|
| 186 | * checks/get-them: Accomodate new way to show trailing space in | 
|---|
| 187 | examples. | 
|---|
| 188 | * examples/foreach.m4: Make usable in documentation. | 
|---|
| 189 | * examples/foreachq.m4: New file. | 
|---|
| 190 | * examples/foreachq2.m4: New file. | 
|---|
| 191 | * examples/foreach2.m4: New file. | 
|---|
| 192 | * NEWS: Document the documentation updates. | 
|---|
| 193 |  | 
|---|
| 194 | 2006-10-19  Eric Blake  <ebb9@byu.net> | 
|---|
| 195 |  | 
|---|
| 196 | * src/builtin.c (mkstemp_helper, m4_mkstemp): New functions. | 
|---|
| 197 | (m4_maketemp): Provide traditional behavior. | 
|---|
| 198 | * doc/m4.texinfo (Mkstemp): Rename from Maketemp.  Document the | 
|---|
| 199 | new `mkstemp' macro and the flaws of the old `maketemp'. | 
|---|
| 200 | (Incompatibilities): Move maketemp discussion to... | 
|---|
| 201 | (Extensions): ...here, since -G now supresses the GNU extension. | 
|---|
| 202 | * NEWS: Document this. | 
|---|
| 203 |  | 
|---|
| 204 | * examples/forloop.m4: Simplify. | 
|---|
| 205 | * examples/forloop2.m4: New file. | 
|---|
| 206 | * examples/quote.m4: New file. | 
|---|
| 207 | * doc/m4.texinfo (Loops): Rename to... | 
|---|
| 208 | (Shift): ...this node. | 
|---|
| 209 | (Forloop, Foreach, Improved forloop, Improved foreach): New | 
|---|
| 210 | nodes. | 
|---|
| 211 |  | 
|---|
| 212 | 2006-10-17  Eric Blake  <ebb9@byu.net> | 
|---|
| 213 |  | 
|---|
| 214 | * m4/gnulib-cache.m4: Update with 'gnulib-tool --import | 
|---|
| 215 | config-h'. | 
|---|
| 216 | * configure.ac (AC_CONFIG_HEADERS): Create config.h alongside | 
|---|
| 217 | gnulib headers, rather than in top directory. | 
|---|
| 218 | * src/Makefile.am (AUTOMAKE_OPTIONS): Add nostdinc, to reduce make | 
|---|
| 219 | output clutter. | 
|---|
| 220 |  | 
|---|
| 221 | 2006-10-16  Eric Blake  <ebb9@byu.net> | 
|---|
| 222 |  | 
|---|
| 223 | * doc/m4.texinfo: Backport some minor cleanups from head. | 
|---|
| 224 | (Cleardivert): Rename from cleardiv. | 
|---|
| 225 |  | 
|---|
| 226 | * doc/m4.texinfo (Invoking m4): Promote to a chapter, instead of | 
|---|
| 227 | a section of Preliminaries. | 
|---|
| 228 | (Operation modes, Preprocessor features, Limits control) | 
|---|
| 229 | (Frozen state, Debugging options, Command line files): Subdivide | 
|---|
| 230 | into new sections. | 
|---|
| 231 | (Input processing, Quoting Arguments, Define, Arguments) | 
|---|
| 232 | (Cleardiv, Format, M4exit): Fix grammar of references. | 
|---|
| 233 | (Inhibiting Invocation, Macro Arguments, Builtin, Trace) | 
|---|
| 234 | (Debug Levels, Debug Output, Include, Search Path, Divert) | 
|---|
| 235 | (Platform macros, Syscmd, Location, Extensions): Point to new | 
|---|
| 236 | sections. | 
|---|
| 237 | (Top, Loops, Include, Undivert, Location, Incompatibilities): | 
|---|
| 238 | Improve file references. | 
|---|
| 239 |  | 
|---|
| 240 | 2006-10-14  Eric Blake  <ebb9@byu.net> | 
|---|
| 241 |  | 
|---|
| 242 | * m4/input.c (file_clean): Don't close stdin twice, POSIX says it | 
|---|
| 243 | is not portable. | 
|---|
| 244 | Reported by Ralf Wildenhues. | 
|---|
| 245 |  | 
|---|
| 246 | * src/builtin.c (m4_undivert): Check for read error. | 
|---|
| 247 |  | 
|---|
| 248 | 2006-10-13  Eric Blake  <ebb9@byu.net> | 
|---|
| 249 |  | 
|---|
| 250 | * src/m4.h (UNIX, W32_NATIVE, OS2): Move platform checks after | 
|---|
| 251 | header files are included, since <unistd.h> can affect the tests. | 
|---|
| 252 | * THANKS: Updated. | 
|---|
| 253 | Reported by Martin Koeppe. | 
|---|
| 254 |  | 
|---|
| 255 | Backport head's usage of clean-temp module, as it is cleaner than | 
|---|
| 256 | using tmpfile-safer. | 
|---|
| 257 | * m4/gnulib-cache.m4: Augment with 'gnulib-tool --import | 
|---|
| 258 | clean-temp closeout', and remove tmpfile-safer. | 
|---|
| 259 | * src/m4.h (includes): Adjust. | 
|---|
| 260 | (m4_path_search): Rename from path_search, to avoid collision | 
|---|
| 261 | with gnulib. | 
|---|
| 262 | * src/m4.c (main): Install closeout handler.  Adjust caller. | 
|---|
| 263 | (usage): Now done by closeout module. | 
|---|
| 264 | * src/builtin.c (m4_m4exit): Likewise. | 
|---|
| 265 | (m4_undivert, include): Adjust callers. | 
|---|
| 266 | * src/freeze.c (reload_frozen_state): Likewise. | 
|---|
| 267 | * src/path.c (m4_path_search): Rename from path_search. | 
|---|
| 268 | * src/output.c (output_temp_dir): New variable. | 
|---|
| 269 | (cleanup_tmpfile, m4_tmpfile): New functions, from head. | 
|---|
| 270 | (insert_diversion, make_room_for): Use them. | 
|---|
| 271 | * doc/m4.texinfo (Diversions): Document this, and add a test. | 
|---|
| 272 | (Improved fatal_error): Fix typo. | 
|---|
| 273 | (Maketemp): Port test to mingw, and no longer hide from | 
|---|
| 274 | documentation. | 
|---|
| 275 | * NEWS: Document the change in TMPDIR behavior. | 
|---|
| 276 |  | 
|---|
| 277 | * configure.ac (m4_pattern_forbid): Narrow the range of forbidden | 
|---|
| 278 | macros, to work with recent gnulib-tool update. | 
|---|
| 279 |  | 
|---|
| 280 | * src/builtin.c (m4_builtin, m4_indir): Allow transparent | 
|---|
| 281 | handling of defn results. | 
|---|
| 282 | * doc/m4.texinfo (Builtin, Indir): Add test cases. | 
|---|
| 283 | * NEWS: Document this. | 
|---|
| 284 |  | 
|---|
| 285 | 2006-10-12  Eric Blake  <ebb9@byu.net> | 
|---|
| 286 |  | 
|---|
| 287 | * doc/m4.texinfo (Location): Fix typo in previous commit. | 
|---|
| 288 | (Changeword): Catch one more case. | 
|---|
| 289 | * src/input.c (skip_line): Fix case when outer file used macro to | 
|---|
| 290 | supply the \n. | 
|---|
| 291 |  | 
|---|
| 292 | 2006-10-11  Eric Blake  <ebb9@byu.net> | 
|---|
| 293 |  | 
|---|
| 294 | * src/input.c (enum input_type): Add additional types, to shave | 
|---|
| 295 | time off the common case. | 
|---|
| 296 | (push_wrapup): Wrapped strings remember location. | 
|---|
| 297 | (push_string_finish): Normal strings carry no location. | 
|---|
| 298 | (push_file): Start new files uninitialized. | 
|---|
| 299 | (peek_input, next_char_1): Optimize common cases by updating | 
|---|
| 300 | location only on new input types. | 
|---|
| 301 | (pop_input): Update to honor new input types. | 
|---|
| 302 | (skip_line, push_string_finish): Fix regression in previous patch | 
|---|
| 303 | when dnl is not followed by newline in included file. | 
|---|
| 304 | (push_string_init): Initialize all fields of INPUT_STRING sooner. | 
|---|
| 305 | (peek_token): Simplify. | 
|---|
| 306 | (peek_input): Don't pop input files on peek, so that __file__ and | 
|---|
| 307 | __line__ as last token of include file work correctly. | 
|---|
| 308 | * doc/m4.texinfo (History): Mention 1.4.8. | 
|---|
| 309 | (Answers): Split into sections, one per answer. | 
|---|
| 310 | (Improved exch, Improved cleardivert, Improved fatal_error): New | 
|---|
| 311 | nodes. | 
|---|
| 312 | (Dnl, M4wrap, Location, M4exit, Improved fatal_error): Update to | 
|---|
| 313 | new m4wrap location semantics. | 
|---|
| 314 | (Changeword): Add test that caught the regression. | 
|---|
| 315 | * NEWS: Document this. | 
|---|
| 316 |  | 
|---|
| 317 | * src/macro.c (expand_macro): In macro expansion errors, report | 
|---|
| 318 | line number at open parenthesis. | 
|---|
| 319 | * src/input.c (next_token): Fix off-by-one bug in reporting end | 
|---|
| 320 | of file in unterminated comment and string. | 
|---|
| 321 | (file_names): New obstack, necessary since expand_macro now hangs | 
|---|
| 322 | on to file names longer than the files remain open. | 
|---|
| 323 | (input_init): Initialize new obstack. | 
|---|
| 324 | (push_file): Use new obstack.  Delay updates to current_file | 
|---|
| 325 | until after expand_macro has restored state. | 
|---|
| 326 | (peek_input, next_char_1): Update current_file if necessary. | 
|---|
| 327 | (pop_wrapup): Release memory. | 
|---|
| 328 | * doc/m4.texinfo (Macro Arguments, Changequote, Changecom): Catch | 
|---|
| 329 | the off-by-one bug. | 
|---|
| 330 | (Dnl): Update to the new location reporting rules. | 
|---|
| 331 | * NEWS: Document these changes. | 
|---|
| 332 |  | 
|---|
| 333 | 2006-10-10  Eric Blake  <ebb9@byu.net> | 
|---|
| 334 |  | 
|---|
| 335 | * src/macro.c (argc_stack, argv_stack): New variables for sharing | 
|---|
| 336 | obstacks across multiple macro calls. | 
|---|
| 337 | (expand_input): Initialize and tear down stack once per input | 
|---|
| 338 | file, instead of once per macro. | 
|---|
| 339 | (expand_macro): Reuse existing stacks when possible. | 
|---|
| 340 | (collect_arguments): Simplify slightly. | 
|---|
| 341 |  | 
|---|
| 342 | * src/path.c (include_env_init): Fix botched patch application. | 
|---|
| 343 | Reported by Ralf Wildenhues. | 
|---|
| 344 |  | 
|---|
| 345 | 2006-10-09  Eric Blake  <ebb9@byu.net> | 
|---|
| 346 |  | 
|---|
| 347 | * src/m4.c (usage, main): Detect write failures to stderr. | 
|---|
| 348 | * src/builtin.c (m4_m4exit): Likewise. | 
|---|
| 349 | * NEWS: Document this. | 
|---|
| 350 |  | 
|---|
| 351 | * src/macro.c (expand_macro): Allow --nesting-limit=0 to remove | 
|---|
| 352 | the limit. | 
|---|
| 353 | * NEWS: Document this. | 
|---|
| 354 | * doc/m4.texinfo (Invoking m4): Likewise. | 
|---|
| 355 |  | 
|---|
| 356 | 2006-10-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> | 
|---|
| 357 |  | 
|---|
| 358 | * src/path.c (include_env_init): Copy the string returned | 
|---|
| 359 | by getenv before overwriting it; POSIX disallows this. | 
|---|
| 360 |  | 
|---|
| 361 | 2006-10-09  Eric Blake  <ebb9@byu.net> | 
|---|
| 362 |  | 
|---|
| 363 | * src/m4.c (main): Defer debugfile until after --help. | 
|---|
| 364 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 365 | * NEWS: Start changes of 1.4.7a. | 
|---|
| 366 |  | 
|---|
| 367 | 2006-09-25  Eric Blake  <ebb9@byu.net> | 
|---|
| 368 |  | 
|---|
| 369 | Release 1.4.7: | 
|---|
| 370 |  | 
|---|
| 371 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 372 | * NEWS: Describe changes since 1.4.6. | 
|---|
| 373 |  | 
|---|
| 374 | 2006-09-21  Eric Blake  <ebb9@byu.net> | 
|---|
| 375 |  | 
|---|
| 376 | * doc/m4.texinfo (Invoking m4): Add clarification on option | 
|---|
| 377 | processing behavior. | 
|---|
| 378 | * THANKS: Update. | 
|---|
| 379 | Reported by Mikhail Teterin. | 
|---|
| 380 |  | 
|---|
| 381 | * bootstrap: Add --force option, based on idea from coreutils. | 
|---|
| 382 | * README: Document that ./bootstrap and autoreconf are for | 
|---|
| 383 | developers, and not lightly done in tarballs. | 
|---|
| 384 |  | 
|---|
| 385 | 2006-09-20  Eric Blake  <ebb9@byu.net> | 
|---|
| 386 |  | 
|---|
| 387 | * src/m4.c (usage, OPTSTRING, main): Rename -e to -i, and give | 
|---|
| 388 | deprecation warning on -e. | 
|---|
| 389 | * doc/m4.texinfo (Invoking m4, Extensions): Document this. | 
|---|
| 390 | * NEWS: Document this. | 
|---|
| 391 |  | 
|---|
| 392 | 2006-09-19  Eric Blake  <ebb9@byu.net> | 
|---|
| 393 |  | 
|---|
| 394 | * src/m4.c (usage, long_options, main, DEBUGFILE_OPTION): Rename | 
|---|
| 395 | -o/--error-output to --debugfile, and deprecate the former.  This | 
|---|
| 396 | will allow a future release to be more consistent with other GNU | 
|---|
| 397 | tools, with -o/--output affecting stdout, not debug. | 
|---|
| 398 | * doc/m4.texinfo (Invoking m4, Debug Output): Document this. | 
|---|
| 399 | * NEWS: Document this. | 
|---|
| 400 |  | 
|---|
| 401 | 2006-09-14  Eric Blake  <ebb9@byu.net> | 
|---|
| 402 |  | 
|---|
| 403 | * src/m4.c (main): Warn on deprecated options -B, -S, -T, -N, | 
|---|
| 404 | --diversions. `m4 --help --version' now displays help, not | 
|---|
| 405 | version. | 
|---|
| 406 | (interactive, frozen_file_to_read, frozen_file_to_write): Move to | 
|---|
| 407 | smaller scope. | 
|---|
| 408 | (show_help, show_version): No longer needed. | 
|---|
| 409 | (long_options, DIVERSIONS_OPTION): Backport patch from head to | 
|---|
| 410 | distinguish between -N and --diversions in warning. | 
|---|
| 411 | * doc/m4.texinfo (Invoking m4): Document this. | 
|---|
| 412 | * NEWS: Likewise. | 
|---|
| 413 |  | 
|---|
| 414 | 2006-09-11  Eric Blake  <ebb9@byu.net> | 
|---|
| 415 |  | 
|---|
| 416 | * src/Makefile.am (m4_LDADD): Add any gnulib dependent libraries. | 
|---|
| 417 | * src/debug.c (debug_flush_files) [UNIX]: Flush stdin if it is | 
|---|
| 418 | seekable. | 
|---|
| 419 | (debug_set_file): Use STDOUT_FILENO. | 
|---|
| 420 | * src/builtin.c (m4_m4exit): Flush stdin before exiting, to comply | 
|---|
| 421 | with POSIX in regards to unread input. | 
|---|
| 422 | * NEWS: Document this fix. | 
|---|
| 423 | * doc/m4.texinfo (Syscmd, Esyscmd, M4exit): Likewise. | 
|---|
| 424 |  | 
|---|
| 425 | 2006-09-07  Eric Blake  <ebb9@byu.net> | 
|---|
| 426 |  | 
|---|
| 427 | * m4/gnulib-cache.m4: Update to newer gnulib-tool. | 
|---|
| 428 | * src/m4.h (push_file): Change prototype. | 
|---|
| 429 | * src/input.c (push_file, peek_input, next_char_1): Only call getc | 
|---|
| 430 | once at EOF, to avoid double ^D on terminal stdin; regression from | 
|---|
| 431 | 2006-09-04. | 
|---|
| 432 | (push_file, pop_file): Allow reading stdin twice. | 
|---|
| 433 | * src/m4.c (main): Likewise. | 
|---|
| 434 | * src/builtin.c (include): Update caller. | 
|---|
| 435 | * NEWS: Document this change. | 
|---|
| 436 | * doc/m4.texinfo (Invoking m4, Incompatibilities): Likewise. | 
|---|
| 437 | (Syscmd): Add a test that failed before this patch. | 
|---|
| 438 |  | 
|---|
| 439 | 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> | 
|---|
| 440 |  | 
|---|
| 441 | * checks/check-them: Quote $pwd. | 
|---|
| 442 |  | 
|---|
| 443 | 2006-09-05  Eric Blake  <ebb9@byu.net> | 
|---|
| 444 |  | 
|---|
| 445 | * src/builtin.c (define_macro): Warn on invalid macro name. | 
|---|
| 446 | * NEWS: Document this change. | 
|---|
| 447 | * doc/m4.texinfo: Fix typos. | 
|---|
| 448 | (Invoking m4, Macro Arguments, Pseudo Arguments, Defn, Indir) | 
|---|
| 449 | (Ifelse): Backport some improvements from head. | 
|---|
| 450 |  | 
|---|
| 451 | 2006-09-04  Eric Blake  <ebb9@byu.net> | 
|---|
| 452 |  | 
|---|
| 453 | * doc/m4.texinfo (Changeword): Skip test on mingw, where the | 
|---|
| 454 | native echo is braindead. | 
|---|
| 455 | * checks/check-them (strip_needed): Ignore \r in output.  Now the | 
|---|
| 456 | testsuite will pass when cross-compiling from cygwin to mingw. | 
|---|
| 457 |  | 
|---|
| 458 | * src/input.c (peek_input): Fix regression in handling macro | 
|---|
| 459 | without arguments as last token in file; debian bug 385720. | 
|---|
| 460 | (next_token): Always consume an input character. | 
|---|
| 461 | Reported by Andreas Schultz. | 
|---|
| 462 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 463 | * NEWS: Document this fix. | 
|---|
| 464 | * doc/m4.texinfo (History): Mention next version. | 
|---|
| 465 | (Changeword): Add example that exposes this bug. | 
|---|
| 466 | * THANKS: Update. | 
|---|
| 467 |  | 
|---|
| 468 | 2006-08-25  Eric Blake  <ebb9@byu.net> | 
|---|
| 469 |  | 
|---|
| 470 | Release 1.4.6: | 
|---|
| 471 |  | 
|---|
| 472 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 473 | * NEWS: Describe changes since 1.4.5. | 
|---|
| 474 |  | 
|---|
| 475 | * Makefile.maint (web-manual): Give up on VPATH build during | 
|---|
| 476 | distribution.  But distributions are made so infrequently that | 
|---|
| 477 | this is not too much of a hardship. | 
|---|
| 478 | * Makefile.am (MAINTAINERCLEANFILES): Avoid error if lib/CVS/ | 
|---|
| 479 | exists. | 
|---|
| 480 |  | 
|---|
| 481 | 2006-08-24  Eric Blake  <ebb9@byu.net> | 
|---|
| 482 |  | 
|---|
| 483 | * src/builtin.c (m4_index, m4_substr, m4_translit): Similar to | 
|---|
| 484 | Solaris, produce output on just one argument. | 
|---|
| 485 | (m4_regexp, m4_patsubst): For consistency, do likewise. | 
|---|
| 486 | (m4_patsubst): Allow zero-length match at end of string. | 
|---|
| 487 | * doc/m4.texinfo (Sysval): Fix overfull hbox. | 
|---|
| 488 | (Bugs, Macro Arguments): Minor fixes. | 
|---|
| 489 | (Other tokens): Rearrange node order. | 
|---|
| 490 | (Index macro, Substr, Translit, Regexp, Patsubst): Add tests. | 
|---|
| 491 | * NEWS: Document these fixes. | 
|---|
| 492 |  | 
|---|
| 493 | 2006-08-22  Eric Blake  <ebb9@byu.net> | 
|---|
| 494 |  | 
|---|
| 495 | * src/input.c (pop_input): Avoid empty filename with -di option. | 
|---|
| 496 | * src/debug.c (debug_message_prefix): Put space before message. | 
|---|
| 497 |  | 
|---|
| 498 | * m4/gnulib-cache.m4: We don't explicitly use alloca module. | 
|---|
| 499 |  | 
|---|
| 500 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import gnupload. | 
|---|
| 501 | * Makefile.maint (fetch): Simplify, now that we can use gnupload. | 
|---|
| 502 |  | 
|---|
| 503 | * checks/check-them: State why a test is skipped. | 
|---|
| 504 | * doc/m4.texinfo (Changeword, Sysval, Maketemp): Likewise. | 
|---|
| 505 |  | 
|---|
| 506 | * ChangeLog: Add copyright. | 
|---|
| 507 | * AUTHORS: Likewise. | 
|---|
| 508 | * BACKLOG: Likewise. | 
|---|
| 509 | * README: Likewise. | 
|---|
| 510 | * THANKS: Likewise. | 
|---|
| 511 | * TODO: Likewise. | 
|---|
| 512 | * examples/COPYING: New file, add copyright for all the examples. | 
|---|
| 513 | * checks/get-them: Put copyright on testsuite files. | 
|---|
| 514 |  | 
|---|
| 515 | 2006-08-18  Eric Blake  <ebb9@byu.net> | 
|---|
| 516 |  | 
|---|
| 517 | Don't let unrelated child processes see too many files. | 
|---|
| 518 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import cloexec. | 
|---|
| 519 | * src/builtin.c (m4_esyscmd, m4_regexp, m4_patsubst): Fix | 
|---|
| 520 | spelling in error message. | 
|---|
| 521 | * src/debug.c [!__STDC__]: Assume C89, and nuke old varargs.h. | 
|---|
| 522 | (debug_set_output): Close debug file on exec. | 
|---|
| 523 | * src/m4.h (includes): Add cloexec.h. | 
|---|
| 524 | * src/output.c (make_room_for): Close diversions on exec. | 
|---|
| 525 | * src/path.c (path_search): Close include files on exec. | 
|---|
| 526 | * NEWS: Document this. | 
|---|
| 527 |  | 
|---|
| 528 | Regular expressions were leaking memory. | 
|---|
| 529 | * src/builtin.c (init_pattern_buffer, free_pattern_buffer): New | 
|---|
| 530 | helper methods. | 
|---|
| 531 | (m4_regexp, m4_patsubst): Avoid memory leak. | 
|---|
| 532 | * src/input.c (init_pattern_buffer) [ENABLE_CHANGEWORD]: Make | 
|---|
| 533 | static. | 
|---|
| 534 | (set_word_regexp) [ENABLE_CHANGEWORD]: Avoid memory leak.  Change | 
|---|
| 535 | from O(n^2) to O(n) for calculating word_start. | 
|---|
| 536 | (next_token, peek_token) [ENABLE_CHANGEWORD]: Treat word_start as | 
|---|
| 537 | O(1) bitmap, not O(n) search string. | 
|---|
| 538 | * NEWS: Document this fix. | 
|---|
| 539 |  | 
|---|
| 540 | 2006-08-17  Eric Blake  <ebb9@byu.net> | 
|---|
| 541 |  | 
|---|
| 542 | * NEWS: Document previous checkin. | 
|---|
| 543 |  | 
|---|
| 544 | * src/builtin.c (substitute): Avoid core dump when accessing | 
|---|
| 545 | beyond bound of regular expression. | 
|---|
| 546 | Reported by Karl Nelson. | 
|---|
| 547 | * doc/m4.texinfo (Regexp): Add example that causes core dump on | 
|---|
| 548 | some architectures prior to this patch. | 
|---|
| 549 | * THANKS: Updated. | 
|---|
| 550 |  | 
|---|
| 551 | 2006-08-16  Eric Blake  <ebb9@byu.net> | 
|---|
| 552 |  | 
|---|
| 553 | * doc/m4.texinfo (Invoking m4, Debug Output): Fix wording to be | 
|---|
| 554 | clear that dumpdef does not always go to stderr. | 
|---|
| 555 |  | 
|---|
| 556 | * src/builtin.c (m4_errprint): Flush buffers before printing to | 
|---|
| 557 | stderr. | 
|---|
| 558 | * THANKS: Updated. | 
|---|
| 559 |  | 
|---|
| 560 | 2006-08-15  Eric Blake  <ebb9@byu.net> | 
|---|
| 561 |  | 
|---|
| 562 | * src/builtin.c (m4_m4wrap, m4_errprint, m4_shift): Make blind, | 
|---|
| 563 | per debian bug 96075. | 
|---|
| 564 | * doc/m4.texinfo (Loops, M4wrap, Errprint): Document this change. | 
|---|
| 565 | (Changeword): Don't use shift as an example of a swallowed word. | 
|---|
| 566 | (Divert): Discuss fact that divert is an English word. | 
|---|
| 567 | Reported by Richard A Nelson. | 
|---|
| 568 |  | 
|---|
| 569 | 2006-08-14  Eric Blake  <ebb9@byu.net> | 
|---|
| 570 |  | 
|---|
| 571 | * doc/m4.texinfo (Invoking m4): Minor fixes. | 
|---|
| 572 |  | 
|---|
| 573 | 2006-08-12  Eric Blake  <ebb9@byu.net> | 
|---|
| 574 |  | 
|---|
| 575 | * doc/m4.texinfo (Arguments): Hint at better exch macro. | 
|---|
| 576 | (Answers): Provide a better definition. | 
|---|
| 577 |  | 
|---|
| 578 | 2006-08-09  Eric Blake  <ebb9@byu.net> | 
|---|
| 579 |  | 
|---|
| 580 | * doc/m4.texinfo (Incompatibilities): Document that m4 does not | 
|---|
| 581 | yet understand locales. | 
|---|
| 582 | * NEWS: Fix wording of a few items. | 
|---|
| 583 |  | 
|---|
| 584 | 2006-08-08  Eric Blake  <ebb9@byu.net> | 
|---|
| 585 |  | 
|---|
| 586 | Avoid printing `NONE:0:' in error messages. | 
|---|
| 587 | * src/m4.h (m4_error_at_line): New function. | 
|---|
| 588 | * src/m4.c (m4_error_at_line): Implement. | 
|---|
| 589 | * src/input.c (skip_line, input_init, next_token): Use "", not | 
|---|
| 590 | "NONE", for no file, since NONE can be a real file name. | 
|---|
| 591 | * src/macro.c (expand_argument): Likewise. | 
|---|
| 592 | * src/debug.c (debug_message_prefix, trace_header): Check for | 
|---|
| 593 | current file. | 
|---|
| 594 | * doc/m4.texinfo (Dnl, M4wrap): Adjust accordingly. | 
|---|
| 595 | (Location): Document that synclines and internal message format | 
|---|
| 596 | are not impacted by redefining these macros. | 
|---|
| 597 | (M4exit): Hint at bug in fatal_error. | 
|---|
| 598 | (Answers): Provide workaround to match m4 output. | 
|---|
| 599 |  | 
|---|
| 600 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import verror. | 
|---|
| 601 | * src/m4.h (m4_error): New function. | 
|---|
| 602 | (M4ERROR, M4ERROR_AT_LINE): Reimplement without hacking around | 
|---|
| 603 | error module deficiencies. | 
|---|
| 604 | (reference_error, suppress_line): No longer needed. | 
|---|
| 605 | * src/m4.c (m4_error): Implement. | 
|---|
| 606 | (main): No longer need to install error callback. | 
|---|
| 607 |  | 
|---|
| 608 | 2006-08-04  Eric Blake  <ebb9@byu.net> | 
|---|
| 609 |  | 
|---|
| 610 | * src/m4.h (program_name): Declare. | 
|---|
| 611 | (suppress_line): New variable. | 
|---|
| 612 | (M4ERROR_AT_LINE): New macro. | 
|---|
| 613 | * src/m4.c (reference_error, main): Follow GNU Coding Standards | 
|---|
| 614 | for error message format. | 
|---|
| 615 | * src/input.c (skip_line, next_token): Use M4ERROR_AT_LINE. | 
|---|
| 616 | * src/macro.c (expand_argument): Likewise. | 
|---|
| 617 | * checks/check-them (examples): Adjust to new message format. | 
|---|
| 618 | * src/builtin.c (m4___program__): New builtin. | 
|---|
| 619 | * doc/m4.texinfo (Location): Split from Errprint into new node, | 
|---|
| 620 | and document __program__. | 
|---|
| 621 | (Builtin, Ifdef, Ifelse, Dumpdef, Trace, Debug Output, Dnl) | 
|---|
| 622 | (Include, Regexp, Patsubst, Incr, Eval): Adjust error message | 
|---|
| 623 | format. | 
|---|
| 624 | (Extensions): Document __program__. | 
|---|
| 625 | * NEWS: Document this change. | 
|---|
| 626 |  | 
|---|
| 627 | 2006-08-03  Eric Blake  <ebb9@byu.net> | 
|---|
| 628 |  | 
|---|
| 629 | Don't confuse leading `(' in comment or quote with start of | 
|---|
| 630 | argument collection. | 
|---|
| 631 | * src/m4.h (enum token_type): Add TOKEN_OPEN, TOKEN_COMMA, | 
|---|
| 632 | TOKEN_CLOSE. | 
|---|
| 633 | (peek_input): Make private to input.c. | 
|---|
| 634 | (peek_token): New prototype. | 
|---|
| 635 | * src/input.c (default_word_regexp): Reduce ifdefs. | 
|---|
| 636 | (peek_input): Make static. | 
|---|
| 637 | (next_token): Return new token types. | 
|---|
| 638 | (match_input, MATCH): Add argument consume, which controls | 
|---|
| 639 | whether match should be pushed back. | 
|---|
| 640 | (peek_token): New function. | 
|---|
| 641 | (token_type_string) [DEBUG_INPUT]: New function. | 
|---|
| 642 | * src/macro.c (expand_token, expand_argument, collect_arguments): | 
|---|
| 643 | Handle new token types. | 
|---|
| 644 | * doc/m4.texinfo (Changequote, Changecom): Document this. | 
|---|
| 645 | * NEWS: Document this. | 
|---|
| 646 |  | 
|---|
| 647 | * src/stackovf.c (setup_stackovf_trap): Free memory on failure. | 
|---|
| 648 |  | 
|---|
| 649 | * src/stackovf.c (setup_stackovf_trap): Gracefully avoid stack | 
|---|
| 650 | overflow detection when sigstack exists but is not implemented. | 
|---|
| 651 | Fixes debian bug 154053. | 
|---|
| 652 | * THANKS: Updated. | 
|---|
| 653 | Reported by David Perlin. | 
|---|
| 654 |  | 
|---|
| 655 | 2006-08-02  Eric Blake  <ebb9@byu.net> | 
|---|
| 656 |  | 
|---|
| 657 | * src/input.c (MATCH): Fix EOF detection on multi-byte comment | 
|---|
| 658 | close. | 
|---|
| 659 |  | 
|---|
| 660 | 2006-08-01  Eric Blake  <ebb9@byu.net> | 
|---|
| 661 |  | 
|---|
| 662 | * src/input.c (skip_line, next_token): Remember current file in | 
|---|
| 663 | case input file ends abruptly.  Addresses debian bug 175365. | 
|---|
| 664 | (pop_input): Defer freeing storage that holds previous file | 
|---|
| 665 | name... | 
|---|
| 666 | (pop_wrapup): to here, after error message is issued. | 
|---|
| 667 | * src/macro.c (expand_argument): Remember current file in case | 
|---|
| 668 | input file ends abruptly. | 
|---|
| 669 | * doc/m4.texinfo (Macro Arguments, Dnl, Changequote, Changecom) | 
|---|
| 670 | (M4wrap): Adjust testsuite accordingly. | 
|---|
| 671 | (Errprint): Document line number limitation of m4wrap. | 
|---|
| 672 | * NEWS: Document this fix. | 
|---|
| 673 | * THANKS: Update. | 
|---|
| 674 |  | 
|---|
| 675 | 2006-07-31  Eric Blake  <ebb9@byu.net> | 
|---|
| 676 |  | 
|---|
| 677 | * src/input.c (peek_input, next_char, match_input): Be eight-bit | 
|---|
| 678 | clean; fixes debian bug 311378. | 
|---|
| 679 | * doc/m4.texinfo (Syntax): Describe eight-bit handling. | 
|---|
| 680 | (Changequote, Changecom): Add examples to test this. | 
|---|
| 681 | * NEWS: Document this fix. | 
|---|
| 682 | * THANKS: Update. | 
|---|
| 683 | Reported by Steven Augart. | 
|---|
| 684 |  | 
|---|
| 685 | * doc/m4.texinfo: Whitespace fix. | 
|---|
| 686 | * checks/get-them: Avoid exceeding 14-char file name limit. | 
|---|
| 687 | * THANKS: Update. | 
|---|
| 688 |  | 
|---|
| 689 | 2006-07-30  Eric Blake  <ebb9@byu.net> | 
|---|
| 690 |  | 
|---|
| 691 | * src/path.c (path_search): Detect allocation failure. | 
|---|
| 692 |  | 
|---|
| 693 | Use native free when it is good enough. | 
|---|
| 694 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import free. | 
|---|
| 695 | * src/builtin.c (define_user_macro, m4_regexp, m4_patsubst): | 
|---|
| 696 | Adjust calls. | 
|---|
| 697 | * src/symtab.c (free_symbol): Likewise. | 
|---|
| 698 | * src/m4.c (xfree, main): Likewise. | 
|---|
| 699 | * src/m4.h (obstack_chunk_free): Likewise. | 
|---|
| 700 | * src/path.c (path_search): Likewise. | 
|---|
| 701 | * src/input.c (pop_wrapup, set_quotes, set_comment): Likewise. | 
|---|
| 702 |  | 
|---|
| 703 | * doc/m4.texinfo (Errprint): Add example for last patch. | 
|---|
| 704 | * checks/check-them: Account for VPATH in latest example. | 
|---|
| 705 |  | 
|---|
| 706 | 2006-07-29  Eric Blake  <ebb9@byu.net> | 
|---|
| 707 |  | 
|---|
| 708 | * src/path.c (path_search): Add result parameter, so that | 
|---|
| 709 | -I can be accounted for.  Debian bug 53685. | 
|---|
| 710 | * src/m4.h (path_search): Update prototype. | 
|---|
| 711 | * src/m4.c (main): Adjust callers. | 
|---|
| 712 | * src/freeze.c (reload_frozen_state): Likewise. | 
|---|
| 713 | * src/builtin.c (include, m4_undivert): Likewise. | 
|---|
| 714 | * NEWS: Document this change. | 
|---|
| 715 | Reported by Nicolas Lichtmaier. | 
|---|
| 716 |  | 
|---|
| 717 | 2006-07-28  Eric Blake  <ebb9@byu.net> | 
|---|
| 718 |  | 
|---|
| 719 | * Makefile.am (MAINTAINERCLEANFILES): Fix typo that tripped up | 
|---|
| 720 | several non-GNU makes. | 
|---|
| 721 | * src/stackovf.c (setup_stackovf_trap): Missed _ from yesterday. | 
|---|
| 722 | * src/m4.h: Likewise. | 
|---|
| 723 | * src/input.c (push_wrapup): Avoid compiler warning with Solaris | 
|---|
| 724 | /usr/ccs/bin/ucbcc. | 
|---|
| 725 |  | 
|---|
| 726 | 2006-07-27  Eric Blake  <ebb9@byu.net> | 
|---|
| 727 |  | 
|---|
| 728 | * doc/m4.texinfo: Use @acronym{GNU} throughout. | 
|---|
| 729 | (History): Update for 1.4.6. | 
|---|
| 730 |  | 
|---|
| 731 | * src/m4.h (_): Remove K&R cruft. | 
|---|
| 732 | * src/builtin.c: Likewise. | 
|---|
| 733 | * src/debug.c: Likewise. | 
|---|
| 734 | * src/eval.c: Likewise. | 
|---|
| 735 | * src/macro.c: Likewise. | 
|---|
| 736 | * src/stackovf.c: Likewise. | 
|---|
| 737 |  | 
|---|
| 738 | * doc/Makefile.am (m4.1): Improve man page. | 
|---|
| 739 | * src/m4.c (usage): Improve --help output, including adding the | 
|---|
| 740 | bug reporting address. | 
|---|
| 741 | (main): Follow GNU Coding Standards for --version output. | 
|---|
| 742 |  | 
|---|
| 743 | 2006-07-26  Eric Blake  <ebb9@byu.net> | 
|---|
| 744 |  | 
|---|
| 745 | * doc/m4.texinfo: Use begin-quote, end-quote, begin-comment, and | 
|---|
| 746 | end-comment consistently, to match POSIX. | 
|---|
| 747 |  | 
|---|
| 748 | * doc/m4.texinfo (Macro Arguments, Changequote, Changecom) | 
|---|
| 749 | (Dnl, M4wrap, Include): Document EOF issues, and add examples. | 
|---|
| 750 | (Incompatibilities): Document incompatibility of changecom | 
|---|
| 751 | vs. macro names, and of EOF in include. | 
|---|
| 752 | * src/input.c (next_token): Reject unterminated comments at EOF. | 
|---|
| 753 | (skip_line): Warn on unterminated dnl at EOF. | 
|---|
| 754 | * NEWS: Document these changes. | 
|---|
| 755 |  | 
|---|
| 756 | 2006-07-25  Eric Blake  <ebb9@byu.net> | 
|---|
| 757 |  | 
|---|
| 758 | * m4/gnulib-cache.m4: Update to reflect gnulib's split of | 
|---|
| 759 | stdio-safer into fopen-safer and tmpfile-safer. | 
|---|
| 760 | * src/m4.c: Remove redundant include. | 
|---|
| 761 |  | 
|---|
| 762 | 2006-07-24  Eric Blake  <ebb9@byu.net> | 
|---|
| 763 |  | 
|---|
| 764 | Fix bugs related to stream handling. | 
|---|
| 765 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import | 
|---|
| 766 | unlocked-io stdio-safer stdlib-safer close-stream. | 
|---|
| 767 | * configure.ac (AC_CHECK_FUNCS_ONCE): Assume tmpfile; it can be | 
|---|
| 768 | provided by gnulib if needed. | 
|---|
| 769 | * src/output.c [! HAVE_TMPFILE]: Likewise. | 
|---|
| 770 | * src/m4.h (includes): Replace unistd, stdio, and stdlib with | 
|---|
| 771 | their safer counterparts. | 
|---|
| 772 | (retcode): New global variable. | 
|---|
| 773 | * src/input.c (pop_input): Check for read failure. | 
|---|
| 774 | * src/freeze.c (reload_frozen_state): Likewise. | 
|---|
| 775 | (produce_frozen_state): Check for write failure. | 
|---|
| 776 | * src/debug.c (debug_set_file): Likewise. | 
|---|
| 777 | * src/m4.c (usage, main): Likewise. | 
|---|
| 778 | (retcode): Make global. | 
|---|
| 779 | * src/builtin.c (m4_m4exit): Likewise.  Ensure that the exit | 
|---|
| 780 | status is non-zero except when everything succeeds. | 
|---|
| 781 | * doc/m4.texinfo (M4exit): Document these changes. | 
|---|
| 782 | (Incompatibilities): Remove documentation of bug now fixed. | 
|---|
| 783 | * NEWS: Document these fixes. | 
|---|
| 784 |  | 
|---|
| 785 | 2006-07-22  Eric Blake  <ebb9@byu.net> | 
|---|
| 786 |  | 
|---|
| 787 | * src/format.c (format): Avoid compiler warning that str may be | 
|---|
| 788 | used uninitialized. | 
|---|
| 789 |  | 
|---|
| 790 | 2006-07-21  Eric Blake  <ebb9@byu.net> | 
|---|
| 791 |  | 
|---|
| 792 | * src/m4.h [UNIX]: Add more platforms that are close enough to | 
|---|
| 793 | categorize as UNIX, but which don't predefine __unix__. | 
|---|
| 794 | Reported by Nelson H. F. Beebe. | 
|---|
| 795 |  | 
|---|
| 796 | 2006-07-20  Eric Blake  <ebb9@byu.net> | 
|---|
| 797 |  | 
|---|
| 798 | * m4/gnulib-cache.m4: gnulib-tool has changed again.  Regenerate | 
|---|
| 799 | to explicitly ask for --assume-autoconf=2.60. | 
|---|
| 800 |  | 
|---|
| 801 | 2006-07-19  Eric Blake  <ebb9@byu.net> | 
|---|
| 802 |  | 
|---|
| 803 | * doc/m4.texinfo (Sysval): Avoid kill -1, since ksh traps SIGHUP | 
|---|
| 804 | and exits normally with 129. | 
|---|
| 805 | Reported by Nelson H. F. Beebe. | 
|---|
| 806 | * THANKS: Update. | 
|---|
| 807 |  | 
|---|
| 808 | * src/m4.h (EXIT_MISMATCH): Define. | 
|---|
| 809 | * src/freeze.c (reload_frozen_state): Detect version mismatch, by | 
|---|
| 810 | exiting with status 63. | 
|---|
| 811 | * src/m4.c (usage): Document this. | 
|---|
| 812 | * doc/m4.texinfo (Invoking m4, Using frozen files): Likewise. | 
|---|
| 813 | * NEWS: Likewise. | 
|---|
| 814 |  | 
|---|
| 815 | * doc/m4.texinfo (copying): Relax restriction on front-cover and | 
|---|
| 816 | back-cover texts. | 
|---|
| 817 |  | 
|---|
| 818 | 2006-07-17  Eric Blake  <ebb9@byu.net> | 
|---|
| 819 |  | 
|---|
| 820 | * src/format.c (format): Support F, g, and G specifiers. | 
|---|
| 821 | * doc/m4.texinfo (Format): Document this. | 
|---|
| 822 | * NEWS: Document this addition. | 
|---|
| 823 |  | 
|---|
| 824 | * doc/m4.texinfo (Builtin): Delete redundant text. | 
|---|
| 825 |  | 
|---|
| 826 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 827 | * src/builtin.c (substitute): Bah.  Fix buffer overrun. | 
|---|
| 828 | * NEWS: Document this fix. | 
|---|
| 829 |  | 
|---|
| 830 | 2006-07-15  Eric Blake  <ebb9@byu.net> | 
|---|
| 831 |  | 
|---|
| 832 | Release 1.4.5: | 
|---|
| 833 |  | 
|---|
| 834 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 835 | * NEWS: Describe changes since 1.4.4. | 
|---|
| 836 |  | 
|---|
| 837 | * src/m4.c (usage): Document exit status. | 
|---|
| 838 | * doc/m4.texinfo: Use `exit status', not `exit code'. | 
|---|
| 839 | (Invoking m4): Document exit status. | 
|---|
| 840 |  | 
|---|
| 841 | * bootstrap: Backport --help, --version from head. | 
|---|
| 842 | (func_update): New function, for easily grabbing up-to-date files | 
|---|
| 843 | from gnulib. | 
|---|
| 844 | * Makefile.maint (web-manual): Fix for VPATH builds. | 
|---|
| 845 |  | 
|---|
| 846 | 2006-07-14  Eric Blake  <ebb9@byu.net> | 
|---|
| 847 |  | 
|---|
| 848 | * doc/m4.texinfo: Global cleanup.  Avoid @code{...}'d, as it | 
|---|
| 849 | looks bad in info.  Use @deffn rather than @example for | 
|---|
| 850 | describing prototypes.  Fix awkward wording and grammar. | 
|---|
| 851 |  | 
|---|
| 852 | * src/builtin.c (substitute): Warn on bad escape sequences. | 
|---|
| 853 | Ignore trailing backslash. | 
|---|
| 854 | * doc/m4.texinfo (Regexp): Add documentation for this. | 
|---|
| 855 | * NEWS: Document this change. | 
|---|
| 856 |  | 
|---|
| 857 | * src/builtin.c (m4_format, m4_indir): Warn on too few arguments. | 
|---|
| 858 | * doc/m4.texinfo (Defn, Builtin, Debug Levels, Debug Output): Add | 
|---|
| 859 | more examples. | 
|---|
| 860 | (Dnl): Update example to show side effects. | 
|---|
| 861 | * checks/get-them: Generate three digit test names. | 
|---|
| 862 | * checks/Makefile.in (CHECKS): Accomodate 100+ tests. | 
|---|
| 863 |  | 
|---|
| 864 | 2006-07-13  Eric Blake  <ebb9@byu.net> | 
|---|
| 865 |  | 
|---|
| 866 | * src/input.c (input_init): Simplify. | 
|---|
| 867 | (set_word_regexp): Treat empty string as default, since empty | 
|---|
| 868 | regexp would disable word parsing. | 
|---|
| 869 | * src/m4.c (user_word_regexp): Default to empty string. | 
|---|
| 870 | * src/builtin.c (builtin_tab): Make changeword blind. | 
|---|
| 871 | * doc/m4.texinfo (Changeword): Document this. | 
|---|
| 872 | * NEWS: Document this. | 
|---|
| 873 | * TODO: Knock off completed items. | 
|---|
| 874 |  | 
|---|
| 875 | * src/builtin.c (m4_undefine, m4_popdef): Visit all arguments, not | 
|---|
| 876 | just the first. | 
|---|
| 877 | * doc/m4.texinfo (Undefine, Pushdef): Test this. | 
|---|
| 878 | * NEWS: Document this change. | 
|---|
| 879 |  | 
|---|
| 880 | * src/builtin.c (numeric_arg): Treat empty string as 0, with a | 
|---|
| 881 | warning.  Detect quoted leading space and overflow as warnings. | 
|---|
| 882 | (m4_eval): Treat empty radix as 10, and allow output in radix 1. | 
|---|
| 883 | Treat width as minimum number of digits, as required by POSIX. | 
|---|
| 884 | (m4_ifdef, m4_divert, m4_m4exit, m4_translit): Ignore extra | 
|---|
| 885 | arguments. | 
|---|
| 886 | (m4_substr): Likewise.  Silently treat empty start as 0. | 
|---|
| 887 | (m4_undivert): Treat ` 1a' as file, not diversion 1. | 
|---|
| 888 | * src/eval.c (eval_lex): Parse radix 1 numbers. | 
|---|
| 889 | * doc/m4.texinfo (Invoking m4): Fix wording; there is more than | 
|---|
| 890 | one type of warning. | 
|---|
| 891 | (Manual): Document behavior of numeric parsing of empty string. | 
|---|
| 892 | (Divert, Incr): Document error handling. | 
|---|
| 893 | (Eval): Document radices better. | 
|---|
| 894 | (Incompatibilities): Document translit incompatibility. | 
|---|
| 895 | * NEWS: Document these changes. | 
|---|
| 896 |  | 
|---|
| 897 | * Makefile.maint (fetch): Get gendocs from gnulib, not texinfo. | 
|---|
| 898 | (web-manual): Simplify. | 
|---|
| 899 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import gendocs. | 
|---|
| 900 | * Makefile.am (EXTRA_DIST): Distribute gendocs.sh. | 
|---|
| 901 | (MAINTAINERCLEANFILES): Clean it as well. | 
|---|
| 902 | * doc/Makefile.am (EXTRA_DIST): Distribute gendocs_template. | 
|---|
| 903 | (MAINTAINERCLEANFILES): Clean it as well. | 
|---|
| 904 |  | 
|---|
| 905 | 2006-07-12  Eric Blake  <ebb9@byu.net> | 
|---|
| 906 |  | 
|---|
| 907 | * doc/m4.texinfo (Extensions): Document how to overcome | 
|---|
| 908 | implementation difference in > 9 positional parameters. | 
|---|
| 909 |  | 
|---|
| 910 | * src/m4.c (usage): Sort within sections. | 
|---|
| 911 | (nesting_limit): Raise default from 250 to 1024. | 
|---|
| 912 | * doc/m4.texinfo: Use file name, not filename, per GNU coding | 
|---|
| 913 | standard.  Use @option where appropriate. | 
|---|
| 914 | (Invoking m4): Sort to match --help output. | 
|---|
| 915 | (Debug Levels): Sort. | 
|---|
| 916 | (Frozen files): Sort and break into two nodes. | 
|---|
| 917 |  | 
|---|
| 918 | * src/m4.c (nesting_limit): Raise default from 250 to 1024. | 
|---|
| 919 | * NEWS: Document raised -L limit. | 
|---|
| 920 |  | 
|---|
| 921 | 2006-07-11  Eric Blake  <ebb9@byu.net> | 
|---|
| 922 |  | 
|---|
| 923 | * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New macro, to | 
|---|
| 924 | stress-test changeword before a release. | 
|---|
| 925 | * doc/m4.texinfo: More doc cleanups. | 
|---|
| 926 | (Copying This Manual): New node; actually include the FDL in the | 
|---|
| 927 | documentation. | 
|---|
| 928 | * doc/Makefile.am (m4_TEXINFOS): Mention dependence on fdl.texi. | 
|---|
| 929 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import fdl. | 
|---|
| 930 | * NEWS: Mention documentation improvements. | 
|---|
| 931 |  | 
|---|
| 932 | * src/m4.h (OS2): New platform macro. | 
|---|
| 933 | * src/builtin.c (predefined_tab) [OS2]: Use it to give OS/2 a | 
|---|
| 934 | platform macro. | 
|---|
| 935 | * doc/m4.texinfo (Platform macros): Document it. | 
|---|
| 936 | (Sysval): Remove non-portable test of system(""). | 
|---|
| 937 | * NEWS: Document this change. | 
|---|
| 938 | Reported by Andreas Buening. | 
|---|
| 939 |  | 
|---|
| 940 | 2006-07-09  Eric Blake  <ebb9@byu.net> | 
|---|
| 941 |  | 
|---|
| 942 | * doc/m4.texinfo (Undivert): Fix typo in last commit. | 
|---|
| 943 | * src/m4.c (usage): Document M4PATH. | 
|---|
| 944 | * src/path.c (path_search): Reject empty string. | 
|---|
| 945 | * src/output.c (insert_diversion): Ignore diversion 0. | 
|---|
| 946 | * src/builtin.c (m4_undivert): Ignore empty string. | 
|---|
| 947 | * NEWS: Document this fix. | 
|---|
| 948 |  | 
|---|
| 949 | 2006-07-08  Eric Blake  <ebb9@byu.net> | 
|---|
| 950 |  | 
|---|
| 951 | * checks/get-them: Make filtering easier. | 
|---|
| 952 | * checks/check-them: Filter non-input lines, so line counts are | 
|---|
| 953 | more realistic in the documentation, and so changeword tests work | 
|---|
| 954 | even when dnl is disabled. | 
|---|
| 955 | * doc/m4.texinfo: Adjust example line numbers.  Clean up | 
|---|
| 956 | front-matter, following autoconf's example. | 
|---|
| 957 | (Changeword): Enable tests, skipping if changeword not supported. | 
|---|
| 958 | (Define, Defn, Ifelse): Backport more examples from head. | 
|---|
| 959 | (Input processing, Answers): New nodes, backported from head. | 
|---|
| 960 | (Include): Expand test to cover empty filename. | 
|---|
| 961 | (Undivert): Add test of undivert(0). | 
|---|
| 962 |  | 
|---|
| 963 | 2006-07-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> | 
|---|
| 964 |  | 
|---|
| 965 | * doc/m4.texinfo: Fix spelling errors. | 
|---|
| 966 |  | 
|---|
| 967 | 2006-07-07  Eric Blake  <ebb9@byu.net> | 
|---|
| 968 |  | 
|---|
| 969 | * THANKS: Update. | 
|---|
| 970 |  | 
|---|
| 971 | * doc/Makefile.am (m4.1): No need to go through a temporary file; | 
|---|
| 972 | this also ensures timestamps are updated. | 
|---|
| 973 | * src/m4.h (includes): Require config.h.  Assume string.h, | 
|---|
| 974 | stdlib.h, errno.  Include error.h, exit.h, and xalloc.h rather | 
|---|
| 975 | than prototyping ourselves. | 
|---|
| 976 | (builtin_func): Add parameter type-checking. | 
|---|
| 977 | (voidstar): Delete, now that we assume C89. | 
|---|
| 978 | * src/builtin.c, src/m4.c, src/macro.c, src/symtab.c: All users of | 
|---|
| 979 | voidstar changed. | 
|---|
| 980 | * src/m4.c (xfree) [WITH_DMALLOC]: Avoid clash with dmalloc's | 
|---|
| 981 | xfree. | 
|---|
| 982 |  | 
|---|
| 983 | 2006-07-06  Eric Blake  <ebb9@byu.net> | 
|---|
| 984 |  | 
|---|
| 985 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import | 
|---|
| 986 | binary-io. | 
|---|
| 987 | * src/m4.h (includes): Add binary-io.h for O_BINARY. | 
|---|
| 988 | * src/freeze.c (produce_frozen_state): Use O_BINARY to remove | 
|---|
| 989 | #ifdef.  Fixes patch from 2005-02-03 for cygwin. | 
|---|
| 990 | * NEWS: Mention this fix. | 
|---|
| 991 |  | 
|---|
| 992 | * configure.ac (FUNC_SYSTEM_BROKEN): New check for OS/2 bug. | 
|---|
| 993 | * src/builtin.c (m4_syscmd): Work around OS/2 bug. | 
|---|
| 994 |  | 
|---|
| 995 | * Makefile.am (SUBDIRS): Build . before src, so that autoheader | 
|---|
| 996 | runs first when needed. | 
|---|
| 997 | * doc/Makefile.am (m4.1): Backport rule from CVS head: build m4.1 | 
|---|
| 998 | once in srcdir rather than multiple times in VPATH builds. | 
|---|
| 999 |  | 
|---|
| 1000 | 2006-07-03  Eric Blake  <ebb9@byu.net> | 
|---|
| 1001 |  | 
|---|
| 1002 | * checks/check-them: Use portable = in test. | 
|---|
| 1003 | * src/Makefile.am (AM_CPPFLAGS): Omit space between -I and | 
|---|
| 1004 | directory, as required by Solaris cc.  Include built headers, as | 
|---|
| 1005 | required by Solaris make in VPATH build. | 
|---|
| 1006 | * checks/Makefile.in: Use $(srcdir) where needed. | 
|---|
| 1007 | (CHECKS): Factor $(srcdir) into macro. | 
|---|
| 1008 | (DISTFILES): Likewise.  Automake takes care of distributing | 
|---|
| 1009 | Makefile.in. | 
|---|
| 1010 | (dist): Simplify. | 
|---|
| 1011 | (Makefile): Use modern syntax of config.status. | 
|---|
| 1012 | * doc/m4.texinfo (Loops, Include, Undivert, Incompatibilities): | 
|---|
| 1013 | Avoid overfull and underfull hboxes in dvi. | 
|---|
| 1014 |  | 
|---|
| 1015 | Fix 'make check' in VPATH build.  All files included by testsuite | 
|---|
| 1016 | now live in a single directory.  Use forloop.m4 in testsuite. | 
|---|
| 1017 | * checks/incl.m4, checks/foo, checks/wrapfifo.m4: Move from | 
|---|
| 1018 | here... | 
|---|
| 1019 | * examples/incl.m4, examples/foo, examples/wrapfifo.m4: ...to | 
|---|
| 1020 | here. | 
|---|
| 1021 | * checks/Makefile.in (DISTFILES): Don't distribute moved files. | 
|---|
| 1022 | * examples/Makefile.am (EXTRA_DIST): Distribute new files. | 
|---|
| 1023 | * checks/check-them: Avoid s/// when filename is in pattern. | 
|---|
| 1024 | * examples/forloop.m4: Fix to match documentation. | 
|---|
| 1025 | * doc/m4.texinfo (Include, Undivert, Incompatibilities): Reflect | 
|---|
| 1026 | new locations. | 
|---|
| 1027 | (Loops, Format): Actually use forloop.m4 in tests. | 
|---|
| 1028 |  | 
|---|
| 1029 | 2006-07-02  Eric Blake  <ebb9@byu.net> | 
|---|
| 1030 |  | 
|---|
| 1031 | * checks/Makefile.in (exec_prefix, prefix): New macros, so that | 
|---|
| 1032 | $(bindir) works in installcheck. | 
|---|
| 1033 | (check, installcheck): No longer change directory, so that | 
|---|
| 1034 | distcheck works with a read-only builddir. | 
|---|
| 1035 | * checks/check-them: Work when pwd is no longer builddir. | 
|---|
| 1036 |  | 
|---|
| 1037 | 2006-07-01  Eric Blake  <ebb9@byu.net> | 
|---|
| 1038 |  | 
|---|
| 1039 | * GNUmakefile: New file, borrowed from coreutils. | 
|---|
| 1040 | * Makefile.am (EXTRA_DIST): Distribute GNUmakefile. | 
|---|
| 1041 | * Makefile.maint (Makefile): Delete this rule, now that | 
|---|
| 1042 | GNUmakefile includes Makefile. | 
|---|
| 1043 |  | 
|---|
| 1044 | 2006-06-30  Eric Blake  <ebb9@byu.net> | 
|---|
| 1045 |  | 
|---|
| 1046 | For compatibility with other m4 implementations, sysval returns | 
|---|
| 1047 | signal<<8 rather than 0 if syscmd is terminated by a signal. | 
|---|
| 1048 | * configure.ac (AC_CHECK_HEADERS_ONCE): Check for sys/wait.h. | 
|---|
| 1049 | * src/builtin.c (include): Include sys/wait.h when stdlib.h does | 
|---|
| 1050 | not provide wait macros. | 
|---|
| 1051 | (WTERMSIG, WIFSIGNALED, WIFEXITED): More fallback macros. | 
|---|
| 1052 | (M4SYSVAL_EXITBITS, M4SYSVAL_TERMSIGBITS): New helper macros. | 
|---|
| 1053 | (m4_esyscmd): Set sysval to -1 on failure. | 
|---|
| 1054 | (m4_sysval): Print 127 on failure, and accomodate signals if they | 
|---|
| 1055 | are detectable. | 
|---|
| 1056 | * NEWS: Document this change. | 
|---|
| 1057 | * doc/m4.texinfo (Platform macros, Esyscmd, Sysval): Fix typos in | 
|---|
| 1058 | last commit. | 
|---|
| 1059 | * checks/check-them: Likewise. | 
|---|
| 1060 | * src/debug.c (debug_set_file): Work around mingw fstat bug. | 
|---|
| 1061 |  | 
|---|
| 1062 | * src/m4.h (UNIX, W32_NATIVE): Improve platform detection macros. | 
|---|
| 1063 | * src/freeze.c (produce_frozen_state): Use new spelling of | 
|---|
| 1064 | platform macro. | 
|---|
| 1065 | * src/builtin.c (predefined_tab): Add __windows__ on non-unix | 
|---|
| 1066 | platforms. | 
|---|
| 1067 | (m4_syscmd, m4_esyscmd): The empty command is successful. | 
|---|
| 1068 | * doc/m4.texinfo (Shell commands): Rename from UNIX commands. | 
|---|
| 1069 | Document platform-dependence of system(). | 
|---|
| 1070 | (Syscmd): Add example. | 
|---|
| 1071 | (Esyscmd): Make example more robust, and actually demonstrate | 
|---|
| 1072 | rescanning. | 
|---|
| 1073 | (Sysval): Expand test to cover esyscmd code path, and to check | 
|---|
| 1074 | that empty command is successful.  Add conditional check for | 
|---|
| 1075 | signal behavior. | 
|---|
| 1076 | (Other Incompatibilities): Move platform macros from here... | 
|---|
| 1077 | (Platform macros): ...to this new node.  Add windows macro. | 
|---|
| 1078 | Check that exactly one platform macro is provided. | 
|---|
| 1079 | * checks/check-them: Improve trap cleanup.  Tolerate dirname and | 
|---|
| 1080 | .exe in error messages.  Allow for skipping checks. | 
|---|
| 1081 | * configure.ac (HAVE_EFGCVT): Kill dead configure check. | 
|---|
| 1082 | * NEWS: Document platform macros. | 
|---|
| 1083 |  | 
|---|
| 1084 | 2006-06-29  Eric Blake  <ebb9@byu.net> | 
|---|
| 1085 |  | 
|---|
| 1086 | Fix buffer overrun bug. | 
|---|
| 1087 | * m4/gnulib-cache.m4: Augment with gnulib-tool --import | 
|---|
| 1088 | xvasprintf. | 
|---|
| 1089 | * src/format.c [HAVE_EFGCVT]: Delete this code, and use *printf | 
|---|
| 1090 | variant instead, since [efg]cvt are obsolete and our use of them | 
|---|
| 1091 | was buggy (savannah sr #104303). | 
|---|
| 1092 | (format): Fix buffer overflow by using xasprintf. | 
|---|
| 1093 | * doc/m4.texinfo (Format): Expand format test to catch both bugs. | 
|---|
| 1094 | * NEWS: Document this fix. | 
|---|
| 1095 |  | 
|---|
| 1096 | * configure.ac (AC_CANONICAL_HOST, AC_CANONICAL_BUILD): Allow | 
|---|
| 1097 | cross-compilation. | 
|---|
| 1098 | (AC_CACHE_CHECK): Cache search for ecvt. | 
|---|
| 1099 |  | 
|---|
| 1100 | 2006-06-27  Eric Blake  <ebb9@byu.net> | 
|---|
| 1101 |  | 
|---|
| 1102 | * doc/m4.texinfo (Eval): Document 32-bit signed limitations | 
|---|
| 1103 | required by POSIX, and add example that exposed core dump on x86 | 
|---|
| 1104 | architectures. | 
|---|
| 1105 | (Incompatibilities): Document incompatibility in eval precedence. | 
|---|
| 1106 | * src/eval.c (shift_term): Explicitly mask, to avoid undefined | 
|---|
| 1107 | behavior. | 
|---|
| 1108 | (mult_term): Explicitly check for -1, to avoid SIGFPE on x86. | 
|---|
| 1109 | * NEWS: Document this change. | 
|---|
| 1110 |  | 
|---|
| 1111 | * doc/m4.texinfo: Use @noindent consistently. | 
|---|
| 1112 | (Quoting Arguments): Document that unquoted parentheses group | 
|---|
| 1113 | arguments. | 
|---|
| 1114 | (Pseudo Arguments): Expand tests to show this. | 
|---|
| 1115 | (Incompatibilities): Contrast traditional behavior of | 
|---|
| 1116 | changequote. | 
|---|
| 1117 |  | 
|---|
| 1118 | 2006-06-24  Eric Blake  <ebb9@byu.net> | 
|---|
| 1119 |  | 
|---|
| 1120 | * configure.ac (AC_PREREQ): Autoconf 2.60 is now released. | 
|---|
| 1121 | (AC_CHECK_HEADERS_ONCE): Use this new feature. | 
|---|
| 1122 | (AC_CHECK_FUNCS_ONCE): Likewise. | 
|---|
| 1123 |  | 
|---|
| 1124 | 2006-06-23  Eric Blake  <ebb9@byu.net> | 
|---|
| 1125 |  | 
|---|
| 1126 | * doc/m4.texinfo: Quoting cleanup throughout - follow | 
|---|
| 1127 | autoconf-recommended style of one level of quote per parenthesis | 
|---|
| 1128 | in the normal case.  Adjust error messages to match GNU coding | 
|---|
| 1129 | standards (and to allow 'make check' to pass again). | 
|---|
| 1130 | (Quoted strings, Inhibiting Invocation): Turn more examples into | 
|---|
| 1131 | tests. | 
|---|
| 1132 | (Comments): Resolve FIXME by adding example. | 
|---|
| 1133 | (Define): Add example about underquoting. | 
|---|
| 1134 | (Defn): Add example about use of $0. | 
|---|
| 1135 | (Indir, Format): Resolve FIXME done in last commit. | 
|---|
| 1136 | (Ifelse): Add example about creating blind macro. | 
|---|
| 1137 | (Debugging): Fix grammar. | 
|---|
| 1138 | (Dnl): Add example about dnl with arguments. | 
|---|
| 1139 | (M4wrap): Be explicit that LIFO order is non compliant, and will | 
|---|
| 1140 | change in m4 2.0. | 
|---|
| 1141 | (Undivert): Resolve FIXME by adding example. | 
|---|
| 1142 | (Frozen files): Document that m4wrap and sysval will not work | 
|---|
| 1143 | consistently until m4 2.0. | 
|---|
| 1144 | (Incompatibilities): Document another POSIX compliance bug, this | 
|---|
| 1145 | time with changequote.  Document a traditional incompatibility | 
|---|
| 1146 | with partial input spanning file boundaries. | 
|---|
| 1147 |  | 
|---|
| 1148 | Make error messages more consistent with GNU coding standards - | 
|---|
| 1149 | start with lower case, and don't end sentence with punctuation. | 
|---|
| 1150 | * src/debug.c (trace_pre): Update message wording. | 
|---|
| 1151 | * src/eval.c (evaluate, cmp_term, shift_term, mult_term): | 
|---|
| 1152 | Likewise. | 
|---|
| 1153 | * src/freeze.c (produce_frozen_state, issue_expect_message), | 
|---|
| 1154 | (reload_frozen_state): Likewise. | 
|---|
| 1155 | * src/input.c (push_string_init, pop_init, init_macro_token), | 
|---|
| 1156 | (peek_input, next_char_1, set_word_regexp, next_token): Likewise. | 
|---|
| 1157 | * src/m4.c (stackovf_handler, main): Likewise. | 
|---|
| 1158 | * src/macro.c (expand_token, expand_argument, call_macro), | 
|---|
| 1159 | (expand_macro): Likewise. | 
|---|
| 1160 | * src/output.c (make_room_for, output_text, insert_file), | 
|---|
| 1161 | (freeze_diversions): Likewise. | 
|---|
| 1162 | * src/symtab.c (symtab_init, lookup_symbol): Likewise. | 
|---|
| 1163 |  | 
|---|
| 1164 | * src/builtin.c (builtin_tab): Make format and indir blind. | 
|---|
| 1165 | (substitute): Prefer "Warning:" vs. "ERROR:" in messages. | 
|---|
| 1166 | * NEWS: Mention the change to builtins. | 
|---|
| 1167 |  | 
|---|
| 1168 | 2006-06-22  Eric Blake  <ebb9@byu.net> | 
|---|
| 1169 |  | 
|---|
| 1170 | Robustify frozen file format. | 
|---|
| 1171 | * src/freeze.c (reload_frozen_state): Add GET_DIRECTIVE helper | 
|---|
| 1172 | macro.  Require V first, and only accept it once.  For F, use | 
|---|
| 1173 | placeholder if builtin is not found, rather than warning. | 
|---|
| 1174 | * src/m4.h (m4_placeholder): New prototype. | 
|---|
| 1175 | * src/builtin.c: Unify error message style. | 
|---|
| 1176 | (m4_placeholder): New function, warn if invoked. | 
|---|
| 1177 | (builtin_tab): Add m4_placeholder. | 
|---|
| 1178 | (m4_defn): Warn if placeholder is encountered. | 
|---|
| 1179 | (find_builtin_by_addr): Handle placeholder. | 
|---|
| 1180 | (find_builtin_by_name): Return placeholder on failure. | 
|---|
| 1181 | (m4_builtin): Treat placeholder as undefined. | 
|---|
| 1182 | * doc/m4.texinfo (Frozen files): Document changes in V and F. | 
|---|
| 1183 | * NEWS: Document this change. | 
|---|
| 1184 | Reported by Bruno Haible. | 
|---|
| 1185 |  | 
|---|
| 1186 | * doc/m4.texinfo: Whitespace cleanup.  TABs are evil in texinfo. | 
|---|
| 1187 | (tabchar): New macro, so that 'make check' still works. | 
|---|
| 1188 | (Invoking m4): Document that ignored compatibility options -B, -S, | 
|---|
| 1189 | and -T each consume an argument. | 
|---|
| 1190 | * checks/get-them: Honor @tabchar{}. | 
|---|
| 1191 |  | 
|---|
| 1192 | Avoid compiler warnings during -DDEBUG. | 
|---|
| 1193 | * src/m4.h (M4_GNUC_ATTRIBUTE, M4_GNUC_UNUSED): New macros. | 
|---|
| 1194 | [DEBUG]: Also imply DEBUG_OUTPUT and DEBUG_STKOVF. | 
|---|
| 1195 | * src/input.c (print_token) [DEBUG_INPUT]: Use correct format. | 
|---|
| 1196 | (lex_debug) [DEBUG_INPUT]: Fix to compile.  Mark unused. | 
|---|
| 1197 | (next_token) [DEBUG_INPUT]: Print before returning. | 
|---|
| 1198 | * src/path.c (include_dump) [DEBUG_INCL]: Mark unused. | 
|---|
| 1199 | * src/symtab.c (symtab_debug) [DEBUG_SYM]: Mark unused. | 
|---|
| 1200 |  | 
|---|
| 1201 | Avoid mkstemp bugs on various platforms. | 
|---|
| 1202 | * m4/gnulib-cache.c: Augment with gnulib-tool --import mkstemp. | 
|---|
| 1203 | * src/output.c [! HAVE_MKSTEMP]: Delete. | 
|---|
| 1204 | * configure.ac (AC_CHECK_FUNCS): Don't check for mkstemp. | 
|---|
| 1205 | * src/m4.h (mkstemp) [! HAVE_MKSTEMP]: Prototype, if needed. | 
|---|
| 1206 | * NEWS: Document this. | 
|---|
| 1207 |  | 
|---|
| 1208 | * Makefile.am (EXTRA_DIST): Distribute gnulib-cache.m4. | 
|---|
| 1209 | Reported by Bruno Haible. | 
|---|
| 1210 |  | 
|---|
| 1211 | 2006-06-21  Eric Blake  <ebb9@byu.net> | 
|---|
| 1212 |  | 
|---|
| 1213 | Avoid obsolete sigstack when POSIX sigaltstack is available. | 
|---|
| 1214 | * src/m4.c: Blindly assume signal.h, since stackovf.c and gnulib | 
|---|
| 1215 | do likewise. | 
|---|
| 1216 | * configure.ac (AC_CHECK_HEADERS): Likewise. | 
|---|
| 1217 | (AC_CHECK_TYPES): New check for siginfo_t, since siginfo.h is | 
|---|
| 1218 | obsolete and most hosts now have it in signal.h. | 
|---|
| 1219 | (AC_CHECK_MEMBERS): New check for sigaction.sa_sigaction. | 
|---|
| 1220 | (AC_CACHE_CHECK): Cache decision to use stackovf. | 
|---|
| 1221 | (AC_EGREP_HEADER): Switch to AC_CHECK_TYPES. | 
|---|
| 1222 | * src/stackovf.c (DEBUG_STACKOVF): Remove unused define. | 
|---|
| 1223 | (SA_RESETHAND, SA_SIGINFO): Provide fallback definitions, to | 
|---|
| 1224 | simplify later code. | 
|---|
| 1225 | (PARAM_STACKOVF, PARAM_NOSTACKOVF): Move further away from NULL, | 
|---|
| 1226 | in case of dereferencing a member of a NULL pointer. | 
|---|
| 1227 | (sigsegv_handler) [HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define a | 
|---|
| 1228 | POSIX handler. | 
|---|
| 1229 | (setup_stackovf_trap): Use NULL instead of 0 for pointers, use | 
|---|
| 1230 | EXIT_FAILURE in error, indent preprocessor directives. | 
|---|
| 1231 | [HAVE_SIGALTSTACK && HAVE_SIGINFO_T]: Depend on siginfo_t, not | 
|---|
| 1232 | siginfo.h. | 
|---|
| 1233 | [HAVE_SIGACTION && defined SA_ONSTACK]: Prefer POSIX handler. | 
|---|
| 1234 | Reported by Santiago Vila. | 
|---|
| 1235 |  | 
|---|
| 1236 | 2006-06-19  Eric Blake  <ebb9@byu.net> | 
|---|
| 1237 |  | 
|---|
| 1238 | * THANKS: Update. | 
|---|
| 1239 |  | 
|---|
| 1240 | 2006-06-18  Andreas Buening  <andreas.buening@nexgo.de>  (tiny change) | 
|---|
| 1241 |  | 
|---|
| 1242 | * checks/Makefile.in (PATH_SEPARATOR): New macro. | 
|---|
| 1243 | (check, installcheck): Use it, for OS/2. | 
|---|
| 1244 |  | 
|---|
| 1245 | 2006-06-18  Eric Blake  <ebb9@byu.net> | 
|---|
| 1246 |  | 
|---|
| 1247 | Consistently use "GNU M4" as package name, "m4" as executable | 
|---|
| 1248 | name. | 
|---|
| 1249 | * NEWS: Document previous fix. | 
|---|
| 1250 | * THANKS: Update. | 
|---|
| 1251 | * README: Fix grammar.  Document that --enable-changeword is on | 
|---|
| 1252 | its last leg. | 
|---|
| 1253 | * doc/m4.texinfo (Top, Changeword): Likewise. | 
|---|
| 1254 | (Sysval): Enhance this test. | 
|---|
| 1255 | (History): Backport this section from CVS head, and update. | 
|---|
| 1256 |  | 
|---|
| 1257 | 2006-06-18  Bruno Haible  <bruno@clisp.org>  (tiny change) | 
|---|
| 1258 | Eric Blake  <ebb9@byu.net> | 
|---|
| 1259 |  | 
|---|
| 1260 | * src/builtin.c (WEXITSTATUS): Provide fallback definition. | 
|---|
| 1261 | (m4_esyscmd): Set sysval to 0xffff, to accomodate both | 
|---|
| 1262 | big-endian and little-endian wait status definitions. | 
|---|
| 1263 | (m4_sysval): Use WEXITSTATUS. | 
|---|
| 1264 | Reported by Andreas Buening. | 
|---|
| 1265 |  | 
|---|
| 1266 | 2006-06-18  Eric Blake  <ebb9@byu.net> | 
|---|
| 1267 |  | 
|---|
| 1268 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 1269 | * NEWS: Describe changes in 1.4.4c. | 
|---|
| 1270 |  | 
|---|
| 1271 | 2006-06-17  Eric Blake  <ebb9@byu.net> | 
|---|
| 1272 |  | 
|---|
| 1273 | Release 1.4.4b: | 
|---|
| 1274 |  | 
|---|
| 1275 | * configure.ac (AC_INIT): Bump version number. | 
|---|
| 1276 | * NEWS: Describe changes since 1.4.4. | 
|---|
| 1277 | * Makefile.maint (cvs-news): Accomodate copyright line wrapping. | 
|---|
| 1278 |  | 
|---|
| 1279 | * Makefile.am (MAINTAINERCLEANFILES): Clean files added by | 
|---|
| 1280 | bootstrap. | 
|---|
| 1281 | * checks/Makefile.in (maintainer-clean): Add missing target. | 
|---|
| 1282 | * COPYING: Remove generated file from CVS. | 
|---|
| 1283 |  | 
|---|
| 1284 | 2006-06-16  Eric Blake  <ebb9@byu.net> | 
|---|
| 1285 |  | 
|---|
| 1286 | * checks/Makefile.in (DISTFILES): Distribute wrapfifo.m4. | 
|---|
| 1287 |  | 
|---|
| 1288 | 2006-06-15  Eric Blake  <ebb9@byu.net> | 
|---|
| 1289 |  | 
|---|
| 1290 | * checks/wrapfifo.m4: New file.  Use it... | 
|---|
| 1291 | * doc/m4.texinfo (Incompatibilities): here, in a new test case to | 
|---|
| 1292 | demonstrate how to get POSIX behavior of m4wrap prior to m4 2.0. | 
|---|
| 1293 |  | 
|---|
| 1294 | * src/m4.h (to_uchar): New function. | 
|---|
| 1295 | * src/eval.c (eval_lex): Use it to avoid passing signed char to | 
|---|
| 1296 | isdigit, isalpha, isupper, islower, isspace, isalnum. | 
|---|
| 1297 | * src/builtin.c (expand_user_macro): Likewise. | 
|---|
| 1298 | * src/format.c (format): Likewise. | 
|---|
| 1299 | * src/macro.c (expand_argument): Likewise. | 
|---|
| 1300 | * NEWS: Document this security fix. | 
|---|
| 1301 |  | 
|---|
| 1302 | Message cleanup. | 
|---|
| 1303 | * src/symtab.c (lookup_symbol): Use invalid, not illegal. | 
|---|
| 1304 | * src/freeze.c (reload_frozen_state): Fix typo in message. | 
|---|
| 1305 | (produce_frozen_state): Standardize on builtin, not built-in. | 
|---|
| 1306 | * src/builtin.c (numeric_arg, bad_argc): Likewise. | 
|---|
| 1307 |  | 
|---|
| 1308 | * configure.ac (M4_EARLY, M4_INIT): Use gnulib. | 
|---|
| 1309 | (AC_PROG_RANLIB, AC_AIX, AC_MINIX, AC_CHECK_HEADERS), | 
|---|
| 1310 | (AC_FUNC_ALLOCA, AC_REPLACE_FUNCS): Avoid checks now done by | 
|---|
| 1311 | gnulib. | 
|---|
| 1312 | * Makefile.am (ACLOCAL_AMFLAGS): New entry, for gnulib. | 
|---|
| 1313 | * m4/gnulib-cache.m4: New file, from gnulib. | 
|---|
| 1314 | * bootstrap: Invoke gnulib-tool --update. | 
|---|
| 1315 | * src/m4.c (main): Cast away const. | 
|---|
| 1316 | * NEWS: Document that regex is updated. | 
|---|
| 1317 | * THANKS: Update. | 
|---|
| 1318 |  | 
|---|
| 1319 | 2006-06-08  Eric Blake  <ebb9@byu.net> | 
|---|
| 1320 |  | 
|---|
| 1321 | * configure.ac (changeword): Work even when changeword is not a | 
|---|
| 1322 | macro. | 
|---|
| 1323 | (AC_PROG_AWK, AC_PROG_INSTALL, AC_PROG_MAKE_SET, AC_HEADER_STDC): | 
|---|
| 1324 | Delete; now done by automake. | 
|---|
| 1325 | (AC_ISC_POSIX, AC_C_CONST): Delete; now obsolete. | 
|---|
| 1326 |  | 
|---|
| 1327 | 2006-06-07  Eric Blake  <ebb9@byu.net> | 
|---|
| 1328 |  | 
|---|
| 1329 | * lib/regex.c (bcmp_translate): Canonicalize type name. | 
|---|
| 1330 | * doc/Makefile.am (MAINTAINERCLEANFILES): Fix typo. | 
|---|
| 1331 | * configure.ac (changeword): Disable changeword for the creation | 
|---|
| 1332 | of configure, in case of bootstrapping with an m4 configured with | 
|---|
| 1333 | --enable-changeword. | 
|---|
| 1334 |  | 
|---|
| 1335 | Distribute a rudimentary man page. | 
|---|
| 1336 | * Makefile.am (SUBDIRS): Move doc after src so that 'm4 --help' | 
|---|
| 1337 | can feed help2man. | 
|---|
| 1338 | * doc/Makefile.am (man_MANS, EXTRA_DIST, MAINTAINERDISTCLEAN), | 
|---|
| 1339 | (SUFFIXES, m4.1): New macros and rules to build m4.1. | 
|---|
| 1340 |  | 
|---|
| 1341 | 2006-06-06  Eric Blake  <ebb9@byu.net> | 
|---|
| 1342 |  | 
|---|
| 1343 | * lib/regex.c (re_match_2_internal, bcmp_translate): Avoid | 
|---|
| 1344 | compiler warnings at -O2. | 
|---|
| 1345 | * lib/getopt.c (_getopt_internal): Likewise. | 
|---|
| 1346 |  | 
|---|
| 1347 | Cleanup of previous patches. | 
|---|
| 1348 | * src/input.c (struct input_block): Remove traced member. | 
|---|
| 1349 | (push_macro, init_macro_token): Don't pass trace status around. | 
|---|
| 1350 | * src/m4.h (struct token_data): Remove traced member. | 
|---|
| 1351 | (struct symbol, struct builtin): Reduce unused space. | 
|---|
| 1352 | (TOKEN_DATA_FUNC): Simplify. | 
|---|
| 1353 | (TOKEN_DATA_FUNC_TRACED): Remove unused macro. | 
|---|
| 1354 | (push_macro, define_builtin): Remove unused parameter. | 
|---|
| 1355 | * src/builtin.c (define_builtin, builtin_init, define_macro), | 
|---|
| 1356 | (m4_defn): Don't pass trace status around. | 
|---|
| 1357 | * src/macro.c (expand_argument): Likewise. | 
|---|
| 1358 | * src/freeze.c (reload_frozen_state): Likewise. | 
|---|
| 1359 | * src/symtab.c: Whitespace cleanup. | 
|---|
| 1360 | * NEWS: Clean up wording. | 
|---|
| 1361 | * doc/m4.texinfo (Undefine, Dumpdef, Trace): Cleanup wording; | 
|---|
| 1362 | ensure tests actually expose bugs prior to today's patches. | 
|---|
| 1363 |  | 
|---|
| 1364 | Trace status of builtins is no longer inherited across | 
|---|
| 1365 | define(...,defn(...)).  Fixes bug that autom4te had been working | 
|---|
| 1366 | around. | 
|---|
| 1367 | * src/builtin.c (define_builtin): Don't override trace status. | 
|---|
| 1368 | * doc/m4.texinfo (Trace): Add test for this. | 
|---|
| 1369 | * NEWS: Document this. | 
|---|
| 1370 |  | 
|---|
| 1371 | When changing macro definitions inside the arguments to the macro, | 
|---|
| 1372 | consistently preserve the old definition that was in effect before | 
|---|
| 1373 | argument collection, similar to the C pre-processor. | 
|---|
| 1374 | Reported by John Brzustowski. | 
|---|
| 1375 | * NEWS: Document this change. | 
|---|
| 1376 | * doc/m4.texinfo (Macro Arguments, Undefine, Dumpdef): Document | 
|---|
| 1377 | this policy, and add tests that expose core dumps prior to this | 
|---|
| 1378 | patch. | 
|---|
| 1379 | * src/m4.h (struct symbol): New members to track when a symbol is | 
|---|
| 1380 | still in use after removal from the symbol table. | 
|---|
| 1381 | (SYMBOL_PENDING_EXPANSIONS, SYMBOL_DELETED): Define. | 
|---|
| 1382 | (free_symbol): Prototype. | 
|---|
| 1383 | * src/macro.c (expand_macro): Track pending expansions of a | 
|---|
| 1384 | symbol.  On completion, if a symbol is deleted and no longer | 
|---|
| 1385 | pending, free its memory. | 
|---|
| 1386 | * src/symtab.c (free_symbol): Export.  Don't free memory if symbol | 
|---|
| 1387 | is still in use. | 
|---|
| 1388 | (lookup_symbol) <SYMBOL_INSERT>: Create new entry when old entry | 
|---|
| 1389 | is still in use. | 
|---|
| 1390 | (lookup_symbol) <SYMBOL_DELETE, SYMBOL_POPDEF>: Mark entries still | 
|---|
| 1391 | in use as deleted and remove from the table without freeing | 
|---|
| 1392 | memory. | 
|---|
| 1393 | (symtab_print_list) [DEBUG_SYM]: More debug output. | 
|---|
| 1394 |  | 
|---|
| 1395 | * src/symtab.c (hack_all_symbols): Allow certain modifications of | 
|---|
| 1396 | the symbol table during traversal. | 
|---|
| 1397 | * src/builtin.c (set_trace): Replace SYMBOL_DELETE with | 
|---|
| 1398 | SYMBOL_POPDEF, since only the latter is safe with | 
|---|
| 1399 | hack_all_symbols. | 
|---|
| 1400 |  | 
|---|
| 1401 | Solve crash when passing "indir(`foo')" to "m4 -tfoo". | 
|---|
| 1402 | * src/symtab.c (lookup_symbol) <SYMBOL_DELETE, SYMBOL_POPDEF>: | 
|---|
| 1403 | Preserve placeholder when macro is being traced. | 
|---|
| 1404 | * src/builtin.c (m4_ifdef, m4_indir): A traced but undefined | 
|---|
| 1405 | symbol is not defined. | 
|---|
| 1406 | (set_trace): Remove placeholder when no longer traced. | 
|---|
| 1407 | (m4_traceon): On named traces, always reserve a slot in the | 
|---|
| 1408 | symbol table. | 
|---|
| 1409 | (m4_traceoff): Don't warn about untracing a nonexistent symbol. | 
|---|
| 1410 | * NEWS: Document new trace behavior. | 
|---|
| 1411 | * doc/m4.texinfo (Trace): Tracing by name now consistently works | 
|---|
| 1412 | no matter whether that macro is currently defined. | 
|---|
| 1413 | (Incompatibilities): Document differences between traditional and | 
|---|
| 1414 | GNU trace. | 
|---|
| 1415 |  | 
|---|
| 1416 | 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change) | 
|---|
| 1417 | Eric Blake  <ebb9@byu.net> | 
|---|
| 1418 |  | 
|---|
| 1419 | * src/m4.h (hash_table_size): Now size_t instead of int. | 
|---|
| 1420 | * src/m4.c (hash_table_size): Likewise. | 
|---|
| 1421 | (main): Adjust to this; use atol rather than atoi. | 
|---|
| 1422 | * src/symtab.c: Include <limits.h>, for CHAR_BIT. | 
|---|
| 1423 | (symtab_init, lookup_symbol, hack_all_symbols): | 
|---|
| 1424 | Use size_t for sizes and indexes, not int. | 
|---|
| 1425 | (symtab_print_list) [DEBUG_SYM]: Likewise. | 
|---|
| 1426 | (hash): Likewise.  Don't case-fold in the hash function. | 
|---|
| 1427 | Shift by 7, not 3, for consistency with gnulib/lib/hash.c. | 
|---|
| 1428 | Don't assume hash word is 32 bits. | 
|---|
| 1429 | * NEWS: Document this change. | 
|---|
| 1430 |  | 
|---|
| 1431 | 2006-06-04  Eric Blake  <ebb9@byu.net> | 
|---|
| 1432 |  | 
|---|
| 1433 | * src/symtab.c (symtab_debug, symtab_print_list) [DEBUG_SYM]: Fix | 
|---|
| 1434 | to allow compilation, for use in debugger. | 
|---|
| 1435 | (profiles, current_mode) [DEBUG_SYM]: New variables. | 
|---|
| 1436 | (show_profile, profile_strcmp) [DEBUG_SYM]: New methods for | 
|---|
| 1437 | determining hash table performance. | 
|---|
| 1438 |  | 
|---|
| 1439 | 2006-05-31  Eric Blake  <ebb9@byu.net> | 
|---|
| 1440 | John Brzustowski  <jbrzusto@fastmail.fm> | 
|---|
| 1441 |  | 
|---|
| 1442 | * src/input.c (input_stack): Delete; use current_input instead. | 
|---|
| 1443 | (wrapup_stack): Dynamically allocate, so that recursion is handled | 
|---|
| 1444 | properly. | 
|---|
| 1445 | (push_wrapup): Use current wrapup stack. | 
|---|
| 1446 | (pop_wrapup): Rotate wrapup stack to current, and create new | 
|---|
| 1447 | wrapup stack. | 
|---|
| 1448 | (input_init): Dynamically allocate stacks. | 
|---|
| 1449 | * NEWS: Update, now that recursive m4wrap can no longer cause | 
|---|
| 1450 | core dump. | 
|---|
| 1451 |  | 
|---|
| 1452 | 2006-05-31  Eric Blake  <ebb9@byu.net> | 
|---|
| 1453 |  | 
|---|
| 1454 | * lib/getopt.c: Fix copyright year. | 
|---|
| 1455 | * lib/obstack.c: Ditto. | 
|---|
| 1456 | * src/builtin.c: Ditto. | 
|---|
| 1457 |  | 
|---|
| 1458 | 2006-05-30  Eric Blake  <ebb9@byu.net> | 
|---|
| 1459 |  | 
|---|
| 1460 | * doc/m4.texinfo (M4wrap): Add test to expose m4wrap bug. | 
|---|
| 1461 | Reported by John Brzustowski. | 
|---|
| 1462 | (Incompatibilities): Document known POSIX incompatibilities. | 
|---|
| 1463 | * THANKS: Update. | 
|---|
| 1464 |  | 
|---|
| 1465 | 2006-05-29  Eric Blake  <ebb9@byu.net> | 
|---|
| 1466 |  | 
|---|
| 1467 | * doc/m4.texinfo (Maketemp): Work even when running 'make check' | 
|---|
| 1468 | in read-only dir. | 
|---|
| 1469 |  | 
|---|
| 1470 | Use automake. | 
|---|
| 1471 | * Makefile.am: New file. | 
|---|
| 1472 | * doc/Makefile.am: Ditto. | 
|---|
| 1473 | * examples/Makefile.am: Ditto. | 
|---|
| 1474 | * lib/Makefile.am: Ditto. | 
|---|
| 1475 | * src/Makefile.am: Ditto. | 
|---|
| 1476 | * acinclude.m4: New file, renamed from aclocal.m4. | 
|---|
| 1477 | * configure.ac (AM_INIT_AUTOMAKE): Invoke new macro. | 
|---|
| 1478 | (AC_ARG_PROGRAM): Now redundant. | 
|---|
| 1479 | (STACKOVF): Turn into automake conditional. | 
|---|
| 1480 | (AC_CONFIG_COMMANDS): stamp-h is a command, not a file. | 
|---|
| 1481 | * checks/Makefile.in: Converting this dir to automake was not | 
|---|
| 1482 | trivial; for now, just add missing targets demanded by top-level. | 
|---|
| 1483 | * INSTALL: Remove files that are now generated from CVS. | 
|---|
| 1484 | * Makefile.in: Ditto. | 
|---|
| 1485 | * aclocal.m4: Ditto. | 
|---|
| 1486 | * install-sh: Ditto. | 
|---|
| 1487 | * mkinstalldirs: Ditto. | 
|---|
| 1488 | * doc/Makefile.in: Ditto. | 
|---|
| 1489 | * doc/texinfo.tex: Ditto. | 
|---|
| 1490 | * examples/Makefile.in: Ditto. | 
|---|
| 1491 | * lib/Makefile.in: Ditto. | 
|---|
| 1492 | * src/Makefile.in: Ditto. | 
|---|
| 1493 |  | 
|---|
| 1494 | * AUTHORS: Backport from CVS head, and update. | 
|---|
| 1495 | * doc/m4.texinfo (Changeword): Fix examples to match behavior. | 
|---|
| 1496 |  | 
|---|
| 1497 | 2006-05-27  Eric Blake  <ebb9@byu.net> | 
|---|
| 1498 |  | 
|---|
| 1499 | * lib/regex.c (regex_compile): Kill compiler warnings. | 
|---|
| 1500 | * lib/getopt.c: Likewise. | 
|---|
| 1501 | * lib/obstack.c: Likewise. | 
|---|
| 1502 | * src/builtin.c (builtin_init): Likewise. | 
|---|
| 1503 | * src/path.c (path_search): Likewise. | 
|---|
| 1504 |  | 
|---|
| 1505 | * doc/m4.texinfo: Fix usage of a vs. an. | 
|---|
| 1506 | (Loops, Include, Cleardiv, Patsubst, Format, M4exit): Kill | 
|---|
| 1507 | overfull hbox warnings. | 
|---|
| 1508 | (Inhibiting Invocation, Divert, Maketemp, M4exit): Add new tests. | 
|---|
| 1509 |  | 
|---|
| 1510 | * configure.ac: Update to autoconf 2.59.  Forbid ^M4_.  Fix | 
|---|
| 1511 | quoting. | 
|---|
| 1512 | * aclocal.m4 (fp_PROG_CC_STDC): Delete; now covered by autoconf. | 
|---|
| 1513 | (fp_C_PROTOTYPES): Delete, GNU Coding Standards state we can now | 
|---|
| 1514 | assume C89. | 
|---|
| 1515 | (M4_WITH_DMALLOC): Rename from fp_WITH_DMALLOC. Fix quoting. | 
|---|
| 1516 | * src/m4.h (_): PROTOTYPES is no longer provided, assume C89. | 
|---|
| 1517 | * src/Makefile.in: Delete remains of ansi2knr. | 
|---|
| 1518 | * src/ansi2knr.1: Delete. | 
|---|
| 1519 | * src/ansi2knr.c: Delete. | 
|---|
| 1520 |  | 
|---|
| 1521 | 2006-05-25  Eric Blake  <ebb9@byu.net> | 
|---|
| 1522 |  | 
|---|
| 1523 | * doc/m4.texinfo: Fix spelling errors.  Use `invalid' instead of | 
|---|
| 1524 | `illegal'. | 
|---|
| 1525 |  | 
|---|
| 1526 | * doc/m4.texinfo (Francois): No longer needed as a tex variable. | 
|---|
| 1527 | Reported by Karl Berry. | 
|---|
| 1528 |  | 
|---|
| 1529 | 2006-05-24  Eric Blake  <ebb9@byu.net> | 
|---|
| 1530 |  | 
|---|
| 1531 | * Makefile.in (html): New target. | 
|---|
| 1532 | * doc/Makefile.in (html, m4.html): Likewise. | 
|---|
| 1533 | (MAKEINFOHTML): New macro. | 
|---|
| 1534 | * doc/m4.texinfo (Francois) [ifnottex]: Use newer texinfo | 
|---|
| 1535 | rendering. | 
|---|
| 1536 | (Regexp) [ifhtml]: Make cross-reference to emacs manual an | 
|---|
| 1537 | absolute URL. | 
|---|
| 1538 | Reported by Bob Badour. | 
|---|
| 1539 |  | 
|---|
| 1540 | * THANKS: Update.  Move reporter's email addresses here, instead | 
|---|
| 1541 | of in ChangeLog. | 
|---|
| 1542 |  | 
|---|
| 1543 | 2006-05-11  Eric Blake  <ebb9@byu.net> | 
|---|
| 1544 |  | 
|---|
| 1545 | * THANKS: Update. | 
|---|
| 1546 | * doc/m4.texinfo (Changequote): Give testsuite exposure to bug | 
|---|
| 1547 | patched on 2005-12-04. | 
|---|
| 1548 | Reported by Ilya N. Golubev. | 
|---|
| 1549 |  | 
|---|
| 1550 | * bootstrap: New file, so that generated files need not be stored | 
|---|
| 1551 | in CVS. | 
|---|
| 1552 | * Makefile.in (DISTFILES): Add bootstrap. | 
|---|
| 1553 |  | 
|---|
| 1554 | Make testsuite less sensitive to doc changes. | 
|---|
| 1555 | * doc/m4.texinfo: Use m4.input instead of filename. | 
|---|
| 1556 | * checks/check-them (xerr): Turn m4.input into filename. | 
|---|
| 1557 | * checks/Makefile.in (dist): Depend on stamp-checks. | 
|---|
| 1558 |  | 
|---|
| 1559 | Portability updates for OS/2. | 
|---|
| 1560 | * src/Makefile.in (EXEEXT, OBJEXT): Define. | 
|---|
| 1561 | (LINK): Use CFLAGS. | 
|---|
| 1562 | (.c.obj): Define. | 
|---|
| 1563 | * lib/Makefile.in (OBJEXT): Define. | 
|---|
| 1564 | (.c.obj): Define. | 
|---|
| 1565 | * doc/Makefile.in (install, uninstall): Install info files into | 
|---|
| 1566 | the dir listing. | 
|---|
| 1567 | Reported by Andreas Buening. | 
|---|
| 1568 |  | 
|---|
| 1569 | 2006-05-09  Eric Blake  <ebb9@byu.net> | 
|---|
| 1570 |  | 
|---|
| 1571 | * install-sh: Update to newer upstream version. | 
|---|
| 1572 | * mkinstalldirs: Likewise. | 
|---|
| 1573 | Reported by Andreas Buening. | 
|---|
| 1574 |  | 
|---|
| 1575 | * src/m4.c (main): Bump copyright year. | 
|---|
| 1576 | * Makefile.in (datarootdir): Define, for autoconf 2.59c. | 
|---|
| 1577 | * doc/Makefile.in (datarootdir): Likewise. | 
|---|
| 1578 |  | 
|---|
| 1579 | 2006-05-08  Eric Blake  <ebb9@byu.net> | 
|---|
| 1580 |  | 
|---|
| 1581 | * THANKS: Update. | 
|---|
| 1582 | * doc/m4.texinfo (Bugs): Backport bug email address from head. | 
|---|
| 1583 | Reported by Stepan Kasal. | 
|---|
| 1584 |  | 
|---|
| 1585 | 2005-12-04  Ilya N. Golubev  <gin@mo.msk.ru>  (tiny change) | 
|---|
| 1586 |  | 
|---|
| 1587 | * input.c (match_input): Do not pass expression with side effect | 
|---|
| 1588 | to `obstack_grow'.  Fix <INTERNAL ERROR: Recursive push_string!>. | 
|---|
| 1589 | * NEWS: Updated. | 
|---|
| 1590 |  | 
|---|
| 1591 | 2005-12-04  Gary V. Vaughan  <gary@gnu.org>  (tiny change) | 
|---|
| 1592 |  | 
|---|
| 1593 | * doc/m4.texinfo (How to debug macros and input): s/woould/would/ | 
|---|
| 1594 | Reported by Damian Menscher. | 
|---|
| 1595 |  | 
|---|
| 1596 | 2005-10-19  Gary V. Vaughan  <gary@gnu.org>  (tiny change) | 
|---|
| 1597 |  | 
|---|
| 1598 | * configure.ac (AC_INIT): Bump to 1.4.4a. | 
|---|
| 1599 |  | 
|---|
| 1600 | 2005-10-19  Gary V. Vaughan  <gary@gnu.org>  (tiny change) | 
|---|
| 1601 |  | 
|---|
| 1602 | Release 1.4.4: | 
|---|
| 1603 |  | 
|---|
| 1604 | * configure.ac (AC_INIT): Bump to 1.4.4. | 
|---|
| 1605 | * NEWS: Describe 1.4.4's changes. | 
|---|
| 1606 | * INSTALL, install-sh, doc/texinfo.tex: Updated from upstream. | 
|---|
| 1607 |  | 
|---|
| 1608 | 2005-10-17  John Gatewood Ham  <zappaman@buraphalinux.org>  (tiny change) | 
|---|
| 1609 |  | 
|---|
| 1610 | * src/m4.c: fix return code when non-existent files are processed | 
|---|
| 1611 |  | 
|---|
| 1612 | 2005-10-17  John Gatewood Ham  <zappaman@buraphalinux.org>  (tiny change) | 
|---|
| 1613 |  | 
|---|
| 1614 | * README: update email address for bug reports. | 
|---|
| 1615 |  | 
|---|
| 1616 | 2005-10-17  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1617 |  | 
|---|
| 1618 | * doc/m4.info: Generated files are not kept in the repository. | 
|---|
| 1619 |  | 
|---|
| 1620 | 2005-05-01  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1621 |  | 
|---|
| 1622 | The FSF are moving offices today.  Changed their contact address | 
|---|
| 1623 | in all files from `59 Temple Place, Suite 330, MA 02111-1307' to | 
|---|
| 1624 | `51 Franklin Street, Fifth Floor, MA 02110-1301'. | 
|---|
| 1625 |  | 
|---|
| 1626 | Also, some of the files here were never updated from the previous | 
|---|
| 1627 | '675 Mass Ave, Cambridge, MA 02139', so changed those to the | 
|---|
| 1628 | '51 Franklin Street, Fifth Floor, MA 02110-1301' address too. | 
|---|
| 1629 |  | 
|---|
| 1630 | 2005-03-31  Mike Frysinger  <vapier@gentoo.org> | 
|---|
| 1631 |  | 
|---|
| 1632 | * Makefile.in (bindir, infodir): Substitute from configure rather | 
|---|
| 1633 | than hardcode. | 
|---|
| 1634 | * doc/Makefile.in (infodir): Ditto. | 
|---|
| 1635 | * src/Makefile.in (bindir): Ditto. | 
|---|
| 1636 | * NEWS: Updated. | 
|---|
| 1637 |  | 
|---|
| 1638 | 2005-03-31  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1639 |  | 
|---|
| 1640 | Changes needed to automate the release process for 1.4.3: | 
|---|
| 1641 |  | 
|---|
| 1642 | * Makefile.in (dist): Make .tar.bz2 tarball too. | 
|---|
| 1643 | * Makefile.maint (TSDEPS_DIST): Remove m4/libtool.m4. | 
|---|
| 1644 | (cvs-news): Look 1 line further down for NEWS release number. | 
|---|
| 1645 | (cvs-dist): We don't use automake, so make dist is fine. | 
|---|
| 1646 | Remove double . before suffixes. | 
|---|
| 1647 | (cvs-release): Don't mention manual.html. | 
|---|
| 1648 | (fetch): Get latest gendocs files. | 
|---|
| 1649 | (web-manual): Rewritten to use gendoc for multiformat manuals. | 
|---|
| 1650 | * doc/gendocs.sh: Don't save an old version in m4 CVS! | 
|---|
| 1651 | * doc/m4.texinfo (Index): HFS+ (the file system on my Mac) is case | 
|---|
| 1652 | preserving, but case insensitive, so generating html docs per node | 
|---|
| 1653 | clashes between Index.html, the node file, and index.html, the | 
|---|
| 1654 | top-level of the document tree... | 
|---|
| 1655 | (Index macro): ...so renamed to this.  Changed all references. | 
|---|
| 1656 |  | 
|---|
| 1657 | 2005-03-31  Gary V. Vaughan  <gary@gnu.org>  (tiny change) | 
|---|
| 1658 |  | 
|---|
| 1659 | * configure.ac (AC_INIT): Bump to 1.4.3a. | 
|---|
| 1660 |  | 
|---|
| 1661 | 2005-03-31  Gary V. Vaughan  <gary@gnu.org>  (tiny change) | 
|---|
| 1662 |  | 
|---|
| 1663 | Release 1.4.3: | 
|---|
| 1664 |  | 
|---|
| 1665 | * configure.in (AC_INIT): Bump to 1.4.3. | 
|---|
| 1666 | * NEWS: Describe 1.4.3's changes. | 
|---|
| 1667 |  | 
|---|
| 1668 | 2005-03-31  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1669 |  | 
|---|
| 1670 | * Makefile.maint: New file with release rules, from CVS libtool. | 
|---|
| 1671 | * Makefile.in (DISTFILES): Add Makefile.maint. | 
|---|
| 1672 | * INSTALL, install-sh, doc/texinfo.tex: Updated to latest | 
|---|
| 1673 | canonical versions. | 
|---|
| 1674 |  | 
|---|
| 1675 | 2005-03-31  Eric Blake  <ebb9@byu.net>  (tiny change) | 
|---|
| 1676 |  | 
|---|
| 1677 | * doc/m4.texinfo (Patsubst): Re-add trailing space required by | 
|---|
| 1678 | checks/47.patsubst, with a redundant @comment to prevent emacs | 
|---|
| 1679 | from removing it accidentally again. | 
|---|
| 1680 | * checks/get-them: Allow for trailing spaces tucked behind | 
|---|
| 1681 | @comment marks. | 
|---|
| 1682 |  | 
|---|
| 1683 | 2005-03-31  Eric Blake  <ebb9@byu.net>  (tiny change) | 
|---|
| 1684 |  | 
|---|
| 1685 | * doc/Makefile.in (install, uninstall): Accomodate DESTDIR. | 
|---|
| 1686 | * src/Makefile.in (install, uninstall): Likewise. | 
|---|
| 1687 |  | 
|---|
| 1688 | 2005-02-07  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1689 |  | 
|---|
| 1690 | * lib/regex.c, lib/regex.h:  Reverted gnulib update, which broke | 
|---|
| 1691 | on Cygwin. | 
|---|
| 1692 | Reported by Eric Blake. | 
|---|
| 1693 |  | 
|---|
| 1694 | 2005-02-04  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1695 |  | 
|---|
| 1696 | * lib/regex.c, lib/regex.h: Updated from gnulib. | 
|---|
| 1697 | * src/input.c (set_word_regexp):  Don't change the word_regexp | 
|---|
| 1698 | unless it compiles correctly. | 
|---|
| 1699 | * NEWS: Updated. | 
|---|
| 1700 | Reported by Frank Schwidom. | 
|---|
| 1701 |  | 
|---|
| 1702 | * Makefile.in (stamp-h): Regenerate config.h properly. | 
|---|
| 1703 |  | 
|---|
| 1704 | 2005-02-03  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1705 |  | 
|---|
| 1706 | * configure.ac (AC_DEFINE): Fix overquoting of description | 
|---|
| 1707 | argument. | 
|---|
| 1708 |  | 
|---|
| 1709 | * src/m4.h (__CYGWIN__, WIN32): Canonicalise Windows and Cygwin | 
|---|
| 1710 | recognition macros. | 
|---|
| 1711 | * src/freeze.c (produce_frozen_state): Use \n line-endings even | 
|---|
| 1712 | on Windows, so that the frozen file reader will work. | 
|---|
| 1713 | Reported by Josef T. Burger. | 
|---|
| 1714 |  | 
|---|
| 1715 | * src/m4.c (main): Modernise the --version output. | 
|---|
| 1716 |  | 
|---|
| 1717 | 2005-02-03  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1718 |  | 
|---|
| 1719 | Modernise the configury a little to prevent spurious errors from | 
|---|
| 1720 | Autoconf-2.59's autoreconf: | 
|---|
| 1721 |  | 
|---|
| 1722 | * config.h.in: Renamed to... | 
|---|
| 1723 | * config-h.in: ...this to better support DOS 8.3 file systems. | 
|---|
| 1724 | * acconfig.h: Removed. | 
|---|
| 1725 | * configure.in: Renamed to... | 
|---|
| 1726 | * configure.ac: ...this, and AC_DEFINE used to declare config.h | 
|---|
| 1727 | entry comments.  Slight reorganisation and reformatting. | 
|---|
| 1728 | * aclocal.m4: Use third argument to AC_DEFINE to declare config.h | 
|---|
| 1729 | entry comments. | 
|---|
| 1730 | (AC_INIT): Use a modern 3 argument call. | 
|---|
| 1731 | * Makefile.in, checks/Makefile.in, doc/Makefile.in, | 
|---|
| 1732 | examples/Makefile.in, lib/Makefile.in, src/Makefile.in: | 
|---|
| 1733 | s/PRODUCT/PACKAGE/g. | 
|---|
| 1734 | * Makefile.in (DISTFILES): Removed acconfig.h, configure.in, | 
|---|
| 1735 | config.h.in.  Added configure.ac, config-h.in. | 
|---|
| 1736 | (stamp-h.in): Removed acconfig.h from dependencies. | 
|---|
| 1737 | (configure): Depends on configure.ac, not configure.in. | 
|---|
| 1738 | * doc/Makefile.in (stamp-vti): Ditto. | 
|---|
| 1739 | * src/freeze.c (produce_frozen_state), src/m4.c (main): Adjust for | 
|---|
| 1740 | difference between PRODUCT="m4" and PACKAGE="GNU M4". | 
|---|
| 1741 | * configure: Regenerated. | 
|---|
| 1742 |  | 
|---|
| 1743 | 2005-02-03  Noah Misch  <noah@cs.caltech.edu> | 
|---|
| 1744 |  | 
|---|
| 1745 | * src/output.c (mkstemp): Make non-static, and build regardless of | 
|---|
| 1746 | HAVE_TMPFILE; src/builtin.c also needs this replacement. | 
|---|
| 1747 | * NEWS: Update. | 
|---|
| 1748 |  | 
|---|
| 1749 | 2004-09-09  Vincent Lonngren  <Vincent.lonngren.759@student.lu.se> | 
|---|
| 1750 |  | 
|---|
| 1751 | * configure.in (AC_CHECK_HEADERS): Commit works best when you save | 
|---|
| 1752 | changes from your editor buffer first. | 
|---|
| 1753 |  | 
|---|
| 1754 | * configure.in (AC_CHECK_HEADERS):  Add signal.h, sys/signal.h. | 
|---|
| 1755 | * src/m4.c: And include them as appropriate. | 
|---|
| 1756 | * NEWS: Updated. | 
|---|
| 1757 |  | 
|---|
| 1758 | 2004-09-09  Andreas Schwab  <schwab@suse.de> | 
|---|
| 1759 |  | 
|---|
| 1760 | Refactoring of the string read case in next_char provides about a | 
|---|
| 1761 | 20% speedup of M4 as typically used by autoconf: | 
|---|
| 1762 |  | 
|---|
| 1763 | * src/input.c (next_char_1): Renamed from next_char. | 
|---|
| 1764 | (next_char): New macro. | 
|---|
| 1765 | * NEWS: Updated. | 
|---|
| 1766 |  | 
|---|
| 1767 | 2004-08-21  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1768 |  | 
|---|
| 1769 | * configure.in (VERSION): Bump to 1.4.2a. | 
|---|
| 1770 |  | 
|---|
| 1771 | 2004-08-19  Paul Eggert  <eggert@twinsun.com> | 
|---|
| 1772 |  | 
|---|
| 1773 | * Release 1.4.2. | 
|---|
| 1774 |  | 
|---|
| 1775 | * configure.in (VERSION): Bump to 1.4.2. | 
|---|
| 1776 | * News: Describe 1.4.2's changes. | 
|---|
| 1777 |  | 
|---|
| 1778 | * src/m4.c (reference_error): Preserve errno, since M4ERROR | 
|---|
| 1779 | relies on this. | 
|---|
| 1780 | * src/builtin.c (m4_esyscmd): Clear errno before calling popen. | 
|---|
| 1781 | (m4_maketemp): Clear errno before calling mkstemp. | 
|---|
| 1782 | * src/path.c (path_search): Don't let "free" trash errno when | 
|---|
| 1783 | returning NULL. | 
|---|
| 1784 | * src/output.c (insert_file): Don't assume errno has a valid | 
|---|
| 1785 | value simply because fread returns zero.  This fixes a | 
|---|
| 1786 | portability bug reported by Marion Hakanson in | 
|---|
| 1787 | <http://lists.gnu.org/archive/html/bug-m4/2004-07/msg00029.html>. | 
|---|
| 1788 |  | 
|---|
| 1789 | 2004-06-09  Gary V. Vaughan  <gary@gnu.org> | 
|---|
| 1790 |  | 
|---|
| 1791 | * configure.in (VERSION): Bump to 1.4.1a. | 
|---|
| 1792 | * NEWS: Place holder for next stable release. | 
|---|
| 1793 |  | 
|---|
| 1794 | 2004-06-03  Paul Eggert  <eggert@cs.ucla.edu> | 
|---|
| 1795 |  | 
|---|
| 1796 | * Release 1.4.1. | 
|---|
| 1797 |  | 
|---|
| 1798 | * configure.in (VERSION): Bump to 1.4.1. | 
|---|
| 1799 | * NEWS: Describe 1.4.1's changes. | 
|---|
| 1800 |  | 
|---|
| 1801 | * aclocal.m4 (fp_PROG_CC_STDC): Use AC_DEFUN, not define, to | 
|---|
| 1802 | pacify Autoconf 2.59. | 
|---|
| 1803 |  | 
|---|
| 1804 | * doc/m4.texinfo: Insert commas after @xref's that lack them, | 
|---|
| 1805 | to pacify Texinfo 4.7. | 
|---|
| 1806 | * doc/Makefile.in (info): Remove info-1, info-2, info-3. | 
|---|
| 1807 |  | 
|---|
| 1808 | * src/m4.h, src/debug.c: Use #ifdef __STDC__, not #if __STDC__, to | 
|---|
| 1809 | pacify Sun C compilers. | 
|---|
| 1810 |  | 
|---|
| 1811 | 2003-09-28  Akim Demaille  <akim@epita.fr> | 
|---|
| 1812 |  | 
|---|
| 1813 | * src/symtab.c (lookup_symbol): Fix an uninitialized-variable | 
|---|
| 1814 | botch. | 
|---|
| 1815 |  | 
|---|
| 1816 | 2003-09-03  Santiago Vila  <sanvila@debian.org> | 
|---|
| 1817 |  | 
|---|
| 1818 | * examples/stackovf.sh: Use tempfile if available. | 
|---|
| 1819 |  | 
|---|
| 1820 | 2001-04-02  Robert Bihlmeyer  <robbe@orcus.priv.at> | 
|---|
| 1821 |  | 
|---|
| 1822 | http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=92629 | 
|---|
| 1823 | * src/output.c (m4_insert_file): Do not mix buffered and | 
|---|
| 1824 | unbuffered I/O, as this breaks on the Hurd.  (trivial change) | 
|---|
| 1825 |  | 
|---|
| 1826 | 2001-02-01  Santiago Vila  <sanvila@debian.org> | 
|---|
| 1827 |  | 
|---|
| 1828 | http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=84451 | 
|---|
| 1829 | * src/m4.c (main): Fix format vulnerabilities.  (trivial change) | 
|---|
| 1830 |  | 
|---|
| 1831 | 2001-02-01  Matt Kraai  <kraai@debian.org> | 
|---|
| 1832 |  | 
|---|
| 1833 | http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=84416 | 
|---|
| 1834 | * doc/m4.texinfo (Maketemp): Change maketemp to refer to a new, | 
|---|
| 1835 | empty file rather than to a nonexistent file.  This closes a common | 
|---|
| 1836 | security hole. | 
|---|
| 1837 | * src/builtin.c (m4_maketemp): Implement the above, by using | 
|---|
| 1838 | mkstemp rather than mktemp.  (trivial change) | 
|---|
| 1839 |  | 
|---|
| 1840 | 2000-01-09  Akim Demaille  <demaille@inf.enst.fr> | 
|---|
| 1841 |  | 
|---|
| 1842 | * src/builtin.c (expand_ranges): Added break after trailing dash. | 
|---|
| 1843 | This caused misbehaviors on some systems. | 
|---|
| 1844 |  | 
|---|
| 1845 | Sat Nov  5 15:52:47 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1846 |  | 
|---|
| 1847 | * Release 1.4. | 
|---|
| 1848 |  | 
|---|
| 1849 | * doc/Makefile.in (realclean): Also remove stamp-vti. | 
|---|
| 1850 | Reported by Eric Backus. | 
|---|
| 1851 |  | 
|---|
| 1852 | Wed Nov  2 00:47:53 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1853 |  | 
|---|
| 1854 | * src/freeze.c (produce_frozen_state): If the frozen file cannot | 
|---|
| 1855 | be opened, return immediately after producing the error message. | 
|---|
| 1856 | Reported by Andreas Schwab. | 
|---|
| 1857 |  | 
|---|
| 1858 | * configure.in: Check for const only after having found possible | 
|---|
| 1859 | ANSIfying compiler flags, this is of no use to check it before. | 
|---|
| 1860 | Reported by Alexander Lehmann. | 
|---|
| 1861 |  | 
|---|
| 1862 | Tue Nov  1 22:02:37 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1863 |  | 
|---|
| 1864 | * src/macro.c (collect_arguments): Cast obstack arguments to | 
|---|
| 1865 | (voidstar), so avoiding compiler warnings. | 
|---|
| 1866 | Reported by Joseph E. Sacco. | 
|---|
| 1867 |  | 
|---|
| 1868 | * src/freeze.c (produce_frozen_state): Cast printed lengths to | 
|---|
| 1869 | (int) so they correspond to %d format items. | 
|---|
| 1870 | Reported by Joseph E. Sacco. | 
|---|
| 1871 |  | 
|---|
| 1872 | * src/m4.c (main): Cast the argument to xfree to (voidstar). | 
|---|
| 1873 | * src/symtab.c (free_symbol): Idem. | 
|---|
| 1874 | Reported by Karl Vogel. | 
|---|
| 1875 |  | 
|---|
| 1876 | Mon Oct 31 02:11:19 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1877 |  | 
|---|
| 1878 | * Makefile.in (DISTFILES): Distribute BACKLOG. | 
|---|
| 1879 |  | 
|---|
| 1880 | * configure.in: Define PRODUCT and VERSION. | 
|---|
| 1881 | * acconfig.h: Document PRODUCT and VERSION. | 
|---|
| 1882 | * src/m4.c, src/freeze.c: Use PRODUCT and VERSION instead of the | 
|---|
| 1883 | constant string m4 and variable or parameter named version. | 
|---|
| 1884 |  | 
|---|
| 1885 | Sun Oct 30 08:13:03 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1886 |  | 
|---|
| 1887 | * src/m4.h, src/debug.c: Replace all #ifdef __STDC__ by #if | 
|---|
| 1888 | __STDC__.  Alliant FX/2800 Concentrix 2.2 (i860-BSD4.3) compiler | 
|---|
| 1889 | defines __STDC__ to 0, for indicating it is *not* ANSI! | 
|---|
| 1890 | Reported by Kaveh R. Ghazi. | 
|---|
| 1891 |  | 
|---|
| 1892 | * configure.in: Added obsolescent tests for AIX and Minix. | 
|---|
| 1893 |  | 
|---|
| 1894 | * doc/Makefile.in (mostlyclean): Remove texclean in dependencies, | 
|---|
| 1895 | which texclean does not exist anymore. | 
|---|
| 1896 | Reported by Eric Backus, Jim Meyering, John David Anglin and | 
|---|
| 1897 | Joseph E. Sacco. | 
|---|
| 1898 |  | 
|---|
| 1899 | Sat Oct 29 05:10:03 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1900 |  | 
|---|
| 1901 | * aclocal.m4 (fp_C_PROTOTYPES): Force -D_HPUX_SOURCE with -Aa. | 
|---|
| 1902 | Reported by John David Anglin. | 
|---|
| 1903 |  | 
|---|
| 1904 | * src/ansi2knr.c: New version, sent by Peter Deutsch. | 
|---|
| 1905 | * aclocal.m4 (fp_C_PROTOTYPES): Substitute empty or ansi2knr for | 
|---|
| 1906 | ANSI2KNR, depending on the fact the compiler is ANSI or not. | 
|---|
| 1907 | * src/Makefile.in: Use -Ovarargs=convert on ansi2knr calls. | 
|---|
| 1908 | Remove the sed filter after ansi2knr for debug.c.  Use $O instead | 
|---|
| 1909 | of $U, put underline in extensions rather than in basenames.  Use | 
|---|
| 1910 | implicit rules, now that regularity makes this possible. | 
|---|
| 1911 | Have $(OBJECTS) depend on $(ANSI2KNR), so to trigger compilation | 
|---|
| 1912 | of ansi2knr whenever it is needed. | 
|---|
| 1913 | * configure.in: Adjusted for correct STACKOVF substitution. | 
|---|
| 1914 | * src/debug.c (trace_format): When not __STDC__, use (...) as a | 
|---|
| 1915 | parameter list, so ansi2knr will convert it to (va_alist) va_dcl. | 
|---|
| 1916 | Reported by David MacKenzie. | 
|---|
| 1917 |  | 
|---|
| 1918 | * Makefile.in: Remove binprefix.  Use transform_name instead. | 
|---|
| 1919 | Reported by David MacKenzie. | 
|---|
| 1920 |  | 
|---|
| 1921 | * doc/Makefile.in: Create version.texi, use it, clean it. | 
|---|
| 1922 | Reported by Jim Meyering. | 
|---|
| 1923 |  | 
|---|
| 1924 | Fri Oct 28 20:33:55 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1925 |  | 
|---|
| 1926 | * Makefile.in (all, install, uninstall): Depend on Makefile. | 
|---|
| 1927 |  | 
|---|
| 1928 | * Makefile.in: For actions invoking $(MAKE) from within compound | 
|---|
| 1929 | sh statements, exit non-zero if the sub-make fails.  Otherwise, | 
|---|
| 1930 | the top-level make may exit successfully when it should fail. | 
|---|
| 1931 | Reported by Jim Kingdon. | 
|---|
| 1932 |  | 
|---|
| 1933 | * {,/*}Makefile.in: Use && after all cd, in case they fail. | 
|---|
| 1934 |  | 
|---|
| 1935 | * {,*/}Makefile.in: Declare PRODUCT and VERSION macros. | 
|---|
| 1936 | (dist): Use PRODUCT and VERSION instead of tricks on .fname. | 
|---|
| 1937 | * configure.in: Substitute PRODUCT and VERSION. | 
|---|
| 1938 |  | 
|---|
| 1939 | * {,*/}Makefile.in (dist): Always try a hard link before a copy. | 
|---|
| 1940 |  | 
|---|
| 1941 | Thu Oct 27 22:32:58 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1942 |  | 
|---|
| 1943 | * Makefile.in (mostlyclean-local): Do not remove *~. | 
|---|
| 1944 | * */Makefile.in (mostlyclean): Idem. | 
|---|
| 1945 | Reported by Robert E. Brown and Richard Stallman. | 
|---|
| 1946 |  | 
|---|
| 1947 | Sun Oct  9 08:30:13 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1948 |  | 
|---|
| 1949 | * src/m4.h: Get rid of CONFIG_BROKETS. | 
|---|
| 1950 |  | 
|---|
| 1951 | Sun Oct  2 16:48:10 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1952 |  | 
|---|
| 1953 | * configure.in: Use AC_ARG_PROGRAM. | 
|---|
| 1954 | * aclocal.m4 (fp_C_PROTOTYPES): Substitute @kr@ by kr or empty. | 
|---|
| 1955 | Reported by David MacKenzie. | 
|---|
| 1956 |  | 
|---|
| 1957 | Sat Oct  1 11:22:42 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1958 |  | 
|---|
| 1959 | * configure.in: Do not add -O to CFLAGS for GNU C, now that | 
|---|
| 1960 | configure does it automatically. | 
|---|
| 1961 | Reported by Jim Meyering. | 
|---|
| 1962 |  | 
|---|
| 1963 | Fri Sep 23 08:16:58 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1964 |  | 
|---|
| 1965 | * src/stackovf.c: Declare the handler_t typedef earlier in the | 
|---|
| 1966 | code, use it for stackovf_handler. | 
|---|
| 1967 | (setup_stackovf_trap): Use RETSIGTYPE instead of void while | 
|---|
| 1968 | casting sigsegv_handler. | 
|---|
| 1969 | Reported by Robert Bernstein. | 
|---|
| 1970 |  | 
|---|
| 1971 | * src/m4.c (main): Initialize program_name to argv[0] without | 
|---|
| 1972 | basename'ing it. | 
|---|
| 1973 | Reported by Karl Berry. | 
|---|
| 1974 |  | 
|---|
| 1975 | Sun Sep 18 11:42:50 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1976 |  | 
|---|
| 1977 | * src/Makefile.in (TAGS): Include a ../lib/TAGS reference. | 
|---|
| 1978 | Reported by Karl Berry. | 
|---|
| 1979 |  | 
|---|
| 1980 | Wed Sep 14 10:00:22 1994  Francois Pinard  (pinard@icule) | 
|---|
| 1981 |  | 
|---|
| 1982 | * lib/Makefile.in (mostlyclean): Added. | 
|---|
| 1983 | (TAGS): Make in $(srcdir). | 
|---|
| 1984 |  | 
|---|
| 1985 | * configure.in: Use `choke me' in test, like everywhere! | 
|---|
| 1986 |  | 
|---|
| 1987 | * {doc,examples,lib,src}/Makefile.in (check): Deleted, as | 
|---|
| 1988 | unreacheable and useless. | 
|---|
| 1989 |  | 
|---|
| 1990 | * doc/Makefile.in (texclean): Deleted, merged in mostlyclean. | 
|---|
| 1991 |  | 
|---|
| 1992 | * lib/Makefile.in (DISTFILES): Distribute TAGS. | 
|---|
| 1993 | (distclean): Do not remove TAGS. | 
|---|
| 1994 | (realclean): Remove it. | 
|---|
| 1995 | * Makefile.in: Make TAGS in lib also, not just in src. | 
|---|
| 1996 | Reported by Karl Berry. | 
|---|
| 1997 |  | 
|---|
| 1998 | * Makefile.in (distclean, realclean): Instead of recursively | 
|---|
| 1999 | calling $(MAKE) for the -local part, allow parallel execution of | 
|---|
| 2000 | -recursive and -local, only delay the removal of config.status, | 
|---|
| 2001 | which is repeated in both goals. | 
|---|
| 2002 |  | 
|---|
| 2003 |  | 
|---|
| 2004 | Tue Sep 13 19:21:05 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2005 |  | 
|---|
| 2006 | * Release 1.3. | 
|---|
| 2007 |  | 
|---|
| 2008 | * Makefile.in: Group all *clean-recursive goals in one, using sed | 
|---|
| 2009 | to remove `-recursive' while calling make recursively.  Also, use | 
|---|
| 2010 | a subshell for each recursive $(MAKE). | 
|---|
| 2011 | Reported by Jim Meyering. | 
|---|
| 2012 |  | 
|---|
| 2013 | * src/m4.h (memcpy): Define with bcopy for BSD systems. | 
|---|
| 2014 | Reported by Kaveh R. Ghazi. | 
|---|
| 2015 |  | 
|---|
| 2016 | * src/Makefile.in (ansi2knr): Use $(LIBS) while linking, for SunOS | 
|---|
| 2017 | 4.1.3 requires -ldl to link even ansik2nr, and we need a way to | 
|---|
| 2018 | specify it. | 
|---|
| 2019 |  | 
|---|
| 2020 | * configure.in: Use date instead of touch for stamp-h. | 
|---|
| 2021 | * Makefile.in (stamp-h.in): Idem. | 
|---|
| 2022 |  | 
|---|
| 2023 | * Makefile.in (distclean, realclean): Force serial execution of | 
|---|
| 2024 | both goals, in case parallel makes are being used. | 
|---|
| 2025 | Reported by Jim Meyering. | 
|---|
| 2026 |  | 
|---|
| 2027 | * src/Makefile.in (DISTFILES): Distribute TAGS. | 
|---|
| 2028 | (distclean): Do not remove TAGS. | 
|---|
| 2029 | (realclean): Remove it. | 
|---|
| 2030 | Reported by Karl Berry. | 
|---|
| 2031 |  | 
|---|
| 2032 | Sat Sep 10 12:34:04 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2033 |  | 
|---|
| 2034 | * configure.in: Use fp_ to match aclocal.m4.  Revert _OS_ macros | 
|---|
| 2035 | to old names, for following Autoconf. | 
|---|
| 2036 |  | 
|---|
| 2037 | Thu Sep  8 15:07:27 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2038 |  | 
|---|
| 2039 | * Makefile.in (MDEFINES): Remove INSTALL substitutions, for | 
|---|
| 2040 | ./install.sh will not be correctly referred to in sub-Makefiles. | 
|---|
| 2041 | Reported by John David Anglin. | 
|---|
| 2042 |  | 
|---|
| 2043 | * doc/Makefile.in (texclean): Remove *.cps and *.fns too. | 
|---|
| 2044 | Reported by Eric Backus. | 
|---|
| 2045 |  | 
|---|
| 2046 | * Makefile.in, checks/Makefile.in, doc/Makefile.in, | 
|---|
| 2047 | examples/Makefile.in, lib/Makefile.in, src/Makefile.in: Limit | 
|---|
| 2048 | config.status into remaking this directory's Makefile only. | 
|---|
| 2049 | * Makefile.in (stamp-h): Do not check nor touch stamp-h. | 
|---|
| 2050 | * configure.in (AC_OUTPUT): Touch stamp-h if CONFIG_HEADERS. | 
|---|
| 2051 | Reported by Jim Meyering. | 
|---|
| 2052 |  | 
|---|
| 2053 | Tue Sep  6 12:07:33 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2054 |  | 
|---|
| 2055 | * configure.in: Correct stack overflow detection logic, taking | 
|---|
| 2056 | care of systems having only incomplete implementations (like for | 
|---|
| 2057 | Pyramid 9820 OSx 5.0d). | 
|---|
| 2058 | Reported by Kaveh R. Ghazi. | 
|---|
| 2059 |  | 
|---|
| 2060 | * src/Makefile.in (TAGS): Remote -t from etags call. | 
|---|
| 2061 |  | 
|---|
| 2062 | Fri Sep  2 10:37:10 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2063 |  | 
|---|
| 2064 | * lib/Makefile.in (install): Depend on all. | 
|---|
| 2065 |  | 
|---|
| 2066 | Wed Aug 31 11:17:21 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2067 |  | 
|---|
| 2068 | * examples/Makefile.in (mostlyclean): Do not depend on texclean. | 
|---|
| 2069 | Reported by Jim Meyering and John David Anglin. | 
|---|
| 2070 |  | 
|---|
| 2071 | * Makefile.in (distclean-local): Delete config.log. | 
|---|
| 2072 | Reported by Jim Meyering. | 
|---|
| 2073 |  | 
|---|
| 2074 | Solidify frozen files with respect to -P: | 
|---|
| 2075 | * src/m4.c: Have -P set prefix_all_buitins variable instead of | 
|---|
| 2076 | calling a function by that name.  Declare the variable. | 
|---|
| 2077 | * src/m4.h: Adjust declaration for prefix_all_buitins. | 
|---|
| 2078 | * src/builtin.c (builtin_init): Merge in functionality from | 
|---|
| 2079 | previous prefix_all_buitins function, while making entries in the | 
|---|
| 2080 | symbol table, but not modifying the builtin description itself. | 
|---|
| 2081 |  | 
|---|
| 2082 | * src/freeze.c (reload_frozen_state): Add a useless `break;', | 
|---|
| 2083 | because *many* compilers do not accept an empty `default:'. | 
|---|
| 2084 | Reported by Akiko Matsushita, Eric Backus, John David Anglin, | 
|---|
| 2085 | Joseph E. Sacco, Kaveh R. Ghazi, Tom McConnell and Ulrich Drepper. | 
|---|
| 2086 |  | 
|---|
| 2087 | * configure.in: Use AC_TYPE_SIGNAL. | 
|---|
| 2088 | * src/stackovf.c (setup_stackovf_trap): Use RETSIGTYPE. | 
|---|
| 2089 | Reported by Robert Bernstein. | 
|---|
| 2090 |  | 
|---|
| 2091 | * checks/Makefile.in (check): Modify PATH so check-them will find | 
|---|
| 2092 | m4 in the src directory. | 
|---|
| 2093 | * Makefile.in (check): Don't. | 
|---|
| 2094 | Reported by Akiko Matsushita and Jim Meyering. | 
|---|
| 2095 |  | 
|---|
| 2096 | * src/output.c (make_room_for, output_character_helper): New | 
|---|
| 2097 | functions, for implementing a global MAXIMUM_TOTAL_SIZE instead of | 
|---|
| 2098 | a per buffer MAXIMUM_BUFFER_SIZE. | 
|---|
| 2099 |  | 
|---|
| 2100 | * src/output.c (output_text): New function, for optimizing the | 
|---|
| 2101 | output of strings of characters.  Use it. | 
|---|
| 2102 |  | 
|---|
| 2103 | Tue Aug 30 01:44:29 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2104 |  | 
|---|
| 2105 | * doc, src: New directories reorganizing the distribution. | 
|---|
| 2106 | * doc/Makefile.in, src/Makefile.in, examples/Makefile.in: New | 
|---|
| 2107 | files. | 
|---|
| 2108 | * Makefile.in: Adjusted. | 
|---|
| 2109 | * configure.in: Configure new Makefiles. | 
|---|
| 2110 |  | 
|---|
| 2111 | * m4.h: Declare STRING typedef.  Use it for comment and quote | 
|---|
| 2112 | strings, adjusting all references.  (This is the rudiments of a | 
|---|
| 2113 | beginning for the eventual withdrawal of NUL terminated strings.) | 
|---|
| 2114 | * output.c (shipout_text): Accept a length parameter, and use it. | 
|---|
| 2115 | All callers adjusted. | 
|---|
| 2116 |  | 
|---|
| 2117 | Mon Aug 29 12:27:19 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2118 |  | 
|---|
| 2119 | * m4.h: Include <unistd.h> if it exists. | 
|---|
| 2120 | * stackovf.c: Don't. | 
|---|
| 2121 |  | 
|---|
| 2122 | Clean up for current_diversion variable: | 
|---|
| 2123 | * output.c: Move current_diversion from builtin.c. | 
|---|
| 2124 | * m4.h: Declare current_diversion so builtin.c can access it. | 
|---|
| 2125 | * output.c (output_init, make_diversion): Initialize or update | 
|---|
| 2126 | current_diversion. | 
|---|
| 2127 | * builtin.c (builtin_init, m4_divert): Leave current_diversion | 
|---|
| 2128 | alone. | 
|---|
| 2129 |  | 
|---|
| 2130 | Remove limit on number of diversions: | 
|---|
| 2131 | * output.c: Replace ndiversion by diversions, declare it. | 
|---|
| 2132 | (output_init): Allocate only diversion 0. | 
|---|
| 2133 | (make_diversion): Allocate new diversions as needed. | 
|---|
| 2134 | * m4.h, m4.c: Remove NDIVERSIONS and ndiversion related stuff. | 
|---|
| 2135 | * m4.c: Still accept -N, but do nothing with it. | 
|---|
| 2136 | Reported by David MacKenzie. | 
|---|
| 2137 |  | 
|---|
| 2138 | Freeze diversions: | 
|---|
| 2139 | * output.c (freeze_diversions): New function. | 
|---|
| 2140 | * m4.h: Declare freeze_diversions. | 
|---|
| 2141 | * freeze.c: Document frozen file format, revise it, call | 
|---|
| 2142 | freeze_diversions to add diversions to frozen format, and code to | 
|---|
| 2143 | reload them properly. | 
|---|
| 2144 | * m4.c: Do not undivert automatically at end when status being | 
|---|
| 2145 | frozen.  Do not call builtin_init when reloading frozen state. | 
|---|
| 2146 |  | 
|---|
| 2147 | Speed up diversion processing: | 
|---|
| 2148 | * output.c: Add INITIAL_BUFFER_SIZE, MAXIMUM_BUFFER_SIZE, | 
|---|
| 2149 | COPY_BUFFER_SIZE, in-memory diversion buffers, struct diversion | 
|---|
| 2150 | structure and variables, cached variables out of output_diversion, | 
|---|
| 2151 | reallocate_diversion_for and OUTPUT_CHARACTER. | 
|---|
| 2152 | (shipout_text, make_diversion, insert_diversion): Adapted to new | 
|---|
| 2153 | structures. | 
|---|
| 2154 | (insert_file): Use better buffering. | 
|---|
| 2155 | Reported by David MacKenzie. | 
|---|
| 2156 |  | 
|---|
| 2157 | Sun Aug 28 05:20:02 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2158 |  | 
|---|
| 2159 | * Makefile.in, lib/Makefile.in, checks/Makefile.in: Arrange so | 
|---|
| 2160 | dist works from another build directory. | 
|---|
| 2161 |  | 
|---|
| 2162 | Sat Aug 27 14:32:45 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2163 |  | 
|---|
| 2164 | * symtab.c (hack_all_symbols): Use hash_table_size instead of | 
|---|
| 2165 | constant HASHMAX, for -H option to work better. | 
|---|
| 2166 |  | 
|---|
| 2167 | * builtin.c (DECLARE): Simplify by using _ (). | 
|---|
| 2168 |  | 
|---|
| 2169 | * freeze.c: New file. | 
|---|
| 2170 | * Makefile.in: Compile it, distribute it. | 
|---|
| 2171 | * m4.c: Recognize, document and process --freeze-state (-F) and | 
|---|
| 2172 | --reload-state (-R) options.  Pass a true flag to builtin_init | 
|---|
| 2173 | only if no reloading some state. | 
|---|
| 2174 | * builtin.c (define_builtin): Remove static specifier. | 
|---|
| 2175 | (find_builtin_by_name): Remove static specifier. | 
|---|
| 2176 | (builtin_init): Accept and obey a flag argument. | 
|---|
| 2177 | * m4.h: Add declarations for freeze.c, changes for builtin.c. | 
|---|
| 2178 |  | 
|---|
| 2179 | Wed Aug 24 16:14:19 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2180 |  | 
|---|
| 2181 | * builtin.c (dumpdef_cmp): Rewrite so the cast protect the const | 
|---|
| 2182 | specifier. | 
|---|
| 2183 |  | 
|---|
| 2184 | * configure.in: Implement --with-dmalloc. | 
|---|
| 2185 | * acconfig.h: Document WITH_DMALLOC. | 
|---|
| 2186 | * m4.h: Add code for when WITH_DMALLOC. | 
|---|
| 2187 |  | 
|---|
| 2188 | Mon Aug 15 12:38:05 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2189 |  | 
|---|
| 2190 | * m4.c (long_options): Use "error-output", the dash was missing. | 
|---|
| 2191 | Reported by Akiko Matsushita. | 
|---|
| 2192 |  | 
|---|
| 2193 | Fri Aug 12 16:38:01 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2194 |  | 
|---|
| 2195 | * m4.h: Include <sys/types.h>. | 
|---|
| 2196 | * builtin.c, debug.c, m4.c, output.c, stackovf.c: Don't. | 
|---|
| 2197 | * m4.h: Declare len_lquote and len_rquote as size_t, not int. | 
|---|
| 2198 | int. | 
|---|
| 2199 | * input.c: Declare len_lquote, len_rquote, len_bcomm and len_ecomm | 
|---|
| 2200 | as size_t, not int. | 
|---|
| 2201 | * builtin.c (dump_args): Declare len as size_t, not int. | 
|---|
| 2202 |  | 
|---|
| 2203 | * debug.c: Prototype the forward declaration of debug_set_file. | 
|---|
| 2204 |  | 
|---|
| 2205 | * builtin.c (m4_undivert):  Replace div by file, for avoiding the | 
|---|
| 2206 | shadowing of this variable. | 
|---|
| 2207 | * output.c (insert_diversion): Idem. | 
|---|
| 2208 |  | 
|---|
| 2209 | * input.c: Delete def_rquote, def_lquote, def_bcomm and def_ecomm. | 
|---|
| 2210 | (input_init): Duplicate default quote and comment strings. | 
|---|
| 2211 | (set_quotes): Free previous quote strings in all cases.  Duplicate | 
|---|
| 2212 | even default quote strings. | 
|---|
| 2213 | (set_comment): Free previous comment strings in all cases. | 
|---|
| 2214 | Duplicate even default comment strings. | 
|---|
| 2215 |  | 
|---|
| 2216 | * configure.in: Updated for Autoconf 2.0. | 
|---|
| 2217 | * Makefile.in (distclean-local): Also delete config.cache. | 
|---|
| 2218 |  | 
|---|
| 2219 | * m4.c (usage): Reorganize the --help output by topic.  Include a | 
|---|
| 2220 | description for debugging flags. | 
|---|
| 2221 |  | 
|---|
| 2222 | Fri Jul 29 10:15:52 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2223 |  | 
|---|
| 2224 | * configure.in: If sigaction is available and SA_ONSTACK defined, | 
|---|
| 2225 | use sigaction.  Otherwise, if sigvec is available and SV_ONSTACK | 
|---|
| 2226 | defined, use sigvec.  Else don't compile stackovf.c. | 
|---|
| 2227 | * stackovf.c (setup_stackovf_trap): Idem. | 
|---|
| 2228 | Reported by Jim Avera, Karl Berry, Kaveh R. Ghazi, Matthias Rabe | 
|---|
| 2229 | and Simon Leinen. | 
|---|
| 2230 |  | 
|---|
| 2231 | Thu Jul 21 22:43:17 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2232 |  | 
|---|
| 2233 | * m4.c (usage): Replace printf par fputs. | 
|---|
| 2234 |  | 
|---|
| 2235 |  | 
|---|
| 2236 | Mon Jul 18 23:48:23 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2237 |  | 
|---|
| 2238 | * Release 1.2 | 
|---|
| 2239 |  | 
|---|
| 2240 | Sun Jul 17 08:08:25 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2241 |  | 
|---|
| 2242 | * configure.in: Check for sigaction and sigvec.  Add a new delayed | 
|---|
| 2243 | check for RLIMIT_STACK, combine in the checking for getrlimit. | 
|---|
| 2244 | All those things are not universally available. | 
|---|
| 2245 | * stackovf.c: Split setting up the trap handler and catching | 
|---|
| 2246 | signals, for better taking care of various configure outcomes. | 
|---|
| 2247 | * examples/stackovf.sh: Correct a typo. | 
|---|
| 2248 | Reported by Eric Backus, Jim Avera and Jim Meyering. | 
|---|
| 2249 |  | 
|---|
| 2250 | Sat Jul 16 20:36:19 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2251 |  | 
|---|
| 2252 | * ansi2knr.c: New version sent by its author, Peter Deutsch. | 
|---|
| 2253 |  | 
|---|
| 2254 | Fri Jul 15 14:36:21 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2255 |  | 
|---|
| 2256 | * Makefile.in: Modify so parallel make will not try making | 
|---|
| 2257 | lib/libm4.a twice simultaneously. | 
|---|
| 2258 | Reported by Jim Meyering. | 
|---|
| 2259 |  | 
|---|
| 2260 | Thu Jul 14 17:23:17 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2261 |  | 
|---|
| 2262 | * stackovf.c (setup_stackovf_trap): Replace "Don't" by "Do not" in | 
|---|
| 2263 | error message, for when no code possibility exists.  Even if this | 
|---|
| 2264 | line is completely #ifdef'ed out, it brings a syntax error. | 
|---|
| 2265 | Reported by Andreas Schwab, Jim Meyering and Joseph E. Sacco. | 
|---|
| 2266 |  | 
|---|
| 2267 | * Makefile.in (install): Have install depend on all too, for lib | 
|---|
| 2268 | to be remade as needed. | 
|---|
| 2269 |  | 
|---|
| 2270 | * examples/stackovf.sh: Try ksh, bsh and bash for shells | 
|---|
| 2271 | providing ulimit, instead of using only ksh. | 
|---|
| 2272 | Reported by Jim Avera and Joseph E. Sacco. | 
|---|
| 2273 |  | 
|---|
| 2274 | Tue Jul 12 06:54:31 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2275 |  | 
|---|
| 2276 | * Makefile.in (check): Have it depend on all instead of m4.  In | 
|---|
| 2277 | this way, a change in lib will be detected and processed. | 
|---|
| 2278 |  | 
|---|
| 2279 | * builtin.c (numeric_arg): Use strtol and verify the conversion, | 
|---|
| 2280 | instead of using sscanf which stops as soon as there is a | 
|---|
| 2281 | non-digit in the input.  Previously, incr(1xyzzy), eval(1,2xyzzy) | 
|---|
| 2282 | and divert(1xyzzy) were all accepted without any warning or error | 
|---|
| 2283 | messages. | 
|---|
| 2284 | * m4.h: Declare strtol as long if not including stdlib.h. | 
|---|
| 2285 | * configure.in: Check for limits.h, and replace strtol if missing. | 
|---|
| 2286 | * lib/Makefile.in: Substitute LIBOBJS.  Distribute strtol.c. | 
|---|
| 2287 | * lib/strtol.c: New file, from elsewhere. | 
|---|
| 2288 | Reported by Andreas Schwab. | 
|---|
| 2289 |  | 
|---|
| 2290 | Thu Jul  7 22:38:10 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2291 |  | 
|---|
| 2292 | * macro.c (expand_macro): Cast value to (boolean) prior to | 
|---|
| 2293 | assigning it to traced. | 
|---|
| 2294 | Reported by Tom McConnell. | 
|---|
| 2295 |  | 
|---|
| 2296 | * Makefile.in (m4): Always make all in lib first. | 
|---|
| 2297 | Reported by Jim Meyering. | 
|---|
| 2298 |  | 
|---|
| 2299 | Wed Jul  6 13:16:31 1994  Jim Avera (jima@netcom.com) | 
|---|
| 2300 |  | 
|---|
| 2301 | * stackovf.c: Isolated OS-dependent sections; Improved portability, | 
|---|
| 2302 | adding support for SunOS/BSD (sigvec, sigstack, and 4-parameter signal | 
|---|
| 2303 | handlers), and a default error message if the fault address is not | 
|---|
| 2304 | available (when neither siginfo.h nor BSD sigcontext are supported). | 
|---|
| 2305 | * configure.in: Changes for stackovf.h: Check for sigcontext, | 
|---|
| 2306 | sigaction, sigstack, and define rlim_t as int if necessary. | 
|---|
| 2307 | * acconfig.h: Added HAVE_SIGCONTEXT and rlim_t. | 
|---|
| 2308 | * examples/stackovf.sh: Run m4 -L99999999 to allow stack overflow. | 
|---|
| 2309 | * ansi2knr.c: Fix for func-ptr args; convert "..." to varargs syntax. | 
|---|
| 2310 |  | 
|---|
| 2311 | Tue Jul  5 19:13:54 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2312 |  | 
|---|
| 2313 | * configure.in: Use AC_SET_MAKE. | 
|---|
| 2314 | * Makefile.in: Use @SET_MAKE@. | 
|---|
| 2315 | Reported by Jim Meyering. | 
|---|
| 2316 |  | 
|---|
| 2317 | * checks/check-them: Do not trap on SIGQUIT or SIGALRM. | 
|---|
| 2318 | Reported by Ian Taylor. | 
|---|
| 2319 |  | 
|---|
| 2320 | Sat Jul  2 00:58:47 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2321 |  | 
|---|
| 2322 | * configure.in: Remove dependency of USE_STACKOVF on STDC_HEADERS, | 
|---|
| 2323 | because siginfo.h is unrelated to standard headers, and siginfo.h | 
|---|
| 2324 | is already checked for. | 
|---|
| 2325 | Reported by Joseph E. Sacco. | 
|---|
| 2326 |  | 
|---|
| 2327 | * acconfig.h, aclocal.m4, m4.h: Replace HAVE_PROTOTYPES by | 
|---|
| 2328 | PROTOTYPES. | 
|---|
| 2329 | * aclocal.m4, configure.in: Replace AC_HAVE_PROTOTYPES by | 
|---|
| 2330 | AC_PROTOTYPES. | 
|---|
| 2331 |  | 
|---|
| 2332 | Wed Jun 29 22:41:53 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2333 |  | 
|---|
| 2334 | * builtin.c (substitute): Use \& to represent this part of the | 
|---|
| 2335 | string which was matched by the whole regexp, instead of | 
|---|
| 2336 | representing the whole string.  Any usage of \0 issues a warning | 
|---|
| 2337 | and acts like \&, it will disappear in some subsequent release. | 
|---|
| 2338 |  | 
|---|
| 2339 | Mon Jun 27 14:24:23 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2340 |  | 
|---|
| 2341 | * m4.c: Complete prototype for forwarded declaration of usage. | 
|---|
| 2342 |  | 
|---|
| 2343 | * input.c (init_macro_token): Correct own reference in error | 
|---|
| 2344 | message.  Previous name get_macro_func was referred to instead. | 
|---|
| 2345 | (next_char):  Correct own reference in error message.  Previous | 
|---|
| 2346 | name advance_input was referred to instead. | 
|---|
| 2347 |  | 
|---|
| 2348 | * m4.h: Declare eval_t and unsigned_eval_t typedefs to 32 bits. | 
|---|
| 2349 | * eval.c (logical_or_term, logical_and_term, or_term, xor_term, | 
|---|
| 2350 | and_term, not_term, logical_not_term, cmp_term, shift_term, | 
|---|
| 2351 | add_term, mult_term, exp_term, unary_term, simple_term): Add | 
|---|
| 2352 | prototype to forwarded declarations.  Declare parameter v1 as | 
|---|
| 2353 | eval_t * instead of int *.  Same for local variable v2 in dyadic | 
|---|
| 2354 | functions.  Same for result in exp_term. | 
|---|
| 2355 | * builtin.c (m4_eval): Declare value as eval_t instead of int. | 
|---|
| 2356 | (ntoa): Declare value as eval_t instead of int.  Declare uvalue as | 
|---|
| 2357 | unsigned_eval_t instead of unsigned int.  Change casts accordingly. | 
|---|
| 2358 | (shipout_int): Cast first argument of ntoa to eval_t. | 
|---|
| 2359 | Reported by Thorsten Ohl. | 
|---|
| 2360 |  | 
|---|
| 2361 | * macro.c: Complete the prototypes of forwarded expand_macro and | 
|---|
| 2362 | expand_token. | 
|---|
| 2363 | Reported by Thorsten Ohl. | 
|---|
| 2364 |  | 
|---|
| 2365 | * m4.h: Define voidstar as void * or char * depending on __STDC__. | 
|---|
| 2366 | The Ultrix 3.1 compiler cannot do much with void pointers. | 
|---|
| 2367 |  | 
|---|
| 2368 | * builtin.c (dumpdef_cmp): Replace void * by voidstar. | 
|---|
| 2369 | * m4.c (xfree):  Replace void * by voidstar. | 
|---|
| 2370 | Reported by Tom McConnell. | 
|---|
| 2371 |  | 
|---|
| 2372 | * ansi2knr.1: New, from elsewhere. | 
|---|
| 2373 | * Makefile.in (DISTFILES): Distribute ansi2knr.1 | 
|---|
| 2374 |  | 
|---|
| 2375 | * Makefile.in (stamp-h.in): Avoid running ./config.status if | 
|---|
| 2376 | stamp-h does not exist yet.  This avoids running it a second time | 
|---|
| 2377 | just after the initial ./configure. | 
|---|
| 2378 | Reported by David MacKenzie and Tom McConnell. | 
|---|
| 2379 |  | 
|---|
| 2380 | * m4.h: Replace the enum debug_info declaration with a series of | 
|---|
| 2381 | #define's.  The Ultrix 3.1 compiler would otherwise need casting | 
|---|
| 2382 | (int) to most references, when used in expressions. | 
|---|
| 2383 | Reported by Tom McConnell. | 
|---|
| 2384 |  | 
|---|
| 2385 | Sat Jun 25 00:10:05 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2386 |  | 
|---|
| 2387 | * aclocal.m4: Replace FP_PROTOTYPES by AC_HAVE_PROTOTYPES, | 
|---|
| 2388 | following an idea from Brook G. Milligan.  AC_HAVE_PROTOTYPES | 
|---|
| 2389 | calls the compiler.  Previously, FP_PROTOTYPES was only calling | 
|---|
| 2390 | the preprocessor; by not being subject to CFLAGS, this was | 
|---|
| 2391 | discouraging those flags asking for ANSI compilation. | 
|---|
| 2392 | * acconfig.h: Document HAVE_PROTOTYPES. | 
|---|
| 2393 | * configure.in: Use AC_HAVE_PROTOTYPES instead of FP_PROTOTYPES. | 
|---|
| 2394 | * m4.h: Define _() according to HAVE_PROTOTYPES, not __STDC__. | 
|---|
| 2395 | Reported by Eric Backus. | 
|---|
| 2396 |  | 
|---|
| 2397 | * configure.in: Substitute CFLAGS and LDFLAGS, taking their value | 
|---|
| 2398 | from the environment.  Default CFLAGS to -g if not set. | 
|---|
| 2399 | * Makefile.in: Have CFLAGS and LDFLAGS substituted from configure. | 
|---|
| 2400 | * lib/Makefile.in: Have CFLAGS substituted from configure. | 
|---|
| 2401 | Reported by Eric Backus and Tom McConnell. | 
|---|
| 2402 |  | 
|---|
| 2403 | * configure.in: m4_undefine changeword before using AC_ENABLE. | 
|---|
| 2404 |  | 
|---|
| 2405 | * m4.h: Declare prototypes for error (for ANSI compilers only), | 
|---|
| 2406 | prefix_all_builtins and reference_error. | 
|---|
| 2407 | Reported by Tom McConnell. | 
|---|
| 2408 |  | 
|---|
| 2409 | * input.c (set_word_regexp): Do not try to initialize the array | 
|---|
| 2410 | test from a string, this does not work with non-ANSI compilers. | 
|---|
| 2411 | Reported by Eric Backus. | 
|---|
| 2412 |  | 
|---|
| 2413 | * Makefile.in (dist): Clean examples/ before saving it. | 
|---|
| 2414 | (distclean-local): Also remove stamp-h. | 
|---|
| 2415 | Reported by Eric Backus. | 
|---|
| 2416 |  | 
|---|
| 2417 | * Makefile.in (_stackovf.c): Goal for compiling stacokovf.c with | 
|---|
| 2418 | non ANSI compilers. | 
|---|
| 2419 | Reported by Tom McConnell. | 
|---|
| 2420 |  | 
|---|
| 2421 | * checks/Makefile.in (clean): Depends on mostlyclean. | 
|---|
| 2422 | (mostlyclean): New goal. | 
|---|
| 2423 |  | 
|---|
| 2424 | Fri Jun 24 23:30:31 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2425 |  | 
|---|
| 2426 | * Makefile.in (DISTFILES): Distribute install.sh. | 
|---|
| 2427 | * install.sh: New file, copied from elsewhere. | 
|---|
| 2428 | Reported by Assar Westerlund and Kaveh R. Ghazi. | 
|---|
| 2429 |  | 
|---|
| 2430 | Thu Jun 23 00:00:30 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2431 |  | 
|---|
| 2432 | * configure.in: Define ENABLE_CHANGEWORD if --enable-changeword. | 
|---|
| 2433 | * acconfig.h: Explain ENABLE_CHANGEWORD. | 
|---|
| 2434 |  | 
|---|
| 2435 | [These modifs all depend upon ENABLE_CHANGEWORD and are adapted | 
|---|
| 2436 | from code provided by Pete Chown] | 
|---|
| 2437 | * m4.h: Add original_text field to u_t variant of union u. | 
|---|
| 2438 | Declare TOKEN_DATA_FUNC macro. | 
|---|
| 2439 | * builtin.c: Declare changeword. | 
|---|
| 2440 | (m4_changeword): New function. | 
|---|
| 2441 | * input.c: Include "regex.h", define variables with word regexps. | 
|---|
| 2442 | (input_init): Initialize the word regexp. | 
|---|
| 2443 | (set_word_regexp): New. | 
|---|
| 2444 | (next_token): Declare local variables, use the previous code if | 
|---|
| 2445 | default_word_regexp is true.  Else, match using a new code.  Save | 
|---|
| 2446 | the original text. | 
|---|
| 2447 | * macro.c (expand_token): Ship out original text if not a macro | 
|---|
| 2448 | name. | 
|---|
| 2449 | Reported by Krste Asanovic and Pete Chown. | 
|---|
| 2450 |  | 
|---|
| 2451 | [These modifs all depend upon ENABLE_CHANGEWORD] | 
|---|
| 2452 | * m4.h: Declare external user_word_regexp. | 
|---|
| 2453 | * m4.c: Declare user_word_regexp, and initialize it from | 
|---|
| 2454 | --word-regexp or -W, or NULL if not specified. | 
|---|
| 2455 | * input.c: Use user_word_regexp if specified, instead of | 
|---|
| 2456 | DEFAULT_WORD_REGEXP. | 
|---|
| 2457 |  | 
|---|
| 2458 | * Makefile.in (m4): Revert Jan 3 1994 change.  I'm unable to | 
|---|
| 2459 | agree with it. | 
|---|
| 2460 |  | 
|---|
| 2461 | * Makefile.in, lib/Makefile.in: Limit suffixes to .c and .o. | 
|---|
| 2462 | * checks/Makefile.in: Empty the suffix list. | 
|---|
| 2463 | Reported by Geoff Russell, Joel Sherrill and Roland McGrath. | 
|---|
| 2464 |  | 
|---|
| 2465 | * m4.c: Declare nesting_limit and initialize it to 250. | 
|---|
| 2466 | Implement -LNUMBER or --nesting-limit=NUMBER to change its | 
|---|
| 2467 | value. | 
|---|
| 2468 | * m4.h: Declare nesting_limit as external. | 
|---|
| 2469 | * macro.c (expand_macro): Stop execution whenever nesting limit | 
|---|
| 2470 | is exceeded. | 
|---|
| 2471 | Reported by Bengt Mertensson. | 
|---|
| 2472 |  | 
|---|
| 2473 | * eval.c (evaluate): Diagnose excess characters in eval input. | 
|---|
| 2474 | Things like `eval(08)' used to return 0 with no diagnostic. | 
|---|
| 2475 |  | 
|---|
| 2476 | * m4.h: Capitalize first letter of all macro arguments in | 
|---|
| 2477 | definitions. | 
|---|
| 2478 |  | 
|---|
| 2479 | * m4.c: Declare warning_status, initialize it to 0.  Add new | 
|---|
| 2480 | option -E, or --fatal-warnings, which sets warning_status to | 
|---|
| 2481 | EXIT_FAILURE instead. | 
|---|
| 2482 | * m4.h: Declare external warning_status.  Define EXIT_SUCCESS and | 
|---|
| 2483 | EXIT_FAILURE if not otherwise done by header files. | 
|---|
| 2484 | * m4.c: Delete declarations for EXIT_SUCCESS and EXIT_FAILURE. | 
|---|
| 2485 | * m4.c, input.c, output.c, symtab.c, builtin.c, macro.c, debug.c, | 
|---|
| 2486 | eval.c: Replace 0 by warning_status and 1 by EXIT_FAILURE in first | 
|---|
| 2487 | argument of all M4ERROR calls. | 
|---|
| 2488 | Reported by Noah Friedman. | 
|---|
| 2489 |  | 
|---|
| 2490 | * examples/incl-test.m4: Renamed from incl_test.m4. | 
|---|
| 2491 | * examples/include.m4: Include incl-test.m4 instead of | 
|---|
| 2492 | incl_test.m4. | 
|---|
| 2493 | * examples/multiquotes.m4: Renamed from multi-quotes.m. | 
|---|
| 2494 |  | 
|---|
| 2495 | Wed Jun 22 21:58:54 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2496 |  | 
|---|
| 2497 | * configure.in: Avoid USE_STACKOVF if <siginfo.h> not found.  Note | 
|---|
| 2498 | that Jim developped stackovf.c on a 486 running SVR4.0 (ESIX), and | 
|---|
| 2499 | also tested it on a Sun Sparc workstation running SunOS 4.x. | 
|---|
| 2500 |  | 
|---|
| 2501 | * format.c (format): When not HAVE_EFGCVT, m4 was failing the | 
|---|
| 2502 | 49.format check, abusing a `union values' argument with sprintf | 
|---|
| 2503 | without selecting the proper field.  Now, save the formatting type | 
|---|
| 2504 | first, delaying the fetch of the corresponding argument. | 
|---|
| 2505 | Reported by Joseph E. Sacco and Tom Quinn. | 
|---|
| 2506 |  | 
|---|
| 2507 | * format.c (format): Remove const from char *fmt declaration when | 
|---|
| 2508 | not HAVE_EFGCVT, because a NUL may be forced into it. | 
|---|
| 2509 |  | 
|---|
| 2510 | * m4.h: Declare atof() when not STDC_HEADERS. | 
|---|
| 2511 | Reported by Joseph E. Sacco. | 
|---|
| 2512 |  | 
|---|
| 2513 | * Regenerate configure using Autoconf 1.11, this corrects a | 
|---|
| 2514 | problem about an incorrect cpp seting on NeXT 3.1. | 
|---|
| 2515 | Reported by Alexander Lehmann. | 
|---|
| 2516 |  | 
|---|
| 2517 | Sun Jun  5 16:25:19 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2518 |  | 
|---|
| 2519 | * m4.h (_): Change argument from `x' to `Args'. | 
|---|
| 2520 |  | 
|---|
| 2521 | Wed May  4 23:59:39 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2522 |  | 
|---|
| 2523 | * Makefile.in: Remove all occurrences of $(MFLAGS), which were | 
|---|
| 2524 | bringing more evil than good on a few systems. | 
|---|
| 2525 | Reported by Greg A. Woods. | 
|---|
| 2526 |  | 
|---|
| 2527 | Fri Apr 22 15:59:35 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2528 |  | 
|---|
| 2529 | * m4.h: Rename Args() to _(). | 
|---|
| 2530 | * m4.h: Remove extern specifier from all function declarations. | 
|---|
| 2531 |  | 
|---|
| 2532 | Fri Apr 22 15:51:21 1994  Jim Avera (jima@netcom.com) | 
|---|
| 2533 |  | 
|---|
| 2534 | * stackovf.c: New file implementing stack-overflow detection. | 
|---|
| 2535 | * configure.in: Check for getrlimit, sigaction.  If all of | 
|---|
| 2536 | standard headers, getrlimit and sigaction, define USE_STACKOVF and | 
|---|
| 2537 | substitute ${U}stackovf.o for STACKOVF. | 
|---|
| 2538 | * acconfig.h: Declare USE_STACKOVF. | 
|---|
| 2539 | * Makefile.in: Distribute stackovf.c, link with $(STACKOVF). | 
|---|
| 2540 | * m4.h: Declare setup_stackovf_trap(). | 
|---|
| 2541 | * m4.c: Call setup_stackovf_trap(). | 
|---|
| 2542 | * tests/stackovf_test.sh: New file. | 
|---|
| 2543 |  | 
|---|
| 2544 | Wed Apr 13 14:10:30 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2545 |  | 
|---|
| 2546 | * checks/Makefile.in: Rename .all-stamp to stamp-checks. | 
|---|
| 2547 |  | 
|---|
| 2548 | * Makefile.in (Makefile, etc.): Adapt for Autoconf 1.8. | 
|---|
| 2549 |  | 
|---|
| 2550 | Sun Jan 30 14:24:19 1994    (pinard at icule) | 
|---|
| 2551 |  | 
|---|
| 2552 | * m4.h: Remove definition of volatile, not used anymore. | 
|---|
| 2553 | Reported by Jim Meyering and Joseph E. Sacco. | 
|---|
| 2554 |  | 
|---|
| 2555 | * m4.h: Consistently use `do { ... } while (0)' in macros, instead | 
|---|
| 2556 | of `if ... else /* nothing */' for if macros. | 
|---|
| 2557 | Reported by Jim Meyering. | 
|---|
| 2558 |  | 
|---|
| 2559 | * builtin.c (m4_regexp): Reorganize the code for avoiding a | 
|---|
| 2560 | warning from gcc about `repl' possibly used before defined. | 
|---|
| 2561 | Reported by Jim Meyering. | 
|---|
| 2562 |  | 
|---|
| 2563 | * m4.h: Avoid a pre-ANSI <memory.h> together with <string.h>. | 
|---|
| 2564 | Reported by Jim Meyering. | 
|---|
| 2565 |  | 
|---|
| 2566 | Tue Jan 25 18:39:37 1994  Francois Pinard  (pinard at icule) | 
|---|
| 2567 |  | 
|---|
| 2568 | * m4.h: Move the conditional definition of volatile after the | 
|---|
| 2569 | inclusion of system files, because they may define it first. | 
|---|
| 2570 |  | 
|---|
| 2571 | Tue Jan  4 19:46:50 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2572 |  | 
|---|
| 2573 | * checks/Makefile.in (CHECKS): Add a useless `*' before `[', to | 
|---|
| 2574 | get around a problem with Alpha make seeing a syntax error, there. | 
|---|
| 2575 | Reported by Vern Paxson. | 
|---|
| 2576 |  | 
|---|
| 2577 | Mon Jan  3 00:21:45 1994  Francois Pinard  (pinard@icule) | 
|---|
| 2578 |  | 
|---|
| 2579 | * Makefile.in: Do not define LDFLAGS, use CFLAGS on link calls. | 
|---|
| 2580 | Reported by Richard Stallman. | 
|---|
| 2581 |  | 
|---|
| 2582 | Sat Dec 25 08:06:05 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2583 |  | 
|---|
| 2584 | * configure.in: Correct test for strerror, AC_FUNC_CHECK was used | 
|---|
| 2585 | instead of AC_HAVE_FUNCS. | 
|---|
| 2586 | Reported by Noah Friedman. | 
|---|
| 2587 |  | 
|---|
| 2588 | Wed Dec  1 09:37:53 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2589 |  | 
|---|
| 2590 | * m4.c: Initialize show_help and show_version to zero. | 
|---|
| 2591 |  | 
|---|
| 2592 | * m4.c: Ensure EXIT_SUCCESS and EXIT_FAILURE are defined. | 
|---|
| 2593 | Use them in exit() and usage() calls. | 
|---|
| 2594 |  | 
|---|
| 2595 | Sat Nov 27 10:43:24 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2596 |  | 
|---|
| 2597 | * m4.h: Delete extern sys_nerr, sys_errlist declarations, and | 
|---|
| 2598 | syserr() macro.  Delete errref, add reference_error and M4ERROR. | 
|---|
| 2599 | * m4.c: Replace errref, which was returning an input reference | 
|---|
| 2600 | string, with reference_error, which prints it on standard error. | 
|---|
| 2601 | * builtin.c, output.c: Use errno as second parameter to error, | 
|---|
| 2602 | instead of using syserr() with %s. | 
|---|
| 2603 | * *.c: Use M4ERROR instead of error: no more errref() with %s. | 
|---|
| 2604 | Doing so, the program name appears after the input reference | 
|---|
| 2605 | instead of before, which eases M-x next-error processing. | 
|---|
| 2606 |  | 
|---|
| 2607 | Wed Nov 24 22:16:15 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2608 |  | 
|---|
| 2609 | * checks/get-them: Escape braces with backslashes in patterns, | 
|---|
| 2610 | because HPUX-9.01 awk needs this. | 
|---|
| 2611 | Reported by Jim Meyering. | 
|---|
| 2612 |  | 
|---|
| 2613 | Mon Nov 22 10:55:52 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2614 |  | 
|---|
| 2615 | * builtin.c: Declare "FILE *popen ();". | 
|---|
| 2616 |  | 
|---|
| 2617 | * m4.h: Remove MESSAGE{,1,2}, WARNING1, FATAL{,1}, INTERNAL_ERROR | 
|---|
| 2618 | macros, replace error_message_prefix() declaration by errref()'s. | 
|---|
| 2619 | Declare xrealloc, for use in errref(). | 
|---|
| 2620 | * m4.c: Delete error_message_prefix() function, add errref(). | 
|---|
| 2621 | * *.c: Use error() systematically in place of all error macros, | 
|---|
| 2622 | now that error() flushes stdout first.  Make needed adjustments. | 
|---|
| 2623 |  | 
|---|
| 2624 | * m4.h: Remove const in sys_errlist[] declaration, it creates | 
|---|
| 2625 | conflicts on SGI and Alpha. | 
|---|
| 2626 | Reported by Kaveh R. Ghazi. | 
|---|
| 2627 |  | 
|---|
| 2628 | Sat Nov 20 08:26:15 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2629 |  | 
|---|
| 2630 | * m4.c: Include <getopt.h> instead of "getopt.h". | 
|---|
| 2631 |  | 
|---|
| 2632 | * configure.in: Output to config.h.  Use HAVE_FUNCS preferably. | 
|---|
| 2633 | * acconfig.h: New, for documenting HAVE_EFGCVT. | 
|---|
| 2634 | * Makefile.in: Distribute acconfig.h, .stamp-h.in and config.h.in, | 
|---|
| 2635 | use them wherever appropriate.  Also use -I. for compilations. | 
|---|
| 2636 | * lib/Makefile.in: Use -I.. for compilations. | 
|---|
| 2637 | * *.c: Include <config.h> or "config.h". | 
|---|
| 2638 |  | 
|---|
| 2639 | * m4.h: Test for HAVE_MEMORY_H instead of NEED_MEMORY_H. | 
|---|
| 2640 | * configure.in: Use AC_HAVE_HEADERS(memory.h), delete AC_MEMORY_H. | 
|---|
| 2641 |  | 
|---|
| 2642 | Wed Nov 17 09:34:55 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2643 |  | 
|---|
| 2644 | * builtin.c (m4_eval): Cast strlen to (int) before comparing. | 
|---|
| 2645 |  | 
|---|
| 2646 | * input.c (input_init): Initialize quote and comment strings | 
|---|
| 2647 | explicitely instead of calling set_quotes and set_comment: by | 
|---|
| 2648 | doing so, we ensure we do not free uninitialized variables. | 
|---|
| 2649 |  | 
|---|
| 2650 | * checks/check-them: Reverse arguments to both diff, so the | 
|---|
| 2651 | expected is on the left and the obtained on the right. | 
|---|
| 2652 |  | 
|---|
| 2653 | * m4.h: Add MESSAGE{,1,2}, WARNING1, FATAL{,1} and INTERNAL_ERROR | 
|---|
| 2654 | macros. Delete declarations for m4error, warning, fatal and | 
|---|
| 2655 | internal_error, add declaration for error_message_prefix. | 
|---|
| 2656 | * m4.c:  Delete m4error, warning, fatal and internal_error | 
|---|
| 2657 | routines, add error_message_prefix routine. | 
|---|
| 2658 | * *.c: Replace m4error routine calls with MESSAGE* macro calls, | 
|---|
| 2659 | warning with WARNING*, fatal with FATAL* and internal_error with | 
|---|
| 2660 | INTERNAL_ERROR*. | 
|---|
| 2661 | * Makefile.in (_m4.c): Do not adjust ansi2knr output for va_alist, | 
|---|
| 2662 | this is not needed anymore. | 
|---|
| 2663 |  | 
|---|
| 2664 | * m4.h: Declare extern FILE *debug.  Add DEBUG_PRINT{1,3} and | 
|---|
| 2665 | DEBUG_MESSAGE{,1,2} macros.  Delete declarations for debug_print | 
|---|
| 2666 | and debug_message, add declaration for debug_message_prefix. | 
|---|
| 2667 | * debug.c: Remove static specifier for FILE *debug declaration. | 
|---|
| 2668 | Delete debug_print and debug_message routines, add | 
|---|
| 2669 | debug_message_prefix routine. | 
|---|
| 2670 | * builtin.c, debug.c: Replace debug_print routine calls with | 
|---|
| 2671 | DEBUG_PRINT* macro calls. | 
|---|
| 2672 | * input.c, path.c: Replace debug_message routine calls with | 
|---|
| 2673 | DEBUG_MESSAGE* macro calls. | 
|---|
| 2674 |  | 
|---|
| 2675 | * m4.h: Remove inclusion of <varargs.h>. | 
|---|
| 2676 | * debug.c: Include <stdarg.h> or <varargs.h>. | 
|---|
| 2677 | (trace_format): Use stdarg instead of varargs if __STDC__. | 
|---|
| 2678 |  | 
|---|
| 2679 | * configure.in: Remove checks for vfprintf and _doprnt.  These | 
|---|
| 2680 | implementations use varargs tricks which are not portable enough. | 
|---|
| 2681 | * lib/vfprintf.c: Deleted. | 
|---|
| 2682 | * lib/_doprnt.c: Deleted. | 
|---|
| 2683 | * lib/Makefile.in: Adjusted accordingly.  Remove LIBOBJS. | 
|---|
| 2684 | Reported by Joel Sherrill. | 
|---|
| 2685 |  | 
|---|
| 2686 | * path.c (add_include_directory): Use xstrdup. | 
|---|
| 2687 |  | 
|---|
| 2688 | * builtin.c (find_builtin_by_name): Declare static. | 
|---|
| 2689 |  | 
|---|
| 2690 | * *.[ch]: Add const to a few "char *" declarations. | 
|---|
| 2691 |  | 
|---|
| 2692 | * configure.in: Remove commented tests for fileno() and fstat(). | 
|---|
| 2693 | * debug.c: Remove comments about HAVE_FILENO and HAVE_FSTAT. | 
|---|
| 2694 |  | 
|---|
| 2695 | * debug.c (debug_flush_files): New. | 
|---|
| 2696 | * m4.h: Declares it. | 
|---|
| 2697 | * builtin.c (m4_syscmd, m4_esyscmd): Use it. | 
|---|
| 2698 | Reported by Nicolas Pioch. | 
|---|
| 2699 |  | 
|---|
| 2700 | Fri Nov 12 10:02:26 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2701 |  | 
|---|
| 2702 | * Makefile.in (m4.dvi): Use m4.texinfo instead of m4.texi. | 
|---|
| 2703 | Reported by Joel Sherrill. | 
|---|
| 2704 |  | 
|---|
| 2705 | * builtin.c (prefix_all_builtins): Instead of the table size, use | 
|---|
| 2706 | the null entry at end for stopping the loop.  It was overwritten. | 
|---|
| 2707 | Reported by Andreas Schwab and Jim Meyering. | 
|---|
| 2708 |  | 
|---|
| 2709 | * builtin.c (prefix_all_builtins): Cast xmalloc to (char *). | 
|---|
| 2710 | Reported by Kaveh R. Ghazi. | 
|---|
| 2711 |  | 
|---|
| 2712 | * macro.c (call_macro): Add * in (*SYMBOL_FUNC (sym)) (...). | 
|---|
| 2713 | Reported by Karl Vogel. | 
|---|
| 2714 |  | 
|---|
| 2715 | Tue Nov  9 09:31:47 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2716 |  | 
|---|
| 2717 | * m4.h: Do not define volatile if already defined. | 
|---|
| 2718 | Reported by Rene' Seindal. | 
|---|
| 2719 |  | 
|---|
| 2720 | * lib/Makefile.in: Add a forgotten ALLOCA=@ALLOCA@.  Grrr! | 
|---|
| 2721 |  | 
|---|
| 2722 | Reported by Bernhard Daeubler, Eric Backus, Hal Peterson, Hoang | 
|---|
| 2723 | Uong, Ian Taylor, Kaveh R. Ghazi, Tom McConnell and Walter Wong. | 
|---|
| 2724 |  | 
|---|
| 2725 | Mon Nov  8 21:11:44 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2726 |  | 
|---|
| 2727 | * m4.h: Define strchr and strrchr in terms of index and rindex, | 
|---|
| 2728 | instead of the other way around. | 
|---|
| 2729 | * builtin.c, m4.c, path.c: Use strchr instead of index. | 
|---|
| 2730 |  | 
|---|
| 2731 | * input.c (next_char): Remove a "break;" after a "return ...;". | 
|---|
| 2732 | Reported by Tom McConnell. | 
|---|
| 2733 |  | 
|---|
| 2734 |  | 
|---|
| 2735 | Mon Nov  8 12:45:34 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2736 |  | 
|---|
| 2737 | * Release 1.1 | 
|---|
| 2738 |  | 
|---|
| 2739 | * configure.in: Do not copy check files in the build hierarchy. | 
|---|
| 2740 | * checks/check-them: Identify the m4 version being checked.  For | 
|---|
| 2741 | finding m4, look in $PATH instead of in the parent directory. | 
|---|
| 2742 | * Makefile.in (check): Prepend `pwd` to $PATH before checking. | 
|---|
| 2743 | * checks/Makefile.in (.all-stamp): Always create check files in | 
|---|
| 2744 | the source hierarchy, not anymore in the build hierarchy. | 
|---|
| 2745 | (check): cd to the source hierarchy before performing checks. | 
|---|
| 2746 | Do not copy nor clean COPYING anymore, take it from `..'. | 
|---|
| 2747 | Reported by Tom McConnell. | 
|---|
| 2748 |  | 
|---|
| 2749 | * Makefile.in (Makefile): Use $(SHELL). | 
|---|
| 2750 | (config.status): Use $(SHELL).  Use "config.status --recheck" | 
|---|
| 2751 | instead of "configure --no-create", which is obsolete. | 
|---|
| 2752 | Reported by Tom McConnell. | 
|---|
| 2753 |  | 
|---|
| 2754 | Fri Nov  5 09:49:30 1993  Francois Pinard  (pinard@compy.IRO.UMontreal.CA) | 
|---|
| 2755 |  | 
|---|
| 2756 | * m4.c (usage): Use "%s" instead of "m4" in format string. | 
|---|
| 2757 | Reported by Jim Meyering. | 
|---|
| 2758 |  | 
|---|
| 2759 | * Makefile.in: Distribute mkinstalldirs. | 
|---|
| 2760 | Reported by Pierre Gaumond. | 
|---|
| 2761 | Reported by Jim Meyering. | 
|---|
| 2762 | Reported by Tom McConnell. | 
|---|
| 2763 | Reported by Andreas Gustafsson. | 
|---|
| 2764 |  | 
|---|
| 2765 | * checks/check-them: Renamed from checks/check_them. | 
|---|
| 2766 | * checks/get-them: Renamed from checks/get_them. | 
|---|
| 2767 | * checks/.all-stamp: Renamed from checks/.all_stamp. | 
|---|
| 2768 | * checks/Makefile.in: Changed accordingly. | 
|---|
| 2769 | Reported by Jim Meyering. | 
|---|
| 2770 |  | 
|---|
| 2771 | Thu Nov  4 13:50:52 1993  Francois Pinard  (pinard@lagrande.IRO.UMontreal.CA) | 
|---|
| 2772 |  | 
|---|
| 2773 | * lib/Makefile.in (dist): Correct permissions on files. | 
|---|
| 2774 |  | 
|---|
| 2775 | * output.c: Declare tmpfile, some systems don't. | 
|---|
| 2776 |  | 
|---|
| 2777 | Wed Nov  3 09:09:16 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2778 |  | 
|---|
| 2779 | * checks/Makefile.in (dist): Correct permissions on files. | 
|---|
| 2780 |  | 
|---|
| 2781 | * Makefile.in (dist): Ensure recursive linking for subdirectory | 
|---|
| 2782 | `examples', also set read/write permissions on all its files. | 
|---|
| 2783 |  | 
|---|
| 2784 | * mkinstalldirs: New, from elsewhere. | 
|---|
| 2785 | * Makefile.in: Use it. | 
|---|
| 2786 |  | 
|---|
| 2787 | * debug.c: Synchronize debug messages and regular output when | 
|---|
| 2788 | the debug file and stdout are redirected to the same file. | 
|---|
| 2789 | * configure.in: Add (commented) checks for fileno and fstat. | 
|---|
| 2790 | Reported by Jim Avera. | 
|---|
| 2791 |  | 
|---|
| 2792 | * builtin.c (m4_ifelse): Diagnose excess arguments if 5, 8, 11, | 
|---|
| 2793 | etc., arguments, then ignore the superfluous one.  m4 used to | 
|---|
| 2794 | diagnose missing arguments and return the empty string. | 
|---|
| 2795 | Reported by Nick S. Kanakakorn. | 
|---|
| 2796 |  | 
|---|
| 2797 | Tue Nov  2 00:55:41 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2798 |  | 
|---|
| 2799 | * m4.c (main): At end of all input, ensure all undiverted text | 
|---|
| 2800 | goes to the main output stream. | 
|---|
| 2801 | Reported by Andreas Gustafsson. | 
|---|
| 2802 |  | 
|---|
| 2803 | * m4.c (main): exit (0), instead of return 0. | 
|---|
| 2804 |  | 
|---|
| 2805 | * m4.c: Implement -P and --prefix-builtins. | 
|---|
| 2806 | * builtin.c: Delete const specifier on builtin_tab. | 
|---|
| 2807 | (prefix_all_builtins): New. | 
|---|
| 2808 | Reported by Noah Friedman. | 
|---|
| 2809 | Reported by Scott Bartram. | 
|---|
| 2810 |  | 
|---|
| 2811 | * c-boxes.el: New, from elsewhere. | 
|---|
| 2812 | * Makefile.in: Distribute it. | 
|---|
| 2813 |  | 
|---|
| 2814 | * m4.h: Do not define bcopy if <string.h> defines it. | 
|---|
| 2815 | Reported by Stephen Perkins. | 
|---|
| 2816 |  | 
|---|
| 2817 | * builtin.c (define_macro): Allow a missing second argument, in | 
|---|
| 2818 | which case it is implied empty.  Affects define and pushdef. | 
|---|
| 2819 | Reported by Eric Allman. | 
|---|
| 2820 |  | 
|---|
| 2821 | Mon Nov  1 07:45:24 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2822 |  | 
|---|
| 2823 | * m4.h: Add blind_if_no_args in struct builtin, blind_no_args in | 
|---|
| 2824 | struct symbol adn SYMBOL_BLIND_NO_ARGS macro. | 
|---|
| 2825 | * builtin.c: Initialize all the blindness fields in builtin_tab. | 
|---|
| 2826 | (define_builtin): Copy the blindness of a builtin into its symbol. | 
|---|
| 2827 | * macro.c (expand_token): Avoid processing a blind builtin if the | 
|---|
| 2828 | next character is not an opening parenthesis. | 
|---|
| 2829 | Reported by David MacKenzie. | 
|---|
| 2830 | Reported by Noah Friedman. | 
|---|
| 2831 |  | 
|---|
| 2832 | * configure.in: Ensure an exit status of 0 on completion. | 
|---|
| 2833 | Reported by Vivek P. Singhal. | 
|---|
| 2834 |  | 
|---|
| 2835 | * eval.c (eval_lex): Admit both lower and upper case letters for | 
|---|
| 2836 | bases greater than 10.  Only lower case letters were accepted. | 
|---|
| 2837 |  | 
|---|
| 2838 | * eval.c (eval_lex): Recognize 0bDIGITS and 0rRADIX:DIGITS syntax. | 
|---|
| 2839 | Reported by Krste Asanovic. | 
|---|
| 2840 |  | 
|---|
| 2841 | * eval.c:  Rename NOT to LNOT.  Add XOR, NOT, LSHIFT and RSHIFT. | 
|---|
| 2842 | * eval.c (logical_not_term): New name for not_term. | 
|---|
| 2843 | * eval.c (xor_term): New, between or_term and and_term. | 
|---|
| 2844 | * eval.c (not_term): New, between and_term and logical_not_term. | 
|---|
| 2845 | * eval.c (shift_term): New, between cmp_term and add_term. | 
|---|
| 2846 | Reported by Krste Asanovic: ~, ^, <<, >>. | 
|---|
| 2847 | Reported by Ben A. Mesander: ** vs ^. | 
|---|
| 2848 |  | 
|---|
| 2849 | * m4.c: Delete xmalloc.c, xrealloc.c, xstrdup.c. | 
|---|
| 2850 | * m4.h: Delete xrealloc.c. | 
|---|
| 2851 | * lib/xmalloc.c: New, from elsewhere. | 
|---|
| 2852 | * lib/xstrdup.c: New, from elsewhere. | 
|---|
| 2853 | * lib/Makefile.in: Distribute and compile them. | 
|---|
| 2854 |  | 
|---|
| 2855 | * m4.c: Change progname to program_name. | 
|---|
| 2856 | * builtin.c, eval.c, m4.c, m4.h: Rename error to m4error. | 
|---|
| 2857 | * lib/error.c: New, from elsewhere. | 
|---|
| 2858 | * lib/Makefile.in: Distribute and compile error.c. | 
|---|
| 2859 | * configure.in: Check AC_VPRINTF and for strerror. | 
|---|
| 2860 | * m4.c: Delete cmd_error.  Use error instead. | 
|---|
| 2861 | * m4.c: Change label capitalisation to "ERROR", "Warning", etc. | 
|---|
| 2862 |  | 
|---|
| 2863 | * m4.h: Delete #define const, let Autoconf takes care of this. | 
|---|
| 2864 |  | 
|---|
| 2865 | * m4.c: Remove all code conditionalized by IMPLEMENT_M4OPTS. | 
|---|
| 2866 | Merge parse_args into main.  Declare argv to be `char *const *', | 
|---|
| 2867 | then remove superfluous casts. | 
|---|
| 2868 |  | 
|---|
| 2869 | * m4.c: Rename --no-gnu-extensions to --traditional. | 
|---|
| 2870 | Reported by Ben A. Mesander. | 
|---|
| 2871 |  | 
|---|
| 2872 | * m4.c (usage): Add a status parameter.  Supply one in various | 
|---|
| 2873 | calls.  Add --help processing.  Remove -V for --version. | 
|---|
| 2874 |  | 
|---|
| 2875 | * lib/Makefile.in: Put $(CFLAGS) last in .c.o rule. | 
|---|
| 2876 |  | 
|---|
| 2877 | * lib/Makefile.in: Have an AR=ar declaration. | 
|---|
| 2878 | Reported by Eric Backus. | 
|---|
| 2879 | Reported by Bjorn R. Bjornsson. | 
|---|
| 2880 | Reported by Tom Tromey. | 
|---|
| 2881 | Reported by Kristine Lund. | 
|---|
| 2882 | Reported by Marion Hakanson. | 
|---|
| 2883 |  | 
|---|
| 2884 | Sat Oct 30 12:51:47 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2885 |  | 
|---|
| 2886 | * Makefile.in (m4.info): Use -I$(srcdir) on $(MAKEINFO). | 
|---|
| 2887 | Reported by Noah Friedman. | 
|---|
| 2888 |  | 
|---|
| 2889 | Mon Oct 25 14:58:48 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2890 |  | 
|---|
| 2891 | * Makefile.in: Remove MDEFINES and cleanup. | 
|---|
| 2892 |  | 
|---|
| 2893 | Wed Jun  9 14:59:46 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2894 |  | 
|---|
| 2895 | * Makefile.in (dist): Replace "echo `pwd`" by a mere "pwd". | 
|---|
| 2896 | Create a gzip file. | 
|---|
| 2897 |  | 
|---|
| 2898 | Sat Feb  6 14:59:22 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2899 |  | 
|---|
| 2900 | * Makefile.in, lib/Makefile.in, check/Makefile.in: In dist goals, | 
|---|
| 2901 | ensure 777 mode for directories, so older tar's will restore file | 
|---|
| 2902 | modes properly. | 
|---|
| 2903 |  | 
|---|
| 2904 | Sun Jan 17 15:38:05 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2905 |  | 
|---|
| 2906 | * Makefile.in, lib/Makefile.in: Put $(CFLAGS) after $(CPPFLAGS), | 
|---|
| 2907 | so the installer can override automatically configured choices. | 
|---|
| 2908 | Reported by Karl Berry. | 
|---|
| 2909 |  | 
|---|
| 2910 | Fri Jan 15 16:07:00 1993  Francois Pinard  (pinard@icule) | 
|---|
| 2911 |  | 
|---|
| 2912 | * lib/vfprintf.c: Stolen from Oleo distribution and adapted.  The | 
|---|
| 2913 | previous version was not working properly on m68k-hp-bsd4.3. | 
|---|
| 2914 | Reported by Roland McGrath. | 
|---|
| 2915 |  | 
|---|
| 2916 | * lib/_doprnt.c: Stolen from Oleo distribution. | 
|---|
| 2917 | * configure.in: Check for _doprnt.c if vfprintf.c selected. | 
|---|
| 2918 | * lib/Makefile.in: Distribute _doprnt.c. | 
|---|
| 2919 | Do not distribute regex.[ch].old anymore. | 
|---|
| 2920 |  | 
|---|
| 2921 | Fri Jan  1 19:42:23 1993  Francois Pinard  (pinard at icule) | 
|---|
| 2922 |  | 
|---|
| 2923 | * Makefile.in, lib/Makefile.in: Reinstate $(CPPFLAGS), use it. | 
|---|
| 2924 | Richard wants it there. | 
|---|
| 2925 |  | 
|---|
| 2926 | Sun Dec 27 07:01:54 1992  Francois Pinard  (pinard at icule) | 
|---|
| 2927 |  | 
|---|
| 2928 | * Makefile.in: Add DEFS to MDEFINES. | 
|---|
| 2929 | * lib/Makefile.in (.c.o): Remove $(CPPFLAGS). | 
|---|
| 2930 | (libm4.a): Remove the library before creating it. | 
|---|
| 2931 | (distclean): Remove tags and TAGS too. | 
|---|
| 2932 |  | 
|---|
| 2933 | Wed Dec 23 12:46:55 1992  Francois Pinard  (pinard at icule) | 
|---|
| 2934 |  | 
|---|
| 2935 | * Makefile.in (dvi, m4.dvi): New goals. | 
|---|
| 2936 |  | 
|---|
| 2937 | * builtin.c, eval.c, format.c, input.c, m4.[ch], m4.texinfo, | 
|---|
| 2938 | macro.c, output.c, path.c, symtab.c: Change Copyright from | 
|---|
| 2939 | 1989-1992 to the explicit enumeration 1989, 1990, 1991, 1992. | 
|---|
| 2940 |  | 
|---|
| 2941 | * examples/divert.m4: Deleted, this bug has been corrected. | 
|---|
| 2942 |  | 
|---|
| 2943 | * Makefile.in (texclean, mostlyclean): New goals. | 
|---|
| 2944 |  | 
|---|
| 2945 | * Makefile.in (clean): Remove clutter from ansi2knr. | 
|---|
| 2946 | Reported by Pierre Gaumond. | 
|---|
| 2947 | Reported by Greg A. Woods. | 
|---|
| 2948 |  | 
|---|
| 2949 | Sun Dec 20 10:40:20 1992  Francois Pinard  (pinard at icule) | 
|---|
| 2950 |  | 
|---|
| 2951 | * Makefile.in: Remove $(CPPFLAGS) from the .c.o rule.  The user | 
|---|
| 2952 | might well use CFLAGS is s/he needs it. | 
|---|
| 2953 |  | 
|---|
| 2954 | * Makefile.in: Allow installation of info files from a separate | 
|---|
| 2955 | build directory. | 
|---|
| 2956 | Reported by Jason Merrill. | 
|---|
| 2957 | Reported by David MacKenzie. | 
|---|
| 2958 | Reported by Skip Montanaro. | 
|---|
| 2959 | Reported by Erez Zadok. | 
|---|
| 2960 | Reported by Assar Westerlund. | 
|---|
| 2961 |  | 
|---|
| 2962 |  | 
|---|
| 2963 | Sat Dec 19 08:21:34 1992  Francois Pinard  (pinard at icule) | 
|---|
| 2964 |  | 
|---|
| 2965 | * Release 1.0.3 | 
|---|
| 2966 | This is still a beta release for the future GNU m4 version 1.1. | 
|---|
| 2967 |  | 
|---|
| 2968 | * lib/alloca.c: New, from elsewhere. | 
|---|
| 2969 | * lib/Makefile.in: Distribute it.  Define and use $(ALLOCA). | 
|---|
| 2970 |  | 
|---|
| 2971 | * m4.h: Do not define index/rindex if already defined.  If | 
|---|
| 2972 | FALSE/TRUE are already defined, do not redefine them, but merely | 
|---|
| 2973 | define boolean typedef to int. | 
|---|
| 2974 |  | 
|---|
| 2975 | * Makefile.in: Use $(DEFS) while compiling ansi2knr. | 
|---|
| 2976 | * ansi2knr.c: Rewrite #ifdef HAVE_STRING_H || STDC_HEADERS, | 
|---|
| 2977 | because some C compilers do not like connectives with #ifdef. | 
|---|
| 2978 | * m4.h: Define `volatile' only if __GNUC__, instead of once for | 
|---|
| 2979 | __GNUC__ and once for __STDC__. | 
|---|
| 2980 | * lib/regex.h: Leave const alone, AC_CONST will take care of it. | 
|---|
| 2981 |  | 
|---|
| 2982 | * checks/Makefile.in: Use .all_stamp instead of $(CHECKS) for | 
|---|
| 2983 | Makefile dependencies.  Without it, make keeps destroying and | 
|---|
| 2984 | remaking $(CHECKS) in a loop (why?).  Distribute .all_stamp. | 
|---|
| 2985 |  | 
|---|
| 2986 | * m4.h, m4.c, builtin.c, output.c: Change all divertion/DIVERTION | 
|---|
| 2987 | to diversion/DIVERSION, this was a spelling error. | 
|---|
| 2988 |  | 
|---|
| 2989 | * m4.c: Declare version[], remove #include "version.h". | 
|---|
| 2990 | * version.h: Deleted. | 
|---|
| 2991 | * Makefile.in: Remove references to version.h. | 
|---|
| 2992 |  | 
|---|
| 2993 | * output.c (shipout_text): Centralize all `#line NUM ["FILE"]' | 
|---|
| 2994 | production, by using a simpler and more robust algorithm.  This | 
|---|
| 2995 | solves the problem of synclines sometimes written in the middle of | 
|---|
| 2996 | an output line.  Delete sync_line() and output_lines variable. | 
|---|
| 2997 | * m4.h: Remove sync_line prototype and output_lines declaration. | 
|---|
| 2998 | * input.c (next_char), output.c (shipout_text): Remove references | 
|---|
| 2999 | to output_lines. | 
|---|
| 3000 | * input.c (push_file, pop_file): Merely put the value -1 in | 
|---|
| 3001 | output_current_line instead of calling sync_line, for delaying a | 
|---|
| 3002 | single `#line NUM FILE' before next output line.  Do not test | 
|---|
| 3003 | for sync_output, because this is unnecessary clutter. | 
|---|
| 3004 | * output.c (make_divertion, insert_divertion): Idem. | 
|---|
| 3005 | * input.c: Rename must_advance_line to start_of_input_line, for | 
|---|
| 3006 | consistency. | 
|---|
| 3007 |  | 
|---|
| 3008 | * debug.c (trace_header): Select a new debug line format, which | 
|---|
| 3009 | better complies with GNU standards for formatting error messages. | 
|---|
| 3010 | With option `-dfl', M-x next-error might be used on the output. | 
|---|
| 3011 | * m4.c (vmesg): Adjust format of error output to GNU standards. | 
|---|
| 3012 | * m4.texinfo: Adjust examples for `make check' to work. | 
|---|
| 3013 |  | 
|---|
| 3014 | * m4.h, builtin.c, debug.c, input.c, macro.c, path.c: Use upper | 
|---|
| 3015 | case for enum debug_info constants, which were all lower case. | 
|---|
| 3016 |  | 
|---|
| 3017 | * builtin.c (m4_regexp, m4_patsubst): Use re_search instead of | 
|---|
| 3018 | re_search_2. | 
|---|
| 3019 | * lib/regex.[ch]: Use new version from textutils 1.3.6, with some | 
|---|
| 3020 | collected patches.  I tried a few times using newer regex.[ch], it | 
|---|
| 3021 | mysteriously stopped aborting with this one.  Insecure feeling... | 
|---|
| 3022 | * lib/Makefile.in: Distribute regex.[ch].old, just in case! | 
|---|
| 3023 |  | 
|---|
| 3024 | Fri Dec 18 11:08:03 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3025 |  | 
|---|
| 3026 | * m4.c: Change `--no-warnings' to `--silent'. | 
|---|
| 3027 | Reported by David MacKenzie. | 
|---|
| 3028 |  | 
|---|
| 3029 | * m4.c: Put all M4OPTS code upon IMPLEMENT_M4OPTS control, and | 
|---|
| 3030 | leave it off for now.  See comment in m4.c for justification. | 
|---|
| 3031 | Reported by David MacKenzie. | 
|---|
| 3032 |  | 
|---|
| 3033 | * configure.in: Replace AC_USG by AC_HAVE_HEADERS(string.h). | 
|---|
| 3034 | * m4.h, ansi2knr.c, lib/regex.h: Replace USG by HAVE_STRING_H. | 
|---|
| 3035 |  | 
|---|
| 3036 | * Makefile.in: Add a new `info' goal.  Use macro MAKEINFO. | 
|---|
| 3037 |  | 
|---|
| 3038 | * Makefile.in: Ensure recursive cleaning is done before local | 
|---|
| 3039 | cleaning for all clean goals. | 
|---|
| 3040 |  | 
|---|
| 3041 | * builtin.c (ntoa): Ensure the value is always interpreted as a | 
|---|
| 3042 | signed quantity, whatever the radix is. | 
|---|
| 3043 |  | 
|---|
| 3044 | Wed Nov 18 07:57:19 1992  Jim Meyering  (meyering@idefix) | 
|---|
| 3045 |  | 
|---|
| 3046 | * builtin.c, format.c, input.c: Split long lines. | 
|---|
| 3047 | * m4.c: Use typedef macro_definition instead of struct | 
|---|
| 3048 | macro_definition. | 
|---|
| 3049 | * symtab.c: Use typedef symbol instead of struct symbol. | 
|---|
| 3050 |  | 
|---|
| 3051 | Tue Nov 17 01:58:40 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3052 |  | 
|---|
| 3053 | * *.[ch]: Remove all trailing whitespace, in code and comments. | 
|---|
| 3054 |  | 
|---|
| 3055 | * configure.in: Find some awk. | 
|---|
| 3056 | * Makefile.in: Add $(AWK) to MDEFINES. | 
|---|
| 3057 | * checks/Makefile.in: Transmit $(AWK) to get_them. | 
|---|
| 3058 | * checks/get_them: Use $AWK instead of gawk.  Add a close in the | 
|---|
| 3059 | awk script when switching files, because without this, mawk runs | 
|---|
| 3060 | out of file descriptors. | 
|---|
| 3061 |  | 
|---|
| 3062 | Mon Nov 16 20:42:56 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3063 |  | 
|---|
| 3064 | * Makefile.in (realclean): Delete m4.info*. | 
|---|
| 3065 | Reported by Jim Meyering. | 
|---|
| 3066 |  | 
|---|
| 3067 | * Makefile.in: Adjust and link with checks/Makefile. | 
|---|
| 3068 | * checks/Makefile.in: New. | 
|---|
| 3069 | * configure.in: Output checks/Makefile. | 
|---|
| 3070 |  | 
|---|
| 3071 | * checks/get_them: Have the dnl header of each test more | 
|---|
| 3072 | recognizable by next-error, also use a better message. | 
|---|
| 3073 |  | 
|---|
| 3074 | Mon Nov 16 07:48:52 1992  Jim Meyering  (meyering@idefix) | 
|---|
| 3075 |  | 
|---|
| 3076 | * m4.h [__GNUC__]: Use __volatile__ instead of `volatile.' | 
|---|
| 3077 | And use that only if __GNUC__ since we're using it's GCC-specific | 
|---|
| 3078 | semantics that tell the compiler the associated function doesn't | 
|---|
| 3079 | return. | 
|---|
| 3080 |  | 
|---|
| 3081 | * builtin.c (substitute): Don't use character as an array index. | 
|---|
| 3082 | (dumpdef_cmp): Make formal arguments `const void *' to avoid | 
|---|
| 3083 | warnings with gcc -W -Wall on systems with qsort prototype. | 
|---|
| 3084 | (m4_errprint): Cast obstack_finish to `char *' to avoid warnings | 
|---|
| 3085 | from gcc -W -Wall. | 
|---|
| 3086 |  | 
|---|
| 3087 | * eval.c (most functions): Add parentheses to assignments used | 
|---|
| 3088 | as truth values go avoid warnings from gcc -Wall. | 
|---|
| 3089 |  | 
|---|
| 3090 | * input.c, m4.c, output.c, path.c, symtab.c: Declare static | 
|---|
| 3091 | any functions that don't need external scope. | 
|---|
| 3092 |  | 
|---|
| 3093 | * builtin.c, debug.c, format.c, m4.c, m4.h, macro.c, symtab.c | 
|---|
| 3094 | (many functions and arrays): Declare `const'. | 
|---|
| 3095 |  | 
|---|
| 3096 | Sun Nov 15 09:42:09 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3097 |  | 
|---|
| 3098 | * *.[ch]: Rename nil to NULL, using the declaration from <stdio.h>, | 
|---|
| 3099 | removing the declaration from m4.h.  Also rename false to FALSE | 
|---|
| 3100 | and true to TRUE. | 
|---|
| 3101 |  | 
|---|
| 3102 | * lib/Makefile.in (Makefile): New goal. | 
|---|
| 3103 |  | 
|---|
| 3104 | * Makefile.in, lib/Makefile.in: Add a .c.o rule, so CFLAGS is not | 
|---|
| 3105 | so heavily loaded.  It gets more easily overridable, calling make. | 
|---|
| 3106 | Reported by Jim Meyering. | 
|---|
| 3107 |  | 
|---|
| 3108 | * Makefile.in (dist): Get .fname from the current directory name, | 
|---|
| 3109 | instead of from version.h.  I need updating many files manually, | 
|---|
| 3110 | when the version changes, version.h is just one of them. | 
|---|
| 3111 |  | 
|---|
| 3112 | Sat Nov 14 11:01:20 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3113 |  | 
|---|
| 3114 | * m4.h: Remove the tag `boolean' on the enum introducing typedef | 
|---|
| 3115 | `boolean'.  This tag conflicts with <sys/types.h> on SVR4. | 
|---|
| 3116 | Reported by Tom McConnell. | 
|---|
| 3117 |  | 
|---|
| 3118 | Fri Nov 13 00:12:50 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3119 |  | 
|---|
| 3120 | * m4.texinfo: Correct the examples for 33.divert, 38.divnum, | 
|---|
| 3121 | 39.cleardiv, which were describing missing or spurious newlines. | 
|---|
| 3122 | Modify examples 52.eval, 53.esyscmd and 54.sysval so the results | 
|---|
| 3123 | do not depend on machine word size, `/bin/false' implementation, | 
|---|
| 3124 | or `wc' output format.  `make check' is more dependable, now. | 
|---|
| 3125 |  | 
|---|
| 3126 | * checks/check_them: Summarize the failed tests by listing their | 
|---|
| 3127 | name, at end.  If none, issue `All checks successful'.  Output | 
|---|
| 3128 | `Checking' instead of `Input file:'. | 
|---|
| 3129 |  | 
|---|
| 3130 | * checks/get_them, checks/check_them: Reindented. | 
|---|
| 3131 |  | 
|---|
| 3132 | * Makefile.in (dist): chmod a+r before making the tar file. | 
|---|
| 3133 |  | 
|---|
| 3134 | Thu Nov 12 14:42:57 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3135 |  | 
|---|
| 3136 | * builtin.c (m4_dnl): Diagnose any parameter to `dnl'. | 
|---|
| 3137 |  | 
|---|
| 3138 | * input.c (next_token): Reinitialize token_buttom just after using | 
|---|
| 3139 | it as a watermark with obstack_free.  Or else, a future token, big | 
|---|
| 3140 | enough for triggering reallocation of the obstack chunk, could | 
|---|
| 3141 | void the initialized value of token_buttom, later causing panic in | 
|---|
| 3142 | obstack_free.  Rename token_buttom to token_bottom everywhere. | 
|---|
| 3143 |  | 
|---|
| 3144 | * m4.h: Before declaring errno, first include <errno.h> and | 
|---|
| 3145 | ensure that it does not define errno. | 
|---|
| 3146 | Reported by Richard Stallman. | 
|---|
| 3147 |  | 
|---|
| 3148 | Wed Nov 11 17:40:35 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3149 |  | 
|---|
| 3150 | * builtin.c: Define and use DECLARE macro for builtins. | 
|---|
| 3151 |  | 
|---|
| 3152 | * builtin.c (m4_ifelse): Avoid any diagnostic when exactly one | 
|---|
| 3153 | argument, this is a common idiom for introducing long comments. | 
|---|
| 3154 |  | 
|---|
| 3155 | * builtin.c (m4_ifelse): If 3n + 2 arguments, diagnose missing | 
|---|
| 3156 | arguments.  The last argument was silently ignored. | 
|---|
| 3157 |  | 
|---|
| 3158 | * m4.c (cmd_error): Add a missing semicolon before va_end(). | 
|---|
| 3159 |  | 
|---|
| 3160 | Tue Nov 10 08:57:05 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3161 |  | 
|---|
| 3162 | * Makefile.in: Now handle protoized sources.  Define and use U. | 
|---|
| 3163 | Compile and use ansi2knr with old compilers.  Update DISTFILES. | 
|---|
| 3164 | Add `aclocal.m4' to `configure' dependencies. | 
|---|
| 3165 | * ansi2knr.c: New, from Ghostscript distribution. | 
|---|
| 3166 | * configure.in: Define U through FP_PROTOTYPES for old compilers. | 
|---|
| 3167 | Add AC_ISC_POSIX, AC_CONST, AC_SIZE_T. | 
|---|
| 3168 | * aclocal.m4: New, provide FP_PROTOTYPES. | 
|---|
| 3169 | * m4.h: Conditionnaly protoized through Args, save for varags. | 
|---|
| 3170 | * builtin.c: Protoized.  Then: | 
|---|
| 3171 | Include <sys/types.h> if size_t is not defined, before "regex.h". | 
|---|
| 3172 | (m4_ifelse): Fetch built-in name properly for diagnostic. | 
|---|
| 3173 | (m4_dumpdef): Remove wrong (char *) cast calling dump_symbol. | 
|---|
| 3174 | (m4_regexp): Add const to `msg' declaration. | 
|---|
| 3175 | (m4_patsubst): Add const to `msg' declaration. | 
|---|
| 3176 | * debug.c: Protoized, save for varargs. | 
|---|
| 3177 | * eval.c: Protoized. | 
|---|
| 3178 | * format.c: Protoized. | 
|---|
| 3179 | * input.c: Protoized. | 
|---|
| 3180 | * m4.c: Protoized, save for varargs.  Then: | 
|---|
| 3181 | (xfree): Accept void * instead of char *. | 
|---|
| 3182 | (xmalloc): Return void * instead of char *. | 
|---|
| 3183 | (xrealloc): Accept and return void * instead of char *. | 
|---|
| 3184 | * macro.c: Protoized. | 
|---|
| 3185 | * output.c: Protoized. | 
|---|
| 3186 | * path.c: Protoized.  Then cast some (char *) over xmalloc's. | 
|---|
| 3187 | * symtab.c: Protoized. | 
|---|
| 3188 |  | 
|---|
| 3189 | Fri Nov  6 02:05:21 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3190 |  | 
|---|
| 3191 | * m4.texinfo: Remove directory from diagnostics in 30.include, | 
|---|
| 3192 | 51.eval, 56.errprint and 57.m4exit tests. | 
|---|
| 3193 |  | 
|---|
| 3194 | * m4.h: Remove declarations for int or void system functions, they | 
|---|
| 3195 | cause more conflicting trouble than they make good. | 
|---|
| 3196 |  | 
|---|
| 3197 | * configure.in: Avoid configuration header file.  Add some tests. | 
|---|
| 3198 | * m4.h: Remove #include "config.h". | 
|---|
| 3199 | * Makefile.in, lib/Makefile.in: Implement Autoconf interface. | 
|---|
| 3200 | Then, rewritten for better compliance with GNU standards. | 
|---|
| 3201 |  | 
|---|
| 3202 | Thu Nov  5 12:37:13 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3203 |  | 
|---|
| 3204 | * format.c (format): Avoid syntax error if not HAVE_EFGCVT, | 
|---|
| 3205 | because of a misplaced #endif. | 
|---|
| 3206 |  | 
|---|
| 3207 | * Many *.[hc] files: Correct intra-line spacing here and there, | 
|---|
| 3208 | according to GNU indent 1.6 advice. | 
|---|
| 3209 |  | 
|---|
| 3210 | * configure.in: New, using Autoconf 1.2. | 
|---|
| 3211 | * m4.h: Reverse NO_MEMORY_H to NEED_MEMORY_H. | 
|---|
| 3212 | * Delete old configure.in, configure, etc/configure.in, | 
|---|
| 3213 | etc/configure, lib/configure.in, lib/configure and config/*. | 
|---|
| 3214 | Reported by Jason Merrill. | 
|---|
| 3215 |  | 
|---|
| 3216 | * symtab.c (hash): Change (char) NULL to '\0'. | 
|---|
| 3217 | Reported by Jason Merrill. | 
|---|
| 3218 |  | 
|---|
| 3219 | * Delete .vers, etc/newdist.sh, etc/newvers.sh and | 
|---|
| 3220 | etc/nextvers.sh.  Release numbers will be edited `by hand'. | 
|---|
| 3221 | * version.h: De-automatize, force value in. | 
|---|
| 3222 |  | 
|---|
| 3223 | * m4.c: Changes in order to use a newer getopt.h. | 
|---|
| 3224 | Reported by David MacKenzie. | 
|---|
| 3225 |  | 
|---|
| 3226 | * checks/: New name for examples/. | 
|---|
| 3227 | * checks/get_them: New location for etc/get_examples. | 
|---|
| 3228 | * checks/check_them: New location for etc/check_examples. | 
|---|
| 3229 | * Makefile.in, checks/get_them, checks/check_them: Adjust. | 
|---|
| 3230 | * lib/vfprintf.c: New location for etc/vfprintf.c. | 
|---|
| 3231 | * Delete empty etc/. | 
|---|
| 3232 | * examples/: New name for test/. | 
|---|
| 3233 |  | 
|---|
| 3234 | Tue Mar 10 00:29:46 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3235 |  | 
|---|
| 3236 | * Makefile.in (check): Add m4 as dependency. | 
|---|
| 3237 |  | 
|---|
| 3238 | * m4.c: Accept --no-warnings instead of --no_warnings, and | 
|---|
| 3239 | --no-gnu-extensions instead of --no_gnu_extensions.  Make the | 
|---|
| 3240 | usage message more informative. | 
|---|
| 3241 | Reported by David MacKenzie. | 
|---|
| 3242 |  | 
|---|
| 3243 | Mon Mar  9 14:53:40 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3244 |  | 
|---|
| 3245 | * etc/check_examples: New name for check_examples.sh. | 
|---|
| 3246 | * etc/get_examples: New name for get_examples.sh. | 
|---|
| 3247 | * Makefile.in, etc/Makefile.in: Use new names. | 
|---|
| 3248 |  | 
|---|
| 3249 | * Makefile.in: Transmit $(CC) while making in lib. | 
|---|
| 3250 |  | 
|---|
| 3251 | * Many *.[hc] files: GNU indent'ed, with further fine tuning of | 
|---|
| 3252 | code disposition by hand. | 
|---|
| 3253 |  | 
|---|
| 3254 | Sun Mar  8 11:01:55 1992  Francois Pinard  (pinard at icule) | 
|---|
| 3255 |  | 
|---|
| 3256 | * m4.h: Delete definitions for abort() and exit(). | 
|---|
| 3257 | Reported by Richard Stallman. | 
|---|
| 3258 |  | 
|---|
| 3259 | * config/hmake-unicos, config/s-unicos.h: New files. | 
|---|
| 3260 | Reported by Hal Peterson. | 
|---|
| 3261 |  | 
|---|
| 3262 | * eval.c (exp_term): Have N^0 return 1. | 
|---|
| 3263 | Reported by Michael Fetterman. | 
|---|
| 3264 |  | 
|---|
| 3265 | * eval.c, input.c, m4.h: Remove last comma in enums. | 
|---|
| 3266 | Reported by Mike Lijewski. | 
|---|
| 3267 |  | 
|---|
| 3268 | * Transfer of maintenance duties from Rene' to Franc,ois. | 
|---|
| 3269 |  | 
|---|
| 3270 |  | 
|---|
| 3271 | Thu Oct 24 15:18:46 1991  Rene' Seindal (seindal at diku.dk) | 
|---|
| 3272 |  | 
|---|
| 3273 | * Release 1.0.  Many thanks to those, who provided me with bug | 
|---|
| 3274 | reports and feedback. | 
|---|
| 3275 |  | 
|---|
| 3276 | * Uses GNU configure, taken from the gdb distribution. | 
|---|
| 3277 |  | 
|---|
| 3278 | * Uses GNU getopt(), with long option names. | 
|---|
| 3279 |  | 
|---|
| 3280 | * The -Q/+quiet option is added, which suppresses warnings about | 
|---|
| 3281 | missing or superflous arguments to built-in macros. | 
|---|
| 3282 |  | 
|---|
| 3283 | * Added default options via the M4OPTS environment variable. | 
|---|
| 3284 |  | 
|---|
| 3285 | * The built-in format can now be configured to use sprintf as | 
|---|
| 3286 | the formatting engine, for systems without [efg]cvt(3). | 
|---|
| 3287 |  | 
|---|
| 3288 | * GNU library code is moved to the ./lib subdirectory; other | 
|---|
| 3289 | utility files are now in ./etc. | 
|---|
| 3290 |  | 
|---|
| 3291 | * Several minor bugs have been fixed. | 
|---|
| 3292 |  | 
|---|
| 3293 |  | 
|---|
| 3294 | Fri Jul 26 15:28:42 1991  Rene' Seindal (seindal at diku.dk) | 
|---|
| 3295 |  | 
|---|
| 3296 | * Fixed various bugs.  Release 0.99, manual 0.09.  Many thanks to | 
|---|
| 3297 | Francois Pinard and Roland H. Pesch for providing me with reports. | 
|---|
| 3298 |  | 
|---|
| 3299 | * The builtins incr and decr are now implemented without use of | 
|---|
| 3300 | eval. | 
|---|
| 3301 |  | 
|---|
| 3302 | * The builtin indir is added, to allow for indirect macro calls | 
|---|
| 3303 | (allows use of "illegal" macro names). | 
|---|
| 3304 |  | 
|---|
| 3305 | * The debugging and tracing facilities has been enhanced | 
|---|
| 3306 | considerably.  See the manual for details. | 
|---|
| 3307 |  | 
|---|
| 3308 | * The -tMACRO option is added, marks MACRO for tracing as soon | 
|---|
| 3309 | as it is defined. | 
|---|
| 3310 |  | 
|---|
| 3311 | * Builtins are traced after renaming iff they were before. | 
|---|
| 3312 |  | 
|---|
| 3313 | * Named files can now be undiverted. | 
|---|
| 3314 |  | 
|---|
| 3315 | * The -Nnum option can be used to increase the number of | 
|---|
| 3316 | divertions available. | 
|---|
| 3317 |  | 
|---|
| 3318 | * Calling changecom without arguments now disables all comment | 
|---|
| 3319 | handling. | 
|---|
| 3320 |  | 
|---|
| 3321 | * The function m4_patsubst() is now consistently declared | 
|---|
| 3322 | static. | 
|---|
| 3323 |  | 
|---|
| 3324 | * A bug in dnl is fixed. | 
|---|
| 3325 |  | 
|---|
| 3326 | * A bug in the multi-character quoting code is fixed. | 
|---|
| 3327 |  | 
|---|
| 3328 | * Several typos in the manual has been corrected.  More probably | 
|---|
| 3329 | persist. | 
|---|
| 3330 |  | 
|---|
| 3331 | * The m4.info file is now installed along with the program. | 
|---|
| 3332 |  | 
|---|
| 3333 |  | 
|---|
| 3334 | Thu Nov 15 21:51:06 1990  Rene' Seindal (seindal at diku.dk) | 
|---|
| 3335 |  | 
|---|
| 3336 | * Updated and enhanced version.  Release 0.75, manual 0.07. | 
|---|
| 3337 |  | 
|---|
| 3338 | * Implemented search path for include files (-I option and | 
|---|
| 3339 | M4PATH envronment variable). | 
|---|
| 3340 |  | 
|---|
| 3341 | * Implemented builtin "format" for printf-like formatting. | 
|---|
| 3342 |  | 
|---|
| 3343 | * Implemented builtin "regexp" for searching for regular | 
|---|
| 3344 | expressions. | 
|---|
| 3345 |  | 
|---|
| 3346 | * Implemented builtin "patsubst" for substitution with regular | 
|---|
| 3347 | expressions. | 
|---|
| 3348 |  | 
|---|
| 3349 | * Implemented builtin "esyscmd", which expands to a shell | 
|---|
| 3350 | commands output. | 
|---|
| 3351 |  | 
|---|
| 3352 | * Implemented "__file__" and "__line__" for use in error | 
|---|
| 3353 | messages. | 
|---|
| 3354 |  | 
|---|
| 3355 | * Implemented character ranges in "translit". | 
|---|
| 3356 |  | 
|---|
| 3357 | * Implemented control over debugging output. | 
|---|
| 3358 |  | 
|---|
| 3359 | * Implemented multi-character quotes. | 
|---|
| 3360 |  | 
|---|
| 3361 | * Implemented multi-character comment delimiters. | 
|---|
| 3362 |  | 
|---|
| 3363 | * Changed predefined macro "gnu" to "__gnu__". | 
|---|
| 3364 |  | 
|---|
| 3365 | * Changed predefined macro "unix" to "__unix__", when the -G | 
|---|
| 3366 | option is not used.  With -G, "unix" is still defined. | 
|---|
| 3367 |  | 
|---|
| 3368 | * Changed "shift", "$@" and "$*" to not insert spaces afters | 
|---|
| 3369 | commas. | 
|---|
| 3370 |  | 
|---|
| 3371 | * Added program name to error messages. | 
|---|
| 3372 |  | 
|---|
| 3373 | * Fixed two missing null bytes bugs. | 
|---|
| 3374 |  | 
|---|
| 3375 |  | 
|---|
| 3376 | Mon Jan 22 21:08:52 1990  Rene' Seindal (seindal at diku.dk) | 
|---|
| 3377 |  | 
|---|
| 3378 | * Initial beta release.  Release 0.50, manual 0.05. | 
|---|
| 3379 |  | 
|---|
| 3380 | ----- | 
|---|
| 3381 |  | 
|---|
| 3382 | $Revision: 1.1.1.1.2.224 $ $Date: 2006/11/21 04:08:44 $ | 
|---|
| 3383 |  | 
|---|
| 3384 | Local Variables: | 
|---|
| 3385 | coding: utf-8 | 
|---|
| 3386 | End: | 
|---|
| 3387 |  | 
|---|
| 3388 | Copyright (C) 1990, 1991, 1992, 1993, 1994, 2000, 2001, 2003, | 
|---|
| 3389 | 2005, 2006 Free Software Foundation, Inc. | 
|---|
| 3390 |  | 
|---|
| 3391 | Copying and distribution of this file, with or without | 
|---|
| 3392 | modification, are permitted provided the copyright notice | 
|---|
| 3393 | and this notice are preserved. | 
|---|