| 2020-01-20 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * run.c (openfile): Set the close-on-exec flag for file |
| and pipe redirections that aren't stdin/stdout/stderr. |
| |
| 2020-01-06 Arnold D. Robbins <arnold@skeeve.com> |
| |
| Minor fixes. |
| * b.c (replace_repeat): Turn init_q back into an int. |
| * lex.c (string): Use \a instead of \007. |
| * tran.c (catstr): Use snprintf instead of sprintf. |
| |
| 2020-01-01 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * tran.c (syminit, arginit, envinit): Free sval member before |
| setting it. Thanks to valgrind. |
| * b.c: Small formatting cleanups in several routines. |
| |
| 2019-12-27 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * b.c (replace_repeat): Fix a bug whereby a{0,3} could match |
| four a's. Thanks to Anonymous AWK fan <awkfan77@mailfence.com> |
| for the report. Also, minor code formatting cleanups. |
| * testdir/T.int-expr: New file. |
| |
| 2019-12-11 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * README: Renamed to ... |
| * README.md: ... this. Cleaned up some as well, |
| including moving to Markdown. |
| |
| 2019-11-08 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * test/T.chem: Use $oldawk instead of hardwiring 'awk'. |
| * test/T.lilly: Remove gawk warnings from output, improves |
| portability. |
| |
| 2019-10-07 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * b.c (fnematch): Change type of pbuf from unsigned char to char. |
| * proto.h (fnematch): Ditto. |
| |
| 2019-10-06 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * lib.c (readrec): Allow RS a regular expression. Imported |
| the code from the NetBSD awk. |
| * b.c (fnematch): New function for implementing the feature. |
| * awk.1: Updated. |
| * main.c (version): Updated. |
| |
| 2019-06-24 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * makefile: Revise to take into account there is no more awktest.tar, |
| add targets 'check' and 'test', and also 'testclean' to clean up |
| after test run. Have 'clean' and 'cleaner' depend upon 'testclean'. |
| |
| 2019-06-23 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * testdir: Extracted from awktest.tar and added to Git. |
| * awktest.tar: Removed. |
| |
| 2019-06-06 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * awk.1: Fix a typo, minor edits. |
| |
| 2019-06-05 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * b.c (relex): Count parentheses and treat umatched right paren |
| as a literal character. |
| * awktest.tar (testdir/T.re): Added a test case. |
| * main.c (version): Updated. |
| |
| 2019-05-29 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * lib.c (isclvar): Remove check for additional '=' after |
| first one. No longer needed. |
| |
| 2019-01-26 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * main.c (version): Updated. |
| |
| 2019-01-25 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * run.c (awkgetline): Check for numeric value in all getline |
| variants. See the numeric-getline.* files in bugs-fixed directory. |
| |
| 2018-08-29 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * REGRESS: Check for existence of a.out. If not there, run |
| make. Enable core dumps for T.arnold system status test |
| to work on MacOS X. |
| |
| 2018-08-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * awktest.tar (testdir/T.expr): Fix test for unary plus. |
| |
| 2018-08-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * REGRESS: Extract tests if necessary, set PATH to include '.'. |
| * regdir/beebe.tar (Makefile): Fix longwrds test to prefix |
| sort with LC_ALL=C. |
| * awktest.tar: Updated from fixed test suite, directory |
| it extracts is now called 'testdir' to match what's in top-level |
| REGRESS script. |
| * regdir: Removed, as Brian wants to keep the test suite in |
| the tar file. |
| |
| 2018-08-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * FIXES, lib.c, run.c, makefile, main.c: Merge from Brian's tree. |
| * REGRESS: New file, from Brian. |
| * awktest.tar: Restored from Brian's tree. |
| |
| 2018-08-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * awkgram.y (UPLUS): New token. In the grammar, call op1() |
| with it. |
| * maketab.c (proc): Add entry for UPLUS. |
| * run.c (arith): Handle UPLUS. |
| * main.c (version): Updated. |
| * bugs-fixed/unary-plus.awk, bugs-fixed/unary-plus.bad, |
| bugs-fixed/unary-plus.ok: New files. |
| |
| 2018-08-10 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * TODO: Updated. |
| * awk.1: Improve use of macros, add some additional explanation |
| in a few places, alphabetize list of variables. |
| |
| 2018-08-08 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * awk.h (Cell): Add new field `fmt' to track xFMT value used |
| for a string conversion. |
| [CONVC, CONVO]: New flag macros. |
| * bugs-fixed/README: Updated. |
| * bugs-fixed/string-conv.awk, bugs-fixed/string-conv.bad, |
| bugs-fixed/string-conv.ok: New files. |
| * main.c (version): Updated. |
| * proto.h (flags2str): Add declaration. |
| * tran.c (setfval): Clear CONVC and CONVO flags and set vp->fmt |
| to NULL. |
| (setsval): Ditto. Add large comment and new code to manage |
| correct conversion of number to string based on various flags |
| and the value of vp->fmt. The idea is to not convert again |
| if xFMT is the same as before and we're doing the same conversion. |
| Otherwise, clear the old flags, set the new, and reconvert. |
| (flags2str): New function. For debug prints and for use from a debugger. |
| |
| 2018-08-05 Arnold D. Robbins <arnold@skeeve.com> |
| |
| Fix filename conflicts in regdir where the only difference was |
| in letter case. This caused problems on Windows systems. |
| |
| * regdir/Compare.T1: Renamed from regdir/Compare.T. |
| * regdir/t.delete0: Renamed from regdir/t.delete. |
| * regdir/t.getline1: Renamed from regdir/t.getline. |
| * regdir/t.redir1: Renamed from regdir/t.redir. |
| * regdir/t.split1: Renamed from regdir/t.split. |
| * regdir/t.sub0: Renamed from regdir/t.sub. |
| * regdir/REGRESS: Adjusted. |
| |
| 2018-08-04 Arnold D. Robbins <arnold@skeeve.com> |
| |
| With scalpel, tweasers, magnifying glass and bated breath, |
| borrow code from the NetBSD version of nawk to fix the years-old |
| bug whereby decrementing the value of NF did not change the |
| record. |
| |
| * lib.c (fldbld): Set donerec to 1 when done. |
| (setlastfld): New function. |
| * proto.h (setlastfld): Add declaration. |
| * run.c (copycell): Make code smarter about flags (from NetBSD code). |
| * tran.c (setfree): New function. |
| * tran.c (setfval): Normalize negative zero to positive zero. |
| If setting NF, clear donerec and call setlastfld(). |
| (setsval): Remove call to save_old_OFS(). If setting OFS, call |
| recbld(). If setting NF, clear donerec and call setlastfld(). |
| |
| As part of the process, revert OFS-related changes of 2018-05-22: |
| |
| * awk.h (saveOFS, saveOFSlen, save_old_OFS): Remove declarations. |
| * lib.c (recbld): Use *OFS instead of saveOFS. |
| * run.c (saveOFS, saveOFSlen, save_old_OFS): Remove. |
| * tran.c (syminit): Remove initialization of saveOFS and saveOFSlen. |
| |
| General stuff that goes along with all this: |
| |
| * bugs-fixed/README: Updated. |
| * bugs-fixed/decr-NF.awk, bugs-fixed/decr-NF.bad, |
| bugs-fixed/decr-NF.ok: New files. |
| * main.c (version): Updated. |
| * regdir/README.TESTS: Fix awk book title. |
| * regdir/T.misc: Revise test to match fixed code. |
| * run.c (format): Increase size of buffer used for %a test. (Unrelated |
| to NF or OFS, but fixes a compiler complaint.) |
| |
| 2018-06-07 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * regdir/beebe.tar: Fix longwrds.ok so that the test will pass. |
| The file was incorrectly sorted. |
| |
| 2018-06-06 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * regdir/T.lilly: Fix the bug again in the second instance |
| of the code. Thanks to BWK for pointing this out. |
| |
| 2018-05-31 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * regdir/T.lilly: Fix a syntax error and ordering bug |
| in creating the 'foo' file. |
| |
| 2018-05-23 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * awk.1: Remove standalone 'awk' at the top of file, it messed up |
| the formatting. Arrange built-in variable list in alphabetical |
| order. |
| |
| 2018-05-23 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * main.c (version): Add my email address and a date so that |
| users can tell this isn't straight BWK awk. |
| * README.md: Minor updates. |
| * TODO: Updated. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| Add POSIX-required formats %a and %A. |
| |
| * run.c (format): Check for %a support in C library. If there, |
| allow %a and %A as valid formats. |
| * TODO: Updated. |
| * bugs-fixed/README: Updated. |
| * bugs-fixed/a-format.awk, bugs-fixed/a-format.bad, |
| bugs-fixed/a-format.ok: New files. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * FIXES: Restored a line from a much earlier version that |
| apparently got lost when the dates were reordered. |
| * TODO: Updated. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * README.md: New file. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * regdir/echo.c, regdir/time.c: Minor fixes to compile without |
| warning on current GCC / Linux. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * TODO: New file. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * makefile (gitadd, gitpush): Remove these targets. They |
| should not be automated and were incorrect for things that |
| would be done regularly. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| Fix nawk so that [[:blank:]] only matches space and tab instead |
| of any whitespace character, originally made May 10, 2018. |
| See bugs-fixed/space.awk. |
| |
| This appears to have been a thinko on Brian's part. |
| |
| * b.c (charclasses): Use xisblank() function for [[:blank:]]. |
| * bugs-fixed/README: Updated. |
| * bugs-fixed/space.awk, bugs-fixed/space.bad, |
| bugs-fixed/space.ok: New files. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * .gitignore: New file. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| Fix nawk to provide reasonable exit status for system(), |
| a la gawk, originally made March 12, 2016. See |
| bugs-fixed/system-status.awk. |
| |
| * run.c (bltin): For FSYSTEM, use the macros defined for wait(2) |
| to produce a reasonable exit value, instead of doing a floating-point |
| division by 256. |
| * awk.1: Document the return status values. |
| * bugs-fixed/README: Updated. |
| * bugs-fixed/system-status.awk, bugs-fixed/system-status.bad, |
| bugs-fixed/system-status.ok: New files. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| Bug fix with respect to rebuilding a record, originally |
| made August 19, 2014. See bugs-fixed/ofs-rebuild.awk. |
| |
| * awk.h (saveOFS, saveOFSlen): Declare new variables. |
| * lib.c (recbld): Use them when rebuilding the record. |
| * run.c (saveOFS, saveOFSlen): Define new variables. |
| (save_old_OFS): New function to save OFS aside. |
| * tran.c (syminit): Initialize saveOFS and saveOFSlen. |
| (setsval): If setting a field, call save_old_OFS(). |
| * bugs-fixed/README, bugs-fixed/ofs-rebuild.awk, |
| bugs-fixed/ofs-rebuild.bad, bugs-fixed/ofs-rebuild.ok: New files. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * makefile (YACC): Use bison. |
| |
| 2018-05-22 Arnold D. Robbins <arnold@skeeve.com> |
| |
| * ChangeLog: Created. |
| * regdir: Created. Based on contents of awktest.a. |
| * .gitattributes: Created, to preserve CR LF in regdir/t.crlf. |
| * awktest.a: Removed. |
| * regdir/T.gawk, regdir/T.latin1: Updated from awktest.tar. |
| * awktest.tar: Removed. |