[3083] | 1 | 2006-02-03 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 2 |
|
---|
| 3 | * sed/compile.c (compile_program) <case 'y'>: Pass false to match_slash.
|
---|
| 4 |
|
---|
| 5 | 2005-09-07 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 6 |
|
---|
| 7 | * lib/regcomp.c: Update from upstream.
|
---|
| 8 | * lib/regex.c: Update from upstream.
|
---|
| 9 | * lib/regex_.h: Update from upstream.
|
---|
| 10 | * lib/regex_internal.c: Update from upstream.
|
---|
| 11 | * lib/regex_internal.h: Update from upstream.
|
---|
| 12 | * lib/regexec.c: Update from upstream.
|
---|
| 13 |
|
---|
| 14 | 2005-08-30 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 15 |
|
---|
| 16 | * sed/execute.c (reset_addresses): Never activate ADDR_IS_NUM_MOD
|
---|
| 17 | addresses.
|
---|
| 18 | * testsuite/modulo.good, testsuite/modulo.inp, testsuite/modulo.sed:
|
---|
| 19 | New.
|
---|
| 20 | * testsuite/Makefile.tests: Add new testcase.
|
---|
| 21 | * testsuite/Makefile.am: Add new testcase.
|
---|
| 22 | * testsuite/Makefile.in: Regenerate.
|
---|
| 23 |
|
---|
| 24 | 2005-05-18 Maciej W. Rozycki <macro@linux-mips.org>
|
---|
| 25 |
|
---|
| 26 | * configure.ac: Use a cache variable for the libcP test.
|
---|
| 27 | * configure: Regenerate.
|
---|
| 28 |
|
---|
| 29 | 2005-05-16 Eero Hakkinen <eero17@bigfoot.com>
|
---|
| 30 |
|
---|
| 31 | * sed/compile.c (snarf_char_class): Fix handling of
|
---|
| 32 | [^]xyz].
|
---|
| 33 |
|
---|
| 34 | 2005-04-04 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 35 |
|
---|
| 36 | * sed/execute.c (process_files): Do not add a default
|
---|
| 37 | command-line in in-place editing mode.
|
---|
| 38 |
|
---|
| 39 | 2005-02-10 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 40 |
|
---|
| 41 | * testsuite/Makefile.tests: Add new testcase.
|
---|
| 42 | * testsuite/Makefile.am: Add new testcase.
|
---|
| 43 | * testsuite/Makefile.in: Regenerate.
|
---|
| 44 | * testsuite/appquit.good, testsuite/appquit.inp,
|
---|
| 45 | testsuite/appquit.sed: New testcase.
|
---|
| 46 | * testsuite/readin.sed: Quit after the last r command.
|
---|
| 47 | * testsuite/readin.good: Adjust.
|
---|
| 48 | * sed/execute.c (execute_program): Dump the results of the
|
---|
| 49 | a/r/R commands just before quitting.
|
---|
| 50 |
|
---|
| 51 | 2005-02-10 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 52 |
|
---|
| 53 | * sed/regexp.c: Fix off-by-one error in the "invalid reference
|
---|
| 54 | to subexpression" message. Debian bug 294339.
|
---|
| 55 |
|
---|
| 56 | 2005-02-08 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 57 |
|
---|
| 58 | * lib/obstack.h: include config.h.
|
---|
| 59 |
|
---|
| 60 | 2005-02-01 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 61 |
|
---|
| 62 | * doc/Makefile.am: Don't enable MAKEINFO_HTML and TEXI2HTML_HTML
|
---|
| 63 | rules unless BUILD_HTML.
|
---|
| 64 |
|
---|
| 65 | 2005-01-25 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 66 |
|
---|
| 67 | * sed/regexp.c: Fix building on GCC 2.95 and earlier.
|
---|
| 68 |
|
---|
| 69 | 2004-12-26 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 70 |
|
---|
| 71 | Do not use leftmost-longest matching for addresses.
|
---|
| 72 |
|
---|
| 73 | * NEWS: Add a note about this.
|
---|
| 74 | * testsuite/recall2.good, testsuite/recall2.inp,
|
---|
| 75 | testsuite/recall2.sed: New test.
|
---|
| 76 | * testsuite/Makefile.am, testsuite/Makefile.tests: Add the
|
---|
| 77 | recall2 test.
|
---|
| 78 | * sed/sed.h (struct regex): New.
|
---|
| 79 | (struct addr, struct subst, compile_regex, match_regex,
|
---|
| 80 | release_regex): Use it instead of regex_t.
|
---|
| 81 | * sed/compile.c (compile_program): Update for new meaning of
|
---|
| 82 | the third parameter of compile_regex.
|
---|
| 83 | * sed/execute.c (do_subst): Pass less conservative value to
|
---|
| 84 | the regsize parameter of match_regex.
|
---|
| 85 | * sed/regexp.c (compile_regex_1): New, extracted out of
|
---|
| 86 | compile_regex. The third parameter, needed_sub, now includes
|
---|
| 87 | \0 (so 10 means that \0 .. \9 are needed). Pass RE_NO_SUB
|
---|
| 88 | if needed_sub is zero.
|
---|
| 89 | (compile_regex): Accept a struct regex instead of a regex_t.
|
---|
| 90 | Save the regular expression's text.
|
---|
| 91 | (match_regex): Accept a struct regex instead of a regex_t.
|
---|
| 92 | Recompile the pattern if it was compiled with RE_NO_SUB.
|
---|
| 93 | (release_regex): Accept a struct regex instead of a regex_t.
|
---|
| 94 |
|
---|
| 95 | * doc/Makefile.am: Generate sed.texi correctly when
|
---|
| 96 | building outside srcdir.
|
---|
| 97 |
|
---|
| 98 | 2004-12-26 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 99 |
|
---|
| 100 | * BUGS: Add section about [a-z] matching uppercase characters,
|
---|
| 101 | and other locale issues.
|
---|
| 102 | * doc/sed-in.texi [!PERL]: Likewise.
|
---|
| 103 |
|
---|
| 104 | 2004-11-15 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 105 |
|
---|
| 106 | * sed/execute.c (str_append_modified): Copy the first character
|
---|
| 107 | when using \l or \u in a multi-byte configuration. Use
|
---|
| 108 | WCRTOMB instead of wcrtomb.
|
---|
| 109 | * sed/sed.h (WCRTOMB): New.
|
---|
| 110 |
|
---|
| 111 | 2004-11-11 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 112 |
|
---|
| 113 | * tst-rxspecer.c: Do not mix instructions and
|
---|
| 114 | declarations.
|
---|
| 115 | * basicdefs.h: Include locale.h before #defining
|
---|
| 116 | gettext, to avoid breakage under Solaris.
|
---|
| 117 | * sed/sed.c: do not include locale.h.
|
---|
| 118 |
|
---|
| 119 | 2004-11-03 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 120 |
|
---|
| 121 | * bug-regex11.c: Improve portability.
|
---|
| 122 | * bug-regex12.c: Improve portability.
|
---|
| 123 | * bug-regex13.c: Improve portability.
|
---|
| 124 | * bug-regex14.c: Improve portability.
|
---|
| 125 | * bug-regex21.c: Improve portability.
|
---|
| 126 | * bug-regex9.c: Improve portability.
|
---|
| 127 | * tst-boost.c: Improve portability.
|
---|
| 128 | * tst-pcre.c: Improve portability.
|
---|
| 129 | * tst-regex.c: Improve portability.
|
---|
| 130 | * tst-rxspencer.c: Improve portability.
|
---|
| 131 |
|
---|
| 132 | 2004-10-08 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 133 |
|
---|
| 134 | * lib/utils.c (utils_id_s): Renamed to open_files.
|
---|
| 135 | (struct id): Renamed to struct open_file.
|
---|
| 136 |
|
---|
| 137 | 2004-10-08 Jakub Jelinek <jakub@redhat.com>
|
---|
| 138 |
|
---|
| 139 | * testsuite/Makefile.tests (bug-regex*, run-tests,
|
---|
| 140 | run-ptests): Use $(SED).
|
---|
| 141 | (version): Likewise; prepend $(SED) invocation with $(SEDENV).
|
---|
| 142 |
|
---|
| 143 | 2004-08-16 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 144 |
|
---|
| 145 | *** Version 4.1.2 released.
|
---|
| 146 |
|
---|
| 147 | 2004-08-06 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 148 |
|
---|
| 149 | * sed/compile.c (bad_command): Fix off-by-one error.
|
---|
| 150 | (snarf_char_class): Fix problem with [.....[] (i.e.
|
---|
| 151 | last char in class is a bracket.
|
---|
| 152 |
|
---|
| 153 | 2004-06-30 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 154 |
|
---|
| 155 | *** Version 4.1.1 released.
|
---|
| 156 |
|
---|
| 157 | 2004-06-29 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 158 |
|
---|
| 159 | * sed/compile.c (mark_subst_opts): Return int.
|
---|
| 160 | * sed/execute.c (open_next_file): Fix uninitialized
|
---|
| 161 | variable.
|
---|
| 162 |
|
---|
| 163 | 2004-06-10 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 164 |
|
---|
| 165 | *** Version 4.1 released.
|
---|
| 166 |
|
---|
| 167 | 2004-03-25 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 168 |
|
---|
| 169 | * lib/obstack.h: Get current version.
|
---|
| 170 |
|
---|
| 171 | 2004-03-13 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 172 |
|
---|
| 173 | Exit as soon as possible on an I/O error, and with
|
---|
| 174 | a better error message.
|
---|
| 175 |
|
---|
| 176 | * lib/utils.c (ck_mkstemp, ck_rename, ck_getline): New
|
---|
| 177 | functions. Save temporary files into utils_id_s.
|
---|
| 178 | (struct id): Add a field named temp.
|
---|
| 179 | (ck_fopen): Init the new temp field of struct id.
|
---|
| 180 | (panic): Unlink temporary files before exiting.
|
---|
| 181 | * sed/execute.c (read_file_line): Use ck_getline.
|
---|
| 182 | (closedown): Use ck_rename.
|
---|
| 183 | (open_next_file): Use ck_mkstemp.
|
---|
| 184 |
|
---|
| 185 | 2004-01-20 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 186 |
|
---|
| 187 | * sed/sed.h (enum addr_state): New definition.
|
---|
| 188 | (enum addr_type): Remove ADDR_IS_NUM2.
|
---|
| 189 | (struct sed_cmd): Replace a1_matched with range_state.
|
---|
| 190 | * sed/compile.c (next_cmd_entry): Use range_state.
|
---|
| 191 | (compile_program): Death to ADDR_IS_NUM2. Compile
|
---|
| 192 | N,Mp as Np if N>=M.
|
---|
| 193 | * sed/execute.c (match_address_p): Rewritten. Handle
|
---|
| 194 | ADDR_IS_NUM here.
|
---|
| 195 | (match_an_address_p): Suit to new match_address_p.
|
---|
| 196 | (execute_program): Adjust to use range_state in `c'.
|
---|
| 197 | Handle addr_bang here.
|
---|
| 198 | (reset_addresses): Use range_state.
|
---|
| 199 |
|
---|
| 200 | (struct input): New field "reset_at_next_file".
|
---|
| 201 | (read_pattern_space): Use it instead of "separate_files".
|
---|
| 202 | (process_files): Initialize it.
|
---|
| 203 |
|
---|
| 204 | 2004-01-17 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 205 |
|
---|
| 206 | * sed/sed.h: Do not include wchar.h and wctype.h, and do
|
---|
| 207 | not include the alloca stuff.
|
---|
| 208 | * basicdefs.h: Move all that here.
|
---|
| 209 |
|
---|
| 210 | 2004-01-15 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 211 |
|
---|
| 212 | * sed/regexp.c [REG_PERL]: Use REG_STARTEND instead of regexec2.
|
---|
| 213 |
|
---|
| 214 | 2004-01-09 Paul Eggert <eggert@twinsun.com>
|
---|
| 215 | Paolo Bonzini <bonzini@gnu.org>
|
---|
| 216 |
|
---|
| 217 | * sed/sed.h (posixicity): New variable, replaces POSIXLY_CORRECT.
|
---|
| 218 | * sed/sed.c (main): Set it.
|
---|
| 219 | * sed/compile.c: Use it instead of POSIXLY_CORRECT.
|
---|
| 220 | * sed/execute.c: Use it instead of POSIXLY_CORRECT.
|
---|
| 221 | * doc/sed-in.texi: Document it and --posix.
|
---|
| 222 |
|
---|
| 223 | 2004-01-05 Paul Eggert <eggert@twinsun.com>
|
---|
| 224 | Paolo Bonzini <bonzini@gnu.org>
|
---|
| 225 |
|
---|
| 226 | * NEWS: Fix [\n] to match either backslash or n in POSIXLY_CORRECT mode.
|
---|
| 227 | * doc/sed-in.texi: Document this. Also, document regular expressions
|
---|
| 228 | a bit better overall, using terminology that's more similar to POSIX.
|
---|
| 229 | * sed/sed.h (enum text_types): New definition.
|
---|
| 230 | * sed/compile.c (normalize_text): Replace final parameter with one of
|
---|
| 231 | type normalize_text. If TEXT_REGEX and in POSIXLY_CORRECT mode,
|
---|
| 232 | grok character classes without replacing \n inside them.
|
---|
| 233 |
|
---|
| 234 | 2004-01-03 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 235 |
|
---|
| 236 | * sed/execute.c (execute_program): print final line
|
---|
| 237 | after executing N, if not POSIXLY_CORRECT.
|
---|
| 238 |
|
---|
| 239 | 2003-12-28 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 240 |
|
---|
| 241 | * sed/compile.c: fix "\\\n" in RHS of s command.
|
---|
| 242 | Reported by Mike Castle.
|
---|
| 243 | * testsuite/bkslashes.inp, testsuite/bkslashes.good,
|
---|
| 244 | testsuite/bkslashes.sed: New files.
|
---|
| 245 | * testsuite/Makefile.am, testsuite/Makefile.tests: Add
|
---|
| 246 | the bkslashes test.
|
---|
| 247 |
|
---|
| 248 | 2003-12-16 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 249 |
|
---|
| 250 | *** Version 4.0b released.
|
---|
| 251 |
|
---|
| 252 | * sed/mbcs.c: New file.
|
---|
| 253 | * sed/sed.h: Declare macros for mbcs.c.
|
---|
| 254 | * sed/compile.c: Use them.
|
---|
| 255 | (brlen): Moved to mbcs.c.
|
---|
| 256 | * sed/execute.c: Use them.
|
---|
| 257 | * sed/sed.c: call initialize_mbcs ().
|
---|
| 258 |
|
---|
| 259 | 2003-12-14 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 260 |
|
---|
| 261 | * sed/regex.c (match_regex): fix memory leak.
|
---|
| 262 |
|
---|
| 263 | 2003-11-27 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 264 |
|
---|
| 265 | * sed/execute.c (reset_addresses): leave addresses 0
|
---|
| 266 | and 0~STEP enabled.
|
---|
| 267 |
|
---|
| 268 | 2003-11-15 Jakub Jelinek <jakub@redhat.com>
|
---|
| 269 |
|
---|
| 270 | * sed/regex.c: Use fastmap.
|
---|
| 271 |
|
---|
| 272 | 2003-09-21 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 273 |
|
---|
| 274 | *** Version 4.0a released.
|
---|
| 275 |
|
---|
| 276 | * sed/execute.c (struct line): Add mbstate field.
|
---|
| 277 | (str_append): Keep mbstate up to date.
|
---|
| 278 | (str_append_modified): Likewise, and use towupper/towlower.
|
---|
| 279 | (line_init): Initialize mbstate.
|
---|
| 280 | (line_copy): Copy mbstate.
|
---|
| 281 | (line_append): Copy mbstate.
|
---|
| 282 |
|
---|
| 283 | 2003-07-15 Stepan Kasal <kasal@ucw.cz>
|
---|
| 284 | Paolo Bonzini <bonzini@fnu.org>
|
---|
| 285 |
|
---|
| 286 | Change the way we treat lines which are not terminated by a newline.
|
---|
| 287 | Such lines are printed without the terminating newline (as before)
|
---|
| 288 | but as soon as more text is sent to the same output stream, the
|
---|
| 289 | missing newline is printed, so that the two lines don't concatenate.
|
---|
| 290 |
|
---|
| 291 | * sed/execute.c (output_file): Is now struct output; users adjusted
|
---|
| 292 | to access the fp field, call output_missing_newline before, and
|
---|
| 293 | call flush_output afterwards.
|
---|
| 294 | (read_file_line): Set line.chomped FALSE each time we encounter a
|
---|
| 295 | line without the newline terminator, no matter whether this is the
|
---|
| 296 | last input file or not, and no matter whether we are in
|
---|
| 297 | POSIXLY_CORRECT mode or not.
|
---|
| 298 | (output_missing_newline): New function which prints the suppressed
|
---|
| 299 | newline, if necessary.
|
---|
| 300 | (flush_output): New function for a common pattern.
|
---|
| 301 | (output_line): Use struct output, set its flag accordingly.
|
---|
| 302 | (dump_append_queue): Use `ck_fwrite' instead of output_line.
|
---|
| 303 | (do_list): Flush the output stream at the end.
|
---|
| 304 | (closedown): The code ``if(separate_files) rewind_read_files();''
|
---|
| 305 | (read_pattern_space): ... has been moved here.
|
---|
| 306 | (process_files): Don't do the default `p' at the end, ...
|
---|
| 307 | (execute_program): ... as this function is now responsible for it;
|
---|
| 308 | add the code to the end of the function and to the command `q';
|
---|
| 309 | the commands `d', `D' and `Q' thus no longer have to forge an empty
|
---|
| 310 | line.
|
---|
| 311 | (execute_program): Commands `c' and `i' no longer call the
|
---|
| 312 | function output_line with chomped==FALSE; instead, they chomp
|
---|
| 313 | the text and call the function with chomped==TRUE.
|
---|
| 314 | (execute_program): Command `e' no longer uses output_line; it
|
---|
| 315 | calls ck_fwrite directly. Commands `e', `L' and `=' flush
|
---|
| 316 | the output stream at the end.
|
---|
| 317 | * sed/compile.c (special_files): Use `struct output' instead of the
|
---|
| 318 | file name.
|
---|
| 319 | (get_openfile): ... special files are no longer copied to file_read
|
---|
| 320 | or file_write.
|
---|
| 321 | (fp_list): Move to sed.h (users adjusted) and rename as...
|
---|
| 322 | * sed/sed.h (struct output): ...this. New flag missing_newline
|
---|
| 323 | associated to the output stream.
|
---|
| 324 | (struct sed_cmd, struct subst): Use `struct output *' instead of mere
|
---|
| 325 | `FILE *'; adjust compile.c and execute.c.
|
---|
| 326 | * testsuite/noeolw.sed, testsuite/noeolw.good, testsuite/noeolw.1good,
|
---|
| 327 | testsuite/noeolw.2good: New tests
|
---|
| 328 |
|
---|
| 329 | 2003-07-15 Stepan Kasal <kasal@ucw.cz>
|
---|
| 330 |
|
---|
| 331 | * lib/utils.h, sed/sed.h: #include "basicdefs.h",
|
---|
| 332 | don't include it from various *.c files.
|
---|
| 333 | * sed/regex.c: Don't include regex.h as it's included via sed.h.
|
---|
| 334 |
|
---|
| 335 | 2003-06-11 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 336 |
|
---|
| 337 | * lib/getline.c: Don't realloc with first param = NULL.
|
---|
| 338 |
|
---|
| 339 | 2003-05-07 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 340 |
|
---|
| 341 | * sed/execute.c: Make treatment of ADDR_IS_NUM_MOD
|
---|
| 342 | simpler, and fix bugs in 0~5,+1
|
---|
| 343 | * sed/compile.c: Complain about addresses like 0
|
---|
| 344 | and 0,3 which are sources of misunderstandings.
|
---|
| 345 | Reported by Akim Demaille <akim@epita.fr>
|
---|
| 346 |
|
---|
| 347 | 2003-03-25 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 348 |
|
---|
| 349 | *** Version 4.0.7 released
|
---|
| 350 |
|
---|
| 351 | * sed/execute.c (append_replacement): Extract from
|
---|
| 352 | do_subst
|
---|
| 353 | (do_subst): Don't update count when a match was
|
---|
| 354 | skipped.
|
---|
| 355 | * testsuite/xbxcx3.good, testsuite/xbxcx3.sed,
|
---|
| 356 | testsuite/xbxcx3.inp: Regression tests
|
---|
| 357 |
|
---|
| 358 | 2003-03-23 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 359 |
|
---|
| 360 | * sed/execute.c (do_subst): Fix several bugs with
|
---|
| 361 | numbered matches
|
---|
| 362 | * testsuite/numsub2.good, testsuite/numsub2.inp,
|
---|
| 363 | testsuite/numsub2.sed, testsuite/numsub3.good,
|
---|
| 364 | testsuite/numsub3.inp, testsuite/numsub3.sed,
|
---|
| 365 | testsuite/numsub4.good, testsuite/numsub4.inp,
|
---|
| 366 | testsuite/numsub4.sed, testsuite/numsub5.good,
|
---|
| 367 | testsuite/numsub5.inp, testsuite/numsub5.sed:
|
---|
| 368 | regression tests for the bugs
|
---|
| 369 |
|
---|
| 370 | 2003-03-15 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 371 |
|
---|
| 372 | *** Version 4.0.6 released
|
---|
| 373 |
|
---|
| 374 | * lib/mkstemp.c: Include sys/file.h if available for the
|
---|
| 375 | benefit of Ultrix
|
---|
| 376 |
|
---|
| 377 | 2003-03-14 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 378 |
|
---|
| 379 | * sed/compile.c: Replace flagT with bool
|
---|
| 380 | * sed/execute.c: Replace flagT with bool
|
---|
| 381 | * sed/fmt.c: Replace flagT with bool
|
---|
| 382 | * sed/sed.c: Replace flagT with bool
|
---|
| 383 | * sed/regex.c: Replace flagT with bool
|
---|
| 384 |
|
---|
| 385 | 2003-03-13 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 386 |
|
---|
| 387 | * sed/compile.c (compile_program): Understand parameter
|
---|
| 388 | of `v'.
|
---|
| 389 |
|
---|
| 390 | * sed/sed.c (usage): Split help message into multiple
|
---|
| 391 | strings
|
---|
| 392 | (main): Don't understand -h and -V
|
---|
| 393 |
|
---|
| 394 | 2003-03-12 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 395 |
|
---|
| 396 | * sed/compile.c (match_slash, snarf_char_class): More
|
---|
| 397 | multibyte character support
|
---|
| 398 | (brlen): New function
|
---|
| 399 | * testsuite/classes.good, testsuite/classes.inp,
|
---|
| 400 | testsuite/classes.sed: New files
|
---|
| 401 |
|
---|
| 402 | 2003-03-10 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 403 |
|
---|
| 404 | * sed/compile.c (match_slash): Strip the \ in front of
|
---|
| 405 | slashes (so that the matcher sees x/ for s/x\///). Don't
|
---|
| 406 | match / and [ unless at the start of a character.
|
---|
| 407 |
|
---|
| 408 | 2003-02-18 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 409 |
|
---|
| 410 | * sed/regex.c (compile_regex): // matches the last regular
|
---|
| 411 | expression even in POSIXLY_CORRECT mode.
|
---|
| 412 | * sed/compile.c (normalize_text): Treat multibyte character
|
---|
| 413 | sets correctly
|
---|
| 414 | (read_text): Don't swallow backslash sequences, run text
|
---|
| 415 | through normalize_text
|
---|
| 416 | (compile_program): Ditto for y command
|
---|
| 417 |
|
---|
| 418 | * sed/compile.c (normalize_text): Add parameter that says
|
---|
| 419 | whether the text will be processed further to remove more
|
---|
| 420 | backslash escapes. Callers adjusted
|
---|
| 421 | (match_slash): Remove same parameter from here. Callers adjusted.
|
---|
| 422 |
|
---|
| 423 | 2003-02-15 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 424 |
|
---|
| 425 | * sed/sed.h: Fix prototype for match_regex, declare re_registers
|
---|
| 426 | if REG_PERL
|
---|
| 427 | * sed/execute.c (do_subst): Use re_registers
|
---|
| 428 | * sed/regex.c (copy_regs): New function
|
---|
| 429 | [REG_PERL]: Use re_registers
|
---|
| 430 | [!REG_PERL]: Avoid using internal entry points, support pre-glibc
|
---|
| 431 | 2.3 regex for the sake of --without-included-regex.
|
---|
| 432 |
|
---|
| 433 | 2003-01-04 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 434 |
|
---|
| 435 | * sed/sed.h: Move some stuff from here...
|
---|
| 436 | * sed/basicdefs.h: ...to here
|
---|
| 437 | * lib/utils.c (ck_fopen): Add FAIL parameter
|
---|
| 438 | * lib/utils.h: Adjust parameter
|
---|
| 439 | * sed/compile.c, sed/execute.c, sed/sed.c: Adjust callers
|
---|
| 440 |
|
---|
| 441 | * sed/basicdefs.h: Add TRUE/FALSE
|
---|
| 442 | * sed/compile.c, sed/execute.c, sed/sed.c: Use them
|
---|
| 443 | * sed/fmt.c: Do not redefine them
|
---|
| 444 |
|
---|
| 445 | 2003-01-02 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 446 |
|
---|
| 447 | * sed/sed.c: Bump copyright year
|
---|
| 448 |
|
---|
| 449 | 2002-12-24 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 450 |
|
---|
| 451 | * sed/sed.c: Use bindtextdomain
|
---|
| 452 | * sed/basicdefs.h [__EMX__]: Define initialize_main
|
---|
| 453 | * lib/getline.c [__EMX__]: Strip trailing CR
|
---|
| 454 |
|
---|
| 455 | * sed/regex.c: Don't use N_ on the lines that define
|
---|
| 456 | error messages, some compilers complain.
|
---|
| 457 |
|
---|
| 458 | 2002-12-18 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 459 |
|
---|
| 460 | *** Version 4.0.5 released
|
---|
| 461 |
|
---|
| 462 | * sed/compile.c: Don't use N_ on the lines that define
|
---|
| 463 | error messages, some compilers complain.
|
---|
| 464 |
|
---|
| 465 | 2002-12-16 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 466 |
|
---|
| 467 | * sed/compile.c: Improvements to some error messages;
|
---|
| 468 | `a', `i', `l', `L', `r' accept two addresses except in
|
---|
| 469 | POSIXLY_CORRECT mode.
|
---|
| 470 |
|
---|
| 471 | 2002-12-14 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 472 |
|
---|
| 473 | * lib/regex_internal.c: Fix problem on non-glibc
|
---|
| 474 | systems, from Jakub Jelinek
|
---|
| 475 | * lib/regex.c (RE_ENABLE_I18N): Conditionalize on
|
---|
| 476 | HAVE_MBRTOWC and HAVE_WCRTOMB.
|
---|
| 477 | * lib/getline.c: Fix compilation on non-glibc system
|
---|
| 478 | * lib/snprintf.c: Fix compilation on non-glibc system
|
---|
| 479 | * lib/basicdefs.h [P_]: Make more portable
|
---|
| 480 |
|
---|
| 481 | 2002-12-12 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 482 |
|
---|
| 483 | *** Version 4.0.4 released
|
---|
| 484 |
|
---|
| 485 | 2002-11-21 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 486 |
|
---|
| 487 | *** Version 4.0.3 released
|
---|
| 488 |
|
---|
| 489 | 2002-11-19 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 490 |
|
---|
| 491 | *** Version 4.0.2 released
|
---|
| 492 |
|
---|
| 493 | 2002-11-05 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 494 |
|
---|
| 495 | *** Version 4.0.1 released
|
---|
| 496 |
|
---|
| 497 | 2002-10-23 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 498 |
|
---|
| 499 | *** Version 4.0 released
|
---|
| 500 |
|
---|
| 501 | 2002-10-28 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 502 |
|
---|
| 503 | * lib/utils.c: Don't fail for EBADF in fflush
|
---|
| 504 | * src/sed.c: the_program is now a global
|
---|
| 505 |
|
---|
| 506 | 2002-10-19 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 507 |
|
---|
| 508 | * src/sed.c: Print GNU sed in --version for GNU sed,
|
---|
| 509 | and super-sed for super-sed (thanks to Bruno Haible)
|
---|
| 510 |
|
---|
| 511 | 2002-10-17 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 512 |
|
---|
| 513 | *** Version 3.96 released
|
---|
| 514 |
|
---|
| 515 | 2002-10-16 Isamu Hasegawa <isamu@yamato.ibm.com>
|
---|
| 516 |
|
---|
| 517 | * src/execute.c (execute_program): Multibyte 'y'
|
---|
| 518 | * src/compile.c (compile_program): Likewise
|
---|
| 519 | * src/sed.h: Likewise
|
---|
| 520 |
|
---|
| 521 | 2002-10-08 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 522 |
|
---|
| 523 | *** Version 3.95 released
|
---|
| 524 |
|
---|
| 525 | 2002-07-15 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 526 |
|
---|
| 527 | * src/sed.h: rfile --> fname, wfile --> fp
|
---|
| 528 | * src/compile.c (compile_command): Parse 'R' like 'w', use
|
---|
| 529 | separate lists for file read and file write
|
---|
| 530 | * src/compile.c (get_openfile): New name of get_writefile
|
---|
| 531 | * src/compile.c (rewind_read_files): New function
|
---|
| 532 | * src/sed.h: Declared here
|
---|
| 533 | * src/execute.c (closedown): And called here
|
---|
| 534 | * src/execute.c (append_queue): Added 'free' field
|
---|
| 535 | * src/execute.c (execute_program): Implement 'R'
|
---|
| 536 |
|
---|
| 537 | 2002-06-09 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 538 |
|
---|
| 539 | * src/execute.c (do_subst): Replaced flag was set on every
|
---|
| 540 | regexp match, while the first matches should not set it
|
---|
| 541 | for s///N.
|
---|
| 542 |
|
---|
| 543 | 2002-06-08 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 544 |
|
---|
| 545 | * src/compile.c (compile_file): Open the script in text mode
|
---|
| 546 | * lib/utils.c (utils_fp_name): Shorten the output
|
---|
| 547 | * lib/utils.c (ck_fread, ck_fwrite, ck_fflush): Clearerr
|
---|
| 548 | after printing an error.
|
---|
| 549 | * lib/utils.c (ck_fclose): Work on stdout as well if stream == NULL
|
---|
| 550 | and flush before closing to check for errors
|
---|
| 551 |
|
---|
| 552 | 2002-05-30 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 553 |
|
---|
| 554 | * src/compile.c (compile_program): Implement W
|
---|
| 555 | * src/execute.c (execute_program): Likewise
|
---|
| 556 |
|
---|
| 557 | 2002-04-23 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 558 |
|
---|
| 559 | * src/sed.c (usage, main): Parse -s
|
---|
| 560 | * src/sed.h (separate_files): New variable
|
---|
| 561 | * src/execute.c (separate_files): New variable
|
---|
| 562 | * src/execute.c (reset_addresses): New function to make range
|
---|
| 563 | addresses work separately on each file when using in-place
|
---|
| 564 | editing
|
---|
| 565 | * src/execute.c (execute_program): The `n' and `N' use test_eof
|
---|
| 566 | so that the script restarts at end of file, not at end of input
|
---|
| 567 | * src/execute.c (test_dollar_EOF): Make $ work separately
|
---|
| 568 | on each file when using -s; renamed to test_eof
|
---|
| 569 |
|
---|
| 570 | 2002-02-28 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 571 |
|
---|
| 572 | * src/sed.h (struct sed_cmd): exit_status -> int_arg
|
---|
| 573 | * src/compile.c: Likewise
|
---|
| 574 | * src/execute.c: Likewise
|
---|
| 575 |
|
---|
| 576 | * src/compile.c (compile_command): Parse `l' like
|
---|
| 577 | `q' and `Q'; default for int_arg is -1
|
---|
| 578 | * src/execute.c (do_list): New argument, used instead
|
---|
| 579 | of lcmd_out_line_len
|
---|
| 580 | (execute_program): Interpret int_arg for the `l' command;
|
---|
| 581 | return 0 for `q' and `Q' if int_arg is -1
|
---|
| 582 |
|
---|
| 583 | * src/fmt.c: New file, looted from GNU textutils
|
---|
| 584 | * src/compile.c: Parse `L'
|
---|
| 585 | * src/execute.c: Execute `L'
|
---|
| 586 |
|
---|
| 587 | 2002-02-14 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 588 |
|
---|
| 589 | * src/execute.c (str_append_modified): Fixed a stupid
|
---|
| 590 | bug (stop condition was *start == *end, meant to be
|
---|
| 591 | start == end)
|
---|
| 592 |
|
---|
| 593 | 2002-02-05 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 594 |
|
---|
| 595 | * lib/utils.c: Added directory parameter to
|
---|
| 596 | temp_file_template
|
---|
| 597 | * lib/utils.h: Adjusted
|
---|
| 598 | * src/execute.c: Adjusted
|
---|
| 599 |
|
---|
| 600 | 2002-01-29 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 601 |
|
---|
| 602 | * src/compile.c (mark_subst_opts): Signal an error if
|
---|
| 603 | there are multiple g or p options
|
---|
| 604 | * src/compile.c (compile_program): Raise appropriate
|
---|
| 605 | error if second string in y command is longer than
|
---|
| 606 | first (used to be "excess junk after command")
|
---|
| 607 |
|
---|
| 608 | 2001-12-31 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 609 |
|
---|
| 610 | * lib/getline.c: Strip the terminating \r under Windows
|
---|
| 611 | or MS-DOS.
|
---|
| 612 |
|
---|
| 613 | * testsuite/xemacs.sed, testsuite/xemacs.inp,
|
---|
| 614 | testsuite/xemacs.good: Submitted by John Fremlin
|
---|
| 615 | (john@fremlin.de)
|
---|
| 616 |
|
---|
| 617 | 2001-12-27 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 618 |
|
---|
| 619 | * sed/execute.c (do_subst): Flags in optimized s/^xx/
|
---|
| 620 | commands were discarded (see the change below)
|
---|
| 621 |
|
---|
| 622 | 2001-12-19 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 623 |
|
---|
| 624 | * sed/execute.c (resize_line): Limit inactive space to two
|
---|
| 625 | thirds of a buffer
|
---|
| 626 | * sed/execute.c (line_init): Initialize buf->active
|
---|
| 627 | * sed/execute.c (str_append, str_append_modified, line_copy,
|
---|
| 628 | do_list, do_subst, execute_program, process_files): Operate
|
---|
| 629 | on active space
|
---|
| 630 |
|
---|
| 631 | * sed/execute.c (do_subst): Optimize s/^xx// by making a part
|
---|
| 632 | of the buffer inactive and s/xx$// by truncating it.
|
---|
| 633 | * sed/execute.c (execute_program): Optimize D by making a part
|
---|
| 634 | of the buffer inactive
|
---|
| 635 |
|
---|
| 636 | * testsuite/uniq.sed, testsuite/uniq.inp, testsuite/uniq.good:
|
---|
| 637 | added to test P and D commands.
|
---|
| 638 | * testsuite/fasts.sed, testsuite/fasts.inp, testsuite/fasts.good:
|
---|
| 639 | added to test the new optimization done on the `s' command.
|
---|
| 640 |
|
---|
| 641 | 2001-12-17 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 642 |
|
---|
| 643 | * testsuite/dc.inp: Also compute Easter of 2002 :-)
|
---|
| 644 |
|
---|
| 645 | * sed/execute.c [!HAVE_FCHMOD]: Don't chmod the output file
|
---|
| 646 | if working in-place
|
---|
| 647 |
|
---|
| 648 | 2001-11-12 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 649 |
|
---|
| 650 | * sed/sed.h (struct sed_cmd): a1 is a pointer too
|
---|
| 651 | * sed/compile.c: Likewise
|
---|
| 652 | * sed/execute.c: Likewise
|
---|
| 653 |
|
---|
| 654 | * sed/compile.c: Use obstacks
|
---|
| 655 | * sed/execute.c: Likewise
|
---|
| 656 |
|
---|
| 657 | 2001-11-09 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 658 |
|
---|
| 659 | * sed/compile.c (mark_subst_opts): Parse option `e',
|
---|
| 660 | preserve two occurrences of the `e' and `p' options.
|
---|
| 661 | * sed/execute.c (do_subst) [HAVE_POPEN]: Interpret option
|
---|
| 662 | `e' (evaluate, like Perl's but uses Bourne shell).
|
---|
| 663 | * sed/sed.h (struct subst): Add an `eval' flag.
|
---|
| 664 |
|
---|
| 665 | * sed/compile.c (compile_program): Compile command `e'
|
---|
| 666 | like `c'.
|
---|
| 667 | * sed/execute.c (execute_program): Execute command `e'.
|
---|
| 668 |
|
---|
| 669 | 2001-09-25 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 670 |
|
---|
| 671 | * sed/compile.c (get_writefile) [!POSIXLY_CORRECT]:
|
---|
| 672 | support /dev/stdout
|
---|
| 673 | * sed/execute.c (open_next_file, closedown): Support
|
---|
| 674 | in-place editing
|
---|
| 675 | * sed/execute.c (backup_file_name): New function to
|
---|
| 676 | support in-place editing
|
---|
| 677 | * sed/main.c (usage, main): Parse -i.
|
---|
| 678 | * sed/utils.c: Moved to lib directory
|
---|
| 679 |
|
---|
| 680 | * lib/utils.c (temp_file_template): New function.
|
---|
| 681 | * sed/utils.h: Declared temp_file_template.
|
---|
| 682 |
|
---|
| 683 | 2001-09-05 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 684 |
|
---|
| 685 | * sed/execute.c (do_subst): `baaac', if passed through
|
---|
| 686 | s/a*/x/g, gave `xbxxcx' rather than `xbxcx' (because an
|
---|
| 687 | empty string matched before the `c'. Fixed.
|
---|
| 688 |
|
---|
| 689 | * sed/execute.c: Removed mmap support, I/O is done using
|
---|
| 690 | getline (slower but more bug-proof).
|
---|
| 691 | * sed/utils.c: Likewise.
|
---|
| 692 | * lib/getline.c: New file
|
---|
| 693 |
|
---|
| 694 | 2001-03-22 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 695 |
|
---|
| 696 | * sed/compile.c (normalize_text) [POSIXLY_CORRECT]: Enable
|
---|
| 697 | escapes in modes other than BRE.
|
---|
| 698 |
|
---|
| 699 | 2001-03-21 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 700 |
|
---|
| 701 | * sed/compile.c (normalize_text): Support \XXX in Perl mode,
|
---|
| 702 | \oXXX in non-Perl mode.
|
---|
| 703 |
|
---|
| 704 | 2001-03-18 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 705 |
|
---|
| 706 | * sed/compile.c (compile_program): Fixed missing break when
|
---|
| 707 | compiling 'q' and 'Q'.
|
---|
| 708 |
|
---|
| 709 | * sed/compile.c (check_final_program): Removed now spurious
|
---|
| 710 | call to compile_regex
|
---|
| 711 | * sed/regex.c (compile_regex): Don't track the last compiled
|
---|
| 712 | regex
|
---|
| 713 | * sed/regex.c (execute_regex): Track here the last compiled
|
---|
| 714 | regex
|
---|
| 715 |
|
---|
| 716 | 2001-03-02 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 717 |
|
---|
| 718 | * sed/compile.c (setup_replacement): Support \[lLuUE] like
|
---|
| 719 | Perl and vi.
|
---|
| 720 | * sed/compile.c (new_replacement): Accept new parameter
|
---|
| 721 | to support \[lLUuE].
|
---|
| 722 | * sed/sed.h (enum replacement_types): New declaration
|
---|
| 723 | * sed/execute.c (do_subst): Use new function str_append_modified
|
---|
| 724 | to apply the changes required via \[lLUuE].
|
---|
| 725 | * sed/execute.c (str_append_modified): New function
|
---|
| 726 |
|
---|
| 727 | 2001-03-02 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 728 |
|
---|
| 729 | * sed/compile.c (setup_replacement): Count the number of backreferences
|
---|
| 730 | that the RHS needs
|
---|
| 731 | * sed/regex.c (compile_regex): Check if there is a sufficient number
|
---|
| 732 | of backreferences (new argument needed_sub replaces nosub)
|
---|
| 733 | * sed/compile.c (compile_address, compile_program,
|
---|
| 734 | check_final_program): Callers adjusted
|
---|
| 735 |
|
---|
| 736 | 2001-02-08 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 737 |
|
---|
| 738 | * sed/compile.c (compile_program): Added `Q' (quit without output)
|
---|
| 739 | * sed/execute.c (execute_program): Ditto
|
---|
| 740 |
|
---|
| 741 | * sed/compile.c (compile_program): Fill in exit_status for `q' and `Q'
|
---|
| 742 | * sed/execute.c (execute_program): Return -1 for `go on', 0..255
|
---|
| 743 | to set the exit status
|
---|
| 744 | * sed/execute.c (process_files): Interpret new convention for
|
---|
| 745 | execute_program, return sed's exit code
|
---|
| 746 | * sed/sed.c (main): Return process_files's exit code
|
---|
| 747 | * sed/sed.h (struct sed_cmd): Declare exit_status
|
---|
| 748 |
|
---|
| 749 | 2001-01-07 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 750 |
|
---|
| 751 | * sed/compile.c (compile_program): Added `T' (branch if failed)
|
---|
| 752 | * sed/execute.c (shrink_program, execute_program): Ditto
|
---|
| 753 |
|
---|
| 754 | 2001-01-04 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 755 |
|
---|
| 756 | * testsuite/Makefile.am: Use automake's implementation
|
---|
| 757 | of `make check'. Removed the test targets
|
---|
| 758 | * testsuite/Makefile.tests: Moved the test targets here
|
---|
| 759 | (new file).
|
---|
| 760 | * testsuite/runtest: New file
|
---|
| 761 |
|
---|
| 762 | * testsuite/Makefile.tests: `khadafy' test uses EREs.
|
---|
| 763 |
|
---|
| 764 | * testsuite/spencer.inp: Removed the ^* test
|
---|
| 765 |
|
---|
| 766 | * testsuite/spencer.sh: Don't rely on awk; more comments too
|
---|
| 767 |
|
---|
| 768 | 2001-01-03 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 769 |
|
---|
| 770 | * sed/compile.c(snarf_char_class) [REG_PERL]: Don't parse
|
---|
| 771 | `\n' specially
|
---|
| 772 | * sed/compile.c(match_slash) [REG_PERL]: Ditto
|
---|
| 773 |
|
---|
| 774 | * sed/compile.c(read_text) [REG_PERL]: Support [xX] modifiers
|
---|
| 775 | * sed/compile.c(mark_subst_opts) [REG_PERL]: Ditto
|
---|
| 776 |
|
---|
| 777 | 2000-12-21 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 778 |
|
---|
| 779 | * lib/snprintf.c [BOOTSTRAP]: Don't include stdio.h
|
---|
| 780 | * lib/strerror.c [BOOTSTRAP]: Don't include stdio.h
|
---|
| 781 | * sed/execute.c [!HAVE_ISATTY]: Don't buffer stdin
|
---|
| 782 |
|
---|
| 783 | 2000-12-11 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 784 |
|
---|
| 785 | * sed/compile.c(mark_subst_opts): Support [mMsS] flags
|
---|
| 786 | * sed/compile.c(read_text): Support [MS] flags for
|
---|
| 787 | addresses
|
---|
| 788 | * sed/regex.c(compile_regex): Support arbitrary flags for
|
---|
| 789 | regncomp.
|
---|
| 790 |
|
---|
| 791 | * sed/regex.c(compile_regex) [REG_PERL]: Don't call
|
---|
| 792 | normalize_text.
|
---|
| 793 |
|
---|
| 794 | 2000-12-08 Paolo Bonzini <bonzini@gnu.org>
|
---|
| 795 |
|
---|
| 796 | * basicdefs.h: Moved here from the `sed' subdirectory.
|
---|
| 797 |
|
---|
| 798 | * configure.in: Removed crap to pick a regex engine.
|
---|
| 799 | Added snprintf to the AC_REPLACE_FUNCS call.
|
---|
| 800 |
|
---|
| 801 | * lib/snprintf.c: New file.
|
---|
| 802 |
|
---|
| 803 | * sed/regex.c(compile_regex): Use regncomp
|
---|
| 804 | * sed/regex.c(match_regex): Use regexec2
|
---|
| 805 |
|
---|
| 806 | * sed/compile.c(compile_program): Implemented the `v' command.
|
---|
| 807 |
|
---|
| 808 | * sed/sed.c(main): Implemented the `r' and `R' options
|
---|
| 809 |
|
---|
| 810 | * sed/sed.h: Replaced use_extended_syntax_t with
|
---|
| 811 | extended_regexp_flags to support Perl regular expressions.
|
---|
| 812 |
|
---|
| 813 | * sed/execute.c(open_next_file): Don't mmap stdin (because
|
---|
| 814 | we cannot seek into it, so a redirected stdin's contents
|
---|
| 815 | would not be "eaten" by sed)
|
---|
| 816 |
|
---|
| 817 | Mon Aug 30 23:40:08 PDT 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 818 |
|
---|
| 819 | *** Version 3.02.80 released
|
---|
| 820 |
|
---|
| 821 | * sed/execute.c(do_subst): lib/regex.c(re_search_2) seems to
|
---|
| 822 | want one extra backreference register; humor it.
|
---|
| 823 |
|
---|
| 824 | * sed/regex.c(compile_regex): work around some odd assumptions
|
---|
| 825 | that lib/regex.c(re_compile_pattern) makes about our desired
|
---|
| 826 | RE syntax.
|
---|
| 827 |
|
---|
| 828 | * configure.in: tweaked version to 3.02.80; added new entries
|
---|
| 829 | to the ALL_LINGUAS definition.
|
---|
| 830 |
|
---|
| 831 | * doc/sed.1, doc/sed.texi, BUGS: explicitly request the output
|
---|
| 832 | of sed --version in bug-reporting instructions.
|
---|
| 833 |
|
---|
| 834 | * doc/sed.texi: the old "informal seders list" is dead; document
|
---|
| 835 | the new sed-users mailing list instead (under Other Resources).
|
---|
| 836 |
|
---|
| 837 |
|
---|
| 838 | Thu Aug 19 23:27:54 PDT 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 839 |
|
---|
| 840 | * sed/sed.h: Add explicit #include of "regex-sed.h" (rather
|
---|
| 841 | than relying on parent file doing so); change the "cmd_regex"
|
---|
| 842 | member of sed_cmd: make it a pointer (instead of a struct),
|
---|
| 843 | and change its name to cmd_subst; add prototypes for newly
|
---|
| 844 | exported functions bad_prog(), normalize_text(), compile_regex(),
|
---|
| 845 | match_regex(), and release_regex(); drop rx_testing variable.
|
---|
| 846 |
|
---|
| 847 | * sed/compile.c: move the compile_regex() function to regex.c;
|
---|
| 848 | export bad_prog() and normalize_text() functions; eliminate the
|
---|
| 849 | rx_testing debris; rename the NOLEAKS symbol to more descriptive
|
---|
| 850 | DEBUG_LEAKS; make cmd_regex to cmd_subst fixes (see above);
|
---|
| 851 | make use of newly abstracted release_regex() function.
|
---|
| 852 |
|
---|
| 853 | * sed/execute.c: abstract out the regex matching to
|
---|
| 854 | regex.c:match_regex(); NOLEAKS to DEBUG_LEAKS change;
|
---|
| 855 | cmd_regex to cmd_subst structure member name change.
|
---|
| 856 |
|
---|
| 857 | * sed/execute.c(do_subst): use re_registers/regoff_t instead of
|
---|
| 858 | regmatch_t to hold the backreference registers, make "offset"
|
---|
| 859 | always be relative to the beginning of the string (rather than
|
---|
| 860 | a delta from "start"), defer some matching bookkeeping (e.g.,
|
---|
| 861 | not_bol_p) to match_regex().
|
---|
| 862 |
|
---|
| 863 | * sed/sed.c(main): loose rx_testing variable; NOLEAKS
|
---|
| 864 | (aka DEBUG_LEAKS) code attempting to release
|
---|
| 865 | _nl_current_default_domain is problematic, so omit it.
|
---|
| 866 |
|
---|
| 867 | * sed/regex.c: new file --- abstracts out the interface to the
|
---|
| 868 | regex engine so that less conditional code is required in
|
---|
| 869 | compile.c and execute.c, and so as to make a change of engine
|
---|
| 870 | easier; implements compile_regex() (which looks an awful lot
|
---|
| 871 | like the one that used to live in compile.c), match_regex(),
|
---|
| 872 | and (if DEBUG_LEAKS is set) release_regex().
|
---|
| 873 |
|
---|
| 874 | Sun Apr 18 04:40:46 PDT 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 875 |
|
---|
| 876 | * sed/sed.c(main): conditionalize calls to setlocale() and
|
---|
| 877 | textdomain() to only occur if their support is needed/wanted.
|
---|
| 878 |
|
---|
| 879 | Sun Apr 18 03:01:46 PDT 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 880 |
|
---|
| 881 | * bootstrap.sh: "foo || bar && baz" was not grouping like I
|
---|
| 882 | expected ("foo || (bar && baz)") under at least one shell,
|
---|
| 883 | so change the test for a pre-existing config.h file to an
|
---|
| 884 | if statement.
|
---|
| 885 |
|
---|
| 886 | * bootstrap.sh: added -DUSE_REGEX_GNU_H option to the
|
---|
| 887 | compiler invocation, to ensure that we get a usable
|
---|
| 888 | regex library included.
|
---|
| 889 |
|
---|
| 890 | Sun Apr 18 02:59:42 PDT 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 891 |
|
---|
| 892 | * sed/sed.h, sed/utils.c: conditionalized inclusion of <libintl.h>
|
---|
| 893 | to occur only if ENABLE_NLS is defined.
|
---|
| 894 |
|
---|
| 895 | Sun Apr 18 01:48:45 PDT 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 896 |
|
---|
| 897 | * sed/compile.c(xofa,normalize_text,convert_number): change
|
---|
| 898 | name of xofa() function to convert_number(); change semantics
|
---|
| 899 | to do all of the work of the text->number conversion.
|
---|
| 900 |
|
---|
| 901 | * sed/compile.c(normalize_text): add new \dDDD decimal
|
---|
| 902 | and \oOOO octal escapes.
|
---|
| 903 |
|
---|
| 904 | Sun Mar 28 21:05:07 PST 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 905 |
|
---|
| 906 | * sed/sed.c(main): if NOLEAKS is set, free up a word that
|
---|
| 907 | the call to textdomain() allocated.
|
---|
| 908 |
|
---|
| 909 | * sed/execute.c(read_file_line): plug up (minor) memory leak:
|
---|
| 910 | if buffer.alloc==0 we may have malloc()'d 1 byte anyway,
|
---|
| 911 | so be sure to FREE(buffer.text) before calling line_init();
|
---|
| 912 |
|
---|
| 913 | Fri Mar 26 16:52:10 PST 1999 Ken Pizzini <ken@gnu.org>
|
---|
| 914 |
|
---|
| 915 | * sed/compile.c(match_slash): somewhere between 3.02
|
---|
| 916 | and 3.02a we lost the ability to use a newline as
|
---|
| 917 | the s/// delimiter; restore this ability.
|
---|
| 918 |
|
---|
| 919 | * sed/compile.c(compile_regex): forget about trying
|
---|
| 920 | to cache the compiled form of the last RE --- it
|
---|
| 921 | causes more problems than its worth. We now only
|
---|
| 922 | cache the source form.
|
---|
| 923 |
|
---|
| 924 | * testsuite/help.good: update to reflect output containing
|
---|
| 925 | new options.
|
---|
| 926 |
|
---|
| 927 | Sun Dec 6 00:51:23 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 928 |
|
---|
| 929 | * sed/utils.c(ck_fwrite): fix i18n bug of using a printf
|
---|
| 930 | fragment of "item%s" to handle plural text.
|
---|
| 931 |
|
---|
| 932 | Mon Nov 23 11:03:40 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 933 |
|
---|
| 934 | * doc/sed.1, doc/sed.texi: ran ispell over these
|
---|
| 935 | files to catch the more obvious typos...
|
---|
| 936 |
|
---|
| 937 | Sun Nov 1 00:09:07 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 938 |
|
---|
| 939 | * sed/execute.c(do_list): make a `lcmd_out_line_len'
|
---|
| 940 | (--line-length) of zero mean "infinite length",
|
---|
| 941 | i.e., "never wrap".
|
---|
| 942 |
|
---|
| 943 | Sat Oct 31 23:06:50 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 944 |
|
---|
| 945 | * execute.c(match_an_address_p,process_files),
|
---|
| 946 | compile.c(compile_program): back out the "zero-address"
|
---|
| 947 | changes of 1998-09-27. It was a neat idea, but there are
|
---|
| 948 | too many dark corners which don't work well. The
|
---|
| 949 | special code for handling line ranges starting at
|
---|
| 950 | address zero (from 1998-08-31) are still there though:
|
---|
| 951 | this seems to work fine with no surprises.
|
---|
| 952 |
|
---|
| 953 | Sat Oct 31 22:18:59 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 954 |
|
---|
| 955 | * sed/sed.c, sed/sed.h, sed/execute.c: added new
|
---|
| 956 | `lcmd_out_line_len' variable. (Idea suggested by
|
---|
| 957 | Carlos J. G. Duarte <l38076@alfa.ist.utl.pt>.)
|
---|
| 958 | Also added ATOI macro (which uses strtoul() if available,
|
---|
| 959 | with fall-back to atoi()).
|
---|
| 960 | * sed/sed.c(main): attempt to use COLS environment variable
|
---|
| 961 | to set a reasonable `lcmd_out_line_len'; added -l/--line-length
|
---|
| 962 | command-line options to set the new `lcmd_out_line_len' flag.
|
---|
| 963 | * sed/sed.c(usage): documented new -l/--line-length options.
|
---|
| 964 | * sed/execute.c(do_list): use `lcmd_out_line_len' variable
|
---|
| 965 | instead of `LCMD_OUT_LINE_LEN'.
|
---|
| 966 | * sed/execute.c: deleted now obsolete LCMD_OUT_LINE_LEN define.
|
---|
| 967 | * configure.in: added strtoul to the AC_CHECK_FUNCS call.
|
---|
| 968 |
|
---|
| 969 | Sat Oct 31 21:37:17 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 970 |
|
---|
| 971 | * sed/sed.c, sed/sed.h, sed/execute.c: added new `force_unbuffered'
|
---|
| 972 | flag. (Idea suggested by Frank Strauss <strauss@escape.de>.)
|
---|
| 973 | * sed/sed.c(main): added -u/--unbuffered command-line options
|
---|
| 974 | to set the new `force_unbuffered' flag.
|
---|
| 975 | * sed/sed.c(usage): documented new -u/--unbuffered options.
|
---|
| 976 | * sed/execute.c: changed the name of the `is_tty' flag in struct
|
---|
| 977 | input to a more generic `no_buffering'; also removed HAVE_ISATTY
|
---|
| 978 | conditional on this member.
|
---|
| 979 | * sed/execute.c(slow_getline): removed HAVE_ISATTY conditonal
|
---|
| 980 | compilation of this function.
|
---|
| 981 | * sed/execute.c(output_line): if force_unbuffered is set,
|
---|
| 982 | then force a fflush() even if writing to stdout.
|
---|
| 983 | * sed/execute.c(open_next_file): added handling of the
|
---|
| 984 | new `force_unbuffered' flag so that slow_getline()
|
---|
| 985 | will always be used for input.
|
---|
| 986 | * sed/execute.c(read_file_line): changed the (conditionally
|
---|
| 987 | compiled) test of `input->is_tty' to (unconditionally)
|
---|
| 988 | use the new spelling `input->no_buffering'.
|
---|
| 989 |
|
---|
| 990 | Thu Oct 15 12:08:09 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 991 |
|
---|
| 992 | * configure.in: deleted AC_ARG_PROGRAM call; this is already
|
---|
| 993 | done for us by AM_INIT_AUTOMAKE, and we were winding up
|
---|
| 994 | with a doubled-transform.
|
---|
| 995 |
|
---|
| 996 | Sun Sep 27 01:42:42 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 997 |
|
---|
| 998 | * compile.c(compile_program): remove special-case code for matching
|
---|
| 999 | address range with a `0' beginning.
|
---|
| 1000 |
|
---|
| 1001 | * compile.c(compile_address): change default addr_number to
|
---|
| 1002 | be a pragmatically impossible countT value, instead of zero.
|
---|
| 1003 |
|
---|
| 1004 | * execute.c: spell macro REGNEXEC() unconditionally instead of
|
---|
| 1005 | playing with conditional definition of regnexec() macro.
|
---|
| 1006 |
|
---|
| 1007 | * execute.c(match_an_address_p): added third argument (and changed
|
---|
| 1008 | callers in match_address_p). Added special code to ignore
|
---|
| 1009 | non-numeric matches when processing "line zero".
|
---|
| 1010 |
|
---|
| 1011 | * execute.c(process_files): added a "line zero" pass through the
|
---|
| 1012 | commands script.
|
---|
| 1013 |
|
---|
| 1014 | Sun Sep 27 00:20:53 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1015 |
|
---|
| 1016 | * compile.c(xofa,normalize_text): new functions.
|
---|
| 1017 | * compile.c(compile_regex): cache last_compiled_re (with its
|
---|
| 1018 | associated flags); add POSIXLY_CORRECT behavior for empty RE.
|
---|
| 1019 | Make use of the new normalize_text() function.
|
---|
| 1020 | * compile.c(setup_replacement): Make use of the new normalize_text()
|
---|
| 1021 | function.
|
---|
| 1022 |
|
---|
| 1023 | Sat Sep 26 22:59:13 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1024 |
|
---|
| 1025 | * lib/regex-gnu.h: added missing prototype for regncomp().
|
---|
| 1026 |
|
---|
| 1027 | Mon Sep 14 20:47:23 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1028 |
|
---|
| 1029 | * sed/sed.c(main): use EXIT_SUCCESS instead of 0, in case
|
---|
| 1030 | we are built on a system (such as VMS) where EXIT_SUCCESS
|
---|
| 1031 | is distinct from 0.
|
---|
| 1032 |
|
---|
| 1033 | Wed Sep 9 22:17:28 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1034 |
|
---|
| 1035 | * sed/Makefile.am: added -I../intl the INCLUDES line; if we are
|
---|
| 1036 | building in a directory outside the source tree and the system
|
---|
| 1037 | we are building on does not have a <libintl.h> header, then
|
---|
| 1038 | the build was failing, because libintl.h is a build-time
|
---|
| 1039 | constructed source file.
|
---|
| 1040 |
|
---|
| 1041 | * configure.in: tweaked version to be 3.02b.
|
---|
| 1042 |
|
---|
| 1043 | Wed Sep 9 19:28:14 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1044 |
|
---|
| 1045 | *** Version 3.02a released
|
---|
| 1046 |
|
---|
| 1047 | * sed/compile.c(mark_subst_opts,read_label,compile_program):
|
---|
| 1048 | wherever we accept a ; as a command terminator, also allow a } or
|
---|
| 1049 | a # to appear. (This allows for less cluttered-looking scripts,
|
---|
| 1050 | such as: sed '/foo/{x;G}' (instead of: sed '/foo/{x;G;}').)
|
---|
| 1051 |
|
---|
| 1052 | Wed Sep 9 18:17:07 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1053 |
|
---|
| 1054 | * sed/compile.c(compile_regex): use regncomp() instead
|
---|
| 1055 | of regcomp(), so that a script with NULs in its REs
|
---|
| 1056 | will work in the expected manner.
|
---|
| 1057 |
|
---|
| 1058 | * sed/compile.c(ADDNUL,REGNCOMP): added support macros
|
---|
| 1059 | for above.
|
---|
| 1060 |
|
---|
| 1061 | * lib/regex.c(regncomp,regcomp): added regncomp() and
|
---|
| 1062 | made regcomp() a simple wrapper function.
|
---|
| 1063 |
|
---|
| 1064 | Mon Aug 31 21:48:30 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1065 |
|
---|
| 1066 | * sed/sed.c(compile_program): if the first address of
|
---|
| 1067 | a range is the number 0 (or a 0~N sequence), start
|
---|
| 1068 | out in the "a1_matched" state. This allows one
|
---|
| 1069 | to match an initial chunk of a file without undue
|
---|
| 1070 | convolutions for handling the case where the match
|
---|
| 1071 | for the end of the sequence happens to be the first
|
---|
| 1072 | line.
|
---|
| 1073 |
|
---|
| 1074 | Sun Aug 16 03:34:25 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1075 |
|
---|
| 1076 | * sed/compile.c(snarf_char_class,match_slash): simplify
|
---|
| 1077 | handling of "premature newline" error. Also, get the
|
---|
| 1078 | line number right in the error message if we encounter
|
---|
| 1079 | a "premature newline" during char-class snarfing.
|
---|
| 1080 |
|
---|
| 1081 | Sun Aug 16 02:59:20 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1082 |
|
---|
| 1083 | * sed/compile.c: added N_() markers and corresponding gettext()
|
---|
| 1084 | (er, _()) calls.
|
---|
| 1085 |
|
---|
| 1086 | * Merged in i18n contribution from Erick Branderhorst
|
---|
| 1087 | <Erick.Branderhorst@asml.nl>. His ChangeLog entry
|
---|
| 1088 | for the changes I've incorporated so far:
|
---|
| 1089 |
|
---|
| 1090 | 1998-07-24 Erick Branderhorst <Erick.Branderhorst@asml.nl>
|
---|
| 1091 | * configure.in (ALL_LINGUAS, AM_GNU_GETTEXT): nl
|
---|
| 1092 | * sed/{sed.h,utils.c}: #include <libintl.h> #define _(String)
|
---|
| 1093 | gettext (String)
|
---|
| 1094 | * sed/sed.c: #include <locale.h>
|
---|
| 1095 | * po/POTFILES.in: sed/{compile,execute,sed,utils}.c
|
---|
| 1096 | * run gettextize -f
|
---|
| 1097 | * acconfig.h: #undef LOCALEDIR ENABLE_NLS HAVE_CATGETS
|
---|
| 1098 | HAVE_GETTEXT HAVE_LC_MESSAGES HAVE_STPCPY
|
---|
| 1099 |
|
---|
| 1100 | Fri Aug 14 13:52:57 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1101 |
|
---|
| 1102 | * Merged code from 3.02 with a branched development
|
---|
| 1103 | tree from late May; the following (out-of-order)
|
---|
| 1104 | changelog entry is from the branched tree.
|
---|
| 1105 |
|
---|
| 1106 | Sat May 30 12:23:16 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1107 |
|
---|
| 1108 | * sed/compile.c, sed/execute.c: added (conditional on NOLEAKS macro)
|
---|
| 1109 | code to free all dynamically allocated memory.
|
---|
| 1110 |
|
---|
| 1111 | * sed/sed.c, sed/compile.c, sed/execute.c: much shuffling
|
---|
| 1112 | of code --- ordered functions such that no forward
|
---|
| 1113 | declarations are necessary, and placed all static prototypes
|
---|
| 1114 | immediately before the actual function definition.
|
---|
| 1115 | This accomplished two things: first, I find the new ordering
|
---|
| 1116 | a more natural way to read the code than the previous
|
---|
| 1117 | ordering, and second, the new ordering give the compiler
|
---|
| 1118 | a better opportunity to discover inlining possibilities.
|
---|
| 1119 | (The odd "prototype declaration+old-style definition"
|
---|
| 1120 | style is used because I feel it is the least ugly way
|
---|
| 1121 | of supporting K&R1 C while still getting the benefit of
|
---|
| 1122 | prototypes when they are available.)
|
---|
| 1123 |
|
---|
| 1124 | * sed/basicdefs.h: added MEMCPY() macro to hide the VCAST()s
|
---|
| 1125 | that ought to be used with memcpy().
|
---|
| 1126 |
|
---|
| 1127 | * sed/execute.c: Change calls to memcpy() to go through the
|
---|
| 1128 | new MEMCPY() macro. Various prototypes: elide variable name
|
---|
| 1129 | if it does not add any human-useful documentary information
|
---|
| 1130 | to the bare type.
|
---|
| 1131 |
|
---|
| 1132 | * sed/sed.c(main): Updated calls to compile_string() to add third
|
---|
| 1133 | (length) argument. Changed call to obsolete close_all_files()
|
---|
| 1134 | to a call to the new finish_program().
|
---|
| 1135 |
|
---|
| 1136 | * sed/sed.c(map_file): Attempt to clean-up how "size" gets
|
---|
| 1137 | cast and tested; remove spurious S_ISREG test (just let
|
---|
| 1138 | mmap() fail if it doesn't support the underlying file type).
|
---|
| 1139 |
|
---|
| 1140 | * sed/sed.c: Deleted old RX library stub declarations.
|
---|
| 1141 |
|
---|
| 1142 | * sed/sed.c(map_file,unmap_file): added VCAST()s to the
|
---|
| 1143 | mmap()/munmap() calls.
|
---|
| 1144 |
|
---|
| 1145 | * sed/utils.c(ck_fclose): added support for ANSI C
|
---|
| 1146 | functionality where passing a NULL argument means
|
---|
| 1147 | to fclose() _all_ open streams. (Well, almost.
|
---|
| 1148 | Only closes streams which were previously ck_fopen()ed,
|
---|
| 1149 | as I don't care to figure out how to autoconf-detect
|
---|
| 1150 | whether fclose(NULL) is properly supported on a given
|
---|
| 1151 | platform.)
|
---|
| 1152 |
|
---|
| 1153 | * sed/sed.h: Renamed `struct text_buf' member `text_len'
|
---|
| 1154 | to `text_length'. Abstracted out `enum addr_types'
|
---|
| 1155 | from `struct addr'; added new enum types num2,step,step_mod;
|
---|
| 1156 | renamed mod to num_mod. De-unionized the regex,number,
|
---|
| 1157 | {modulo-offset/step} components of `struct addr', in
|
---|
| 1158 | anticipation of new features. Changed type of `a2' member
|
---|
| 1159 | of `struct sed_cmd': now a pointer to save space.
|
---|
| 1160 | Abstracted out `struct replacement' from `struct subst'.
|
---|
| 1161 | Cleaned up declaration of `x' union of `struct addr'.
|
---|
| 1162 | Fixed prototype for compile_string(). Replaced prototype
|
---|
| 1163 | for old close_all_files() with one for new finish_program().
|
---|
| 1164 |
|
---|
| 1165 | * sed/sed.h, sed/compile.c, sed/execute.c: changed to
|
---|
| 1166 | simplify the data structures used for branches and
|
---|
| 1167 | command blocks: simplified `struct vector'; made
|
---|
| 1168 | `struct label' local to compile.c; `struct sed_cmd'
|
---|
| 1169 | was modified to support a simpler design for branches
|
---|
| 1170 | and blocks.
|
---|
| 1171 |
|
---|
| 1172 | * sed/execute.c: Conditionally added ADDNUL() macro so that
|
---|
| 1173 | the function call overhead is only incurred if nul_append()
|
---|
| 1174 | _must_ be called. Made some commentary edits, including
|
---|
| 1175 | typo fixes.
|
---|
| 1176 | * sed/execute.c(resize_line): changed semantics of "len" argument
|
---|
| 1177 | from "additional length" to "target length"; made
|
---|
| 1178 | INITIAL_BUFFER_SIZE a minimum allocation length.
|
---|
| 1179 | * sed/execute.c(str_append): adjusted to new resize_line()
|
---|
| 1180 | semantics.
|
---|
| 1181 | * sed/execute.c(line_copy): use FREE()+MALLOC() instead of
|
---|
| 1182 | REALLOC() to avoid unnecessary copying of old text; add the
|
---|
| 1183 | "try doubling first" allocation heuristic (just like
|
---|
| 1184 | resize_line() does).
|
---|
| 1185 | * sed/execute.c(line_exchange): new function.
|
---|
| 1186 | * sed/execute.c(nul_append): make whole function (not just its
|
---|
| 1187 | body) conditional on HAVE_REGNEXEC macro; adjust to new
|
---|
| 1188 | resize_line() semantics.
|
---|
| 1189 | * sed/execute.c(read_mem_line): use str_append() instead if
|
---|
| 1190 | custom in-line code; compensate for new default of
|
---|
| 1191 | "line.chomped = 0" in read_pattern_space() by setting
|
---|
| 1192 | "line.chomped = 1" where appropriate.
|
---|
| 1193 | * sed/execute.c(read_file_line): use different trigger to
|
---|
| 1194 | determine that "buffer" is uninitialized, and do a full
|
---|
| 1195 | initialization if required; use str_append() instead of custom
|
---|
| 1196 | in-line code in two places; compensate for new default of
|
---|
| 1197 | "line.chomped = 0" in read_pattern_space() by setting
|
---|
| 1198 | "line.chomped = 1" where appropriate.
|
---|
| 1199 | * sed/execute.c(output_line): don't bother calling ck_fwrite()
|
---|
| 1200 | if length==0.
|
---|
| 1201 | * sed/execute.c(release_append_queue): new function.
|
---|
| 1202 | * sed/execute.c(dump_append_queue): use release_append_queue()
|
---|
| 1203 | instead of in-line equivalent.
|
---|
| 1204 | * sed/execute.c(read_pattern_space): conditionalize call to
|
---|
| 1205 | dump_append_queue() for alleged performance reasons; changed
|
---|
| 1206 | default "line.chomped" value to more common "1", and added an
|
---|
| 1207 | assignment of "0" where this made a difference.
|
---|
| 1208 | * sed/execute.c(match_an_address_p): deleted "is_addr2_p"
|
---|
| 1209 | argument; reorder cases to match order in enum declaration; add
|
---|
| 1210 | cases for new "addr_is_num2", "addr_is_step", and
|
---|
| 1211 | "addr_is_step_mod" address types; alter nul_append() call to be
|
---|
| 1212 | through ADDNUL() macro; fix to new struct member and enum
|
---|
| 1213 | spellings in (formerly addr_is_mod); addr_is_num_mod case.
|
---|
| 1214 | * sed/execute.c(match_address_p): remove oblsolete third argument
|
---|
| 1215 | to calls to match_address_p(); alter references to sed_cmd
|
---|
| 1216 | member a2 to reflect new pointer status; add new support for
|
---|
| 1217 | a2->addr_type addr_is_step and addr_is_step_mod cases.
|
---|
| 1218 | * sed/execute.c(do_subst): add NOLEAKS support logic; use
|
---|
| 1219 | ADDNUL() wrapper to nul_append(); simplify replacement
|
---|
| 1220 | expansion by using the new "struct replacement" data structure;
|
---|
| 1221 | use line_exchange() function instead of custom in-line code.
|
---|
| 1222 | * sed/execute.c(process_files): added NOLEAKS code.
|
---|
| 1223 | * sed/execute.c(execute_program): updated implementations
|
---|
| 1224 | of the `{', `}', `:', `b', and `t' commands; modified
|
---|
| 1225 | `c' command gratuituosly; fixed potential memory
|
---|
| 1226 | overrun in `D' command. Simplified how nonstandard
|
---|
| 1227 | `loop increments' work. Use line_exchange() instead of
|
---|
| 1228 | custom in-line code in 'x' case.
|
---|
| 1229 | * sed/execute.c[EXPERIMENTAL_DASH_N_OPTIMIZATION conditional
|
---|
| 1230 | code]: various modifications intended to keep this
|
---|
| 1231 | code in sync with the new changes, but the code still
|
---|
| 1232 | retains its previous bugs.
|
---|
| 1233 |
|
---|
| 1234 | * sed/compile.c: use "exit(EXIT_FAILURE) instead of "exit(1)",
|
---|
| 1235 | just in case we get compiled under VMS.
|
---|
| 1236 | * sed/compile.c: Change type of prog_info.base to decrease needs
|
---|
| 1237 | for casting; then elimiated the casts in question ;-).
|
---|
| 1238 | * sed/compile.c: Added struct sed_label (moved from sed.h, then
|
---|
| 1239 | modified).
|
---|
| 1240 | * sed/compile.c: Removed "readit_p" flag from struct fp_list.
|
---|
| 1241 | * sed/compile.c: Added module-global "blocks" variable.
|
---|
| 1242 | * sed/compile.c: Extracted more error-message constant strings
|
---|
| 1243 | to named variables.
|
---|
| 1244 | * sed/compile.c(check_final_program): updated to
|
---|
| 1245 | reflect new data structures and use new fucntions.
|
---|
| 1246 | Added call to compile_regex() to release unneeded
|
---|
| 1247 | memory.
|
---|
| 1248 | * sed/compile.c: deleted obsolete new_vector() function;
|
---|
| 1249 | abstracted new read_label() function; abstracted new
|
---|
| 1250 | release_label() function; added new `blocks' module-static
|
---|
| 1251 | variable.
|
---|
| 1252 | * sed/compile.c(compile_program): updated implementations
|
---|
| 1253 | of the `{', `}', `:', `b', and `t' commands; modified
|
---|
| 1254 | initialization from NULL vector.
|
---|
| 1255 | * sed/compile.c(compile_regex): added mechanism to
|
---|
| 1256 | release memory consumed by the cached `last' RE.
|
---|
| 1257 | * sed/compile.c(setup_jump,setup_label): updated
|
---|
| 1258 | name (from setup_jump to setup_label) and prototype;
|
---|
| 1259 | changed body to reflect data structure changes.
|
---|
| 1260 | * sed/compile.c: Add OPEN_BRACE and CLOSE_BRACE macros for better
|
---|
| 1261 | "vi" editing behavior.
|
---|
| 1262 | * sed/compile.c(compile_filename,read_filename,get_writefile):
|
---|
| 1263 | Replaced function compile_filename() with more orthogonal functions
|
---|
| 1264 | read_filename(), get_writefile().
|
---|
| 1265 | * sed/compile.c(compile_regex): Added ability to free the remembered
|
---|
| 1266 | "last RE" in compile_regex (for benifit of "NOLEAKS" code).
|
---|
| 1267 | * Made adjustments dictated by the change to struct sed_cmd which made
|
---|
| 1268 | the a2 member a pointer-to-addr instead of an addr.
|
---|
| 1269 | * sed/compile.c(setup_jump,read_label,setup_label,release_label):
|
---|
| 1270 | Added functions read_label(), setup_label(), release_label(); deleted
|
---|
| 1271 | function setup_jump().
|
---|
| 1272 | * sed/compile.c(new_replacement,setup_replacement,release_replacement):
|
---|
| 1273 | new functions.
|
---|
| 1274 | * sed/compile.c: Adjusted to new spelling of text_buf member
|
---|
| 1275 | ("text_length" instead of "text_len").
|
---|
| 1276 | * sed/compile.c(new_vector): deleted function. (Due to new handling
|
---|
| 1277 | of blocks, only one instance remained, and that one was just as
|
---|
| 1278 | clear in-lined.)
|
---|
| 1279 | * sed/compile.c(compile_string): Added third argument; it now
|
---|
| 1280 | takes a counted string instead of a NUL-terminated string.
|
---|
| 1281 | * sed/compile.c(compile_file): added variable "map_base" to
|
---|
| 1282 | compensate for new type of prog_info.base.
|
---|
| 1283 | * sed/compile.c(check_final_program): reflect new style of
|
---|
| 1284 | handling blocks and struct sed_label.
|
---|
| 1285 | * sed/compile.c(close_all_files,finish_program): replaced function
|
---|
| 1286 | close_all_files() with more generic finish_program().
|
---|
| 1287 | * sed/compile.c(read_text): added new feature: if first non-blank
|
---|
| 1288 | character after the {a,i,c} command character is not "\", then
|
---|
| 1289 | use the trailing text on that line as the (first) line of text.
|
---|
| 1290 | Also added code conditional on NO_INPUT_INDENT to support the
|
---|
| 1291 | "feature" of stripping leading blanks from each input line; I
|
---|
| 1292 | do not read POSIX as permitting this behavior, nor do I think
|
---|
| 1293 | it is a good idea, so it is disabled by default, but some have
|
---|
| 1294 | argued that this blank-stripping is the "correct" behavior, so
|
---|
| 1295 | I offer them the option of building their sed that way.
|
---|
| 1296 | * sed/compile.c(compile_address): added xxx,+n and xxx,~n addressing;
|
---|
| 1297 | simplified code.
|
---|
| 1298 | * sed/compile.c(compile_program): added BAD_PLUS error detection;
|
---|
| 1299 | adjusted to new cur_cmd->a2 pointer status; added addr_is_num2
|
---|
| 1300 | detection; deleted pointless "a2->addr_number < a1.addr_number"
|
---|
| 1301 | check (addr_is_num2 semantics handle this just fine); updated
|
---|
| 1302 | code for '{', '}', ':', 'b', and 't' to reflect new design
|
---|
| 1303 | of branch handling, including making use of new functions
|
---|
| 1304 | related to the new design); added support for feature already
|
---|
| 1305 | mentioned in read_text() where {a,i,c} commands are able to have
|
---|
| 1306 | their text start on the same line as the command; changed some
|
---|
| 1307 | error messages (hopefully for the better); localized variables
|
---|
| 1308 | specific to individual commands (particularly 's' and 'y');
|
---|
| 1309 | made use of new setup_replacement() function in 's' command.
|
---|
| 1310 |
|
---|
| 1311 | Mon Aug 10 19:58:49 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1312 |
|
---|
| 1313 | * doc/sed.texi, doc/sed.1: sedtut10.txt is apparently dead.
|
---|
| 1314 | Deleted references to it and added a pointer to
|
---|
| 1315 | http://seders.icheme.org/tutorials/. (Pointed out by
|
---|
| 1316 | Joerg Heitkoetter <joerg@de.uu.net>.)
|
---|
| 1317 |
|
---|
| 1318 | Sat Aug 8 18:11:57 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1319 |
|
---|
| 1320 | * djgpp/config.btm: per request by Michel de Ruiter
|
---|
| 1321 | <mdruiter@cs.vu.nl>, added "%1" to "%9" parameters.
|
---|
| 1322 |
|
---|
| 1323 | Mon Aug 3 11:44:55 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1324 |
|
---|
| 1325 | * doc/sed.texi: fix a couple of typos. (Submitted by
|
---|
| 1326 | Alan Modra <alan@spri.levels.unisa.edu.au>.)
|
---|
| 1327 |
|
---|
| 1328 | Sat Aug 01 17:49:06 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1329 |
|
---|
| 1330 | *** Version 3.02 released
|
---|
| 1331 |
|
---|
| 1332 | * configure.in: Because of code change in 3.01a, bump the
|
---|
| 1333 | minor revision number for the release (now 3.02).
|
---|
| 1334 |
|
---|
| 1335 | Sun Jul 26 16:07:55 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1336 |
|
---|
| 1337 | *** Version 3.01a released
|
---|
| 1338 |
|
---|
| 1339 | * sed/compile.c(snarf_char_class): the POSIX char-class
|
---|
| 1340 | recognition loop forgot to update its concept of "prev"
|
---|
| 1341 | as the loop progressed.
|
---|
| 1342 |
|
---|
| 1343 | * testsuite/Makefile.am: The dependency of version.good
|
---|
| 1344 | on [testsuite/]Makefile introduced in the previous
|
---|
| 1345 | release was botched -- it referred to "Makefile"
|
---|
| 1346 | as "$(srcdir)/Makefile, which of course doesn't work
|
---|
| 1347 | if you aren't building in the source tree.
|
---|
| 1348 |
|
---|
| 1349 | * djgpp/Makefile.am: add forgotten "config.btm" EXTRA_DIST
|
---|
| 1350 | member.
|
---|
| 1351 |
|
---|
| 1352 | * configure.in: update version.
|
---|
| 1353 |
|
---|
| 1354 | Tue Jul 21 06:04:42 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1355 |
|
---|
| 1356 | *** Version 3.01 released
|
---|
| 1357 |
|
---|
| 1358 | * configure.in: mark as release version!
|
---|
| 1359 |
|
---|
| 1360 | * Makefile.am: add BUGS and THANKS to the EXTRA_DIST target.
|
---|
| 1361 |
|
---|
| 1362 | * testsuite/Makefile.am: add dependency of version.good
|
---|
| 1363 | on [testsuite/]Makefile.
|
---|
| 1364 |
|
---|
| 1365 | Mon Jul 20 12:38:10 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1366 |
|
---|
| 1367 | * djgpp/config.btm: New file to support the 4DOS alternative
|
---|
| 1368 | to command.com. (Sumitted by Eli Zaretskii on behalf of
|
---|
| 1369 | an anonymous 4DOS user.)
|
---|
| 1370 |
|
---|
| 1371 | Fri Jul 17 00:36:34 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1372 |
|
---|
| 1373 | *** Version 3.01-beta18 released
|
---|
| 1374 |
|
---|
| 1375 | * djgpp/config.sed: my "tweak" in beta17 was too
|
---|
| 1376 | hastily considered. Back it out.
|
---|
| 1377 |
|
---|
| 1378 | * configure.in: update to beta18.
|
---|
| 1379 |
|
---|
| 1380 | Wed Jul 15 01:02:15 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1381 |
|
---|
| 1382 | *** Version 3.01-beta17 released
|
---|
| 1383 |
|
---|
| 1384 | * djgpp/config.sed: tweak/simplify s,,, commands at end.
|
---|
| 1385 |
|
---|
| 1386 | * configure.in: update to beta17.
|
---|
| 1387 |
|
---|
| 1388 | 1998-07-14 Eli Zaretskii <eliz@is.elta.co.il>
|
---|
| 1389 |
|
---|
| 1390 | * djgpp/config.sed: Edit all the occurences of = in the context of
|
---|
| 1391 | --option=value, including in the help messages, into
|
---|
| 1392 | --option:value, but leave DOS-style d:/foo/bar file names intact.
|
---|
| 1393 |
|
---|
| 1394 | * djgpp/config.bat: Use --srcdir:foo instead of --srcdir=foo.
|
---|
| 1395 |
|
---|
| 1396 | * testsuite/Makefile.am (help, version): Remove temporary files
|
---|
| 1397 | explicitly, don't use shell wildcards, so it works under DOS 8+3
|
---|
| 1398 | limits.
|
---|
| 1399 |
|
---|
| 1400 | Thu Jul 9 13:06:00 PDT 1998 16:51:43 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1401 |
|
---|
| 1402 | *** Version 3.01-beta16 released
|
---|
| 1403 |
|
---|
| 1404 | * djgpp/config.sed: tweak the configure script to use :
|
---|
| 1405 | instead of = for --with-foo=bar option parsing, to
|
---|
| 1406 | work around problems with how command.com handles =s.
|
---|
| 1407 |
|
---|
| 1408 | Wed Jul 8 16:51:43 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1409 |
|
---|
| 1410 | * djgpp/config.bat: correct inappropriate behavior that I
|
---|
| 1411 | introduced in the beta13 changes (if first argument is
|
---|
| 1412 | a directory, it needs to be handled as the --srcdir).
|
---|
| 1413 |
|
---|
| 1414 | * testsuite/version.gin, testsuite/version.good, testsuite/Makefile.am:
|
---|
| 1415 | Add target to automake to automatically update version.good
|
---|
| 1416 | from (new file) version.gin, instead of hand-editing the version
|
---|
| 1417 | number each release.
|
---|
| 1418 |
|
---|
| 1419 | * testsuite/Makefile.am: miscellaneous gratuitious tweakage --
|
---|
| 1420 | mainly adding $(RM) commands just because I didn't like
|
---|
| 1421 | leaving the tmp* files from successful runs laying about.
|
---|
| 1422 | Also some editorial comments.
|
---|
| 1423 |
|
---|
| 1424 | * configure.in: update to beta16. Added and commented out
|
---|
| 1425 | experiment with AC_OUTPUT() for testsuite/version.good.
|
---|
| 1426 | Added code to properly handle bare (without =xxx)
|
---|
| 1427 | "--with-regex" option.
|
---|
| 1428 |
|
---|
| 1429 | Sun Jul 5 21:02:16 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1430 |
|
---|
| 1431 | *** Version 3.01-beta15 released
|
---|
| 1432 |
|
---|
| 1433 | * sed/utils.c(ck_fflush), sed/utils.h, sed/execute.c(output_line):
|
---|
| 1434 | add and use new ck_fflush() function.
|
---|
| 1435 |
|
---|
| 1436 | Sun Jul 5 15:23:47 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1437 |
|
---|
| 1438 | * sed/compile.c(bad_prog): add more detail to error
|
---|
| 1439 | messages about -e strings.
|
---|
| 1440 |
|
---|
| 1441 | Sun Jul 5 14:29:45 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1442 |
|
---|
| 1443 | * sed/compile.c(mark_subst_opts), sed/execute.c(do_subst):
|
---|
| 1444 | Define better semantics for interaction of the `g' flag
|
---|
| 1445 | with a numeric flag to the s/// command. It used to
|
---|
| 1446 | be that the `g' command siezed control; now the first
|
---|
| 1447 | (number-1) matches are skipped and then `g' gets control
|
---|
| 1448 | after that. (It is not clear whether this is a feature
|
---|
| 1449 | sneaking in during late beta, or a bug fix; the changes
|
---|
| 1450 | involved were trivial, so I decided to treat it as a bug
|
---|
| 1451 | fix.)
|
---|
| 1452 |
|
---|
| 1453 | * configure.in, testsuite/version.good: update to beta15.
|
---|
| 1454 |
|
---|
| 1455 | Sat Jul 4 09:54:45 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1456 |
|
---|
| 1457 | *** Version 3.01-beta14 released
|
---|
| 1458 |
|
---|
| 1459 | * sed/basicdefs.h, sed/compile.c, sed/execute.c:
|
---|
| 1460 | per report by "Kaveh R. Ghazi" <ghazi@caip.rutgers.edu>,
|
---|
| 1461 | copied the ISXXX macros from lib/regex.c so that
|
---|
| 1462 | silly machines which require isascii() to be true
|
---|
| 1463 | before the other isXXX() macros are valid will
|
---|
| 1464 | still work.
|
---|
| 1465 |
|
---|
| 1466 | * configure.in, testsuite/version.good: update to beta14.
|
---|
| 1467 |
|
---|
| 1468 | Thu Jul 2 23:46:13 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1469 |
|
---|
| 1470 | *** Version 3.01-beta13 released
|
---|
| 1471 |
|
---|
| 1472 | * configure.in, acconfig.h: set USE_REGEX_GNU_H symbol if we
|
---|
| 1473 | are going to be using lib/regex.c.
|
---|
| 1474 |
|
---|
| 1475 | * lib/Makefile.am, lib/regex.h, lib/regex-gnu.h, lib/regex.c:
|
---|
| 1476 | rename lib/regex.h to lib/regex-gnu.h, so that those who
|
---|
| 1477 | choose to use a different regex implementation will not
|
---|
| 1478 | pick-up lib/regex.h when doing "#include <regex.h>".
|
---|
| 1479 |
|
---|
| 1480 | * sed/regex-sed.h, sed/Makefile.am, sed/compile.c, sed/execute.c,
|
---|
| 1481 | sed/sed.c: create sed/regex-sed.h which acts as a switch
|
---|
| 1482 | to choose either lib/regex.h or the user-supplied <regex.h>,
|
---|
| 1483 | depending on the value passed to configure's --with-regex=
|
---|
| 1484 | option.
|
---|
| 1485 |
|
---|
| 1486 | Thu Jul 2 17:22:31 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1487 |
|
---|
| 1488 | * configure.in: if an alternative --with-regex= is given,
|
---|
| 1489 | do an AC_CHECK_FUNCS(regnexec regexec) to ensure that
|
---|
| 1490 | at least one of these functions is available. Also,
|
---|
| 1491 | parallel changes for the default case.
|
---|
| 1492 |
|
---|
| 1493 | * sed/execute.c, acconfig.h: retire use of the WITH_REGNEXEC
|
---|
| 1494 | test macro in favor of HAVE_REGNEXEC test macro created
|
---|
| 1495 | by above change.
|
---|
| 1496 |
|
---|
| 1497 | * djgpp/config.bat: Play games to handle "install-sh",
|
---|
| 1498 | DOS filename restrictions, GNU makefile default rules,
|
---|
| 1499 | and getting a correct run of "configure" (contributed
|
---|
| 1500 | by Eli Zaretskii <eliz@is.elta.co.il>).
|
---|
| 1501 |
|
---|
| 1502 | * djgpp/Makefile.am, testsuite/Makefile.am, testsuite/Makefile.in,
|
---|
| 1503 | Makefile.am, configure.in: Various automake targets
|
---|
| 1504 | (such as distcheck) failed with old configuration.
|
---|
| 1505 | The simplest solution was to just add these .am
|
---|
| 1506 | files. (The testsuite/Makefile.in was just renamed to
|
---|
| 1507 | testsuite/Makefile.am, then various redundant defines and
|
---|
| 1508 | targets were deleted.) (Reported by Erick Branderhorst
|
---|
| 1509 | <Erick.Branderhorst@asml.nl>.)
|
---|
| 1510 |
|
---|
| 1511 | * testsuite/dc.good, testsuite/dc.inp: per suggestion from
|
---|
| 1512 | Greg Ubben <gsu@romulus.ncsc.mil>, use base 16 output to
|
---|
| 1513 | exercise even more of the dc.sed script.
|
---|
| 1514 |
|
---|
| 1515 | * configure.in, testsuite/version.good: update to beta13.
|
---|
| 1516 |
|
---|
| 1517 | Sun Jun 28 16:21:02 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1518 |
|
---|
| 1519 | *** Version 3.01-beta12 released
|
---|
| 1520 |
|
---|
| 1521 | * doc/sed.texi: Avoid mixing @code and @samp markups together:
|
---|
| 1522 | they look ugly in Info. Use @url and @email instead of @example.
|
---|
| 1523 | Add indexes. (Basis of changes contributed by Eli Zaretskii.)
|
---|
| 1524 |
|
---|
| 1525 | * djgpp/*, Makefile.am: add support for the DJGPP compiler,
|
---|
| 1526 | contributed by Eli Zaretskii <eliz@is.elta.co.il>.
|
---|
| 1527 |
|
---|
| 1528 | * dc.sed, testsuite/Makefile.in, testsuite/dc.inp, testsuite/dc.good:
|
---|
| 1529 | added this remarkable script, written and contributed
|
---|
| 1530 | by Greg Ubben <gsu@romulus.ncsc.mil>, both as a work of
|
---|
| 1531 | art for general admiration, and also for use in regression
|
---|
| 1532 | testing.
|
---|
| 1533 |
|
---|
| 1534 | * configure.in, lib/Makefile.am: add --with-regex=regexlib
|
---|
| 1535 | option, which overrides the use of lib/regex.c.
|
---|
| 1536 |
|
---|
| 1537 | * configure.in, testsuite/version.good: update to beta12.
|
---|
| 1538 |
|
---|
| 1539 | Fri Jun 12 16:41:48 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1540 |
|
---|
| 1541 | *** Version 3.01-beta11 released
|
---|
| 1542 |
|
---|
| 1543 | * sed/compile.c: add module-static variables first_script
|
---|
| 1544 | (for #n change below) and pending_text (for a/c/i change
|
---|
| 1545 | below).
|
---|
| 1546 |
|
---|
| 1547 | * sed/compile.c(compile_file), sed/compile.c(compile_program):
|
---|
| 1548 | Instead of having #n trigger the -n option in *any file*,
|
---|
| 1549 | have #n trigger the -n option only if they are the first
|
---|
| 1550 | two bytes of the first script or script-file.
|
---|
| 1551 |
|
---|
| 1552 | * sed/compile.c(compile_string), sed/compile.c(compile_file):
|
---|
| 1553 | clear the first_script variable at end of these functions.
|
---|
| 1554 |
|
---|
| 1555 | * sed/sed.h: tease out the struct text_buf declaration from
|
---|
| 1556 | struct sed_cmd, so that a pointer to such can be passed
|
---|
| 1557 | to new sed/compile.c(read_text) function.
|
---|
| 1558 |
|
---|
| 1559 | * sed/compile.c(compile_program), sed/compile.c(read_text):
|
---|
| 1560 | Tease out handling of text to a/c/i commands to new
|
---|
| 1561 | read_text() function. Handle (via aid of pending_text
|
---|
| 1562 | variable) texts which span more than one script/script-file
|
---|
| 1563 | option. In particular, restore the ability to have this
|
---|
| 1564 | work: sed -e '1i\' -e 'foo'
|
---|
| 1565 |
|
---|
| 1566 | * sed/compile.c(check_final_program): close off any dangling
|
---|
| 1567 | pending_text allocation.
|
---|
| 1568 |
|
---|
| 1569 | Thu Jun 11 11:17:46 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1570 |
|
---|
| 1571 | * sed/execute.c(do_subst): fixed two bugs: s/ */X/g was failing
|
---|
| 1572 | to match the final empty string after the end of the pattern
|
---|
| 1573 | space; and /^foo$/s/o/x/3p was printing, despite the failure
|
---|
| 1574 | to do a substition.
|
---|
| 1575 |
|
---|
| 1576 | Fri Jun 5 04:40:24 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1577 |
|
---|
| 1578 | * configure.in: change the AC_ARG_WITH(regnexec, ...)
|
---|
| 1579 | to be the more appropriate AC_ARG_ENABLE(regnexec, ...).
|
---|
| 1580 |
|
---|
| 1581 | * configure.in, testsuite/version.good: update to beta11.
|
---|
| 1582 |
|
---|
| 1583 | Fri Jun 5 00:54:25 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1584 |
|
---|
| 1585 | *** Version 3.01-beta10 released
|
---|
| 1586 |
|
---|
| 1587 | * sed/execute.c: forgot to P_() the prototype and
|
---|
| 1588 | old-style the declaration for bootstrap_memchr()!
|
---|
| 1589 |
|
---|
| 1590 | Thu Jun 4 18:42:30 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1591 |
|
---|
| 1592 | * sed/compile.c(snarf_char_class): added code to
|
---|
| 1593 | recognize \n or \<newline> sequence within a
|
---|
| 1594 | char-class as the newline character.
|
---|
| 1595 |
|
---|
| 1596 | Tue Jun 2 11:56:02 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1597 |
|
---|
| 1598 | * configure.in: added check for <sys/types.h> and
|
---|
| 1599 | a AC_ARG_WITH(regnexec,...) check, to simplify use
|
---|
| 1600 | of other regex libraries which have regexec() but
|
---|
| 1601 | not regnexec(), with the corresponding loss of
|
---|
| 1602 | functionality (regexps will not work right against
|
---|
| 1603 | input lines which contain NULs).
|
---|
| 1604 |
|
---|
| 1605 | * sed/execute.c: add nul_append() function, a #define
|
---|
| 1606 | for a regnexec() -> regexec() macro (conditional on
|
---|
| 1607 | the lack of the WITH_REGNEXEC symbol), and a couple
|
---|
| 1608 | of calls to nul_append() (in match_an_address_p()
|
---|
| 1609 | and do_subst()) to permit the use of the POSIX standard
|
---|
| 1610 | regexec() function call instead of the suggested
|
---|
| 1611 | regnexec() call.
|
---|
| 1612 |
|
---|
| 1613 | * sed/compile.c, sed/execute.c, sed/sed.c: check for
|
---|
| 1614 | <sys/types.h> and include it (before "regex.h") if
|
---|
| 1615 | available. This makes it simpler to use the system's
|
---|
| 1616 | regex library instead of the one in lib/regex.c, should
|
---|
| 1617 | that be desired.
|
---|
| 1618 |
|
---|
| 1619 | Tue Jun 2 08:41:05 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1620 |
|
---|
| 1621 | * sed/basicdefs.h: define VCAST macros to allow sed to
|
---|
| 1622 | compile on systems which predate the definition
|
---|
| 1623 | of "void *", and yet still get feedback about
|
---|
| 1624 | stupid programming errors from systems which *do*
|
---|
| 1625 | know about "void *"s. Also define MALLOC, REALLOC,
|
---|
| 1626 | MEMDUP, and FREE macros to keep under control the
|
---|
| 1627 | degree of code ugliness which would otherwise be
|
---|
| 1628 | introduced in making use of the VCAST macro.
|
---|
| 1629 |
|
---|
| 1630 | * sed/compile.c, sed/execute.c, sed/sed.c, sed/utils.c:
|
---|
| 1631 | pervasively use the new VCAST, MALLOC, REALLOC, MEMDUP,
|
---|
| 1632 | and FREE macros wherever appropriate.
|
---|
| 1633 |
|
---|
| 1634 | * sed/utils.c, sed/utils.h: correct type of first arguments
|
---|
| 1635 | to ck_fread() and ck_fwrite() to be [const] VOID *.
|
---|
| 1636 |
|
---|
| 1637 | * sed/basicdefs.h, sed/execute.c: protect against
|
---|
| 1638 | the rumored systems which stupidly #define __STDC__ 0.
|
---|
| 1639 |
|
---|
| 1640 | * testsuite/help.good, testsuite/Makefile.in: make
|
---|
| 1641 | the ``help'' test insensitive to the spelling of
|
---|
| 1642 | the executable's name. Also, enhanced `make clean'
|
---|
| 1643 | target.
|
---|
| 1644 |
|
---|
| 1645 | * doc/sed.texi, doc/sed.1: correct documentation of `q'
|
---|
| 1646 | command; fix typos.
|
---|
| 1647 |
|
---|
| 1648 | * configure, testsuite/version.good: update to beta10.
|
---|
| 1649 |
|
---|
| 1650 | Sat May 30 17:28:00 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1651 |
|
---|
| 1652 | *** Version 3.01-beta9 released
|
---|
| 1653 |
|
---|
| 1654 | * Makefile.am: make testsuite a normal SUBDIR.
|
---|
| 1655 |
|
---|
| 1656 | * configure.in: discontinue using AC_ISC_POSIX --
|
---|
| 1657 | check for -lcposix library instead; added
|
---|
| 1658 | testsuite/Makefile to AC_OUTPUT list.
|
---|
| 1659 |
|
---|
| 1660 | * lib/memmove.c(memmove): fixed wrong sense used
|
---|
| 1661 | for HAVE_BCOPY test.
|
---|
| 1662 |
|
---|
| 1663 | * sed/execute.c: checked more specifically for a version
|
---|
| 1664 | of gcc which supports __attribute__ (i.e., >= 2.7).
|
---|
| 1665 |
|
---|
| 1666 | * testsuite/*: renamed files to fit 14 char limit.
|
---|
| 1667 |
|
---|
| 1668 | * testsuite/Makefile, testsuite/Makefile.in: Makefile
|
---|
| 1669 | renamed to Makefile.in and then modified so that
|
---|
| 1670 | "make -j check" from top directory will work.
|
---|
| 1671 |
|
---|
| 1672 | * testsuite/subwrite.sed, testsuite/writeout.sed: changed
|
---|
| 1673 | file name of the "w" command to be consistent with the
|
---|
| 1674 | new naming used in testsuite/Makefile.in.
|
---|
| 1675 |
|
---|
| 1676 | * doc/sed.1, doc/sed.texi: fixed some typos, formatting
|
---|
| 1677 | glitches, and poor wordings.
|
---|
| 1678 |
|
---|
| 1679 | Sat May 30 04:02:29 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1680 |
|
---|
| 1681 | * configure.in: specify that config.h is to be derived
|
---|
| 1682 | from config_h.in in order to avoid the braindead
|
---|
| 1683 | DOS filesystem limitations.
|
---|
| 1684 |
|
---|
| 1685 | Fri May 29 21:56:30 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1686 |
|
---|
| 1687 | * sed/compile.c(compile_address), doc/sed.texi: gave
|
---|
| 1688 | a better definition to the meaning of N~0 address
|
---|
| 1689 | forms -- N~M addresses now mean that lines match
|
---|
| 1690 | when there exists a non-negative x such that
|
---|
| 1691 | lineno == N+x*M.
|
---|
| 1692 |
|
---|
| 1693 | Fri May 29 12:07:38 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1694 |
|
---|
| 1695 | * sed/compile.c(compile_address),
|
---|
| 1696 | sed/execute.c(match_an_address_p): update semantics of
|
---|
| 1697 | N~M address form: now N is the first line which will
|
---|
| 1698 | match and M is the step between succeeding matches.
|
---|
| 1699 | If N<M this works out to the same as before, but the
|
---|
| 1700 | new behavior for N>=M seems more useful.
|
---|
| 1701 |
|
---|
| 1702 | * doc/sed.1, doc/sed.texi: update documentation of N~M
|
---|
| 1703 | address form; added "Other Resources" node to sed.texi;
|
---|
| 1704 | minor formatting changes to some items in sed.1 with
|
---|
| 1705 | an eye to improving clarity.
|
---|
| 1706 |
|
---|
| 1707 | * configure.in, testsuite/version.good: update to beta9.
|
---|
| 1708 |
|
---|
| 1709 | Sat May 23 20:04:31 HST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1710 |
|
---|
| 1711 | *** Version 3.01-beta8 released
|
---|
| 1712 |
|
---|
| 1713 | * sed/compile.c(compile_regex): forgot to make last_re be
|
---|
| 1714 | a *copy* of the buffered text in today's earlier fix.
|
---|
| 1715 |
|
---|
| 1716 | * sed/execute.c(read_file_line): EOF check was wrong --
|
---|
| 1717 | it forgot to allow for the possibility that we were
|
---|
| 1718 | appending to the end of the ``line'' (instead of merely
|
---|
| 1719 | reading a fresh line).
|
---|
| 1720 |
|
---|
| 1721 | Sat May 23 18:07:18 HST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1722 |
|
---|
| 1723 | * sed/compile.c(compile_regex): don't track compiled version
|
---|
| 1724 | of regex -- the modifiers may change. Track the regex
|
---|
| 1725 | source instead. (For "last regex" (aka //) notation.)
|
---|
| 1726 |
|
---|
| 1727 | * configure.in, testsuite/version.good: update to beta8.
|
---|
| 1728 |
|
---|
| 1729 | Sat May 23 16:07:09 HST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1730 |
|
---|
| 1731 | *** Version 3.01-beta7 released
|
---|
| 1732 |
|
---|
| 1733 | * sed/execute.c: #undef'd EXPERIMENTAL_DASH_N_OPTIMIZATION
|
---|
| 1734 | because its code is buggy.
|
---|
| 1735 |
|
---|
| 1736 | Tue May 19 17:03:52 HST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1737 |
|
---|
| 1738 | * sed/sed.c: label rx library code as such with #ifdefs
|
---|
| 1739 | (instead of just #if 0).
|
---|
| 1740 |
|
---|
| 1741 | * sed/compile.c(compile_program): make incremental
|
---|
| 1742 | improvement to the "Unknown command" error message.
|
---|
| 1743 |
|
---|
| 1744 | Sat May 16 23:16:26 HST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1745 |
|
---|
| 1746 | * testsuite/Makefile: simplify: get rid of automatic run
|
---|
| 1747 | against system's sed; don't time by default; allow for
|
---|
| 1748 | alternative comparison command.
|
---|
| 1749 |
|
---|
| 1750 | * configure.in, testsuite/version.good: update to beta7.
|
---|
| 1751 |
|
---|
| 1752 | Wed May 13 21:44:28 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1753 |
|
---|
| 1754 | *** Version 3.01-beta6 released
|
---|
| 1755 |
|
---|
| 1756 | * lib/Makefile.am: fix spelling of libsed_a_LIBADD in
|
---|
| 1757 | libsed_a_DEPENDENCIES.
|
---|
| 1758 |
|
---|
| 1759 | * configure.in, testsuite/version.good: update to beta6.
|
---|
| 1760 |
|
---|
| 1761 | Wed May 13 14:38:08 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1762 |
|
---|
| 1763 | *** Version 3.01-beta5 released
|
---|
| 1764 |
|
---|
| 1765 | * sed/execute.c(do_subst): added not_bol_p variable to track when
|
---|
| 1766 | we have iterated past the beginning of the pattern.
|
---|
| 1767 | [Thanks to Jim Meyering <meyering@ascend.com> for the bug report.]
|
---|
| 1768 |
|
---|
| 1769 | Wed May 13 13:54:04 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1770 |
|
---|
| 1771 | * sed/execute.c(bootstrap_memchr): new function. When
|
---|
| 1772 | bootstrapping we don't know if we are on a 64-bit machine,
|
---|
| 1773 | so lib/memchr.c breaks. Supply this (slow) implementation
|
---|
| 1774 | just to get us bootstrapped.
|
---|
| 1775 |
|
---|
| 1776 | * bootstrap.sh: add a #define BOOTSTRAP symbol; add -I.
|
---|
| 1777 | for emphasis for the compiles in sed/; be explicit
|
---|
| 1778 | about what files we're bothering to compile.
|
---|
| 1779 |
|
---|
| 1780 | * configure.in, testsuite/version.good: update version
|
---|
| 1781 | to beta5.
|
---|
| 1782 |
|
---|
| 1783 | Wed May 13 06:39:06 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1784 |
|
---|
| 1785 | *** Version 3.01-beta4 released
|
---|
| 1786 |
|
---|
| 1787 | * rename writeout.good? to wrtout?.good and subwrite.good? to
|
---|
| 1788 | subwrt?.good to comply with DOS 8+3 file name restrictions.
|
---|
| 1789 | [Eli Zaretskii <eliz@is.elta.co.il> suggested this to
|
---|
| 1790 | simplify DJGPP ports, and it was easy.]
|
---|
| 1791 |
|
---|
| 1792 | * testsuite/Makefile: reflect above name changes.
|
---|
| 1793 |
|
---|
| 1794 | Wed May 12 21:09:32 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1795 |
|
---|
| 1796 | * sed/sed.c(usage): fix non-portable omission of \n\ at end of
|
---|
| 1797 | lines within long string.
|
---|
| 1798 |
|
---|
| 1799 | * sed/sed.c(main): remove spurious argument to fprintf() in the
|
---|
| 1800 | 'V'ersion output.
|
---|
| 1801 |
|
---|
| 1802 | * sed/execute.c(line_append): embed newline between the two
|
---|
| 1803 | text fragments unconditionally.
|
---|
| 1804 |
|
---|
| 1805 | * sed/execute.c(do_subst): change structure assignment to memcpy()
|
---|
| 1806 | (for portability reasons).
|
---|
| 1807 |
|
---|
| 1808 | * README.bootstrap: suggest using -w option.
|
---|
| 1809 |
|
---|
| 1810 | Tue May 12 10:02:37 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1811 |
|
---|
| 1812 | * configure.in: use AC_REPLACE_FUNCS where appropriate.
|
---|
| 1813 |
|
---|
| 1814 | * lib/Makefile.am: updated to reflect AC_REPLACE_FUNCS change in
|
---|
| 1815 | configure.in.
|
---|
| 1816 |
|
---|
| 1817 | * lib/memchr.c lib/memcmp.c: revert to standard GNU versions.
|
---|
| 1818 |
|
---|
| 1819 | * lib/alloca.c: added this missing file.
|
---|
| 1820 |
|
---|
| 1821 | * testsuite/version.good: updated for new version identifier.
|
---|
| 1822 |
|
---|
| 1823 | Mon May 11 18:50:56 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1824 |
|
---|
| 1825 | *** Version 3.01-beta3 released
|
---|
| 1826 |
|
---|
| 1827 | * sed/Makefile.am: fix INCLUDES to work right with VPATH.
|
---|
| 1828 | [Thanks to Jim Meyering <meyering@ascend.com> for the bug report.]
|
---|
| 1829 |
|
---|
| 1830 | * sed/sed.c(usage): make --help output more user-friendly?
|
---|
| 1831 |
|
---|
| 1832 | * sed/execute.c(execute_program): fix bug in 'x' command introduced
|
---|
| 1833 | in the alleged portability fix of May 9.
|
---|
| 1834 |
|
---|
| 1835 | * configure.in: update version to 3.01-beta3.
|
---|
| 1836 |
|
---|
| 1837 | * testsuite/version.good, testsuite/help.good: freshen with
|
---|
| 1838 | latest output.
|
---|
| 1839 |
|
---|
| 1840 | Sat May 9 22:35:45 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1841 |
|
---|
| 1842 | *** Version 3.01-beta2 released
|
---|
| 1843 |
|
---|
| 1844 | * sed/sed.c: add #include <sys/types.h> in HAVE_MMAP
|
---|
| 1845 | block (needed on some machines).
|
---|
| 1846 |
|
---|
| 1847 | * lib/memmove.c: #include <memory.h>, if HAVE_MEMORY_H.
|
---|
| 1848 |
|
---|
| 1849 | Sat May 9 21:29:00 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1850 |
|
---|
| 1851 | * configure.in: remove dangling references to rx library;
|
---|
| 1852 | added HEADER and FUNC checks for items used by source in
|
---|
| 1853 | lib/.
|
---|
| 1854 |
|
---|
| 1855 | * lib/ansidecl.h, lib/memcopy.h, lib/pagecopy.h, lib/string.h
|
---|
| 1856 | lib/memcpy.c, lib/memmove.c: deletes these files. There
|
---|
| 1857 | are still pieces of glibc missing to support these, and
|
---|
| 1858 | it isn't worth the headache right now.
|
---|
| 1859 |
|
---|
| 1860 | * lib/memmove.c: de novo, simpler version. Uses bcopy()
|
---|
| 1861 | if available, and slow-but-simple code if not.
|
---|
| 1862 |
|
---|
| 1863 | * lib/Makefile.am: remove references to deleted files.
|
---|
| 1864 | Added forgotten reference to memcpy.c. Re-ordered
|
---|
| 1865 | SOURCE entries to reflect dependencies for systems
|
---|
| 1866 | which lack ranlib.
|
---|
| 1867 |
|
---|
| 1868 | * sed/basicdefs.h: updated to reflect above changes to lib/,
|
---|
| 1869 | and experience with non-STDC compilers.
|
---|
| 1870 |
|
---|
| 1871 | * lib/regex.c: made regerror() function publicly visible.
|
---|
| 1872 |
|
---|
| 1873 | * lib/strerror.c: use old-style function declaration.
|
---|
| 1874 |
|
---|
| 1875 | * sed/compile.c, sed/execute.c, sed/sed.c, sed/utils.c,
|
---|
| 1876 | sed/sed.h, sed/utils.h: ensure that private definitions of
|
---|
| 1877 | some symbols do not cause problems when #include'ing system
|
---|
| 1878 | headers (mainly by re-ordering the #include directives).
|
---|
| 1879 | (This is particularly an issue for bootstrap.sh runs.)
|
---|
| 1880 |
|
---|
| 1881 | * sed/execute.c (execute_program): use memcpy() instead of
|
---|
| 1882 | structure assingment ('x' command), for portablility to
|
---|
| 1883 | old compilers.
|
---|
| 1884 |
|
---|
| 1885 | * sed/execute.c (slow_getline): use old-style function
|
---|
| 1886 | declaration, with a P_ prototype.
|
---|
| 1887 |
|
---|
| 1888 | * sed/sed.c: change the type of the fallback MAP_FAILED
|
---|
| 1889 | definition to work on archaic systems. (Modern systems
|
---|
| 1890 | should be defining it themselves, so the change from
|
---|
| 1891 | void * shouldn't be a problem.)
|
---|
| 1892 |
|
---|
| 1893 | * bootstrap.sh, README.bootstrap: actual testing of bootstrap
|
---|
| 1894 | code revealed that I was too optimistic. Redesigned and
|
---|
| 1895 | replaced implementation.
|
---|
| 1896 |
|
---|
| 1897 | * testsuite/Makefile: ignore errors from reference-implementation
|
---|
| 1898 | seds that aren't up to snuff.
|
---|
| 1899 |
|
---|
| 1900 | * testsuite/help.good, testsuite/version.good: update to
|
---|
| 1901 | current version's output.
|
---|
| 1902 |
|
---|
| 1903 | Fri May 8 15:08:28 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1904 |
|
---|
| 1905 | *** Version 3.01-beta1 released
|
---|
| 1906 |
|
---|
| 1907 | * sed/sed.c (main, usage): once again tweak the --help and
|
---|
| 1908 | --version output to bettery comply with GNU coding standards.
|
---|
| 1909 |
|
---|
| 1910 | * testsuite/help.good, testsuite/version.good: update to
|
---|
| 1911 | reflect above change.
|
---|
| 1912 |
|
---|
| 1913 | * doc/sed.texi: fix "Invoking" node's spelling to comply
|
---|
| 1914 | with GNU standards.
|
---|
| 1915 |
|
---|
| 1916 | Fri May 8 11:43:10 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1917 |
|
---|
| 1918 | * doc/sed.1, doc/Makefile.am: wrote (very basic) man page.
|
---|
| 1919 |
|
---|
| 1920 | Thu May 7 20:40:21 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1921 |
|
---|
| 1922 | * lib/Makefile.am, lib/memmove.c, lib/memchr.c, lib/regex.c,
|
---|
| 1923 | lib/memcpy.c, lib/regex.h, lib/memcopy.h, lib/string.h,
|
---|
| 1924 | lib/pagecopy.h, lib/ansidecl.h: grab yet-another-version
|
---|
| 1925 | from gnu.org for baseline and/or edit copyright boilerplate
|
---|
| 1926 | using official lgpl2gpl.sed script. Take care not to
|
---|
| 1927 | loose regnexec() interface or special conditional-compilation
|
---|
| 1928 | code.
|
---|
| 1929 |
|
---|
| 1930 | Wed May 6 23:35:12 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1931 |
|
---|
| 1932 | * lib/regex.c, lib/regex.h: take from grep-2.1 distribution,
|
---|
| 1933 | then trivially added the regnexec() interface.
|
---|
| 1934 |
|
---|
| 1935 | * sed/sed.c, sed/compile.c, sed/execute.c: made modifications
|
---|
| 1936 | to work with regex instead of rx.
|
---|
| 1937 |
|
---|
| 1938 | * rx/*: deleted directory; the code is just too slow.
|
---|
| 1939 | I think it will be easier to extend regex to fully
|
---|
| 1940 | support POSIX.2 than to tune rx to be reasonable.
|
---|
| 1941 | Even if this supposition is wrong, I'd rather make
|
---|
| 1942 | the 3.01 release with the slightly deficient regex.
|
---|
| 1943 |
|
---|
| 1944 | * Makefile.am lib/Makefile.am, sed/Makefile.am: made changes
|
---|
| 1945 | related to the substitution of regex for rx.
|
---|
| 1946 |
|
---|
| 1947 | * lib/Makefile.am, sed/Makefile.am: since regex is not a
|
---|
| 1948 | ``compatability'' module, changed name of library to
|
---|
| 1949 | ``libsed.a''.
|
---|
| 1950 |
|
---|
| 1951 | * lib/memchr.c, lib/memcpy.c, lib/memmove.c: add conditional
|
---|
| 1952 | compilation code to leave zero-sized .o file if system
|
---|
| 1953 | already supports the implemented function.
|
---|
| 1954 |
|
---|
| 1955 | * testsuite/help.good, testsuite/version.good: brought
|
---|
| 1956 | up-to-date (once again).
|
---|
| 1957 |
|
---|
| 1958 | * NEWS, ANNOUNCE: changes to reflect this batch of changes.
|
---|
| 1959 |
|
---|
| 1960 | Wed May 6 18:40:47 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1961 |
|
---|
| 1962 | * sed/execute.c: discovered awful bug in '}' handling:
|
---|
| 1963 | it could read past the end of vec (because `n' was
|
---|
| 1964 | being decremented below zero)! Needed to "continue"
|
---|
| 1965 | instead of "break".
|
---|
| 1966 |
|
---|
| 1967 | Tue May 5 14:34:38 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1968 |
|
---|
| 1969 | * doc/sed.texi, doc/version.texi: wrote some rudimentary
|
---|
| 1970 | texinfo documentation.
|
---|
| 1971 |
|
---|
| 1972 | * ANNOUNCE, NEWS, README, README.rx, Makefile.am:
|
---|
| 1973 | more updates for the upcoming beta-release.
|
---|
| 1974 |
|
---|
| 1975 | * sed/compile.c, sed/execute.c, sed/sed.c, sed/utils.c,
|
---|
| 1976 | sed/sed.h, lib/strerror.c: update copyright notice text.
|
---|
| 1977 |
|
---|
| 1978 | Fri May 1 15:41:37 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 1979 |
|
---|
| 1980 | * sed/execute.c (match_an_address_p, match_address_p): if
|
---|
| 1981 | the second element of an address range is a line number,
|
---|
| 1982 | and that line number is *less than* (or equal to) the
|
---|
| 1983 | current line number, we only match the one line (per
|
---|
| 1984 | POSIX.2, section 4.55.7.1). [Bug discovered as reported
|
---|
| 1985 | in the seders mailing list FAQ.]
|
---|
| 1986 |
|
---|
| 1987 | * AUTHORS, NEWS, acconfig.h, configure.in, doc/Makefile.am,
|
---|
| 1988 | lib/Makefile.am, sed/Makefile.am, lib/README,
|
---|
| 1989 | testsuite/help.good, testsuite/version.good:
|
---|
| 1990 | Updated in anticipation of the 3.01-beta1 release.
|
---|
| 1991 | Reorganized development source tree to make creation
|
---|
| 1992 | of a distribution simpler. Most notable changes were
|
---|
| 1993 | to the various Makefile.am files and configure.in, but
|
---|
| 1994 | some minor edits (such as deleting or changing #include
|
---|
| 1995 | directives) have been made in many other source files.
|
---|
| 1996 |
|
---|
| 1997 | * bootstrap.sh, README.bootstrap: created a mechanism for
|
---|
| 1998 | creating sed on a system which lacks a working sed.
|
---|
| 1999 |
|
---|
| 2000 | Thu Apr 16 23:52:11 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2001 |
|
---|
| 2002 | * sed.h, sed.c, execute.c, compile.c: did a spell-check on
|
---|
| 2003 | the comments; fixed several typos.
|
---|
| 2004 |
|
---|
| 2005 | Thu Apr 16 13:43:01 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2006 |
|
---|
| 2007 | * execute.c (do_subst): fixed bug where the "replaced" flag
|
---|
| 2008 | was being set to one inappropriately when at least one
|
---|
| 2009 | but fewer than sub->numb matches of the regexp were found.
|
---|
| 2010 | (Thanks to Simon Taylor <staylor@hermes.iaccess.com.au>
|
---|
| 2011 | for the bug report.)
|
---|
| 2012 |
|
---|
| 2013 | Wed Apr 15 11:35:31 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2014 |
|
---|
| 2015 | * sed.h, sed.c, compile.c, execute.c: having a concern that
|
---|
| 2016 | a cast was being done inappropriately, and realizing that
|
---|
| 2017 | there is no quick way to locate all casts in a program, I
|
---|
| 2018 | went through and marked all casts with a simple macro.
|
---|
| 2019 | Now it is a simple matter to locate the casts, and it is
|
---|
| 2020 | also a simple matter to turn of casts for a lint session
|
---|
| 2021 | (if it should be desired).
|
---|
| 2022 |
|
---|
| 2023 | Wed Apr 15 10:29:21 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2024 |
|
---|
| 2025 | * compile.c, sed.c: redo compile phase so that brace
|
---|
| 2026 | expressions can be spread across multiple files.
|
---|
| 2027 | For example:
|
---|
| 2028 | printf '{' >a; printf 'l;d' >b; printf '}' >c
|
---|
| 2029 | sed -f a -f b -f c foo
|
---|
| 2030 | will now compile (and work), instead of complaining
|
---|
| 2031 | about an unmatched '{'. The mess created in compile.c
|
---|
| 2032 | allowed a little simplification to the command-line
|
---|
| 2033 | processing of "-e" options in sed.c.
|
---|
| 2034 |
|
---|
| 2035 | sed.h: added (opaque) err_info member to struct vector;
|
---|
| 2036 | added comments to the members of struct vector.
|
---|
| 2037 |
|
---|
| 2038 | Wed Apr 14 23:50:50 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2039 |
|
---|
| 2040 | * sed.h, sed.c, compile.c, execute.c: added types countT and
|
---|
| 2041 | flagT in order to clarify what various "int"s were doing.
|
---|
| 2042 | Also makes it easy to change the type used for counts
|
---|
| 2043 | (for example, to "unsigned long long") if desired, although
|
---|
| 2044 | there are still some gotchas (such as the printf() format
|
---|
| 2045 | for the '=' command).
|
---|
| 2046 |
|
---|
| 2047 | Tue Apr 14 17:34:54 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2048 |
|
---|
| 2049 | * execute.c (execute_program, process_files, count_branches,
|
---|
| 2050 | shrink_program): Added a first attempt at program optimization.
|
---|
| 2051 | We now can quit early if we are running with the "-n"
|
---|
| 2052 | and all of the commands are known to be valid only for
|
---|
| 2053 | lines less than the current line. Thus the "sed" in
|
---|
| 2054 | "foo | sed -n 1,2p" will print read three lines, printint
|
---|
| 2055 | the first two, and then quit, regardless of how much longer
|
---|
| 2056 | "foo" might run or output. This optimization does not buy
|
---|
| 2057 | much in most cases (it sometimes even costs a little),
|
---|
| 2058 | but when it does help it can help big. The code is
|
---|
| 2059 | all conditionally compiled based on the
|
---|
| 2060 | EXPERIMENTAL_DASH_N_OPTIMIZATION symbol being #defined,
|
---|
| 2061 | so it can be easily omitted if it causes problems.
|
---|
| 2062 |
|
---|
| 2063 | Tue Apr 14 12:25:06 PDT 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2064 |
|
---|
| 2065 | * execute.c (test_dollar_EOF, last_file_with_data_p):
|
---|
| 2066 | test_dollar_EOF() was incorrectly returning a false (0)
|
---|
| 2067 | when there were unprocessed files, none of which had any
|
---|
| 2068 | data (either unopenable or zero-length). Created
|
---|
| 2069 | last_file_with_data_p() to detect this situation, and
|
---|
| 2070 | modified test_dollar_EOF() to make use of it.
|
---|
| 2071 |
|
---|
| 2072 | Thu Apr 2 23:02:18 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2073 |
|
---|
| 2074 | * compile.c (match_slash): match_slash() did not handle
|
---|
| 2075 | [.coll.], [=equiv=], and [:class:] sequences within a
|
---|
| 2076 | character class. Added snarf_char_class() [which is a
|
---|
| 2077 | remote derivative of parse_char_class() from GNU ed-0.2]
|
---|
| 2078 | to deal with the details, and altered match_slash()
|
---|
| 2079 | to make use of it. Also created the trivial
|
---|
| 2080 | add_then_next() to avoid clutter in snarf_char_class().
|
---|
| 2081 |
|
---|
| 2082 | Thu Apr 2 20:34:42 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2083 |
|
---|
| 2084 | * execute.c, sed.c, sed.h: There was a severe bug in
|
---|
| 2085 | how the code handled "sed 5n a b" when "a" consists
|
---|
| 2086 | of exactly five lines -- it behaved like "sed 5q a b"!
|
---|
| 2087 |
|
---|
| 2088 | Rearranged where files get opened -- large scale
|
---|
| 2089 | changes primarily involving main(), process_files(),
|
---|
| 2090 | and read_pattern_space(), but also touching on several
|
---|
| 2091 | other parts of execute.c. The read_pattern_space()
|
---|
| 2092 | function became unwieldly and parts were split into
|
---|
| 2093 | open_next_file(), closedown(), read_always_fail(),
|
---|
| 2094 | read_mem_line(), and read_file_line(). The
|
---|
| 2095 | at_end_of_file_p() function became obsolete and was
|
---|
| 2096 | eliminated; test_dollar_EOF_p() was updated. A few
|
---|
| 2097 | global and module-static variables were elminated, and
|
---|
| 2098 | "struct line" was extended; comments were added to the
|
---|
| 2099 | "struct line" declartation to document some important
|
---|
| 2100 | dependencies in it.
|
---|
| 2101 |
|
---|
| 2102 | I undertook the reorganization with dread, but I
|
---|
| 2103 | feel that the new organization is an improvement
|
---|
| 2104 | well beyond just fixing the bug that inspired it.
|
---|
| 2105 |
|
---|
| 2106 | Thu Apr 2 01:16:25 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2107 |
|
---|
| 2108 | * execute.c (read_file_line, slow_getline): the fread()
|
---|
| 2109 | buffering code gives insufficient feedback to a user
|
---|
| 2110 | running sed with a tty input device, so I created
|
---|
| 2111 | slow_getline() for reading from a tty device.
|
---|
| 2112 | Additionally, EOF detection has been made a little more
|
---|
| 2113 | sensitive to avoid requiring multiple EOFs to be entered
|
---|
| 2114 | from a tty.
|
---|
| 2115 |
|
---|
| 2116 | * configure.in: added isatty() check.
|
---|
| 2117 |
|
---|
| 2118 | Wed Apr 1 11:04:30 PST 1998 Ken Pizzini <ken@gnu.org>
|
---|
| 2119 |
|
---|
| 2120 | * configure.in (CPPFLAGS, LDFLAGS, LIBS):
|
---|
| 2121 | Set to appropriate values if large file support needs
|
---|
| 2122 | explicit enabling. Code fragment taken from a 1997-10-25
|
---|
| 2123 | patch to gawk by Paul Eggert <eggert@twinsun.com>
|
---|
| 2124 |
|
---|
| 2125 | Thu Aug 14 17:43:27 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2126 |
|
---|
| 2127 | * utils.c (ck_fclose): modified to ignore NULL parameter.
|
---|
| 2128 |
|
---|
| 2129 | Thu Aug 14 12:08:45 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2130 |
|
---|
| 2131 | * execute.c: tweaked execute_program() to eliminate
|
---|
| 2132 | gratuitous "goto" usage.
|
---|
| 2133 |
|
---|
| 2134 | Thu Aug 14 11:30:04 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2135 |
|
---|
| 2136 | * compile.c: added case-insensitive modifier ('I') to
|
---|
| 2137 | address and s/// regexps. The s/// case also accepts
|
---|
| 2138 | the more popular 'i' modifier. (The address regexp
|
---|
| 2139 | cannot use 'i' as a modifier, as that conflicts with
|
---|
| 2140 | the use of the 'i'nsert command.)
|
---|
| 2141 |
|
---|
| 2142 | Thu Aug 14 09:29:06 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2143 |
|
---|
| 2144 | * compile.c: abstracted out match_slash() from the s///, y///,
|
---|
| 2145 | and address-regexp special-case codes.
|
---|
| 2146 |
|
---|
| 2147 | * execute.c: made dump_append_queue() use ck_fread() instead
|
---|
| 2148 | of hand-rolled error checking.
|
---|
| 2149 |
|
---|
| 2150 | Mon Jul 28 10:50:41 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2151 |
|
---|
| 2152 | * sed.c, sed.h, execute.c: POSIX.2, section 4.55.7, says that
|
---|
| 2153 | a newline must end *every* output line. But I think that
|
---|
| 2154 | it is useful (when seding a binary file) to omit a trailing
|
---|
| 2155 | newline if the input lacks one. Thus the addition of
|
---|
| 2156 | POSIXLY_CORRECT behavior.
|
---|
| 2157 |
|
---|
| 2158 | * execute.c: however, when seding multiple files my feeling
|
---|
| 2159 | is that it makes sense to have each file but the last
|
---|
| 2160 | behave as-if it ended in a newline. Modified read_pattern_space()
|
---|
| 2161 | accordingly.
|
---|
| 2162 |
|
---|
| 2163 | * utils.c: realized that add1_buffer(), for performance reasons,
|
---|
| 2164 | shouldn't be calling memcpy() (indirectly via add_buffer()),
|
---|
| 2165 | so rewrote it.
|
---|
| 2166 |
|
---|
| 2167 | Sat Jul 26 23:08:28 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2168 |
|
---|
| 2169 | * execute.c: attempted to make read_pattern_space more
|
---|
| 2170 | efficient for the the non-mmap() case.
|
---|
| 2171 |
|
---|
| 2172 | * utils.c, utils.h, execute.c: new function ck_fread()
|
---|
| 2173 | created and used.
|
---|
| 2174 |
|
---|
| 2175 | Sat Jul 26 20:22:14 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2176 |
|
---|
| 2177 | * execute.c, compile.c, sed.c: abstracted the mmap()
|
---|
| 2178 | interface into map_file()/unmap_file() [sed.c], and
|
---|
| 2179 | changed the ad-hoc code in compile_file() [compile.c]
|
---|
| 2180 | and process_file() [execute.c] to make use of the new
|
---|
| 2181 | interface.
|
---|
| 2182 |
|
---|
| 2183 | Sat Jul 26 19:45:46 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2184 |
|
---|
| 2185 | * execute.c, compile.c, configure.in: Check to see if mmap()
|
---|
| 2186 | is available; if so make use of it on regular files.
|
---|
| 2187 |
|
---|
| 2188 | * compile.c: compile_file() now closes the input file
|
---|
| 2189 | when it is through!
|
---|
| 2190 |
|
---|
| 2191 | Sun Jul 20 23:57:02 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2192 |
|
---|
| 2193 | * compile.c: modified parsing to permit whitespace in more
|
---|
| 2194 | places where it makes sense;
|
---|
| 2195 | added backslash escaping to the y/// command, per POSIX.
|
---|
| 2196 |
|
---|
| 2197 | * execute.c: Merged append_pattern_space() into read_pattern_space();
|
---|
| 2198 | moved body of 's' command to new function do_subst();
|
---|
| 2199 | moved body of 'l' command to new function do_list();
|
---|
| 2200 | changed output of 'l' command to conform to POSIX.2;
|
---|
| 2201 | made line handling conform to POSIX; added output_line() function;
|
---|
| 2202 | redesigned append-space algorithm; added append_queue structure and
|
---|
| 2203 | the next_append_slot() and dump_append_queue() functions.
|
---|
| 2204 |
|
---|
| 2205 | * sed.h: moved the definition of what is now struct subst
|
---|
| 2206 | outside of the definition of struct sed_cmd.
|
---|
| 2207 |
|
---|
| 2208 | Sat Jul 19 16:29:09 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2209 |
|
---|
| 2210 | * sed.c, execute.c, sed.h, Makefile.am: Separated out the
|
---|
| 2211 | pieces dealing with executing the program from the top-level
|
---|
| 2212 | parameter parsing and control.
|
---|
| 2213 |
|
---|
| 2214 | Sat Jul 19 01:16:35 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2215 |
|
---|
| 2216 | * sed.c, compile.c, sed.h, Makefile.am: separate out the
|
---|
| 2217 | pieces dealing with compiling the program from the pieces
|
---|
| 2218 | dealing with interpreting the result.
|
---|
| 2219 |
|
---|
| 2220 | * compile.c: add functions in_nonblank() and in_integer(),
|
---|
| 2221 | and change interface to compile_address() with an eye
|
---|
| 2222 | to making code clearer.
|
---|
| 2223 |
|
---|
| 2224 | Fri Jul 18 13:35:50 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2225 |
|
---|
| 2226 | * utils.c: attempt at a quasi-unification of the
|
---|
| 2227 | STDC and traditional C approaches to panic().
|
---|
| 2228 |
|
---|
| 2229 | * sed.c: eliminate some gratuitous bit twiddling.
|
---|
| 2230 | (Using flag bits can be a useful technique, but
|
---|
| 2231 | this code is cleaner without them.)
|
---|
| 2232 |
|
---|
| 2233 | * sed.c: place mutually exclusive members of struct addr
|
---|
| 2234 | within a union, mainly to document the exclusivity;
|
---|
| 2235 | eliminate unused structure members from struct fp_list;
|
---|
| 2236 | eliminate unnecessary module-global variables;
|
---|
| 2237 | remove some #if 0 code that is too odd to keep;
|
---|
| 2238 | allegedly simplified the 'l' case of execute_program();
|
---|
| 2239 | allegedly simplified inchar();
|
---|
| 2240 | localized some static variables;
|
---|
| 2241 | renamed some variables to better document their purpose;
|
---|
| 2242 | removed some goto-s rendered obsolete by other changes.
|
---|
| 2243 |
|
---|
| 2244 | Thu Jul 17 15:30:44 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2245 |
|
---|
| 2246 | * utils.c, utils.h, sed.c: added and made use of
|
---|
| 2247 | ck_free() function.
|
---|
| 2248 |
|
---|
| 2249 | * utils.c, utils.h, sed.c: changed all the *_buffer()
|
---|
| 2250 | functions to take/return an incomplete type
|
---|
| 2251 | "struct buffer *" instead of using VOID *.
|
---|
| 2252 |
|
---|
| 2253 | * utils.c, utils.h, sed.c: renamed "finish_buffer()"
|
---|
| 2254 | to "free_buffer()", on the premise that the new
|
---|
| 2255 | name better describes the function's purpose.
|
---|
| 2256 |
|
---|
| 2257 | Wed Jul 16 13:52:14 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2258 |
|
---|
| 2259 | * utils.c, utils.h, sed.c: added and made use of
|
---|
| 2260 | ck_memdup() function.
|
---|
| 2261 |
|
---|
| 2262 | * sed.c: protected a call to add1_buffer() in
|
---|
| 2263 | compile_program() which could have tried to
|
---|
| 2264 | push an EOF if a a/i/c command ended with
|
---|
| 2265 | a '\', EOF sequence.
|
---|
| 2266 |
|
---|
| 2267 | * utils.c: added sanity check to add1_buffer() so that
|
---|
| 2268 | EOF will not be added to the buffer.
|
---|
| 2269 |
|
---|
| 2270 | Wed Jul 16 03:56:26 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2271 |
|
---|
| 2272 | * configure.in, compat.h, compat.c: added memchr.
|
---|
| 2273 |
|
---|
| 2274 | * sed.c: got rid of arbitrary NUM_FPS limit;
|
---|
| 2275 | made global functions and variables "static" where appropriate;
|
---|
| 2276 | make various cosmetic changes, hopefully improving readability;
|
---|
| 2277 | simplified some redundant predicates;
|
---|
| 2278 | simplified some code, but nothing fundamental (yet?).
|
---|
| 2279 |
|
---|
| 2280 | Wed Jul 16 00:24:54 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2281 |
|
---|
| 2282 | * alloca.c, getopt.c, getopt.h, getopt1.c: updated from
|
---|
| 2283 | versions in textutils-1.22.
|
---|
| 2284 |
|
---|
| 2285 | * Makefile.in, Makefile.am, configure.in: put in automake support.
|
---|
| 2286 |
|
---|
| 2287 | * basicdefs.h, compat.h, compat.c [, sed.c, utils.c]: took out
|
---|
| 2288 | some very ugly compatibility #ifdefs and packaged into one
|
---|
| 2289 | place.
|
---|
| 2290 |
|
---|
| 2291 | * sed.c, utils.c: some gratuitous formatting changes.
|
---|
| 2292 |
|
---|
| 2293 | * utils.c: changed datatype of utils_id_s in order to
|
---|
| 2294 | eliminate arbitrary array size.
|
---|
| 2295 |
|
---|
| 2296 | Sun Jul 13 17:00:26 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2297 |
|
---|
| 2298 | * sed.c, utils.c, utils.h: de-linting oriented cleanup.
|
---|
| 2299 |
|
---|
| 2300 | Sun Jul 13 00:46:48 PDT 1997 Ken Pizzini <ken@gnu.org>
|
---|
| 2301 |
|
---|
| 2302 | * sed.c: fixed bug which caused SEGV for files missing a
|
---|
| 2303 | final newline. Corrected calls to regnexec to pass the
|
---|
| 2304 | proper parameters, in the proper order.
|
---|
| 2305 |
|
---|
| 2306 | Sat Dec 30 20:16:59 1995 Tom Lord <lord@beehive>
|
---|
| 2307 |
|
---|
| 2308 | *** Version 3.00 released
|
---|
| 2309 |
|
---|
| 2310 | * sed.c: Use posix entry points to regexp functions.
|
---|
| 2311 | Fix enough bugs to pass the test-suite.
|
---|
| 2312 |
|
---|
| 2313 | ....... Jason Molenda <crash@cygnus.com>
|
---|
| 2314 |
|
---|
| 2315 | * testsuite/: trippy test suite.
|
---|
| 2316 |
|
---|
| 2317 |
|
---|
| 2318 | Wed May 11 07:46:24 1994 Chip Salzenberg (chip@fin.uucp)
|
---|
| 2319 |
|
---|
| 2320 | *** Version 2.05 released
|
---|
| 2321 |
|
---|
| 2322 | * sed.c (compile_address): Recognize numeric addresses.
|
---|
| 2323 | Fixes typo made during installation of "~" feature.
|
---|
| 2324 |
|
---|
| 2325 | Sat Apr 30 17:17:38 1994 Tom Lord (lord@x1.cygnus.com)
|
---|
| 2326 |
|
---|
| 2327 | *** Version 2.04 released
|
---|
| 2328 |
|
---|
| 2329 | * sed.c: applied a patch from
|
---|
| 2330 | From: kap1@tao.cpe.uchicago.edu (Dietrich Kappe)
|
---|
| 2331 |
|
---|
| 2332 | Dietrich writes:
|
---|
| 2333 |
|
---|
| 2334 | As my contribution to the creeping feature creature in sed,
|
---|
| 2335 | here is a new type of address. The address has form n~m,
|
---|
| 2336 | which means "the line number is equal to n modulo m." The
|
---|
| 2337 | modifications to sed are trivial, and the general
|
---|
| 2338 | usefulness of this address should be obvious. If m is 0 or
|
---|
| 2339 | missing, 1 is used in its place (could be a bug or a
|
---|
| 2340 | feature :-).
|
---|
| 2341 |
|
---|
| 2342 | Sat Apr 30 17:17:38 1994 Tom Lord (lord@x1.cygnus.com)
|
---|
| 2343 |
|
---|
| 2344 | * rx.c (solve_destination): protect `solution' more carefully.
|
---|
| 2345 | This is a cleanup of a patch from Kevin Buettner
|
---|
| 2346 | (kev@cujo.geg.mot.com).
|
---|
| 2347 |
|
---|
| 2348 | Sat Apr 30 17:17:38 1994 Tom Lord (lord@x1.cygnus.com)
|
---|
| 2349 |
|
---|
| 2350 | * rx.c: make translation tables unsigned chars
|
---|
| 2351 |
|
---|
| 2352 | * sed.c (main): Compile accumulated -e commands as
|
---|
| 2353 | soon as a -f command comes along. This ensures that
|
---|
| 2354 | the commands are executed in the right order.
|
---|
| 2355 |
|
---|
| 2356 | Mon Oct 25 14:41:47 1993 Tom Lord (lord@rtl.cygnus.com)
|
---|
| 2357 |
|
---|
| 2358 | * sed.c (execute_program): 'w' flushes the buffer after it
|
---|
| 2359 | writes -- diagnosed by doug@research.att.com. 'r' and 'w' to
|
---|
| 2360 | the same file is now supported -- hopefully even in a way that
|
---|
| 2361 | satisfies Posix (it now behaves differently from some
|
---|
| 2362 | /bin/sed's and the spec is hard to read so i'm not sure).
|
---|
| 2363 |
|
---|
| 2364 | Also, 'r' of a non-existent file is now permitted.
|
---|
| 2365 |
|
---|
| 2366 | Mon Oct 11 21:06:10 1993 Tom Lord (lord@cygnus.com)
|
---|
| 2367 |
|
---|
| 2368 | * sed.c (execute_program): remember that 'b' and 't' are more
|
---|
| 2369 | like longjmp than goto. Patch from tom@basil.icce.rug.nl (Tom
|
---|
| 2370 | R.Hageman)
|
---|
| 2371 |
|
---|
| 2372 | * rx.c: patch from From: fin!chip@rutgers.edu (Chip
|
---|
| 2373 | Salzenberg) to get rid of compiler warnings.
|
---|
| 2374 |
|
---|
| 2375 |
|
---|
| 2376 | Sat Aug 7 01:04:59 1993 Tom Lord (lord@unix7.andrew.cmu.edu)
|
---|
| 2377 |
|
---|
| 2378 | *** Version 2.03 released
|
---|
| 2379 |
|
---|
| 2380 | * sed.c (compile_regex): report error messages for bogus
|
---|
| 2381 | regexps.
|
---|
| 2382 |
|
---|
| 2383 | SEE ALSO: ChangeLog.rx
|
---|
| 2384 |
|
---|
| 2385 | |
---|
| 2386 |
|
---|
| 2387 | Wed Jul 21 00:28:03 1993 Tom Lord (lord@unix8.andrew.cmu.edu)
|
---|
| 2388 |
|
---|
| 2389 | * alloca.c: upgraded to a more recent version
|
---|
| 2390 |
|
---|
| 2391 | * rx.c (re_search_2): prefer matches with longer
|
---|
| 2392 | subexpressions to those with shorter ones, giving precedence
|
---|
| 2393 | to low numbered subexpressions.
|
---|
| 2394 |
|
---|
| 2395 | * rx.c (re_compile): don't free `params' if its null.
|
---|
| 2396 |
|
---|
| 2397 | Fri Jul 16 01:12:08 1993 Tom Lord (lord@unix8.andrew.cmu.edu)
|
---|
| 2398 |
|
---|
| 2399 | * rx.[ch], sed.c: rx replaces regex.
|
---|
| 2400 |
|
---|
| 2401 |
|
---|
| 2402 |
|
---|
| 2403 | Thu May 27 11:13:03 1993 Tom Lord (lord@unix3.andrew.cmu.edu)
|
---|
| 2404 |
|
---|
| 2405 | * sed.c (execute_program, match_addr): caught more cases
|
---|
| 2406 | that need to be sensitive to a missing \n at EOF.
|
---|
| 2407 |
|
---|
| 2408 | Fri May 21 00:39:22 1993 Tom Lord (lord@unix8.andrew.cmu.edu)
|
---|
| 2409 |
|
---|
| 2410 | * sed.c (execute_program): apply gaumondp's patch
|
---|
| 2411 | to fix '\xabcxs/foo/bar/'.
|
---|
| 2412 |
|
---|
| 2413 | * sed.c (execute_program):
|
---|
| 2414 | If a second address is a regexp, never match it on the
|
---|
| 2415 | same line as the first address.
|
---|
| 2416 |
|
---|
| 2417 | * sed.c (compile_regexp):
|
---|
| 2418 | Numeric ranges x,y s.t. y < x are now treated as x,x.
|
---|
| 2419 | There was a bug in that they were being handled like x,x+1.
|
---|
| 2420 |
|
---|
| 2421 | * sed.c (execute_program, read_pattern_space,
|
---|
| 2422 | append_pattern_space) don't add newlines to lines
|
---|
| 2423 | that don't have them.
|
---|
| 2424 |
|
---|
| 2425 | Wed May 19 13:34:45 1993 Tom Lord (lord@unix9.andrew.cmu.edu)
|
---|
| 2426 |
|
---|
| 2427 | * sed.c (compile_program): grok \\n in comments.
|
---|
| 2428 |
|
---|
| 2429 | Mon May 17 16:34:50 1993 Tom Lord (lord@unix9.andrew.cmu.edu)
|
---|
| 2430 |
|
---|
| 2431 | * alloca.c: new (standard) file
|
---|
| 2432 |
|
---|
| 2433 | * configure.in: AC_CONSTified
|
---|
| 2434 |
|
---|
| 2435 | * sed.c (compile_program): properly diagnose the error of
|
---|
| 2436 | a missing command (e.g. sed /x/). (thanks gaumondp)
|
---|
| 2437 |
|
---|
| 2438 | * sed.c (compile_regexp): handle character classes correctly.
|
---|
| 2439 | Thanks gaumondp@ERE.UMontreal.CA
|
---|
| 2440 | and schwab@issan.informatik.uni-dortmund.de.
|
---|
| 2441 |
|
---|
| 2442 | Thu May 6 12:37:18 1993 Tom Lord (lord@unix10.andrew.cmu.edu)
|
---|
| 2443 |
|
---|
| 2444 | * sed.c (compile_filename, execute_program): don't use
|
---|
| 2445 | `access' or `/dev/null'.
|
---|
| 2446 |
|
---|
| 2447 | * sed.c (execute_program): 'N' at EOF should delete the pat buf.
|
---|
| 2448 |
|
---|
| 2449 | * sed.c (compile_filename): truncate, don't append files
|
---|
| 2450 | being openned for `w' or `s///w'
|
---|
| 2451 |
|
---|
| 2452 | * sed.c (execute_program): -n switch shouldn't effect `i' or `c'.
|
---|
| 2453 |
|
---|
| 2454 | * sed.c (compile_program): don't compile unescaped newlines
|
---|
| 2455 | into the substitution string of an `s' command (they are an error).
|
---|
| 2456 |
|
---|
| 2457 | * sed.c (compile_regex): correctly skip over character
|
---|
| 2458 | sets that contain `]'.
|
---|
| 2459 |
|
---|
| 2460 | * sed.c (execute_program): patch from gaumondp
|
---|
| 2461 | Correctly handle empty-string matches in the case of an `s'
|
---|
| 2462 | command with a repeat count.
|
---|
| 2463 |
|
---|
| 2464 | * sed.c (compile_program): patch from gaumondp@ere.UMontreal.ca.
|
---|
| 2465 | Don't consume characters after the label of a `b', `t' or `:' command.
|
---|
| 2466 |
|
---|
| 2467 | * sed.c (compile_program): unmatched open braces are an error.
|
---|
| 2468 |
|
---|
| 2469 | * sed.c (compile_file): when consuming an initial comment,
|
---|
| 2470 | count lines correctly.
|
---|
| 2471 |
|
---|
| 2472 | Wed Nov 18 02:10:58 1992 Tom Lord (lord@unix2.andrew.cmu.edu)
|
---|
| 2473 |
|
---|
| 2474 | * sed.c (execute_program): Made s///p print even if -n was
|
---|
| 2475 | specified.
|
---|
| 2476 |
|
---|
| 2477 | * sed.c (compile_string): Changed the type of this function to
|
---|
| 2478 | fix a compile warning.
|
---|
| 2479 |
|
---|
| 2480 | Wed Nov 4 17:15:34 1992 Tom Lord (lord@unix7.andrew.cmu.edu)
|
---|
| 2481 |
|
---|
| 2482 | * sed.c (main): Initialize the hold area to contain "\n"
|
---|
| 2483 | instead of "". In execute_program, all lines are expected
|
---|
| 2484 | to be newline terminated. Also, if H is the first command
|
---|
| 2485 | in the script, the result is a pattern buffer that begins
|
---|
| 2486 | with a blank line. Thanks to pinard@iro.umontreal.ca
|
---|
| 2487 | (Francois Pinard) for pointing out this and many other bugs.
|
---|
| 2488 |
|
---|
| 2489 | * sed.c (execute_program): Fixed a case of `D' command.
|
---|
| 2490 | Thanks Chris Weber <weber@bucknell.edu>
|
---|
| 2491 |
|
---|
| 2492 | * sed.c: added new tests of no_default_output to make -n work.
|
---|
| 2493 | Thanks Andrew Herbert <andrew@werple.apana.org.au>
|
---|
| 2494 |
|
---|
| 2495 | * sed.c, configure.in,Makefile.in: autoconfed bcopy and const.
|
---|
| 2496 | Thanks "J.T. Conklin" <jtc@gain.com>
|
---|
| 2497 |
|
---|
| 2498 | * sed.c: made prog_cur, prog_start, and prog_end unsigned so
|
---|
| 2499 | that users could write `sed -e s/ÿ/foo/g'.
|
---|
| 2500 |
|
---|
| 2501 | Tue Oct 13 00:04:05 1992 Tom Lord (lord@unix3.andrew.cmu.edu)
|
---|
| 2502 |
|
---|
| 2503 | * sed.c (execute_program): fixed the cycling behavior of 'D'
|
---|
| 2504 |
|
---|
| 2505 | * sed.c: integrated patch that closes files
|
---|
| 2506 |
|
---|
| 2507 | * sed.c: changed regexp syntax
|
---|
| 2508 |
|
---|
| 2509 | Fri May 22 15:11:12 1992 Tom Lord (lord at moriarty.bh.andrew.cmu.edu)
|
---|
| 2510 |
|
---|
| 2511 | * regex.c: this is not my change, but a pointer to the fact
|
---|
| 2512 | that karl@gnu fixed some regexp bugs that were plaguing sed.
|
---|
| 2513 |
|
---|
| 2514 | Thu Apr 30 13:02:21 1992 Tom Lord (lord at unix3.andrew.cmu.edu)
|
---|
| 2515 |
|
---|
| 2516 | * sed.c (compile_program, execute_program)
|
---|
| 2517 | subprograms are now compiled with an explicit continuation ;)
|
---|
| 2518 | return_v and return_i in struct vector. execute_program
|
---|
| 2519 | no longer recurses to execute subprograms (case '{') and now
|
---|
| 2520 | understands a return instruction (case '{').
|
---|
| 2521 |
|
---|
| 2522 | Tue Apr 28 17:13:04 1992 Tom Lord (lord at unix7.andrew.cmu.edu)
|
---|
| 2523 |
|
---|
| 2524 | * sed.c (compile_address) added \?regexp? syntax for addresses.
|
---|
| 2525 |
|
---|
| 2526 | * sed.c (main) added {} intervals to the obscure regexp
|
---|
| 2527 | syntax.
|
---|
| 2528 |
|
---|
| 2529 | * sed.c (compile_program) after calling compile_address,
|
---|
| 2530 | normalize numeric addresses (make a2.addr_number > a1.addr_number).
|
---|
| 2531 | This is necessary because line numbers must match exactly,
|
---|
| 2532 | but sed does not try to match a2 until after a1 has matched,
|
---|
| 2533 | yet a1,a2 where a2 <= a1 is defined to be equivelent to
|
---|
| 2534 | a1,a1+1
|
---|
| 2535 |
|
---|
| 2536 | Sat Feb 29 10:55:54 1992 David J. MacKenzie (djm@nutrimat)
|
---|
| 2537 |
|
---|
| 2538 | * sed.c (usage): Document long options as starting with `--'.
|
---|
| 2539 |
|
---|
| 2540 | Mon Dec 9 23:56:40 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2541 |
|
---|
| 2542 | * sed.c: Include sys/types.h, for new regex.h.
|
---|
| 2543 |
|
---|
| 2544 | Tue Nov 5 02:16:01 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2545 |
|
---|
| 2546 | * utils.c: Change NO_VFPRINTF to VPRINTF_MISSING, for
|
---|
| 2547 | compatibility with autoconf.
|
---|
| 2548 |
|
---|
| 2549 | Mon Sep 2 22:02:40 1991 David J. MacKenzie (djm at apple-gunkies)
|
---|
| 2550 |
|
---|
| 2551 | * sed.c (compile_regex): Treat \ as a normal character when in
|
---|
| 2552 | a char class.
|
---|
| 2553 |
|
---|
| 2554 | Thu Aug 8 00:15:33 1991 David J. MacKenzie (djm at bleen)
|
---|
| 2555 |
|
---|
| 2556 | * Version 1.08.
|
---|
| 2557 |
|
---|
| 2558 | * sed.c (compile_filename): If reading a file fails, read
|
---|
| 2559 | /dev/null instead. It's what Unix and POSIX do, effectively.
|
---|
| 2560 |
|
---|
| 2561 | * sed.c (compile_regex): The 'slash' character doesn't
|
---|
| 2562 | terminate the regex if it's in a character class.
|
---|
| 2563 |
|
---|
| 2564 | * sed.c (main): If given no args, or bad option, print usage
|
---|
| 2565 | message.
|
---|
| 2566 | (usage): New function.
|
---|
| 2567 |
|
---|
| 2568 | * sed.c (execute_program): Amount written for 'P' command was
|
---|
| 2569 | wrong. From stephend@ksr.com (Stephen Davis).
|
---|
| 2570 |
|
---|
| 2571 | Wed Aug 7 16:51:14 1991 David J. MacKenzie (djm at apple-gunkies)
|
---|
| 2572 |
|
---|
| 2573 | * sed.c (append_pattern_space): Check for buffer full before
|
---|
| 2574 | instead of after writing to buffer. Don't need to test for
|
---|
| 2575 | EOF initially anymore, due to the next change.
|
---|
| 2576 | (execute_program): For 'n' and 'N' commands, if eof is reached
|
---|
| 2577 | in input, quit the script like Unix sed does.
|
---|
| 2578 | Fix memory allocation problems for 'a' and 'r' commands.
|
---|
| 2579 | (compile_program): Fix off by one error in processing comments.
|
---|
| 2580 | All of the above are from Tapani Tarvainen, tarvaine@tukki.jyu.fi.
|
---|
| 2581 |
|
---|
| 2582 | * sed.c (setup_jump): Use isblank instead of testing for ' '
|
---|
| 2583 | or '\t', for POSIX locales.
|
---|
| 2584 |
|
---|
| 2585 | * utils.c (ck_strdup): Renamed from strdup.
|
---|
| 2586 | * sed.c: Change callers.
|
---|
| 2587 |
|
---|
| 2588 | * sed.c, utils.c: Clean up declarations and includes to get
|
---|
| 2589 | rid of compiler warnings.
|
---|
| 2590 |
|
---|
| 2591 | * sed.c (main): Add long-named options. Don't complain if -n
|
---|
| 2592 | is given twice.
|
---|
| 2593 |
|
---|
| 2594 | Fri Aug 2 12:33:16 1991 David J. MacKenzie (djm at apple-gunkies)
|
---|
| 2595 |
|
---|
| 2596 | * configure: Support +srcdir arg. Create config.status and
|
---|
| 2597 | remove it and Makefile if interrupted while creating them.
|
---|
| 2598 | * Makefile.in: Change DESTDIR to prefix.
|
---|
| 2599 |
|
---|
| 2600 | Mon Jul 15 13:07:39 1991 David J. MacKenzie (djm at wookumz.gnu.ai.mit.edu)
|
---|
| 2601 |
|
---|
| 2602 | * sed.c (main): Add -V option to print version number.
|
---|
| 2603 | (USAGE): Mention -V.
|
---|
| 2604 |
|
---|
| 2605 | Mon Jul 8 01:42:22 1991 David J. MacKenzie (djm at geech.gnu.ai.mit.edu)
|
---|
| 2606 |
|
---|
| 2607 | * sed.c: Define bcopy in terms of memcpy if STDC_HEADERS as
|
---|
| 2608 | well as if USG.
|
---|
| 2609 | (compile_filename): Don't glob filename (for 'r' and 'w'
|
---|
| 2610 | commands). Unix sed doesn't do it and it's not very useful,
|
---|
| 2611 | since it can only match 0 or 1 files.
|
---|
| 2612 | (execute_program): Change '\a' to 007 since some compilers
|
---|
| 2613 | don't recognize \a.
|
---|
| 2614 | * utils.c: New file; code moved from sed.c.
|
---|
| 2615 | * Replace Makefile with Makefile.in and configure.
|
---|
| 2616 | Update README.
|
---|
| 2617 |
|
---|
| 2618 | Tue Mar 26 13:00:48 EST 1991 Jay Fenlason (hack@gnu.ai.mit.edu)
|
---|
| 2619 |
|
---|
| 2620 | * sed.c (match_address) Added a trivial cast for portability.
|
---|
| 2621 |
|
---|
| 2622 | Mon Feb 25 13:23:29 EST 1991 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 2623 |
|
---|
| 2624 | * sed.c Changed 's' command to work with latest version of regex()
|
---|
| 2625 | routines, which mysteriously changed somewhere in there. . .
|
---|
| 2626 | A one-line patch from David Eckelkamp (eckelkamp@mcc.com).
|
---|
| 2627 |
|
---|
| 2628 | Initialize the fastmap in the hopes that it'll make sed faster.
|
---|
| 2629 |
|
---|
| 2630 | Thu Feb 21 13:42:27 EST 1991 Jay Fenlason (hack@ai.mti.edu)
|
---|
| 2631 |
|
---|
| 2632 | * sed.c Change panic to compile with other __STDC__ compilers.
|
---|
| 2633 |
|
---|
| 2634 | Wed Jan 30 10:46:38 EST 1991 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 2635 |
|
---|
| 2636 | * sed.c Changed version number. Made new release.
|
---|
| 2637 |
|
---|
| 2638 | Tue Nov 27 15:34:51 EST 1990 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 2639 |
|
---|
| 2640 | * sed.c (setup_jump) Don't blow chunks if there isn't a label
|
---|
| 2641 | after a b or t command.
|
---|
| 2642 |
|
---|
| 2643 | (main) Don't panic if it a branch command doesn't have
|
---|
| 2644 | a label to branch to.
|
---|
| 2645 |
|
---|
| 2646 | (main) Collect all the -e arguments together and parse them
|
---|
| 2647 | all at once. This way, -e { -e mumble -e } will work.
|
---|
| 2648 |
|
---|
| 2649 | All these small patches from David Schmidt (davids@isc-br.isc-br.com)
|
---|
| 2650 |
|
---|
| 2651 | Tue Sep 11 12:51:37 EDT 1990 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 2652 |
|
---|
| 2653 | * sed.c Changed some function forward declarations to use VOID *
|
---|
| 2654 | instead of char *
|
---|
| 2655 |
|
---|
| 2656 | Mon Jul 16 11:12:54 EDT 1990 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 2657 |
|
---|
| 2658 | * sed.c (ck_malloc) Use malloc(1) instead of malloc(0) if given
|
---|
| 2659 | a request for zero bytes.
|
---|
| 2660 |
|
---|
| 2661 | Tue Jun 5 02:05:37 1990 David J. MacKenzie (djm at albert.ai.mit.edu)
|
---|
| 2662 |
|
---|
| 2663 | * sed.c: Remove excess newlines from calls to panic.
|
---|
| 2664 | Reformat some comments to fit in 79 columns.
|
---|
| 2665 | Base whether to use void * on __STDC__, not __GNU__.
|
---|
| 2666 | (main): Add missing arg when printing usage message.
|
---|
| 2667 | Print usage if given invalid arg.
|
---|
| 2668 | (panic) [__STDC__]: Add missing ", ...".
|
---|
| 2669 | (compile_filename): Print correct error message if glob_filename
|
---|
| 2670 | returns NULL.
|
---|
| 2671 |
|
---|
| 2672 | Thu Apr 5 21:41:12 1990 Jim Kingdon (kingdon at pogo.ai.mit.edu)
|
---|
| 2673 |
|
---|
| 2674 | * sed.c (execute_program, case 'r'): When need to realloc append.text,
|
---|
| 2675 | multiply append.alloc by 2 instead of adding
|
---|
| 2676 | cur_cmd->x.cmd_txt.text_len.
|
---|
| 2677 |
|
---|
| 2678 | Tue Mar 6 15:55:35 EST 1990 Jay Fenlason (hack@ai.mit.edu)
|
---|
| 2679 |
|
---|
| 2680 | * sed.c (compile_regex) Allocate 10 bytes extra space needed by
|
---|
| 2681 | re_compile_pattern.
|
---|
| 2682 |
|
---|
| 2683 | Sun Feb 25 16:32:10 1990 Jim Kingdon (kingdon at pogo.ai.mit.edu)
|
---|
| 2684 |
|
---|
| 2685 | * sed.c (execute_program, case 'l'): Print \00 instead of \0.
|
---|
| 2686 | Print backslash as \\ not \.
|
---|
| 2687 | Print \xx instead of /xx.
|
---|
| 2688 |
|
---|
| 2689 | Thu Feb 1 14:02:28 EST 1990 hack@wookumz
|
---|
| 2690 |
|
---|
| 2691 | * sed.c (memchr) Use () inside inner loop so it will work correctly.
|
---|
| 2692 | A two character patch from Robert A Bruce (rab@allspice.berkeley.edu)
|
---|
| 2693 |
|
---|
| 2694 | Wed Sep 27 18:47:39 EDT 1989 hack@ai.mit.edu
|
---|
| 2695 |
|
---|
| 2696 | * sed.c (compile_regex) New function. When compiling regex,
|
---|
| 2697 | turn ^ into \` and $ into \' so that they won't match on embedded
|
---|
| 2698 | newlines. UN*X pattern matching is a crock.
|
---|
| 2699 | (compile_program, compile_address) call compile_regex.
|
---|
| 2700 |
|
---|
| 2701 | Mon Sep 18 10:15:32 EDT 1989 hack@ai.mit.edu
|
---|
| 2702 |
|
---|
| 2703 | * sed.c (compile_program): define translate as unsigned char * so
|
---|
| 2704 | that y command will work on non-ascii characters.
|
---|
| 2705 |
|
---|
| 2706 | Changed version number to 1.06.
|
---|
| 2707 |
|
---|
| 2708 | Thu Sep 14 15:57:08 EDT 1989 hack@ai.mit.edu
|
---|
| 2709 |
|
---|
| 2710 | * sed.c (compile_program) Let programs use ; to terminate } as
|
---|
| 2711 | well as newline.
|
---|
| 2712 |
|
---|
| 2713 | (read_file) Print an error msg to stderr if it can't open an
|
---|
| 2714 | input file.
|
---|
| 2715 |
|
---|
| 2716 | Thu Mar 23 18:04:46 1989 Randall Smith (randy at apple-gunkies.ai.mit.edu)
|
---|
| 2717 |
|
---|
| 2718 | * Makefile, sed.c: Added new copyright notice.
|
---|
| 2719 |
|
---|
| 2720 | * Makefile: Make distributions which follow the symlinks.
|
---|
| 2721 |
|
---|
| 2722 | hack@ai.mit.edu
|
---|
| 2723 |
|
---|
| 2724 | 1.05 Fixed error in 'r' (now does things in the right order)
|
---|
| 2725 |
|
---|
| 2726 | 1.04 Fixed s/re/rep/[number]
|
---|
| 2727 |
|
---|
| 2728 | 1.03 Fixes from Mike Haertel for regexps that match the
|
---|
| 2729 | empty string, and for Ritchie stdio (non-sticky EOF)
|
---|
| 2730 |
|
---|
| 2731 | 1.02 Fixed 't', 'b', ':' to trim leading spaces and tabs
|
---|
| 2732 | Fixed \\ in replacement of 's' command
|
---|
| 2733 | Added comments
|
---|
| 2734 |
|
---|
| 2735 | 1.01 Added s/re/rep/[digits]
|
---|
| 2736 | added #n as first line of script
|
---|
| 2737 | added filename globbing
|
---|
| 2738 | added 'l' command
|
---|
| 2739 | All in the name of POSIX
|
---|
| 2740 |
|
---|
| 2741 | 1.00 Began (thinking about) distributing this file
|
---|
| 2742 | |
---|
| 2743 |
|
---|
| 2744 | Local Variables:
|
---|
| 2745 | mode: indented-text
|
---|
| 2746 | left-margin: 8
|
---|
| 2747 | version-control: never
|
---|
| 2748 | End:
|
---|