aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2011-06-23 09:47:27 +0300
committerArnold D. Robbins <arnold@skeeve.com>2011-06-23 09:47:27 +0300
commit8df79778d219e8e7e0552a7801d8332b43b74a7b (patch)
tree886dc05e2df15874cf9f19eb68895b89c7dbf909
parenta8eb83702d65cb92efa5555a8e8eb70a295e8a3b (diff)
downloadegawk-8df79778d219e8e7e0552a7801d8332b43b74a7b.tar.gz
egawk-8df79778d219e8e7e0552a7801d8332b43b74a7b.tar.bz2
egawk-8df79778d219e8e7e0552a7801d8332b43b74a7b.zip
Update versions and ChangeLogs, make tarball!
-rw-r--r--ChangeLog9888
-rw-r--r--ChangeLog.09885
-rw-r--r--README_d/ChangeLog11
-rw-r--r--README_d/ChangeLog.08
-rw-r--r--awklib/ChangeLog183
-rw-r--r--awklib/ChangeLog.0180
-rwxr-xr-xconfigure20
-rw-r--r--configure.ac4
-rw-r--r--doc/ChangeLog1035
-rw-r--r--doc/ChangeLog.01032
-rw-r--r--extension/ChangeLog94
-rw-r--r--extension/ChangeLog.091
-rw-r--r--m4/ChangeLog183
-rw-r--r--m4/ChangeLog.0180
-rw-r--r--missing_d/ChangeLog174
-rw-r--r--missing_d/ChangeLog.0171
-rw-r--r--pc/ChangeLog683
-rw-r--r--pc/ChangeLog.0680
-rw-r--r--po/ChangeLog130
-rw-r--r--po/ChangeLog.0127
-rw-r--r--po/da.gmobin49015 -> 49015 bytes
-rw-r--r--po/da.po6
-rw-r--r--po/de.gmobin50558 -> 50558 bytes
-rw-r--r--po/de.po6
-rw-r--r--po/es.gmobin51041 -> 51041 bytes
-rw-r--r--po/es.po6
-rw-r--r--po/fi.gmobin51689 -> 51689 bytes
-rw-r--r--po/fi.po6
-rw-r--r--po/fr.gmobin53350 -> 53350 bytes
-rw-r--r--po/fr.po6
-rw-r--r--po/gawk.pot8
-rw-r--r--po/it.gmobin44568 -> 44568 bytes
-rw-r--r--po/it.po6
-rw-r--r--po/ja.gmobin55606 -> 55606 bytes
-rw-r--r--po/ja.po6
-rw-r--r--po/nl.gmobin49331 -> 49331 bytes
-rw-r--r--po/nl.po6
-rw-r--r--po/pl.gmobin51195 -> 51195 bytes
-rw-r--r--po/pl.po6
-rw-r--r--po/sv.gmobin48763 -> 48763 bytes
-rw-r--r--po/sv.po6
-rw-r--r--posix/ChangeLog177
-rw-r--r--posix/ChangeLog.0174
-rw-r--r--test/ChangeLog1788
-rw-r--r--test/ChangeLog.01785
-rw-r--r--version.c2
-rw-r--r--vms/ChangeLog702
-rw-r--r--vms/ChangeLog.0699
48 files changed, 15108 insertions, 15046 deletions
diff --git a/ChangeLog b/ChangeLog
index af6bd99f..47482a4c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9885 +1,7 @@
-Mon Jun 20 20:33:26 2011 Arnold D. Robbins <arnold@skeeve.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * dfa.c (dfaanalyze): Allocate the right number of leaves to
- avoid crashes. Thanks to Jim Meyering.
-
-Mon Jun 20 20:22:35 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (setbit_c, setbit_case_fold_c): Compare btowc result against
- WEOF. Thanks to Eli Zaretskii for pointing out the problem.
-
-Mon Jun 20 20:22:26 2011 Pat Rankin <rankin@pactechdata.com>
-
- * dfa.c (addtok_wc): enclose prototype within #if MBS_SUPPORT.
-
-Fri Jun 17 11:09:22 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.86: Final beta test tar ball for 4.0.
-
-Fri Jun 17 10:55:27 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Implement Rational Range Interpretation (RRI) directly in code.
-
- * regex.h [RE_RANGES_IGNORE_LOCALES]: Remove macro and its use.
- * dfa.c (parse_bracket_exp): Remove use of RE_RANGES_IGNORE_LOCALES
- and just do it in code.
- (hard-locale.h): Remove include.
- (hard_LC_COLLATE): Remove variable and its uses.
- * re.c (resetup): Remove use of RE_RANGES_IGNORE_LOCALES.
- * regcomp.c (build_range_exp): Remove use of RE_RANGES_IGNORE_LOCALES
- and just do it in code. Remove cmp_buf array; it's no longer needed.
- * Makefile.am (base_sources): Remove hard_locale.h and hard_locale.c.
- * hard_locale.h, hard_locale.c: Removed from dist.
-
-Sun Jun 12 23:43:06 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (resetup): Always turn on RE_RANGES_IGNORE_LOCALES.
- Add justifying comment with URLs for the relevant portions of
- POSIX. Thanks to Paul Eggert for pointing out the happy change
- to the rules and supplying the URLs.
-
-Wed Jun 8 22:41:30 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (build_range_exp): Add check for RE_NO_EMPTY_RANGES
- from GNULIB regcomp.c, courtesy of GNU grep.
-
-Wed Jun 8 22:10:03 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Sync with GNU grep.
-
-Sun Jun 5 21:49:30 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.85: Fourth beta test tar ball for 4.0.
-
-Sun Jun 5 21:39:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (fpat_parse_field): Bug fix. Thanks to
- "Radoulov, Dimitre" <cichomitiko@gmail.com> for pointing
- out the problem.
-
-Fri Jun 3 10:39:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (build_range_exp): Make syntax the first argument,
- for compatibility with gnulib version of the file.
-
-Wed Jun 1 06:29:27 2011 Pat Rankin <rankin@pactechdata.com>
-
- * re.c (check_bracket_exp): Fix typo.
-
-Tue May 31 23:01:00 2011 John Haque <j.eh@mchsi.com>
-
- * re.c (check_bracket_exp): Use mem* routines instead of str*
- for searching.
- * main.c (arg_assign): Disallow builtin or user-defined function
- as the name of a variable.
- * awkgram.y (check_special): Rework so can be called from
- arg_assign.
-
-Tue May 31 22:23:41 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- In order to attain the goal of having ranges act like they are
- always in the C locale, bit the bullet and did the work in
- the regex and dfa engines. The pre-processing routine was not
- handling too many cases that a full regexp parser would catch.
-
- * regex.h [RE_RANGES_IGNORE_LOCALES]: New syntax bit.
- (RE_SYNTAX_GNU_AWK): Use it.
- * dfa.c (parse_bracket_exp): If the RE_RANGES_IGNORE_LOCALES
- is set, ignore locales when building a range.
- * re.c (expand_range): Remove function and declaration.
- (add_char): Remove function and declaration.
- (make_regexp): Remove use of expand_range.
- (resetup): Add RE_RANGES_IGNORE_LOCALES if --traditional.
- * regcomp.c (build_range_exp): Add syntax variable as last argument.
- Add code to check for RE_RANGES_IGNORE_LOCALES and do the right thing.
- Adjust all calls.
-
-Sun May 29 22:48:41 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (expand_range): Handle cases where expanded range
- includes '\\' (and ']'). Thanks to Juergen Daubert <jue@jue.li>.
- Fatal error if end point is below start point ([z-a]),
- thanks to John Haque. Don't repeat the last character in
- the expansion. Thanks to Arnold Robbins.
-
-Fri May 27 10:01:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.84: Third beta test tar ball for 4.0.
-
-Thu May 26 22:10:08 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (get_field): Enhance logic for setting NF if we're
- using FPAT to parse fields. Can end up with weird cases. Thanks
- to Pat Rankin for pointing them out.
-
-Mon May 23 22:06:13 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y: Allow newline after comma in range patterns,
- per POSIX. Thanks to discussion in comp.lang.awk. (!!!)
-
-Mon May 23 22:02:46 2011 John Haque <j.eh@mchsi.com>
-
- * ext.c (get_actual_argument): Change argument type from
- Node_var_new to Node_var when used as a scalar.
-
-Sun May 22 11:56:40 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (varinit): Give FPAT a reasonable default value.
- * field (get_field): Adjust test for at end of record to >=;
- fpat_parse_field can go beyond when matching null regexps.
- Thanks to Pat Rankin.
-
-Fri May 20 11:00:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.h (__attribute_warn_unused_result__): Always
- ifdef out. Bleah.
-
-Thu May 19 17:13:18 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.83: Second beta test tar ball for 4.0.
-
-Thu May 19 16:47:19 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (dump_vars): Fix warning message. Thanks to Pat Rankin.
- * main.c (usage): No space allowed after -d and -p. Also thanks
- to Pat Rankin.
-
-Thu May 19 16:34:04 2011 Pat Rankin <rankin@pactechdata.com>
-
- * regex_internal.h (__attribute_warn_unused_result__): Define with
- empty expansion for !__GNUC__ configuration.
-
-Wed May 18 22:13:18 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.82: Beta test tar ball for 4.0, we hope!
-
-Wed May 18 21:47:54 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (PIPES_SIMULATED): Simplify the case where PIPES_SIMULATED
- is true but using temporary files - that code not needed anymore.
- * regcomp.c, regex.h, regex_internal.c, regex_internal.h,
- regexec.c: Sync with GLIBC. Why not.
-
-Mon May 16 17:55:25 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.c: Regenerated using bison 2.5.
-
-Sat May 14 22:25:50 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (nextfile): Use `in_array' in main loop to see if element
- of ARGV exists, instead of using `assoc_lookup'. The latter creates
- the element! A day one bug!
- * dfa.c (parse_bracket_exp): For z/OS init pattern manually.
-
-Mon May 9 16:30:49 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (sort_up_value_type): Remove unused variable ret.
- (do_delete): Initialize local variables to silence warnings.
- Thanks to Michal Jaegermann.
-
-Mon May 9 15:07:29 2011 Corinna Vinschen <vinschen@redhat.com>
-
- * awk.h: Remove cygwin code for libsigsegv.
-
-Sun May 8 20:38:03 2011 John Haque <j.eh@mchsi.com>
-
- * eval.c (r_interpret): In case Op_sub_array, store only the
- subarray index as 'vname'.
- * array.c (make_aname): Redone for dynamic computation of
- a subarray actual 'vname'.
- (array_vname): Use make_aname() for (sub)array name.
- (asort_actual): Performance optimization for asort(a).
-
-Sun May 8 20:29:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * debug.c (print_array): Sort in order of string indices, per
- request from John Haque.
- * array.c (sort_up_value_number): Use string value to provide
- ordering when numeric values are equal. Ensures that tests come
- out OK on different systems.
-
-Sun May 8 20:27:27 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Sync with GNU grep.
- * regex.h: Sync with GLIBC in preparation for submitting updates
- back.
-
-Thu May 5 21:22:44 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_interpret): PROCINFO sorting only takes effect
- if not do_posix.
-
-Wed May 4 23:31:14 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Move array sorting to using predefined strings, add value sorting
- by type of assignment.
-
- * array.c (sort_up_value_type, sort_down_value_type): New routines.
- (asort_actual): Pass string value to assoc_list, not NODE *.
- Make sure indices of new arrays have numeric value set also.
- (sort_up_value_number): Don't break the tie based on string value.
- (sort_selection): Removed.
- (assoc_list): Third arg is string constant. Add name to table of
- functions. Linear search it.
- * awk.h (assoc_list): Fix declaration.
- * debug.c (print_array): And use of assoc_list.
- * eval.c (r_interpret): Ditto.
-
-Wed May 4 23:06:17 2011 John Haque <j.eh@mchsi.com>
-
- * eval.c (setup_frame): Handle a Node_var in stack. Fixes
- a problem when a Node_var_new as param becomes Node_var during
- expresssion evaluation for a subsequent param.
-
-Wed May 4 23:04:06 2011 John Haque <j.eh@mchsi.com>
-
- Fix the problem (crash) with disappearing array argument when
- it is a subarray of another deleted array argument.
-
- * awk.h (struct exp_node): Nuke unused field sub.nodep.number.
- New field sub.nodep.rn.
- (parent_array): New definition for sub.nodep.rn to keep track
- of the parent of a subarray.
- * awkgram.y (mk_symbol): Initialize parent_array to NULL.
- * eval.c (r_interpret): In the case Op_sub_array, assign
- parent_array.
- * array.c (get_array): Initialize parent_array to NULL when
- a Node_var_new becomes a Node_var_array.
- (assoc_find): Add a fourth argument for the previous node
- of the returned bucket.
- (in_array, assoc_lookup): Adjust calls to assoc_find().
- (adjust_fcall_stack): New routine to change a soon-to-be deleted
- subarray parameter in the function call stack to a local array.
- (do_delete): Simplify code, remove recursive usage. Call
- adjust_fcall_stack() where appropriate.
- (do_delete_loop): Call adjust_fcall_stack() before clearing the
- array.
- (asort_actual): Don't accept an array and its subarray as
- arguments for asort() or asorti().
- (asort_actual, dup_table): For asort(), appropriately assign
- parent_array when creating the result array.
- * field.c (do_split, do_patsplit): An array and its subarray not
- accepted for the second and the fourth arguments. Remove
- unnecessary dupnode of the field seperator node.
-
- Unrelated:
- * awkgram.y (LEX_DELETE, simple_variable): Change type argument
- from Node_var_array to Node_var_new for calls to variable().
- * io.c (devopen): Fix parsing GAWK_MSEC_SLEEP env variable.
-
-Mon May 2 23:44:34 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (parse_bracket_exp): Sync with GNU grep, since we
- now require C 90, go ahead and put non-constant values into
- the array initializers.
-
-Mon May 2 23:37:09 2011 Corinna Vinschen <vinschen@redhat.com>
-
- * awk.h (small): Undef after include of <sigsegv.h> to compile
- builtin.c on Cygwin.
-
-Fri Apr 29 12:29:56 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Sync with GNU grep, mainly typos in comments.
-
-Fri Apr 29 12:13:32 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (inetfile): Change ifdef to ifndef for have getaddrinfo.
- Ooops.
-
-Fri Apr 29 11:49:38 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Per Pat Rankin, remove code related to GFMT_WORKAROUND and VAXCRTL.
-
- * builtin.c (sgfmt): Nuked.
- (format_tree): Removed code related to GFMT_WORKAROUND and VAXCRTL.
- * node.c (format_val): Revise comment.
-
-Fri Apr 29 11:33:08 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (NUMIND): New flag, indicates numeric value of an
- array index is current.
- * array.c (awk_hash): Remove code for VAXC, it's no longer
- needed. Per Pat Rankin.
- (assoc_lookup): Only assign the numeric value if it's available.
- (do_delete): Add comment about free_subs calling force_string.
- (sort_force_index): Use NUMIND.
-
-Fri Apr 29 10:15:24 2011 John Haque <j.eh@mchsi.com>
-
- * builtin.c: Relocate all codes from awkprintf.h. Restore
- format_tree.
- * debug.c (do_print_f): Adjust appropriately. Install fatal trap
- for format_tree.
- * Makefile.am (base_sources): Remove awkprintf.h.
-
- * array.c (assoc_list): Avoid possible crash; Remove unneeded
- initialization of pre_func.
-
-Wed Apr 27 22:31:23 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (ahash_dupnode): Merged into dupnode in node.c, change uses.
- * array.c (ahash_unref): Merged into unref in node.c, change all uses.
- * node.c (dupnode): Revised to support Node_ahash.
- (unref): Ditto.
-
- Lots of code clean up in array.c:
-
- * array.c (AVG_CHAIN_MAX): Made unsigned.
- (array_init): Use strtoul to convert value instead of doing it
- manually.
- (array_vname): Nuke code that could limit length of name. It
- was never used.
- (concat_exp): Make len unsigned, clean up the calculation.
- (assoc_lookup): Set ahname_num in the index at time of element
- creation.
- (dup_table): Copy ahname_num also.
- Other minor cleanups after code review.
-
-Sun Apr 24 15:39:19 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * NEWS.0: Moved all pre-4.0 news to here.
- * NEWS: Shortened.
- * Makefile.am (EXTRA_DIST): Add NEWS.0.
-
-Sun Apr 24 12:43:49 2011 John Haque <j.eh@mchsi.com>
-
- * array.c (sort_user_func): Fix return value to match the
- documentaion.
- (sort_selection): Make user-specified comparison function with
- the same name override default "unsorted" specification.
-
-Fri Apr 22 16:05:27 2011 John Haque <j.eh@mchsi.com>
-
- * array.c (sort_user_func): New routine to handle user-defined
- quicksort comparison function.
- (assoc_list): Adjust for user-defined comparison function.
-
-Fri Apr 22 09:18:16 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (awk_hash): Force results into 32 bits for consistency
- across platforms. Keeps the test suite happy. This may turn out
- to be a bad idea in the long run.
-
-Mon Apr 18 10:18:26 2011 John Haque <j.eh@mchsi.com>
-
- * array.c (assoc_list): New function to construct, and optionally
- sort, a list of array elements.
- (asort_actual): Use the new function to sort array elements.
- (assoc_sort_inplace, assoc_from_list, merge_sort, merge): Nuked.
- (sort_selection): Simplify handling of error and warning messages.
- (sorted_in, sort_match): Nuked, related code in sort_selection() and
- assoc_list().
- (sort_ignorecase, sort_up_index_ignrcase, sort_down_index_ignrcase,
- sort_maybe_numeric_index, sort_cmp_nodes, cmp_func, sort_up_value,
- sort_down_value): Nuked. Ignorecase handling done in the corresponding
- non-ignorecase versions.
- (cmp_string): New routine for string comparisons.
- (sort_up_value_string, sort_down_value_string, sort_up_value_number,
- sort_down_value_number, sort_force_index_number,
- sort_force_value_number, sort_force_value_string): New routines.
- * awk.h (struct exp_node): New field sub.hash.num to store the
- numeric value of an array index.
- (ahname_num): New define.
- (SORT_CTXT): New typedef.
- * awkgram.y (tokentab): Accept three args for asort() and asorti().
- (snode): Adjust for the extra args.
- * eval.c (r_interpret): In case Op_arrayfor_init, call assoc_list()
- for a list of array elements.
- * debug.c (print_array): Call assoc_list() for a sorted list of array
- elements.
-
-Wed Apr 13 10:17:37 2011 John Haque <j.eh@mchsi.com>
-
- * builtin.c (do_strftime): Make the third argument to strftime
- really work.
- * io.c (redirect): Do not free `rp' after failure to open socket
- in redirect_twoway. Fixes a double-free memory error.
-
-Thu Apr 7 21:38:08 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (merge): Use sort_cmp_nodes for asort/asorti.
- See test/arraysort.awk test 1.
-
-Thu Apr 7 10:48:21 2011 Pat Rankin <rankin@patechdata.com>
-
- * array.c (sort_cmp_nodes): New routine. Unlike cmp_nodes, numbers
- are less than strings instead of being formatted and then compared.
- (sort_up_value): Use it.
-
-Sun Apr 3 22:18:26 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * README, FUTURE: Minor edits.
-
-Fri Apr 1 11:53:54 2011 Pat Rankin <rankin@patechdata.com>
-
- * array.c (sort_up_index_number): Fix the NODE arguments passed to
- sort_up_index_string() when a tie breaker is needed.
-
-Fri Apr 1 11:49:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Change ISATTY macro to os_isatty function.
-
- * awk.h (ISATTY): Remove definition.
- (os_isatty): Add declaration.
- * debug.c, io.c, main.c: Change all calls.
-
-Thu Mar 31 22:57:36 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Checklist: Updated. This is a git-only file.
- * POSIX.STD: Revised some.
-
-Tue Mar 29 20:52:38 2011 John Haque <j.eh@mchsi.com>
-
- * awkgram.y (LEXT_NEXT): Don't issue an error message if the next
- statement is in a function (rule = 0).
-
- Always resolve the jump target for an exit statement at run-time.
- This fixes a bug when the statement occurs in a function.
-
- * awk.h: New defines target_atexit and target_end.
- * awkgram.y (LEX_EXIT): Initilize the jump targets.
- * eval.c (r_interpret): Use current rule to choose the jump target
- for Op_K_exit.
- * debug.c (print_instruction): Adjust case Op_K_exit.
-
-Tue Mar 29 20:45:49 2011 Pat Rankin <rankin@patechdata.com>
-
- Move the code to support sorting `for (index in array)' from
- eval.c to array.c, and implement several additional orderings.
-
- * array.c (comp_func, sorted_in, sort_ignorecase,
- sort_up_index_ignrcase, sort_down_index_ignrcase): Move from eval.c.
- (sort_up_index_string, sort_down_index_string): Move from eval.c
- and rename from *_str to *_string.
- (sort_selection, sort_match, sort_maybe_numeric_index,
- sort_up_index_number, sort_down_index_number,
- sort_up_value, sort_down_value): New routines.
- * eval.c (sort_&c): Move to array.c.
- (r_interpret: case Op_arrayfor_init): Call sort_maybe_numeric_index
- before and after qsort.
- * awk.h (qsort_compfunc): New typedef.
- (sorted_in, sort_maybe_numeric_index): Declare.
-
-Fri Mar 25 13:15:36 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Move libsigsegv portability checks to here from main.c.
- * eval.c (fcall_list, fcall_count): Move definitions to here
- from main.c.
- * io.c (do_find_source): Check against NULL in for loop.
- * main.c: Lots of cleanup. Move some things out to other files,
- add comments to some variable definitions.
- (enum asgntype): To assign_type
- (main): Remove decls of getopt variables, clean up comments.
- Use emalloc and efree for libsigsegv stack. Remove check for SCCS
- leading magic characters.
- (add_preassign): Change allocassigns to alloc_assigns.
- (init_locale): Change strdup calls to estrdup.
- (save_argv): Make the routine static.
- * version.in (version_string): Remove leading 4 SCCS magic characters.
-
-Wed Mar 2 08:15:02 2011 John Haque <j.eh@mchsi.com>
-
- * array.c (asort_actual): Handle the case when the same array
- is used as the source and destination.
- * field.c (do_split): Make it fatal if attempting to use the same
- array for both second and fourth arguments.
- (do_patsplit): Ditto.
-
-Sun Feb 27 08:01:04 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Update copryright in all relevant files.
-
-Sat Feb 26 21:54:07 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (sorted_in): Revise text of lint warning.
-
-Fri Feb 25 17:34:14 2011 Pat Rankin <rankin@patechdata.com>
-
- * eval.c (sorted_in): Remove incorrect unref() call.
-
-Wed Feb 23 21:48:20 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Free extra_stack, to make valgrind happier.
-
-Tue Feb 22 12:04:09 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (UPDATE_YEAR): Move to 2011. Fix copyright.
-
-Tue Feb 15 17:11:26 2011 Pat Rankin <rankin@pactechdata.com>
-
- * eval.c (sorted_in, sort_up_index_str, sort_down_index_str,
- sort_up_index_ignrcase, sort_down_index_ignrcase, sort_ignorecase):
- New functions to sort arrays for `for (index in array)' statements.
- (r_interpret: case Op_arrayfor_init): Call sorted_in().
-
-Wed Feb 16 07:12:50 2011 John Haque <j.eh@mchsi.com>
-
- Fix line numbers in the lint, warning and error messages issued
- by the parser.
-
- * awkgram.y (lintwarn_ln, warning_ln, error_ln): New local versions,
- each accepts an additional line number argument.
- (print_included_from): New function to seperate 'Included from ..'
- message from yyerror. Use it in yyerror, and in the new functions.
- (grammar): Use the local versions for messages.
- (add_srcfile, include_source, dup_parms, func_install, param_sanity,
- mk_binary, add_lint): Ditto.
- (dup_params, include_source): Adjust arguments to pass line number.
- * awk.h: New definition ATTRIBUTE_PRINTF_2.
-
- * awkgram.y (yylex): New variable warntab. Use it to issue only one
- warning for the same non-standard special token in source.
- (parse_program): Avoid spurious warnings. Don't call check_funcs if
- yyparse aborts prematurely.
-
-Mon Feb 14 08:03:41 2011 John Haque <j.eh@mchsi.com>
-
- * awkgram.y (regexp): Don't use tokstart in lint warning, it isn't
- `\0' terminated.
- (grammar): Copy update and assign routines from relevant variables into
- instructions to avoid extra pointer dereferencing at run-time.
- * awk.h (update_var, assign_var): new definitions.
- * eval.c (r_interpret): Adjust cases Op_var_assign and Op_var_update.
-
-Sun Feb 13 20:22:47 2011 Eli Zaretskii <eliz@gnu.org>
-
- * awkgram.y (add_srcfile):
- * debug.c (source_find): Pass `path' and `src' to files_are_same.
- * gawkmisc.c [__DJGPP__ || __MINGW32__]: Include pc/gawkmisc.pc,
- for consistency with __EMX__ and pc/Makefile.
- * debug.c (interpret, initialize_pager, prompt_continue)
- (set_gawk_output): Use ISATTY instead of isatty.
- * io.c (redirect, iop_alloc): Same.
- * main.c (main): Same.
- * awk.h (ISATTY): Trivial definition, if not defined elsewhere.
-
-Sun Feb 13 20:16:04 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (check_funcs): Update warning about never called to say
- "never called directly" since it could be called indirectly.
-
-Sun Feb 13 07:12:50 2011 John Haque <j.eh@mchsi.com>
-
- * profile.c (pprint): In case Op_indirect_func_call, pop off
- indirect var after function parameters.
- Thanks to Hermann Peifer <peifer@gmx.eu> for the bug report.
- * array.c (do_delete): Always free an empty sub-array name and node.
- * ChangeLog: Fix typos.
-
-Fri Feb 11 10:26:25 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (remad_std_file): Close oldfd first, in case we've
- run out of fd and do dup2 if the newfd isn't what we were
- looking for. Thanks to Hermann Peifer <peifer@gmx.eu> for
- the bug report.
-
-Thu Feb 10 21:31:36 2011 Andreas Buening <andreas.buening@nexgo.de>
-
- * main.c (load_procinfo): Fix warning about unsed variables if we
- don't have multiple groups.
- * protos.h: Move decls for many standard functions here if
- they aren't in the header files (OS/2) and bracket inside
- #ifndef STDC_HEADERS.
- * io.c (devopen): Remove decl of strtoul.
- * field.c (set_FIELDWIDTHS): Same.
- * awk.h: Always include protos.h.
-
-Tue Feb 8 22:46:22 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c, builtin.c, eval.c: Equalize message strings and
- fix a typo. Thanks to Benno Schulenberg <bensberg@justemail.net>.
-
-Mon Feb 7 11:23:33 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (next_sourcefile): Comment out assertion that
- lexeof is true; causes core dump on user typos of bad
- characters which previous versions did not do. Thanks to
- Pat Rankin for the report.
-
- * re.c (expand_range): Allow for ^ as first character
- inside range. Thanks for Nelson Beebe for the bug report.
-
-Fri Feb 4 10:28:19 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * README.cvs: Udpated.
- * Checklist: New file for storage in the git repository.
-
-Wed Feb 2 20:34:41 2011 Corinna Vinschen <vinschen@redhat.com>
-
- * awkgram.y (free_bc_internal): Remove unused variable.
-
-Tue Feb 1 23:13:10 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * bootstrap.sh: No need to find aclocal.m4, just touch it.
-
-Tue Feb 1 23:05:51 2011 Corinna Vinschen <vinschen@redhat.com>
-
- Make values of ctype macros into unsigned char to fix
- warnings found on Cygwin / Newlib.
-
- * array.c (array_init): Add cast.
- * awkgram.y: Ditto.
- * awkprintf.h: Ditto.
- * builtin.c (sub_common, nondec2awknum): Ditto.
- * command.y: Ditto.
- * eval.c (fmt_ok): Ditto.
- * ext.c (make_builtin): Ditto.
- * main.c (main, arg_assign): Ditto.
- * re.c (check_bracket_exp): Ditto.
- * node.c (r_force_number, parse_escape): Ditto.
- (dump_wstr): Add unused attribute (unrelated).
-
-Tue Feb 1 23:01:40 2011 John Haque <j.eh@mchsi.com>
-
- Fix switch debugging.
-
- * awkgram.y (LEX_SWITCH, case_statements, case_statement,
- case_value): Linearize instructions to facilitate debugging.
- (switch_body): Removed.
- (yylex): Add LEX_CASE in special token processing.
- (free_bc_internal): Remove case Op_K_switch.
- * awk.h (OPCODE): Remove opcode Op_case_list.
- * eval.c (r_interpret): Remove Op_K_switch. Add case
- Op_K_case to handle switch.
- Add cases Op_K_do, Op_K_while, Op_K_for, Op_K_arrayfor, Op_K_switch
- and Op_K_default as no-ops, needed for pgawk.
- * debug.c (print_instruction): Remove case Op_K_switch,
- add case Op_K_case instead.
-
- Unrelated:
- * awkgram.y (case_statements): As case values, "abc" and /abc/
- no longer considered as duplicates.
-
- Cleanup grammar and run-time code for switch and loops.
- Jump targets for break and continue are now fixed, and known
- at parse time. See ChangeLog entry dated Oct 21, 2010.
-
- * awk.h (OPCODE): Remove Op_push_loop and Op_pop_loop.
- (loop_count): Remove definition.
- * awkgram.y (fix_break_continue): Change calling parameters to
- instruction list, break and continue targets. Adjust code.
- (LEX_DO, LEX_WHILE, LEX_SWITCH, LEX_FOR): Simplify grammar. Use
- Op_no_op as target for break. Adjust call to fix_break_continue.
- (mk_for_loop): Ditto.
- * eval.c (r_interpret): Nuke cases Op_push_loop and Op_pop_loop.
- Simplify Op_K_break and Op_K_continue. Remove declaration of in_loop
- and all loop detection code thereof.
- * debug.c (pre_execute, post_execute): Adjust declarations and code.
- (print_instruction): Nuke cases Op_push_loop and Op_pop_loop.
- * eval.c (r_interpret): Adjust calls to pre_execute and post_execute.
- * profile.c (pprint): Adjust cases Op_K_for, Op_K_do, Op_K_while,
- Op_K_switch and Op_K_arrayfor. Add cases Op_K_case and Op_K_default.
- Remove Op_push_loop and Op_pop_loop.
-
- Unrelated cleanup:
- * awkgram.y (mk_condition): Don't include Op_K_if, Op_K_else and
- Op_cond_exp if not profiling.
-
-Tue Feb 1 10:20:02 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_interpret): Change magic string for array sorting.
-
-Sun Jan 30 21:49:53 2011 John Haque <j.eh@mchsi.com>
-
- Add `isarray' built-in function.
-
- * awk.h (enum opcodeval): Op_push_arg: new opcode.
- (do_isarray): Add declaration.
- * awkgram.y (tokentab): Add new entry for `isarray' function.
- (snode): Add handling for it.
- * builtin.c (do_isarray): New function.
- (do_length): Die if posix and get an array argument.
- * debug.c (print_instruction): Handle Op_push_arg.
- * profile.c (pprint): Likewise.
- * eval.c (optypes, r_interpret): Likewise.
-
-Sun Jan 30 21:13:01 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * hard-locale.h: Synced to GNU grep.
- * hard-locale.c: New file, brought in from GNU grep.
- * Makefile.am (base_sources): Add hard-locale.c.
- * dfa.h: Sync as much as possible to GNU grep.
- * dfa.c: Sync as much as possible to GNU grep.
- * builtin.c (do_strftime): Remove unneeded variable.
-
-Thu Jan 27 22:52:54 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (comp_func): Add declaration.
- * debug.c (comp_func): Make not static, and move to ...
- * eval.c (comp_func): ... here.
- (r_interpret): Add array sorting if magic index is
- set in PROCINFO.
-
-Thu Jan 27 22:12:00 2011 Corinna Vinschen <vinschen@redhat.com>
-
- * Makefile.am: Remove $(EXEEXT) from 'awk' symlink.
-
-Thu Jan 27 21:21:13 2011 John Haque <j.eh@mchsi.com>
-
- * eval.c (r_interpret): When in BEGINFILE or ENDFILE, add check for
- `getline var < file' in cases Op_K_getline_redir and Op_K_getline.
-
- * awkgram.y (constant_fold): Code cleanups. Fix bug in the code for
- string concatenation.
-
- * configure.ac: Remove unneeded extra call to AC_LANG.
-
-Thu Jan 27 15:00:42 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c: Fix up some comments.
- * io.c (remap_std_file): New function.
- (iop_close): Use it.
-
-Mon Jan 24 22:14:21 2011 Andreas Buening <andreas.buening@nexgo.de>
-
- * debug.c: Bracket variables used with readline in #ifdef.
- * dfa.c (add_utf8_anychar): Move inside ifdef.
-
-Mon Jan 24 22:05:26 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (make_regexp): Add separate variable for dfa syntax.
- General formatting cleanup.
- (research): General formatting cleanup.
- (refree): Remove out of date comment.
- (re_update): Comment the routine.
- (check_bracket_exp): Improve check for range to not get [^-/]
- kinds of things. Thanks to Nelson Beebe for pointing out the bug.
-
-Wed Jan 19 20:31:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (is_valid_character): Add `& 0XFF' and remove casts to
- unsigned chars in other files. Remove definition of this macro
- in not MBS_SUPPORT case, since it wasn't being used.
- (btowc_cache): New macro to index into the array and use the
- same trick. Relies on ANSI C preprocessor semantics.
- Fix all uses.
- * builtin.c, node.c, io.c: Fix uses of these macros.
-
-Wed Jan 19 20:19:29 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (wstr2str): New function.
- * awk.h: Declare it.
- * builtin.c (is_wupper, is_wlower, to_wupper, to_wlower,
- wide_change_case, wide_tolower, wide_toupper): New functions to
- simplify wide character case conversions.
- (do_tolower, do_toupper): Use wide_tolower, wide_toupper in multibyte
- case.
- (do_substr): Simplify code a little bit.
-
-Mon Jan 17 22:48:48 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_bindtextdomain): Change type of `the_result'
- to const char* to kill compiler warnings.
- * debug.c (source_find): Improve error message when file not
- found.
- * awkgram.y (get_src_buf): Add cast to value of `read' to
- turn off compiler warnings on different systems.
-
-Mon Jan 10 21:40:05 2011 Andreas Buening <andreas.buening@nexgo.de>
-
- * io.c (devopen): Handle opening of directories for OS/2.
-
-Mon Jan 10 21:37:49 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Rearrange includes of <fcntl.h> so it won't be
- included for VMS, move definition of O_BINARY down.
-
-Sat Jan 8 23:00:37 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Include <fcntl.h> here.
- * main.c, io.c: Remove includes of <fcntl.h>.
-
-2011-01-08 Eli Zaretskii <eliz@gnu.org>
-
- * io.c (PIPES_SIMULATED) [__DJGPP__ || __MINGW32__]: Define.
- (binmode): Define for __DJGPP__ and __MINGW32__ as well.
- (gawk_popen) [!PIPES_SIMULATED]: Define for __DJGPP__ and
- __MINGW32__ as well.
-
-Wed Jan 5 20:35:30 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Move call to AC_LANG([C]) into here from
- m4/readline.m4.
-
-Tue Jan 4 11:21:18 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Clean up some compiler warnings:
-
- * array.c (do_delete): Cast for printf.
- * builtin.c (do_bindtextdomain): Casts for const char *.
- * io.c (rs1scan): Cast for indexing of array.
- * re.c (add_char): Remove unused variables.
-
-Fri Dec 31 11:05:11 2010 Michal Jaegermann <michal@harddata.com>
-
- * awk.h (strncasecmpmbs): Change parameters to const char *.
- * builtin.c (strncasecmpmbs): Change parameters to const char *.
- Add casts as appropriate in calls to other functions.
- * eval.c (cmp_nodes): Add casts in calls to strncasecmpmbs.
- * node.c (str2wstr): Ditto.
-
-Tue Dec 28 21:13:31 2010 Eli Zaretskii <eliz@gnu.org>
-
- * gawkmisc.c: Restore inclusion of pc/gawkmisc.pc.
-
-Tue Dec 28 21:00:36 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * ext.c (make_builtin): Make first parameter const char *.
- Adjust code inside to fit.
- * awk.h (make_builtin): Adjust declaration.
-
-Mon Dec 27 19:55:10 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c [AF_UNSPEC, AF_INET, AF_INET6]: Add definitions for systems
- that don't define them.
- (inetfile): Make IPv6 a fatal error if using the fake getaddrinfo,
- since chances are good that IPv6 really isn't available.
-
-Sat Dec 25 19:36:27 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Fixes for z/OS.
-
- * awkgram.y (tokcompare): Change argument types to const void *.
- (check_special): Add cast to void * in call to qsort.
- * builtin.c (do_bindtextdomain): Change `directory' and `domain'
- to const char *.
- * custom.h (ZOS_USS): Undef HAVE_SYS_PARAM_H and HAVE_MCHECK_H.
- Beats me why configure thinks it has those things.
-
-Fri Dec 24 12:56:46 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h: Remove defs for MIPS RiscOS.
- * configure.ac, aclocal.m4: Updated to Autoconf 2.68.
-
-Wed Dec 22 21:21:28 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gettext.h: Synchronized with gettext 0.18.1.
-
-2010-12-22 gettextize <bug-gnu-gettext@gnu.org>
-
- * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.18.1.
- * ABOUT-NLS, config.rpath: Updated from gettext 0.18.1.
-
-Sun Dec 19 16:43:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (update_PROCINFO_str, update_PROCINFO_num, make_str_node):
- Change `char *' parameters to `const char *' to avoid some
- compiler warnings.
- * ext.c (do_ext): Remove cast in call to make_string.
- * field.c (update_PROCINFO_str, update_PROCINFO_num): Adjust.
- * main.c (init_args): Remove casts in calls to make_string.
- * node.c (r_make_str_node): Add cast in assignment if ALREADY_MALLOCED.
-
-Sat Dec 18 20:12:59 2010 Eli Zaretskii <eliz@gnu.org>
-
- * array.c, gawkmisc.c, io.c, main.c, regex_internal.h,
- awkgram.y, awk.h, array.c: Remove OS2 and _MSC_VER defines.
-
-Sat Dec 18 19:56:17 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c, eval.c, floatcomp.c, io.c: Remove all the crufty
- old code for #ifdef CRAY.
-
-Thu Dec 16 11:06:50 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Put strftime() default format into PROCINFO["strftime"].
-
- * awk.h (def_strftime_format): Declare const char[] array.
- * main.c (def_strftime_format): Define it.
- (load_procinfo): Load it into PROCINFO.
- * builtin.c (do_strftime): Use value in PROCINFO for format
- string if it's there. Remove old def_format static array.
-
-Mon Dec 13 17:12:44 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- If not POSIX, turn [d-h] into [defgh].
-
- * re.c (check_bracket_exp): Make warning about ranges under
- lint control.
- (expand_range): New routine to expand ranges.
- (make_regexp): Check if might have range and call expand_range.
- (add_char): New helper function for expand_range.
-
-Thu Dec 9 22:12:48 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c: Restored changes of 1 July 2010 to allow /inet4 and /inet6;
- they got lost amongst the merges. Fixed checking of do_sandbox.
- Also, removed the option for raw IP sockets since it was never
- implemented and wasn't going to be.
-
-Tue Dec 7 11:59:00 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Remove test for return type of sprintf. Another
- renegade from the late 1980's bites the dust!
- * protos.h (sprintf): Remove declaration.
-
-Sun Dec 5 15:01:35 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (grow_stack): Change env var to GAWK_STACKSIZE.
- * awk.h, main.c, eval.c, profile.c: Removed features added
- for those who are Strong In The Ways of the Source.
- * debug.c (comp_func): Moved to here from eval.c, where it's
- no longer needed.
-
-Sat Dec 4 21:44:38 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (init_btowc_cache): New function.
- (btowc_cache): New array.
- (str2wstr): Use is_valid_character in test instead of several isXXX
- calls.
- * awk.h [is_valid_character]: Macro to use btowc_cache.
- * main.c (main): Call init_btowc_cache().
- * io.c (rs1scan): Add call to is_valid_character when processing
- characters byte by byte.
-
-Wed Dec 1 08:10:21 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h, awkgram.y, debug.c: Change CONTEXT to AWK_CONTEXT
- everywhere to avoid problems with libsigsegv on cygwin.
-
-Tue Nov 30 13:48:34 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (MRL): Removed variable, not used since Tandem code nuked.
- (main): Fix argument parsing for -m.
- (usage): Make -m undocumented (already is the doc/* files).
- * io.c (MRL): Remove declaration.
-
-Mon Nov 29 21:59:21 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (check_bracket_exp): Add check and warning for ranges.
- I may live to regret this.
-
-Mon Nov 29 20:09:18 2010 Eli Zaretskii <eliz@gnu.org>
-
- * replace.c [!HAVE_STRFTIME]: For __MINGW32__, define
- HAVE_STRFTIME while compiling missing_d/strftime.c.
-
-Thu Nov 25 20:12:28 2010 John Haque <j.eh@mchsi.com>
-
- * awkgram.y (grammar): Bug fix in delete for loop efficiency hack.
- * debug.c (do_info): Don't sort functions to avoid potential memory leak
- in case A_FUNCTIONS.
-
- Plug more potential leaks in the debugger eval/condition commands:
- * builtin.c (POP_TWO_SCALARS): New macro to free first scalar in case
- of a fatal error in the next.
- (do_index, do_atan2, do_lshift, do_rshift, do_and, do_or, do_xor): Use it
- instead of two consecutive POP_SCALARs.
-
- Execution context related code cleanups. Also, added descriptive
- comments for functions.
- * awkgram.y (get_context): Nuked.
- (push_context, pop_context, in_main_context): New functions.
- (mk_program, parse_program, yylex): Updated.
- * debug.c (condition_triggered, do_eval, parse_condition): Updated.
- * eval.c (unwind_stack): Updated.
- * main.c (main): Updated.
- * awk.h (struct context): Removed member level, not needed.
-
- * eval.c (op_assign): Initialize r to NULL, and declare x only
- if HAVE_FMOD not defined to remove GCC warnings.
-
-Thu Nov 25 08:32:31 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (posix_compare): Do string comparison with strcoll() /
- wcscoll().
- (cmp_nodes): Call it if do_posix. This may be a bad idea,
- but what the heck. Standards compatibility uber alles!
-
-Wed Nov 24 20:09:23 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * ext.c (do_ext): Require definition of `plugin_is_GPL_compatible'
- per GNU Coding standards.
-
-Sun Nov 21 14:23:58 2010 John Haque <j.eh@mchsi.com>
-
- Debugger: Fix memory leak when quitting pager.
- * awk.h (PUSH_BINDING, POP_BINDING): Generalize macro definitions.
- * debug.c (print_array): save and restore bindings for pager.
- free list in case of an early exit in the pager.
- (do_dump_instructions): Don't sort functions to avoid potential
- memory leak.
- (execute_code): Adjust PUSH_BINDING and POP_BINDING macro invocations.
-
- * awkgram.y (func_call): Avoid reading freed memory for indirect var
- name; do the special variable check before the call to 'variable'.
-
- * eval.c (r_interpret): Fixes and cleanups. Change TOP to TOP_SCALAR
- in the case Op_store_field.
- (assign_common, assign, compare): Nuked macros.
- (cmp_scalar, op_assign): New functions as replacements for the macros.
-
-Fri Nov 19 11:57:28 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * bootstrap.sh, Makefile.am: Remove treatment of CVS.
- * README.cvs: Updated further.
-
-Thu Nov 18 23:28:23 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Remove `--enable-portals' option. I don't think
- anyone ever used it.
- * io.c (two_way_open): Remove the code for portals.
- * README.cvs, README.git, bootstrap.sh: New files for storage
- in the Git repository.
-
-Tue Nov 16 11:56:31 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * version.in: Removed descriptive comments. New features and
- so on are documented in the documentation and in NEWS.
-
-Mon Nov 15 19:19:25 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (LEX_LENGTH): Removed warning about length with
- no argument being deprecated.
- * awkprintf.h: Remove code for sun386. Fix %c to print multibyte
- character instead of first byte.
- * builtin.c (sub_common): Update commentary about POSIX.
- * io.c (nextfile): Add MAYBE_NUM to FILENAME.
-
-Fri Nov 12 11:53:15 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (update_global_values): New routine, needed for correct
- operation of --dump-variables.
- * awk.h: Declared it.
- * awkgram.y (get_varlist): Call it.
- Thanks to Hermann Peifer <peifer@gmx.eu> for the bug report.
-
- * debug.c (find_subscript): Initialize `r' to NULL, per
- Michal Jaegermann.
-
-Thu Nov 11 16:31:49 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Restore decls of strcasecmp, strncasecmp.
- * builtin.c: Lots of general cleanups.
- (sub_common): Actually enable POSIX rules! (Wasn't done right
- earlier.)
-
-Thu Nov 4 14:08:29 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c, awkgram.y, awkprintf.h, builtin.c, debug.c, eval.c,
- field.c, io.c, main.c, node.c, profile.c, re.c: Remove register
- keyword everywhere.
- * node.c: Minor code cleanups.
-
-Wed Nov 3 08:29:15 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (free_wstr): If argument is null string or null field,
- return. Thanks to Vojtech Vitek <vvitek@redhat.com>
-
-Tue Nov 2 16:45:06 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Straighten out options more. --lint --> -L, --lint-old --> -t
-
- * main.c (optlist, optab, main, usage): Adjusted approrpiately.
-
- Other:
- * awk.h: Lots more general cleanup.
- * builtin.c (strncasecmpmbs): Move mbstate vars into the routine.
- * awk.h (strncasecmpmbs): Adjust declaration.
- * eval.c (cmp_nodes): Adjust call.
- * awkgram.y, command.y: Remove unused variables.
-
-Mon Nov 1 21:55:26 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (optlist, optab, main): Renamed -l option to -t
- so can eventually merge in xgawk's -l option.
- (usage): Adjusted approrpiately.
-
-Mon Nov 1 16:23:52 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c, awk.h, custom.h, eval.c, gawkmisc.c, io.c, main.c,
- protos.h, replace.c: Remove code related to: __amigaos__,
- atarist, BeOS, _MSC_VER, MSDOS, TANDOM, WIN32, and anything
- not for __STDC__.
-
-Sun Oct 31 21:49:22 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Start on cleaning up. Remove stuff for DOS, WIN32,
- TANDEM, atarist, NeXT even!
-
-Sun Oct 31 05:56:23 2010 John Haque <j.eh@mchsi.com>
-
- Add array of arrays.
-
- * awk.h (Op_sub_array): New opcode.
- (POP_SCALAR, TOP_SCALAR): New macros. If the item is not a scalar,
- make it a fatal error.
- (POP_STRING, TOP_STRING): Use POP_SCALAR and TOP_SCALAR instead
- of POP and TOP.
- (force_string, force_number): Unrelated: simplify (remove) macros
- for older gcc and non-gcc compilers.
- * awkgram.y (grammar): New non-terminals for array subscripts.
- delete array subscripts are handled differently than array subscripts
- used as a variable.
- (SUBSCRIPT): New terminal symbol to indicate end of subscripts.
- (yylex): Return SUBSCRIPT after all the subscripts has been read.
- (rules variable, LEX_DELETE and LEX_FOR): Adapt to these changes.
- (sub_counter): New global to count the number of subscripts in a
- delete statement.
- (optimize_assignment): Adjust code for assignment to an array element.
- * array.c (make_aname): New function to construct a sub-array name.
- (get_array): Handle Node_val in the default case.
- (concat_exp): Issue fatal error message if each expression is not a
- scalar.
- (assoc_clear): Recursively clear sub-arrays.
- (do_delete, assoc_dump, assoc_sort_inplace, dup_table):
- Handle array of arrays.
- * builtin.c: Replace POP with POP_SCALAR as appropriate.
- * eval.c (optypes): Add entry for Op_sub_array.
- (r_interpret): Handle Op_sub_array. For case Op_subscript, increment
- reference count only if the result is a scalar. If type is not a
- scalar in Op_subscript_lhs, make it fatal. Adjust stack pointer
- after a call to do_delete in Op_K_delete. Change POP(TOP)
- to POP_SCALAR(TOP_SCALAR) as needed.
- * profile.c (pprint): Add case for Op_sub_array.
- * command.y (grammar): New non-terminals and rules to handle
- array of arrays.
- * debug.c (struct list_item): Redesigned. Field subs is NODE ** now,
- new fields num_subs and sname. New flags OLD_IS_ARRAY and CUR_IS_ARRAY;
- removed flag ARRAY_WATCH. Renamed macro IS_ARRAY() to WATCHING_ARRAY.
- (do_info): Adapt to the structural changes in cases A_WATCH and
- A_DISPLAY.
- (print_array): New function to print contents of an array.
- (print_subscript): New function to print an element of an array.
- (do_print_var): Use the new functions to print an array element
- and contents.
- (do_set_var): Adapt to the structural changes in list_item for
- an array element.
- (delete_item, do_add_item, display): Ditto.
- (add_item): Ditto. Use field symbol, not subs to store field number and
- adjust accordingly everywhere.
- Unrelated: handle function parameter correctly, watch and display now
- prints the param name instead of the actual array name.
- (find_subscript): New function.
- (initialize_watch_item): Use the new function find_subscript
- to locate an array element NODE.
- (watchpoint_triggered): Redone.
- (cmp_val): Redone.
- (print_watch_code): Adjust code for printing subscript.
- (print_instruction): Add case for Op_sub_array.
- (serialize_subscript): New function.
- (serialize): Use the new function to serialize watch and display
- subscripts.
- (unserialize_list_item): Adapt to the structural changes. Also,
- simplify code.
- (do_print_f): Redo code for printting array element.
- (pre_execute_code, execute_code): Change POP to POP_SCALAR.
-
- Unrelated:
-
- * debug.c (unserialize_commands): New function for common code in
- unserialize_breakpoint and unserialize_list_item.
- (unserialize_breakpoint and unserialize_list_item): Use the new
- function.
-
- * awkgram.y (grammar): Do not terminate parser if seen an empty(NULL)
- subscript. Install null string as subscript and continue parsing.
- (variable): Do not terminate parser if type is Node_func, change it
- to Node_var_new temporarily. Simplifies grammar and allows parser to
- continue.
-
- * command.y (yylex): Add history entry when blank line repeats
- previous command.
-
- * debug.c (pp_args): Removed. Pretty-printing SUBSEP
- seperated indexes can not be made to work reasonably in all cases.
- (struct list_item): Removed field pp_subs.
- (concat_args): Move to file command.y.
- * command.y (grammar): Concatenate SUPSEP seperated indexes.
-
-Thu Oct 28 16:25:08 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Remove use of varargs.h everywhere:
-
- * awkgram.y (yyerror): Fixed.
- * awk.h [CAN_USE_STADARG_H]: Removed, #error added if not available.
- (snprintf, Func_print, msg, error, warning): Fix declarations.
- * cmd.h (gprintf, d_error): Fix declaration.
- * command.y (yyerror): Fixed.
- * debug.c (d_error, gprintf): Fixed code.
- * main.c (lintfunc): Fix declaration.
- * msg.c (msg, warnning, error, r_fatal): Fixed code.
-
-Wed Oct 27 16:45:29 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [P]: Finally, nuked the `P' macro. Removed definitions
- and uses.
- [HAVE_DOPRNT]: Removed check for this, now require vfprintf.
- [BELL]: Nuked; require a compiler that supports '\a'.
- * array.c, awkgram.y, awkprintf.h, builtin.c, cmd.h, command.y,
- debug.c, eval.c, ext.c, field.c, io.c, main.c, protos.h [P]:
- Remove all uses.
- * node.c (r_force_number): Change check with strtod to `ptr == cpend',
- SunOS 3.5 compatibility no longer concerns us. Removed the comment.
- [P]: Removed all uses.
- (parse_escape): Change from BELL to '\a'.
- * profile.c (pp_string): Change from BELL to '\a'.
- [P]: Removed all uses.
-
-Tue Oct 26 20:11:37 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (fix_break_continue): New routine to make break and
- continue instructions point to where they should jump to. Adjusted
- grammar to call it for switch and loops.
- * eval.c (r_interpret): For Op_K_break and Op_K_continue, jump
- to pc->target_jmp.
- * command.y (cmdtab, do_help): Translate the help messages.
- * debug.c (option_list, option_help): Translate the help messages.
- Elsewhere, clean up / add calls to gettext.
-
-Fri Oct 22 11:18:29 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * ChangeLog: Merged with ChangeLog.BYTECODE.
- * Makefile.am (EXTRA_DIST): Removed ChangeLog.BYTECODE.
- * ChangeLog.BYTECODE: Removed the file.
-
-Thu Oct 21 12:16:35 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Make break and continue outside a loop not allowed at all,
- even with --traditional, as BWK awk no longer allows this.
-
- * eval.c (r_interpret): For Op_K_break and Op_K_continue, make
- them fatal errors if not in a loop.
- * awkgram.y (break_allowed, continue_allowed): New variables.
- [BREAK, CONTINUE]: New flags for tokentab.
- (yylex): If set, increment the corresponding variable.
- (Grammar): Test variables when break/continue seen, decrement them
- at the end of productions for loops and switch.
-
-Tue Oct 19 20:03:29 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (optab, usage): Remove --compat, --copyleft, and --usage extra
- option aliases.
-
-Tue Oct 19 08:25:02 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkprintf.h (r_format_arg): Undouble "%" characters in
- error messages. Thanks to Scott Deifik for catching the problem.
-
-Sat Oct 16 22:08:54 2010 Arnold Robbins <arnold@skeeve.com>
-
- Apply changes from John Haque:
-
- * awk.h [ASSIGNED]: Remove unused flag.
- (Op_cond_pair_left): Remove.
- * debug.c (print_instruction): Remove Op_cond_pair_left.
- (do_trace_instruction): Fix print for Op_newfile.
- (parse_condition): Improve code.
- * eval.c (optypes): Add space to string for "!".
- (r_interpret): Remove Op_cond_pair_left and Node_instruction cases.
- Revise Op_cond_pair to handle left and right sides correctly.
- Simple code fixes in some other cases.
- * profile.c (pprint): Remove Op_cond_pair_left. Simplify Op_not.
-
-Fri Oct 15 14:17:09 2010 Arnold Robbins <arnold@skeeve.com>
-
- * awk.h (Op_cond_pair_left): New op for left side of condition pair.
- * debug.c (print_instruction): Support it.
- * profile.c (pprint): Ditto.
- * eval.c (r_interpret): Split Op_cond_pair into two cases; they have
- to be handled differently.
-
-Wed Oct 13 19:17:03 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.h [RE_SYNTAX_AWK]: Add RE_CHAR_CLASSES, for compatibility
- with modern Unix awk.
-
-Sun Oct 10 15:31:01 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (dfawarn): Do nothing in body, since gawk does it's
- own checking.
-
-Sun Oct 10 15:30:34 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- MERGE with bytecode version! Many many files changed / added.
-
-Sun Oct 3 08:41:25 2010 John Haque <j.eh@mchsi.com>
-
- * Lots of files: Indirect function call, FPAT, BEGINFILE/ENDFILE
- from gawk-devel.
-
- * awk.h (defrule): New enum for rule types.
- (ruletab): Converts rule types to string constants.
- * awkgram.y: Use rule types to simplify code in grammar.
- * eval.c, debug.c, profile.c, awkgram.y routines: Update to use ruletab.
-
- * Lots of files: New debugger command eval for evaluation of
- arbitrary (g)awk expression(s).
- eval "awk statement(s)"
- OR
- eval p1, p2
- > awk statement
- > more awk statement(s)
- > end
- p1, p2 are eval locals.
- Conditional break/watch point:
- break 1 "condition expression"
- OR
- break 1
- condition "condition expression"
-
- * command.y: grammar clean-ups.
- (find_command): Redo to fix bugs in abbreviation/partial-string
- search.
-
- * debug.c (command_source): New structure. Used to manage
- sources for debugger commands. 'source file' command can now
- include additional source commands.
-
- * awk.h: new enum type redirval for I/O redirection types;
- remove redirection types from OPCODE.
- * awkgram.y: Adjust grammar for redirection type changes.
- (yylex, mk_getline): Update for redirection type changes.
- * io.c (redirect, do_getline): Ditto.
- * profile.c (redir2str): New function to convert redirection types
- to string constants.
- (pprint): Use new function redir2str.
- * debug.c (print_instruction): Ditto.
- * eval.c (optypes): Remove redirection types from table.
-
- * main.c (main): initialize do_optimize to 1, default optimizations.
- do_optimize > 1 for -O (--optimize) command line option.
- do_optimize = 0 turns off all optimizations, and is for debugging
- purposes.
- * awkgram.y: Updated.
-
- Lots of other cleanups and improvements.
-
-Thu Sep 16 09:44:47 2010 John Haque <j.eh@mchsi.com>
-
- Lots of bug fixes & improvements, including work on
- profiling.
-
-Wed Aug 18 22:15:06 2010 Arnold Robbins <arnold@skeeve.com>
-
- Lots of files: Sync fully with gawk-stable version, in particular
- documentation edits and all ChangeLog files.
-
-Mon Aug 9 07:17:54 2010 John Haque <j.eh@mchsi.com>
-
- Fix the case when runtime stack can have a INSTRUCTION pointer
- while popping stack items (a next/nextfile statement inside a loop).
-
- * awk.h: new NODETYPE Node_instruction. Remove instruction pointer
- from STACK_ITEM union, and all related macros.
- * eval.c (r_interpret): wrap code (INSTRUCTION) pointer inside
- a NODE for Op_push_loop. Change Op_pop_loop, Op_K_break
- and Op_K_continue accordingly.
- (unwind_stack): free Node_instruction.
- (nodetypes): add new entry for Node_instruction.
-
-Thu Aug 5 15:05:22 2010 Arnold Robbins <arnold@skeeve.com>
-
- * awk.h: Remove redundant declaration of struct lconv loc;
- * awkprintf.h: Move ifdef for HAVE_LOCALE_H inside case '\''.
- * custom.h: Add macros for setenv and unsetenv for Z/OS.
- * main.c (main): Remove three argument version for Tiny CC after
- applying patches to local copy that fix the issue with environ.
-
-Mon Jul 26 07:23:01 2010 John Haque <j.eh@mchsi.com>
-
- Started Byte Code version ChangeLog.
-
- * awk.h, eval.c, debug.c, profile.c: Renamed opcode Op_exit to
- Op_atexit. Simplify exit value handling; use existing global
- exit_val from main.c.
- New opcode Op_stop.
-
- * msg.c: New variables fatal_tag_valid, fatal_tag.
- (r_fatal): Use these new variables.
- (err): Change myname from dgawk to gawk when debugging;
- reflects the correct source of error messages.
-
- * builtin.c, msg.c: Change stdout to output_fp.
- (do_fflush): Also flush output_fp if not stdout.
-
- * command.y (yylex, yyparse): (Much) improved error recovery.
-
- * awkgram.y (yylex): Add 'goto out' in 'check_special'
- for do_traditional or do_posix check, lost somewhere
- between 3.1.3 to 3.1.8.
- (pop_var): New name remove_symbol to go with mk_symbol.
- (install): New name install_symbol.
-
- * debug.c:(set_gawk_output): Improved handling of /dev files
- including /dev/ttyN, /dev/pts/N.
- (pre_execute): Renamed execute, a pre_hook in r_interpret.
- (post_execute): New function, a post_hook in r_interpret;
- used to detect non-local jumps (next, nextfile, exit)
- with commands 'until' and 'finish', and to print the
- returned value for finish.
- (print_instruction): Redo function params initialization
- when trace is on. Hopefully, correct this time around.
- (close_all): New function to close all known files
- during quit and restart.
-
- * eval.c(r_interpret): Redefine macro JUMPTO to include
- post_hook from above, and use it exclusively to move to
- the next instruction for execution.
-
- * debug.c (do_run): Trap gawk fatal errors.
-Sun Sep 5 12:44:24 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (check_bracket_exp): Add `warned' flag to table and adjust
- code to only warn once about each candidate.
- (make_regexp): Always call check_bracket_exp, per discussion
- on comp.lang.awk.
-
-Fri Aug 6 16:29:55 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (check_bracket_exp): Improved the code, again.
-
-Thu Aug 5 18:41:27 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (check_bracket_exp): Improved the code.
-
-Tue Aug 3 11:35:11 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (check_bracket_exp): New function.
- (make_regexp): Call it if do_lint.
-
-Thu Jul 1 19:22:33 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Add support for /inet4/... and /inet6/... files.
-
- * io.c (socketopen): New parameter `family' for address family.
- (inetfile): New function. Changed everywhere to use it and
- the values it sets.
-
-Fri Jun 25 01:01:39 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Added short option letters for all long options
- that didn't have them so that they can be used in #!. This
- reinstates -r, FWIW.
- (usage): Revised message to list standard options first, then
- options for extensions, sorted by short letter.
-
-Mon Jun 21 23:05:20 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- New FPAT variable and patsplit built-in function.
-
- * awk.h (NODETYPE): Add Node_FPAT.
- (FPAT_node, do_patsplit, set_FPAT): Declare.
- (set_FPAT, update_PROCINFO_str, update_PROCINFO_num,
- current_field_sep): New functions.
- * awkgram.y (tokentab): Add patsplit.
- (snode): Add code for do_patsplit to default third arg to FPAT.
- (isnoeffect, isassignable): Add cases for Node_FPAT.
- * eval.c (nodetypes): Add FPAT.
- (r_tree_eval, r_get_lhs): Add cases for Node_FPAT.
- * field.c (fpat_parse_field, update_PROCINFO_num, set_FPAT,
- do_patsplit): New functions.
- (update_PROCINFO): Renamed to update_PROCINFO_str.
- (FPAT_re_yes_case, FPAT_re_no_case, FPAT_regexp): New variables.
- (using_FIELDWIDTHS): Replaced with current_field_sep and all calls.
- * io.c (set_RS): Call current_field_sep insead of using_fieldwidths.
- * main.c (main): Use update_PROCINFO_str and update_PROCINFO_num
- instead of manually updating the array.
- (varinit): Add FPAT.
- * profile.c (tree_eval, pp_lhs, is_scalar, pp_var): Add case for
- Node_FPAT.
-
-Fri Jun 12 13:25:32 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Make command line arguments that are directories a warning.
- They remain a fatal error if --posix or --traditional.
-
- * configure.ac: Remove the --disable-directories-fatal option.
- * io.c (nextfile): Rationalize the code that handles directories,
- including setting ERRNO correctly.
-
-Thu Feb 26 20:57:52 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes from August 2008 through February 2009 to add
- BEGINFILE and ENDFILE, originally against 3.1.6, merged into
- development version.
-
- * awk.h (in_beginfile_rule, in_endfile_rule): Add declarations.
- * awkgram.y (beginfile_block, endfile_block): Add declarations.
- (beginfile_or_endfile_rule, parsing_endfile_rule): New variables.
- (LEX_BEGINFILE, LEX_ENDFILE): New tokens, new rules for those tokens.
- (tokentab): Add new entries for BEGINFILE, ENDFILE.
- (LEX_NEXTFILE): Allow nextfile in BEGINFILE rule.
- (LEX_GETLINE): Allow only `getline var < file' inside BEGINFILE or
- ENDFILE.
- * eval.c (interpret): Check in_beginfile_rule and in_endfile_rule for
- errors for next and nextfile.
- (update_ERRNO_saved): When errno == 0, set to ERRNO to
- null string.
- (interpret): Allow nextfile in BEGINFILE rule.
- (update_ERRNO_saved): Check errcode paramater, not global errno.
- * io.c (beginfile_block, endfile_block, in_beginfile_rule,
- in_endfile_rule): New variables.
- (do_input): Set them. Update ERRNO only if not do_traditional.
- Propogate error code down to fatal message.
- (run_beginfile_rule, run_endfile_rule): New functions.
- (iop_alloc): Use it instead of inline code. Add fourth argument
- indicating that the open hooks should run. Adjust calls. Point is
- to not call open hooks twice inside `nextfile'.
- (do_nextfile): Check it and also in_beginfile_rule and only longjump
- when both filebuf valid and not in a BEGINFILE rule.
- (nextfile): Call run_beginfile_rule and run_endfile_rule as
- appropriate. Reorder the logic to set ERRNO and allow BEGINFILE
- to call nextfile to skip a bad data file. Adjust calls to
- iop_open and find_open_hook.
- (nextfile): Call iop_alloc if there's a BEGINFILE block in case
- the hooks changed.
- (find_open_hook): New function.
- (get_a_record): On read error, just set *errcode and return. Let
- higher level logic decide if it's fatal.
- (inrec): Have error be fatal if traditional or if there isn't
- an ENDFILE rule.
- * profile.c (dump_prog): Add code for BEGINFILE / ENDFILE.
- * awk.h (dump_prog): Adjust declaration.
- * main.c (main): Adjust call to `dump_prog'. Check beginfile_block and
- endfile_block also to be not NULL in order to call do_input. Thanks to
- Steffen Schuler for pointing out the bug.
-
-Thu Feb 26 07:54:51 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Per advice from BWK and my own feelings, nuke additions from 2001
- of seek and tell functions. They were never documented anyway.
-
- * awk.h (do_seek, do_tell): Remove declarations.
- (IOBUF): Remove save_start and rec_size members.
- * awkgram.y (tokentab): Remove "seek" and "tell" entries.
- * io.c (do_getline): Remove code setting save_start and rec_size.
- (iop_alloc): Remove code initializing save_start and rec_size.
- (do_seek, do_tell): Removed.
- * configure.ac: Remove --enable-seektell option.
-
-Mon Feb 16 21:54:13 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (tokentab): Enable switch / case by default.
- * configure.ac: Remove test for --enable-switch.
-
-Thu Feb 12 22:06:17 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (optab): --gen-po becomes --gen-pot. -r goes away since it's
- now on by default.
- (usage): Similar changes.
- * regex.h [RE_SYNTAX_GNU_AWK, RE_SYNTAX_POSIX_AWK]: Adjust to support
- interval expressions.
- [RE_DEBUG]: Nuke: it is no longer used.
- * re.c (resetup): Adjust comment for do_intervals.
- (reflags2str): Remove RE_DEBUG.
-
-Sat Jan 17 20:41:54 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (WSTRCUR): Always define, no real need for ifdef.
- * eval.c (flags2str): Similar.
- * field.c (rebuild_record): Similar.
-
-Sat Jan 17 19:59:39 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Add indirect function calls. They require a special
- syntax, which is an `@' in front of a function call.
-
- * awk.h (NODETYPE): New Node_indirect_function_call value.
- (ASSIGNED): New flag value.
- * eval.c (nodetype2str): Add new node type.
- (flags2str): Add ASSIGNED.
- (func_call): Test the node type to determine
- what kind of call. Cache the function body if a real function
- is called indirectly. Also get scoping right if called from a function.
- LOTS of work here to get this code right!
- (op_assign): Add ASSIGNED to flags.
- * awkgram.y (function_call, direct_function_call): New productions for
- creating indirect function calls. Only call func_use for direct call.
- (yylex): Add case for '@'. Only return it if not posix or traditional.
- * profile.c (tree_eval): Add case for Node_indirect_func_call.
- (pp_func_call): Check type and print '@' for indirect call.
-
-Tue Dec 30 22:25:04 2008 Assaf Gordon <gordon@cshl.edu>
-
- * awk.h (do_sandbox): New variable declaration.
- * main.c (do_sandbox): Variable definition.
- (opttab): Add new option --sandbox.
- (usage): Add to usage message.
- * builtin.c (do_system): Disallow if sandboxed.
- * io.c (redirect): Disallow redirections if sandboxed.
-
-Tue Dec 30 22:22:04 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (usage): Change --binary to --characters-as-bytes,
- per Karl Berry.
-
-Thu Dec 18 05:29:46 2008 Steffen Schuler <schuler.steffen@googlemail.com>
-
- * field.c (*_parse_field): Add `sep_arr' argument and fill it.
- * field.c (do_split): Add handling of fourth argument of awk
- builtin `split'.
- * field.c (get_field): Extend parse_field by default argument.
- * awkgram.y (tokentab): Extend `split' entry with fourth argument.
-
-Wed Dec 17 09:54:00 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (do_binary): New variable for new option -b which
- makes gawk not mess with multibyte strings.
- (opttab): Add option entry for -b / --binary.
- (main): If do_binary, set gawk_mb_cur_max to 1.
-
-Sat Oct 27 22:43:50 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (resetup): Add RE_INVALID_INTERVAL_ORD to syntax bits if
- doing interval expressions.
-
-Thu Oct 25 23:11:10 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (devopen): Add `isdir' pointer argument.
- * io.c (devopen): Ditto. Adjust logic that checks for directory.
- Adjust all calls.
- * main.c (main): Adjust call to devopen.
-
-Sun Oct 3 23:18:44 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (lex): Enabled \s and \S escape sequences.
- * regcomp.c (peek_token): Ditto.
-
-Tue Aug 3 13:29:53 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (sub_common): Make POSIX 2001 behavior the
- default for `sub' and `gsub'.
-
-Wed Aug 21 13:39:08 2002 Dean Wakerly <dean@wakerly.com>
-
- * main.c (main): Add short option letter 'r' for --re-interval.
- Mainly for use in #! scripts.
-
-Wed Dec 26 22:03:48 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- Nuke /dev/pid etc. special files!
-
- * awk.h (IOP_IS_INTERNAL, IOP_NO_FREE): Removed. Other defines
- renumbered.
- * io.c (iop_open, spec_setup, specfdopen, pidopen, useropen): Removed.
- (do_input, redirect): Change uses of iop_open() to devopen() +
- iop_alloc().
- (iop_close, get_a_record): Remove special handling for IOP_INTERNAL,
- IOP_NO_FREE.
- (devopen): Remove comment relating to iop_open.
- Add fstat check for valid fd for /dev/fd/N.
-
-Sun Nov 4 10:27:58 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h, builtin.c, awkgram.y: Renamed mark/reset to tell/seek.
- * acconfig.h: Add `#undef SEEK_TELL'.
- * configure.in: Add `--enable-seektell' configure-time option.
- * io.c (do_seek, do_tell): renamed from do_reset, do_mark.
-
-Thu Aug 16 12:21:28 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- New feature, undocumented for now, use #define MARK_RESET to
- to turn it on. New function val = mark("/some/file") to
- save start position of current record. Use
- reset("/some/file", pos) to go back to it. ONLY works
- with getline.
-
- * awk.h (IOBUF): New members save_start and rec_size.
- (do_mark, do_reset): Add declarations.
- * awkgram.y (tokentab): Add entries for mark and reset.
- * io.c (specsetup): Initialize save_start and rec_size.
- (iop_alloc): Ditto.
- (do_getline): Update them as appropriate.
- (do_mark, do_reset): New functions.
-
-Fri Sep 17 12:42:42 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (btowc): Changed to use mbrtowc.
-
-Wed Sep 15 08:26:55 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Further sync with GNU grep.
-
-Tue Sep 14 09:53:55 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (str2wstr): Per advice from Ulrich Drepper, when converting,
- if the current byte is isprint, isgraph, iscntrl or zero, then it
- can't start a multibyte character. This can save many calls to
- `mbrtowcs', and speed up the conversion considerably.
-
-Mon Sep 13 11:19:21 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: Sync with GNU grep.
- * re.c (dfawarn): New routine for use by dfa.
-
-Sun Sep 12 22:17:02 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (tree_eval): Fix comment on for ... delete array loop.
- (pp_string_fp): Get escapes right on regex constant.
-
-Sun Sep 5 20:38:42 2010 John E. Haque <j.eh@mchsi.com>
-
- * re.c (str2wstr): Decrement src_count when skipping bad bytes.
-
-Fri Aug 27 13:51:13 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Sync with current GNU grep - minor edits only.
-
-Fri Aug 20 16:26:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (tree_eval): Always parenthesize Node_cond_exp.
- May add a few extra parens but guarantees the right semantics.
- Thanks to Hermann Peifer <peifer@gmx.eu> for the bug report.
-
-Thu Aug 19 21:35:13 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.c (re_string_reconstruct): Move ifdef out to cover
- variable declarations, to avoid "unused variable" warnings.
- * regexec.c (check_arrival_add_next_nodes): Bracket declaration of
- `err' with ifdef for the same reason.
-
- Thanks to avarab@gmail.com for the suggestions.
-
-Wed Aug 18 22:13:30 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (AUTOMAKE_OPTIONS): Added. Other minor cleanups.
-
-Tue Aug 17 23:27:43 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pp_string_fp): Use different sets of escape characters
- if printing a string or a regex, based on delimiter. Thanks to
- Hermann Peifer <peifer@gmx.eu> for the bug report.
-
-Sun Aug 8 23:05:09 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (make_regexp): Don't allocate rp->dfareg unless
- we're using dfa; causes a memory leak otherwise. Thanks to
- Antonio Columbo for reporting the bug.
-
-Wed Jul 14 23:04:30 2010 Eli Zaretskii <eliz@gnu.org>
-
- * dfa.c: Include langinfo.h only if HAVE_LANGINFO_CODESET is
- defined.
-
-Wed Jul 14 23:00:19 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yylex): Allow a backslash before CR-LF to also
- work for line continuation, for MS-DOS style source files.
- Thanks to (Vincent Belaiche) for pointing this out.
-
-Wed Jul 14 22:31:53 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (str2wstr): Keep going if get a bad multibyte sequence.
- Allows match to give correct answers for RSTART, RLENGTH.
- Add a lint warning. Correctly set the length of the string
- based on pointer subtraction.
-
-Wed Jun 16 21:52:09 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (exec_count): Moved into NODE structure as standalone
- element since count on `/pat/ { ... }' was wrong. Thanks to
- Hermann Peifer <peifer@gmx.eu> for the bug report.
-
- Note to self: DO NOT propogate this to the byte-code version.
-
- Unrelated:
-
- * awkgram.y (matchop): Made left associative to match behavior
- of other awks.
- (print_expression_list): Simplified so that something like
- `print ("a", "b") in B in A' will work. Again, to match what
- other awks do.
-
-Fri Jun 4 15:56:59 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Further merges with GNU grep.
-
-Thu May 20 22:20:32 2010 Stepan Kasal <skasal@redhat.com>
-
- * Makefile.am [AUTOMAKE_OPTIONS]: Removed, contents now in ...
- * configure.ac [AM_INIT_AUTOMAKE]: ... here.
- Added dist-xz while I'm at it, per Karl Berry.
-
-Tue May 18 14:52:04 2010 Marcin Szewczyk <Marcin.Szewczyk@wodny.org>
-
- * builtin.c (format_tree): Simplify code in pr_tail when multibyte
- and %s or %d.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Fri Apr 30 11:37:54 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Remove check for libsnprintf.
-
-Tue Apr 27 22:23:26 2010 Andreas Schwab <schwab@linux-m68k.org>
-
- * builtin.c (do_mktime): Make lint check more sane.
- Fix overflow check. Removes GCC warning that Arnold
- incorrectly didn't like.
-
-Mon Apr 26 20:16:07 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * ltmain.sh: Removed.
- * builtin.c (do_mktime): Restored old code to match the
- documentation. We now have a warning that we just have to
- live with. Sigh. Stupid GCC. Added a lint warning though.
- (format_tree): More code so that %'d acts like %d on systems
- without <locale.h>.
- * main.c (main): Add `&& #if defined(HAVE_LOCALE_H)' for
- call to setlocale.
-
-Wed Apr 21 23:35:43 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Change quoting of -Dargs so that even tcsh
- users will be happy.
- * regex_internal.c (MAX): Add `#undef MAX', just in case.
- * configure.ac: Don't look for libsigsegv on OSF/1, gives
- us severe headaches.
-
-Tue Apr 20 12:01:01 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: Sync with GNU grep. The long-standing x{0} bug
- is now gone. Matching UTF-8 with "." is now much faster.
- * re.c (avoid_dfa): Remove call to dfabroken() which is now gone.
- * builtin.c (do_mktime): Simplify check of values passed in to be
- more readable and to avoid a weird compiler warning from GCC.
-
-Fri Apr 16 15:02:26 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Add cast in error message to turn
- off compiler warning.
- * dfa.c (is_blank): New function. Use it everywhere instead of
- ctype.h `isblank' macro which isn't available universally.
-
-Tue Apr 13 22:36:31 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c, awkgram.y, builtin.c, dfa.c, eval.c, ext.c, main.c,
- node.c, re.c: Remove old ISxxx and TOxxx macros in favor of
- standard versions. ``We're two wild and crazy guys!''
-
-Tue Apr 13 22:07:18 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * getopt.c, getopt.h, getopt1.c, getopt_int.h, regcomp.c, regex.c,
- regex.h, regex_internal.c, regex_internal.h, regexec.c: Sync with
- glibc. What the heck.
-
-Thu Apr 8 21:33:09 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: All leading indentation is now spaces only. Yet
- another sync with grep.
-
-Thu Apr 8 20:45:25 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Move dfa internals into dfa.c and sync with grep. Avoids VMS and
- z/OS compile problems in order to avoid cygwin issue when used
- with ligsigsegv. ("Portability? We don't need no stinkin'
- portability!")
-
- * dfa.h: Move all the internals into dfa.c.
- (dfaalloc, dfamusts, dfabroken): Add declarations.
- * dfa.c: Accept all the internals.
- (dfaalloc, dfamusts, dfabroken): New functions.
- * awk.h (Regexp): Use a `struct dfa *'.
- * re.c (make_regexp): Call dfaalloc. Adjust uses of dfareg
- in other routines.
- (refree): Free the dfa struct too.
-
-Tue Apr 6 23:06:55 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: Further sync with GNU grep for enum change
- and other misc changes.
-
-Tue Apr 6 20:13:45 2010 Michal Jaegermann <michal@harddata.com>
-
- * main.c: Wrap declarations and bodies of `catchsegv' and
- `catchstackoverflow' in #ifdef HAVE_LIBSIGSEGV to avoid
- "not used" warnings.
-
-Tue Apr 6 20:11:47 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h: Move definition of token enum to dfa.c to avoid conflict
- with Windows WCHAR introduced by libsigsegv. Thanks to Corinna
- Vinschen.
- * dfa.c: Enum body here.
- (in_coll_range): z/OS fix: Initialize array to all zeros and assign
- values instead of putting them into the initializer. Thanks to Dave
- Pitts for reporting the problem.
-
-Fri Apr 2 12:32:40 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Sync with grep 2.6.3.
-
-Wed Mar 31 15:50:34 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (dfaexec): Move decl of `saved_end' up to top of function.
- Fixes compilation on C89 compilers.
-
-Mon Mar 29 08:40:29 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- Remove local copy of libsigsegv. Use an external copy if available.
-
- * Makefile.am: Remove SEGVSUBDIR and SEGVINCLUDE.
- * configure.ac: Remove previous code that handled the library and use
- gl_LIBSIGSEGV library.
- * custom.h: Remove code for HAVE_SIGSEGV_H.
- * main.c: Move to HAVE_LIBSIGSEGV.
- * libsigegv/ : Removed.
-
-Mon Mar 29 05:41:35 2010 Corinna Vinschen <vinschen@redhat.com>
-
- * dfa.c: Include hard-locale.h after xalloc.h because it needs
- xmalloc.
- * hard-locale.h (xmalloc): Remove declaration.
- (hard_locale): Cast xmalloc to correct target type.
-
-Mon Mar 29 05:38:47 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c: (two_way_open): In counting down retries, test for > 0
- instead of >= 0 since retries is unsigned. Thanks to Pat Rankin
- for noticing.
- * configure.ac: Remove use of -export-dynamic on cygwin.
-
-Thu Mar 25 21:48:13 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Sync to grep 2.6.1. That's probably enough for now.
-
-Wed Mar 24 19:48:01 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: More sync with grep.
-
-Tue Mar 23 19:42:48 2010 Jeff Chua <jeff.chua.linux@gmail.com>
-
- * io.c (two_way_open): Bug fix in management of timeout value.
-
-Tue Mar 23 19:40:04 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: Synced with released grep 2.6. Oh Frabjous Day!
- Callou! Callay!
-
-Mon Mar 22 22:49:44 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.c: Regenerated using bison 2.4.2.
-
-Fri Mar 19 10:19:20 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Minor edits for compat with grep.
-
-Fri Mar 19 09:19:56 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (two_way_open): Cleanup new code for socket opens.
- * replace.c: Include missing_d/usleep.c based HAVE_USLEEP.
- * configure.ac: Add usleep to list of functions to look for.
-
-Thu Mar 18 23:30:33 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: Imported from GNU grep and merged. Passes "make test".
- * xalloc.h: New file, needed by dfa.c.
- * Makefile.am (base_sources ): Added xalloc.h.
-
-Thu Mar 18 07:29:45 2010 Jeff Chua <jeff.chua.linux@gmail.com>
-
- * io.c (two_way_open): Make failure to open a socket a non-fatal error.
- Allow the amount of time to sleep during socket retries to come from an
- undocumented env variable giving time in milliseconds.
-
-Mon Mar 8 20:58:05 2010 Paolo Bonzini <bonzini@gnu.org>
-
- More fixes from GNU grep.
-
- * dfa.c (dfaexec): Remove register keywords.
- (FETCH): Use do..while(0) idiom.
- (parse_bracket_exp_mb): Return MBCSET.
- (in_coll_range): New.
- (lex): Assign return value of parse_bracket_exp_mb to lasttok,
- return it. Use in_coll_range instead of regcomp/regexec.
-
-Mon Mar 8 20:36:35 2010 Jim Meyering <jim@meyering.net>
-
- Fixes from GNU grep development version:
-
- build: avoid shadowing warnings
- * dfa.c (match_mb_charset): Rename parameter: s/index/idx/.
- (check_matching_with_multibyte_ops, match_anychar): Likewise.
-
- build: avoid shadowing warning for unused "rs"
- * dfa.c (transit_state): Remove dead stores;
- Ignore transit_state_consume_1char return value.
-
- syntax: remove trailing blanks
- * dfa.c: Remove trailing blanks, to ease synchronization with grep.
-
- clean-up: limit visibility of an internal function
- * dfa.c (match_mb_charset): Declare static.
-
- build: rename local to avoid shadowing global, dfa
- * dfa.c (dfamust): Rename parameter: s/dfa/d/.
-
-Thu Feb 18 22:44:01 2010 Arnold D. Robbins <arnold@skeeve.com>0
-
- * eval.c (push_args): Clear the stack to NULL pointers after mallocing
- it. Fixes yesterday's problem when called from a rule.
- See test/fcall_exit2.awk. Thanks to Seb <sbb@tuxfamily.org>.
-
-Wed Feb 17 23:19:32 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (pop_fcall): Check that argument on stack is not NULL before
- attempting to clear it; add comment explaining it.
- (push_args): Set nodes to zero for argument to make sure that values
- are NULL for testing later in pop_fcall. See test/fcall_exit.awk.
- Thanks to Seb <sbb@tuxfamily.org>.
-
-Sun Jan 31 22:46:49 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (prec_level): Add Node_regex to the switch so that
- `! /xxx/' works. Thanks to Hermann Peifer <peifer@gmx.eu> for
- reporting the bug.
-
-Thu Jan 28 17:40:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure, Makefile.am: Updated to Autoconf 2.65 and Automake 1.11.1,
- libsigsegv 2.8.
-
-Thu Jan 21 23:24:56 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pprint): Separate out code for Node_switch_body and only
- print the lnode; avoids printing the default case twice. Thanks to
- Hermann Peifer <peifer@gmx.eu> for reporting the bug.
-
-Sun Jan 3 21:03:01 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Added casts as needed to silence warnings about
- signedness of pointers from GCC 4.x.
-
-Fri Jan 1 11:41:50 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): At pr_tail, remember to take the precision
- into account when determining how many characters to copy out.
- Thanks to tczy <cy@wre.ath.cx> for the bug report.
-
-Tue Dec 8 12:29:30 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac, awk.h: Remove use of <signum.h> header file.
-
-Mon Dec 7 15:25:02 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (format_val): Use <= and >= in the comparisons with
- LONG_xxx instead of < and > so that things work correctly on systems
- with 64 bit integers. Thanks to Stephen Davies for pointing out
- the problem.
-
-Sat Nov 21 23:14:59 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): If there is not an actual thousands
- separator character, don't let `quote_flag' have an effect. Fixes
- test failure on Solaris 10, which bizarrely says to use the
- thousands separator character every three digits, but then doesn't
- actually supply one. Thanks to Nelson Beebe for the initial
- report.
-
-Mon Nov 16 22:27:44 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (getnode): If MPROF wrap body in parentheses; remove
- incorrect trailing semicolon.
- * bisonfix.awk: Convert "y.tab.c" to "awkgram.c" for those rare
- instances where we need to use a debugger on the parser so
- that gdb will find the right source file.
-
-2009-10-26 Andreas Schwab <schwab@linux-m68k.org>
-
- * io.c (iop_open): Set errno when rejecting a directory.
-
-Tue Oct 20 22:48:14 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (constant_fold): Fix check for two strings to look
- at `right->flags'. Fix division code to check for division by
- zero first. Thanks to Stephen Davies <scldad@sdc.com.au>
- for both.
-
-Fri Oct 16 08:41:29 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): Do the close-on-exec setting before
- attempt to get a FILE *. Thanks to Andreas Schwab.
-
-Wed Oct 14 23:25:47 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): When opening a file, set the close-on-exec flag.
- Thanks to Chris Pearson <kermit4@gmail.com> for the bug report.
-
-Tue Oct 6 21:07:23 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): When an option requires an argument and we print a
- message, call `usage' and exit.
-
- Fix all calls to `usage' to use EXIT_FAILURE and EXIT_SUCCESS
- instead of 1 and 0.
-
-Sun Oct 4 21:46:11 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Don't reset argv[0] to myname. In call
- to `init_args', pass argv[0] if do_posix. Based on
- Fedora bug report.
-
-Sun Oct 4 18:45:06 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): In lint warning, don't clobber
- the character at the end of the subscript; instead use the
- length to limit the number of characters printed. Thanks to
- Nick Hobson <nick.hobson@yahoo.com>.
-
-Sun Aug 30 22:40:12 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_length): Handle the case where Node_var_new
- was passed in as a parameter via a function call parameter.
- Thanks to Greg Johnson <gregfjohnson@yahoo.com> for reporting
- the bug.
-
-Tue Aug 11 19:23:51 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (parenthesize_expr): New function.
- (tree_eval): Use it for Node_and and Node_or. Thanks to
- Hermann Peifer <peifer@gmx.eu> for reporting the bug.
-
-Tue Aug 4 06:04:23 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): zero_flag does not apply to
- %c and %s conversions. Thanks to Mike Brennan and Thomas Dickey
- for the bug report.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Fri Jul 17 08:35:10 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.c: Rebuilt with current Bison (2.4.1).
-
-Thu Jul 9 22:55:17 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * (NEWS README array.c awk.h awkgram.y builtin.c configure
- configure.ac custom.h dfa.c ext.c field.c floatcomp.c io.c
- main.c node.c profile.c re.c replace.c): Update copyrights
- and other prep for a release.
-
-Thu Jul 9 22:20:04 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (init_locale): New function to make a deep copy of the
- struct lconv. Thanks to KIMURA Koichi <kimura.koichi@canon.co.jp>
- for the info.
- * eval.c (r_tree_eval): Further improve Node_assign_concat code to
- temporarily to keep reference counts correct and to get the
- desired behavior.
-
-Mon Jul 6 20:29:12 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * floatmagic.h: Remove @ signs copied from Texinfo.
- It would help if I were more awake.
-
-Sat Jul 4 21:55:18 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (base_sources): Add floatmagic.h so it'll
- go into the tar ball.
-
-Fri Jul 3 13:47:36 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (is_scalar): Add Node_func_call to list.
- (pp_concat): Make logic smarter for tree created by Node_assign_concat.
-
-Fri Jul 3 13:01:49 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (optimize_concat): New function that applies
- Node_assign_concat more generally.
- * eval.c (r_tree_eval): Improve Node_assign_concat code to temporarily
- increase the stref on `l' to avoid side effects during evaluation of
- `r'. This makes test/nasty.awk work. Ouch.
-
-Tue Jun 30 22:10:37 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * floatmagic.h: New file.
- * builtin.c (format_tree): Use functions defined in floatmagic.h.
-
-Tue Jun 30 21:57:47 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac, Makefile.am: Add new --disable-libsigsegv command line
- option to configure.
- (LIBSIGSEGV, SEGVINCLUDE, SEGVSUBDIR): New variables that will be empty
- if libsigsegv is disabled so nothing will happen, and that will have the
- right values otherwise. They are then substituted into the Makefile.
-
-Wed Jun 24 23:00:10 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * bootstrap.sh: Revised. Now works again. We think. (CVS-only file)
-
-Wed Jun 24 21:57:30 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h: Move z/OS EXIT_FAILURE definition from here to ...
- * awk.h: Here. Define at end after regular definition.
-
-Thu Jun 18 06:17:38 2009 Scott Deifik <scottd@amgen.com>
-
- * awk.h: Don't define HAVE_SIGSEGV_H for DJGPP.
-
-Thu Jun 18 05:38:42 2009 Dave Pitts <dpitts@cozx.com>
-
- * custom.h: Changes needed for z/OS.
-
-Wed Jun 10 08:22:53 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (parse_escape): Add a lint warning if \x.. has more than two
- hex digits.
-
-2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
-
- * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
-
-Mon Jun 8 22:13:49 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Update to Autoconf 2.63, Automake 1.11, Libtool 2.2.6a
-
- * ltmain.sh: New file.
- * configure.ac: Changes to keep infrastructure tools happy.
- * alocal.m4, configure: Regenerated.
- * Makefile.in, */Makefile.in: Regenerated.
-
-Mon Jun 8 07:43:25 2009 John DuBois <spcecdt@armory.com>
-
- * builtin.c (mbc_byte_count, mbc_char_count): Make sure all declarations
- come before executable code, for older compilers.
- * dfa.c (insert): Ditto.
- * io.c (devoopen): Ditto.
-
-Thu May 21 21:11:44 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Add simple constant folding.
-
- * awk.h (do_optimize): New declaration.
- (calc_exp): Add declaration.
- * eval.c (calc_exp): Make non-static.
- * main.c (do_optimize): New variable.
- (opttab): Add new entry for --optimize.
- (main): Add 'O' to optlist and code for argument parsing.
- (usage): Update for new option.
- * awkgram.y (Node_concat, Node_exp, Node_times, Node_quotient, Node_mod,
- Node_plus, Node_minus): Call `constant_fold' to create the node in
- the tree.
- (constant_fold): New function.
-
-Fri May 15 16:02:01 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (getnode): For MPROF: Fix a typo.
-
-Fri May 15 14:10:44 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Function arguments cannot be reserved variable names, per POSIX.
-
- * main.c (struct varinit): Add flags member.
- (varinit): Add values for flags member (one or both of NON_STANDARD
- or NO_INSTALL). Add entries for the rest of the gawk variables and
- sort them, so that the table can be searched by ...
- (is_std_var): New routine to see if a name is a standard variable.
- * awk.h (is_std_var): Add declaration.
- * awkgram.y (func_install): Use new routine and issue error.
-
-Wed Apr 22 07:42:05 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (sub_common): In code for handling \<dig> replacements,
- first make sure that <dig> is within the range of parentheses sets
- given, and then make sure that the subpattern start is not -1, meaning
- that something actually matched. Thanks to Martin Olsson
- <mnemo@minimum.se> for the bug report.
- (do_length): Add a lint warning if `length' is passed an untyped
- argument.
-
-Thu Apr 16 22:59:32 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (func_call): Save nloops_active; if after function returns
- the actual nloops_active is greater than the saved value, it means
- there was a return inside the loop body, so pop off the necessary
- number of loops. Bug reported by Aleksey Cheusov <a.cheusov@gmail.com>.
- Gawk was not leaking memory - that is, things were still pointed
- to, but memory use could keep on growing.
-
-Fri Mar 27 10:59:11 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): Add lint warnings for fieldwidth and/or
- precision in %%, and add lint warning for unknown format specifier
- (e.g. %b). Thanks to "joanes.polus" <joanes.polus@laposte.net> for
- the report.
-
-Wed Mar 18 18:15:41 2009 Pat Rankin <rankin@pactechdata.com>
-
- * awk.h (EXIT_SUCCESS, EXIT_FAILURE): Move VMS-specific values
- to vms/vms-conf.h.
- (EXIT_FATAL): Define here instead of in msg.c.
- * msg.c (EXIT_FATAL): Move definition to awk.h.
-
-Mon Mar 16 18:58:09 2009 Pat Rankin <rankin@pactechdata.com>
-
- * main.c [#if HAVE_SIGSEGV_H]: For the #else case (VMS),
- (stackoverflow_context_t): Dummy typedef for use in prototypes;
- (stackoverflow_install_handler): Make macro expand to 0 rather
- than nothing so that (void) cast on invocation of it works.
-
- * main.c (catchstackoverflow): Don't return 0 from void function.
-
-Wed Feb 25 21:34:14 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (tokentab): Have only one copy of BEGIN / END.
- (tokcompare): New function.
- (check_special): Sort tokentab for EBCDIC systems.
-
-Sun Feb 15 22:39:30 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pp_delete): Print tree->exec_count to actually get
- the value printed. Thanks to Hermann Peifer <peifer@gmx.eu>
- for reporting the bug.
-
-Thu Feb 12 21:54:34 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y: Change to use EXIT_FAILURE.
- * msg.c [EXIT_FATAL]: New macro.
- * msg.c (r_fatal): Change to use EXIT_FATAL.
- Thanks to Pat Rankin for pointing these out.
- * re.c (reflags2str): Account for RE_SYNTAX_EMACS.
- * awk.h: If not VMS, define HAVE_SIGSEGV_H.
- * main.c: Check HAVE_SIGSEGV_H before including <sigsegv.h>. If not
- there, define dummy macros.
- (catchsegv, catchstackoverflow): Remove unneeded comment. Add return 0
- for compilers that care.
-
-Mon Feb 9 05:24:52 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [CONST]: Renamed CONSTANT to avoid conflict with libsigsegv
- on Windows.
- * awkgram.y, field.c, re.c: Update all uses.
-
-Tue Feb 3 22:46:59 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (do_close): Wrap updating of ERRNO in check for not
- do_traditional.
-
-Sat Jan 31 23:14:00 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): For '%s', don't count the multibyte
- characters if we are just copying all the characters. Gives
- big speedup. Thanks to Hirofumi Saito <hi_saito@yk.rim.or.jp>
- for reporting the problem.
-
-Thu Jan 29 21:14:30 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (parse_field, re_parse_field, def_parse_field,
- posix_def_parse_field, null_parse_field, sc_parse_field,
- fw_parse_field): Add new last arg `in_middle'. Ignored by all
- except re_parse_field.
- (re_parse_field): Enhance logic to only allow ^ in a regex to match
- if indeed at the beginning of a record.
- (getfield): Adjust call to parse_field.
-
-Tue Jan 27 21:42:47 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes suggested by Toni Schilling <Schilling@equicon.de>,
- as modified by feedback from Pat Rankin, and some help
- from me.
-
- * awk.h [WEXITSTATUS]: Improve definition for MSC and VMS.
- [EXIT_SUCCESS, EXIT_FAILURE]: Define if they aren't.
- * io.c, main.c, profile.c: Switch to using EXIT_xxx instead of
- 0 and 1.
- (main): Use constants instead of 0/1 for exit_val variable.
- * eval.c (interpret): Map exit value from `exit' statement into
- success / fail constants for VMS for exit_val variable.
-
-Tue Jan 20 07:35:34 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.h: Define __USE_GNU if not _LIBC; needed for non-GLIBC
- systems such as, oh say, Mac OS X.
-
-Tue Jan 13 09:23:40 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.c, regex_internal.h: Remove some changes that are no
- longer needed after sync with GLIBC.
-
-Mon Jan 12 22:27:10 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Bi-annual sync with GLIBC.
-
- * regexec.c, regex.h, regex_internal.c, regcomp.c, regex_internal.h,
- regex.c: Reapply any portability patches specific to gawk.
- * getopt.c: Sync with GLIBC.
-
- Base versions:
- getopt.c 1.57 Thu Jan 8 20:02:05 2009
- getopt.h 1.21 Fri Mar 19 00:19:32 2004
- getopt1.c 1.10 Tue Mar 9 10:35:37 2004
- getopt_int.h 1.1 Tue Mar 9 10:31:19 2004
- regex.c 1.129 Tue Sep 6 20:49:44 2005
- regexec.c 1.99 Thu Jan 8 20:02:06 2009
- regexec.c 1.99 Thu Jan 8 20:02:06 2009
- regex.h 1.43 Wed Jan 16 10:09:47 2008
- regex_internal.c 1.69 Thu Jan 8 20:02:06 2009
- regex_internal.h 1.76 Thu Jan 8 20:02:06 2009
- regcomp.c 1.120 Thu Jan 8 20:02:06 2009
-
-Mon Jan 5 23:07:58 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (devopen): Add a retry to calls to socketopen. Tunable
- via undocumented GAWK_SOCK_RETRIES environment variable. Based
- on code from Juergen Kahrs <Juergen.Kahrs@vr-web.de> after a
- suggestion from Hermann Peifer <peifer@gmx.eu>.
-
-Mon Jan 5 22:48:39 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): A getline from a directory is no longer
- fatal; instead it returns -1. Thanks to Paolo <oopla@users.sf.net>
- for the report.
-
-Mon Dec 29 22:04:57 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): Case for 's', improve logic for setting
- the number of characters to copy, also at pr_tail. Based on
- bug report by Hermann Peifer <peifer@gmx.net>.
-
-Thu Dec 11 21:23:50 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_length): If the wide string has zero length
- but the bytes are more than zero, use the number of bytes.
- (do_index): Similar also: fall back to byte count if the
- bytes don't make a wide-character string.
- Bug reported by "Carlos G." <charlie.brown.uy@gmail.com>
-
- (do_substr): If defaulting to length of rest of the string,
- do it based on the wide char string if it's valid.
-
-Fri Dec 5 11:12:11 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (free_rp): New function.
- (redirect): Improved logic for yesterday's change, including
- use of free_rp.
- (close_redir): Use free_rp.
-
-Thu Dec 4 22:35:05 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): Only put the new struct redirect into
- the list if the file or pipe could actually be opened. Fixes
- a bug with the wrong return value of close, noticed by
- Seb <sbb@tuxfamily.org>.
- * dfa.c (parse_bracket_exp_mb): Don't zero out work_mbc->chars
- after we malloc'ed it. Fixes a leak found by valgrind when
- using UTF-8. (Hmmm. This got fixed in January 2007; It seems
- to have crept back into the code in the August 2007 merge with
- GNU grep. Sigh.)
-
-Mon Oct 20 11:47:59 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Add -g3 and -gdwarf-2 to CFLAGS if compiling with
- GCC and doing development. Should have done this ages ago.
-
-Sun Aug 31 22:03:55 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_BINMODE): Tighten up the code even more so
- that it matches the documentation.
-
-Mon Aug 25 22:41:47 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_BINMODE): Tighten up the code to only allow
- certain reasonable values when setting BINMODE.
-
-Fri Aug 22 14:43:49 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (nextfile): Users Strong In The Ways Of The Source can use
- non-existant files on the command line without it being a fatal error.
-
-Wed Jul 30 23:10:51 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (research): Don't ever use DFA if need_start. It can
- break on some weird cases. Reported by
- "T. X. G." <leopardie333@yahoo.com>.
-
-Wed Jul 30 22:27:20 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_match): Add MAYBE_NUM flag to elements of array
- created by `match' since data could come from user. Similar
- semantics to `split'. Thanks to Dr. Dirk Zimoch <dirk.zimoch@psi.ch>
- for reporting the bug.
-
-Tue Jun 24 07:44:06 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (insert): Reworked for significant speed improvement
- by Johan Walles <johan.walles@gmail.com>. Imported from grep
- bug list.
- * profile.c (tree_eval): Do a return after all the built-in
- variables instead of a break. Thanks again to Hermann Peifer
- <peifer@gmx.eu> for finding the problem.
-
-Sun Jun 22 23:08:14 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (format_val): Restore old code to use %ld when the value
- is within the range of a long; improves performance noticably for
- applications that convert integers to strings. Use %.0f only for
- integral values that are outside the range of a long. Thanks to
- Hermann Peifer <peifer@gmx.eu> for pointing out the existence
- of a problem.
-
-Fri May 23 12:08:24 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (epsclosure): Change type of `visited' from int to char for
- potential speedup. Based on bug report to bug-grep list from
- Johan Walles <johan.walles@gmail.com>.
-
-Wed May 14 05:55:48 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): For `%c' case, add a lint warning
- if the value is greater than 255.
- (mbc_byte_count, mbc_char_count): Remove unused variable `i'.
-
-Thu Apr 24 20:31:03 2008 Bruno Haible <bruno@clisp.org>
-
- * main.c (main): Move call to catch SIGBUS to before installation of
- libsigsegv handler, since on some systems libsigsegv installs its
- own handler for SIGBUS.
- [STACK_SIZE]: Add a constant instead of inline. ADR.
-
-Wed Apr 23 22:30:27 2008 Duncan Moore <duncan.m00re@btinternet.com>
-
- * builtin.c (state): Do as an integer array for systems that need it.
- (do_rand, init_rand): Modify call to `initstate' as needed.
-
-Wed Apr 23 22:22:06 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (prednames): Add an extra zero to final initializer to
- silence a compiler warning. Reported by Duncan Moore
- <duncan.m00re@btinternet.com>.
-
-Wed Apr 23 21:36:06 2008 Steffen Schuler <schuler.steffen@googlemail.com>
-
- * field.c (fw_parse_field): Add code for multibyte case.
-
-Sat Mar 15 22:17:21 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_length): Handle the case of the parameter being
- an array that was a function parameter.
-
-Tue Mar 11 22:49:11 2008 Kimura Koichi <kimura.koichi@canon.co.jp>
-
- * builtin.c (format_tree): Fix call to mbc_byte_count to pass the
- right number of characters based on the format type.
-
-Tue Mar 11 22:31:58 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * libsigsegv: Incorporated into the dist.
- * Makefile.am (SUBDIRS): Added. Make it first so that the library
- is built before gawk is.
- (LDADD): Add the library.
- (AM_CPPFLAGS): Add -I option to find <sigsegv.h> header.
- * configure.ac: Add call to AC_CONFIG_SUBDIRS for libsigsegv.
- * main.c (catchsegv, catchstackoverflow): New functions.
- (main): Call into sigsegv library with them.
-
-Tue Mar 4 21:02:25 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (mbc_char_count, mbc_byte_count): New functions to return
- the number of m.b. chars there are and the number of bytes needed to
- copy them.
- (format_tree): Use them for %s and %c cases to adjust precision and
- for copying characters at pr_tail label.
-
-Thu Feb 14 14:05:01 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (init_args): Adjust type of third arg to remove warning from
- GCC 4.2, add cast in call to make_string. Bleah.
-
-Fri Jan 25 12:13:39 2008 Dave Pitts <dpitts@cozx.com>
-
- * README_d/README.zos: New file.
- * Makefile.am: Add sed on y.tab.c to convert older Bison "parse error"
- messages to "syntax error" messages.
- * configure.ac: Added ZOS_USS changes.
- * m4/arch.m4: Added ZOS_USS changes.
- * m4/inttypes_h.m4: Added ZOS_USS changes.
- * m4/inttypes.m4: Added ZOS_USS changes.
- * m4/stdint_h.m4: Added ZOS_USS changes.
- * awkgram.y: Added USE_EBCDIC changes for EBCDIC collating sequence.
- * awk.h: Added ZOS_USS compile changes.
- * eval.c: Added EBCDIC casetable and ZOS_USS changes.
- * regcomp.c: Added btowc function for ZOS_USS.
- * regex.h: Changed __string to __cstring to avoid ZOS_USS header usage.
- * regex_internal.h: Added ZOS_USS changes and type defines.
-
-Sun Jan 13 08:16:38 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (epsclosure): Replace MALLOC + zero-out-loop with CALLOC for
- large potential speedup, based on bug report to bug-grep list from
- Johan Walles <johan.walles@gmail.com>.
- (dfaanalyze): Made a similar change.
-
-Fri Dec 21 11:22:16 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pprint): Add a missing `#ifdef PROFILING'.
-
-Thu Dec 13 22:19:19 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (parenthesize): Remove "!" from output string.
- (tree_eval): Fix quotes for delete array case.
- (pp_var): New function, call it as appropriate everywhere else.
-
-Fri Nov 30 11:11:52 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (socketopen): Use NULL as first argument to `getaddrinfo'
- if any_remote_host is true. Should help on Non-GLIBC systems.
-
-Thu Nov 15 22:01:36 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (two_way_open): Case for ptys. Change search for letters
- to avoid ASCII / EBCDIC problems.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Sun Oct 14 23:19:12 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * Makefile.am: Avoid GNU make-specific `make -C'.
-
-Sun Oct 14 19:37:01 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Add check for `atexit', needed by replacement
- version of `snprintf'.
-
-Sun Sep 30 21:50:59 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Rationalize locale's influence on %'g, strtonum, and input.
-
- * awk.h (use_lc_numeric): Add declaration.
- * builtin.c (format_tree): Add check for quote_flag and set
- LC_NUMERIC so that The Right Thing gets done, then reset it.
- (do_strtonum): Pass use_lc_numeric as second arg to isnondecimal.
- * main.c (main): Have do_posix set use_lc_numeric also.
-
-Thu Sep 27 21:36:23 2007 Stepan Kasal <skasal@redhat.com>
-
- * configure.ac: Do not instantiate version.c; remove the hack
- to keep version.c from being removed upon `make distclean'.
- * Makefile.am (version.c): New rule.
- (.c.i, SUFFIXES): Remove, `.i' is unused.
- (MAINTAINERCLEANFILES): Remove awkgram.c; Automake takes care of that.
-
-Wed Sep 26 14:40:13 2007 Eli Zaretskii <eliz@gnu.org>
-
- * builtin.c (format_tree): Handle non-standard snprintf that
- returns a negative value when the buffer is too small.
-
-Tue Sep 25 23:27:41 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * ChangeLog: Removed all leading spaces. Fixed up formatting of
- entries to have capital letter after the colon. Fixed a number of
- entries to have the '*' in the right place. ASCII instead of ascii.
- Capitalize Linux. (Is this anal-retentive or what? Sheesh.)
-
-Tue Sep 25 08:24:11 2007 KIMURA Koichi <kimura.koichi@canon.co.jp>
-
- * awk.h: Add include of <io.h> for Visual Studio.
- * regex_internal.h: Do the right thing for replacing alloca.
-
-Sat Sep 22 23:26:27 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_FIELDWIDTHS): Restore behavior of 3.1.4 that allowed
- FIELDWIDTHS to be "" without crashing, and such a value has NF = 0.
- Yet Another Dark Corner. Thanks to Glenn Zazulia <gnu@t1.zazu.com>
- for pointing out the problem.
-
- Unrelated:
-
- * builtin.c (format_free): Make `quote_flag' not sticky. Thanks to
- Ulrich Drepper for pointing this out.
- * main.c (main): Adjust calls to `setlocale' and `localeconv' so that
- the %'d flag will work even if not using the locale's decimal point.
-
-Thu Sep 20 21:02:41 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (hash, awk_hash, gst_hash_string): Add fourth argument
- pointer to retrieve code. Only assign a value if not NULL.
- Fix most places to pass NULL for fourth argument.
- (assoc_lookup): Save the code in the node for use in growing the
- array later.
- (grow_table): Use the saved code instead of recomputing each time.
- * awk.h (NODE hash): Add `code' member and `ahcode' macro.
- (hash): Revise declaration.
- * awkgram.y: Revise calls to `hash'.
-
-Tue Aug 21 17:47:07 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (copyleft): Cite version 3 of the license.
- * dfa.c: Minor edits to sync with grep 2.5.3.
-
-Sat Aug 11 22:48:11 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * COPYING: Replaced with GPL 3.
- * All other relevent files: Upgraded to GPL 3.
-
-Fri Aug 3 15:01:38 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * builtin.c (format_tree): Free `obuf' before call to `fatal'
- to keep valgrind happy.
-
-Mon Jun 4 01:12:21 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * All relevant files: Updated copyright year to 2007.
-
-Mon May 28 08:06:15 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (use_lc_numeric): New variable, true for new
- option `--use-lc-numeric'.
- (optab): Add option "use-lc-numeric".
- (usage): Add to usage message.
- (main): Allow the --use-lc-numeric option to also use the
- local decimal point.
-
-Fri May 18 16:26:00 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (_TANDME_SOURCE): Add test for ! _SCO_DS for
- SCO systems. Thanks to John DuBois <spcecdt@armory.com>
-
-Tue May 15 13:14:04 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- General capability suggested by Michael May <mmlpz@t-online.de>.
-
- * configure.ac: New option --disable-directories-fatal. Makes gawk
- silently skip directories on the command line.
- * io.c (iop_open): Add fourth parameter, pointer to flag which is set
- to true if the file is a directory. In this case, close the fd and
- return NULL.
- (nextfile): Modify call to iop_open. Add logic to check for directory
- and skip if --disable-directories-fatal was used. If the configure flag
- was not used, then if do_traditional also skip.
- (redirect): Modify call to iop_open and call fatal if isdir is true.
-
-Mon May 7 14:51:54 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * POSIX.STD: Updated.
-
-Wed May 2 19:29:56 2007 Stepan Kasal <kasal@ucw.cz>
-
- Revert precedence of concatenation and | getline.
- From mail dated 2005-10-31.
-
- * awkgram.y (common_exp): Move the two rules for naked regexp and
- the rule for "(...) in arr" to ...
- (non_post_simp_exp): ... here ...
- (simp_exp): ... and here, respectively. Fixes test/parsefld.awk/.
- (simp_exp_nc): New nonterminal, needed to fix the
- precedence of concatenation over "|getline".
- (common_exp): Can also start with simp_exp_nc.
-
-Tue May 1 19:53:11 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Work around problem with /ab{0}c/.
- * dfa.h (struct dfa): Add member `broken'.
- * dfa.c (dfainit): Initialize it to false.
- (lex): Set it if `minrep == maxrep && minrep == 0'.
- * re.c (avoid_dfa): Check flag and return TRUE if set.
-
-Tue May 1 05:34:53 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Add calls to AM_LANGINFO_CODESET, and gt_LC_MESSAGES.
- Thanks to Matthew Burgess <matthew@linuxfromscratch.org>.
-
-Sun Apr 29 22:55:12 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (utf8_sb_map): Remove const if not __GNUC__ >= 3.
- * regex_internal.h (re_dfa_t): Bracket bizarre macro call with
- check for _LIBC.
- Thanks to Nelson Beebe for finding both problems.
-
-Sun Apr 29 13:10:31 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_strftime): Add optional third argument to strftime()
- which if non-zero or non-null means to use UTC.
- * awkgram.y (tokentab): Allow three arguments to strftime.
-
-Fri Apr 27 11:44:27 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * README.cvs, bootstrap.sh: Added to CVS archive, not for
- inclusion in tarballs.
-
-Fri Apr 20 16:48:30 2007 Pat Rankin <rankin@pactechdata.com>
-
- * awk.h: Move inclusion of redirect.h before HAVE_func blocks.
-
-Tue Apr 24 21:55:36 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (research): In the multibyte case, fall back to the full
- matcher if need_start, since there are bugs in the dfa matcher
- in some obscure cases. Sigh.
- * builtin.c (format_tree): When using %.0f instead of %d, assert
- that we're not malloc-ing zero.
-
-Tue Apr 17 21:51:40 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Portability fixes for lsbcc from Nelson Beebe.
-
- * configure.ac: Check for stddef.h header.
- * regex.h: Use check and include header to get size_t definition.
- * main.c: Update UPDATE_YEAR, add #ifdef for HAVE_MTRACE.
-
-Tue Apr 17 13:49:13 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Add test for struct sockaddr_storage.
- * io.c: Add macro to redefine sockaddr_storage as sockaddr.
-
-Tue Apr 17 05:45:19 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Make it static, to match declaration at the
- top of the file. (Thank you GCC for not reporting this. Grr.)
-
-Fri Apr 13 00:29:24 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * replace.c: Only include missing/getaddrinfo.c if HAVE_SOCKETS
- is defined. Avoids problems on VMS. Thanks to Pat Rankin.
-
-Tue Apr 10 18:53:04 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y, builtin.c, eval.c, ext.c, field.c, io.c,
- node.c: Added some sanity to the lint warnings, to only
- print them once if they are syntactic or of the type where
- they don't need to be repeated. Switch to `short' instead
- of `int', and in general use a variable named `warned', for
- consistency.
-
-Sun Apr 8 16:49:28 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y: Add guard code to ifdef out "signed" for VMS. Thanks for
- the heads-up to Pat Rankin.
- * regcomp.c (utf8_sb_map, init_dfa): Move non-GCC code to initialize
- this array into code, to preserve word-size independance.
- * configure.ac: Add check for <arpa/inet.h>.
- * io.c: Include <arpa/inet.h> if we have it, instead of keyed off
- Tandem, needed on some Unix systems.
- * awk.h, main.c, msg.c, awkgram.y: Move to use of CAN_USE_STDARG_H
- instead of continuously repeating check for header and defined STDC
- and STDC. Thanks to Pat Rankin.
-
-Fri Apr 6 15:28:09 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_length): Only print `length(array)' lint warning once.
- * node.c (dump_wstr): Restore from being ifdef'ed out. Useful in case
- it needs to be called from a debugger.
- * regcomp.c (utf8_sb_map): Fix gcc-specific code.
- * awk.h (snprintf): Add declaration in case not available on the system.
- (Ceil, Floor): Add macros changing the name for VMS, in an attempt to
- fix linkage problems.
- * io.c: Simplify includes for internet headers and for getaddrinfo
- defines.
-
-Wed Apr 4 23:38:24 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c [AI_ADDRCONFIG]: Add a definition in case it's not available.
- * main.c (usage): Add comment for translators to add translation
- bug report address.
-
-Wed Apr 4 18:26:45 2007 Pat Rankin <rankin@pactechdata.com>
-
- * regexec.c (build_trtrable): Add missing #if HAVE_ALLOCA.
-
-Thu Mar 29 19:30:20 2007 Pat Rankin <rankin@pactechdata.com>
-
- * re.c (make_regexp): Cast casetable to RE_TRANSLATE_TYPE.
-
-Mon Mar 19 12:35:00 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Finish removing references to STRTOD_NOT_C89.
-
- * awk.h (gawk_strtod): Use now if there is no strtod.
- * replace.c (strtod.c): Include if there is no strtod.
- * configure.ac [GAWK_AC_FUNC_STRTOD_C89]: Removed.
-
-Mon Mar 19 12:17:16 2007 Kimura Koichi <kimura.koichi@canon.co.jp>
-
- * dfa.c (dfaexec): Add check for half-width katakana characters in
- character classes in ShiftJIS locale.
- From mail originally sent Mon, 01 Aug 2005 09:07:55 +0900
-
-Fri Mar 9 11:53:25 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (rebuild_record): Assert that wide string is off when
- creating new fields. Inspired by Karel Zak.
-
-Fri Mar 9 11:26:01 2007 Matthew Woehlke <mwoehlke@tibco.com>
-
- * io.c (get_a_record): Limit the max amount read to SSIZE_MAX. Needed
- on Tandem systems where this amount is incredibly small.
-
-Tue Mar 6 08:17:49 2007 Paul Eggert <eggert@cs.ucla.edu>
-
- * node.c (is_ieee_magic_val): Don't rely on strncasecmp; it mishandles
- ASCII bytes in some locales.
- (get_ieee_magic_val): Use strtod if it works, relying on our handbuilt
- code only if it doesn't work. This is more likely to do the right
- thing with strings like "-nan".
-
-Tue Feb 27 20:51:29 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac (AM_PROG_CC_STDC): Removed, per email suggestion
- from Stepan Kasal some time ago.
-
-Tue Feb 27 20:44:07 2007 Aleksey Cheusov <vle@gmx.net>
-
- * awk.h: Revise checks for MEMCPY_ULONG and MEMSET_ULONG
- for MS Interix using MSVC.
- * configure.ac (AC_CHECK_FUNCS): Add checks for memcopy_ulong
- and memset_ulong.
- From mail dated Tue Aug 30 12:38:39 2005.
-
-Mon Feb 26 12:47:10 2007 Tony Leneis <tleneis@cvrreg.com>
-
- * dfa.c (dfacomp): Check that regexp is non-zero in length
- also. Avoids problems with empty regex and IGNORECASE on
- systems where `malloc(0)' returns a non-NULL pointer.
- From mail dated Wed, 26 Oct 2005 15:42:07 -0700.
-
-Wed Feb 21 10:23:12 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * floatcomp.c (Floor, Ceil): Restore correct expression for Cray.
- Then ifdef out the whole business, since it's likely to be obsolete.
- Thanks to Paul Eggert.
-
-Mon Feb 19 12:28:47 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (format_val): Simplify code: always format the value
- ourselves. Use %.0f if the value is integral.
- * floatcomp.c (dval_out_of_range): Remove function, not needed.
- (awknum_fraction_bits): Removed.
- (adjust_uint): New function, defined IFF have uintmax_t.
- * builtin.c (tmp_integer): Use adjust_uint.
- Move include of <inttypes.h> and <stdint.h> ...
- * awk.h: to here.
- (awknum_fraction_bits): Removed.
- (adjust_uint): Declare, or define as do-nothing macro.
-
-Sun Feb 18 17:43:33 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c, floatcomp.c: Add include of <math.h> to get
- correct declarations of math functions.
- * configure.ac: If doing development, add -DYYDEBUG and also
- -fno-builtin for GCC.
-
-Wed Feb 14 19:42:08 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Add support for special infinity and NaN values in non-POSIX
- mode, and in POSIX mode, just call system `strtod'.
-
- * configure.ac [GAWK_AC_FUNC_STRTOD_C89]: Comment out.
- * node.c (is_ieee_magic_val, get_ieee_magic_val): New functions.
- (r_force_number): Adapt logic and use new functions.
-
-Tue Feb 13 13:02:32 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Move Paul's numeric stuff to a separate file to make code cleaner.
-
- * floatcomp.c (awknum_fraction_bits): New variable.
- (Floor, Ceil): Functions, moved here from macros in builtin.c.
- (dval_out_of_range): New function for checking if double is in range
- of long.
- (FLT_RADIX, FLT_MANT_DIG, DBL_MANT_DIG, AWKSMALL_MANT_DIG,
- AWKNUM_MANT_DIG, AWKNUM_FRACTION_BITS): Moved here from awk.h.
- * awk.h: Add decls of stuff now in floatcomp.c.
- * Makefile.am[base_sources]: Add floatcomp.c.
- * builtin.c (tmp_integer): Refer to `awknum_fraction_bits'
- instead of AWKNUM_FRACTION_BITS.
- * node.c (format_val): Call `dval_out_of_range' instead of
- inline coding the test.
-
-2007-02-06 Paul Eggert <eggert@cs.ucla.edu>
-
- * node.c (format_val): Fix bug when handling numbers close to
- LONG_MIN and LONG_MAX.
- * awk.h (FLT_RADIX, FLT_MANT_DIG, DBL_MANT_DIG, AWKSMALL_MANT_DIG,
- AWKNUM_MANT_DIG, AWKNUM_FRACTION_BITS): Moved here from builtin.c.
- * builtin.c: Move those macros to awk.h.
- * awk.h (DBL_FRACTION_BITS): New macro.
-
-Fri Feb 9 13:40:10 2007 Matthew Woehlke <mw_triad@users.sourceforge.net>
-
- More Tandem fixes.
-
- * configure.ac: Check in Tandem's zrldsrl library for dlopen.
- * regex_internal.h: Move <alloca.h> include into ifdef.
- * regexec.c: Bracket alloca uses. Fix GCC use of `?:'.
-
-Fri Feb 9 13:30:15 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * replace.c: Add include of snprintf.c. Ooops!
- * configure.ac: Add check for mkstemp and tmpfile for replacement
- snprintf.c.
-
-Tue Feb 6 14:33:51 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (format_val): Restructure a bit to remove need for and
- use of goto.
-
-Sun Feb 4 16:35:21 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (field_spec, opt_incdec): New terminals.
- (variable): Change definition of field reference to use field_spec.
- See test/parse1.awk.
-
-Thu Feb 1 17:38:38 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c: Allow YYDEBUG to enable the `-D' option, not just
- GAWKDEBUG.
-
-Wed Jan 31 19:30:26 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (format_val): Restore my test for numeric values
- being representable, as it includes more conditions than
- Andrew's, pending a thorough review of undealt-with emails on
- the topic.
- * regexec.c (proceed_next_node): Move check for NULL to after
- variable declarations inside initial `if'.
-
-Wed Jan 31 19:25:21 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * configure.ac (getaddrinfo): Improve test, since this function
- can be in libsocket on some systems.
-
-Mon Jan 29 15:33:10 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am (valgrind): Also call new valgrind-scan target.
-
-Mon Jan 29 12:44:54 2007 Andreas Schwab <schwab@suse.de>
-
- * dfa.c (copytoks): Adjust index into multibyte csets when
- copying an MBCSET token.
-
-Fri Jan 26 20:01:38 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * node.c (format_val): Test whether a numeric value is integral
- simply by converting it to long and then back again, and checking
- if the value matches. That's more robust than trying to test
- whether the floating-point value is representable as a long.
- * builtin.c (format_tree): Fix buffer overflow bug, off-by-one errors
- in checking snprintf return codes, and use "%.0f" to implement "%d"
- formatting. For octal or hex formatting, test whether the value
- is integral by trying to convert back to floating point and seeing
- if the value matches. This is more robust than trying to test
- whether the floating-point value is representable as an integer.
-
-Tue Jan 23 17:49:28 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (socketopen): Initialize socketfd to avoid "may be used
- uninitialized" warning.
- * regexec.c (regexec, re_search_stub): Removed unused variable `dfa'.
- * builtin.c (wide_tolower_toupper): Fix signedness of pointer in
- allocation calls and in call to make_str_node.
-
-Mon Jan 22 12:57:19 2007 Kimura Koichi <kimura.koichi@canon.co.jp>
-
- Deal with halfwidth katakana in SJIS locale inside character ranges.
- Based on http://sources.redhat.com/bugzilla/show_bug.cgi?id=1149.
- Changes affect non-__LIBC code only.
-
- * regcomp.c (re_compile_fastmap_iter): Handle half-size characters.
- * regexec.c (check_node_accept_bytes): Same.
-
-Thu Jan 18 22:19:01 2007 Karel Zak <kzak@redhat.com>
-
- * node.c (free_wstr): Assert that type is Node_val.
-
-Thu Jan 18 12:18:47 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (re_compile_fastmap_iter): Declare `dfa' to be
- be volatile. Fixes valgrind problem with the ignrcase test.
- Sheesh. Gawk should now be valgrind-clean. We hope.
-
-Mon Jan 15 14:28:04 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Use getaddrinfo instead of gethostbyname, to handle IPV6
- format addresses. Based on patch submitted by
- Jan Pazdziora <jpazdziora@redhat.com>.
-
- * configure.ac: Add getaddrinfo to list of checked functions.
- * configh.in, configure: Regenerated.
- * io.c: Rework includes based on HAVE_GETADDRINFO.
- (socketopen): Reworked for getaddrinfo.
- (devopen): Modified for new socketopen.
- * replace.c: Include getaddrinfo.c if necessary.
-
-Sun Jan 14 12:19:53 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y: For bad name in array subscripting, build a
- valid node anyway to avoid invalid reads reported by valgrind.
- * dfa.c (parse_bracket_exp_mb): Remove assignment of NULL
- to work_mbc->chars, was losing data malloc'ed earlier. Thanks
- to valgrind.
- (state_index): Alway initialize d->states[i].mbps elements to zero.
- (dfafree): Free allocated d->states[i].mbps.elems if needed.
- * regex.c: Try harder to undef alloca.
- * regex_internal.h (__mempcpy): Undef before redefinining for
- more recent versions of GLIBC.
-
-Sat Jan 13 22:10:43 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (str2wstr): For count of zero from mbrtowc, set count to 1
- and fall through to code that copies. Originally from Paul Eggert.
-
- Unrelated:
- * configure.ac: Add call to AC_USE_SYSTEM_EXTENSIONS, should help
- on Tandem. This lets us remove AC_AIX and AC_MINIX.
-
- From Matthew Woehlke <mwoehlke@tibco.com> for Tandem:
-
- * awk.h (_TANDEM_SOURCE): Also define _XOPEN_SOURCE_EXTENDED.
- * io.c (_TANDEM_SOURCE): Include more headers.
-
-Sat Jan 13 21:53:48 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * field.c (set_FIELDWIDTHS): Avoid writing one past the end of
- the array.
- * node.c (r_force_number): Avoid reading uninitialized variable.
-
-Sat Jan 13 21:37:15 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (valgrind): New target based on idea from
- Ralf Wildenhues for running valgrind on test suite.
-
-Sat Jan 13 21:24:54 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- Enable more `--lint-old' warnings.
- * awkgram.y: Warning about multiple BEGIN or END rules,
- `index in array' outside of for loops, multidimensional arrays.
- * field.c (set_FS): Warn about regex FS.
- * node.c (parse_escape): Warn about `\b', `\f', `\r'.
-
-Sat Jan 13 20:56:56 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (wcasestrstr): Revert use of continue, reinstate goto.
- Thanks to Andrew Schorr.
- (free_wstr): Move zeroing of wsptr and wslen and clearing of flag
- back outside the if.
- * field.c (rebuild_record): In loop that copies fields to new record,
- add call to `free_wstr'. This ensures that flag values are correct
- and avoids double free later. Thanks to Karel Zak for pointing out
- the problem.
-
-Fri Jan 12 14:01:51 2007 Dmitry V. Levin <ldv@altlinux.org>
-
- * builtin.c (do_match): In addition to "gawk_mb_cur_max > 1" check,
- check for positive string length.
-
-Fri Jan 12 13:57:20 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- Sync with GLIBC. Bi-annual this time.
-
- * regexec.c, regex.h, regex_internal.c, regcomp.c:
- Reapply any portability patches specific to gawk.
- * regex_internal.h (build_wcs_upper_buffer): Fix return type
- in declaration. Reapply any portability patches specific to gawk.
- * regex.c: Add definitions for `bool', `true' and `false'.
- Define `alloca' to something invalid to keep it from linking
- in case a usage of `alloca' slipped through. Reapply any portability
- patches specific to gawk.
-
- Base versions:
- getopt1.c 1.10 Tue Mar 9 10:35:37 2004
- getopt.c 1.55 Fri Mar 24 10:59:56 2006
- getopt.h 1.21 Fri Mar 19 00:19:32 2004
- getopt_int.h 1.1 Tue Mar 9 10:31:19 2004
- regex.c 1.129 Fri Mar 24 10:59:57 2006
- regexec.c 1.97 Fri Mar 24 10:59:57 2006
- regex.h 1.40 Mon Sep 25 20:03:05 2006
- regex_internal.c 1.67 Mon Sep 25 20:03:05 2006
- regex_internal.h 1.73 Fri Mar 24 10:59:57 2006
- regcomp.c 1.112 Fri Mar 24 10:59:57 2006
-
-Fri Jan 12 12:28:51 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * ABOUT-NLS, INSTALL, Makefile.in, aclocal.m4, config.guess,
- config.rpath, config.sub, configh.in, configure, configure.ac,
- depcomp, gettext.h, install-sh, missing, mkinstalldirs, ylwrap:
- Updated to current autotools, Autoconf 2.61, Automake 1.10,
- gettext 0.16.1.
-
-Thu Jan 4 18:23:50 2007 Dmitry V. Levin <ldv@altlinux.org>
-
- * node.c (free_wstr): Zero wstptr and wstlen only if WSTRCUR
- flag is set.
- (str2wstr): Replace invalid `free' call with `free_wstr' call.
-
-Thu Jan 4 16:49:21 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_match): Move freeing of wc_indices to outside if.
- Thanks to Sven Wegener <swegener@gentoo.org> for the report.
-
-Thu Dec 21 14:32:13 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (arg_assign): Reassign the '=' only if not initing.
- * profile.c (varname): Deleted.
- (pp_concat): New function to print concatenations.
- (tree_eval): Don't use `varname' anymore. Use `pp_concat'.
-
-Mon Dec 11 12:43:04 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (sub_common): Clear numeric flags on result
- unconditionally.
- * node.c (wcasestr): Replace `goto' with `continue'.
-
-Thu Nov 30 15:54:07 2006 Bruno Haible <bruno@clisp.org>.
-
- * builtin.c: Change use of HAVE_LC_MESSAGES to defined(LC_MESSAGES).
- Bruno suggested only for dcngettext, I did it everywhere (ADR).
-
-Wed Sep 6 02:04:32 2006 Andrew J. Schorr <aschorr@telemetry-investments.com>
-
- * awkgram.y (get_src_buf): Adjust `source' and `sourceline' to
- correctly handle mixed -f and --source options.
-
-Mon Aug 28 21:17:20 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * AUTHORS, FUTURES, LIMITATIONS, NEWS, POSIX.STD, PROBLEMS, README:
- Added FSF copyright for no other reason than to satisfy the flunkies
- running Savannah.
- * Makefile.am: Removed `ansi2knr' from AUTOMAKE_OPTIONS also.
-
-Fri Aug 11 15:07:45 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_field, rebuild_record, set_record): Remove calls to
- `free_wstr' since they're not needed.
-
-Sat Aug 5 22:04:24 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (unref): Call `free_wstr' for fields also. Thanks to
- Andrew Schorr.
-
-Tue Jul 4 22:43:05 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (interpret): Node_assign_concat case: Turn off NUMBER and
- NUMCUR flags in result. Sheesh. Thanks to
- <Heiner.Marxen@DrB.Insel.DE> for finding the problem.
-
-Mon Jul 3 22:49:44 2006 Pat Rankin <rankin@pactechdata.com>
-
- * main.c (load_environ): When AWKPATH is missing from ENVIRON[],
- try to find it with getenv("AWKPATH") before resorting to DEFPATH.
- Suggested by Galen Tackett.
-
-Mon Jul 3 00:27:59 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (INTERNAL_HANDLE): New constant for use by `iop_alloc'
- when allocating an internal IOBUF.
- (pidopen, useropen): Use it.
- (iop_alloc): Add check for it and just return iop.
-
-Fri Jun 23 15:48:34 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (subn): At end for `do_sprintf' check, verify
- that lnode is not NULL before using it to assign through.
-
-Sun Jun 18 22:27:25 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- Repair internal names like /dev/user, /dev/pid, as well as /dev/fd/N,
- which have been broken for a long time but noone noticed.
-
- * io.c (is_internal): New macro to check for internal file like
- `/dev/user'.
- (spec_setup): Reduce to two parameters, allocate logic is always true.
- Add IOP_NO_FREE to flag.
- (pidopen, useropen): Return `IOBUF *' instead of int. Fix
- logic to test if `iop' parameter is NULL and if so to allocate it.
- (specfdopen,): Return `IOBUF *' instead of int. Fix
- logic to test if `iop' parameter is NULL and if so to allocate it.
- Don't set IOP_NO_FREE in flag.
- (iop_open): Remove `IOBUF iob' field from `struct internal' and its use
- and the use of `spec_setup' from the code here. Change the check in the
- call to the open function to look for NULL.
- (get_a_record): Use `is_internal' in initial check for filling the
- buffer to not try to call `read' on internal files. If true, set
- the IOP_AT_EOF in the flag and return EOF.
-
-Fri Mar 24 13:05:56 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (get_src_buf): Remove function argument types from
- declaration of `readfunc' to avoid bugaboos with VMS declaration
- of `read' system call.
-
-Fri Mar 10 06:28:23 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (free_wstr): New declaration if MBS_SUPPORT, empty macro
- otherwise.
- * node.c (free_wstr): New function, inside MBS_SUPPORT. Frees the wide
- string part of a node. Provided so that it can be used consistently
- everywhere.
- (format_val, r_dupnode, mk_number, make_str_node, unref): Use it.
- * builtin.c (sub_common): Call `free_wstr' instead of doing it manually.
- * eval.c (r_tree_eval): Same in Node_assign_concat case.
- * field.c (set_field, rebuild_record, set_record): Add calls to
- `free_wstr'.
-
-Mon Feb 13 22:45:34 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_tree_eval): Node_assign_concat. Release any
- wide string value and reset the WSTRCUR flag. Based on
- bug report by Karel Zak.
-
-2006-01-03 Paul Eggert <eggert@cs.ucla.edu>
-
- * Makefile.am (awkgram.c): Use $(AWK), not awk, so that the rule
- works on Solaris too (e.g., Solaris 10). Problem reported by
- Andrew J. Schorr.
-
-Mon Dec 19 05:39:46 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (format_val): Account for overlow of conversion
- from double to long. Shows up worse on 64-bit systems.
-
-Wed Dec 14 18:57:34 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_BINMODE): Fix logic of test for no numeric value.
- Makes `gawk -v BINMODE=1 ...' work again. Thanks to Eli Zaretskii
- <eliz@gnu.org> for pointing out the problem.
-
-Wed Oct 19 10:58:27 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main, arg_init): Only use the locale's decimal
- point if do_posix is set. Too many people the world over
- have complained about this.
-
-Fri Oct 7 13:54:09 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Enhancement to fix from 23 Sept 2005, suggested by Pat Rankin.
-
- * awkgram.y (one_line_close): New function, closes open FILE * used
- by `read_one_line'.
- (fp): Static FILE * used by `read_one_line' and `one_line_close'.
- * awkgram.y (read_one_line): Simplify check for call to `fdopen'.
- (get_src_buf): New variable `closefunc' which is a pointer to a
- function implementing the `close' system call interface.
-
-Fri Oct 7 13:23:29 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_FIELDWIDTHS): Fix off-by-one error in assignment
- of sentinel value at end of FIELDWIDTHS array.
-
-Fri Sep 23 16:05:13 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (read_one_line): New function, mainly for debugging,
- that reads one line of data at a time to pass back as a buffer.
- Emulates the variable-length record filesystem of VMS, where
- we first saw the problem fixed here.
- (get_src_buf): New variable `readfunc' which is a pointer to a
- function implementing the `read' system call interface. Based on
- an environment variable, use `read_one_line' instead of `read'
- for testing. Make the test for expanding the buffer smarter,
- so that it doesn't grow unnecessarily.
-
- Thanks to Galen Tackett (tackett_galen@bah.com) for reporting
- the problem and to Anders Wallin and Pat Rankin for help
- tracing and reproducing the problem and testing the fix.
-
-Fri Sep 9 15:06:07 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * hard-locale.h (xmalloc): Move declaration to file scope
- for non-glibc systems and gcc 4. Thanks to Kito Danya Dietrich
- <kito@gentoo.org>.
-
-Thu Aug 25 22:40:40 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (build_range_exp): Avoid `btowc' for single-byte
- characters. Fedora Core 2, maybe others, have a broken version
- that can't handle values > 127.
-
-Fri Aug 19 16:13:28 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * regexec.c (proceed_next_node): Added a band-aid check at the
- top of the first `if' to make sure that `mctx->state_log[*pidx]'
- isn't NULL.
-
-Fri Aug 12 13:10:33 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (iop_alloc): Only free `iop' if it was malloc'ed in
- the first place.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Tue Jul 26 21:44:54 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Copyright dates on all relevant files updated to 2005.
-
-Wed Jul 6 17:09:02 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Minor cleanups:
-
- * io.c (do_index): Remove unused variables `mbclen', `mbs1' and `mbs2'.
- * node.c (wstrstr): Remove unsed variable `j'.
- (dump_wstr): `#ifdef' out, not currently needed.
- * eval.c (op_assign): Move decl of `t1' and `t2' into a separate block
- for the `! HAVE_FMOD' case. Keeps the compiler quiet. Similar for
- `ltemp'.
-
-Wed Jul 6 16:51:31 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (close_io): Now takes pointer to boolean parameter indicating
- if there was a problem closing standard output or standard error.
- Update it in the right places.
- * awk.h (close_io): Update the declaration.
- * main.c (main): New variable `stdio_problem'. Pass it to `close_io'.
- Check the result and exit non-zero if there was a problem.
- (usage, version): Print warning message if problems with stdout.
-
- Unrelated:
-
- * main.c (main): For call to `setlocale' for LC_MESSAGES, just use
- `#ifdef LC_MESSAGES'. Per Bruno Haible <bruno@clisp.org>.
-
-Wed Jul 6 16:44:58 2005 Jim Meyering <jim@meyering.net>
-
- * main.c (init_fds): If any of the STDIN_FILENO, STDOUT_FILENO,
- STDERR_FILENO are initially closed, reopen them with permissions
- contrary to common usage so that any reasonable attempt to use
- them will evoke the same sort of error as reading or writing to
- a closed file descriptor would.
-
-Mon Jul 4 09:38:29 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- More multibyte fixes from Kimura Koichi, <kimura.koichi@canon.co.jp>.
-
- * node.c (format_val, r_dupnode): Spell `wstptr' correctly.
- * regex_internal.c (build_wcs_upper_buffer): Label `offsets_needed'
- should not be inside `#ifdef _LIBC'.
- * regcomp.c (build_charclass): Fix declaration of `class_name' in
- prototype to not be unsigned.
-
-Thu Jun 30 11:52:34 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (tree_eval): Node_not: Remember to print the exclamation
- point! Thanks to Dan Nielsen <Dan.Nielsen@corporate.ge.com>
- for the bug report.
- * mbsupport.h: Fix spelling of HAVE_ISWUPPER. Thanks to
- Kimura Koichi, <kimura.koichi@canon.co.jp>.
-
-Sun Jun 26 16:37:59 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Unrelated changes:
-
- * builtin.c (do_length): Allow array argument to length().
- Returns number of elements in array.
-
- * awkgram.y (yylex): Ignore carriage returns in source code. Sigh.
-
-Wed Jun 15 22:12:15 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (isnondecimal): Check loc.decimal_point before using it.
- Avoids problems with command line assignment when locale info may
- not be set up all the way yet.
-
-Wed Jun 15 21:59:54 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (make_str_node): If working with multibyte characters, while
- parsing string constants, keep multibyte characters together. This
- avoids problems in cases where one of the bytes is backslash. Initial
- patch supplied by Kimura Koichi, <kimura.koichi@canon.co.jp>.
-
-Tue Jun 14 21:50:37 2005 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- Use Exponentiation By Squaring for integer powers for ^ and ^=.
-
- * eval.c (calc_exp, cal_exp_posint): New functions.
- (r_tree_eval): Use them.
-
-Fri Jun 3 12:15:54 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Further change the hack at the end so that
- it works on Mac OS X `sed'. Sigh.
-
-Thu Jun 2 22:44:01 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac (TYPE_SOCKLEN_T): Use `int' as default type if can't
- figure one out.
- * awkgram.y: Warn that `//' is not a C++ comment. (:-)
-
-Thu Jun 2 20:55:27 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- From: Benno Schulenberg <benno@nietvergeten.nl>
-
- * eval.c (func_call): Take message out of gettext call since it's for
- debugging.
- * ext.c (get_actual_argument): Fix formatting of message.
-
-Wed May 25 09:19:37 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Change hack at end that fixes Makefile to keep
- version.c to use `sed' and not `ed'. More portable to OS/2, probably
- other systems.
-
-Mon May 23 09:01:26 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Portability help from Jim Meyering.
-
- * io.c: Rework ifdefs for <inttypes.h> and <stdint.h>. Test them
- individually.
- * configure.ac: Add AC_C_RESTRICT and code for socklen_t from rsync.
- Check for isascii and btowc for regex.
-
-Sat May 14 22:49:54 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * wait_any (errno): Remove decl.
- * gawk_popen: The pipe-simulated but not VMS or DOS version. Remove
- decl/use of `strdup' in favor of `emalloc' and `strcpy'.
-
-Wed May 11 18:33:30 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- All files: Updated address of FSF to:
-
- 51 Franklin Street, Fifth Floor
- Cambridge, MA 02110-1301
-
-Wed May 11 18:19:03 2005 Jim Meyering <jim@meyering.net>
-
- * configure.ac: Use AM_GNU_GETTEXT([external]).
- Reflect upgrade to gettext-0.14.4.
- Reflect renaming of `jm_'-prefixed macros.
- (AC_CONFIG_FILES): Remove intl/Makefile.
-
- * Makefile.am (SUBDIRS): Remove intl.
- (AM_CPPFLAGS): Remove -Iintl.
-
-Wed May 11 11:42:06 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Straighten out mess with `isblank' which is C99 <ctype.h> function.
-
- * configure.ac: Remove check for `isblank' in call to AC_CHECK_FUNCS.
- * regex_internal.h: #ifdef out definition of `isblank' and provide
- `is_blank' function a la dfa.c.
- * field.c: Ditto.
- * regcomp.c: #ifdef use of `isblank' and add `is_blank' use instead.
-
-Mon May 9 08:29:37 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Add type check for `socklen_t', fixes compile
- warning on AMD/64 Linux.
- * io.c (socketopen): Change type of socket length variables
- to `socklen_t' from `size_t'.
-
-Thu May 5 22:00:03 2005 John E. Haque <j.eh@mchsi.com>
-
- * io.c (iop_alloc): Let an input processor hook installed via
- `register_open_hooks' open its own fd in case gawk does not know
- how to open it.
- (iop_open): Call `os_close_on_exec' after `iop_alloc'.
- ADR: If `iop_alloc' returns NULL but the fd is valid, close
- the fd to avoid an fd leak.
-
-Mon May 2 08:05:59 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (update_ERRNO): Don't use `return' in a `void' function.
- * awk.h (AWKNUM): Back out use of `long double' based on LDBL_MANT_DIG.
- * builtin.c (tmp_integer): Back out extra ifdefs.
-
-Fri Apr 29 13:01:05 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Look for `isblank' function.
- * field.c: Add define for `isblank' if we don't have it.
-
-Fri Apr 29 12:01:33 2005 Julian Foad <julianfoad@btopenworld.com>
-
- From grep. Doesn't seem to affect awk.
-
- * dfa.c (lex): Fix bug #9519: "echo do^re | grep do^re" was
- failing to find a match. [Towards end, set `lasttok' before
- returning `c'.]
-
-Fri Apr 29 00:28:46 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Jump through an amazingly convoluted hoop to get
- config.status to keep version.c upon `make distclean'. Seems to
- work though.
-
-Thu Apr 28 23:40:02 2005 Stepan Kasal <kasal@ucw.cz>
-
- * configure.ac (PRINTF_HAS_F_FORMAT): Some cosmetic changes.
- (custom.h): Don't cat custom.h at the end of config.h; instead, use
- AH_BOTTOM([#include "custom.h"])
- * awklib/Makefile.am (AM_CPPFLAGS): Add $(top_srcdir) so that
- custom.h can be found.
-
-Thu Apr 28 23:21:22 2005 Jim Meyering <jim@meyering.net>
-
- * field.c (set_FIELDWIDTHS): Tighten up the code to accept FIELDWIDTHS
- values in [1..INT_MAX], e.g., detect overflow and invalid strings,
- and reject strings starting with `-'.
-
-Thu Apr 28 23:05:33 2005 Stepan Kasal <kasal@ucw.cz>
-
- * dfa.c (parse_bracket_exp_mb): Shorten one part of the code, to get
- closer to grep's copy.
-
-Thu Apr 28 23:00:58 2005 Pat Rankin <rankin@pactechdata.com>
-
- * builtin.c (format_tree) [#if VAXCRTL]: For floating point
- formatting, reject zero_flag if using old VAXCRTL run-time
- library to avoid getting erroneous results which appear as if
- numerically incorrect (due to an embedded space in some cases,
- extra trailing zeroes in others) rather than just misformatted.
- `hsprint' test still fails, but not as badly.
-
-Thu Apr 28 19:12:03 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (reflags2str): Add three new RE_ flags from current regex.h
- to bring the table up to date.
-
- * builtin.c (format_tree): Save 2 spare bytes instead of one. Suggested
- by Stepan Kasal.
-
-Thu Apr 28 18:16:09 2005 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * awk.h (IOBUF): Add new fields `opaque', `get_record', and
- *close_func', to support insertion of an alternate input processor.
- This is used by the XML extension.
- (register_deferred_variable, register_open_hook, update_ERRNO_saved):
- Declare new functions.
- (load_environ, load_procinfo): Remove declarations -- these functions
- are no longer global, since we use register_deferred_variable instead.
- * awkgram.y (register_deferred_variable): New function to allow
- calling code to register special variable names that trigger a callback
- upon the first reference. This is now used to implement ENVIRON
- and PROCINFO.
- (variable): Search the list of deferred variables instead of hardcoded
- tests for ENVIRON and PROCINFO.
- * eval.c (set_BINMODE): Fix spelling of "arbitrary" in warning message.
- (update_ERRNO_saved): New function that allows the caller to specify
- the errno value instead of using the current value.
- (update_ERRNO): Implement by calling update_ERRNO_saved(errno).
- * io.c (iop_close): Call `iop->close_func' if non-NULL.
- (close_redir): Should save `errno' value, otherwise `lintwarn' messages
- might update it. Then use `update_ERRNO_saved' to set ERRNO.
- (do_getline): Call `update_ERRNO_saved' to set ERRNO based on the
- error code returned by the redirect function (instead of the current
- value of errno). Similarly, use `update_ERRNO_saved' to set ERRNO
- based on the value returned by `get_a_record'. But add a special
- check to avoid updating ERRNO if `get_a_record' returns an error
- code value of -1 (this is used by the XML extension which already
- sets ERRNO before returning).
- (register_open_hook): New function to register a function to be
- called whenever a new data file is opened. This can be used to
- install a special input processor (as in the XML extension).
- (iop_alloc): Call registered open hook.
- (get_a_record): If a `get_record' method has been set, call that instead.
- * main.c (init_vars): Use `register_deferred_variable' to implement
- ENVIRON and PROCINFO.
- (load_environ, load_procinfo): Now static instead of global.
- * doc/gawk.texi: Document new internal functions `update_ERRNO_saved',
- `register_deferred_variable', and `register_open_hook'.
-
-Thu Apr 28 10:50:10 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_find, do_delete): Change incorrect uses of STREQN
- to memcmp.
- * builtin.c (do_index): Same.
- * field.c (set_FS): Same.
- * io.c (redirect, getredirect, do_close, set_RS): Same.
- * re.c (reisstring): Same.
-
-Wed Apr 27 21:35:57 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Allow for long double. Initial changes from Jean-Marc Saffroy
- <jean-marc.saffroy@ext.bull.net>.
-
- * awk.h (AWKNUM): If have long doubles (LDBL_MANT_DIG), define AWKNUM
- as long double, otherwise just use double.
- * builtin.c (format_tree): Change type of tmpval to double.
- (do_strtonum): Same for `d' and types used in casts.
- (tmp_integer): Don't do bit shifting if have long doubles.
-
- Unrelated, from Andrew J. Schorr:
-
- * io.c (close_one): Check for RED_FILE|RED_WRITE, not just RED_FILE.
-
-Mon Apr 25 12:23:18 2005 Andrew J. Schorr <aschorr@telemetry-investments.com>
-
- * eval.c (r_tree_eval): In Node_assign_concat case, when copying string
- constants, include the terminating zero byte.
-
-Fri Apr 1 06:26:31 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Update to Automake 1.9.5.
-
- * INSTALL, aclocal.m4, depcomp, install-sh, missing,
- mkinstalldirs, ylwrap: Updated.
-
- Unrelated:
-
- * builtin.c (do_tolower, do_toupper): Remove old code
- based on 8-bit character table.
-
-Wed Feb 23 08:23:22 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * bisonfix.awk: New file, fixes continued #ifdef for dumb compilers.
- * Makefile.am (awkgram.c): Fix rule to use it.
- (EXTRA_DIST): Include bisonfix.awk.
-
-Tue Feb 22 21:18:50 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * random.h: Remove include of config.h and move it to ...
- * random.c: Here. Move include of random.h back to where it was.
-
- * regcomp.c, regex.c, regexec.c: NUKED all use of alloca not inside
- `_LIBC' ifdef. Hooray!
-
-Sat Feb 19 20:13:28 2005 Pat Rankin <rankin@pactechdata.com>
-
- Workarounds for bugs and missing C89 features in old VAX C compiler.
-
- * regex_internal.h "mbsupport.h": Suppress inclusion if NO_MBSUPPORT
- is defined.
- [MB_CUR_MAX]: Define as 1 if mbsupport.h hasn't defined it.
- [ER_ERRMSG, ERRMSG_TYPE, ERRMSG_OFFSET, ERRMSG_SEPARATOR]: New macros
- conditionalized upon gawk's NO_TOKEN_PASTING macro.
- * regcomp.c: Use them.
- (parse_dup_op): Use alternate initialization of start_token if
- RE_TOKEN_INIT_BUG is defined.
- * regexec.c (proceed_next_node): Compare push_fail_stack() result
- explicitly against REG_NOERROR rather than implicitly against 0.
-
-Sat Feb 19 20:05:50 2005 Pat Rankin <rankin@pactechdata.com>
-
- * dfa.c "mbsupport.h": Suppress inclusion if NO_MBSUPPORT is defined.
-
-Wed Feb 16 20:43:07 2005 Pat Rankin <rankin@pactechdata.com>
-
- * awk.h "mbsupport.h": Suppress inclusion if NO_MBSUPPORT is defined.
- * regex.h <sys/types.h>: Guard inclusion with HAVE_SYS_TYPES_H.
- * regex.c <sys/types.h>: Likewise.
- * random.c "random.h": Include this first to get config.h setup.
- <fcntl.h>: Guard inclusion with HAVE_FCNTL_H.
- <unistd.h>: Guard inclusion with HAVE_UNISTD_H.
- * io.c [#if defined(MSDOS) ||... defined(__CYGWIN__)]: Splice the
- backslash continuation back into one long line.
-
-Wed Feb 16 10:11:21 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (unref, format_val): Add assertions checking that both
- `tmp->wstptr != NULL' and `(tmp->flags & WSTRCUR) != 0' before
- freeing `tmp->wstptr'. Thanks to kimura.koichi@canon.co.jp.
-
- * random.c (HAVE_UNISTD_H): Conditionalize include of <unistd.h>.
- Thanks to Scott Deifik <scottd@amgen.com>.
-
-Sun Feb 13 18:24:50 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (socketopen): Move `#ifdef MSG_PEEK' up to above
- declarations too. Thanks to Michal Jaegermann.
-
- * config.guess, config.sub: Updated from Savannah.
-
-Thu Feb 10 15:48:48 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.c (re_dfa_add_node): Remove variable `type'
- and just use `token.type' directly in RE_ENABLE_I18N code below.
- Saves a compiler warning, and a good compiler will handle it anyway.
- * regexec.c (check_arrival_add_next_nodes): Move decl of `err'
- inside #ifdef RE_ENABLE_I18N code where it's used.
- * awkgram.y (yylex): Add casts to int before use of `strlen' results
- for printf-style precision. Avoid a compiler warning.
- * io.c (redirect, do_close): Same for use of tmp->stlen.
-
- Thanks to Michal Jaegermann <michal@harddata.com>.
-
-Wed Feb 9 10:19:15 2005 Stepan Kasal <kasal@ucw.cz>
-
- * Makefile.am (datadir, libexecdir): Removed.
- (awkdatadir): Renamed to pkgdatadir.
- (pkgdatadir, LDADD): Use the make syntax to refer to other variables,
- not @...@.
-
-Wed Feb 9 10:05:46 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (r_dupnode): Assign NULL to r->wstr after `getnode'.
- Fix count of bytes to copy in call to `memcpy'.
- Thanks to Kimura Koichi, <kimura.koichi@canon.co.jp>.
-
-Tue Feb 8 19:26:22 2005 Pat Rankin <rankin@pactechdata.com>
-
- * regcomp.c (init_dfa): Avoid strcasecmp() since regex.c doesn't
- use awk.h and none of the assorted other included header files
- are guaranteed to declare it.
- (parse_expression): Modify casts for the string arguments passed to
- build_charclass_op() to fix char * vs unsigned char * mismatch.
- (parse_bracket_exp): Likewise add cast for the string argument
- passed to build_charclass().
-
-Mon Feb 7 15:04:09 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (make_scalar): Don't use P() macro in definition.
- Thanks to Juergen Kahrs <Juergen.Kahrs@barco.com>.
-
-Wed Feb 2 16:36:19 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Call `close_io', without its result affecting
- the exit status. Super small, super dark corner.
-
- See test/exitval2.awk.
-
-Tue Feb 1 11:58:29 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.h (__APPLE_CC__): Removed test and definition of __restrict.
- Not needed for current MacOS X compiler.
-
-Sun Jan 30 13:56:37 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Fresh merge with CVS regex routines. Fixes handling of \B.
- See tests/gnureop3.awk and also
- http://sources.redhat.com/bugzilla/show_bug.cgi?id=693.
-
- CVS base versions:
-
- * regcomp.c: Version 1.92, Thu Jan 27 19:05:20 2005.
- * regexec.c: Version 1.77, Thu Jan 27 19:06:34 2005.
- * regex_internal.c: Version 1.49, Thu Jan 27 19:07:15 2005.
- * regex_internal.h: Version 1.60, Wed Jan 26 22:40:50 2005.
- * regexec.c: Version 1.77, Thu Jan 27 19:06:34 2005.
-
-Sat Jan 22 22:30:40 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Reinstate patch of 18 Nov 2001, for VMS, at least:
-
- * random.c (srandomdev): ifdef-out. Lots of compile time
- problems on multiple platforms, and gawk doesn't even
- use the routine. The heck with fine-grained solutions.
-
-Thu Jan 20 14:15:32 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (LEX_FOR): Free NAME tokens in transformation of
- `for (iggy in foo) delete foo[iggy]' into `delete foo'.
- Thanks and a tip of the hatlo to Valgrind.
-
- * dfa.c (_): Clean up stuff here by just including "gettext.h".
- Per Bruno Haible.
-
-Wed Jan 19 18:29:23 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yylex): Improve parsing of numeric constants
- and hex values, via a push from Paul Eggert. See test/hex.awk.
-
- * regex_internal.c (re_node_set_alloc): If `size' is 0, just
- zero out the structure. From valgrind.
-
-Tue Jan 18 17:23:25 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Make gawk multibyte aware. This means that index(), length(),
- substr() and match() all work in terms of characters, not bytes.
-
- * awk.h (NODE): Add `wsp' and `wslen' elements to value for wide
- string.
- (WSTRCUR, wstptr, wstlen, force_wstring): New macros.
- (str2wstr, wstrstr, wcasestrstr): New declarations.
- * builtin.c (do_index, do_length, do_substr, do_match): Handle wide
- strings.
- * eval.c (flags2str): Add WSTRCUR.
- * node.c (format_val, r_dupnode, mk_number, make_str_node, unref):
- Add code to deal with wide strings.
- (str2wstr, dump_wstr, wstrstr, wcasestrstr): New functions.
-
-Sun Jan 16 15:10:35 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * random.h (int32_t): Define this type.
-
-Thu Jan 13 14:38:13 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Cause `configure --disable-nls' to still allow locale-correct
- formating of numeric values.
-
- * builtin.c (format_tree): Change #ifdefs to only test HAVE_LOCALE_H.
- Improve code for ' flag so that extraneous separator is not included if
- number of digits is multiple of locale separater count (3, 6, 9, etc.)
- * dfa.c (dfaparse): Change ifdef to only test #ifdef LC_COLLATE.
- * eval.c (fmt_ok): Remove ENABLE_NLS from #ifdef test.
- * gettext.h: Include <locale.h> on both sides of test. Should really
- be factored out.
- * main.c (loc): Remove ENABLE_NLS from #ifdef test.
- (main): Same in call to localeconv().
- * node.c (isnondecimal): Remove ENABLE_NLS from #ifdef test.
-
- Unrelated:
-
- * regcomp.c (init_dfa): Change `codeset' to `codeset_name' in two
- places.
-
-Mon Jan 10 11:49:56 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Annual sync with glibc.
-
- * getopt_int.h: New file.
- * Makefile.am (base_sources): Add it.
- * getopt.h, getopt.c, getopt1.c: Updated.
- * regcomp.c, regex.c, regex.h, regex_internal.c, regex_internal.h,
- regexec.c: Updated.
-
- Original versions:
-
- getopt_int.h, 1.1, Tue Mar 9 10:31:19 2004
- getopt1.c, 1.10, Tue Mar 9 10:35:37 2004
- getopt.h, 1.21, Fri Mar 19 00:19:32 2004
- getopt.c, 1.53, Wed Mar 10 23:13:26 2004
- regcomp.c, 1.87, Mon Dec 6 02:56:42 2004
- regex.c, 1.126, Fri Jan 30 05:19:58 2004
- regex.h, 1.33, Thu Nov 18 23:50:57 2004
- regex_internal.c, 1.46, Thu Jan 6 20:59:49 2005
- regex_internal.h, 1.57, Mon Dec 27 16:29:05 2004
- regexec.c, 1.75, Mon Dec 27 16:29:52 2004
-
- * regex.h: Add check for __APPLE_CC__ and definition of __restrict.
- * regex.c: Add check for _MSC_VER and include <stdio.h>.
- * regex_internal.h (_RE_ENABLE_I18N): Change test.
- (re_realloc): Add check/fix for SunOS 4.1.x.
- * regex_internal.c (build_wcs_upper_buffer): ifdef label
- `offsets_needed', add cast in call to `wcrtomb'.
- * regcomp.c (build_charclass, build_charclass_op): Remove `unsigned'
- from declarations of `char *' params.
- (regerror): Remove use of mempcpy.
- (peek_token): Disallow \s and \S for gawk.
- (build_charclass): Change decl of `class_name' and use it directly.
- Nuke variable `name'.
- (build_charclass_op): Change decl of `class_name' and `extra'.
-
-Thu Jan 6 16:44:32 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Improve autoconfiscation stuff for wide character use.
-
- * builtin.c (do_tolower, do_toupper): Conditionally compile
- call to `wide_tolower_toupper'.
- (wide_tolower_toupper): Conditionally compile typedefs and function.
- * mbsupport.h: Add check for having `wint_t', and `iswlower',
- `iswupper', `towlower' and `towupper'.
- * configure.ac (HAVE_WINT_T): Add test.
- (AC_CHECK_FUNCS): Add `wint_t', `iswlower', `iswupper', `towlower'
- and `towupper'.
-
- Unrelated change:
-
- * hard-locale.h (hard_locale): Add decl of `xmalloc' to prevent
- redeclaration problems on some compilers.
-
-Wed Jan 5 10:20:17 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Update to Bison 2.0.
-
- * bisonfix.sed: Removed, no longer needed.
- * Makefile.am (EXTRA_DIST): Removed bisonfix.sed.
- (awkgram.c): Fix build rule.
- * awkgram.c: Regenerated.
-
-Tue Jan 4 18:47:56 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Update to Automake 1.9.4.
-
- * alocal.m4, config.guess, config.sub, install-sh: Updated.
-
-Mon Jan 3 14:08:27 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Update to Automake 1.9.3.
-
- * INSTALL, alocal.m4, config.guess, config.sub, depcomp,
- install-sh, missing, ylwrap: Updated.
-
-Mon Jan 3 11:23:36 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Fix obscure issue. ^ in RS should only match at the very
- beginning of the input. Essentially, the file is one long
- string. To do this, use the `not_bol' flag in the `struct
- pattern_buffer'. Thanks to Stepan Kasal for pointing out the
- problem and to Andreas Schwab for pointing out the mechanism
- for a solution.
-
- * awk.h (RE_NEED_START, RE_NO_BOL): New flags for `research'.
- (IOP_AT_START): New flag for IOBUF.
- (research): Last parameter is now `flags'.
- * builtin.c (do_match, sub_common): Change calls to `research'.
- * eval.c (interpret, match_op): Same.
- * field.c (re_parse_field): Same.
- * io.c (spec_setup): Add IOP_AT_START flag.
- (iop_alloc): Same.
- (rsrescan): Modify logic to check IOP_AT_START and if not on to
- add RE_NO_BOL to flags value in call to `research'.
- (get_a_record): Clear IOP_AT_START upon return from `*matchrec'.
- (iopflags2str): Add IOP_AT_START to table. Also IOP_CLOSED,
- which was missing. (Ooops.)
- * re.c (research): Last paramater is now flags. Modify logic to
- handle RE_NO_BOL case by setting the right bit initially. Clean
- up control flow so that it's cleared before returning. If RE_NO_BOL,
- don't bother with the dfa matcher, as it doesn't have an analogous
- capability.
-
-Wed Dec 22 12:33:48 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- For --exec, don't allow x=y assignments where filenames would be.
- Do allow -v. This is because we assume --exec is used mainly for
- CGI stuff and we don't want var assigns to affect the code.
-
- Suggested by Stepan Kasal; motivated by reading about web security.
-
- * main.c (disallow_var_assigns): New variable.
- (main): Set the var for --exec.
- (arg_assign): Check it appropriately.
-
-Sun Dec 19 17:27:09 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_gensub): Make `global' flag smarter, such that
- a string numeric constant (e.g., "3") acts like a numeric
- constant.
- * node.c (r_force_number): Not really related: Only set NUMCUR
- if we actually convert some digits.
-
-Sun Dec 19 16:08:50 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.h, dfa.c: Synchronize with what's happening in GNU grep
- development. Effectively only minor whitespace changes and some
- slight code motion of ifdefs and includes.
- * hard-locale.h: New file, extracted from old dfa.c.
- * Makefile.am (base_sources): Add hard-locale.h.
-
-Sun Dec 19 11:13:45 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (socketopen): Change type of `readle' and `namelen'
- variables to size_t. For QNX, but a good idea anyway. Thanks
- to `Anthony' (rz1a@mail.ru).
-
-Mon Dec 6 11:11:22 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Undid change of Mar 9 2004, to add gofast patch. It gets things
- wrong for gawk. This removes the bandaid of ifdef-ing out the
- main check. Eventually this'll all get straightened out in the
- GNU grep code.
-
- * dfa.c (buf_offset): Removed.
- (SKIP_REMAINS_MB_IF_INITIAL_STATE): Removed use of buf_offset, do
- free `mblen_buf', `inputwcs'.
- (match_anychar, match_mb_charset, transit_state_consume_1char,
- transit_state): Remove use of buf_offset in mblen_buf.
- (dfaexec): Use `free' and `malloc', not `realloc'.
-
-Mon Dec 6 10:55:37 2004 Fumitoshi UKAI <ukai@debian.or.jp>
-
- Forwarded from james@nocrew.org, the Debian contact.
-
- * dfa.c (parse_bracket_exp_mb):
- 1. Build range correctly when IGNORECASE for [a-a] to also get 'A'.
- 2. For [:lower:] and [:upper:], if ignoring case, set type string
- to "alpha". This parallels code in the regex routines.
- 3. Reset wc1 to EOF when parsing bracket expressions.
-
-Mon Nov 29 18:36:25 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): When allocating a new struct redirect, set
- rp->pid to -1, not 0, so that code checking for EOF on an
- input pipe works correctly.
-
-Thu Nov 25 14:22:41 2004 Stepan Kasal <kasal@ucw.cz>
-
- * Makefile.am (MAINTAINERCLEANFILES): Add.
- * version.in (version_string): Use PACKAGE_STRING.
-
-Tue Nov 23 17:27:38 2004 Stepan Kasal <kasal@ucw.cz>
-
- * re.c: Fix a typo in a comment.
-
-Mon Nov 22 16:47:00 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yylex): Add lint check for tawk style modifiers on
- regexes, /.../i and /.../s. Not that it'll help anyone.
-
-Wed Oct 27 14:25:18 2004 Stepan Kasal <kasal@ucw.cz>
-
- * builtin.c (do_tolower, do_toupper): Fix the wide char handling,
- especially when the lowercased char doesn't ocuppy the same
- number of bytes as its uppercase equivalent. Make use of ...
- (wide_tolower_toupper): ... this new static function.
-
-Mon Oct 25 11:51:14 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (bchunk, bchunk_one, cksize): Change type of `olen'
- to size_t from long. It is the 21st century now, after all...
- Thanks to Stepan Kasal.
-
-Mon Oct 11 10:49:09 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yylex): Improve lint warnings for non-decimal constants.
- * node.c (isnondecimal): Made a little smarter, thanks to Stepan Kasal.
-
-Thu Oct 7 21:59:38 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (dfamust): Redo fix of 22 Sep to match code from
- current GNU grep.
-
-Sun Oct 3 23:06:00 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (isnondecimal): Made smarter, so that 0xEE does
- register as non-decimal. Added parameter to indicate use of
- locale's decimal point and changed declaration and callers.
-
-Tue Sep 28 18:38:17 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (isnondecimal): New function, now smarter.
- * awk.h (isnondecimal): Changed from macro to function.
-
-Wed Sep 22 11:24:46 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (dfamust): At end, check results of `malloc'.
- Based on bug report from Sorav Bansal <sbansal@stanford.edu>
- for grep.
-
-Mon Sep 20 13:18:18 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- New --exec option. Needed for gawk CGI scripts to prevent
- arbitrary options and/or source getting passed in from the web.
-
- * main.c (optab): New long option, --exec.
- (main): Catch it. Like -f but end option processing.
- (usage): Add it to the usage message.
-
- Thanks to John DuBois and Don Stokes for their input.
-
- Unrelated:
-
- * dfa.c (dfaexec): Disabled caching into buffer that bypasses
- multibyte initialization, since it can get things wrong. Thanks
- to Andreas Schwab <schwab@suse.de>.
-
-Mon Sep 20 12:59:42 2004 Andreas Schwab <schwab@suse.de>
-
- * awkgram.y (nextc): Check for end of lexer buffer before
- advancing ring buffer index.
-
-Wed Sep 8 09:54:53 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Force LC_NUMERIC locale to "C" before parsing
- the program, since a variable assignment with -v can leave the
- locale set incorrectly.
-
- Thanks to Sirix <sirix@poczta.onet.pl> for reporting the problem.
-
-Wed Aug 25 18:55:30 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (UPDATE_YEAR): New constant at top of file, where we
- won't miss it.
- (copyleft): Use it.
-
-Sun Aug 22 17:26:39 2004 Stepan Kasal <kasal@ucw.cz>
-
- Define gawk_mb_cur_max even if there is no mbs support, as
- ``const int'' and assign 1 to it.
- This fixes a bug in re.c where #ifdef MBS_SUPPORT was missing.
-
- * awk.h (gawk_mb_cur_max): Declare.
- * main.c (gawk_mb_cur_max): Define.
- * awkgram.y (nextc_is_1stbyte): Without mbs support, define to 1.
- * builtin.c (index_multibyte_buffer): Define a dummy function
- when there is no mbs support.
- * awkgram.y, builtin.c, re.c: Remove some `#ifdef MBS_SUPPORT'.
-
-Sun Aug 15 22:08:04 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Import current FreeBSD random.c. Make it work for gawk.
- Needed for cases where long is more than 32 bits.
-
- * random.c: Imported from FreeBSD. Header includes tweaked.
- * random.h: Typdef gawk_uint32_t appropriately and #define uint32_t
- to it.
- * configure.ac: Add calls to AC_CHECK_SIZEOF for unsigned int
- and unsigned long.
-
- Started with
- http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libc/stdlib/random.c
- Thanks to Andreas Schwab <schwab@suse.de> for the pointer.
-
-Thu Aug 12 13:09:53 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (copyleft): Fix copyright year.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Mon Aug 2 12:17:40 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Fix the hack. Do the sed on `Makefile',
- not `Makefile.in'. Sigh.
-
-Sun Aug 1 14:48:30 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: MAJOR HACK: At end, remove version.c from Makefile.in
- variable `CONFIG_CLEAN_FILES' so that `make distclean' doesn't
- remove version.c.
-
-Mon Jul 19 17:07:27 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * config.guess, config.sub: Updated from Savannah CVS.
-
-Fri Jul 16 10:59:07 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (make_regexp): Bracket code using `gawk_mb_cur_max'
- inside `#ifdef MBS_SUPPORT'.
-
-Thu Jul 15 12:36:25 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (parse_bracket_exp_mb): If doing case folding,
- include the other case for regular characters inside [...].
-
- * re.c (make_regexp): Smarten up handling of IGNORECASE,
- particularly for multibyte character sets. Sigh.
-
-Wed Jul 14 16:25:23 2004 John Haque <mary1john8@earthlink.net>
-
- * eval.c (interpret): For `Node_K_return', use `copynode'
- and not `dupnode' for non-PERM, non-TEMP values.
- (func_call): Don't add TEMP flag to returned value.
-
- These two fix a problem uncovered by the July 8 change in
- `assoc_lookup'.
-
-Wed Jul 14 16:14:09 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (node_common): Add check `lexeme >= lexptr_begin',
- from valgrind run.
-
-Wed Jul 14 16:00:51 2004 John Haque <mary1john8@earthlink.net>
-
- * io.c (rsrescan): Fix off by one error at end of record.
-
-Thu Jul 8 16:59:51 2004 Stepan Kasal <kasal@ucw.cz>
-
- * awkgram.y (output_redir): Make sure not to dereference NULL
- pointer. The bug was triggered by the following code:
-
- gawk 'BEGIN{print "date" |& getline}'
-
- No test case created, beacuse of the following:
- Correct interpretation involves executing "1" or "0" -- as the user
- may have defined this, we would have to override this in the test
- script. It's not worth the hassle.
-
-Thu Jul 8 12:59:49 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (load_casetable): Name changed from `load_ignorecase'.
- * eval.c (load_casetable): Name changed from `load_ignorecase'.
- Fix all uses.
-
-Thu Jul 8 12:32:13 2004 John Haque <mary1john8@earthlink.net>
-
- * awkgram.y (get_src_buf): Fix off-by-one error to avoid "does not end
- in newline" messages.
- * array.c (assoc_lookup): Small performance hack: for TEMP subs nodes,
- use its string memory for ahname.
- * ext.c (get_actual_argument): Minor code cleanup.
- * builtin.c (do_lshift, do_rshift, do_and, do_or, do_xor, do_compl):
- fixed to issue "non-numeric argument" lint warnings before using
- `force_number'.
-
-Mon Jun 21 16:53:35 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- More changes from John Haque to rationalize extension functions.
-
- * awk.h (get_curfunc_arg_count): Name changed from
- `get_curfunc_parm_count'.
- * eval.c (get_curfunc_arg_count): Ditto, body redone to count actual
- args passed at call time.
- * ext.c (get_argument): Update range check.
- (get_actual_argument): Simplify the code.
-
-Mon Jun 14 14:01:16 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes from John Haque and ADR to rationalize extension functions.
-
- * awk.h (check_special, get_curfunc_parm_count, get_actual_argument):
- new function declarations.
- (get_scalar_argument, get_array_argument): New macros.
- * awkgram.y (check_special): New function.
- (yylex): Use `check_special' to search `tokentab'.
- (dump_funcs): Always count functions, in order to get dynamic ones.
- Removed bogus use of `static' on `tab' variable.
- * eval.c (struct fcall): Change type of `count' to `size_t'.
- (get_curfunc_parm_count): New function.
- (push_args): Set `r->rnode' to NULL for local variable.
- * ext.c (make_builtin): Add sanity checking for presence and
- name of new function, and that it's not a redefinition.
- (get_argument): Check that requested arg is within range of actual
- number of parameters. Also clean up logic for Node_var_new,
- Node_var_array, Node_array_ref.
- (get_actual_argument): New function.
- * profile.c (pp_builtin): Better handling of dynamic extension function.
-
-Sun Jun 13 14:32:22 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): Conditionalize checking for process recovery
- on `#ifdef PIPES_SIMULATED'. Needed for MS-DOS and VMS.
- * builtin.c (tmp_integer): Change bracketing of magic test to
- `#ifdef HAVE_UINTMAX_T' which is more general and more correct.
-
-Wed Jun 9 21:36:01 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (make_regexp): Add dfa matching into IGNORECASE handling.
-
-Tue Jun 8 15:38:56 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (casetable): Remove `const'.
- * eval.c (casetable): Remove `const'.
- (load_ignorecase): New function. Loads locale-correct values in
- upper 128 bytes.
- (set_IGNORECASE): Call `load_ignorecase'.
-
-Tue Jun 8 14:04:19 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (get_src_buf): Make sure that value from
- `optimal_bufsize' is reasonable. Increase it if not.
-
-Tue Jun 8 13:54:28 2004 John E. Haque <mary1john8@earthlink.net>
-
- * awkgram.y (statement:LEX_FOR): Fix bug in loop to `delete a'
- optimization.
- * io.c (format_tree): Check for out of range values for
- positional specifiers.
-
-Mon Jun 7 17:02:48 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (tmp_integer): Bracket the magic test inside
- `#ifndef VMS'.
-
- * awk.h (child_catcher): Remove declaration.
- * main.c (main): Remove `signal' calls for SIGCLD, SIGCHLD.
- * io.c (child_died, child_signo, child_catcher): Removed.
- (get_a_record): Remove code checking for death of child.
- (redirect): If `rp' matches and is at EOF and type is input
- pipe, and `rp->pid' is not -1, call `wait_any' to reap the
- child. This is a heuristic, but it works pretty well.
-
-Sun Jun 6 18:35:17 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Restore use of `memmove' instead of
- memcpy. Otherwise some tests break on some systems. We think.
- (child_died): Don't reset signal handler; breaks on some S5 systems.
- (get_a_record): Reset handler if child_died. Still flaky on Solaris.
- * configure.ac (version.c): Made from version.in again, for
- non-Unix systems.
- * Makefile.am (base_sources): Add version.c back.
- * version.in: Include config.h for definition of const.
- * main.c (version_string): Add back declaration, don't
- include "version.i".
- (main): Don't install child_catcher on Sun. (HACK)
-
-Thu Jun 3 14:06:06 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (version_string): Removed declaration, since
- version.i is included directly.
- * version.in: Removed test for definition of const.
-
-Tue Jun 1 19:23:53 2004 Stepan Kasal <kasal@ucw.cz>
-
- * Makefile.am (base_sources): Don't mention version.c, so that
- it doesn't get distributed.
- * po/POTFILES.in: Remove version.c
- * configure.ac: Create version.i from version.in.
- * main.c: Include version.i.
-
-Tue Jun 1 18:33:32 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Fix problem reported by Stephen Marchant <Stephen.Marchant@Cognex.com>
- on Thu, 30 Oct 2003 13:11:42 -0500.
-
- * regex_internal.h (re_realloc): Allow for SunOS pre-Standard C
- `realloc' which doesn't accept NULL pointers.
- * awk.h (erealloc): Same.
-
- Unrelated. Change suggested by Peter Sobisch <petersob@gmx.net>, have
- PROCINFO["version"] be the version of gawk:
-
- * main.c (load_procinfo): Add in version.
-
- Unrelated: Avoid warning:
-
- * main.c (main): Cast calls to `bindtextdomain' and `textdomain' to
- void. Avoids diagnostic with `configure --disable-nls'.
- * dfa.c (check_matching_with_multibyte_ops): Remove unneeded nested
- #ifdef, per Scott Deifik (scottd@amgen.com). Also fix some spelling
- errors in comments.
-
-Tue Jun 1 18:26:45 2004 Paul Eggert <eggert@twinsun.com>
-
- Fix a bug reported by Mike Romaniw <msr@micromonumental.com>
- to bug-gnu-utils on 2003-09-27: compl(compl(0xf0f)) returned 0xfff
- on hosts with 64-bit uintmax_t and 64-bit IEEE-764 double, due to
- rounding errors.
-
- * doc/gawk.texi (Bitwise Functions): Leading nonzero bits are
- removed in order to fit the result into a C 'double' without rounding
- error.
- * builtin.c: Include <float.h> if available.
- (FLT_RADIX, FLT_MANT_DIG, DBL_MANT_DIG): Define if not already defined.
- (AWKSMALL_MANT_DIG, AWKNUM_MANT_DIG, AWKNUM_FRACTION_BITS): New macros.
- (tmp_integer): New function.
- (do_lshift, do_rshift, do_and, do_or, do_xor, do_compl): Use them.
-
-Tue Jun 1 17:40:47 2004 Stepan Kasal <kasal@ucw.cz>
-
- * eval.c (push_args): Set var_value to Nnull_string for
- local variables.
-
-Mon May 31 11:49:20 2004 Stepan Kasal <kasal@ucw.cz>
-
- * replace.c: #undef DEBUG before including mktime.c, it has
- different meaning there.
-
-Mon May 31 08:25:30 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (get_actual): Add extra error message for `delete f'
- inside body of function `f'.
-
-Mon May 3 09:53:34 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in, */Makefile.in: Updated to automake 1.8.4.
- * config.guess, config.sub: Same.
- * aclocal.m4, depcomp, install-sh: Same.
-
-Mon May 3 09:24:45 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Look for missing `strtoul'.
- * replace.c: Include missing_d/stroul.c if not HAVE_STRTOUL.
- * io.c (devopen): Use `strtoul' instead of `strtod' for
- extracting fd number from "/dev/fd/N". (Thanks to Jim Meyering.)
- * field.c (set_FIELDWIDTHS): Use `strtoul' instead of `strtod'
- when parsing FIELDWIDTHS values. (Thanks to Jim Meyering.)
-
-Mon Apr 19 20:12:57 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in, */Makefile.in: Updated to automake 1.8.3.
- * config.guess, config.sub: Same.
-
-2004-03-18 Stepan Kasal <kasal@ucw.cz>
-
- * eval.c (make_scalar): Comment clarification.
-
- * array.c (get_actual): Remove the condition ``canfatal''
- before ``cant_happen()''; if the data are consistent, we
- simply cannot get there with a non-func Node_param_list,
- no matter whether we are called via get_array or not.
-
- * awkgram.y (variable): Make one longer message, to help translators.
-
-Tue Mar 9 17:34:10 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Adapted `gofast' patch from Redhat Enterprise version of grep
- to current dfa.c.
-
- * dfa.c (buf_offset): New variable.
- (SKIP_REMAINS_MB_IF_INITIAL_STATE): Modified to use it, don't
- free `mblen_buf', `inputwcs'.
- (match_anychar, match_mb_charset, transit_state_consume_1char,
- transit_state): Use buf_offset in mblen_buf.
- (dfaexec): Realloc things instead of free and malloc.
-
-Thu Mar 4 16:46:55 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac (AC_FUNC_MBRTOWC): Added.
- (AC_CHECK_FUNCS): Removed `mbrtwoc'.
- (REGEX_MALLOC): Removed. Not needed for new regex* routines.
-
- * re.c (research): Removed comment and check for return of -2
- since that was for old regex using alloca or REGEX_MALLOC.
-
-Wed Mar 3 17:10:16 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (close_one): Don't close stdout or stderr; can happen if
- /dev/stdout or /dev/stderr are used in redirection and all the
- open files get used.
-
-Sun Feb 29 12:17:37 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (build_charclass, build_charclass_op): Change type of
- `class_name' parameter to `const char *' from `const unsigned char *'
- and adjust callers.
-
-Thu Feb 26 15:20:22 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (get_src_buf): Rewritten to better manage input and
- supplying newlines on command line programs. Fixes problems reading
- source files on Cygwin.
-
- Unrelated fixes from mary1john8@earthlink.net:
-
- * node.c (format_val): For no malloc case, free s->stptr if necessary.
- * io.c (nextfile): Add missing call to `unref(FILENAME_node->var_value)'
- for no files case.
- (close_redir): Remove file from redirection list even if fp is
- stdout or stderr.
-
-Tue Feb 24 12:11:34 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.c (build_wcs_upper_buffer): Enclose `offsets_needed'
- label in `#ifdef _LIBC' to silence `unused label' compiler warning.
-
-Tue Feb 24 11:57:18 2004 Nelson H.F. Beebe <beebe@math.utah.edu>
-
- * regcomp.c (parse_expression): Add cast to (unsigned char *) in calls
- to `build_charclass_op'.
- * regex_internal.c (build_wcs_buffer): Add cast to char* in call to
- `wcrtomb'.
- * regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
- bitset_mask, re_string_char_size_a, re_string_wchar_at,
- re_string_elem_size_at): Change to use prototypes.
- (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
- Declare as `internal_function'.
-
- * Makefile.am: Add rule to make .i files. This assists in debugging.
- * awk.h (m_tree_eval): Add casts to NULL. (Some compilers are just
- dumb. ADR)
-
-Mon Feb 23 15:58:39 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Clean up occupied process slots of children that have died:
-
- * awk.h (child_catcher): New function, declare it.
- * main.c (main): Catch SIGCHLD/SIGCLD with `child_catcher'.
- * io.c (child_died): New static variable.
- (child_catcher): New function, sets `child_died', reinstalls self
- as signal handler.
- (close_rp): New function: isolates actual fp/iop closing logic.
- (close_redir): Call `close_rp'.
- (get_a_record): Check `child_died' and call `wait_any(0)' if so.
- Add descriptive comment.
-
- Unrelated clean up:
-
- * eval.c (fcalls): Renamed from `fcall_list'. All uses changed.
- (pop_fcall, push_args, dump_fcall_stack): Adjusted to use indexing
- on `fcalls' instead of a pointer into it. Avoids hassles if `fcalls'
- is realloc-ed during recursive tree_evals. Thanks to BWK.
-
- * config.guess, config.sub: Updated from Savannah.
-
-2004-02-19 gettextize <bug-gnu-gettext@gnu.org>
-
- * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.14.1.
-
-Wed Feb 18 12:40:09 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (rule): Use `msg' not `warning' for `must have an
- an action part' message. `warning' is wrong, since it's a real error.
-
-Mon Feb 16 12:17:39 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c, eval.c, builtin.c: Change test for `#ifdef HAVE_LOCALE_H'
- to `#if ENABLE_NLS && defined(HAVE_LOCALE_H)' so that builds with
- `configure --disable-nls' will actually work on non-glibc systems.
-
-Thu Feb 12 02:05:34 2004 Stepan Kasal <kasal@ucw.cz>
-
- Lots of misc changes from Stepan Kasal integrated.
-
- * array.c: Various variables and parameters of static functions
- changed from int to long, in order to prevent overflow.
-
- * eval.c (make_scalar): New function; takes care of everything
- that has to be done when a node of type Node_var_new or
- Node_array_ref changes to a scalar variable.
- (tree_eval, get_lhs): Call it.
- (tree_eval): From now on, tree_eval(NULL) doesn't work;
- it reports an internal error.
- * awk.h (m_tree_eval): Likewise for the two macro versions.
- * awkgram.y (statement): Make sure the Node_K_return's lnode is
- always the return value, never NULL.
-
- * Makefile.am (install-exec-hook, uninstall-links): Make use of
- $(VERSION).
- (INCLUDES): Renamed to AM_CPPFLAGS.
- (AM_CPPFLAGS): The file libintl.h is generated in the
- build subdirectory intl, not in the directory $(srcdir)/intl.
- (diffout): New target is an alias for ``make -C test diffout.''
- * awklib/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
-
- * README_d/README.hpux: Change the whitespace in the appended patch,
- so that it applies to the current source.
- * posix/gawkmisc.c: Change a tab to a space (needed for the above).
-
- Make version control more in the style of current autotools:
-
- * configure.ac: Remove obsolete versions of macros:
- AM_INIT_AUTOMAKE doesn't need any parameters.
- AC_OUTPUT shouldn't have any parameters either.
- Its parameters go to a new macro: AC_CONFIG_FILES.
- AC_CONFIG_HEADERS moved near the end of the file.
- * configure.ac: Add [version.c:version.in] to AC_CONFIG_FILES
- * version.in: Modify for autoconf substitutions.
- * version.c: Remove, it's generated at configure time now.
- * fixvers, patchlev.h, unsupported/tandem/ptchlvl.h: Nuke and ...
- * Makefile.am, main.c: ... forget them.
-
-Mon Feb 9 12:57:00 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h builtin.c eval.c field.c (HUGE): Changed to `UNLIMITED'.
- Avoids possible conflict with constant in svid-mode math.h. Thanks to
- Roman.Putanowicz@iecn.u-nancy.fr for pointing out the problem.
-
-Fri Feb 6 12:09:55 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Check for `wctype', `wcscoll' and `iswctype'.
- * mbsupport.h: New file. Merges and centralizes testing for MBS support.
- * Makefile.am (base_sources): Add mbsupport.h to list.
- * dfa.c, dfa.h, awk.h (MBS_SUPPORT): Include "mbsupport.h" and use the
- test there.
- * regex_internal (RE_ENABLE_I18N): Same.
-
- * Makefile.am (CLEANFILES): Added.
-
-Thu Feb 5 18:05:12 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac (HAVE_WCTYPE_T): New test code added.
- * dfa.h (wctype_t): Define if system doesn't. Needed here too
- for other files that include dfa.h.
- * dfa.c (wctype_t): Define if system doesn't.
- (lex): Manually fill in arrays used for char class range testing
- so will work on c89 and older compilers.
- (parse_bracket_exp_mb): Split up an assignment to avoid type complaints.
-
- * main.c (main): When checking for `close_io' failure, only set
- `exit_val' to 1 if not already exiting.
-
- * regcomp.c (regerror): Remove use of mempcpy. Generates too
- many compiler warnings.
- * configure.ac (AC_CHECK_FUNCS): Don't bother checking for it.
-
-Wed Feb 4 17:34:47 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * getopt.h (__THROW): Only define it if C++. The __GNU_PREREQ
- macro is a major headache.
-
-2004-02-02 Paolo Bonzini <bonzini@gnu.org>
-
- * regexec.c (check_matching): Add P_MATCH_FIRST parameter.
- (re_search_internal): Pass new parameter to check_matching.
- (check_matching): Unless a parenthesized group is found at the
- beginning of the regexp, advance P_MATCH_FIRST until we entered
- a state different from the initial state.
-
-Mon Feb 2 15:52:37 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (research): Change last param to re_search to pass
- NULL if `need_start' is false. May give us a marginal speed gain.
-
-Thu Jan 29 17:04:51 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (sub_common): Fix logic for `&' in replacement for
- multibyte case. Simplify code a bit.
-
-Tue Jan 20 10:41:45 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Add check for `memmove'.
- * replace.c: Include missing_d/memmove.c if don't have `memmove'.
-
-Sun Jan 18 12:01:29 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (sub_common): Add comment and support for 2001 POSIX
- behavior when --posix in effect. The masses have been
- clamoring for this one.
-
-2004-01-16 gettextize <bug-gnu-gettext@gnu.org>
-
- * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.13.1.
- * intl/*: Updated to 0.13.1.
-
-Fri Jan 16 08:16:38 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * getopt.h, getopt.c, getopt1.c: Synced to GLIBC version:
- getopt.c: 1.51
- getopt.h: 1.18
- getopt1.c: 1.9
-
-Thu Jan 15 15:28:48 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- Here we go again:
-
- * regcomp.c, regex.h, regex.c, regex_internal.h, regex_internal.c,
- regexec.c: Sync to GLIBC version, but with bug fixes. GLIBC
- CVS versions:
-
- regcomp.c: 1.76
- regexec.c: 1.55
- regex.c: 1.125
- regex.h: 1.30
- regex_internal.c: 1.39
- regex_internal.h: 1.45
- regexec.c: 1.55
-
- * acinclude.m4: Removed, not needed for automake 1.8.x.
- * configure.ac: Updated to autoconf 2.59.
-
- Everything else updated to automake 1.8x and autoconf 2.59.
-
-Wed Jan 14 14:26:36 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c, dfa.h: Updated manually with most of the changes in
- grep 2.5.1. That version lost the ability to match newlines
- in the data, so the merge had to be done by hand. Sigh.
-
-2004-01-12 Paolo Bonzini <bonzini@gnu.org>
-
- ALLOCA patch from
- http://sources.redhat.com/ml/libc-alpha/2004-01/msg00099.html
- added.
-
- * regcomp.c [_LIBC && !RE_ENABLE_I18N]:
- Drop code to support this, it is never true.
- (build_range_exp) [!_LIBC]: Do not create a range
- in MBCSET for a single-byte character set.
- (build_range_exp) [_LIBC]: Do not create a range
- in MBCSET for a single-byte character set without
- collation elements.
- (init_dfa): Do not conditionalize on _LIBC, it
- just makes the code less clear.
- (parse_bracket_exp): Use NON_MATCH variable in
- addition to "mbcset->non_match", not as an
- alternative.
- (build_charclass_op): Rename NOT parameter to
- NON_MATCH, use it instead of declaring a variable.
- (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
- if the character set is single-byte.
-
-Wed Jan 7 15:23:04 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (mk_rexp): Set n->re_cnt to 1. Makes reinstated
- dfa code actually take effect! Don't know how I missed this.
-
- Unrelated: sync regex code to glibc.
-
- * regcomp.c, regex.h, regex.c, regex_internal.h, regex_internal.c,
- regexec.c: Sync to GLIBC version, but with bug fixes. GLIBC
- CVS versions:
-
- regcomp.c: 1.74
- regex.c: 1.124
- regex.h: 1.30
- regex_internal.c: 1.39
- regex_internal.h: 1.43
- regexec.c: 1.55
-
- * regcomp.c (peek_token): Temporarily, we hope, disable \s and \S
- operators. Too much trouble to document right now.
- * dfa.c (lex): Add code for \s and \S but disable it until
- next release.
-
-Wed Dec 24 15:28:57 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_tree_eval): For Node_assign_concat, add
- call `free_temp(r)'. Thanks to mary1john8@earthlink.net.
-
-Mon Dec 1 10:25:52 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- CONSTVAL not needed if we test PERM instead. Thanks to
- mary1john8@earthlink.net. See test/concat3.awk.
-
- * awk.h [CONSTVAL]: Removed.
- * eval.c (flag2str): Removed CONSTVAL from table.
- (r_tree_eval): For Node_assign_concat, it's enough to check
- if l->flags has PERM clear.
- * awkgram.y (yylex): Removed use of CONSTVAL for YSTRING and YNUMBER.
-
-Mon Nov 3 16:33:26 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (get_src_buf): Replace `memmove' with `memcpy' for
- marginal portability gain to older systems.
- * io.c (get_a_record): Ditto.
-
-Sun Nov 2 15:59:27 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [CONSTVAL]: Renamed from `STRCONST'.
- * eval.c (flags2str): Fix in table.
- (r_tree_eval): For Node_assign_concat, check for the flag for
- both left and right hand sides. Also add a `force_string' call
- for the right hand side and the left hand side.
- * awkgram.y (yylex): Change flag value for YSTRING and add use
- of flag for YNUMBER.
-
-Wed Oct 29 14:23:29 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [STRCONST]: New flag value.
- * eval.c (flags2str): Add it to table.
- (r_tree_eval): For Node_assign_concat, check for the flag so that
- we don't clobber string constants given:
- s = ""
- s = s something
- * awkgram.y (yylex): For YSTRING, set STRCONST flag.
-
-Tue Oct 28 18:00:00 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Force SUBSEP to always have a string value. Per bug report
- from mary1john8@earthlink.net.
-
- * awk.h (NODETYPE): New type, Node_SUBSEP.
- (set_SUBSEP): Add declaration.
- * awkgram.y (isnoeffect, isassignable): Add Node_SUBSPEP case.
- * array.c (set_SUBSEP): New function.
- * eval.c (nodetypes): Add Node_SUBSEP.
- (r_tree_eval, r_get_lhs): Add code for Node_SUBSEP.
- * main.c (varinit): Use Node_SUBSEP as type for SUBSEP.
- * profile.c (tree_eval, pp_lhs, is_scalar, prec_level): Handle
- Node_SUBSEP.
-
-Tue Oct 7 09:26:33 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (NODETYPE): New member `Node_assign_concat'.
- * awkgram.y (exp): Look for case of `x = x y' and if so, create a
- Node_assign_concat.
- * eval.c (interpret): Add case for Node_assign_concat.
- * profile.c (prec_level): Ditto.
- (tree_eval): Ditto. For variables, call new function `vname' to
- print name; handles varname field for -v variables, which end up
- including the value.
- (vname): New function.
-
-Wed Sep 24 17:32:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Speed up `avoid_dfa' kludge, at least a little:
-
- * awk.h (struct Regexp): Add `has_anchor' member. Make it and
- `dfa' member shorts; keeps space the same.
- * re.c (make_regexp): Set `has_anchor' member correctly.
- (avoid_dfa): Test for `has_anchor' member instead of searching
- for it each time.
-
-Sun Sep 21 18:34:32 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (state): Only needs to be 256 bytes, initstate() can't
- use any more than that. Well whadayaknow.
- (do_rand, do_srand): Call `setstate' after calling `initstate'.
-
-Tue Sep 16 15:44:29 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (interpret): For Node_K_switch, add kludge_need_start stuff
- as used in `match_op'. Sigh.
- * re.c (make_regexp): Add `no_dfa' variable, which is true if
- GAWK_NO_DFA exists in the environment. This enables run time
- testing of things with/without the dfa matcher.
-
-Mon Sep 15 18:36:38 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- After much soul searching, reinstated old dfa code. The performance
- of the new regex is just disastrous. Sigh.
-
- * awk.h (re_cnt): Reinstated old definition.
- (struct Regexp): Added `dfareg' and `dfa' members.
- (make_regexp): New last parameter in function, changed decl.
- (avoid_dfa): Added declaration.
- * awkgram.y (regexp, mk_rexp): Added use of `re_cnt'. Fixed call
- to `make_regexp'.
- * Makefile.am: Add dfa.h and dfa.c.
- * eval.c (match_op): Complexified: added call to `avoid_dfa' and
- `kludge_need_start' variable where used to pass FALSE as last parameter
- of research().
- * field.c (set_FS): Fixed call to `make_regexp'.
- * io.c (get_a_record, set_RS): Fixed calls to `make_regexp'.
- * re.c (make_regexp): Added last paramter (`dfa') to function.
- Complexified the code.
- (re_update): Fixed call to `make_regexp'.
- (research): Complexified the code, added calls to dfa stuff.
- (dfaerror): New function.
- (re_update): Fixed call to `make_regexp'.
- (avoid_dfa): New function.
-
-Tue Sep 9 15:57:38 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (get_src_buf): Fix calculation of `offset' when shifting
- source lines around. In general, improve handling of things when
- moving the source code line around. What a mess this code is.
-
-Mon Sep 8 19:08:55 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (fmt_ok): Make provision for %F format and printf %'f flag
- here too.
-
-2003-07-23 Christophe Bisiere <bisiere@univ-tlse1.fr> (tiny change)
-
- * posix/regex.h (RE_TRANSLATE_TYPE): Define it to "unsigned char,"
- to avoid problems at hosts with signed char.
- * posix/regexec.c (re_search_internal): Don't say
- "unsigned RE_TRANSLATE_TYPE."
-
-Thu Aug 28 11:09:41 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (nextfile): Change use of variable `files' to make it
- clearer that it's a boolean flag.
-
-Tue Aug 26 22:58:15 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (useropen): Add `defined (HAVE_GETGROUPS)' as first test
- in `#ifdef'. Brings things in sync with same test in main.c and awk.h.
-
-Tue Aug 26 22:49:37 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * dbug.h: New file.
-
- * array.c, awkgram.y, builtin.c, eval.c, ext.c, field.c, io.c,
- main.c, msg.c, node.c, profile.c, re.c: Converted to use
- Fred Fish's `dbug' library. By default compiled out, thus
- not affecting speed.
-
- For the nonce, the `dbug' library itself is not shipped with
- gawk, since I expect no-one else but me to be using it.
-
-Thu Aug 21 23:15:36 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (numfiles): Change extern decl to long, to match what's
- in main.c. Keeps things working on 64-bit systems. Thanks to bug
- report from Jan Oravec <jan.oravec@6com.sk>.
-
-Wed Aug 20 14:53:47 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (genflags2str): Move test for out-of-space inside test
- for is the bit set.
-
-Mon Aug 11 11:26:51 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (parse_bracket_exp): If `build_charclass' fails, just pass
- its value on as the return value.
-
-Sun Aug 10 16:59:14 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c (build_range_exp): Make sure we don't
- get WEOF on range characters.
-
-Tue Aug 5 21:49:32 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (get_actual): In `case Node_param_list' add test for
- `&& (symbol->flags & FUNC) == 0' to the if.
-
-Sun Jul 13 18:28:38 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Further bug fix:
-
- * awkgram.y (variable): Give the new variable an lnode
- of Nnull_string if it's not an array, even if it is
- a Node_var_new.
-
-Fri Jul 11 09:32:21 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Bug fix:
-
- * eval.c (r_tree_eval): For Node_array_ref, set
- tree->orig_array->var_value to Nnull_string too.
-
- Unrelated i18n and POSIX change:
-
- * configure.ac: Add check for local printf supporting %F format.
- * awk.h (loc): New variable declaration.
- * main.c (loc): Defined.
- (main): Call `localeconv' to set loc.
- * io.c (format_tree): Add support for printf quote flag, %'d for
- decimal formats (not %e, %E), adds thousand separator into value.
-
-2003-07-10 Paul Eggert <eggert@twinsun.com>
-
- * io.c (two_way_open): If /bin/sh cannot be executed, exit
- with status 126 consistently.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Mon Jul 7 09:55:49 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (copyleft, usage): Make sure to fflush output fp. Per Jim
- Meyering, if error, exit non-zero.
- * ext.c (get_argument): Fix array paramater handling.
-
-2003-07-06 Paul Eggert <eggert@twinsun.com>
-
- * builtin.c (do_substr): Issue better diagnostics when
- d_substr and d_length are NaN, or when 0 < d_length < 1.
- Be careful when comparing double to SIZE_MAX, as
- the comparison might return the "wrong" answer when
- `(double) SIZE_MAX' is a number that is not equal to
- SIZE_MAX.
- (do_gensub): Watch out for HOW values that are out of range
- or are NaN.
- (do_dcngettext): dcngettext wants an argument of type
- unsigned long, not long, so use a value of that type.
-
-Fri Jul 4 10:58:02 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Make option letter 'D' fall through into default
- unknown case if not debugging. Let's us have just one version of
- `optlist'.
-
-Thu Jun 26 15:25:57 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (get_actual): Undo Stepan Kasal change of 2003-06-17.
- See test/match2.awk.
-
-Wed Jun 25 15:26:08 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_rand): Change calculation so that result
- obeys constraint: 0 <= N < 1. This is per history and POSIX.
- Thanks to Nelson Beebe (beebe@math.utah.edu) for reporting
- this issue.
-
-Mon Jun 23 15:13:39 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (rs1scan): Per advice from Bruno Haible, it's safe
- to skip the multibyte checking code if RS is '\n'. See
- the comment in the code. Big performance improvement for
- multibyte locales.
-
-2003-06-20 Stepan Kasal <kasal@ucw.cz>
-
- * eval.c (comp_func): If memcmp returns 0, we have to compare
- the lengths.
-
-2003-06-19 Stepan Kasal <kasal@ucw.cz>
-
- * eval.c (interpret) <Node_K_arrayfor>: Use NULL, not 0, to
- initialize the variable list.
- (comp_func): Array indices no longer are string values,
- you have to use ahname_str, ahname_len.
-
-Tue Jun 17 11:53:46 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (get_actual): Make check for isparam
- smarter: also check for FUNC flag.
-
-2003-06-17 Stepan Kasal <kasal@ucw.cz>
-
- * array.c (get_actual): Even if canfatal is FALSE, don't
- tolerate existence of things which can't happen.
-
-Mon Jun 16 16:21:44 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Removed m4/Makefile.
- * m4/Makefile.am: Removed.
-
-2003-06-16 gettextize <bug-gnu-gettext@gnu.org>
-
- * configure.ac (AC_OUTPUT): Add m4/Makefile.
- (AM_GNU_GETTEXT_VERSION): Bump to 0.12.1.
-
-Sun Jun 15 20:45:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Enhance logic to fill buffers to include
- `|| no_data_left(iop)'.
- (rs1scan): Fix logic for setting recm fields for multibyte
- character case.
-
-2003-06-10 Stepan Kasal <kasal@ucw.cz>
-
- * awkgram.y (release_all_vars): Do not try to release a value of
- Node_var_new; after get_lhs, use the lhs directly, do not try
- to do (*lhs)->var_value; the Node_var case doesn't need
- special treatment.
- * builtin.c (do_match): `get_param' is successful iff it returns
- Node_var_array---if the variable was new, get_param has already
- changed the type.
- * field.c (do_split): Likewise.
-
-Sun Jun 15 19:36:35 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (r_dupnode): Typo fix in hash tables: stptr -> ahname_str.
- Thanks to mary1john8@earthlink.net.
- * array.c (get_actual): Add `if (canfatal)' before call to
- `cant_happen'.
-
-Sun Jun 15 19:25:49 2003 Patrick T.J. McPhee <ptjm@interlog.com>
-
- * awk.h (memcpy_ulong): Add ! WIN32 to ifdefs.
-
-Mon Jun 9 18:38:20 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h (hpux): Added stuff to (hopefully) get `tzset'
- declared on HP/UX 10 and up.
-
-Mon Jun 9 17:12:24 2003 Patrick T.J. McPhee <ptjm@interlog.com>
-
- * awk.h (ATTRIBUTE_EXPORTED): New macro for dynamic libs on Windows32.
- * CONVMFTidx, stack_ptr, do_lint, lintfunc: Now have this attribute.
-
-Mon Jun 9 13:11:33 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Clean up of Stepan's patches.
-
- * array.c (get_actual): Renamed from r_get_array. Added second
- param canfatal if routine should print fatal message when not an array.
- (get_actual): Renamed 'prm' to `isparam'.
- (array_vname): Add static msglen var; only realloc string if it grows.
- Don't use `s += sprintf(...)'. No good on old systems where sprintf
- returns char *. Minor formatting cleanups.
- (do_adump): Restored separate `a' and `r' variables; helps for debugging.
-
- * awk.h (SCALAR, UNINITIALIZED): Removed entirely, renumbered other flags.
- (get_array, get_param): New macros, calls get_actual.
- (get_actual): Declaration changed from that of r_get_array.
-
- * awkgram.y (release_all_vars): Restored previous version of code; new
- version isn't right for Node_xx variables.
- (variable): Minor code cleanup for readability.
-
- * builtin.c (do_match): Use get_param and print our own message when
- third parameter is not an array.
-
- * eval.c: Added a few comments here and there, removed some no longer
- needed comments.
-
- * field.c (do_split): Use get_param and print our own message when
- second parameter is not an array.
-
-Mon Jun 9 11:46:21 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (do_delete): Initialize hash1 and last to keep gcc -Wall happy.
- * io.c (rsnullscan): Comment out label skip_leading for same reason.
-
-Wed May 28 08:31:23 CEST 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * eval.c (forloops_active, in_function): Nuked.
- (pop_all_forloops, pop_fcall_stack): Are now inline.
-
-Wed May 28 07:58:35 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * field.c, awk.h (Null_field): No longer static.
- * field.c (init_fields): Initial value of $0 can be Nnull_string,
- no need to copy it.
- * eval.c (r_get_lhs) <Node_field_spec>: Test for uninitialized field,
- which is Nnull_string for $0 and Null_field for $(>0).
- * builtin.c (do_print_rec): Test for uninitialized $0.
-
-Tue May 27 17:03:02 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * awk.h (Node_var_new): New node type for variables which can be
- either scalar or array. From now on, Node_var is always scalar.
- (Node_gvar_ref): Nuked, its role can be taken by Node_array_ref.
- (orig_var): Removed, orig_array is enough.
- (SCALAR, UNINITIALIZED): Flags nuked.
- (var_uninitialized): New macro to distinguish uninitialized vars;
- used in several other macros.
- * array.c (r_get_array, array_vname, do_adump): Adapt to the
- above changes.
- * awkgram.y, eval.c, field.c, main.c, node.c, profile.c: Ditto.
-
-Tue May 27 14:27:50 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * array.c (r_get_array): New function, which goes all the way
- through Node_param_list to actual Node_var_array; if it encounters
- non scalar Node_var, it changes it to Node_var_array.
- (in_array, do_delete, do_delete_loop, do_adump, assoc_sort_inplace):
- Use get_array.
- (assoc_lookup): The parameter must be a Node_var_array.
- * awk.h (get_array, r_get_array): Declare the new function and define
- a macro to speed it up.
- * builtin.c (do_match): Use get_array.
- * eval.c (interpret) <Node_K_arrayfor>: Ditto.
- (r_get_lhs) <Node_K_arrayfor>: Ditto.
- * field.c (do_split): Ditto.
-
-Tue May 27 08:23:51 2003 Stepan Kasal <kasal@math.cas.cz>
-
- Changed node->vname meaning for type Node_array_ref and Node_gvar_ref.
- It contains only the reference name; one has to (recursively) follow
- node->prev_array to find out the call history for the array.
-
- * array.c (array_vname): New function to print the array name.
- (assoc_lookup, do_delete): Use array_vname.
- * eval.c (interpret, r_tree_eval, r_get_lhs): Use array_vname.
- (push_args, pop_fcall): Things have simplified.
- * awk.h (array_vname): Declare.
- (prev_array): Define.
-
-Sun Jun 8 11:25:36 2003 Stepan Kasal <kasal@ucw.cz>
-
- * awkgram.y (append_right): When using savetail, remember that it
- is not necessarily the tail of the list---it's just a pointer to
- the last chunk appended.
-
-Thu Jun 5 12:01:41 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_strtonum): Make `strtonum(13)' work.
-
-Wed Jun 4 17:07:06 2003 Corinna Vinschen <vinschen@redhat.com>
-
- * io.c (binmode): Include function for __CYGWIN__ too.
-
-Tue Jun 3 12:40:50 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (interpret): Node_K_switch. For regex case, don't
- call `free_temp' on the result of `force_string' if it's equal to
- switch_value. Thanks to John DuBois <spcecdt@armory.com>
- for finding the problem.
-
-Sun Jun 1 13:08:22 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): For %c, force precision to 1.
-
-Wed May 28 11:55:48 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (isnoeffect, isassignable): Add Node_TEXTDOMAIN to
- switches in both functions.
-
-Wed May 28 11:38:59 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * awkgram.y (switch_body): Remove rule ``switch_body:/*empty/''
- as ``switch_body:case_statements'' covers it---this disambiguation
- fixes a reduce/reduce conflict.
-
-Sun May 25 16:23:43 2003 Corinna Vinschen <vinschen@redhat.com>
-
- * configure.ac: Remove linking against /usr/lib/automode.o.
- * configure: Regenerate.
-
-Sun May 25 15:19:19 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * awk.h (get_lhs): For an initialized Node_var, you may return
- the address of var_value pointer, no matter whether reference
- bit was set or not. We were silly slowing down most of the
- assignements.
-
- * (get_a_record): After grow_iop_buffer, move recm.rt_start even
- if recm.len == 0.
-
-Mon May 19 16:55:59 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Code for C-style switch statements. Initial version contributed by
- Michael Benzinger <Michael.Benzinger@sabre-holdings.com>.
-
- Disabled by default, use `configure --enable-switch' to turn it on.
-
- * configure.ac: New AC_ARG_ENABLE for switch statements.
- * awk.h (NODETYPE): New types for switch, case, default keywords
- and respective lists.
- * awkgram.y: New productions for switch statement. Does checking to
- avoid duplicate cases.
- * eval.c (nodetypes): New entries for new NODETYPEs.
- (interpret): New code to do switch execution.
- * profile.c (pprint): New code to print switch statements.
-
-Mon May 19 15:05:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.ac: Renamed from configure.in.
- * fixvers: Now looks in configure.ac.
- * Makefile.am: Now cites configure.ac.
-
- * Misc other: Updated to Automake 1.7.5.
-
-Sun May 18 12:03:56 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (do_delete_loop): Fix bracing of logic for
- tests.
-
-Wed May 14 09:01:16 2003 Stepan Kasal <kasal@math.cas.cz>
-
- Misc patches:
-
- * builtin.c (do_match): If third parameter to `match' is supplied,
- store all subexpressions which are applicable, even though there
- are some unused between them.
-
- * awkgram.y (yylex): When returning from unterminated REGEXP
- (which is /* kludge */), take care to fake a yylval, to
- prevent ``internal error'' later.
-
-Sun May 11 15:51:00 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * io.c (rsnullscan, get_a_record): Boundary condition bug fixes.
-
-Sun May 11 15:15:20 2003 Scott Deifik <scottd@amgen.com>
-
- * awk.h: Add decls for `memcpy_ulong', `memset_ulong', and
- MSC defines.
- * regex.c: Include <stdio.h> if MSC for size_t.
-
-Mon May 5 15:11:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Only tweak RT's value in place if the current
- RS scanner is the same as the last one. Bug report submitted by
- John DuBois (<spcecdt@armory.com>).
-
-Fri May 2 14:39:48 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Add logic at end to be smart about setting
- RT. Saves considerable time, esp for default case where RS = "\n".
-
-Wed Apr 30 11:44:38 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (do_split): Add check and code for Node_gvar_ref.
- * array.c (in_array, do_delete, asort_actual): Same.
- * builtin.c (do_split): Same for 3rd arg array parameter.
- * eval.c (interpret): Same for Node_K_array_for.
- (push_args): Same for evaluating extra args.
-
-Tue Apr 29 15:54:28 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Record reading code redone/simplified considerably.
-
- * awk.h (IOBUF): Removed total field, no longer used.
- * io.c (at_eof, has_data, no_data_left): New macros.
- (RECVALUE, SCANSTATE): New enumerated types.
- (rs1get_a_record, rsnull_get_a_record, rsre_get_a_record): Removed.
- (get_a_record): Rewritten, again. Now contains just buffer and
- record code; searching code moved into these functions:
- (rs1scan, rsnullscan, rsrescan): New functions to scan a buffer
- for record contents and terminator. Fill in values in:
- (struct recmatch): Holds found record and terminator.
- (spec_setup): Set iop->dataend to indicate data is already in buffer.
- (nextfile, inrec): Use new macros instead of flag and pointer tests.
- (set_RS): Set scanning function instead of record function.
-
- FWIW, it all passes `make test'.
-
-Sun Apr 27 21:02:39 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (do_close): At end, if do_posix return 0. See comment in code.
-
-Tue Apr 15 09:56:03 2003 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * configure.in: Check existence of wcrtomb, and wcscoll.
- * configh.in: Likewise.
- * configure: Re-generate.
- Thanks to Kimura Koichi <kimura.koichi@canon.co.jp> for reporting.
-
-Sun Apr 13 16:02:10 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Add call to `setlocale' for LC_NUMERIC after program is
- parsed.
- (arg_assign): Switch back to "C" locale for LC_NUMERIC for command
- line assignments; this is per POSIX that period is decimal point for
- program and command line assignments and the locale's separator
- applies for input, output, and string to number conversion.
-
-2003-03-26 Paul Eggert <eggert@twinsun.com>
-
- * builtin.c [HAVE_INTTYPES_H]: Include <inttypes.h>.
- [!HAVE_INTTYPES_H && HAVE_STDINT_H]: Include <stdint.h>.
- (CHAR_BIT, INTMAX_MIN, UINTMAX_MAX): Define if the system does not.
- (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): New macros, taken from
- coreutils and many other GNU utilities.
- (format_tree): When formatting, use widest possible integers
- rather than settling with 'long'.
- (do_lshift, do_rshift, do_and, do_or, do_xor, do_compl): Likewise,
- when doing bitwise operations.
- * configure.in (jm_AC_TYPE_LONG_LONG, jm_AC_TYPE_UNSIGNED_LONG_LONG,
- jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T): Add, since the mainline
- code now needs this.
- * doc/gawk.texi (Control Letters, Bitwise Functions): Document this.
- * m4/intmax_t.m4: New file, taken from coreutils (but renamed to
- avoid collision with our m4/inttypes.m4).
- * m4/longlong.m4: New file, taken from coreutils.
- * m4/uintmax_t.m4, m4/ulonglong.m4: Remove; superseded by the above
- new m4 files.
-
- * builtin.c (BITS_PER_BYTE): Remove; use CHAR_BIT instead, since
- it's the standard name.
- (do_lshift, do_rshift): Complain if the shift width is exactly equal
- to the word size, too.
-
-Thu Mar 27 10:44:11 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (rs1_get_a_record, rsnull_get_a_record, rsre_get_a_record):
- Enhance check for no data left in file to be only if file has
- non-zero size. Linux files such as /proc/filesystems stat as a
- regular file of size 0, but actually have contents. Ugh.
- Thanks to Martin Schlemmer <azarah@gentoo.org> for the bug report.
-
-Wed Mar 26 12:19:32 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): Add a lint warning at label `out_of_range'.
-
-Tue Mar 25 12:24:38 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (variable): For array subscript, if NAME is in the
- symbol table, but not a variable, array, or parameter, generate
- a syntax error.
- (isarray): New function, tests if a symbol can be an array.
-
- * custom.h: Add check for HP/UX, needed for GCC.
-
-Mon Mar 17 09:21:09 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Allow simultaneous manipulation of a global array directly
- and when passed as a parameter.
-
- * awk.h (Node_gvar_ref): New nodetype.
- [orig_var]: New macro.
- * array.c (do_delete_loop, do_delete): Add logic to handle
- seeing Node_gvar_ref.
- * eval.c (nodetypes): Add Node_gvar_ref.
- (r_tree_eval, r_get_lhs): Add Node_gvar_ref case.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Wed Mar 19 14:08:11 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y: Production `program --> program error'. Add a return so
- that we don't produce an infinite stream of error messages.
- Thanks to Michael Mauch <michael.mauch@gmx.de> for pointing this out.
-
-Wed Mar 19 13:45:50 2003 Corinna Vinschen <vinschen@redhat.com>
-
- * regex.c [RE_ENBABLE_I18N]: Remove definition; the one in
- regex_internal.h is better and makes things work with Cygwin.
-
-Tue Mar 11 11:54:20 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.h: Don't include <limits.h> after <regex.h> was
- included in regex.c, since it could redefine RE_DUP_MAX to a lower
- value.
- (bitset_set, bitset_clear, bitset_contain): Use 1UL instead of 1 in
- left shift operations.
- * regex.c: Include <limits.h> before <regex.h>
- * regcomp.c (re_compile_fastmap_iter, init_word_char, parse_expression):
- Use 1UL instead of 1 in left shift operations.
-
-Mon Mar 10 15:45:37 2003 Corinna Vinschen <vinschen@redhat.com>
-
- * configure.in: Update CYGWIN case to add /usr/lib/automode.o.
-
-Thu Mar 6 11:07:36 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Updated to automake 1.7.3.
-
- * config.guess, config.sub: Updated from prep.
- * Makefile.am (AUTOMAKE_OPTIONS): Add dist-bzip2 to get .bz2 files.
-
-Tue Mar 4 10:40:46 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * version.in: Added goop for K&R compilers; forgot that I have to fix
- this file which then is used to create version.c.
-
-Mon Mar 3 17:00:44 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: New option --disable-lint.
- * awk.h (do_lint, do_lint_old): Conditionally declare based on NO_LINT.
- * eval.c (set_LINT): Ifdef out body if NO_LINT.
- * main.c (do_lint, do_lint_old): Conditionally compile properly.
- (main): Handle --lint argument code.
-
-Fri Feb 28 10:43:07 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Add LC_TIME to the things that get set with
- setlocale().
- * builtin.c (format_tree): Change test of `n0-- <= 0' to ==, avoids
- VMS diagnostic.
-
-Thu Feb 27 17:48:29 2003 Pat Rankin <rankin@pactechdata.com>
-
- * regexec.c (proceed_next_node): Cast re_string_get_buffer to char *.
- (get_subexp): Likewise.
-
-Tue Feb 25 12:33:41 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.h, regex_internal.c, regcomp.c, regexec.c:
- Make MB_CUR_MAX into thread local variable re_mb_cur_max.
-
- Unrelated, from Scott Deifik:
-
- * io.c (grow_iop_buffer): Add checks for overflow of new buffer size.
-
-Mon Feb 24 13:30:59 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (gawk_mb_cur_max): Declared:
- * main.c (gawk_mb_cur_max): Defined, init to 1.
- (main): Initialize gawk_mb_cur_max.
- * awkgram.y, builtin.c, eval.c, field.c, io.c, re.c (mb_cur_max):
- Replaces all instances of MB_CUR_MAX, which is a function call (!)
- in glibc. Big speed up, especially for -Fx case, where x is a
- single character.
-
- Unrelated:
-
- * awkgram.y (rule): For non-existent action, use a Node_K_print_rec
- node.
-
-Sun Feb 23 15:45:20 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Speed up plain `print' and `print $0':
-
- * awk.h (Node_K_print_rec): New node type.
- (do_print_rec): Declare function.
- * awkgram.y (simple_stmt): Create humongous test for plain `print'
- or `print $0', and if so, use a Node_K_print_rec for it. Modify
- test for lint message.
- * builtin.c (redirect_to_fp): New function for common code to get fp
- and rp for do_print{,f,_rec} functions.
- (do_print): Use redirect_to_fp().
- (do_printf): Use redirect_to_fp().
- (do_print_rec): New function to just print $0 from field_arr[0]
- directly; will rebuild the record first if necessary.
- * eval.c (nodetypes): Add Node_K_print_rec.
- (interpret): Add Node_K_print_rec case.
- * profile.c (pprint): Add Node_K_print_rec case.
- (pp_print_stmt): If null lnode, print "$0" else print the lnode.
-
- Unrelated:
-
- * regex_internal.h: Add ENABLE_NLS to the condition for using
- gettext so that --disable-nls really disables it.
-
-Sat Feb 23 22:46:00 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (rs1_get_a_record, rsnull_get_a_record, rsre_get_a_record):
- Modify buffer-filling algorithm to always read one or more multiples
- of the blocksize (iop->readsize).
- (grow_iop_buffer): Make sure there's room for the current partially
- read record and one disk block buffer.
-
-Thu Feb 20 22:02:00 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (research): Fix typo in cast of precision value to int.
- * regex.h, regex.c, re_internal.h, re_internal.c, regcomp.c, regexec.c:
- synced to GLIBC source, maintaining K&R portability changes, and bug
- fixes, although losing ability to compile each file separately.
- * Makefile.am (SOURCES): Moved placement of regex source files from here ...
- (EXTRA_DIST): ... to here.
-
-Tue Feb 18 14:17:33 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (research): Cast precision value to int.
- * builtin.c (format_tree): For toofew, cast field width value to int.
- * io.c (rsre_get_a_record): Initialize restart and reend. Add a variable
- to make sure they're set before used at end of function.
- (iopflags2str): Removed decl at top and made not static so that GCC
- stops complaining that it's defined but not used. Bleah.
-
-Mon Feb 17 11:02:34 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * config.guess, config.sub: Updated from prep.
-
-Sun Feb 16 15:47:15 2003 Scott Deifik <scottd@amgen.com>
-
- * awk.h (format_tree, make_str_node): Changed decls to match how
- they are called.
- * builtin.c (format_tree, sub_common): Same.
- * node.c (make_str_node): Same.
-
-Wed Feb 5 14:18:01 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Removed duplicate decl of set_prof_file(). Removed
- undef of const for non-ANSI C; config.h should handle it.
- * msg.c (set_loc): Use srcfile and srcline in regular code to shut up
- stupid SGI compiler.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Tue Feb 4 13:40:41 2003 Martin C. Brown <mc@whoever.com>
-
- * intl/libgnuintl.h: Preprocessor fixes for MacOS X.
- * regex.h: Ditto.
-
-Tue Feb 4 13:39:37 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (builtin_func): New string for use in rationalizing
- function parsing and installation code.
-
-Sun Feb 2 16:00:55 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Cache function body code pointer so that only have to find it the
- first time a function is called. This potential for optimization
- brought to my attention by Stepan Kasal.
-
- * awk.h [funcbody]: New macro.
- * awkgram.y (FUNC_CALL): Set $$->funcbody to NULL.
- * eval.c (func_call): Changed to take top-level Node_func_call as the
- single parameter. Do the lookup and caching.
- (r_tree_eval): Change how func_call() is called in switch.
- * profile.c (pp_func_call): Similar changes.
- (tree_eval): Ditto.
-
-Sun Feb 2 15:32:42 2003 Stepan Kasal <kasal@math.cas.cz>
-
- ADR: More grammar rationalization/repair from Stepan.
-
- * awkgram.y (common_exp, simp_exp): The rule from getline (without
- pipe) has been moved from common_exp to simp_exp.
-
- The redirection of print statements reworked. The idea comes from
- mawk-1.3.3; much thanks to Michael Brennan!
-
- * awkgram.y (IO_OUT, IO_IN): New tokens.
- (APPEND_OP, TWOWAYIO): Swallowed by the above ones.
- (in_print, in_parens): New static variables, to trace whether
- IO_OUT is expected.
- (yylex): Emit the new tokens, update in_parens on '(' and ')'.
- (exp): The print command(s) reworked.
- (oputput_redir): Reworked.
- (print_expression_list): New non-terminal.
- (rexp, rexpression_list opt_rexpression_list): Nuked.
- (exp, simp_exp): ``cmd|getline'' rule changed to
- ``cmd IO_IN getline'' and moved from exp to simp_exp.
-
- Unrelated:
-
- * awkgram.y (variable): Don't return Node_func, issue a fatal
- error instead.
- * eval.c (r_tree_eval, r_get_lhs): Omit special checks for Node_func,
- nodes of this type cannot get into the program tree.
- * profile.c (tree_eval, pp_lhs): Likewise.
-
-Thu Jan 30 17:42:05 2003 Stepan Kasal <kasal@math.cas.cz>
-
- ADR: Applied lots of patches from Stepan.
-
- * array.c (do_delete_loop): Call after_assign for the loop index.
- * field.c (do_split): The third argument to split(), sep, has to be
- evaluated and the result dupnoded before assoc_clear is called,
- similarily as src. And we needn't to evaluate the third argument
- if it's CONSTant regex and the first parameter is null string.
- * awk.h (dupnode): Changed to macro, function renamed to r_dupnode.
- * node.c (dupnode, r_dupnode): Rename.
- * awkgram.y (parms_shadow): Return bool value, ...
- (shadow_funcs): ... which will enable us to end the program if
- lintfunc is fatal.
- (program): Cleanup of the rules defining the ``program'' non-terminal.
- (start, program, rule): No value associated,
- expression_value is now treated similarily as begin_block and end_block.
- (pattern, rule): Bison actions for non-terminal `pattern' now
- add a new rule to the appropriate Node_rule_list, action for
- non-terminal `rule' now only adds the associated code block
- to the rnode of Node_rule_node.
- (io_allowed): Renamed to !begin_or_end_rule.
- (append_pattern): New function, adds new Node_rule_node to a rule_list.
- (mkrangenode): Deleted, this tiny function was called only once.
- (function_body): Non-terminal replaced by `action'.
- (statements, action, statement): `statements' can now be empty;
- both callers had to accomodate to this.
- (statements): Don't call isnoeffect($2->type) if
- $2 happens to be NULL.
-
-Mon Jan 27 14:12:19 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (iop_close): Based on report by Stepan Kasal and because of
- his changes, don't call reset_record() when saving a copy of contents
- of $0.
- * awkgram.y: Improved function parsing error messages for case where
- user uses a builtin name as a function name. Based on error report
- by Stepan Kasal.
- * ext.c (make_builtin): Set FUNC flag for new function. Based on error
- report by Stepan Kasal.
-
-Mon Jan 27 14:06:20 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * field.c (reset_record): No longer call set_record(), the code is
- moved to the function body. Do not set MAYBE_NUM.
- (set_record): Call reset_record() to perform the common tasks.
- The prototype has changed, change awk.h and all callers.
-
-Mon Jan 27 10:50:03 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (NODE): `proc' renamed to `builtin,' to fix a conflict
- on some systems. Replaced on all spots where it was used.
-
-Sun Jan 26 11:52:01 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [NUMSUBPATS]: New macro.
- * builtin.c (do_match): Use it in loop that fills in subpattern info.
- * eval.c (r_tree_eval): For Node_assign, don't call free_temp(),
- as assign_val() contains dupnode(), which would clear the TEMP
- flag. From Stepan Kasal <kasal@math.cas.cz>.
- * config.sub: Updated from prep.
-
-Sun Jan 19 22:34:01 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (do_asorti): Add declaration.
- * awkgram.y (tokentab): Add asorti() function to table.
- * array.c (ASORT_TYPE): New enumerated type for VALUE or INDEX array
- sorting.
- (assoc_sort_inplace): New second arg of type ASORT_TYPE. Additional code
- to rearrange array so rest of merge-sorting works; basically values are
- tossed and index moved into value spot.
- (asort_actual): Renamed from do_asort(). Takes new ASORT_TYPE argument.
- (do_asort): Calls asort_actual(tree, VALUE).
- (do_asorti): Calls asort_actual(tree, INDEX).
-
- * main.c (load_procinfo): Free groupset array when done with it.
-
-Thu Jan 16 18:30:50 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_match): Revised to provide start and length
- indices in array 3rd parameter.
- * config.guess, config.sub: Updated from prep.
-
-Thu Jan 2 11:09:12 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- Updated to bison 1.875.
-
-Tue Dec 31 17:14:45 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Updated things to automake 1.7.2 and autoconf 2.57.
-
-Tue Dec 31 16:54:44 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [IOP_CLOSED]: New flag.
- * io.c (iop_close): Set IOP_CLOSED flag.
- (inrec): Check for IOP_CLOSED; if set return EOF.
- (rs1_get_a_record, rsnull_get_a_record): Check for EOF before
- refilling buffers.
- (rsre_get_a_record): Ditto. Also, set RT before updating pointers in IOP.
- * Makefile.am (efence): New target to compile with Electric Fence.
-
-2002-12-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * awk.h (catchsig): Delete prototype.
- * main.c (catchsig): Make static and remove excess argument.
- (main): Delete unnecessary casts.
- * io.c (rs1_get_a_record, rsnull_get_a_record): Mark parameter
- with ATTRIBUTE_UNUSED.
-
-Mon Dec 23 11:54:07 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex_internal.h, regex_internal.c, regcomp.c, regexec.c, version.c:
- Fixed to compile, once again, under K&R compilers.
- * io.c (grow_iop_buffer): Fix calculation of new size to
- first subtract 2, double, then add 2 back in.
-
-Fri Dec 20 11:48:42 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- get_a_record split into three routines.
-
- * awk.h (IOBUF): Structure reworked for new code.
- * io.c (get_a_record): Now a pointer to different functions.
- (rs1_get_a_record, rsnull_get_a_record, rsre_get_a_record): New functions.
- (iop_alloc, iop_close): Reworked for new structure.
- (do_getline, inrec): Modifiend for new EOF condition.
- (iopflags2str): New routine.
-
-Fri Dec 20 11:05:50 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c, regex_internal.c, regex_internal.h: Changes to allow separate
- compilation of the reg*c files.
- * regcomp.c: Fix bug in using translation tables with [[:upper:]] etc.
- * Makefile.am: Move regex files into sources from EXTRA_DIST. (ADR)
-
-Mon Dec 9 14:20:42 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * main.c (main): When processing option '-f' don't ignore spaces
- if optarg points at the beginning of the current argument
- (like ``gawk -f " " file'').
-
-2002-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * awkgram.y (stopme): Mark parameter with ATTRIBUTE_UNUSED.
- (yyerror): Add ATTRIBUTE_PRINTF_1.
- * builtin.c (do_systime, do_rand): Likewise.
- * field.c (set_field, re_parse_field, def_parse_field,
- posix_def_parse_field, null_parse_field, sc_parse_field,
- fw_parse_field): Likewise.
- * io.c (pidopen, useropen): Likewise.
- * main.c (catchsig): Likewise.
- * profile.c (init_profiling): Likewise.
- * awk.h (err): Add ATTRIBUTE_PRINTF.
- * msg.c (err): Delete redundant prototype. Fix format specifier.
-
-Wed Nov 27 06:04:20 2002 Pat Rankin <rankin@pactechdata.com>
-
- * ext.c [#if !DYNAMIC] (do_ext): Cast string value for error node.
-
-Sun Nov 24 18:23:29 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- From Paul Eggert, with some edits by me.
-
- * builtin.c (do_substr): Consistently use floating point
- values for lint messages, so they should be printed pretty
- much as the user saw them. Check for overflow before
- converting floating point to integer. Do the right thing with
- NaNs.
-
- Check for index out-of-range before checking for length
- out-of-range, to avoid some nasty effects if address
- arithmetic overflows (e.g., indx + length < index).
-
- Allow zero-length substrings when checking for lint if
- do_lint == LINT_INVALID.
-
-Sun Nov 24 18:21:06 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (LINT_ALL, LINT_INVALID): New constants.
- * main.c (main): Allow --lint=invalid which restricts warning to
- things that aren't valid.
- * eval.c (set_LINT): Update setting logic.
-
-Wed Nov 20 13:14:58 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (lintfunc): Improve ifdef for attribute to only
- work for GCC 3.2 and later.
- * io.c (PIPES_SIMULATED): Don't define if on AIX, which
- does define TANDEM in one of its header files. Ugh.
-
-Tue Nov 19 15:33:55 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_substr): Use %lu in warnings instead of %d.
-
-Mon Nov 18 14:42:53 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * config.guess: Synced from ftp.gnu.org.
- * config.sub: Ditto.
-
-Sun Nov 17 21:32:49 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Updated things to automake 1.7.1.
-
-Sun Nov 3 14:33:30 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_get_lhs): For variables, always clear UNINITIALIZED,
- since the variable is about to be assigned to. From Stepan Kasal.
-
-Fri Nov 1 11:19:01 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (lintfunc): Can only supply attributes for a function
- pointer if GCC >= 3. Added ifdefs. Bah, humbug.
-
-2002-10-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * array.c (array_init, concat_exp, assoc_find, do_delete):
- Const-ify.
- * awk.h (redirect, set_record, pp_func, pp_string_fp, format_val,
- parse_escape, make_regexp, research, reisstring, remaybelong):
- Likewise.
- * awkgram.y (dumpintlstr, dumpintlstr2, func_use, dup_parms,
- var_comp, finfo, fcompare, func_use, dumpintlstr, dumpintlstr2):
- Likewise.
- * builtin.c (stdfile, do_fflush, do_index, category_table):
- Likewise.
- * eval.c (push_forloop, push_args, PUSH_BINDING, RESTORE_BINDING,
- cmp_nodes, op_assign, loop_info, fcall, fmt_ok, set_LINT,
- comp_func): Likewise.
- * ext.c (do_ext): Likewise.
- * field.c (set_record): Likewise.
- * io.c (gawk_popen, two_way_open, binmode, redirect, getredirect,
- fatal): Likewise.
- * node.c (values, format_val, make_str_node, parse_escape): Likewise.
- * profile.c (pp_string, pp_match_op, pp_func, pp_string,
- pp_string_fp): Likewise.
- * re.c (make_regexp, research, reisstring, remaybelong): Likewise.
-
-2002-10-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * awk.h (__attribute__, ATTRIBUTE_UNUSED, ATTRIBUTE_NORETURN,
- ATTRIBUTE_PRINTF, ATTRIBUTE_PRINTF_1, __extension__): Define.
- (emalloc, erealloc): Fix format specifier warnings.
- (do_nextfile):Mark with ATTRIBUTE_NORETURN.
- (getredirect): Const-ify.
- (msg, error, warning, r_fatal, lintfunc): Mark with
- ATTRIBUTE_PRINTF_1.
- (r_fatal): Mark with ATTRIBUTE_NORETURN.
- * builtin.c (format_tree): Fix format specifier warning.
- * eval.c (interpret): Likewise.
- * main.c (usage, copyleft, catchsig, nostalgia, version): Mark
- with ATTRIBUTE_NORETURN.
- * profile.c (dump_and_exit): Likewise.
-
-2002-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * array.c (array_init): Use ISDIGIT, not isdigit.
- * awk.h (m_tree_eval, force_number, force_string): Use
- __extension__ in statement expressions.
- * main.c (lintfunc): Fix !__SDTC__ case.
- * regex_internal.c (calc_state_hash): Fix inline declaration.
- * regexec.c (proceed_next_node): Cast assignment to correct type.
-
-2002-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * awk.h (exp_node, Func_ptr): Add prototype arguments.
- * awkgram.y (yystype, token, getfname, nextc, pushback,
- allow_newline, yylex): Likewise.
- * io.c (wait_any): Likewise.
- * profile.c (indent_in, indent_out): Likewise.
- * random.h (random): Likewise.
-
-2002-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * array.c (grow_table): Const-ify.
- * awk.h (RE_TRANSLATE_TYPE): Define.
- (flagtab, casetable): Const-ify.
- (getfname, shadow_funcs, redflags2str): Prototype.
- (flags2str, genflags2str, nodetype2str, redflags2str, set_loc,
- msg, error, warning, r_fatal): Const-ify.
- * awkgram.y (tokentab, snode): Likewise.
- * builtin.c (format_tree, do_strftime,
- localecategory_from_argument): Likewise.
- * eval.c (casetable, nodetypes, nodetype2str, flags2str,
- genflags2str): Likewise.
- * io.c (redflags2str, socketopen): Likewise.
- * main.c (varfile, version_string, lintfunc, optab, copyleft,
- varinit, init_vars): Likewise.
- * msg.c (srcfile, msg, warning, error, set_loc, r_fatal):
- Likewise.
- * profile.c (pp_op_assign, pp_match_op, pp_redir): Likewise.
- * random.c (sccsid): Likewise.
- * version.c, version.in (version_string): Likewise.
-
-Tue Oct 29 10:50:52 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Update version in AC_INIT and AM_INIT_AUTOMAKE
- * fixvers: Make grep for pattern a little smarter.
-
-Mon Oct 28 16:35:39 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (hash): Now a function pointer.
- * array.c (gst_hash_string, scramble): New functions.
- (awk_hash): Renamed from hash.
- (hash): Now a function pointer.
- (array_init): Change hash function based on environment for
- experimentation.
-
-Mon Oct 28 13:21:20 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Applied lots of patches from Stepan Kasal, tweaked as needed
- for current code base.
-
- * node.c (dupnode): When n->stref overfows, flag the node as PERM.
- Same for n->ahname_ref.
- (unref): Remove the check for n->stref == LONG_MAX and
- n->ahname_ref == LONG_MAX.
- * awk.h (make_string): The third argument to make_str_node changed
- from FALSE to 0, it's not Boolean.
- (free_temp): Evaluate the argument only once, so that we
- can call free_temp(tree_eval(n)) for achieving side effects.
- (load_environ, load_procinfo): Changed return type to NODE *.
- * main.c (load_environ): The ENVIRON_node should be created with type
- Node_var_array and lnode set to NULL. Return pointer to the created node
- and create an empty hash even on TANDEM.
- (load_procinfo): Same mods for PROCINFO_node.
- (init_args): ARGV_node should also have lnode set to NULL.
- * eval.c (r_tree_eval): case Node_assign moved just above the other
- assignment cases.
- (op_assign): ++ and -- cases merged with += and -=, respectively.
- (push_args): Evaluate all args, even in cases where more args are
- supplied then required.
- (interpret): In case Node_K_forarray, flag the variable
- num_elems also as volatile, so that it survives longjmp() and
- can be trusted when linting code.
- (r_get_lhs): Case Node_param_list was unreachable (unless
- something breaks really badly), remove it;
- (r_tree_eval): Case Node_var_array removed from the last switch,
- it was caught in the first switch above.
- * profile.c (tree_eval): Again, case Node_var_array was caught above.
- * awkgram.y (variable): Code simplified, making use of the above
- changes.
- * field.c (sc_parse_field): IGNORECASE only applies to regex based
- field-splitting, so remove code that pays attention to it.
- (do_split): Don't use parse_field if RS_is_null.
- (set_FS): Beware of FS == "\\" even if RS_is_null.
-
- Code changes to make things work better:
- * field.c (set_FS): Don't use cmp_nodes() to compare old and new
- value of FS, that uses IGNORECASE, which is a bad idea. Improve
- logic for choosing sc_parse_field. Ensure that when RS_is_null
- but using a single character, that we do pay attention to
- case when doing regex splitting.
- * io.c (set_RS): Don't use cmp_nodes() to compare old and new
- value of RS, that uses IGNORECASE, which is a bad idea.
-
-Mon Oct 28 09:43:14 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * recomp.c (parse_expression): Change return statement into
- two so it'll compile for SGI cc.
-
- * awk.h (STR, CUR): Changed to STRCUR and NUMCUR respectively,
- to avoid conflict with STR on some System V systems. Changed
- in all source files.
-
-Thu Oct 24 16:14:34 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (AVG_CHAIN_MAX): Now a variable, to allow easy experimentation.
- (array_init): Pulls a new value from env var AVG_CHAIN_MAX if it
- exists and sets the variable.
- * awk.h: Add declaration for array_init().
- * main.c (main): Call array_init().
-
-Tue Oct 22 11:23:56 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * bisonfix.sed: Updated for current bison. Death to alloca!
-
-2002-10-21 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * builtin.c (tolower, toupper): Add casts to char* to fix some
- compiler warnings.
- * eval.c (cmp_nodes): Ditto.
- * regcomp.c (peek_token_bracket): Skip the byte already read.
-
-Wed Oct 16 15:02:09 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (set_RS): Make sure to always call set_FS().
-
-2002-10-11 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regcomp.c (re_compile_fastmap_iter): Remove the handling
- OP_CONTEXT_NODE.
- (regfree): Likewise.
- (create_initial_state): Likewise.
- (analyze): Remove the substitutions which became useless.
- (calc_first): Likewise.
- (calc_epsdest): Use edests of OP_BACK_REF in case that it has
- epsilon destination.
- (duplicate_node_closure): New function.
- (duplicate_node): Remove the handling OP_CONTEXT_NODE.
- (calc_inveclosure): Likewise.
- (calc_eclosure): Likewise.
- (calc_eclosure_iter): Invoke duplicate_node_closure instead of
- direct invocation of duplicate_node.
- (parse): Don't use comma operator in the return to avoid compiler
- warning.
- (parse_reg_exp): Likewise.
- (parse_branch): Likewise.
- (parse_expression): Likewise.
- (parse_sub_exp): Likewise.
- (parse_dup_op): Likewise.
- * regex_internal.c (re_dfa_add_node): Remove the substitutions
- which became useless.
- (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
- (create_cd_newstate): Likewise.
- * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
- (re_token_t): Likewise.
- (re_dfa_t): Likewise.
- (re_node_set_remove): New macro.
- * regexec.c (check_matching): Remove the handling
- OP_CONTEXT_NODE.
- (check_halt_node_context): Likewise.
- (proceed_next_node): Likewise.
- (pop_fail_stack): Fix the memory leak.
- (set_regs): Likewise.
- (free_fail_stack_return): New function.
- (sift_states_backward): Fix the memory leak. Remove the handling
- OP_CONTEXT_NODE.
- (update_cur_sifted_state): Append some if clause to avoid redundant
- call.
- (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
- back reference.
- (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
- (check_subexp_limits): Likewise.
- (search_subexp): Likewise.
- (sift_states_bkref): Likewise.
- (transit_state_mb): Likewise.
- (transit_state_bkref_loop): Likewise.
- (transit_state_bkref_loop): Likewise.
- (group_nodes_into_DFAstates): Likewise.
- (check_node_accept): Likewise.
- (sift_ctx_init): Add initializing.
-
-Tue Oct 15 14:18:53 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_IGNORECASE): Call set_RS() instead of
- set_FS_if_not_FIELDWIDTHS(). The former calls the latter
- for us, and also makes IGNORECASE affect RS like it's supposed to.
- * field.c (FS_re_yes_case, FS_re_no_case): New variables.
- (set_FS): Smarten up routine to not recompile FS_regexp if all
- that's changed is IGNORECASE or if switching back to FS from
- FIELDWIDTHS. Significant speed-up for cases where IGNORECASE
- is assigned to for every record.
- * io.c (RS_re_yes_case, RS_re_no_case): New variables.
- (set_RS): Similar changes as to set_FS(). In particular,
- IGNORECASE changing now affects record splitting too.
- * re.c (refree): Set rp->pat.tranaslate to NULL. It comes
- from casetable and shouldn't be freed. (Strictly necessary
- only for old regex, but a good idea anyway).
- Also, call regfree(& rp->pat) instead of manually free()ing
- things, since there's dynamically allocated stuff hiding in
- the buffer. Avoids a memory leak.
-
-Mon Oct 14 12:02:39 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Major space reduction in array management. Overhead reduced
- to two NODE's per element from three.
-
- * awk.h (ahash): Union is gone.
- (hash.ref): New union member.
- (ahnext): New definition into hash union.
- (ahvalue): New definition into hash union.
- (ahname_str): New member, points into hash union.
- (ahname_len): New member, points into hash union.
- (ahname_ref): New member, points into hash union.
- * array.c: Replaces uses of ahname member with string and
- length. Set the reference count correctly to 1 on new nodes.
- * eval.c (interpret): Case for Node_K_arrayfor. dupnode() the
- array indices, and set loop variable to new value made via
- make_string().
- * node.c (unref, dupnode): Node_ahash nodes are now also
- reference counted, a la strings. Similar code is used to
- increment/decrement the counts, and/or copy nodes as
- needed.
-
- Unrelated:
- * awk.h (forsub): Removed. Not used.
-
-Sun Oct 13 16:58:27 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * profile.c (pprint): #undef the temporary defines at the end
- of the case.
- * eval.c (interpret): Likewise.
- (assign_val): We can unref() before doing dupnode().
- Also, move the check for NF < 0 from here ...
- * field.c (set_NF): ... to here.
- * main.c (varinit): No need to call set_NF().
- * awkgram.y (statements): Don't be so generous when concatenating
- `statements' with a `statement'.
-
-
-2002-10-13 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regcomp.c: Synced with development sources.
- * regex_internal.c: Synced with development sources.
- * regex_internal.h: Synced with development sources.
- * regexec.c: Synced with development sources.
-
-Sun Oct 13 21:35:35 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (NODE): Reflags is now unsigned long for:
- (exec_count): Defined to be sub.nodep.reflags. Using `number'
- broke pgawk.
- * profile.c (Node_K_delete_loop): Print out as a for loop
- with a comment that it's internally the same as `delete array'.
- * eval.c (Node_K_delete_loop): Increment the exec_count. Ooops.
- * configure.in (AM_GNU_GETTEXT_VERSION): New macro call.
- * custom.h: Updated description of the file at the top.
-
-Thu Oct 10 16:39:51 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (vname, exec_count): Now macros into different
- parts of the NODE structure that can be safely used for them.
- Saves 16 bytes per NODE.
- * eval.c: Changed use of `vname' to `varname' to avoid new
- macro.
- * main.c (lintfunc): Made ifdefed decls match awk.h.
- * eval.c (comp_func): Use memcmp instead of strcmp.
- * configure.in (AC_CONFIG_HEADER): Physically append custom.h
- to config.h to avoid subdir compiliation problems.
-
-Sun Oct 6 17:36:15 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Updated to automake 1.7 and bison 1.50.
-
- * INSTALL: Replaced with current version from automake 1.7.
- * config.guess: Replaced with current version from automake 1.7.
- * config.sub: Replaced with current version from automake 1.7.
- * depcomp: Replaced with current version from automake 1.7.
- * doc/texinfo.tex: Replaced with current version from automake 1.7.
- * install-sh: Replaced with current version from automake 1.7.
- * missing: Replaced with current version from automake 1.7.
- * mkinstalldirs: Replaced with current version from automake 1.7.
- * ylwrap: Replaced with current version from automake 1.7.
-
- * configure.in (DYNAMIC): Updated AC_DEFINE(DYNAMIC) to
- three-argument form for autoheader.
- * acinclude.m4: Removed includes of jm-mktime.m4 and
- largefile.m4, which are now standard parts of Autoconf.
-
- * Makefile.in: Regenerated.
- * aclocal.m4: Regenerated.
- * awkgram.c: Regenerated.
- * awklib/Makefile.in: Regenerated.
+ * configure.ac: Update version to 4.0.0.
* configure: Regenerated.
- * doc/Makefile.in: Regenerated.
- * test/Makefile.in: Regenerated.
-
-Sun Sep 29 16:47:49 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h (__WIN32__): Added from gnuwin32 project, via
- Stepan Kasal.
-
- * awkgram.y: For tawk compatibility, added `delete(array)'.
- To remain undocumented, since it's WAY non-standard.
-
-Sun Sep 22 22:23:50 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (re_cnt): Removed, not needed since no dfa code.
- * awkgram.y (regexp, a_regexp): Removed use of re_cnt.
- * re.c (re_update): Ditto.
-
-Thu Sep 19 10:55:37 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (binmode): Create function if defined(WIN32) also.
-
- Updated to gettext 0.11.5, autoconf 2.54 and automake 1.6.3.
-
- * aclocal.m4: Regenerated.
- * m4/codeset.m4: Updated.
- * m4/gettext.m4: Updated.
- * m4/glibc21.m4: Updated.
- * m4/iconv.m4: Updated.
- * m4/lcmessage.m4: Updated.
- * m4/lib-ld.m4: Updated.
- * m4/lib-link.m4: Updated.
- * m4/lib-prefix.m4: Updated.
- * m4/progtest.m4: Updated.
- * po/Makefile.in.in: Updated.
- * po/Rules-quot: Updated.
- * po/boldquot.sed: Updated.
- * po/en@boldquot.header: Updated.
- * po/en@quot.header: Updated.
- * po/insert-header.sin: Updated.
- * po/quot.sed: Updated.
- * po/remove-potcdate.sin: Updated.
-
-Tue Sep 17 23:46:01 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Moved override of INSTALL to just after
- AC_INIT so that it takes effect. Necessary for Autoconf 2.5x.
-
-Mon Sep 16 16:40:57 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * awkgram.y (want_assign): Removed.
- (SLASH_BEFORE_EQUAL, ASSIGN): New terminals; ``/='' is now
- formed from these two.
- (a_slash): New non-terminal, representing either '/' or
- SLASH_BEFORE_EQUAL.
- (assign_operator): New non-terminal, replaces ASSIGNOP.
- (REGEXP): yylex now eats the terminating '/' before
- returning REGEXP token.
- (exp): The check for C-like comments moved from here
- (regexp): ... to here.
- (common_exp): New non-terminal; contains common parts of exp
- and rexp. (a_relop, relop_or_less): New non-terminals.
- (rexp): Some rules updated to be analogous to exp.
- (output_redir): Can contain only common_exp, not exp in general.
-
-Mon Sep 16 22:51:51 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (two_way_open): Move label use_pipes outsidef of ifdef,
- just in case.
-
-Thu Sep 12 15:11:28 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (getfname): Return NULL if not found, remove
- fatal error. Could be an extension function.
- (dump_funcs): Walk symbol table counting functions before
- mallocing table, since there could be extension functions,
- func_count could be too small.
- * profile.c (pp_builtin): Handle NULL return from getfname().
- Print it as "extension_function()" if so.
-
-Tue Sep 10 17:33:48 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Minor code simplification.
-
- * awk.h (in_array): Change return type to NODE*.
- (assoc_exists): Remove declaration.
- * array.c (in_array): Change return type to NODE *.
- Return value is pointer to element value or NULL.
- (assoc_exists): Removed function.
- * eval.c (r_tree_eval): Case Node_in_array, change value
- to test return of in_array() against NULL.
- * io.c (pty_vs_pipes): Change test to make a tmp_string()
- of the index and call in_array(). Add free_temp() of
- subscript and free() of full_index (oops).
-
-2002-09-10 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * posix/regcomp.c: Wrap #include wchar.h and wctype.h in #if.
- (build_range_exp): Add castings to strlen invocations.
- (build_collating_symbol): Restore the type of characters from "char"
- to "unsigned char", and supplement castings.
- (build_collating_symbol): Likewise.
- (build_equiv_class): Likewise.
- (build_charclass): Likewise.
- (seek_collating_symbol_entry): Likewise.
- (parse_bracket_exp): Likewise.
- (build_word_op): Supplement a casting.
- * posix/regex_internal.c: Wrap #include wchar.h and wctype.h in #if.
- (re_string_allocate): Fix castings.
- (re_string_construct): Likewise.
- (re_string_construct_common): Likewise.
- (re_string_realloc_buffers): Likewise.
- (build_wcs_buffer): Likewise.
- (build_wcs_upper_buffer): Likewise.
- (re_string_skip_chars): Likewise.
- (re_string_reconstruct): Likewise.
- * posix/regex_internal.h: Restore the type of characters in
- re_string_t and bracket_elem_t from "char" to "unsigned char".
- (re_string_elem_size_at): Fix castings.
- * posix/regexec.c: Wrap #include wchar.h and wctype.h in #if.
- (transit_state_bkref_loop): Restore the type of characters from
- "char" to "unsigned char", and append a cast to "char*" pointer in
- array subscript.
- (check_node_accept_bytes): Likewise.
- (find_collation_sequence_value): Likewise.
-
-Thu Sep 5 13:15:09 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (remaybelong): New routine.
- (reisstring): Simplified the code a bit.
- * awk.h (remaybelong): Declaration added.
- * io.c (get_a_record): Change fourth grungy special case to
- use remaybelong() instead of strchr() on last character.
-
-Wed Sep 4 13:20:26 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (do_input): Recode guts of main loop to be easier
- to trace with a debugger.
- (get_a_record): Fourth grungy special case for RE-based
- record splitting added. See explanatory comments there
- and test/rebuf.awk.
-
-2002-09-03 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * posix/regcomp.c (regcomp): Append "__restrict" modifier to avoid
- warnings of some compilers.
- (build_collating_symbol): Change the type of characters from
- "unsigned char" to "char", and append a cast to "char*" pointer in
- array subscript.
- (build_collating_symbol): Likewise.
- (build_equiv_class): Likewise.
- (build_charclass): Likewise.
- (re_compile_pattern): Remove incorrect cast.
- (re_compile_fastmap_iter): Change the type of characters from
- "unsigned char" to "char", and append a cast to "char*" pointer
- in array subscript.
- (parse_bracket_exp): Likewise.
- * posix/regex_internal.c (re_string_construct_common): Likewise.
- (re_string_allocate): Likewise.
- (re_string_construct): Likewise.
- (re_string_realloc_buffers): Likewise.
- (build_wcs_buffer): Likewise.
- (re_string_reconstruct): Likewise.
- * posix/regex_internal.h: Change the type of characters in
- re_string_t and bracket_elem_t from "unsigned char" to "char".
- * posix/regexec.c (regexec): Append "__restrict" modifier to avoid
- warnings of some compilers.
- (transit_state_bkref_loop): Change the type of characters from
- "unsigned char" to "char", and append a cast to "char*" pointer in
- array subscript.
- (check_node_accept_bytes): Likewise.
- (find_collation_sequence_value): Likewise.
-
-Wed Aug 21 15:40:36 2002 Corinna Vinschen <vinschen@redhat.com>
-
- * configure.in: Define --without-libintl-prefix and
- --without-libiconv-prefix for Cygwin by default.
- * Makefile.am: Call fixvers from $(srcdir).
- * awk.h: Don't define O_BINARY on Cygwin.
-
-Wed Aug 21 15:31:57 2002 Andreas Buening <andreas.buening@nexgo.de>
-
- * configure.in (AC_OBJEXT, AC_EXEEXT): Added. Removed OS/2 goo.
- * Makefile.am (check-local): Add $(EXEEXT) suffixes, remove OS/2 goo.
- * regcomp.c, regex_internal.c, regexec.c: Conditionalize include of
- <wchar.h> and <wctype.h> on RE_ENABLE_I18N.
-
-Wed Aug 21 14:43:57 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gettext.h (ENABLE_NLS): Add include of locale.h so that things
- compile even without optimization. Sheesh.
- * io.c (two_way_open, pty_vs_pipes): Conditionalize pty code on
- HAVE_TERMIOS_H.
-
-Thu Aug 8 22:16:10 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (main): Force LC_NUMERIC locale to "C", esp. for
- M$ systems. Ugh.
-
-Wed Aug 7 13:42:01 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Improve test for newlines at beginning of
- record but with nothing following it. See test/nulrsend.
-
-Mon Aug 5 10:12:39 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Add option to use ptys instead of pipes for |&.
- Basic plumbing originally from Paolo Bonzini <bonzini@gnu.org>.
-
- * awk.h (RED_PTY): New flag.
- (assoc_exists): Add declaration.
- * array.c (in_array): Use FALSE not zero for return value.
- (assoc_exists): New routine to find and return value for an index
- in an array.
- * configure.in: Test for termios.h and stropts.h, and grantpt function.
- * io.c: Include termios.h and stropts.h if available.
- (redflags2str): Add RED_PTY to table.
- (redirect): Add RED_PTY to flags turned off when searching.
- (close_redir): Close write channel for two-way pipes
- that use ptys by sending an EOF.
- (two_way_open): If pty_vs_pipe(), use pty's to open two-way pipes as
- they are line-buffered by default --> alleviates deadlock problems.
- If fails, fall back to using pipes.
- (pty_vs_pipe): New function.
- * main.c (arg_assign): Clean up English in some of the error messages.
-
-Sun Aug 4 00:37:38 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * re.c (make_regexp): Don't pass the error message returned by
- re_compile_pattern() to gettext(); it's already gettextized.
- (make_regexp): Minor reformat of code.
-
-Wed Jul 31 23:50:31 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Removed dfa code from gawk since not really needed with new regex.
-
- * Makefile.am: Removed dfa.h and dfa.c.
- * awk.h (struct Regexp): Removed `dfareg' and `dfa' members.
- (make_regexp): Last parameter in function went away, changed decl.
- (avoid_dfa): Removed declaration.
- * awkgram.y: Fixed call to make_regexp().
- * eval.c (match_op): Simplified: removed call to avoid_dfa() and
- `kludge_need_start' variable. Instead, pass FALSE as last parameter
- of research().
- * field.c (set_FS): Fixed call to make_regexp().
- * io.c (get_a_record, set_RS): Fixed calls to make_regexp().
- * re.c (make_regexp): Removed last paramter (`dfa') from function.
- Simplified the code.
- (research): Simplified the code, removed calls to dfa stuff.
- (dfaerror): Removed function.
- (re_update): Fixed call to make_regexp().
- (avoid_dfa): Removed function.
-
-Thu Jul 25 21:55:45 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * regcomp.c, regex_internal.c, regex_internal.h, regexec.c: Bug
- fixes from Isamu Hasegawa <isamu@yamato.ibm.com> and Stepan Kasal
- <kasal@math.cas.cz> applied.
-
-Sat Jul 6 23:28:37 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yyerror): Change text of unexpected newline message to
- include end of string.
-
-Mon Jun 17 17:58:55 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (do_split): Per Michal Jaegermann, move free_temp(fs)
- above label `out'.
-
-Tue Jun 11 23:26:09 2002 Paul Eggert <eggert@twinsun.com>
-
- Update to autoconf 2.53 and automake 1.6.1.
-
- * acconfig.h: Removed.
- * m4/isc-posix.m4: Removed.
- * m4/jm-mktime.m4: Removed.
- * m4/largefile.m4: Removed.
- * m4/ssize_t.m4: Removed.
- * ansi2knr.c: Updated.
- * depcomp: Updated.
- * install-sh: Updated.
- * missing: Updated.
- * mkinstalldirs: Updated.
- * ylwrap: Updated.
-
- * configure.in: Improved quoting.
- * acinclude.m4: Use `m4_sinclude', not antiquated `sinclude'.
-
-Tue Jun 11 23:08:40 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Add `getgrent' to list of functions checked
- so that awklib/grcat is compiled correctly.
-
-Tue Jun 11 22:18:42 2002 Stepan Kasal <kasal@math.cas.cz>
-
- Improve argument parsing and -v assignment.
-
- * awk.h (struct src): Add additional enum values.
- (arg_assign): Return type and arg list changes.
- * io.c (nextfile): Add extra arg in call to `arg_assign'.
- * main.c (pre_assign): Nuked.
- (allocfiles): New variable.
- (srcfiles_add, preassigns_add): New macros.
- (main): Logic cleaned up.
- (add_src): New function.
-
- Use `size_t' for optimal_bufsize function.
-
- * awkgram.y (yylex): `len' is now size_t.
- * pc/gawkmisc.pc (optimal_bufsize): Change return type to size_t.
- * posix/gawkmisc.c (optimal_bufsize): Change return type to size_t.
- * unsupported/atari/gawkmisc.atr (optimal_bufsize): Change return type
- to size_t.
- * unsupported/tandem/tmisc.c (optimal_bufsize): Change return type to size_t.
- * vms/gawkmisc.vms (optimal_bufsize): Change return type to size_t.
- * README_d/README.hpux: New file.
-
-Fri May 24 12:23:01 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (init_profiling): Remove default initialization
- of `prof_fp' to stderr. Per Stepan Kasal <kasal@math.cas.cz>.
-
-Wed May 15 15:39:17 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Work through builtin operations to make sure that
- anything that might have side effects gets dealt with.
-
- * array.c (do_delete): Evaluate subscript first before
- checking if something is or isn't an array.
- * builtin.c (sub_common): Evaluate replacement text, and
- free it if no match of regex in source text.
-
-Wed May 15 15:30:34 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Switch to new version of regex from IBM Japan.
-
- * regcomp.c: New file.
- * regex.c: Replaced with new version.
- * regex.h: Replaced with new version.
- * regex_internal.c: New file.
- * regex_internal.h: New file.
- * regexec.c: New file.
- * Makefile.am (EXTRA_SOURCES): New files added.
-
-Tue May 14 17:04:05 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (<locale.h>): Move check and include into gettext.h.
- * gettext.h (<locale.h>): Add check and include per patch from
- Bruno Haible.
-
- * field.c (do_split): When checking for split of null string,
- evaluate seperator if it's not FS, since could have side effects.
- At end, free_temp(fs), not free_temp(sep).
- Both of these thanks to Stepan Kasal <kasal@math.cas.cz>.
-
-Mon May 13 00:41:31 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h (ultrix): Add define GETGROUPS_NOT_STANDARD.
- * main.c (init_groupset): For GETGROUPS_NOT_STANDARD, use old way
- to set `ngroups'.
-
-2002-05-10 Andreas Schwab <schwab@suse.de>
-
- * dfa.c (parse_bracket_exp_mb): Fix warning.
-
-Thu May 9 22:28:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (sub_common): Fix logic for match of null strings to
- get correct semantics. See test/gsubtst2.*.
- * field.c (do_split): Minor code cleanup; the third arg to split()
- is set to be FS by the grammar, so don't need to check it for NULL.
- Thanks to Stepan Kasal <kasal@math.cas.cz>.
- * awk.h (locale.h): Move include before that of "gettext.h" for systems
- that define functions that gettext.h would use when NLS is disabled.
- Per bug report from Ayamura Kikuchi <ayamura@ayamura.org>.
-
-Tue May 7 17:31:01 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Miscellanious patches courtesy of Stepan Kasal <kasal@math.cas.cz>.
-
- * field.c, main.c: Tidy up some comments.
- * field.c (set_FIELDWIDTHS): Init fw_alloc to 4 so it isn't
- immediately realloced.
- * main.c (load_procinfo): Check value of FS/FIELDWIDTHS for
- value of PROCINFO["FS"].
- * awk.h (set_FS_if_not_FIELDWIDTHS): Removed decl.
- * field.c (set_FS_if_not_FIELDWIDTHS): Removed function.
- * eval.c (set_IGNORECASE): Use inline code checking `using_fieldwidths()'.
- * io.c (set_IGNORECASE): Ditto.
-
-Sun May 5 14:28:34 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Fix a memory leak in array for loops if the body contains a
- `next' or `nextfile' statement. The changes maintain a stack
- of active for loops that is pushed and popped for each loop,
- and popped entirely for `next', `nextfile', etc.
-
- * eval.c (forloops_active, pop_forloop, pop_all_forloops, push_forloop):
- new functions.
- (interpret): Case Node_K_arrayfor, call push and pop functions.
- Case Node_rule_list: Pop loops and pop fcalls after longjmp.
- Cases Node_K_next, Node_K_nextfile, Node_K_break and
- Node_K_continue, removed check before longjmp.
- Case Node_K_exit: Add loop check.
- (loop_stack, nloops, nloops_active): New variables that implement
- the stack.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Wed May 1 16:07:49 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * getopt.c: Installed latest version from glibc.
-
-Sun Apr 28 17:19:07 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * fixvers: Changed patterns to allow test versions of the
- form `gawk-3.1.1a'.
- * patchlev.h: Patchlevel is now a string constant.
- * main.c (version): Print patchlevel using %s, not %d.
- * Makefile.am: Rework DEFPATH stuff and datadir stuff yet again.
-
- * config.sub: Updated with current version from ftp.gnu.org.
- * config.guess: Ditto.
-
- Upgrade to gettext-0.11.2:
-
- * ABOUT-NLS: Replaced with version from gettext 0.11.2.
- * config.rpath: Replaced with version from gettext 0.11.2.
- * intl/*: Replaced with version from gettext 0.11.2.
- * po/Makefile.in.in: Replaced with version from gettext 0.11.2.
- * po/Makevars.template: Replaced with version from gettext 0.11.2.
- * po/Rules-quot: Replaced with version from gettext 0.11.2.
- * po/boldquot.sed: Replaced with version from gettext 0.11.2.
- * po/en@boldquot.header: Replaced with version from gettext 0.11.2.
- * po/en@quot.header: Replaced with version from gettext 0.11.2.
- * po/insert-header.sin: Replaced with version from gettext 0.11.2.
- * po/quot.sed: Replaced with version from gettext 0.11.2.
- * po/remove-potcdate.sin: Replaced with version from gettext 0.11.2.
- * m4/codeset.m4: Replaced with version from gettext 0.11.2.
- * m4/gettext.m4: Replaced with version from gettext 0.11.2.
- * m4/glibc21.m4: Replaced with version from gettext 0.11.2.
- * m4/iconv.m4: Replaced with version from gettext 0.11.2.
- * m4/isc-posix.m4: Replaced with version from gettext 0.11.2.
- * m4/lcmessage.m4: Replaced with version from gettext 0.11.2.
- * m4/lib-ld.m4: Replaced with version from gettext 0.11.2.
- * m4/lib-link.m4: Replaced with version from gettext 0.11.2.
- * m4/lib-prefix.m4: Replaced with version from gettext 0.11.2.
- * m4/progtest.m4: Replaced with version from gettext 0.11.2.
-
-Wed Apr 17 15:09:45 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.c (PREFIX): Change test for token concatenation ability
- to `#ifdef HAVE_STRINGIZE'. If a cpp has one, it ought to have
- the other.
-
-Tue Apr 16 12:26:06 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (tree_eval): Make unary minus case smarter,
- use is_scalar test and if false parenthesize expression.
- Add Node_TEXTDOMAIN case.
- (pp_lhs, is_scalar, prec_level): Add Node_TEXTDOMAIN cases.
-
-Thu Apr 11 21:28:33 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (do_adump): Spelling fix in output message.
- * builtin.c: Ditto, in multiple routines.
- (do_toupper, do_tolower): Add cast to size_t in assigment to mbclen
- for some compilers.
- * re.c (research): Fix way returning is done to silence some
- compiler diagnostics.
-
-Wed Apr 10 19:30:51 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (datadir): Set directly to have `/awk'.
- (DEFPATH): Go back to using $(datadir) for path.
-
-Tue Apr 9 17:34:09 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Upgraded to gettext 0.11.1.
-
- * Makefile.am (LDADD): Use @LIBINTL@ instead of @INTLLIBS@.
- * ABOUT-NLS: Version from 0.11.1.
- * config.rpath: Version from 0.11.1.
- * aclocal.m4: Regenerated based on new files.
- * intl/*: Replaced with version from 0.11.1.
- * m4/ChangeLog: New file.
- * m4/codeset.m4: New file.
- * m4/gettext.m4: Version from 0.11.1.
- * po/ChangeLog: New file.
- * po/Makefile.in.in: Version from 0.11.1.
- * po/remove-potcdate.sin: New file.
-
-Mon Apr 8 22:22:58 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (libexecdir): Set directly to have `/awk'.
- (DEFPATH): Use $(pkgdatadir) for path.
- (install-exec-hook): Add version link for pgawk.
- (uninstall-links): Remove pgawk version link.
-
-Wed Mar 20 13:44:21 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c (__alignof__): Definition for non-GCC compilers.
-
-Sun Mar 17 17:41:55 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (do_pathopen): Malloc buffers to hold constructed
- filenames: No Arbitrary Limits! Thanks to keoki@techie.com
- for the bug report.
-
-Sun Mar 10 16:59:06 2002 Scott Deifik <scottd@amgen.com>
-
- * awk.h (LOCALEDIR): Provide a definition in case not using
- i18n stuff.
-
-Wed Mar 6 18:14:44 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (usage): Add some explanatory text and examples at end.
-
-Sun Mar 3 16:42:50 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * getopt.h, getopt.c, getopt1.c: Update to current version
- from glibc CVS.
-
-Fri Feb 22 15:53:38 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * dfa.c (fetch_wc): Fix type from wchar_t to wint_t.
- (parse_bracket_exp_mb): Likewise.
- * regex.c (extract_number): Retrieve the sign information from
- byte-code in case of AIX.
-
-Thu Feb 21 16:44:24 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (resetup): Moved setting re_max_failures into regex.c.
- * regex.c (re_max_failures): Set to really big if REGEX_MALLOC
- defined. Do this in both places that define re_max_failures.
-
-Thu Feb 21 19:02:22 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * builtin.c (sub_common): Avoid index_multibyte_buffer invocation
- in single byte character environments.
-
-Thu Feb 21 10:08:56 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * dfa.c (parse_bracket_exp_mb): For ':', use wctype_t in MALLOC,
- not wchar_t.
-
-Thu Feb 21 09:52:16 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Upgraded to automake 1.5 and gettext-0.11.
- Also bug fix to multibyte code.
-
- * ABOUT-NLS: Upgraded.
- * config.guess, config.sub, config.rpath, gettext.h, ylwrap: New files.
- * Makefile.am: Added above to appropriate places.
- * awk.h: Replace libintl.h and macros with include of gettext.h.
- (emalloc, erealloc): Add num bytes to error message, put string inside _().
- (index_multibyte_buffer): Removed decl.
- * awklib/Makefile.am: Use $(EXEEXT) for grcat and pwcat targets.
- * builtin.c (index_multibyte_buffer): Made static to this file.
- (sub_common): Add checks that replacement string is length > 0 so
- that we don't try to malloc(0): this fails on some systems.
- * configure.in (AM_GNU_GETTEXT): Update macro for gettext 0.11.
- (ALL_LINGUAS): Removed.
- * m4/codeset.m4: New file.
- * m4/gettext.m4: Updated.
- * m4/glibc21.m4: New file.
- * m4/iconv.m4: New file.
- * m4/isc-posix.m4: New file.
- * m4/lcmessage.m4: Updated.
- * m4/lib-ld.m4: New file.
- * m4/lib-link.m4: New file.
- * m4/lib-prefix.m4: New file.
- * m4/progtest.m4: Updated.
- * intl/*: Replaced with version from gettext 0.11.
- * po/*: Revised for gettext 0.11.
-
-Mon Feb 18 14:42:39 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (nondec2awknum): Change assert to runtime check
- in case user passed in bad data.
-
-2002-02-17 Paul Eggert <eggert@twinsun.com>
-
- * re.c (resetup): Try to avoid silly limitation of regex.c by
- setting re_max_failures to the largest reasonable value.
-
-Sun Feb 17 14:57:43 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (research): If re_search() returns -2, the
- match failed since regex couldn't allocate enough memory
- for what it needed. Fail with a fatal message instead.
- This is a workaround, not a fix, but I don't mess with
- regex.[ch].
-
-Fri Feb 8 16:01:11 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (LEX_FOR): Fix case of array loop with body of single
- delete statement to actually check the right things to make the
- optimization.
- * profile.c (tree_eval): Add case for Node_K_delete_loop.
- (prec_level): Ditto.
-
-Mon Feb 4 10:38:00 2002 Bruno Haible <bruno@clisp.org>
-
- * awk.h (dcngettext): New macro.
- (do_dcngettext): New declaration.
- * awkgram.y (tokentab): Add dcngettext.
- (snode): Add a warning for incorrect use of dcngettext.
- (dumpintlstr): fflush at the end, not in the middle.
- (dumpintlstr2): New function.
- * builtin.c (localecategory_from_argument): New function, extracted
- from do_dcgettext.
- (do_dcgettext): Call it.
- (do_dcngettext): New function.
-
-Sun Feb 3 17:56:20 2002 Bruno Haible <bruno@clisp.org>
-
- * builtin.c (do_bindtextdomain): Don't free the same variable twice.
- * main.c (main): Call setlocale for LC_MESSAGE, to make dcgettext
- function work on glibc systems.
-
-Wed Jan 23 15:03:36 2002 Andreas Buening <andreas.buening@nexgo.de>
-
- * configure.in (PATH_SEPARATOR): Code added for OS/2.
- Makefile.am (PATH_SEPARATOR): Added.
- (DEFPATH): Make use of PATH_SEPARATOR.
-
-Wed Jan 23 14:46:04 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yylex): Add test for lasttok != '$' when looking
- at _"...". See comments in code.
-
-Wed Aug 15 07:43:10 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c : Implements the codes for exactn_bin to work correctly
- in multibyte environments, in case of invalid multibyte sequence.
-
-Wed Aug 15 07:36:56 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c : Implements the codes for charset/charset_not to
- work in multibyte environments.
-
-Wed Aug 15 05:04:34 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c : Add some comments.
-
-Wed Aug 15 05:04:15 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c (count_mbs_length): New function, check the mutibyte
- strings and count how many wchar_t the substring occupy.
- (CHAR_T): New macro, character type depending on
- environments(singlebyte/multibyte).
- (UCHAR_T): New macro, unsigned character type.
- (COMPILED_BUFFER_VAR): New macro, the buffer containing
- the compiled buffer.
- Adapt singlebyte/multibyte environments with CHAR_T, UCHAR_T,
- and COMPILED_BUFFER_VAR.
-
-Mon Jun 25 09:00:41 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c : Reorganize code to build code twice. byte_* are
- for single byte, wcs_* are for multibyte character sets.
- Chose functions according to current locale dynamically.
- * regex.c (convert_mbs_to_wcs): New function, convert multibyte
- strings to wide character strings for multibyte environments.
-
-Fri Jun 22 05:43:50 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * regex.c (MBS_SUPPORT): New macro, defined if the environment
- can handle multibyte characters.
- (OFFSET_ADDRESS_SIZE): Offset address size in the
- compiled buffer.
- Rewrite offset addresses with OFFSET_ADDRESS_SIZE.
-
-Thu Apr 26 08:03:17 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * builtin.c (index_multibyte_buffer): Inspect the buffer and write
- the index.
- (sub_common): In multibyte environment, skip multibyte characters
- when we check special characters.
- * awk.h (index_multibyte_buffer): Add prototype.
- * eval.c (cmp_nodes): In multibyte environment, compare per character.
- * field.c (re_parse_field): In multibyte environment, avoid to
- call research() on invalid boundary.
- (sc_parse_field): In multibyte environment, avoid to compare on
- invalid boundary.
- (null_parse_field): In multibyte environment, split per
- character, not per byte.
- * io.c (get_a_record): In multibyte environment, avoid to compare
- on invalid boundary.
-
-Wed Apr 25 08:29:47 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * awk.h (strncasecmpmbs): Add prototype.
- * builtin.c (strncasecmpmbs): New function like strncasecmp but for
- multibyte strings.
- (do_index): In multibyte environment, compare per character.
- * builtin.c (do_tolower): In multibyte environment, user towlower
- instead of TOLOWER.
- (do_toupper): In multibyte environment, user towupper instead
- of TOUPPER.
-
-Tue Apr 24 10:38:06 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- In multibyte environments, handle multibyte characters as single
- characters in bracket expressions.
-
- * dfa.h (mb_char_classes): New structure.
- (mbcsets): New variable.
- (nmbcsets): New variable.
- (mbcsets_alloc): New variable.
- * dfa.c (prtok): Handle MBCSET.
- (fetch_wc): New function to fetch a wide character.
- (parse_bracket_exp_mb): New function to handle multibyte character
- in lex().
- (lex): Invoke parse_bracket_exp_mb() for multibyte bracket expression.
- (atom): Handle MBCSET.
- (epsclosure): Likewise.
- (dfaanalyze): Likewise.
- (dfastate): Likewise.
- (match_mb_charset): New function to judge whether a bracket match
- with a multibyte character.
- (check_matching_with_multibyte_ops): Handle MBCSET.
- (dfainit): Initialize new variables.
- (dfafree): Free new variables.
-
-Mon Apr 23 01:40:09 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- Implement the mechanism to match with multibyte characters,
- and use it for `period' in multibyte environments.
-
- * dfa.h (mbps): New variable.
- * dfa.c (prtok): Handle ANYCHAR.
- (lex): Use ANYCHAR for `period' in multibyte environments.
- (atom): Handle ANYCHAR.
- (state_index): Initialize mbps in multibyte environments.
- (epsclosure): Handle ANYCHAR.
- (dfaanalyze): Handle ANYCHAR.
- (dfastate): Handle ANYCHAR.
- (realloc_trans_if_necessary): New function.
- (transit_state_singlebyte): New function.
- (match_anychar): New function.
- (check_matching_with_multibyte_ops): New function.
- (transit_state_consume_1char): New function.
- (transit_state): New function.
- (dfaexec): Invoke transit_state if expression can match with
- a multibyte character in multibyte environments.
- (dfamust): Handle ANYCHAR.
-
-Fri Apr 20 11:31:24 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- Avoid incorrect state transition in multibyte environments.
-
- * dfa.h (nmultibyte_prop): New variable.
- (multibyte_prop): New variable.
- * dfa.c (addtok): Set inputwcs.
- (dfastate): Avoid incorrect state transition in multibyte
- environments.
- (dfaexec): Likewise.
- (dfainit): Init multibyte_prop.
- (dfafree): Free multibyte_prop.
- (inputwcs): New variable.
- (mblen_buf): New variable contains the amount of remain byte
- of corresponding multibyte character in the input string.
-
-Fri Apr 20 06:28:59 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- Handle a multibyte character followed by '*', '+', and '{n,m}'
- correctly.
-
- * dfa.c (update_mb_len_index): New function.
- Support for multibyte string.
- (FETCH): Call update_mb_len_index.
- (lex): Check cur_mb_index not to misunderstand multibyte characters.
- (atom): Make a tree from a multibyte character.
- (dfaparse): Initialize new variables.
- (mbs): New variable.
- (cur_mb_len): New variable.
- (cur_mb_index): New variable.
-
-Thu Apr 19 09:32:47 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * awkgram.y (cur_mbstate): New varialble containing means current
- shift state.
- (cur_char_ring): New varialbe reffering the buffer which contains
- last some character from the buffer.
- (cur_ring_idx): New variable containing the current index on
- cur_char_ring.
- (nextc_is_1stbyte): New macro, means that last nextc() return a
- singlebyte character or 1st byte of a multibyte character.
- (nextc): Check the buffer and update cur_ring_char in multibyte
- environments.
- (pushback): Adjust cur_ring_idx in multibyte environments.
- (yylex): Add check whether nextc() returned 1st-byte in multibyte
- environments.
- * re.c (make_regexp): In multibyte environment, skip multibyte
- characters when we check special characters.
-
-Wed Apr 18 07:58:20 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
-
- * awk.h (MBS_SUPPORT): New flag, means supporting multibyte strings.
- * configure.in : Add check for wchar.h, wctype.h, mbrtowc, and mbrlen.
-
-Wed Jan 16 16:32:40 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_strtonum): Simplified. Check first if the
- value matches a non-decimal number, and if so convert it.
- Otherwise do a regular force_number.
-
-Mon Jan 7 22:12:15 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (statement): Moved delete, print, and expressions into
- new non-terminal `simple_stmt'. Allow opt_simple_stmt in the
- first and third part of a for loop, per latest POSIX, which documents
- an otherwise undocumented historical oddity in Unix awk. This has
- the pleasant side effect of making line numbers more accurate for
- messages involving delete statements.
- (opt_simple_stmt, simple_stmt): New non-terminals.
-
- Based on bug report from drj@pobox.com.
-
-Mon Dec 24 14:04:02 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Changes for VMS with new strftime:
- (AC_HEADER_TIME): Added.
- (AC_CHECK_HEADERS): Check for sys/time.h.
- (TIME_T_IN_SYS_TYPES_H): Add header check.
- * acconfig.h (TIME_T_IN_SYS_TYPES_H): Added.
-
-Wed Dec 19 16:01:58 2001 Peter J. Farley III <pjfarley@dorsai.org>
-
- * configure.in: Add MS-DOS to getpgrp special case.
- * dfa.c, getopt.c, regex.c: Fix code to work with --disable-nls.
-
-Wed Dec 19 15:59:25 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * profile.c (init_profiling_signals) [__DJGPP__]: Use SIGINT
- instead of SIGHUP and SIGQUIT instead of SIGUSR1.
-
-Tue Dec 18 20:56:07 2001 Andreas Buening <andreas.buening@nexgo.de>
-
- More OS/2 stuff.
-
- * awk.h (O_BINARY): Don't redefine for EMX.
- * io.c (gawk_popen): Add __EMX__ in case compiling DOS executable.
- * configure.in: Add OS/2 to case for manual GETPGRP_VOID.
-
-Tue Dec 4 17:54:30 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- New configure time option, --with-whiny-user-strftime.
-
- * configure.in (AC_ARG_WITH): Add appropriate code for autoconf.
- * accondig.h (USE_INCLUDED_STRFTIME): Add #undef for it.
- * custom.h (USE_INCLUDED_STRFTIME): Set things up write.
-
-Tue Dec 4 16:44:07 2001 Andreas Buening <andreas.buening@nexgo.de>
-
- Mongo patch for updated OS/2 support.
-
- * awk.h (TOUPPER, TOLOWER): Define only if not already defined.
- * awkgram.y (extproc feature): Add ifdef for __EMX__.
- * gawkmisc.c (__EMX__): Include pc/gawkmisc.c directly.
- * io.c (__EMX__): Added for a number of places in addition to OS2 def.
- (two_way_open): Added OS/2 specific code added that uses spawn.
- (gawk_popen): Ditto.
-
-Mon Dec 3 14:07:56 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- Fix use of getgroups to use dynamic memory, solves
- problem of systems where NGROUPS_MAX lies.
-
- * awk.h (groupset, ngroups): New extern variables.
- * configure.in (AC_CHECK_FUNCS): Add getgroups to list.
- * io.c (user_open): Use global ngroups and groupset variables,
- don't call getgroups here.
- * main.c (init_groupset): New function to init global
- vars using malloc. Declare it at top.
- (main): Call init_groupset().
- (load_procinfo): Use global ngroups and groupset variables.
-
-Sun Nov 18 11:56:01 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * random.c (srandomdev): ifdef-out. Lots of compile time
- problems on multiple platforms, and gawk doesn't even
- use the routine. The heck with fine-grained solutions.
-
-Wed Nov 14 16:12:40 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * builtin.c (bchunk_one): Use `ofre < 1' instead of `ofre <= 0'
- to avoid compiler complaint about suspicious comparison for
- unsigned variable. (`ofre == 0' ought to suffice...)
-
-Tue Nov 13 17:27:52 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yyerror): Fix the code to behave like it
- used to. Keep "no arbitrary limits" by mallocing the
- buffer and freeing it.
-
-Wed Nov 7 16:46:20 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (yyerror): Remove dependency upon buf[] to
- hold prepended space and `^' pointer. Avoids core dumps
- for long source lines.
-
-Sat Nov 3 22:27:21 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * m4/strtod.m4: Add missing `#endif'. Oops.
-
-Mon Oct 29 14:53:57 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y: Add semicolons in calls to count_args().
- Apparently bisoon adds a semicolon to each body
- automatically and byacc doesn't.
-
-Sun Oct 28 16:53:18 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): Fix off-by-one error in "ran out
- for this one" diagnostic. Also fix lint check for too many
- arguments vs. count in format string.
-
-Wed Oct 10 11:01:47 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * fixvers: Check that files exist before doing `cmp', in
- case they're in a source code system and aren't there.
- Fix from Grant Erickson (gerickson@brocade.com).
-
-Thu Oct 4 18:20:36 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_tree_eval): For comparison, dupnode() results of
- evaluation so that we can hang on to them and avoid memory
- corruption. Change calls to free_temp() to unref().
-
-Tue Sep 25 15:19:53 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (iop_open): Only call os_close_on_exec() for
- fd > fileno(stderr).
-
-2001-09-07 Paul Eggert <eggert@twinsun.com>
-
- * io.c (redirect): When deciding to use the fdopen bug hack,
- use "__sun" rather than "solaris". No compilers predefine
- "solaris", but both GCC and Sun C predefine "__sun".
-
-Thu Aug 30 15:17:12 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (copyleft): Use a printf %d for last year of update
- to avoid translation strings changing when the file
- is updated from now on. Suggestion from Ulrich Drepper.
-
-Thu Aug 23 14:01:14 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (unary minus production): Add check that value
- isn't a string. Based on bug report from drj@pobox.com.
- * profile.c (tree_eval): For node_val, only test NUMBER
- to see if value is numeric, not NUM|NUMBER.
-
-Thu Aug 16 12:21:28 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in (ALL_LINGUAS): Added `fr' and `tr'.
- * po/fr.po, po/tr.fo: New files.
-
-2001-08-13 Paul Eggert <eggert@twinsun.com>
-
- This patch fixes a bug that causes gawk to rewind standard
- input incorrectly. It also removes all instances of fseek,
- from the gawk source proper, which should make gawk a bit
- more portable.
-
- (The original patch removed off_t & lseek too, but I need
- that for something else. ADR.)
-
- * posix/gawkmisc.c (optimal_bufsize):
- Don't use lseek on the input, because that might change
- its state. Instead, just check whether it is a regular file.
- This obviates the need to invoke isatty.
- (Also, fix a spelling error in the first line of the source.)
- * pc/gawkmisc.pc, unsupported/atari/gawkmisc.atr: Likewise.
-
- * awk.h (S_ISREG): Move this macro here ...
- * io.c (S_ISREG): from here.
-
- * protos.h (fseek): Remove prototype; no longer used.
-
-Fri Aug 3 13:38:54 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Change assert test on type to real test
- to protect against FS[1] = "x" kinds of things. It'd be better
- to do this in the grammar, but this is easier and just as
- effective.
-
- Undid BECAMEARRAY changes of 25 June 2001 in favor of correct code:
- * eval.c (pop_fcall): Change test and comment for freeing n->vname.
- (flags2str): Removed BECAMEARRAY entry.
- * awk.h (BECAMEARRAY): Removed define.
- * array.c (assoc_lookup): Removed setting of BECAMEARRAY flag.
-
-Mon Jul 23 17:33:13 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Handle case where RS = "" and input file
- is only newlines. See test/onlynl. Bug report by
- Michel Jouvin <jouvin@lal.in2p3.fr>.
-
-Wed Jul 4 18:34:19 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (assign_val): Don't allow negative values for NF.
- * field.c (set_NF): Robustify field-freeing code to make sure
- values are always positive.
-
-Sun Jul 1 19:15:01 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_index): If second string is "", return 1.
-
-Mon Jun 25 19:34:24 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- Further rationalization of treatment of dynamic regexes,
- so that profiling code works correctly.
-
- * awk.h (NODETYPE): New type, Node_dynregex.
- * awkgram.y (mk_rexp): Use Node_dynregex.
- * eval.c (nodetypes): Add Node_dynregex.
- (r_tree_eval): Add Node_dynregex to case for match_op().
- * profile.c (tree_eval): Add Node_dynregex to case for pp_match_op().
- (pp_match_op): Handle Node_dynregex, simplify cases for ~ and !~.
- * re.c (re_update): Add assertion that type is Node_regex when flags
- indicate CONST.
-
- New lint warning.
-
- * awkgram.y (yylex): Added lint warning that constant with leading
- zero is treated as octal or hex.
-
- Generalized code for those who are Strong In The Ways of the Source.
-
- * awk.h: New boolean variable.
- * main.c (main): Set it.
- * eval.c (interpret): For arrays, check it. Remove variable 'first',
- not needed anymore.
- * profile.c (pp_string_fp): Enable printing of non-ASCII characters
- verbatim if variable set.
-
- Fix memory corruption on SCO for array vars as params changed globally.
-
- * awk.h (BECAMEARRAY): New flag.
- * array.c (assoc_lookup): Set the flag as appropriate.
- * eval.c (flags2str): Add the flag.
- (pop_fcall): Check the flag, don't free memory if set.
-
-Wed Jun 13 18:07:06 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (fmt_index): Actually call erealloc() to grow fmt_list
- if that's really necessary. Bug report from David Jones,
- djones@zoonami.com.
-
-Sun Jun 10 14:24:48 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pp_match_op): Rationalized the code.
-
-Thu Jun 7 11:54:36 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (O_BINARY): Don't define if already defined
- (as is true for cygwin/gcc --- oops).
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-Wed Apr 25 11:44:07 2001 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (AM_MAKEFLAGS): Add definition per advice from
- Nelson Beebe.
-
-Tue Apr 24 14:28:00 2001 Arnold Robbins <arnold@skeeve.com>
-
- * io.c (devopen): Patch from Jeurgen to robustify pulling
- out hostname, port numbers, etc, to avoid any buffer overrun
- problems.
-
-Mon Apr 23 10:26:38 2001 Arnold Robbins <arnold@skeeve.com>
-
- * awkgram.y: Fix grammar so that `print ... |& ".." |& getline'
- dies with a parse-time error message.
-
-Sun Apr 22 16:46:48 2001 Arnold Robbins <arnold@skeeve.com>
-
- * io.c (socketopen): Fix from Juergen in recursive call.
-
-Thu Apr 19 18:39:20 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * awk.h: Really fix logic around include of <sys/types.h>.
-
- * awk.h (callresult): New name for `result' macro.
- * eval.c (r_get_lhs, case Node_builtin): Use it.
-
-Thu Apr 19 16:31:09 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * io.c: Move code around to allow compilation with DEC C.
-
-Thu Apr 19 16:21:56 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * random.h: Move decl of random() here.
- * random.c: Remove decl of random().
-
-Mon Apr 9 11:41:58 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c (dfainit): Initialize more members in the structure,
- based on bug report in bug.gnu.utils by aaronl@vitelus.com
- (Aaron Lehmann).
- * awk.h: Fix logic around include of <sys/types.h>.
-
-Thu Apr 5 20:12:05 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * dfa.c: For VMS, #include <stddef.h> instead of <sys/types.h>.
- * missing_d/mktime.c: Likewise.
-
- * random.c: Reorder include directives to get gawk config info
- from random.h sooner.
- [fcntl.h]: Guard #include with HAVE_FCNTL_H test.
- [unistd.h]: Guard #include with HAVE_UNISTD_H test.
-
- * random.c (srandomdev): Skip /dev/urandom usage if O_RDONLY
- is not defined.
-
-Tue Mar 20 11:07:11 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (function_body): Add opt_nls to end of production.
-
-Tue Mar 20 09:30:32 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * awk.h (BROKEN_STRNCASECMP): Add decl of strcasecmp.
- * io.c (two_way_open): Add `return FALSE;' for fussy compilers.
-
-Sun Mar 18 15:10:56 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (gawk_pclose): Set the exit value for close correctly
- if the pipe died with a signal.
-
-Wed Mar 7 11:28:52 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (get_a_record): Correctly handle the case of a leading
- single newline at the front of the file when RS = "".
-
-2001-02-26 Paul Eggert <eggert@twinsun.com>
-
- * COPYING: Incorporate latest version from FSF, which fixes a Y2k bug.
-
- * builtin.c (do_mktime): Allow the user to specify the
- tm_isdst member as an optional trailing integer, and to
- specify "out-of-range" members. Check for overflow when
- subtracting 1 from month or 1900 from year. Allow years just
- past INT_MAX, as they work on some hosts when INT_MAX - 1900
- is representable as an int.
-
- * doc/gawk.1, doc/gawk.texi: Document the above changes.
- Also, document that the origin-zero Gregorian calendar is used.
- Fix confusing wording about "midnight" by replacing it with 00:00
- ("midnight" is also 24:00, the end of the day).
- Mention the typical range for time stamps.
- Do not assume that years are nonnegative and are less than 10,000.
- Suggest TZ=UTC0 instead of TZ=GMT0, as that's how recent versions
- of GNU date behave.
- GMT is not always the time of day in Greenwich these days.
- Fix typos: "Emporer/Era", "1980's", "1970's".
-
- * m4/largefile.m4: Synchronized with latest version.
-
-Tue Feb 27 12:10:11 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pp_in_array): Change test to tree->type == Node_expression_list.
-
-Wed Feb 7 14:46:50 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (LEX_FOR): Allow newline after `;' in for loops.
- Per bug report from Brian Kernighan, bwk@research.bell-labs.com.
-
-Tue Feb 6 18:35:27 2001 Martin C. Brown <mc@whoever.com>
-
- * io.c (socket_open): Conditionalize various options based on
- ifdef. Needed for BeOS port.
-
-Tue Feb 6 18:17:13 2001 Michal Jaegermann <michal@ellpspace.math.ualberta.ca>
-
- * regex.c (re_match_2_internal): Case maybe_pop_jump, for
- charset and not_charset: Change cast from (unsigned char)
- to (unsigned). Catches last 8 chars with high bit set
- if backtracking. See test/rebt8b1.awk, test/rebt8b2.awk.
-
-Tue Feb 6 11:20:21 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- Have `for (iggy in foo)' save the elements and loop over them.
- Make sorted for loops a dynamic test instead of a compile time test.
- Still requires being Strong In The Ways Of The Source.
-
- * awk.h: (struct search): Removed.
- (assoc_scan, assoc_next): Removed declarations.
- * array.c (assoc_scan, assoc_next): Removed functions.
- * eval.c (interpret): Remove Node_K_array_sorted_for. Change code
- at Node_K_arrayfor.
- (nodetypes): Remove Node_K_array_sorted_for.
- * configure.in: Removed array sorting test.
- * awkgram.y: Removed sorted_in keyword and associated code.
-
-Sun Feb 4 14:57:49 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (interpret): Use tree->rnode->exec_count to hold count of
- times if was true.
- profile.c (interpret): Ditto.
- * main.c (pre_assign): Gross hack. malloc fresh copy of assign so can
- clear the '=', otherwise screws up profiling print out.
-
-Sun Jan 28 16:16:02 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- Per request from Nelson Beebe, SIGHUP to pgawk dumps profile
- and function call stack and exits, SIGUSR1 dumps and continues
- running.
-
- * eval.c (dump_fcall_stack): New function, dumps awk function call
- stack.
- * awk.h (dump_fcall_stack): Add declaration.
- (init_profiling_signals): Ditto.
- * main.c (main): Call init_profiling_signals.
- * profile.c (init_profiling_signals, dump_and_exit, just_dump): New
- functions.
-
-Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * io.c (gawk_popen): Restore the mode of stdin before running the
- child process and switch it back if BINMODE is in effect after the
- child returns.
- (redirect): Restore the mode of stdin before running the child
- process.
- (close_redir): Switch mode of stdin back to binary if BINMODE is
- in effect, after the child returns.
-
- * builtin.c (do_system): Restore the mode of stdin before running
- the child process and switch it back if BINMODE is in effect after
- the child returns.
-
- * awk.h (os_restore_mode): Add prototype.
-
-Thu Jan 18 14:03:06 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h, README_d/README.ultrix: Fixes for Ultrix
- from Juergen Kahrs.
-
-Wed Jan 17 11:03:40 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * io.c (redirect) [F_GETFL && O_APPEND]: Use binmode in the call
- to fdopen.
-
-Mon Jan 15 16:29:52 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (prec_level): Made Node_K_getline higher than <
- but lower than others. Allows use of getline with redirection
- inside an if.
-
-Wed Jan 10 15:35:06 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_BINMODE): Rationalized string assignment.
-
-Sun Jan 7 15:26:16 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * getopt.h: Removed names in prototypes for getopt_long
- and getopt_long_only, fixes problems on MINGW32.
-
-Thu Jan 4 10:13:46 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Add check for mcheck.h
- * main.c: Include mcheck.h if have it.
- (main): If TIDYMEM turned on in environment, also call mtrace().
-
-Wed Jan 3 16:41:33 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- Fixed minor memory leaks.
- * re.c (re_update): When IGNORECASE changed, unref(t->re_text).
- * eval.c (pop_fcall): Fix the logic to correctly free the vname
- when copying array args back to their underlying source.
-
- Fixed massive memory leaks.
- * node.c (dupnode): If PERM is set, do nothing.
- (unref): Fix logic. Always turn off TEMP. Check just for MALLOC
- when incrementing the stref.
- * array.c (assoc_lookup): Turn off PERM also when saving subscript.
- * builtin.c (sub_common): Turn off PERM also when making private copy
- of string.
-
- Add a minor memory cleanup facility (undocumented):
- * awk.h (do_tidy_mem, release_all_vars): Add declarations.
- * main.c (do_tidy_mem): Add declaration.
- (main): If $TIDYMEM exists, do_tidy_mem is true, and call mtrace().
- * awkgram.y (release_all_vars): New function.
-
-Sun Dec 31 10:47:37 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (in_end_rule): Renamed `parsing_end_rule' to avoid
- conflict with global var of same name.
-
-Sun Dec 24 10:36:54 2000 Eli Zaretskii <eliz@is.elta.co.il>
-
- * awkgram.y (snode): Reword the error message about the number of
- arguments for a builtin, so as not to use the English `s' as a
- plural suffix.
-
-Tue Dec 12 08:38:03 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * ext.c (do_ext): ifdef out use of `dummy'. Duh.
- * regex.c (re_error_msgid): Revert to array of `char *' so that can
- compile on K&R compilers. Fix all uses appropriately.
- (re_error_msgid_idx): Removed.
-
-Fri Dec 8 11:47:26 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * ext.c (dummy): Make gcc specific via ifdef.
- * builtin.c (do_dcgettext): Make conditional compilation smarter.
- * msg.c (warning, error, r_fatal): Finish switching back to
- multi-version function header.
-
-Wed Dec 6 13:28:58 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * random.h: Include <config.h> to get ssize_t definition.
- * awkgram.y (yyerror): Restore multi-version function header,
- it seems that what ansi2knr produces doesn't quite do the
- job on old compilers.
- msg.c (msg): Ditto.
-
-Tue Dec 5 15:05:35 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in (AC_C_INLINE): Added macro call.
- * Makefile.am (LN): Define it for install hooks.
-
-Sun Dec 3 17:28:53 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (os_setbinmode): Declare new function.
- (setmode): Remove definition: conflicts with MacOS X.
- * main.c (main): Change call of setmode to os_setbindmode.
-
- * builtin.c (do_dcgettext): Improve ifdef for code, fixes MacOS X.
- * custom.h (__APPLE__): Force definition of HAVE_MKTIME, won't
- link otherwise. Harumph.
-
-Sun Nov 26 11:58:52 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_dcgettext, do_bindtextdomain): Add calls to
- free_temp the various arguments. Sigh.
- * io.c (yylex): Nuked bstart variable, put all uses of mend variable
- into TANDEM ifdef.
- * main.c (load_environ): Removed cp variable, value never used.
- * random.c: Remvoed uses of `inline' keyword.
- * Makefile.am (install-exec-hook, uninstall-local): New targets.
- Adds creation of gawk-X.Y.Z and awk links, as in 3.0.x.
- * configure.in (GAWK_AC_TYPE_SSIZE_T): Added.
- m4/ssize_t.m4: New file.
-
-Wed Nov 22 14:47:18 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- After consultation with Brian Kernighan and Michael Brennan,
- nuked the abort keyword.
-
- * awk.h (Node_K_abort): Removed.
- * eval.c (aborting): Removed decl.
- (interpret): Removed Node_K_abort case.
- * io.c (do_input): Removed checks for aborting.
- * main.c (aborting): Removed.
- (main): Removed checks for aborting.
- * profile.c (pprint): Removed Node_K_abort case.
- * awk.y (LEX_ABORT): All stuff removed.
-
-Wed Nov 22 10:45:57 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * ext.c (dummy): Move inside #ifdef DYNAMIC. Helps on
- PCs and other platforms that don't do dynamic loading.
- * awk.h (RED_TCP): New flag, means use shutdown.
- io.c (redflags2str): Add RED_TCP.
- (SHUT_RD, SHUT_WR, SHUT_RDWR): Add conditional defines.
- (redirect): Add RED_TCP to tflag if appropriate. Add more
- #ifdef HAVE_SOCKETS as needed.
- (close_redir): If RED_TCP set, shutdown(2) on each end of the socket.
-
-Tue Nov 21 16:25:41 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y: for (iggy in foo) loops: Add test that index
- in delete statement is a simple variable.
-
-Tue Nov 14 16:11:39 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Add appropriate conditional versions of the gettext
- functions if we don't have <libintl.h> or if ENABLE_NLS
- is not defined or zero.
- * configure.in: Add check for libintl.h header.
-
- From Scott Deifik for PCs.
- * awk.h (lintwarn): Call set_loc unconditionally, makes
- compilation work on PCs.
- * builtin.c (do_dcgettext): Compile out cat_tab and code
- if not ENABLE_NLS.
- * ext.c: For MSC, no long long variable.
- * random.c: Use clock() instead of gettimeofday().
- * builtin.c: Fixed prototypes for new random functions (ADR).
-
-Sun Nov 12 17:45:44 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (parse_next_arg): Fix call to >= num_args so
- running out of args check is correct, instead of core dumping.
- (format_tree): Save and restore `the_args' and `args_size'
- if a nested call is in progress, see explanatory comment.
- See also tests/addcomma.
- * Makefile.am: Fix things so that gawk/pgawk built first,
- even if `make check' called before make. Add some
- commentary.
-
-Wed Nov 8 14:39:20 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Only add -rdynamic for Linux.
- * dfa.h, dfa.c: Upgraded to versions in grep 2.4.2.
-
-Tue Nov 7 18:17:17 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * All: Switched to ANSI function headers and added
- `ansi2knr' automake option. Really cool.
-
-Tue Nov 7 16:57:49 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): Check for O_APPEND in flags when doing
- fdopen() of /dev/fd/N. Thanks to bug report from
- "John H. DuBois III" <spcecdt@armory.com>.
-
-Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (os_is_setuid): Declare function.
- * main.c (main): Call it if do_lint and warn if true.
- * awkgram.y (tokentab):
- - Made sure all extensions are actually marked as such. Ouch.
- - Changed "sort" to "asort". Potential to break too much old code.
- * getopt.h, getopt.c, getopt1.c: Replaced with current versions
- from glibc CVS archive.
-
-Mon Nov 6 18:14:33 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * random.c: Replaced with recent version from FreeBSD.
-
-Mon Nov 6 15:37:12 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- Major simplification of automake machinery.
-
- * configure.in:
- - INSTALL is forced only if not provided in environment
- - lots of Makefile.in files removed since move to automake 1.4a
- * Makefile.am, */Makefile.am: Moved directories that don't need
- the automake machinery into EXTRA_DIST as appropriate and
- removed the Makefile{,.am,.in} files as needed.
- * eval_p.c, profile_p.c: New files to make it easier with automake
- to compile pgawk.
-
-Tue Oct 24 12:20:18 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (valinfo, var_comp, dump_vars): New functions to dump
- the list of global variables.
- * awk.h: Declare dump_vars.
- * main.c (optab): New option "dump-variables".
- (main): Code to handle it, set the output file and then call
- dump_vars() at the end.
- (usage): New option added to usage message.
-
-Sat Oct 21 22:59:59 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (parms_shadow): For a function, check if any
- parameters shadow global variables and print a warning.
- (shadow_funcs): Go through all functions and call parms_shadow().
- (isnoeffect, isassignable): Add Node_LINT and NODE_BINMODE.
- * main.c (main): If do_lint, call shadow_funcs().
- * awk.h: Add declaration of shadow_funcs().
- * configure.in: Added m4/Makefile and awklib/eg/network/Makefile
- to list of generated makefiles.
-
-Tue Oct 17 10:47:35 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Reverted change that did dupnode of
- array indices. Creates significant problems if index is
- numeric value and CONVFMT changes. Added fix to set
- bucket->ahname->stfmt to -1 so that force_string never recalculates
- the string value, and also turned off NUM and turned on STR.
- See test/arynasty.awk.
-
-Mon Oct 16 12:21:26 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * All: Cleaned up various lint warnings for consistent phrasing.
- * awk.y (in_end_rule): New variable for warning about unredirected
- getline. It's ok in a BEGIN, but not in an END.
-
-Sun Oct 15 14:14:05 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_FS): Add lint warning for FS = "".
- (do_split): Ditto for 3rd arg = "".
-
-Fri Oct 13 09:17:04 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (close_redir): Clear rp->fp on all closes. Remove
- rp from list if either closing both ends or both ends
- have been closed separately. Add exitwarn message for
- co-process.
- (flush_io): Add warning message if fflush of co-process
- fails. Rationalize return value to either 0 or -1.
- * builtin.c (do_gensub): 3rd arg of zero generates a
- warning.
- (do_fflush): Rationalize return value: -1 for unopen or read-only
- redirection, status of fflush otherwise.
-
-Wed Oct 11 22:11:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y (for loop): Check that there is a body as
- part of the `is it a delete statement' check.
-
-Thu Oct 5 11:56:42 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h, awkgram.y, configure.in, eval.c: Enabled
- `for (i in_sorted array)' loops for those who
- are Strong In The Way Of The Source. So there.
-
-Mon Oct 2 10:09:32 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (do_close): Make close(x) for non-open x return -1
- and update ERRNO. close(FILENAME) no longer does anything
- magic; this is all for better consistency with other awks
- and is more logical, anyway.
-
-Thu Sep 28 17:27:16 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (close_one): Added a lint warning if it becomes
- necessary to start multiplexing fd's, per ancient suggestion
- from Scott Deifik, <scottd@amgen.com>.
-
-Tue Sep 26 14:41:41 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c: Move enum for redirection placement to top
- of file, and make the value a parameter to pp_redir.
- Fix all the calls. This gets `|&' right everywhere.
-
-Sun Sep 24 16:38:04 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (freenode): Set the flags straight to UNINITIALIZED.
- * node.c (unref): Fix test for MALLOC|TEMP to test the
- actual flags, not zero.
- * builtin.c (format_tree): ala print and concat, dupnode
- the temp nodes from tree_evaling the arguments. See
- test/nasty2.awk.
-
-Mon Sep 18 10:16:58 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (snode): Make match 3rd arg and close 2nd arg fatal
- errors if --tradtional.
-
-Thu Sep 14 12:22:42 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (update_ERRNO): Call gettext on result of strerror.
- i18n rules.
-
-Wed Sep 13 14:56:11 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_tree_eval): Case for Node_concat. Dupnode the
- strings ala do_print to get more consistent results.
- Compare gawk 3.0.6 to nawk/mawk on test/nasty.awk.
- Thanks to Andrew Sumner (andrewsumner@yahoo.com) for
- pointing this one out.
-
-Wed Sep 13 10:06:47 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (two_way_close_type): New enumerated type.
- (close_redir): New third param of type two_way_close_type.
- Add smarts to two-way case for different close types.
- Only remove it from the redir list if closing is for both ends.
- (gawk_pclose): Check that rp->iop != NULL before closing,
- all three versions.
- * awkgram.y (tokentab): Allow 2nd argument to close.
- (snode): Add lint warning.
-
-Sun Sep 10 14:16:10 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_FIELDWIDTHS): Generate a fatal error upon
- encountering a negative width.
-
-Sun Sep 10 10:37:35 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkgram.y (snode): If first argument to dcgettext is a
- string constant and --gen-po, dump the string constant to
- the .po file too.
- * main.c (nostalgia): Add call to fflush(stderr).
- * eval.c (r_tree_eval): Add entries for Node_LINT and for
- NODE_TEXTDOMAIN.
-
-Thu Sep 7 10:46:20 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_dcgettext): Per suggestion from Ulrich Drepper,
- make the awk interface:
-
- str = dcgettext(string [, domain [, category]])
-
-Wed Sep 6 16:28:12 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- Bring gettext features out to the awk level!
-
- * awk.h: Add declarations of new functions `do_dcgettext'
- `do_bindtextdomain', `set_TEXTDOMAIN' and variables
- `TEXTDOMAIN', `TEXTDOMAIN_node'. New NODETYPE enum
- `Node_TEXTDOMAIN'.
- * eval.c (nodetypes): Add Node_TEXTDOMAIN at end.
- (set_TEXTDOMAIN): New function.
- (r_get_lhs): Add case for Node_TEXTDOMAIN.
- * main.c (varinit): Add entry for TEXTDOMAIN.
- * node.c (format_val): If INTLSTR use dcgettext of string
- and TEXTDOMAIN.
- * awkgram.y (tokentab): Add entries for "dcgettext" and
- "bindtextdomain".
- * builtin.c (do_dcgettext, do_bindtextdomain): New functions.
-
-Tue Sep 5 17:01:34 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * profile.c (pp_string_fp): Use lower case versions of
- isascii and isprint to avoid printing high-bit-set
- characters. Make it smarter to break strings at 70
- chars or after embedded newline, for --gen-po.
- Fix the calls to it everywhere for new boolean option
- to yes/no break lines.
- * m4/strtod.m4: New file, defines GAWK_AC_FUNC_STRTOD_C89.
- * configure.in: GAWK_AC_FUNC_STRTOD_C89 call added
- * acinclude.m4: Include strtod.m4.
- * acconfig.h: Add entry for STRTOD_NOT_C89.
- Remove entries for BITOPS and NON_DEC_DATA.
- * missing/missing.c: Add check for STRTOD_NOT_C89, use ours
- if set.
- * missing/strtod.c: Make smarter for input like 0x345.
- * awk.h: [STRTOD_NOT_C89]: Define strtod gawk_strtod to get
- our version. Avoids linker weirdness.
-
-Mon Sep 4 09:16:43 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_record): Fix from Utz-Uwe Haus
- <haus@saturn.Math.Uni-Magdeburg.DE> to make sure there's
- always enough room in the record.
- * builtin.c (nondec2awknum): Fix octal conversions to exit
- when hitting a non-digit, and not go to decimal. Make
- check for non-octal better. Based on bug report from
- Morris_Lee@tvratings.com.
-
-Sun Sep 3 13:52:11 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): Allow positional parameters for
- %*.* kinds of things.
-
- Made octal/hex constants and strtonum on by default. Made
- --enable-non-decimal-data a runtime switch `--non-decimal-data'.
-
- * configure.in: Removed AC_ARG_ENABLE for --enable-bitops and
- --enable-non-decimal-data.
- In .developing check, remove the AC_DEFINEs.
- * awk.h: Decls for bitwise functions now there by default.
- Add decl of `do_non_decimal_data'.
- * main.c (do_non_decimal_data): New variable
- (optlist): Add new entry for `--non-decimal-data'.
- (main): Turn off `do_non_decimal_data' if `do_traditional'.
- (usage): Add the new option.
- * node.c (r_force_number): Make check for non-decimal data a
- runtime check based on do_non_decimal_data.
- * awkgram.y (yylex): Make non-decimal constants a runtime check.
- * builtin.c: Remove the ifdefs around the bit functions and
- nondec2awknum.
-
-Tue Aug 29 18:45:56 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Go back to ARRAYDEBUG if .developing set.
- * awkgram.y: Use ARRAYDEBUG for adump(), use multiple tests
- for stopme().
-
-Mon Aug 28 17:09:06 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (do_split): Add check for first arg is null string,
- if so, skip the work and return zero.
-
-Mon Aug 14 23:01:55 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- Add %COUNT$... handling to printf.
-
- * awk.h (printf_count): New define in NODE structure.
- (format_tree): Added decl.
- * awkgram.y (count_args): New function to set printf_count in
- a node.
- [print productions]: Call the function.
- * (snode): For do_sprintf, call count_args, set the count
- in the lnode.
- * builtin.c (format_tree): New fourth arg is argument count.
- Add smarts to handle the `$' in a format.
- * (do_sprintf): Use new argument to format_tree.
- node.c (format_val): Ditto.
-
-Sun Aug 13 11:10:41 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes from Alan J. Broder (ajb@woti.com):
- - Array third arg to match puts subtexts into the array:
-
- * awk.y (tokentab): "match" gets third arg, and lint warning
- * builtin.c (do_match): If third arg there, fill it with subtexts
-
- - New builtin sort function:
-
- * awk.h (do_sort): Declared.
- * array.c (do_sort, dup_table, merge, merge_sort, assoc_from_list,
- assoc_sort_inplace): New functions.
-
- * eval.c (tree_eval): In debug code, make uninitialized var
- a warning, not a fatal error. Breaks too many things.
-
-Wed Aug 9 10:51:41 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (func_call): Increment the exec_count on the
- function's node; this allows printing a call count for
- functions.
- profile.c (pp_func): Print the count for functions.
- * ALL: Changed DEBUG to GAWKDEBUG in all gawk files, so that
- I don't get regex/dfa debugging. In some cases, changed
- memory-related stuff to MEMDEBUG. Still have work to do.
- * awk.h, node.c, profile.c: Removed exec_count_init variable;
- code has been cleaned up to not need different values for
- profiling/not profiling.
-
-Thu Jul 5 21:10:59 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (casetable): Removed the USE_PURE_ASCII stuff; it
- was never documented. Latin 1 forever.
- * main.c (main): Only call `init_profiling' after arg parsing
- if `do_profiling' is still false. Avoids resetting `prof_fp'
- back to stderr.
-
-2000-02-17 Akim Demaille <akim@epita.fr>
-
- * m4: New directory.
- * acinclude.m4: Removed, replaced by m4/*.m4.
- * Makefile.am: Adjusted.
- Added ACLOCAL_AMFLAGS.
- * configure.in Adjusted.
- Use AC_SYS_LARGEFILE not GAWK_AC_SYS_LARGEFILE, jm_FUNC_MKTIME,
- not GAWK_FUNC_MKTIME.
- * acconfig.h: Removed _FILE_OFFSET_BITS, _LARGEFILE_SOURCE and
- _LARGE_FILES now templated by m4/largefile.m4.
-
-2000-02-15 Arnold Robbins <arnold@skeeve.com>
-
- * MOVED TO AUTOMAKE AND GETTEXT.
- Just about every file touched. Work done by Arno Peters.
-
-Sun Jan 2 14:48:23 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- First edit of the new millenium!
- * awk.y (yylex): If lint checking, be obnoxious about gotos.
-
-Mon Oct 25 19:12:02 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h: Remove C_ALLOCA ifdef.
- * main.c (main): Remove C_ALLOCA code.
- * io.c (do_input): Ditto.
-
-Mon Aug 9 17:36:24 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * bisonfix.sed: Unconditionally #undef YYSTACK_USE_ALLOCA.
- * configure.in: Remove all alloca and ALLOCA related stuff.
- * Makefile.in: Ditto.
-
-Thu Jul 29 18:32:05 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (NODE): exec_count now in #ifndef NO_PROFILING.
- * Makefile.in: Changes to only recompile eval.c and profile.c to a
- special version for profiling.
- * custom.h [MSC_VER]: Turn on NO_PROFILING to omit the exec_count
- and save space.
- * node.c (more_nodes): Move setting of exec_count to
- #ifndef NO_PROFILING.
-
-Thu Jul 1 12:12:05 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in (AC_PREREQ): Update to 2.13.
- GAWK_AC_C_STRINGIZE: convert to AC_C_STRINGIZE.
- * aclocal.m4 (GAWK_AC_C_STRINGIZE): Remove definition, now
- part of autoconf.
- * acconfig.h (HAVE_STRINGIZE): Ditto.
-
-Wed Apr 28 11:08:05 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Fix call to free_temp(subs) to after
- last use of subs.
-
-Sun Apr 25 16:48:06 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect): Add lint warning when same file is used for
- > and >>.
-
-Thu Apr 22 15:05:30 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Fix call to fatal to lintwarn instead.
- * node.c (r_force_number): Use `0 &&' to disable warnings about
- conversions: they're overzealous, methinks.
-
-Thu Apr 8 14:27:58 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- New features for profiling:
-
- * awk.h (NODE): Add `exec_count' member.
- (freenode): Clear `exec_count' upon free.
- * awk.y (func_count): New variable, counts total number of functions.
- (func_install): Increment func_count.
- (struct finfo): Information for use in sorting functions when
- pretty printing.
- (fcompare): Compare two finfo structures.
- (dump_funcs): Print the functions in sorted order for profiling.
- (getfname): Return the name of a builtin function.
- * eval.c (INCREMENT): New macro for counting execution of nodes.
- (interpret): Call INCREMENT() appropriately.
- * main.c (do_profiling): New flag if doing profiling.
- `--profiling': New option added to getopt_long machinery.
- (main): For profiled version, set do_profile and output file.
- Call `dump_prog' and `dump_funcs' if do_profiling at end.
- (usage): Add new argument.
- * node.c (more_nodes, freenode): Set exec_count to zero.
- * profile.c: New file, does pretty printing and prints counts.
- * Makefile.in: Update to create two versions of gawk, regular
- and `pgawk' which does profiling.
-
-Wed Mar 10 21:38:14 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (close_redir): Use update_ERRNO() instead of manually
- doing it.
-
-Mon Dec 21 15:58:21 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Add BeOS to list of cases where we hardwire
- GETPGRP_VOID.
- custom.h: Remove the #define from __be_os case. Cleaner to
- do it all in configure. Based on email from Martin C. Brown,
- mc@whoever.com.
-
-Mon Nov 30 20:52:52 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (update_ERRNO): New function, mainly for use by
- extension functions.
- * awk.h: Add decl.
-
-Tue Nov 24 18:13:29 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * Changes based on submission from Christos Zoulas at D.E. Shaw
- that adds the following features:
- - checking for use of uninitialized variables
- - checking if a string that's not a number converts to 0
- - ability to load a dynamic library to add built-ins
- - VERSION variable (may or may not stay)
- Additional change:
- - --lint=fatal makes lint errors become fatal
- - LINT="fatal" has the same effect, any other positive
- value makes lint errors be just warnings
- * Makefile.in (includedir): New variable for gawk header files
- (ext.c, ext.o): New source and object files
- (OTHERS, extension): New directory for macro with example extension
- (install): Install header files
- * acconfig.h (DYNAMIC): New macro, true if can do dynamic loading
- * array.c (assoc_lookup): New parameter `reference' is true if we
- want to do reference checking. Add appropriate reference checking
- code.
- * awk.h (UNITITIALIZED): New flag
- (lintfunc): Function pointer for correct function to use
- (lintwarn): New macro to produce warnings
- (result): New macro for func call result, used in commented out
- code in eval.c.
- (getnode, freenode): Revised to set UNINITIALIZED.
- (get_lhs): Third arg for reference checking, change all calls
- -- Add appropriate decls of new/changed functions
- * awk.y (tokentab): New builtin "extension" for adding extensions
- (node_common): Set flags to UNINITIALIZED for Node_var.
- * configure.in (dynamic linking): New check. Probably should
- be a separate macro.
- * eval.c (flag2str): Add UNINITIALIZED to the table.
- (r_tree_eval): Add checks for UNINITIALIZED.
- (push_args): Appropriate changes for UNINITIALIZED to work.
- (r_get_lhs): New third argument for reference checking.
- (set_LINT): Add code to handle setting `lintfunc' appropriately.
- * ext.c: New file, for doing dynamic library extensions.
- * extension/*: New directory with simple example code.
- * main.c (VERSION_node, EXTENSION_node): New nodes for new vars.
- (optab): Change for "lint" to allow optional argument.
- (lintfunc): Definition.
- (main): Add case in option processing for --lint.
- (varinit): Add entries for VERSION and EXTENSION.
- * node.c (r_force_number): Checks that string really is a number.
- (morenodes): Set UNITIALIZED in the flags.
- * re.c (all): Change `result' to `res' globally to avoid conflict
- with new macro.
- * GLOBAL: Change lint calls to warning() to lintwarn().
- * GLOBAL: Change all calls to get_lhs() to have 3rd arg.
- * GLOBAL: Change all calls to assoc_lookup() to have 3rd arg.
-
-Sun Nov 22 17:07:39 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * patchlev.h: Renamed from patchlevel.h to make life
- easier for the PC guys.
- (main.c): Changed to include patchlev.h.
- (Makefile.in): Changed to ref patchlev.h where needed.
-
-Sat Nov 7 21:29:52 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_get_lhs): case Node_field_spec. Fix the lint
- warnings for field reference of null string or non-numeric value.
- When turned on, $0 generated a warning! Oops.
-
-Thu Nov 5 16:58:38 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (init_fds): New function to pre-open 0, 1, and 2 on
- /dev/null if they're not open. Robustness, more or less.
- (main): Call init_fds.
- * io.c (str2mode): Add smarts for two-letter strings
- such as "rw", "r+", "wr", "w+" and "a+".
-
-Mon Nov 2 16:55:46 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_*): Added lint checks for non-numeric
- and/or non-string arguments, as appropriate. This should
- have been done long ago.
-
-Tue Oct 20 21:56:06 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (LINT_node): New variable for LINT special var
- (Node_LINT): New node type.
- (set_LINT): Declare function.
- * main.c (varinit): Add LINT variable.
- (usage): Print an emphatic pointer to the manual for bug reports.
- * eval.c (nodetypes): New entry for Node_LINT.
- (r_get_lhs): Case added for Node_LINT.
- (set_LINT): Set do_lint from LINT variable.
-
-Mon Oct 19 22:35:46 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: For GCC, add -Wall to get warnings for development.
- * Makefile.in (awktab.c): Move sed stuff to separate script.
- * bisonfix.sed: New script, with old fix and Solaris x86 fix.
- * awk.h (nodetype2str): Add declaration.
- (load_procinfo): Add declaration.
-
-Tue Oct 13 22:28:56 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes to make PROCINFO["FS"] reflect the use of FIELDWIDTHS or FS.
-
- * eval.c (assign_val): New function that does the mechanics of
- assignment
- * main.c (load_procinfo): Add setting of PROCINFO["FS"] to "FS".
- * field.c (update_PROCINFO): New function to update the array.
- (set_FS): Call update_PROCINFO.
- (set_FIELDWIDTHS): Ditto.
-
-Sun Sep 27 10:18:05 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (reisstring): New prototype.
- * re.c (reisstring): New function, returns true if the re did
- a simple string match. This is rather simplistic in its logic.
- * io.c (get_a_record): In the case that RS is a regexp, AND
- the re matched at the exact end of the buffer, add a call to
- `reisstring' in case it's a simple string match. If so, we
- don't need to read more into the buffer because we don't
- have a regex like `x.*y' that might extend longer.
- This should be very helpful for interactive /inet clients
- where something like `RS = "\r\n"' happens.
-
-Thu Aug 13 22:07:40 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (socketopen): Fixes from Juergen Kahrs to socket
- opening code for "any host".
-
-Tue Jul 14 19:02:33 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * aclocal.m4 (GAWK_AC_LIB_SOCKETS): Removed the caching;
- configure gave different results the second time it was run!
-
-Fri Jul 10 09:11:06 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (interpret): Minor cleanups: add variable name to
- fatal error Node_K_array_for and other minor changes.
-
-Mon Jun 22 16:53:34 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (tags, TAGS): Add $(LIBSRC).
-
-Tue Jun 2 15:23:05 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (devopen): Relax previous change, don't require "any",
- just that a port be there. The user can put 0 if they
- don't care.
-
-Wed May 27 21:33:45 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (devopen): For /inet, require that local and remote
- ports and the remote hostname be there, and that `any'
- be used for a port if they don't care.
-
-Thu May 21 14:13:46 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (parse_escape): Add warning that is always on
- for \q for any unknown q inside string or regex constant.
- I got bit by this myself once too often. Or else I'm
- just getting old and senile.
-
-Mon May 4 12:42:49 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (NODETYPE): Sorted the Node_xxx entries for the
- builtin variables. Gotta look nice, don't we?
- * eval.c (nodetypes): Ditto.
- (genflags2str): Added code to check that we don't
- overflow the static buffer. This is just a debugging
- routine, not worth the hassle of dynamic allocation.
-
-Mon Mar 2 16:06:16 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (dist): Remove any embedded copied RCS or CVS
- directories.
-
-Mon Feb 23 00:09:52 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (genflags2str): Add declaration.
- * eval.c (genflags2str): New function.
- (flags2str): Use new general purpose function.
- * io.c (redflags2str): Same.
-
-Sun Feb 22 23:57:29 1998 Arnold D. Robbins <arnold@skeeve.com>
-
- Significant changes to add two-way i/o and sockets!!!
-
- * Makefile.in: Add @SOCKET_LIBS@ to LIBS variable.
- * acconfig.h: Add HAVE_SOCKETS and HAVE_PORTALS defs.
- * aclocal.m4: New macro GAWK_AC_LIB_SOCKETS.
- * awk.h: New node type, Node_redirect_twoway, and new redirection
- flags: RED_TWOWAY, and RED_SOCKET.
- * awk.y (parser): Add TWOWAYIO token and appropriate productions.
- (yylex): Recognize `|&' token if not traditional.
- * builtin.c (do_print, do_printf): Flush buffer if TWOWAYIO.
- * configure.in: Add header checks for networking header files,
- add --enable-portals switch, call GAWK_AC_LIB_SOCKETS
- * eval.c (nodetypes): Add string constant for Node_redirect_twoway.
- * io.c (redflags2str): New function.
- (redirect): Better error message in default case, add code for
- Node_redirect_twoway.
- (socketopen): New function.
- (iop_open, devopen): Add recognition of `/inet/...'.
- (two_way_open): New function.
-
-Sat Dec 13 21:15:07 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (struct node): New member, `param_list' in union `x', becomes
- `node->parmlist' in the code.
- * awk.y (func_install): Rearranged a bit, to build up a list of
- the function parameter names and to save it in the `parmlist' field.
- * eval.c (push_args): New parameter, `varnames', which is the list
- of variable names. Use this to set the vname field of each
- parameter's value as it's created. Special case arrays to include
- where they came from, mainly for array vs. scalar diagnostics.
- (r_tree_eval): Don't set the `vname' field for parameters.
- (pop_fcall): Free the `vname' field if it's an array.
- (func_call): Pass in the `parmlist' field to call of push_args().
- (r_get_lhs): For Node_subscript, change error message to use
- the `vname' field.
- (stopme): New do-nothing function for use with debugging code
- and setting breakpoints.
-
-Thu Dec 4 15:18:17 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y: Fixed several lint checks and moved some into
- test for do_lint_old.
- * eval.c (fmt_index): Add value of bad format spec to
- error message.
-
-Tue Nov 18 22:19:02 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (install): Strip the installed binary.
- From Anatoly A. Orehovsky (tolik@mpeks.tomsk.su).
-
-Sun Nov 16 22:12:39 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (in_array, assoc_lookup): Add symbol->vname to
- fatal calls for scalar in array context.
-
-Wed Nov 12 22:18:33 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h [ISASCII]: On all IS* macros, add cast to unsigned char.
- [TOUPPER, TOLOWER]: New macros using unsigned char.
- * awk.y: Change to use of IS* vs. is* macros.
- * builtin.c (nondec2awknum): Change to use of IS* vs. is* macros,
- change casts for casetable[] from int to unsigned char.
- use new TOLOWER, TOUPPER macros
- * dfa.c [ISASCII]: On all IS* macros, add cast to unsigned char.
- (lex): Change isdigit to ISDIGIT.
- [TOUPPER, TOLOWER]: New macros using unsigned char, now used.
- * eval.c (fmt_ok): Change to use of IS* vs. is* macros.
- * field.c (sc_parse_field): Change to use of IS* vs. is* macros,
- change casts for casetable[] from int to unsigned char.
- (set_FS): Change to use of IS* vs. is* macros.
- * io.c (get_a_record): Change to use of IS* vs. is* macros,
- change casts for casetable[] from int to unsigned char.
- * main.c (main): Change to use of IS* vs. is* macros.
- * node.c (r_force_number, parse_escape): Change to use of IS* vs.
- is* macros.
- * re.c (make_regexp): Change to use of IS* vs. is* macros.
- * regex.c [ISASCII]: On all IS* macros, add cast to unsigned char.
-
-Sun Oct 19 12:36:47 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * ALL: Change email address to arnold@gnu.org in all relevant places.
-
-Wed Oct 15 03:38:12 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y (yylex): Don't allow newlines after ? or : if do_posix.
-
-Thu Oct 9 19:28:39 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h [SEQUENT]: Removed; not needed any more since the
- mmap code was ripped out.
-
-Wed Oct 8 17:22:03 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in: Remove check for madvise; don't need it any more
- after nuking use of mmap.
-
-Tue Oct 7 11:14:21 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (flags2str): Made the code table driven. Shortened a lot.
-
-Tue Sep 30 20:59:17 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (r_get_lhs): case Node_field_spec. Add lint warnings
- for field reference of null string or non-numeric value.
- Based on patch submitted by Alan Broder, ajb@dtmr.com.
-
-Wed Sep 24 20:47:59 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h [TANDEM]: New changes. Finishes up Tandem
- integration.
-
-Mon Sep 22 00:42:34 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * custom.h [__be_os]: Remove BROKEN_TOKEN definition.
- * dfa.c, dfa.h: Change `token' to `dfa_token' to avoid BeOS
- compile problems.
-
-Thu Aug 7 22:35:17 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes for BeOS from mc@whoever.com
-
- * awk.h (strncasecmp): Bracket prototype.
- custom.h [__be_os]: New stuff.
- dfa.h, dfa.c [BROKEN_TOK]: New ifdefs to use dfa_token, not token.
-
-Fri Aug 1 13:32:49 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- Tandem changes:
-
- * awk.h [TANDEM]: Misc additions, as needed.
- * io.c (get_a_record): Changes for fixed length records; not used
- on other systems.
- * main.c (MRL): New variable, TANDEM specific.
- (main): Update handling -mr option for TANDEM.
- (load_environ): Comment out whole routine if TANDEM.
- missing.c [TANDEM]: New includes.
- gawkmisc.c [TANDEM]: Include `tmiscc'.
-
-Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- Close-on-exec changes:
-
- * awk.h: (os_close_on_exec, os_isdir): New functions.
- * gawkmisc.c: Add include fcntl.h.
- * configure.in [AC_CHECK_HEADERS]: Add fcntl.h.
- * io.c (devopen, iop_open): Change to use os_isdir(), not S_IFDIR().
- (redirect, devopen, iop_open, gawk_popen): Change all calls to
- fcntl() to os_close_on_exec().
-
-Tue Jul 29 11:09:45 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_BINMODE): Fixed check for digits to use isdigit()
- instead of looping over digits and using strchr(). Duh.
-
-Sat Jul 26 22:52:08 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (set_BINMODE): Fix so that `-v BINMODE=w' works.
- * node.c (r_force_number): Add decl of strtod(); makes things
- work on MIPS.
- * Makefile.in (install-strip): New target.
-
-Fri Jul 18 13:28:05 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (redirect, devopen, iop_open, gawk_popen): Set the
- close-on-exec flag on all files and pipes opened for I/O.
- Keeps children run via system() or other pipes from running out
- of file descriptors.
-
- (Reported by Kenny McCormack, gazelle@yin.interaccess.com.)
-
-Tue Jul 8 22:18:00 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y [LEX_NEXT]: Removed support for `next file' as two words.
-
-Tue Jul 8 06:46:32 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * dfa.c: Changes from pjr@jet.UK (Paul J Rippin) from an old
- bug report against 2.14.0 that speed up initialization and
- rewrite the inner loop into readable code.
-
-Thu Jul 3 11:44:50 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * Atari support moved into new `unsupported' directory.
- awk.h, Makefile.in, gawkmisc.c, and missing.c modified.
-
-Sun Jun 29 14:17:37 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y (exp): Fixed warning about `x = /foo/'.
-
-Wed Jun 25 09:07:57 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * PORTS: Removed from distribution.
- * Makefile.in (MISC): Removed PORTS.
-
-Sun Jun 22 11:52:57 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- BINMODE changes.
-
- * awk.h (Node_BINMODE): Added.
- (struct redirect): Added mode field to save for io.c:close_one().
- (BINMODE, BINMODE_node, set_BINMODE): Add declarations.
- * awk.y (isnoeffect): Add Node_BINMODE.
- * eval.c (nodetypes): Add Node_BINMODE string.
- (r_tree_eval, r_get_lhs): Add cases for Node_BINMODE.
- (set_BINMODE): New function.
- * io.c (binmode): New function.
- (nextfile, redirect, gawk_popen): Add calls to binmode().
- * main.c (BINMODE, BINMODE_node): Add decls.
- (main): Add call to setmode() if BINMODE is set.
- (varinit): Add entry for BINMODE.
-
-Wed Jun 4 21:52:25 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * configure.in [AC_FUNC_MMAP]: Removed call.
- * awk.h [struct iobuf]: Removed IOP_MMAPED flag and `getrec' member.
- * io.c: Removed all mmap related code.
-
-Sun Apr 27 16:23:56 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * aclocal.m4 [GAWK_AC_FUNC_MKTIME]: New macro.
- * configure.in (GAWK_AC_FUNC_MKTIME): Call it.
-
-Thu Apr 24 23:25:06 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (devopen): Remove stat test for /dev/foo files. Finally.
-
-Fri Jul 26 09:23:15 1996 Arnold D. Robbins <arnold@skeeve.com>
-
- Changes to add an abort statement, a la tawk.
-
- * awk.h (Node_K_abort): New enum value for NODETYPE.
- * main.c (aborting): New flag variable.
- (main): Add logic to handle aborting.
- * eval.c (interpret): Add case for Node_K_abort.
- * io.c (do_input): If aborting, break loop.
- * awk.y (tokentab): Add entry for "abort" keyword
- (PRODUCTIONS): Add production for LEX_ABORT.
-
-Wed Jul 24 12:49:52 1996 Arnold D. Robbins <arnold@skeeve.com>
-
- First cut at changes for i18n.
-
- * awk.h (do_intl): Declare new flag variable.
- [INTLSTR]: New flag def.
- (m_tree_eval): Fix definitions for INTLSTR.
- (force_string): Fix definitions for INTLSTR.
- * awk.y (yylex): Add _"..." for international strings.
- (dumpintlstr): New function.
- * main.c (do_intl): Define new flag variable.
- (optab): Add "gen-po" entry.
- (main): If do_intl, exit, don't run the program.
- (gawkoption): Add "gen-po" entry.
- * node.c (r_force_string): Call gettext if flags indicate INTLSTR.
-
-Thu Mar 14 06:29:42 1996 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (do_mktime): Added declaration of new function.
- * builtin.c (do_mktime): New function.
- * awk.y (tokentab): Added "mktime" to list of gawk extensions.
- * missing.c [HAVE_MKTIME]: Added include of mktime.c if needed.
-
-Mon Feb 26 22:32:19 1996 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (pidopen, useropen): Added warnings to use PROCINFO[],
- not special files.
- * main.c (load_procinfo): New function.
- * awk.y (variable): Added call to load_procinfo() function.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Thu Aug 3 17:47:53 2000 Greg McGary <greg@mcgary.org>
-
- * regex.c: Patches for gcc bounded pointer handling.
-
-Thu Aug 3 13:09:09 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (in_array, do_delete): Fix tests for index equality
- when searching through the array to work correctly when
- index is "".
-
-Fri Jul 14 21:40:17 2000 Pat Rankin <rankin@eql.caltech.edu>
-
- * builtin.c (format_tree): Workaround a DEC C V5.7 bug by
- splitting `strcpy() + 3' into two expressions (the builtin
- inline strcpy evidently has erroneous return type of void *
- instead of char *; reputedly fixed in V6.1).
-
- * eval.c (C): New macro.
- [casetable]: Use it to add explicit casts for the character
- values outside the range of 0 to 127.
- * missing/strncasecmp.c [C, charmap]: Likewise.
-
- * io.c (redirect): Add EIO check on failed open for VMS.
-
-Fri Jul 14 11:57:23 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- Efficiency hack: turn `for (iggy in foo) delete foo[iggy]'
- into moral equivalent of `delete foo'.
-
- * array.c (do_delete_loop): New routine.
- * awk.h [NODETYPE]: New Node_K_delete_loop value.
- Add declaration of do_delete_loop.
- * awk.y [LEX_FOR]: Fix code to recognize special case.
- * eval.c (nodetypes): New entry for Node_K_delete_loop.
- (interpret): Add case for Node_K_delete_loop, add more
- diagnostic info in default (cant_happen) case.
-
-Tue Jul 11 22:15:10 2000 Pat Rankin <rankin@eql.caltech.edu>
-
- * awk.y (nextc): Recast unsigned char values back to int to
- prevent VAX C from truncating EOF to 255.
-
-Tue Jul 11 14:08:23 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (do_delete): Switch to string comparison, not
- cmp_nodes.
- (assoc_find): Add call to force_string on subscript.
- * eval.c (interpret): Case Node_K_arrayfor: check for
- Node_array_ref and fetch original_array. Yowser.
-
-Fri Jun 30 21:57:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Don't force the subscript
- to be a string. Not a good idea after the change
- to using dupnode.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed Jun 14 13:03:45 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * field.c (set_record): Manage a private buffer for $0.
- Keeps things safe in case `getline var' rearranges the
- IOBUF's contents that $0 is still pointing into.
-
-Tue Jun 13 16:27:55 2000 Paul Eggert <eggert@twinsun.com>
-
- Upgrade to latest and greatest version of largefile code.
-
- * configure.in (AC_CANONICAL_HOST): Remove.
- (GAWK_AC_SYS_LARGEFILE): Defer until after AC_MINIX,
- to avoid autoconf warnings.
-
- Rewrite largefile configuration so that we don't need to run
- getconf and don't need AC_CANONICAL_HOST.
- * config.guess, config.sub: Remove these files.
- * Makefile.in (MISC): Remove config.guess, config.sub.
- * m4/largefile.m4 (GAWK_AC_SYS_LARGEFILE_FLAGS,
- GAWK_AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
- (GAWK_AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
- (GAWK_AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
- CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
- All uses changed.
- Instead of inspecting the output of getconf, try to compile the
- test program without and with the macro definition.
- (GAWK_AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
- for getconf. Instead, check for the needed flags by compiling
- test programs.
-
- (GAWK_AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to be 500 to
- work around glibc 2.1.3 bug.
-
- (GAWK_AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on IRIX if the
- installer said otherwise.
-
- (GAWK_AC_SYS_LARGEFILE_FLAGS): Work around a bug in the QNX shell,
- which doesn't propagate exit status of failed commands inside
- shell assignments.
-
-Wed Jun 7 13:23:09 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Updated copyright dates in appropriate files.
-
-Mon May 22 17:29:43 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (clean): Get `*/core' too.
-
-Sun May 7 16:33:05 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (concat_exp): Change ref to `lnode->stlen' and
- `lnode->stptr' for SUBSEP to use `var_value->...'.
-
-Tue May 2 09:54:29 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- Fix referencing freed memory as shown by test/arynocls.* tests.
- * awk.h [Node_array_ref]: New node type.
- [orig_array]: New macro element in NODE structure.
- * field.c (do_split): Handle case for Node_array_ref, fetch
- the original array.
- * array.c (in_array, do_delete): Ditto.
- * eval.c (nodetypes[]): Add Node_array_ref string.
- (r_tree_eval): Handle case for Node_array_ref.
- (push_args): Push arrays as Node_array_ref, and pass them on.
- (pop_fcall): Don't unref lnode if it's an array when releasing
- local arguments. Check for both Node_array and Node_array_ref.
- (r_get_lhs): Choke on Node_array_ref as for Node_array.
- For Node_subscript, handle Node_array_ref.
-
-Tue May 2 09:52:12 2000 Bruno Haible <haible@clisp.cons.org>
-
- * io.c (redirect): After reopening a `struct redirect', move it to
- the head of the list.
-
-Sun Apr 2 17:51:40 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * re.c (re_update): Check if IGNORECASE has changed, and
- if so recompute the re. See test/igncdym.awk.
-
-Mon Mar 20 16:18:34 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * io.c (set_RS): Added a lint warning about multicharacter RS,
- per suggestion from Akim DeMaille (akim@epita.fr).
-
-Sun Feb 13 14:40:32 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (push_args): Fix from Nide Naoyuki <nide@ics.nara-wu.ac.jp>,
- re-assign `f' in case tree_eval moved fcall_list around.
-
-Sun Feb 6 11:39:33 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (op_assign): Fix it right. For ++ and --, get the lhs
- in the operations, do the op, and then return. For += etc,
- get the rhs FIRST, since the lhs can move around as a result,
- *then* get the lhs and do the operation. See test/opasnidx.awk.
-
-Tue Feb 1 18:41:40 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (op_assign): Reget the rval after regetting
- the left hand side. See test/opasnslf.awk for why.
-
-Thu Jan 27 18:06:31 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y (yylex): Made ']' not one of the characters
- that sets `want_assign' to false. `a[i] /= 2' was
- broken. Per bug report from Kristofer T. Karas
- <ktk@ktk.bidmc.harvard.edu>.
-
-Wed Dec 22 15:06:37 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y: Removed declarations of functions before
- definition of `tokentab[]'. They're redundant with
- what's in awk.h.
-
-Thu Dec 9 17:01:07 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (parse_escape): Add lint warning for unrecognized
- escape sequences.
-
-Mon Dec 6 15:17:34 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (usage): Changed bug reporting email addresses to
- be a reference to `Bugs' node in the online and printed
- doc, instead.
-
-Thu Dec 2 13:08:18 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (do_compl): Test `d' for negative inside the do_lint
- test, not uval. Ooops.
-
-Fri Nov 26 10:58:36 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_find): ALWAYS compare indexes as strings,
- don't use cmp_nodes in case they are numeric. Oh my.
- Talk about a Day 1 bug!
-
-Tue Nov 23 11:58:53 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.c (SYNTAX): Cast argument to `unsigned char' instead of
- &-ing with 0xFF. Hopefully somewhat more portable, ala 21 Nov 99
- changes to awk.y.
-
-Sun Nov 21 22:25:27 1999 Paul Eggert <eggert@twinsun.com>
-
- * aclocal.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
- problem with the QNX 4.25 shell, which doesn't propagate exit
- status of failed commands inside shell assignments.
-
-Sun Nov 21 20:33:35 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h (nextc): Remove declaration, don't need it here.
- awk.y (nextc): Cast values to unsigned char so that latin-1
- characters in strings don't turn themselves into EOF.
- Most notably y-umlaut, which is decimal 255.
-
-Mon Nov 1 20:00:25 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * regex.c (init_syntax_once): Move below definition of
- ISALNUM etc., then use ISALNUM to init the table, so that
- the word ops will work if i18n'ed.
- (SYNTAX): And subscript with 0xFF for Latin-1 characters.
-
-Mon Oct 25 18:37:13 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.h, main.c, io.c: Undo previous changes (22 Oct 1999).
- * main.c (main): Move call to `init_fields()' to before
- arg parsing. This allows `-v NF=blah' to work ok.
-
-Fri Oct 22 17:43:40 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (arg_assign): Add new arg, `initing' for icky special
- casing of -v of special variables. Use it to check for NF.
- May need to add other cases later.
- (pre_assign): Change call arg_assign, passing initing=TRUE;
- io.c (nextfile): Change call arg_assign, passing initing=FALSE;
- awk.h: Change prototype for arg_assign.
-
-Tue Oct 19 16:06:48 1999 Paul Eggert <eggert@twinsun.com>
-
- * io.c (close_redir): Don't munge errno between setting it and
- using it.
-
-Wed Oct 6 17:47:47 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * main.c (arg_assign): Return NULL on bad variable. Allows
- things like `./3x=stuff' to work as a filename.
-
-Thu Sep 23 21:35:46 1999 Paul Eggert <eggert@twinsun.com>
-
- * aclocal.m4 (GAWK_AC_SYS_LARGEFILE_FLAGS): Work around GCC
- 2.95.1 bug in HP-UX 10.20 or later. (Had to fix the fix. ADR. :-)
-
-Tue Sep 21 13:31:36 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * builtin.c (format_tree): For '0', only set zero_flag if we
- haven't seen the field width or precision yet.
-
-Mon Aug 9 13:06:01 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * array.c (assoc_lookup): Removed code that gave each array
- a private copy of each index. Balloons memory usage for
- no good reason that I can see. Just use dupnode in all
- cases.
- * configure.in: Check for $srcdir/.developing adds extra
- defines for my testing/debugging use. Yes, hack alert.
-
-Sun Aug 1 11:02:02 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * node.c (dupnode): Turn off FIELD when copying nodes.
- * array.c (do_adump, assoc_dump): New functions for array debugging.
- * awk.y (tokentab): Conditionally add "adump" function for debugging.
- * awk.h: Delcare new functions.
-
-Thu Jul 29 23:26:40 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- From wsanchez@apple.com:
- * Makefile.in (install-strip): New target, coding stds. compatibility.
- * config.guess, config.sub: Add MacOS X recognition.
-
-Thu Jul 29 19:09:19 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * awk.y (func_install): Make `function foo(foo)' a fatal error.
- eval.c (r_tree_eval): Diagnose use of a function name as a
- variable inside the function.
-
-Sun Jul 4 16:53:14 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * eval.c (eval_condition): Add extra braces to avoid
- gcc warning. I'm not going to bother for the library
- code like dfa and regex.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Wed Jun 30 16:10:11 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * awk.h: Add include of <assert.h>, and comment about config.h
- having to be included before any system headers. Otherwise,
- with egcs-2.91.66 and later on Linux systems, and possibly
- others, things break badly, due to the LFS macros.
- * awk.y, builtin.c, eval.c, field.c, io.c: Removed include
- of assert.h
-
-Wed Jun 9 11:39:19 1999 Paul Eggert <eggert@twinsun.com>
-
- Port the large-file code to AIX, HP-UX, and IRIX.
- Add cross-compilation support for large files.
-
- * config.guess, config.sub: New files.
-
- * configure.in (AC_CANONICAL_HOST):
- Add; GAWK_AC_SYS_LARGEFILE needs this.
- (GAWK_AC_SYS_LARGEFILE): Renamed from GAWK_AC_LARGE_FILES.
-
- * aclocal.m4 (GAWK_AC_SYS_LARGEFILE): Renamed from GAWK_AC_LARGE_FILES.
- Add support for AIX and HP-UX.
- (GAWK_AC_SYS_LARGEFILE_FLAGS, GAWK_AC_SYS_LARGEFILE_SPACE_APPEND,
- GAWK_AC_SYS_LARGEFILE_MACRO_VALUE): New macros.
-
- * acconfig.h (_FILE_OFFSET_BITS, _LARGEFILE_SOURCE, _LARGE_FILES):
- New macros.
-
- * Makefile.in (MISC): Add config.guess and config.sub so they get
- included in the distribution.
-
-Wed Jun 9 11:29:29 1999 Paul Eggert <eggert@twinsun.com>
-
- * io.c (iop_alloc): Don't mmap files whose sizes don't fit in `int'.
- [ This isn't really needed, as HAVE_MMAP is #undef'ed at the top,
- but it's there in case people want to take their life in their hands. ]
-
-Sun Jun 6 11:28:07 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.46: Release tar file made.
-
-Wed Jun 2 14:36:24 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * PORTS: Updated with a more recent list of systems
- that gawk compiles and tests ok on.
-
-Tue Jun 1 14:24:59 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.45: Release tar file made.
-
-Tue May 25 16:32:37 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * builtin.c (format_tree): More smarts for weird cases, such as
- zero precisions and zero values used with the `#' flag.
- Thanks to Andreas Schwab (schwab@gnu.org) for pointing these out.
-
-Wed May 19 14:02:54 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * io.c (do_close): Move test for `close(FILENAME)' to after
- loop through all open redirections. Fixes problems in obscure
- cases with redirections in END rules.
-
-Sun May 16 14:08:39 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * awk.y (yylex): Fix group of characters including ',' to
- set want_assign = FALSE. Fixes bizarre parsing problems in
- function call lists, for example.
- * io.c (get_a_record): Repair logic for single-leading-newline
- case.
-
-Tue May 11 16:48:11 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * aclocal.m4 (GAWK_AC_AIX_TWEAK): New macro.
- * configure.in: Call it
- * Makefile.in: (awklib/all): Pass CFLAGS on to sub-make so
- that password programs will get AIX magic defines. Avoids
- having to tweak program code for those in doc/gawk.texi.
-
-Mon May 3 16:56:23 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * array.c (do_delete): Don't free_temp(subs) until after all
- references to it are finished.
-
-Mon May 3 13:41:16 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.44: Release tar file made.
-
-Sun May 2 18:25:43 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * io.c (get_a_record): Do a really good job of stripping newlines
- from the front of records when RS = "" and there's only one
- newline at the front of the file, which the regex didn't catch.
-
-Wed Apr 28 12:27:49 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * configure.in: More HP stuff: fix the manual alloca code so that
- gawk will compile and link on HP systems. See the comments.
-
-Sun Apr 25 13:39:16 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (gawk): Add $(CFLAGS) to linking step.
- * configure.in: Correctly do AC_FUNC_GETPGRP on HP systems too.
-
-Tue Apr 13 20:21:00 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.43: Release tar file made.
-
-Tue Apr 13 19:02:20 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * io.c (useropen, pidopen): Add casts to int on arguments to
- silence gcc warnings.
- * regex.c (regcomp,regexec,regfree): Add ifdef for APPLE.
-
-Thu Feb 4 10:38:02 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * custom.h: Hacks for BeOS. Not documented in the manual right now.
- * configure.in: Hacks for BeOS. Check for HP-UX and define C_ALLOCA
- if not using gcc. I wish they'd just fix bison already.
-
-Sun Dec 20 16:57:38 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.42: Release tar file made.
-
-Sun Nov 15 21:05:39 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * io.c (gawk_popen): Add WIN32 to list of systems that use
- the non-real-pipe version. From the PC gawk guys.
-
-Wed Nov 4 11:32:24 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.41: Release tar file made.
-
-Tue Nov 3 16:24:35 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * eval.c (r_get_lhs): Fix the cases for the special variables,
- don't unref their current value if it's the same as the internal
- copy; perhaps the current one is used in a concatenation or some
- other expression somewhere higher up in the call chain. Ouch.
- See test/getnr2tm.awk.
-
-Sun Nov 1 15:24:52 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * builtin.c (format_tree): Improve handling of zero-fill
- when a precision is present. See test/zeroflag.awk.
-
-Wed Oct 28 20:40:17 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * eval.c (r_tree_eval): Case for Node_concat. Get lengths
- separately, in case one expression has a side effect that
- that changes another. Ugly, but it keeps gawk from core
- dumping. See test/nasty.awk.
-
-Sun Oct 18 21:27:24 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * awk.y (append_right): Bug fix, if `list' or `new' are NULL,
- return `list', so that things don't break too badly.
- * regex.c (re_compile_fastmap): Remove unused variable `num_regs'.
-
-Thu Oct 8 19:36:57 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * BETA Release 3.0.40: Release tar file made.
-
-Mon Jul 27 10:14:33 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * node.c (parse_escape): Remove assignment with side effects
- from ISXDIGIT test. Thanks to "Mihai T. LAZARESCU"
- <mihai@ccmserv.polito.it> for pointing this out.
-
-Mon Apr 27 11:31:32 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * main.c (usage): Fix the email address for the bug list.
- (copyleft): Update the copyright year.
-
-Mon Mar 23 21:22:32 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * eval.c (r_get_lhs): Make sure that values of type
- Node_param_list don't have the FUNC flag set. This means
- we don't allow the use of a function name as a variable or
- array from within the function.
-
-Sun Mar 22 19:12:32 1998 Paul Eggert <eggert@twinsun.com>
-
- * aclocal.m4 (GAWK_AC_LARGE_FILES): New macro that checks for
- large file support, and updates CPPFLAGS, LDFLAGS, LIBS as
- needed.
- * configure.in: Call GAWK_AC_LARGE_FILES.
- * Makefile.in (CPPFLAGS, LDFLAGS): Let autoconf configure.
- (COMPFLAGS): Add $(CPPFLAGS).
-
-Mon Mar 16 14:06:41 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * field.c (using_FIELDWIDTHS): New macro.
- (using_fieldwidths): Use new macro.
- (do_split): In case for FS_DFLT, also check that
- we're not using FIELDWIDTHS. Otherwise, split() would use
- FIELDWIDTHS, not current value of FS. Oops.
-
-Sun Nov 16 20:08:59 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * builtin.c (sub_common): Fix for count of matches in gsub
- from Geert.Debyser@esat.kuleuven.ac.be.
-
-Wed Oct 15 03:38:12 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * field.c (set_FS): Use `sc_parsefield' if the value of FS is not
- alphabetic OR if not ignoring case. Bug fix if IGNORECASE
- is true and FS happens to be '^'. Sheesh, talk about obscure.
- (rebuild_record): Add more smarts to the code that sets up the
- fields. Thanks to Alan J. Broder (ajb@dtmr.com).
-
-Sun Oct 5 11:56:52 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * configure.in: If ISC add -D_SYSV3 to CFLAGS, per email from
- Mario Vanoni (vanonim@dial.eunet.ch).
-
-Fri Sep 26 00:57:49 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * awk.y (append_right): Return if either list is NULL. Prevents
- syntax errors from causing core dumps.
-
-Wed Sep 17 15:34:15 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * field.c (rebuild_record): Set things up so that all fields point
- into the new record and release any changed fields without
- causing memory leaks. Avoids problems when fields are extended
- with the value of $0 or other fields and then $0 is assigned to.
-
-Mon Sep 15 16:12:55 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * builtin.c (do_print): When testing for NUMBER, make sure
- it's not a string too. Thanks to Michael Brennan for
- clarifying the semantics.
-
-Sun Sep 14 19:55:12 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * node.c (format_val): Always format values ourselves: avoids
- problems if OFMT is bizarre, like %s.
-
-Sun Sep 14 00:08:53 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * io.c (get_a_record): Replace all occurrences of the test
- `grRS == FALSE' with `RS_is_null' which makes ` RS = "\0" '
- actually work, is clearer code, and actually makes use of
- the `RS_is_null' variable!
-
-Sun Aug 17 07:15:12 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * field.c (set_FS): Change logic to always set parse_field, even
- if FS hasn't changed. Thanks to Igor Sheyn for catching this.
-
-Wed Aug 6 21:04:37 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * io.c (VMS et al gawk_popen): Use pclose, not fclose, if
- iop_alloc fails.
-
-Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * awk.y [variable]: Fix case for subscript if $3 == NULL.
-
-Sun Jul 27 22:47:30 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * awk.y (get_src_buf): Don't close file if it's stdin.
-
-Sun Jul 27 22:47:15 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * io.c (#if VMS: vmsrtl_fileno): New routine.
- (#if VMS: fileno): New macro substituted for stdio one.
-
-Thu Jul 17 20:05:59 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * builtin.c (do_print): When OFMT != CONVFMT, create a new
- temporary node with just the numeric value valid and format it,
- and use that for printing. Avoids memory corruption.
-
-Wed Jul 16 10:01:16 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * regex.c: When SYNTAX_TABLE is defined, but not emacs, then
- CHAR_SET_SIZE is not defined, though used in regcomp. It should
- be taken out of #ifdef SYNTAX_TABLE. Fix from bug group, from
- Akim Demaille, demaille@inf.enst.fr.
- * awk.h (isnondecimal): Make test a little smarter.
- * builtin.c (nondec2awknum): Add bailout for decimal numbers, e.g.
- `00.1'. Fix from Larry Schwimmer <rosebud@cyclone.Stanford.EDU>.
-
-Thu Jun 19 19:00:40 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * eval.c (interpret): case Node_K_next, Node_K_nextfile: fatal
- error if called from BEGIN or END.
- (Fixed completely Mon May 3 13:31:42 1999.)
-
-Mon Jun 9 22:40:04 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * builtin.c (nondec2awknum): Allow `f' and `F' in hexadecimal numbers.
- Gotta get more sleep...
- * array.c (assoc_lookup): Fix from Tom Karzes (karzes@equator.com)
- for memory leak when forcing type to Node_var_array.
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Wed May 14 08:06:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (do_close): Add lint warning if closing something that
- isn't open.
-
-Tue May 13 12:14:12 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * random.c, builtin.c: Remove __GLIBC__ tests, since it breaks
- `make test'. I prefer consistency across platforms.
- * Makefile.in (gawk): Undid April 25 changes and added comment.
- Putting COMPLAGS in breaks with -g on VMS POSIX.
-
-Sun May 11 14:48:04 1997 Darrell Hankerson <hankedr@mail.auburn.edu>
-
- * io.c [MSC_VER]: Add cases for WIN32.
- * regex.c [MSC_VER]: Add cases for WIN32.
-
-Sun May 11 07:04:01 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_print): In the loop that evaluates each expression
- to be printed, do a dupnode to avoid bizarre output. Thanks to
- Michal for finding this problem.
- * awk.y (yylex): Fix scanning of hexadecimal constants.
-
-Wed May 7 15:09:25 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (get_a_record): Fix casetable indexing with cast to int.
- Keeps Michal happy.
-
-Tue May 6 16:40:19 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (func_call): Removed unneeded variables.
-
-Mon May 5 21:17:37 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * missing/strftime.c [case 'v', VMS_EXT]: For VMS date format, two
- digit day of month should not be zero padded on the 1st through
- the 9th.
-
-Mon May 5 06:33:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * regex.h, regex.c: Merge with current GLIBC version.
-
-Mon May 5 06:33:47 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * io.c (nextfile): Move the check for null return from iop_open
- in the normal case and add one for the "no args" case.
-
-Fri Apr 25 16:52:33 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * array.c (grow_table): Add a bunch more large primes so arrays
- can get really big. Thanks to christos@deshaw.com.
- * all files: Remove ifdef'ed out code and update copyrights.
- * Makefile.in (gawk): Add $(COMPFLAGS) to command line.
- * eval.c (flags2str): Added case for FIELD.
-
-Thu Apr 24 22:39:23 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * COPYING: Changed to current official version from FSF.
- * regex.c: Merge with GLIBC version.
- * awk.h [_GNU_SOURCE]: Bracket definition inside ifdef.
- (NODE.source_line): Move name member out of `x' union and
- into `nodep'; avoids problems doing diagnostics.
- (nondec2num): Put decl into #if BITOPS || NONDECDATA
- * posix/gawkmisc.c, missing/system.c, missing/strtod.c,
- missing/strerror.c: Move to generic GPL statement at top.
- * builtin.c (nondec2num): Put into #if BITOPS || NONDECDATA
-
-Wed Apr 23 22:14:14 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * dfa.c: Misc changes for really pedantic SGI compilers.
- * builtin.c: Bracket defs of random() etc for GLIBC.
- * random.c: Bracket whole file for GLIBC.
- * configure.in: Extra goop for GETPGRP test for VMS POSIX.
- * custom.h [VMS]: Remove hard definition of GETPGRP_VOID.
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Tue Apr 15 21:35:45 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- NEW UNDOCUMENTED FEATURE. USE THE SOURCE LUKE!
- * acconfig.h [NONDECDATA]: New macro.
- * awk.h: Add decl of do_strtonum.
- * awk.y (tokentab): Add entry for strtonum function.
- * builtin.c (do_strtonum): New function.
- * configure.in (non-decimal-data): New --enable-* option.
- * node.c (r_force_number): Change to allow non-decimal data inside
- ifdef NONDECDATA.
-
-Tue Apr 15 06:32:50 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * missing/strftime.c (malloc, realloc, getenv, strchr): Only
- declare these when STDC_HEADERS is not defined.
- <stdlib.h, string.h>: Include these when STDC_HEADERS is defined.
- * awk.h (freenode, tree_eval, m_tree_eval): Reorganize definitions.
- * alloca.c (malloc): If malloc is already defined as a macro,
- presumeably by config.h, don't define or declare it.
-
-Wed Apr 9 22:45:27 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in [COMPFLAGS]: Per suggestion from Karl Berry, put
- $(CFLAGS) last.
-
-Tue Apr 8 23:54:46 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (interpret): For Node_K_break and Node_K_continue, if
- treating them like `next', also check the function call stack
- and pop it if necessary.
-
-Mon Apr 7 18:22:37 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h: Add decls of new routines do_compl() and set_loc().
- * awk.y (tokentab): Add entry for "compl" function.
- * builtin.c (do_compl): New function to do ones complement.
- (do_substr): Rationalized yet again, now notices negative start
- and length parameters.
- * eval.c (push_args): Fix if call_list gets realloc'ed in the
- middle of things. Avoids crash for deeply nested function calls.
- * main.c (catch_sig): Add call to set_loc().
- * msg.c (set_loc, srcfile, srcline): New function and private
- variables to help out in tracing down source of error messages.
-
-Fri Mar 28 08:42:27 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (iop_alloc, iop_close): Undo changes of Feb 11, apparently
- other cleanups in io.c made mmap stuff start working again.
- BAH! It's a mess, the test suite still fails. I'm leaving the
- mmap stuff undefined for now. It'll probably get ripped out in 3.1.
-
-Thu Mar 27 08:48:57 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * custom.h [_SEQUENT_]: Undef HAVE_MMAP.
-
-Wed Mar 26 09:08:16 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (iop_alloc): Fix definition to make it static.
-
-Mon Mar 24 23:09:07 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * field.c (init_fields, etc..): More clean up use of Null_field
- and the various flags.
- * node.c (unref): If a field, free the node itself. Fixes
- memory leak problems.
-
-Sun Mar 23 22:51:09 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h [FIELD]: New flag for node->flags field.
- * builtin.c (sub_common): If FIELD is set, dup the string.
- * field.c (init_fields): Set up a new Null_field global var.
- (init_fields, set_field, set_record) use the FIELD flag.
- (getfield): Use Null_field instead of private variable.
- * io.c (wait_any): Comment out calls to pclose and iop_close,
- caused weird race conditions. See test/pipeio1.awk. Thanks
- to Darrell Hankerson for tracing this one down.
-
-Tue Mar 18 20:57:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * dfa.c (inboth): Free templist; plugs memory leak.
- * field.c (init_fields, grow_fields_arr, set_field, rebuild_record,
- set_record): Remove PERM flag from entries in fields_arr[]. Fixes
- nasty memory leak.
-
-Tue Mar 18 06:33:00 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.y (dup_parms): Robustified against parameter errors.
-
-Sun Mar 16 21:31:40 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- NEW UNDOCUMENTED FEATURE. USE THE SOURCE LUKE!
- * acconfig.h [BITOPS]: New macro. If set, do octal & hex and bit ops.
- * awk.h [isnondecimal]: New macro, and decl of new functions.
- * awk.y (yylex): Add recognition of octal and hex constants.
- * builtin.c (do_and, do_or, do_xor, do_lshift, do_rshift): New
- functions that do bit operations.
- (nondec2awknum): New function to convert octal or hex to double.
- * configure.in: Add AC_ARG_ENABLE for bit operations.
- * node.c (r_force_number): Add octal and hex conversion.
-
-Sun Mar 16 21:28:56 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h [IOP_NOFREE_OBJ]: New macro.
- * io.c (iop_open, iop_alloc): Add new third parameter, which is
- either NULL, meaning allocate a new IOP, or the address of one
- already allocated. Have a static one in the `nextfile'
- routine, and use the IOP_NOFREE_OBJ flag for it. All of this
- keeps us from reading freed memory. The `swaplns' test fails
- otherwise.
- (iop_close): If IOP_NOFREE_OBJ is set, don't free the IOBUF.
-
-Wed Feb 26 06:21:02 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (in_function, pop_fcall_stack, pop_fcall, push_args):
- New functions. These manage "frames" of awk function call arguments.
- The problem is that a `next' or a `nextfile' from a function
- leaks memory. These changes allow us to free up that memory.
- (interpret): for Node_K_next and Node_K_nextfile, check if in
- a function call and free all function call frames.
-
-Fri Feb 21 06:23:19 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- Misc changes from Katsuyuki Okabe <HGC02147@niftyserve.or.jp>:
-
- * builtin.c (do_substr): Change a %d to %ld in warning message.
- * eval.c (op_assign): Fix format string for warning about %=.
-
-Wed Feb 19 23:29:02 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * main.c (main): Add do_intervals to condition that causes
- resetup() to be called again. Makes the --re-interval option
- actually work. What a concept.
-
-Fri Feb 14 09:47:31 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c [#include "awk.h"]: Undef HAVE_MMAP to just use the old code.
- Something is causing a file descriptor leak, and this is getting to
- be just too much hair. I reserve the right to rip out the mmap
- code entirely at a future date.
-
-Tue Feb 11 06:28:29 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (iop_alloc): For an mmap'ed file, close the file descriptor,
- and then touch each page to get a private copy. Fixes nasty case
- of truncating our input file.
- (iop_close): Don't call close on mmap'ed file.
-
-Wed Feb 5 17:59:04 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (interpret): For Node_K_delete, just call do_delete; let
- it handle the case of `delete array'.
- * array.c (do_delete): Changed to handle case of `delete array',
- and made smarter if the array is actually an uninitialized
- parameter.
-
-Sun Jan 26 22:58:29 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * getopt.h, getopt.c, getopt1.c: Replaced with new versions from
- GLIBC 2.
-
-Sun Jan 19 23:37:03 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (nodetype2str): Not static, for debugging.
- (flags2str): New function for debugging.
- * field.c (get_field): Add new var that is like Nnull_string but
- does not have numeric attributes, so that new fields are strings.
- (set_record): Turn off PERM flag before unrefing fields and field 0.
- * array.c (in_array): Always evaluate subscript, could have
- side effects.
- * builtin.c (do_strftime): Way increase size of buffer to make sure
- we don't have overflow problem. Keeps Paul Eggert happy.
- * custom.h [__amigaos__]: Define fork to vfork. From Fred Fish.
- * dfa.c: Move include of config.h to top, for RSXNT. From Kai
- Uwe Rommel.
- (ISALPHA, etc): Change from Jacob Engelbrecht (jaen@novo.dk)
- to better handle non-ASCII environments.
- * gawkmisc.c: Remove amigados case, posix should now work fine.
- * amiga/*: Nuked per previous entry.
- * Makefile.in: Removed all references to amiga
- * io.c [HAVE_SYS_PARAM_H]: Add #undef RE_DUP_MAX to avoid
- spurious conflict with regex.h.
- (flush_io): Remove amiga ifdefs, not needed anymore.
- (spec_setup): Set getrec field for special files. Fix from
- Mark Gray (markgray@pdt.net).
- * node.c (more_nodes): Fix to get the last entry in the array.
-
-Wed Jan 8 17:42:37 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
-
- * io.c (mmap_get_record): Fix return value if file ends without
- record separator.
-
-Fri Jan 3 19:57:16 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * awk.y (get_src_buf): Test for an empty source file by detecting
- an initial read of 0 bytes rather than by relying on info from
- stat().
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Wed Dec 25 11:17:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install, uninstall): Use $(srcdir)/patchlevel.h.
- Thanks to Richard Levitte, LeViMS@stacken.kth.se.
- (install): Remove chmod command; let $(INSTALL_PROGRAM) use -m.
-
-Mon Dec 23 20:36:59 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * custom.h (#if VMS_POSIX): Define GETPGRP_VOID.
-
-Fri Dec 20 08:59:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * getopt.c, getopt1.c: Comment out the `#if defined (_LIBC) ||
- !defined (__GNU_LIBRARY__)' and `#endif' to force use of this
- getopt, even on systems like Linux. This will be handled
- better in 3.1 / glibc 2.
-
-Thu Dec 19 22:52:39 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.y (yylex): In several places, after yyerror(), add call to
- exit(). Otherwise, infinite messages. This should probably
- be handled better.
-
-Wed Dec 18 22:42:10 1996 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * getopt.c (_getopt_internal): If 'W' and ';', if optind == argc,
- return c, don't fall through.
-
-Wed Dec 18 10:09:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * configure.in [AC_PREREQ]: Update to 2.12 in order to switch to
- autoconf 2.12. Lots of other files will be rebuilt automatically.
- [AM_SANITY_CHECK_CC]: Removed, autoconf does it now.
- * aclocal.m4 [AM_SANITY_CHECK_CC]: Removed, autoconf does it now.
-
-Tue Dec 17 22:23:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_strftime): Fix case if format string is "".
- Also fix it if format is not "" but result of strftime is "".
- See comments in code.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Tue Dec 10 22:39:41 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (dist): Add dependency on `info'. Remove line that
- does makeinfo.
- (install): Use $(LN) not $(LN_S) to link gawk gawk-version.
-
-Sun Dec 8 07:53:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (gawk): Took COMPFLAGS out of link line for help
- on VMS posix. Shouldn't (I hope) affect anything else.
-
-Thu Nov 28 11:52:24 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * configure.in (AC_PROG_INSTALL): Set INSTALL to install-sh.
-
-Tue Nov 26 22:42:00 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * PORTS: Updated list of systems.
- * Makefile.in (install): Fix some typos and add some improvements
- for Ultrix.
-
-Sun Nov 24 22:16:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_printf): If no args, fatal error. Return silently
- if --traditional.
-
-Thu Nov 7 20:54:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (inrec): Make sure EOF hasn't already happened before
- trying to read; prevents accessing freed buffer. Thanks to
- Michal Jaegermann.
- * Makefile.in [AWKSRC]: Add random.h.
- * random.h: New file, redefines names of the `random' functions.
- * random.c, builtin.c: Add include of random.h.
-
-Thu Nov 7 09:06:21 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.y (snode): Undo 4 Oct change, put do_split code back.
- * field.c (do_split): Restore old code; add test for CONST, so
- that re_parse_field is used if third arg to split is a regexp
- constant.
-
-Mon Nov 4 12:57:11 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * main.c (main): Research -m[fr] options don't need literal '='
- characters. Brian's documentation was confusing. Fixed, not
- that anyone actually uses these options with gawk.
-
-Sun Nov 3 11:23:21 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * field.c (def_parse_field): Add \n to list of acceptable white space.
- (posix_def_parse_field): New routine, just like def_parse_field(),
- but only allows space and tab as separators.
- (do_split, set_FS): Make appropriate choice between the two
- *def_parse_field() routines.
-
-Fri Oct 25 10:13:06 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * configure.in: Remove test for random.
- * Makefile.in: Add random.c to list of files always compiled.
- * missing.c: Remove HAVE_RANDOM test.
- * builtin.c: Remove ifdef's for HAVE_RANDOM.
- [GAWK_RAND_MAX]: Use constant we know works with our random().
- * random.c: New file - moved from missing/ directory.
-
-Wed Oct 23 19:46:01 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * builtin.c (do_tolower, do_toupper): Add `unsigned char *' casts.
-
-Tue Oct 22 21:27:52 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c [GAWK_RANDOM_MAX]: Try to make definition a bit
- smarter; don't use RAND_MAX if it's equal to SHRT_MAX, blows
- things up.
-
-Tue Oct 22 08:49:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * main.c (copyleft): Update copyright date to 1996.
- * Too many files to list: Update copyright date to 1996.
-
-Sun Oct 20 12:21:09 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.y, dfa.c, eval.c, io.c, re.c: Added various FIXME comments.
-
-Sat Oct 19 22:06:42 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (nodetype2str): Make static, add prototype.
- * field.c (sc_parse_field): Cast array subscripts to int to
- shut up gcc warnings.
- * gawkmisc.c: Add prototype for xmalloc.
- * awk.h: Add prototype for getredirect.
- * builtin.c (do_fflush): Remove extern decl of getredirect.
- * io.c (get_a_record, mmap_get_record): Change decl of rs to int,
- to shut up gcc warnings.
- * awk.y (isassignable): Add a default to switch to quiet gcc.
- * getopt.c (_getopt_internal): Give default value to `indfound'.
-
-Fri Oct 18 09:00:49 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * regex.h [RE_SYNTAX_AWK]: Add RE_CONTEXT_INDEP_ANCHORS.
-
-Thu Oct 17 22:32:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * aclocal.m4 [AM_SANITY_CHECK_CC]: Added.
- * configure.in: Use it.
-
-Thu Oct 17 21:43:25 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * configure.in: Add checks for locale.h and setlocale().
- * awk.h: Include locale.h and define out setlocale() if not available.
- * main.c (main): Call setlocale().
- * builtin.c (do_tolower, do_toupper): Use unsigned char pointers,
- to get other charsets right in different locales.
-
-Wed Oct 16 21:32:53 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (format_tree): Change initial buffer size to 512
- and use a constant. Allows large values of %f per bug report
- from sheyn@cs.bu.edu.
-
-Wed Oct 16 21:22:08 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in [MISC]: Removed TAGS and tags.
- (local-distclean): Added TAGS and tags.
- (maintainer-clean): Removed TAGS and tags.
-
-Wed Oct 16 12:28:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * main.c (version): Add call to copyleft(), per new standards.
- version.c: Fix text of version string to match new standards.
-
-Sun Oct 6 22:19:45 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * regex.c: Updated to Emacs 19.34b base.
-
-Sun Oct 6 21:57:34 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * re.c (make_regexp): Fixed to handle \8 and \9 in the middle
- of a regexp.
-
-Fri Oct 4 10:26:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.y (snode): Remove case for do_split; always making the
- third arg a Node_regex is wrong.
- * field.c (do_split): Rationalized to distinguish `/ /' from `" "'.
- Generally fixed up.
- * node.c (parse_escape): Allow single digit \x escapes.
-
-1996-10-02 Paul Eggert <eggert@twinsun.com>
-
- * builtin.c (format_tree): Fix bug in %d and %i format: NaNs, and
- values in the range LONG_MAX+1 .. ULONG_MAX, were mishandled.
- Don't assume that double values <= -1 are converted to unsigned
- long in the expected way; the C Standard doesn't guarantee this.
-
-1996-10-02 Paul Eggert <eggert@twinsun.com>
-
- * awk.h (INT_MAX): Remove unused symbol.
-
-Mon Sep 30 22:19:11 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * getopt.c (_getopt_internal): If 'W' is in the optstring followed
- by a ';' then search through the long opts table. This makes
- `-W foo=bar' same as `--foo=bar'.
- * main.c (main): 'W' now prints an error message.
- (gawk_option): Deleted the routine.
-
-Sun Sep 29 23:04:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (sub_common): Fix several bugs with gsub when
- matching null strings. See test/gsubtest.awk.
-
-Fri Sep 20 17:35:54 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * alloca.c (NULL): Don't define if <config.h> has already done so.
-
-Fri Sep 20 11:54:31 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_print): Evaluate all the expressions first and
- then print them. Avoids surprising behavior. See test/prtoeval.awk
- for an example.
-
-Tue Sep 10 06:21:40 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h [FUNC]: New flag, marks a Node_parameter_list as really
- being the function name; allows more checking in awk.y.
- * awk.y (isassignable): Now takes a NODE * instead of a type, to
- check if a function parameter is marked FUNC, then it's the function
- name, which is not assignable. Fix call from snode().
- (function_prologue): Mark function name as FUNC.
- (yyerror): Don't call exit() anymore; gawk will now report
- all syntax errors.
-
-Sun Sep 1 19:36:30 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * field.c (rebuild_record): After building new field 0, go through
- all old fields, and if they used to point into the old one,
- have them point into the new one. Then turn off PERM flag before
- unref-ing field 0.
-
-Wed Aug 28 19:13:34 1996 Arnold D. Robbins <arnold@math.utah.edu>
-
- * eval.c (set_IGNORECASE): Correctly parenthesize bit operations
- in test and fix logic for string value.
-
-Wed Aug 28 22:06:33 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * main.c (usage): Add email addresses for bug reporting, per
- change in GNU Coding Standards from RMS.
-
-Sun Aug 11 23:13:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): Correct use of $(INSTALL_PROGRAM).
-
-Thu Aug 8 23:29:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * parse.y (isassignable): New function, checks in type can
- be assigned to.
- (snode): Changed checking for 3rd arg of gsub to be more
- general, supersedes earlier change.
-
-Thu Aug 8 13:58:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * parse.y (snode): If third arg to sub or gsub is builtin
- function, complain, since can't substitute into result.
- * eval.c (r_get_lhs): Diagnose Node_builtin as an error, instead
- of falling through into default case and using cant_happen().
-
-Thu Aug 1 07:13:14 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * regex.h [RE_DEBUG]: New macro.
- [RE_SYNTAX_GNU_AWK]: Add RE_DEBUG.
- [RE_SYNTAX_POSIX_AWK]: Add RE_INTERVALS.
- * regex.c (re_set_syntax): Add #ifdef DEBUG code to turn on `debug'
- flag if RE_DEBUG set, and turn off debug if not set and debug
- was on.
- * main.c (main): Remove `do_intervals = TRUE' from `if (do_posix)',
- it's now handled in the definition of RE_SYNTAX_POSIX_AWK.
-
-Mon Jul 29 17:49:07 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * io.c (O_ACCMODE): Define it if <fcntl.h> doesn't.
-
-Mon Jul 29 12:02:48 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (set_IGNORECASE): Made somewhat smarter. gawk -v IGNORECASE=0
- was acting the same as -v IGNORECASE=1. Thanks to Darrell Hankerson
- for the bug report.
-
-Fri Jul 26 12:04:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h (format_val): Add declaration of new routine.
- * node.c (format_val): New routine, abstracts old guts of
- r_forcestring; accepts format string and index as additional params.
- (r_force_string): Changed to call format_val.
- * builtin.c (do_print): Don't tree_eval the tree twice in case
- OFMTidx != CONVFMTidx; doing so could cause side effects
- (from bug report by Tobias Rettstadt, xassp@ipds.uni-kiel.de).
- Instead, call format_val.
-
-Mon Jul 22 21:59:15 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (iop_close): Change check for "is $0 in the input buffer"
- to use `< (iop->buf + iop->secsiz + iop->size)' instead of
- `< iop->end'. The latter is bogus if EOF has been hit on the
- file. Fix from Darrel Hankerson based on bug report by
- Charles Howes (howes@grid.direct.ca). See test/eofsplit.awk.
-
-Thu Jul 18 19:43:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (sub_common): Backed out change of Feb 14 in favor of:
- (do_gensub): Changed to use make_string and then to |= TEMP
- flag, based on bug report and patch from Katsuyuki Okabe,
- hgc02147@niftyserve.or.jp.
-
-Thu Jul 18 19:23:53 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * custom.h: Added ifdef for QNX, based on bug report from
- Michael Hunter, mphunter@qnx.com.
-
-Mon Jul 15 09:31:01 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (redirect): When finding the rp pointer, if it's not
- NULL, set str = rp->value. This gets the '\0' terminated
- version. Motivated by bug report from John Hawkinson
- (jhawk@bbnplanet.com).
-
-Sun Jul 14 18:40:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * configure.in: Added call to AC_CHECK_LIB(m, fmod), since
- apparently some systems have fmod in the math library.
- Portability: The Holy Grail. Sigh.
-
-Sun Jul 14 18:08:01 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h: Add Jim Meyerings ISASCII etc hacks for ctype macros.
- * builtin.c (do_toupper, do_tolower, sub_common): Changed to use
- upper-case versions of ctype macros.
- * main.c (main): Ditto.
- * node.c (r_force_number, parse_escape): Ditto.
-
-Sun Jul 14 06:34:18 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * field.c (set_record): Made it always do the PERM flag.
- Fixes cases where $0 is assigned to, e.g. by gsub, keeps
- the fields valid.
- (get_field): Removed the call to reset_record in
- case where ! field0_valid. We want to leave the fields alone
- if they've been changed.
-
-Thu Jul 11 23:04:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (devopen): Change tests of (flag & O_fooONLY) to
- (flag & O_ACCMODE) == O_fooONLY. Per (long standing) bug
- report from Chapman Flack.
- (close_redir): Change final conditional to just (status != 0)
- so that ERRNO always set; the warning had its own `if (do_lint)'
- anyway.
- * eval.c (do_split): Force type of array to be Node_var_array
- instead of Node_var. Per (long standing) bug report from
- Chapman Flack.
-
-Thu Jul 11 22:17:14 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): Added symlink of gawk to awk if
- no awk in $(bindir).
- (LN_S): New variable for symlinking.
- (uninstall): Remove awk if it's the same gawk.
- * Configure.in: Added call to AC_PROG_LN_S for Makefile.in.
-
-Sun Jul 7 15:47:13 1996 Arnold D. Robbins <arnold@infographix.com>
-
- * main.c (main): Made `--posix' turn on interval expressions.
- Gawk now matches its documentation. (What a concept!)
-
-Wed Jul 3 15:02:48 1996 Arnold D. Robbins <arnold@infographix.com>
-
- * regex.h, regex.c: Upgraded to changes from Emacs 19.31.
-
-Fri May 17 08:46:07 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (get_a_record): Added `continued' flag. Fix from
- Darrell Hankerson for when RS = "\n|something".
-
-Wed May 15 02:34:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (awklib/all): Now depends on gawk, fixes problem
- with parallel make.
-
-Tue May 14 15:02:52 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (format_tree): Fix handling of '*' to deal with
- negative value for fieldwidth -- make positive and turn on
- left justify. Per bug report from Michael Brennan.
-
-Sun May 12 20:42:06 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * eval.c (r_get_lhs): case Node_subscript. Check if array name
- is actually a function, fatal error if so.
-
-Sun May 5 10:11:52 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (redirect): Call flush_io() before creating a new output pipe,
- per bug report from Brian Kernighan (bwk@research.bell-labs.com).
-
-Fri Mar 15 06:38:33 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): Use $(INSTALL_PROGRAM), not $(INSTALL).
- (local-distclean): Add `*~' to list of files to be removed.
- (CFLAGS): Now contains just @CFLAGS@.
- (COMPFLAGS): Replaces use of CFLAGS, has CFLAGS plus all the
- other stuff.
-
-Wed Mar 13 14:19:38 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (mmap_get_record): Fixed to not place sentinel at end
- of mmap'ed object. Won't work if file is exact multiple of
- disk block size. See comments in code for more info.
- Thanks to Rick Adams (rick@uunet.uu.net) for help in testing.
-
-Sun Mar 10 22:50:23 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * io.c (do_close): Notice if we were called as `close(FILENAME)'
- and arrange to close the current input file. This turns out
- to be easy to do, just call `nextfile(TRUE)'. Based on bug report
- from Pascal A. Dupuis, <dupuis@lei.ucl.ac.be>.
-
-Thu Mar 7 08:08:51 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * field.c (init_fields, grow_fields, set_field, rebuild_record):
- Nuke the `nodes' array everywhere. Anytime a field is unref'ed,
- allocate a new node that is a copy of Nnull_string. This avoids
- subtle memory management problems when doing a lot of assignment
- to fields, and tweaking of NF. Make sure that fields_arr[0] always
- has a type of Node_val!
- * field.c (set_NF): If NF is decremented, clear fields between
- NF and parse_high_water, otherwise if NF incremented, clear
- fields between parse_high_water and NF.
- * eval.c (nodetype2str): New function, used for diagnostics.
- (interpret): Use nodetype2str when finding invalid node.
-
-Mon Mar 4 09:02:28 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_toupper, do_tolower): Use isascii along with
- isupper/islower before changing case, in case characters have
- the high bit set. This is a hack.
-
-Mon Feb 26 22:24:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (sub_common): If no match, and called from gensub,
- don't free the temporary string, since the tmp_number then
- writes over it.
-
-Sun Feb 25 23:13:01 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (format_tree): Fixed %c to treat user input as
- numeric also by adding test for MAYBE_NUM.
-
-Tue Feb 20 12:25:50 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * configure.in: Added AC_FUNC_MMAP call and add madvise to
- list of functions to look for.
- * awk.h [IOP_ISMAPPED]: New flag value for mmap support and new
- `getrec' structure member in struct iobuf.
- * io.c (iop_alloc, iop_close): Changed to map/unmap input file
- into memory if possible.
- (mmap_get_record): New function to actually retrieve the
- record from mmaped file.
-
-Thu Feb 1 08:56:46 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_substr): Fixed lint message to use indx+1 when
- start position is past end of string.
-
-Sun Jan 28 07:00:56 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_substr): Rationalized handling of missing length
- argument, as well as various accompanying lint warnings. Previous
- code was slightly bogus. Talk about your Day 1 bugs.
-
-Thu Jan 25 14:09:11 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * builtin.c (do_substr): If length exceeds length of actual
- string, do computation of needed substring length *after*
- the lint warning.
-
-Wed Jan 24 10:06:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (gawk): Add $(CFLAGS) to link line.
- (Makefile): Target depends on the Makefile.in files.
- (OTHERS): Added TAGS and tags to the distribution.
- (local-distclean): New rule.
- (distclean): Use it.
- (maintainer-clean): Don't `make distclean' before running submakes,
- since that removes makefiles needed for the submakes.
- * builtin.c (do_strftime): Remove hard coded limit on length of result.
- Based on code from Paul Eggert (eggert@twinsun.com).
-
-Mon Jan 22 13:16:37 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * main.c (usage): Takes new fp parameter which is either
- stdout for `--help' (per the GNU Coding Standards) or stderr
- if an error occurs. Fix all calls.
- (version): Prints to stdout per the coding stds.
- (copyleft): Prints to stdout now, not stderr, and exits.
-
-Fri Jan 19 08:10:29 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * regex.h [RE_GNU_AWK]: Added RE_CONTEXT_INDEP_OPS to set of
- bits we turn off for regular operation. Breaks things like
- /^+[0-9]+/ to match a literal `+' at the beginning of, say,
- a phone number.
-
-Wed Jan 10 23:19:36 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * 3.0.0 polished up and release tar file made.
-
-Wed Dec 27 11:46:16 1995 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * 2.94.0 released to porting group (no, I haven't been good
- about this file; I'll do better once 3.0 is released).
-
-Mon Aug 28 23:04:30 1995 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * awk.h updated for NeXT - bracket TRUE/FALSE
- * io.c (get_a_record): Removed shadowing of 'start' in
- * Makefile.in and doc/Makefile.in: Fixed to use gawk.1 and gawk.texi,
- instead of gawk.1.in and gawk.texi.in.
-
-Mon Aug 25 11:04:30 1995 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * 2.90.0 released to porting group.
-
-Fri Aug 18 12:43:31 1995 Arnold D. Robbins <arnold@puny.ssc.com>
-
- * ChangeLog created.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/ChangeLog.0 b/ChangeLog.0
new file mode 100644
index 00000000..af6bd99f
--- /dev/null
+++ b/ChangeLog.0
@@ -0,0 +1,9885 @@
+Mon Jun 20 20:33:26 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (dfaanalyze): Allocate the right number of leaves to
+ avoid crashes. Thanks to Jim Meyering.
+
+Mon Jun 20 20:22:35 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (setbit_c, setbit_case_fold_c): Compare btowc result against
+ WEOF. Thanks to Eli Zaretskii for pointing out the problem.
+
+Mon Jun 20 20:22:26 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * dfa.c (addtok_wc): enclose prototype within #if MBS_SUPPORT.
+
+Fri Jun 17 11:09:22 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.86: Final beta test tar ball for 4.0.
+
+Fri Jun 17 10:55:27 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Implement Rational Range Interpretation (RRI) directly in code.
+
+ * regex.h [RE_RANGES_IGNORE_LOCALES]: Remove macro and its use.
+ * dfa.c (parse_bracket_exp): Remove use of RE_RANGES_IGNORE_LOCALES
+ and just do it in code.
+ (hard-locale.h): Remove include.
+ (hard_LC_COLLATE): Remove variable and its uses.
+ * re.c (resetup): Remove use of RE_RANGES_IGNORE_LOCALES.
+ * regcomp.c (build_range_exp): Remove use of RE_RANGES_IGNORE_LOCALES
+ and just do it in code. Remove cmp_buf array; it's no longer needed.
+ * Makefile.am (base_sources): Remove hard_locale.h and hard_locale.c.
+ * hard_locale.h, hard_locale.c: Removed from dist.
+
+Sun Jun 12 23:43:06 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (resetup): Always turn on RE_RANGES_IGNORE_LOCALES.
+ Add justifying comment with URLs for the relevant portions of
+ POSIX. Thanks to Paul Eggert for pointing out the happy change
+ to the rules and supplying the URLs.
+
+Wed Jun 8 22:41:30 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (build_range_exp): Add check for RE_NO_EMPTY_RANGES
+ from GNULIB regcomp.c, courtesy of GNU grep.
+
+Wed Jun 8 22:10:03 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Sync with GNU grep.
+
+Sun Jun 5 21:49:30 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.85: Fourth beta test tar ball for 4.0.
+
+Sun Jun 5 21:39:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (fpat_parse_field): Bug fix. Thanks to
+ "Radoulov, Dimitre" <cichomitiko@gmail.com> for pointing
+ out the problem.
+
+Fri Jun 3 10:39:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (build_range_exp): Make syntax the first argument,
+ for compatibility with gnulib version of the file.
+
+Wed Jun 1 06:29:27 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * re.c (check_bracket_exp): Fix typo.
+
+Tue May 31 23:01:00 2011 John Haque <j.eh@mchsi.com>
+
+ * re.c (check_bracket_exp): Use mem* routines instead of str*
+ for searching.
+ * main.c (arg_assign): Disallow builtin or user-defined function
+ as the name of a variable.
+ * awkgram.y (check_special): Rework so can be called from
+ arg_assign.
+
+Tue May 31 22:23:41 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ In order to attain the goal of having ranges act like they are
+ always in the C locale, bit the bullet and did the work in
+ the regex and dfa engines. The pre-processing routine was not
+ handling too many cases that a full regexp parser would catch.
+
+ * regex.h [RE_RANGES_IGNORE_LOCALES]: New syntax bit.
+ (RE_SYNTAX_GNU_AWK): Use it.
+ * dfa.c (parse_bracket_exp): If the RE_RANGES_IGNORE_LOCALES
+ is set, ignore locales when building a range.
+ * re.c (expand_range): Remove function and declaration.
+ (add_char): Remove function and declaration.
+ (make_regexp): Remove use of expand_range.
+ (resetup): Add RE_RANGES_IGNORE_LOCALES if --traditional.
+ * regcomp.c (build_range_exp): Add syntax variable as last argument.
+ Add code to check for RE_RANGES_IGNORE_LOCALES and do the right thing.
+ Adjust all calls.
+
+Sun May 29 22:48:41 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (expand_range): Handle cases where expanded range
+ includes '\\' (and ']'). Thanks to Juergen Daubert <jue@jue.li>.
+ Fatal error if end point is below start point ([z-a]),
+ thanks to John Haque. Don't repeat the last character in
+ the expansion. Thanks to Arnold Robbins.
+
+Fri May 27 10:01:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.84: Third beta test tar ball for 4.0.
+
+Thu May 26 22:10:08 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (get_field): Enhance logic for setting NF if we're
+ using FPAT to parse fields. Can end up with weird cases. Thanks
+ to Pat Rankin for pointing them out.
+
+Mon May 23 22:06:13 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Allow newline after comma in range patterns,
+ per POSIX. Thanks to discussion in comp.lang.awk. (!!!)
+
+Mon May 23 22:02:46 2011 John Haque <j.eh@mchsi.com>
+
+ * ext.c (get_actual_argument): Change argument type from
+ Node_var_new to Node_var when used as a scalar.
+
+Sun May 22 11:56:40 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (varinit): Give FPAT a reasonable default value.
+ * field (get_field): Adjust test for at end of record to >=;
+ fpat_parse_field can go beyond when matching null regexps.
+ Thanks to Pat Rankin.
+
+Fri May 20 11:00:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.h (__attribute_warn_unused_result__): Always
+ ifdef out. Bleah.
+
+Thu May 19 17:13:18 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.83: Second beta test tar ball for 4.0.
+
+Thu May 19 16:47:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (dump_vars): Fix warning message. Thanks to Pat Rankin.
+ * main.c (usage): No space allowed after -d and -p. Also thanks
+ to Pat Rankin.
+
+Thu May 19 16:34:04 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * regex_internal.h (__attribute_warn_unused_result__): Define with
+ empty expansion for !__GNUC__ configuration.
+
+Wed May 18 22:13:18 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.82: Beta test tar ball for 4.0, we hope!
+
+Wed May 18 21:47:54 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (PIPES_SIMULATED): Simplify the case where PIPES_SIMULATED
+ is true but using temporary files - that code not needed anymore.
+ * regcomp.c, regex.h, regex_internal.c, regex_internal.h,
+ regexec.c: Sync with GLIBC. Why not.
+
+Mon May 16 17:55:25 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.c: Regenerated using bison 2.5.
+
+Sat May 14 22:25:50 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (nextfile): Use `in_array' in main loop to see if element
+ of ARGV exists, instead of using `assoc_lookup'. The latter creates
+ the element! A day one bug!
+ * dfa.c (parse_bracket_exp): For z/OS init pattern manually.
+
+Mon May 9 16:30:49 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (sort_up_value_type): Remove unused variable ret.
+ (do_delete): Initialize local variables to silence warnings.
+ Thanks to Michal Jaegermann.
+
+Mon May 9 15:07:29 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * awk.h: Remove cygwin code for libsigsegv.
+
+Sun May 8 20:38:03 2011 John Haque <j.eh@mchsi.com>
+
+ * eval.c (r_interpret): In case Op_sub_array, store only the
+ subarray index as 'vname'.
+ * array.c (make_aname): Redone for dynamic computation of
+ a subarray actual 'vname'.
+ (array_vname): Use make_aname() for (sub)array name.
+ (asort_actual): Performance optimization for asort(a).
+
+Sun May 8 20:29:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * debug.c (print_array): Sort in order of string indices, per
+ request from John Haque.
+ * array.c (sort_up_value_number): Use string value to provide
+ ordering when numeric values are equal. Ensures that tests come
+ out OK on different systems.
+
+Sun May 8 20:27:27 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Sync with GNU grep.
+ * regex.h: Sync with GLIBC in preparation for submitting updates
+ back.
+
+Thu May 5 21:22:44 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_interpret): PROCINFO sorting only takes effect
+ if not do_posix.
+
+Wed May 4 23:31:14 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Move array sorting to using predefined strings, add value sorting
+ by type of assignment.
+
+ * array.c (sort_up_value_type, sort_down_value_type): New routines.
+ (asort_actual): Pass string value to assoc_list, not NODE *.
+ Make sure indices of new arrays have numeric value set also.
+ (sort_up_value_number): Don't break the tie based on string value.
+ (sort_selection): Removed.
+ (assoc_list): Third arg is string constant. Add name to table of
+ functions. Linear search it.
+ * awk.h (assoc_list): Fix declaration.
+ * debug.c (print_array): And use of assoc_list.
+ * eval.c (r_interpret): Ditto.
+
+Wed May 4 23:06:17 2011 John Haque <j.eh@mchsi.com>
+
+ * eval.c (setup_frame): Handle a Node_var in stack. Fixes
+ a problem when a Node_var_new as param becomes Node_var during
+ expresssion evaluation for a subsequent param.
+
+Wed May 4 23:04:06 2011 John Haque <j.eh@mchsi.com>
+
+ Fix the problem (crash) with disappearing array argument when
+ it is a subarray of another deleted array argument.
+
+ * awk.h (struct exp_node): Nuke unused field sub.nodep.number.
+ New field sub.nodep.rn.
+ (parent_array): New definition for sub.nodep.rn to keep track
+ of the parent of a subarray.
+ * awkgram.y (mk_symbol): Initialize parent_array to NULL.
+ * eval.c (r_interpret): In the case Op_sub_array, assign
+ parent_array.
+ * array.c (get_array): Initialize parent_array to NULL when
+ a Node_var_new becomes a Node_var_array.
+ (assoc_find): Add a fourth argument for the previous node
+ of the returned bucket.
+ (in_array, assoc_lookup): Adjust calls to assoc_find().
+ (adjust_fcall_stack): New routine to change a soon-to-be deleted
+ subarray parameter in the function call stack to a local array.
+ (do_delete): Simplify code, remove recursive usage. Call
+ adjust_fcall_stack() where appropriate.
+ (do_delete_loop): Call adjust_fcall_stack() before clearing the
+ array.
+ (asort_actual): Don't accept an array and its subarray as
+ arguments for asort() or asorti().
+ (asort_actual, dup_table): For asort(), appropriately assign
+ parent_array when creating the result array.
+ * field.c (do_split, do_patsplit): An array and its subarray not
+ accepted for the second and the fourth arguments. Remove
+ unnecessary dupnode of the field seperator node.
+
+ Unrelated:
+ * awkgram.y (LEX_DELETE, simple_variable): Change type argument
+ from Node_var_array to Node_var_new for calls to variable().
+ * io.c (devopen): Fix parsing GAWK_MSEC_SLEEP env variable.
+
+Mon May 2 23:44:34 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (parse_bracket_exp): Sync with GNU grep, since we
+ now require C 90, go ahead and put non-constant values into
+ the array initializers.
+
+Mon May 2 23:37:09 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * awk.h (small): Undef after include of <sigsegv.h> to compile
+ builtin.c on Cygwin.
+
+Fri Apr 29 12:29:56 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Sync with GNU grep, mainly typos in comments.
+
+Fri Apr 29 12:13:32 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (inetfile): Change ifdef to ifndef for have getaddrinfo.
+ Ooops.
+
+Fri Apr 29 11:49:38 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Per Pat Rankin, remove code related to GFMT_WORKAROUND and VAXCRTL.
+
+ * builtin.c (sgfmt): Nuked.
+ (format_tree): Removed code related to GFMT_WORKAROUND and VAXCRTL.
+ * node.c (format_val): Revise comment.
+
+Fri Apr 29 11:33:08 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (NUMIND): New flag, indicates numeric value of an
+ array index is current.
+ * array.c (awk_hash): Remove code for VAXC, it's no longer
+ needed. Per Pat Rankin.
+ (assoc_lookup): Only assign the numeric value if it's available.
+ (do_delete): Add comment about free_subs calling force_string.
+ (sort_force_index): Use NUMIND.
+
+Fri Apr 29 10:15:24 2011 John Haque <j.eh@mchsi.com>
+
+ * builtin.c: Relocate all codes from awkprintf.h. Restore
+ format_tree.
+ * debug.c (do_print_f): Adjust appropriately. Install fatal trap
+ for format_tree.
+ * Makefile.am (base_sources): Remove awkprintf.h.
+
+ * array.c (assoc_list): Avoid possible crash; Remove unneeded
+ initialization of pre_func.
+
+Wed Apr 27 22:31:23 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (ahash_dupnode): Merged into dupnode in node.c, change uses.
+ * array.c (ahash_unref): Merged into unref in node.c, change all uses.
+ * node.c (dupnode): Revised to support Node_ahash.
+ (unref): Ditto.
+
+ Lots of code clean up in array.c:
+
+ * array.c (AVG_CHAIN_MAX): Made unsigned.
+ (array_init): Use strtoul to convert value instead of doing it
+ manually.
+ (array_vname): Nuke code that could limit length of name. It
+ was never used.
+ (concat_exp): Make len unsigned, clean up the calculation.
+ (assoc_lookup): Set ahname_num in the index at time of element
+ creation.
+ (dup_table): Copy ahname_num also.
+ Other minor cleanups after code review.
+
+Sun Apr 24 15:39:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * NEWS.0: Moved all pre-4.0 news to here.
+ * NEWS: Shortened.
+ * Makefile.am (EXTRA_DIST): Add NEWS.0.
+
+Sun Apr 24 12:43:49 2011 John Haque <j.eh@mchsi.com>
+
+ * array.c (sort_user_func): Fix return value to match the
+ documentaion.
+ (sort_selection): Make user-specified comparison function with
+ the same name override default "unsorted" specification.
+
+Fri Apr 22 16:05:27 2011 John Haque <j.eh@mchsi.com>
+
+ * array.c (sort_user_func): New routine to handle user-defined
+ quicksort comparison function.
+ (assoc_list): Adjust for user-defined comparison function.
+
+Fri Apr 22 09:18:16 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (awk_hash): Force results into 32 bits for consistency
+ across platforms. Keeps the test suite happy. This may turn out
+ to be a bad idea in the long run.
+
+Mon Apr 18 10:18:26 2011 John Haque <j.eh@mchsi.com>
+
+ * array.c (assoc_list): New function to construct, and optionally
+ sort, a list of array elements.
+ (asort_actual): Use the new function to sort array elements.
+ (assoc_sort_inplace, assoc_from_list, merge_sort, merge): Nuked.
+ (sort_selection): Simplify handling of error and warning messages.
+ (sorted_in, sort_match): Nuked, related code in sort_selection() and
+ assoc_list().
+ (sort_ignorecase, sort_up_index_ignrcase, sort_down_index_ignrcase,
+ sort_maybe_numeric_index, sort_cmp_nodes, cmp_func, sort_up_value,
+ sort_down_value): Nuked. Ignorecase handling done in the corresponding
+ non-ignorecase versions.
+ (cmp_string): New routine for string comparisons.
+ (sort_up_value_string, sort_down_value_string, sort_up_value_number,
+ sort_down_value_number, sort_force_index_number,
+ sort_force_value_number, sort_force_value_string): New routines.
+ * awk.h (struct exp_node): New field sub.hash.num to store the
+ numeric value of an array index.
+ (ahname_num): New define.
+ (SORT_CTXT): New typedef.
+ * awkgram.y (tokentab): Accept three args for asort() and asorti().
+ (snode): Adjust for the extra args.
+ * eval.c (r_interpret): In case Op_arrayfor_init, call assoc_list()
+ for a list of array elements.
+ * debug.c (print_array): Call assoc_list() for a sorted list of array
+ elements.
+
+Wed Apr 13 10:17:37 2011 John Haque <j.eh@mchsi.com>
+
+ * builtin.c (do_strftime): Make the third argument to strftime
+ really work.
+ * io.c (redirect): Do not free `rp' after failure to open socket
+ in redirect_twoway. Fixes a double-free memory error.
+
+Thu Apr 7 21:38:08 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (merge): Use sort_cmp_nodes for asort/asorti.
+ See test/arraysort.awk test 1.
+
+Thu Apr 7 10:48:21 2011 Pat Rankin <rankin@patechdata.com>
+
+ * array.c (sort_cmp_nodes): New routine. Unlike cmp_nodes, numbers
+ are less than strings instead of being formatted and then compared.
+ (sort_up_value): Use it.
+
+Sun Apr 3 22:18:26 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * README, FUTURE: Minor edits.
+
+Fri Apr 1 11:53:54 2011 Pat Rankin <rankin@patechdata.com>
+
+ * array.c (sort_up_index_number): Fix the NODE arguments passed to
+ sort_up_index_string() when a tie breaker is needed.
+
+Fri Apr 1 11:49:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Change ISATTY macro to os_isatty function.
+
+ * awk.h (ISATTY): Remove definition.
+ (os_isatty): Add declaration.
+ * debug.c, io.c, main.c: Change all calls.
+
+Thu Mar 31 22:57:36 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Checklist: Updated. This is a git-only file.
+ * POSIX.STD: Revised some.
+
+Tue Mar 29 20:52:38 2011 John Haque <j.eh@mchsi.com>
+
+ * awkgram.y (LEXT_NEXT): Don't issue an error message if the next
+ statement is in a function (rule = 0).
+
+ Always resolve the jump target for an exit statement at run-time.
+ This fixes a bug when the statement occurs in a function.
+
+ * awk.h: New defines target_atexit and target_end.
+ * awkgram.y (LEX_EXIT): Initilize the jump targets.
+ * eval.c (r_interpret): Use current rule to choose the jump target
+ for Op_K_exit.
+ * debug.c (print_instruction): Adjust case Op_K_exit.
+
+Tue Mar 29 20:45:49 2011 Pat Rankin <rankin@patechdata.com>
+
+ Move the code to support sorting `for (index in array)' from
+ eval.c to array.c, and implement several additional orderings.
+
+ * array.c (comp_func, sorted_in, sort_ignorecase,
+ sort_up_index_ignrcase, sort_down_index_ignrcase): Move from eval.c.
+ (sort_up_index_string, sort_down_index_string): Move from eval.c
+ and rename from *_str to *_string.
+ (sort_selection, sort_match, sort_maybe_numeric_index,
+ sort_up_index_number, sort_down_index_number,
+ sort_up_value, sort_down_value): New routines.
+ * eval.c (sort_&c): Move to array.c.
+ (r_interpret: case Op_arrayfor_init): Call sort_maybe_numeric_index
+ before and after qsort.
+ * awk.h (qsort_compfunc): New typedef.
+ (sorted_in, sort_maybe_numeric_index): Declare.
+
+Fri Mar 25 13:15:36 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Move libsigsegv portability checks to here from main.c.
+ * eval.c (fcall_list, fcall_count): Move definitions to here
+ from main.c.
+ * io.c (do_find_source): Check against NULL in for loop.
+ * main.c: Lots of cleanup. Move some things out to other files,
+ add comments to some variable definitions.
+ (enum asgntype): To assign_type
+ (main): Remove decls of getopt variables, clean up comments.
+ Use emalloc and efree for libsigsegv stack. Remove check for SCCS
+ leading magic characters.
+ (add_preassign): Change allocassigns to alloc_assigns.
+ (init_locale): Change strdup calls to estrdup.
+ (save_argv): Make the routine static.
+ * version.in (version_string): Remove leading 4 SCCS magic characters.
+
+Wed Mar 2 08:15:02 2011 John Haque <j.eh@mchsi.com>
+
+ * array.c (asort_actual): Handle the case when the same array
+ is used as the source and destination.
+ * field.c (do_split): Make it fatal if attempting to use the same
+ array for both second and fourth arguments.
+ (do_patsplit): Ditto.
+
+Sun Feb 27 08:01:04 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update copryright in all relevant files.
+
+Sat Feb 26 21:54:07 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (sorted_in): Revise text of lint warning.
+
+Fri Feb 25 17:34:14 2011 Pat Rankin <rankin@patechdata.com>
+
+ * eval.c (sorted_in): Remove incorrect unref() call.
+
+Wed Feb 23 21:48:20 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Free extra_stack, to make valgrind happier.
+
+Tue Feb 22 12:04:09 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (UPDATE_YEAR): Move to 2011. Fix copyright.
+
+Tue Feb 15 17:11:26 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * eval.c (sorted_in, sort_up_index_str, sort_down_index_str,
+ sort_up_index_ignrcase, sort_down_index_ignrcase, sort_ignorecase):
+ New functions to sort arrays for `for (index in array)' statements.
+ (r_interpret: case Op_arrayfor_init): Call sorted_in().
+
+Wed Feb 16 07:12:50 2011 John Haque <j.eh@mchsi.com>
+
+ Fix line numbers in the lint, warning and error messages issued
+ by the parser.
+
+ * awkgram.y (lintwarn_ln, warning_ln, error_ln): New local versions,
+ each accepts an additional line number argument.
+ (print_included_from): New function to seperate 'Included from ..'
+ message from yyerror. Use it in yyerror, and in the new functions.
+ (grammar): Use the local versions for messages.
+ (add_srcfile, include_source, dup_parms, func_install, param_sanity,
+ mk_binary, add_lint): Ditto.
+ (dup_params, include_source): Adjust arguments to pass line number.
+ * awk.h: New definition ATTRIBUTE_PRINTF_2.
+
+ * awkgram.y (yylex): New variable warntab. Use it to issue only one
+ warning for the same non-standard special token in source.
+ (parse_program): Avoid spurious warnings. Don't call check_funcs if
+ yyparse aborts prematurely.
+
+Mon Feb 14 08:03:41 2011 John Haque <j.eh@mchsi.com>
+
+ * awkgram.y (regexp): Don't use tokstart in lint warning, it isn't
+ `\0' terminated.
+ (grammar): Copy update and assign routines from relevant variables into
+ instructions to avoid extra pointer dereferencing at run-time.
+ * awk.h (update_var, assign_var): new definitions.
+ * eval.c (r_interpret): Adjust cases Op_var_assign and Op_var_update.
+
+Sun Feb 13 20:22:47 2011 Eli Zaretskii <eliz@gnu.org>
+
+ * awkgram.y (add_srcfile):
+ * debug.c (source_find): Pass `path' and `src' to files_are_same.
+ * gawkmisc.c [__DJGPP__ || __MINGW32__]: Include pc/gawkmisc.pc,
+ for consistency with __EMX__ and pc/Makefile.
+ * debug.c (interpret, initialize_pager, prompt_continue)
+ (set_gawk_output): Use ISATTY instead of isatty.
+ * io.c (redirect, iop_alloc): Same.
+ * main.c (main): Same.
+ * awk.h (ISATTY): Trivial definition, if not defined elsewhere.
+
+Sun Feb 13 20:16:04 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (check_funcs): Update warning about never called to say
+ "never called directly" since it could be called indirectly.
+
+Sun Feb 13 07:12:50 2011 John Haque <j.eh@mchsi.com>
+
+ * profile.c (pprint): In case Op_indirect_func_call, pop off
+ indirect var after function parameters.
+ Thanks to Hermann Peifer <peifer@gmx.eu> for the bug report.
+ * array.c (do_delete): Always free an empty sub-array name and node.
+ * ChangeLog: Fix typos.
+
+Fri Feb 11 10:26:25 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (remad_std_file): Close oldfd first, in case we've
+ run out of fd and do dup2 if the newfd isn't what we were
+ looking for. Thanks to Hermann Peifer <peifer@gmx.eu> for
+ the bug report.
+
+Thu Feb 10 21:31:36 2011 Andreas Buening <andreas.buening@nexgo.de>
+
+ * main.c (load_procinfo): Fix warning about unsed variables if we
+ don't have multiple groups.
+ * protos.h: Move decls for many standard functions here if
+ they aren't in the header files (OS/2) and bracket inside
+ #ifndef STDC_HEADERS.
+ * io.c (devopen): Remove decl of strtoul.
+ * field.c (set_FIELDWIDTHS): Same.
+ * awk.h: Always include protos.h.
+
+Tue Feb 8 22:46:22 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c, builtin.c, eval.c: Equalize message strings and
+ fix a typo. Thanks to Benno Schulenberg <bensberg@justemail.net>.
+
+Mon Feb 7 11:23:33 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (next_sourcefile): Comment out assertion that
+ lexeof is true; causes core dump on user typos of bad
+ characters which previous versions did not do. Thanks to
+ Pat Rankin for the report.
+
+ * re.c (expand_range): Allow for ^ as first character
+ inside range. Thanks for Nelson Beebe for the bug report.
+
+Fri Feb 4 10:28:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * README.cvs: Udpated.
+ * Checklist: New file for storage in the git repository.
+
+Wed Feb 2 20:34:41 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * awkgram.y (free_bc_internal): Remove unused variable.
+
+Tue Feb 1 23:13:10 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bootstrap.sh: No need to find aclocal.m4, just touch it.
+
+Tue Feb 1 23:05:51 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ Make values of ctype macros into unsigned char to fix
+ warnings found on Cygwin / Newlib.
+
+ * array.c (array_init): Add cast.
+ * awkgram.y: Ditto.
+ * awkprintf.h: Ditto.
+ * builtin.c (sub_common, nondec2awknum): Ditto.
+ * command.y: Ditto.
+ * eval.c (fmt_ok): Ditto.
+ * ext.c (make_builtin): Ditto.
+ * main.c (main, arg_assign): Ditto.
+ * re.c (check_bracket_exp): Ditto.
+ * node.c (r_force_number, parse_escape): Ditto.
+ (dump_wstr): Add unused attribute (unrelated).
+
+Tue Feb 1 23:01:40 2011 John Haque <j.eh@mchsi.com>
+
+ Fix switch debugging.
+
+ * awkgram.y (LEX_SWITCH, case_statements, case_statement,
+ case_value): Linearize instructions to facilitate debugging.
+ (switch_body): Removed.
+ (yylex): Add LEX_CASE in special token processing.
+ (free_bc_internal): Remove case Op_K_switch.
+ * awk.h (OPCODE): Remove opcode Op_case_list.
+ * eval.c (r_interpret): Remove Op_K_switch. Add case
+ Op_K_case to handle switch.
+ Add cases Op_K_do, Op_K_while, Op_K_for, Op_K_arrayfor, Op_K_switch
+ and Op_K_default as no-ops, needed for pgawk.
+ * debug.c (print_instruction): Remove case Op_K_switch,
+ add case Op_K_case instead.
+
+ Unrelated:
+ * awkgram.y (case_statements): As case values, "abc" and /abc/
+ no longer considered as duplicates.
+
+ Cleanup grammar and run-time code for switch and loops.
+ Jump targets for break and continue are now fixed, and known
+ at parse time. See ChangeLog entry dated Oct 21, 2010.
+
+ * awk.h (OPCODE): Remove Op_push_loop and Op_pop_loop.
+ (loop_count): Remove definition.
+ * awkgram.y (fix_break_continue): Change calling parameters to
+ instruction list, break and continue targets. Adjust code.
+ (LEX_DO, LEX_WHILE, LEX_SWITCH, LEX_FOR): Simplify grammar. Use
+ Op_no_op as target for break. Adjust call to fix_break_continue.
+ (mk_for_loop): Ditto.
+ * eval.c (r_interpret): Nuke cases Op_push_loop and Op_pop_loop.
+ Simplify Op_K_break and Op_K_continue. Remove declaration of in_loop
+ and all loop detection code thereof.
+ * debug.c (pre_execute, post_execute): Adjust declarations and code.
+ (print_instruction): Nuke cases Op_push_loop and Op_pop_loop.
+ * eval.c (r_interpret): Adjust calls to pre_execute and post_execute.
+ * profile.c (pprint): Adjust cases Op_K_for, Op_K_do, Op_K_while,
+ Op_K_switch and Op_K_arrayfor. Add cases Op_K_case and Op_K_default.
+ Remove Op_push_loop and Op_pop_loop.
+
+ Unrelated cleanup:
+ * awkgram.y (mk_condition): Don't include Op_K_if, Op_K_else and
+ Op_cond_exp if not profiling.
+
+Tue Feb 1 10:20:02 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_interpret): Change magic string for array sorting.
+
+Sun Jan 30 21:49:53 2011 John Haque <j.eh@mchsi.com>
+
+ Add `isarray' built-in function.
+
+ * awk.h (enum opcodeval): Op_push_arg: new opcode.
+ (do_isarray): Add declaration.
+ * awkgram.y (tokentab): Add new entry for `isarray' function.
+ (snode): Add handling for it.
+ * builtin.c (do_isarray): New function.
+ (do_length): Die if posix and get an array argument.
+ * debug.c (print_instruction): Handle Op_push_arg.
+ * profile.c (pprint): Likewise.
+ * eval.c (optypes, r_interpret): Likewise.
+
+Sun Jan 30 21:13:01 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * hard-locale.h: Synced to GNU grep.
+ * hard-locale.c: New file, brought in from GNU grep.
+ * Makefile.am (base_sources): Add hard-locale.c.
+ * dfa.h: Sync as much as possible to GNU grep.
+ * dfa.c: Sync as much as possible to GNU grep.
+ * builtin.c (do_strftime): Remove unneeded variable.
+
+Thu Jan 27 22:52:54 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (comp_func): Add declaration.
+ * debug.c (comp_func): Make not static, and move to ...
+ * eval.c (comp_func): ... here.
+ (r_interpret): Add array sorting if magic index is
+ set in PROCINFO.
+
+Thu Jan 27 22:12:00 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * Makefile.am: Remove $(EXEEXT) from 'awk' symlink.
+
+Thu Jan 27 21:21:13 2011 John Haque <j.eh@mchsi.com>
+
+ * eval.c (r_interpret): When in BEGINFILE or ENDFILE, add check for
+ `getline var < file' in cases Op_K_getline_redir and Op_K_getline.
+
+ * awkgram.y (constant_fold): Code cleanups. Fix bug in the code for
+ string concatenation.
+
+ * configure.ac: Remove unneeded extra call to AC_LANG.
+
+Thu Jan 27 15:00:42 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c: Fix up some comments.
+ * io.c (remap_std_file): New function.
+ (iop_close): Use it.
+
+Mon Jan 24 22:14:21 2011 Andreas Buening <andreas.buening@nexgo.de>
+
+ * debug.c: Bracket variables used with readline in #ifdef.
+ * dfa.c (add_utf8_anychar): Move inside ifdef.
+
+Mon Jan 24 22:05:26 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (make_regexp): Add separate variable for dfa syntax.
+ General formatting cleanup.
+ (research): General formatting cleanup.
+ (refree): Remove out of date comment.
+ (re_update): Comment the routine.
+ (check_bracket_exp): Improve check for range to not get [^-/]
+ kinds of things. Thanks to Nelson Beebe for pointing out the bug.
+
+Wed Jan 19 20:31:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (is_valid_character): Add `& 0XFF' and remove casts to
+ unsigned chars in other files. Remove definition of this macro
+ in not MBS_SUPPORT case, since it wasn't being used.
+ (btowc_cache): New macro to index into the array and use the
+ same trick. Relies on ANSI C preprocessor semantics.
+ Fix all uses.
+ * builtin.c, node.c, io.c: Fix uses of these macros.
+
+Wed Jan 19 20:19:29 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (wstr2str): New function.
+ * awk.h: Declare it.
+ * builtin.c (is_wupper, is_wlower, to_wupper, to_wlower,
+ wide_change_case, wide_tolower, wide_toupper): New functions to
+ simplify wide character case conversions.
+ (do_tolower, do_toupper): Use wide_tolower, wide_toupper in multibyte
+ case.
+ (do_substr): Simplify code a little bit.
+
+Mon Jan 17 22:48:48 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_bindtextdomain): Change type of `the_result'
+ to const char* to kill compiler warnings.
+ * debug.c (source_find): Improve error message when file not
+ found.
+ * awkgram.y (get_src_buf): Add cast to value of `read' to
+ turn off compiler warnings on different systems.
+
+Mon Jan 10 21:40:05 2011 Andreas Buening <andreas.buening@nexgo.de>
+
+ * io.c (devopen): Handle opening of directories for OS/2.
+
+Mon Jan 10 21:37:49 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Rearrange includes of <fcntl.h> so it won't be
+ included for VMS, move definition of O_BINARY down.
+
+Sat Jan 8 23:00:37 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Include <fcntl.h> here.
+ * main.c, io.c: Remove includes of <fcntl.h>.
+
+2011-01-08 Eli Zaretskii <eliz@gnu.org>
+
+ * io.c (PIPES_SIMULATED) [__DJGPP__ || __MINGW32__]: Define.
+ (binmode): Define for __DJGPP__ and __MINGW32__ as well.
+ (gawk_popen) [!PIPES_SIMULATED]: Define for __DJGPP__ and
+ __MINGW32__ as well.
+
+Wed Jan 5 20:35:30 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Move call to AC_LANG([C]) into here from
+ m4/readline.m4.
+
+Tue Jan 4 11:21:18 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Clean up some compiler warnings:
+
+ * array.c (do_delete): Cast for printf.
+ * builtin.c (do_bindtextdomain): Casts for const char *.
+ * io.c (rs1scan): Cast for indexing of array.
+ * re.c (add_char): Remove unused variables.
+
+Fri Dec 31 11:05:11 2010 Michal Jaegermann <michal@harddata.com>
+
+ * awk.h (strncasecmpmbs): Change parameters to const char *.
+ * builtin.c (strncasecmpmbs): Change parameters to const char *.
+ Add casts as appropriate in calls to other functions.
+ * eval.c (cmp_nodes): Add casts in calls to strncasecmpmbs.
+ * node.c (str2wstr): Ditto.
+
+Tue Dec 28 21:13:31 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * gawkmisc.c: Restore inclusion of pc/gawkmisc.pc.
+
+Tue Dec 28 21:00:36 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ext.c (make_builtin): Make first parameter const char *.
+ Adjust code inside to fit.
+ * awk.h (make_builtin): Adjust declaration.
+
+Mon Dec 27 19:55:10 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c [AF_UNSPEC, AF_INET, AF_INET6]: Add definitions for systems
+ that don't define them.
+ (inetfile): Make IPv6 a fatal error if using the fake getaddrinfo,
+ since chances are good that IPv6 really isn't available.
+
+Sat Dec 25 19:36:27 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fixes for z/OS.
+
+ * awkgram.y (tokcompare): Change argument types to const void *.
+ (check_special): Add cast to void * in call to qsort.
+ * builtin.c (do_bindtextdomain): Change `directory' and `domain'
+ to const char *.
+ * custom.h (ZOS_USS): Undef HAVE_SYS_PARAM_H and HAVE_MCHECK_H.
+ Beats me why configure thinks it has those things.
+
+Fri Dec 24 12:56:46 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h: Remove defs for MIPS RiscOS.
+ * configure.ac, aclocal.m4: Updated to Autoconf 2.68.
+
+Wed Dec 22 21:21:28 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gettext.h: Synchronized with gettext 0.18.1.
+
+2010-12-22 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.18.1.
+ * ABOUT-NLS, config.rpath: Updated from gettext 0.18.1.
+
+Sun Dec 19 16:43:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (update_PROCINFO_str, update_PROCINFO_num, make_str_node):
+ Change `char *' parameters to `const char *' to avoid some
+ compiler warnings.
+ * ext.c (do_ext): Remove cast in call to make_string.
+ * field.c (update_PROCINFO_str, update_PROCINFO_num): Adjust.
+ * main.c (init_args): Remove casts in calls to make_string.
+ * node.c (r_make_str_node): Add cast in assignment if ALREADY_MALLOCED.
+
+Sat Dec 18 20:12:59 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * array.c, gawkmisc.c, io.c, main.c, regex_internal.h,
+ awkgram.y, awk.h, array.c: Remove OS2 and _MSC_VER defines.
+
+Sat Dec 18 19:56:17 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c, eval.c, floatcomp.c, io.c: Remove all the crufty
+ old code for #ifdef CRAY.
+
+Thu Dec 16 11:06:50 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Put strftime() default format into PROCINFO["strftime"].
+
+ * awk.h (def_strftime_format): Declare const char[] array.
+ * main.c (def_strftime_format): Define it.
+ (load_procinfo): Load it into PROCINFO.
+ * builtin.c (do_strftime): Use value in PROCINFO for format
+ string if it's there. Remove old def_format static array.
+
+Mon Dec 13 17:12:44 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ If not POSIX, turn [d-h] into [defgh].
+
+ * re.c (check_bracket_exp): Make warning about ranges under
+ lint control.
+ (expand_range): New routine to expand ranges.
+ (make_regexp): Check if might have range and call expand_range.
+ (add_char): New helper function for expand_range.
+
+Thu Dec 9 22:12:48 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c: Restored changes of 1 July 2010 to allow /inet4 and /inet6;
+ they got lost amongst the merges. Fixed checking of do_sandbox.
+ Also, removed the option for raw IP sockets since it was never
+ implemented and wasn't going to be.
+
+Tue Dec 7 11:59:00 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Remove test for return type of sprintf. Another
+ renegade from the late 1980's bites the dust!
+ * protos.h (sprintf): Remove declaration.
+
+Sun Dec 5 15:01:35 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (grow_stack): Change env var to GAWK_STACKSIZE.
+ * awk.h, main.c, eval.c, profile.c: Removed features added
+ for those who are Strong In The Ways of the Source.
+ * debug.c (comp_func): Moved to here from eval.c, where it's
+ no longer needed.
+
+Sat Dec 4 21:44:38 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (init_btowc_cache): New function.
+ (btowc_cache): New array.
+ (str2wstr): Use is_valid_character in test instead of several isXXX
+ calls.
+ * awk.h [is_valid_character]: Macro to use btowc_cache.
+ * main.c (main): Call init_btowc_cache().
+ * io.c (rs1scan): Add call to is_valid_character when processing
+ characters byte by byte.
+
+Wed Dec 1 08:10:21 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h, awkgram.y, debug.c: Change CONTEXT to AWK_CONTEXT
+ everywhere to avoid problems with libsigsegv on cygwin.
+
+Tue Nov 30 13:48:34 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (MRL): Removed variable, not used since Tandem code nuked.
+ (main): Fix argument parsing for -m.
+ (usage): Make -m undocumented (already is the doc/* files).
+ * io.c (MRL): Remove declaration.
+
+Mon Nov 29 21:59:21 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (check_bracket_exp): Add check and warning for ranges.
+ I may live to regret this.
+
+Mon Nov 29 20:09:18 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * replace.c [!HAVE_STRFTIME]: For __MINGW32__, define
+ HAVE_STRFTIME while compiling missing_d/strftime.c.
+
+Thu Nov 25 20:12:28 2010 John Haque <j.eh@mchsi.com>
+
+ * awkgram.y (grammar): Bug fix in delete for loop efficiency hack.
+ * debug.c (do_info): Don't sort functions to avoid potential memory leak
+ in case A_FUNCTIONS.
+
+ Plug more potential leaks in the debugger eval/condition commands:
+ * builtin.c (POP_TWO_SCALARS): New macro to free first scalar in case
+ of a fatal error in the next.
+ (do_index, do_atan2, do_lshift, do_rshift, do_and, do_or, do_xor): Use it
+ instead of two consecutive POP_SCALARs.
+
+ Execution context related code cleanups. Also, added descriptive
+ comments for functions.
+ * awkgram.y (get_context): Nuked.
+ (push_context, pop_context, in_main_context): New functions.
+ (mk_program, parse_program, yylex): Updated.
+ * debug.c (condition_triggered, do_eval, parse_condition): Updated.
+ * eval.c (unwind_stack): Updated.
+ * main.c (main): Updated.
+ * awk.h (struct context): Removed member level, not needed.
+
+ * eval.c (op_assign): Initialize r to NULL, and declare x only
+ if HAVE_FMOD not defined to remove GCC warnings.
+
+Thu Nov 25 08:32:31 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (posix_compare): Do string comparison with strcoll() /
+ wcscoll().
+ (cmp_nodes): Call it if do_posix. This may be a bad idea,
+ but what the heck. Standards compatibility uber alles!
+
+Wed Nov 24 20:09:23 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ext.c (do_ext): Require definition of `plugin_is_GPL_compatible'
+ per GNU Coding standards.
+
+Sun Nov 21 14:23:58 2010 John Haque <j.eh@mchsi.com>
+
+ Debugger: Fix memory leak when quitting pager.
+ * awk.h (PUSH_BINDING, POP_BINDING): Generalize macro definitions.
+ * debug.c (print_array): save and restore bindings for pager.
+ free list in case of an early exit in the pager.
+ (do_dump_instructions): Don't sort functions to avoid potential
+ memory leak.
+ (execute_code): Adjust PUSH_BINDING and POP_BINDING macro invocations.
+
+ * awkgram.y (func_call): Avoid reading freed memory for indirect var
+ name; do the special variable check before the call to 'variable'.
+
+ * eval.c (r_interpret): Fixes and cleanups. Change TOP to TOP_SCALAR
+ in the case Op_store_field.
+ (assign_common, assign, compare): Nuked macros.
+ (cmp_scalar, op_assign): New functions as replacements for the macros.
+
+Fri Nov 19 11:57:28 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bootstrap.sh, Makefile.am: Remove treatment of CVS.
+ * README.cvs: Updated further.
+
+Thu Nov 18 23:28:23 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Remove `--enable-portals' option. I don't think
+ anyone ever used it.
+ * io.c (two_way_open): Remove the code for portals.
+ * README.cvs, README.git, bootstrap.sh: New files for storage
+ in the Git repository.
+
+Tue Nov 16 11:56:31 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * version.in: Removed descriptive comments. New features and
+ so on are documented in the documentation and in NEWS.
+
+Mon Nov 15 19:19:25 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (LEX_LENGTH): Removed warning about length with
+ no argument being deprecated.
+ * awkprintf.h: Remove code for sun386. Fix %c to print multibyte
+ character instead of first byte.
+ * builtin.c (sub_common): Update commentary about POSIX.
+ * io.c (nextfile): Add MAYBE_NUM to FILENAME.
+
+Fri Nov 12 11:53:15 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (update_global_values): New routine, needed for correct
+ operation of --dump-variables.
+ * awk.h: Declared it.
+ * awkgram.y (get_varlist): Call it.
+ Thanks to Hermann Peifer <peifer@gmx.eu> for the bug report.
+
+ * debug.c (find_subscript): Initialize `r' to NULL, per
+ Michal Jaegermann.
+
+Thu Nov 11 16:31:49 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Restore decls of strcasecmp, strncasecmp.
+ * builtin.c: Lots of general cleanups.
+ (sub_common): Actually enable POSIX rules! (Wasn't done right
+ earlier.)
+
+Thu Nov 4 14:08:29 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c, awkgram.y, awkprintf.h, builtin.c, debug.c, eval.c,
+ field.c, io.c, main.c, node.c, profile.c, re.c: Remove register
+ keyword everywhere.
+ * node.c: Minor code cleanups.
+
+Wed Nov 3 08:29:15 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (free_wstr): If argument is null string or null field,
+ return. Thanks to Vojtech Vitek <vvitek@redhat.com>
+
+Tue Nov 2 16:45:06 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Straighten out options more. --lint --> -L, --lint-old --> -t
+
+ * main.c (optlist, optab, main, usage): Adjusted approrpiately.
+
+ Other:
+ * awk.h: Lots more general cleanup.
+ * builtin.c (strncasecmpmbs): Move mbstate vars into the routine.
+ * awk.h (strncasecmpmbs): Adjust declaration.
+ * eval.c (cmp_nodes): Adjust call.
+ * awkgram.y, command.y: Remove unused variables.
+
+Mon Nov 1 21:55:26 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (optlist, optab, main): Renamed -l option to -t
+ so can eventually merge in xgawk's -l option.
+ (usage): Adjusted approrpiately.
+
+Mon Nov 1 16:23:52 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c, awk.h, custom.h, eval.c, gawkmisc.c, io.c, main.c,
+ protos.h, replace.c: Remove code related to: __amigaos__,
+ atarist, BeOS, _MSC_VER, MSDOS, TANDOM, WIN32, and anything
+ not for __STDC__.
+
+Sun Oct 31 21:49:22 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Start on cleaning up. Remove stuff for DOS, WIN32,
+ TANDEM, atarist, NeXT even!
+
+Sun Oct 31 05:56:23 2010 John Haque <j.eh@mchsi.com>
+
+ Add array of arrays.
+
+ * awk.h (Op_sub_array): New opcode.
+ (POP_SCALAR, TOP_SCALAR): New macros. If the item is not a scalar,
+ make it a fatal error.
+ (POP_STRING, TOP_STRING): Use POP_SCALAR and TOP_SCALAR instead
+ of POP and TOP.
+ (force_string, force_number): Unrelated: simplify (remove) macros
+ for older gcc and non-gcc compilers.
+ * awkgram.y (grammar): New non-terminals for array subscripts.
+ delete array subscripts are handled differently than array subscripts
+ used as a variable.
+ (SUBSCRIPT): New terminal symbol to indicate end of subscripts.
+ (yylex): Return SUBSCRIPT after all the subscripts has been read.
+ (rules variable, LEX_DELETE and LEX_FOR): Adapt to these changes.
+ (sub_counter): New global to count the number of subscripts in a
+ delete statement.
+ (optimize_assignment): Adjust code for assignment to an array element.
+ * array.c (make_aname): New function to construct a sub-array name.
+ (get_array): Handle Node_val in the default case.
+ (concat_exp): Issue fatal error message if each expression is not a
+ scalar.
+ (assoc_clear): Recursively clear sub-arrays.
+ (do_delete, assoc_dump, assoc_sort_inplace, dup_table):
+ Handle array of arrays.
+ * builtin.c: Replace POP with POP_SCALAR as appropriate.
+ * eval.c (optypes): Add entry for Op_sub_array.
+ (r_interpret): Handle Op_sub_array. For case Op_subscript, increment
+ reference count only if the result is a scalar. If type is not a
+ scalar in Op_subscript_lhs, make it fatal. Adjust stack pointer
+ after a call to do_delete in Op_K_delete. Change POP(TOP)
+ to POP_SCALAR(TOP_SCALAR) as needed.
+ * profile.c (pprint): Add case for Op_sub_array.
+ * command.y (grammar): New non-terminals and rules to handle
+ array of arrays.
+ * debug.c (struct list_item): Redesigned. Field subs is NODE ** now,
+ new fields num_subs and sname. New flags OLD_IS_ARRAY and CUR_IS_ARRAY;
+ removed flag ARRAY_WATCH. Renamed macro IS_ARRAY() to WATCHING_ARRAY.
+ (do_info): Adapt to the structural changes in cases A_WATCH and
+ A_DISPLAY.
+ (print_array): New function to print contents of an array.
+ (print_subscript): New function to print an element of an array.
+ (do_print_var): Use the new functions to print an array element
+ and contents.
+ (do_set_var): Adapt to the structural changes in list_item for
+ an array element.
+ (delete_item, do_add_item, display): Ditto.
+ (add_item): Ditto. Use field symbol, not subs to store field number and
+ adjust accordingly everywhere.
+ Unrelated: handle function parameter correctly, watch and display now
+ prints the param name instead of the actual array name.
+ (find_subscript): New function.
+ (initialize_watch_item): Use the new function find_subscript
+ to locate an array element NODE.
+ (watchpoint_triggered): Redone.
+ (cmp_val): Redone.
+ (print_watch_code): Adjust code for printing subscript.
+ (print_instruction): Add case for Op_sub_array.
+ (serialize_subscript): New function.
+ (serialize): Use the new function to serialize watch and display
+ subscripts.
+ (unserialize_list_item): Adapt to the structural changes. Also,
+ simplify code.
+ (do_print_f): Redo code for printting array element.
+ (pre_execute_code, execute_code): Change POP to POP_SCALAR.
+
+ Unrelated:
+
+ * debug.c (unserialize_commands): New function for common code in
+ unserialize_breakpoint and unserialize_list_item.
+ (unserialize_breakpoint and unserialize_list_item): Use the new
+ function.
+
+ * awkgram.y (grammar): Do not terminate parser if seen an empty(NULL)
+ subscript. Install null string as subscript and continue parsing.
+ (variable): Do not terminate parser if type is Node_func, change it
+ to Node_var_new temporarily. Simplifies grammar and allows parser to
+ continue.
+
+ * command.y (yylex): Add history entry when blank line repeats
+ previous command.
+
+ * debug.c (pp_args): Removed. Pretty-printing SUBSEP
+ seperated indexes can not be made to work reasonably in all cases.
+ (struct list_item): Removed field pp_subs.
+ (concat_args): Move to file command.y.
+ * command.y (grammar): Concatenate SUPSEP seperated indexes.
+
+Thu Oct 28 16:25:08 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Remove use of varargs.h everywhere:
+
+ * awkgram.y (yyerror): Fixed.
+ * awk.h [CAN_USE_STADARG_H]: Removed, #error added if not available.
+ (snprintf, Func_print, msg, error, warning): Fix declarations.
+ * cmd.h (gprintf, d_error): Fix declaration.
+ * command.y (yyerror): Fixed.
+ * debug.c (d_error, gprintf): Fixed code.
+ * main.c (lintfunc): Fix declaration.
+ * msg.c (msg, warnning, error, r_fatal): Fixed code.
+
+Wed Oct 27 16:45:29 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [P]: Finally, nuked the `P' macro. Removed definitions
+ and uses.
+ [HAVE_DOPRNT]: Removed check for this, now require vfprintf.
+ [BELL]: Nuked; require a compiler that supports '\a'.
+ * array.c, awkgram.y, awkprintf.h, builtin.c, cmd.h, command.y,
+ debug.c, eval.c, ext.c, field.c, io.c, main.c, protos.h [P]:
+ Remove all uses.
+ * node.c (r_force_number): Change check with strtod to `ptr == cpend',
+ SunOS 3.5 compatibility no longer concerns us. Removed the comment.
+ [P]: Removed all uses.
+ (parse_escape): Change from BELL to '\a'.
+ * profile.c (pp_string): Change from BELL to '\a'.
+ [P]: Removed all uses.
+
+Tue Oct 26 20:11:37 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (fix_break_continue): New routine to make break and
+ continue instructions point to where they should jump to. Adjusted
+ grammar to call it for switch and loops.
+ * eval.c (r_interpret): For Op_K_break and Op_K_continue, jump
+ to pc->target_jmp.
+ * command.y (cmdtab, do_help): Translate the help messages.
+ * debug.c (option_list, option_help): Translate the help messages.
+ Elsewhere, clean up / add calls to gettext.
+
+Fri Oct 22 11:18:29 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ChangeLog: Merged with ChangeLog.BYTECODE.
+ * Makefile.am (EXTRA_DIST): Removed ChangeLog.BYTECODE.
+ * ChangeLog.BYTECODE: Removed the file.
+
+Thu Oct 21 12:16:35 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Make break and continue outside a loop not allowed at all,
+ even with --traditional, as BWK awk no longer allows this.
+
+ * eval.c (r_interpret): For Op_K_break and Op_K_continue, make
+ them fatal errors if not in a loop.
+ * awkgram.y (break_allowed, continue_allowed): New variables.
+ [BREAK, CONTINUE]: New flags for tokentab.
+ (yylex): If set, increment the corresponding variable.
+ (Grammar): Test variables when break/continue seen, decrement them
+ at the end of productions for loops and switch.
+
+Tue Oct 19 20:03:29 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (optab, usage): Remove --compat, --copyleft, and --usage extra
+ option aliases.
+
+Tue Oct 19 08:25:02 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkprintf.h (r_format_arg): Undouble "%" characters in
+ error messages. Thanks to Scott Deifik for catching the problem.
+
+Sat Oct 16 22:08:54 2010 Arnold Robbins <arnold@skeeve.com>
+
+ Apply changes from John Haque:
+
+ * awk.h [ASSIGNED]: Remove unused flag.
+ (Op_cond_pair_left): Remove.
+ * debug.c (print_instruction): Remove Op_cond_pair_left.
+ (do_trace_instruction): Fix print for Op_newfile.
+ (parse_condition): Improve code.
+ * eval.c (optypes): Add space to string for "!".
+ (r_interpret): Remove Op_cond_pair_left and Node_instruction cases.
+ Revise Op_cond_pair to handle left and right sides correctly.
+ Simple code fixes in some other cases.
+ * profile.c (pprint): Remove Op_cond_pair_left. Simplify Op_not.
+
+Fri Oct 15 14:17:09 2010 Arnold Robbins <arnold@skeeve.com>
+
+ * awk.h (Op_cond_pair_left): New op for left side of condition pair.
+ * debug.c (print_instruction): Support it.
+ * profile.c (pprint): Ditto.
+ * eval.c (r_interpret): Split Op_cond_pair into two cases; they have
+ to be handled differently.
+
+Wed Oct 13 19:17:03 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.h [RE_SYNTAX_AWK]: Add RE_CHAR_CLASSES, for compatibility
+ with modern Unix awk.
+
+Sun Oct 10 15:31:01 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (dfawarn): Do nothing in body, since gawk does it's
+ own checking.
+
+Sun Oct 10 15:30:34 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ MERGE with bytecode version! Many many files changed / added.
+
+Sun Oct 3 08:41:25 2010 John Haque <j.eh@mchsi.com>
+
+ * Lots of files: Indirect function call, FPAT, BEGINFILE/ENDFILE
+ from gawk-devel.
+
+ * awk.h (defrule): New enum for rule types.
+ (ruletab): Converts rule types to string constants.
+ * awkgram.y: Use rule types to simplify code in grammar.
+ * eval.c, debug.c, profile.c, awkgram.y routines: Update to use ruletab.
+
+ * Lots of files: New debugger command eval for evaluation of
+ arbitrary (g)awk expression(s).
+ eval "awk statement(s)"
+ OR
+ eval p1, p2
+ > awk statement
+ > more awk statement(s)
+ > end
+ p1, p2 are eval locals.
+ Conditional break/watch point:
+ break 1 "condition expression"
+ OR
+ break 1
+ condition "condition expression"
+
+ * command.y: grammar clean-ups.
+ (find_command): Redo to fix bugs in abbreviation/partial-string
+ search.
+
+ * debug.c (command_source): New structure. Used to manage
+ sources for debugger commands. 'source file' command can now
+ include additional source commands.
+
+ * awk.h: new enum type redirval for I/O redirection types;
+ remove redirection types from OPCODE.
+ * awkgram.y: Adjust grammar for redirection type changes.
+ (yylex, mk_getline): Update for redirection type changes.
+ * io.c (redirect, do_getline): Ditto.
+ * profile.c (redir2str): New function to convert redirection types
+ to string constants.
+ (pprint): Use new function redir2str.
+ * debug.c (print_instruction): Ditto.
+ * eval.c (optypes): Remove redirection types from table.
+
+ * main.c (main): initialize do_optimize to 1, default optimizations.
+ do_optimize > 1 for -O (--optimize) command line option.
+ do_optimize = 0 turns off all optimizations, and is for debugging
+ purposes.
+ * awkgram.y: Updated.
+
+ Lots of other cleanups and improvements.
+
+Thu Sep 16 09:44:47 2010 John Haque <j.eh@mchsi.com>
+
+ Lots of bug fixes & improvements, including work on
+ profiling.
+
+Wed Aug 18 22:15:06 2010 Arnold Robbins <arnold@skeeve.com>
+
+ Lots of files: Sync fully with gawk-stable version, in particular
+ documentation edits and all ChangeLog files.
+
+Mon Aug 9 07:17:54 2010 John Haque <j.eh@mchsi.com>
+
+ Fix the case when runtime stack can have a INSTRUCTION pointer
+ while popping stack items (a next/nextfile statement inside a loop).
+
+ * awk.h: new NODETYPE Node_instruction. Remove instruction pointer
+ from STACK_ITEM union, and all related macros.
+ * eval.c (r_interpret): wrap code (INSTRUCTION) pointer inside
+ a NODE for Op_push_loop. Change Op_pop_loop, Op_K_break
+ and Op_K_continue accordingly.
+ (unwind_stack): free Node_instruction.
+ (nodetypes): add new entry for Node_instruction.
+
+Thu Aug 5 15:05:22 2010 Arnold Robbins <arnold@skeeve.com>
+
+ * awk.h: Remove redundant declaration of struct lconv loc;
+ * awkprintf.h: Move ifdef for HAVE_LOCALE_H inside case '\''.
+ * custom.h: Add macros for setenv and unsetenv for Z/OS.
+ * main.c (main): Remove three argument version for Tiny CC after
+ applying patches to local copy that fix the issue with environ.
+
+Mon Jul 26 07:23:01 2010 John Haque <j.eh@mchsi.com>
+
+ Started Byte Code version ChangeLog.
+
+ * awk.h, eval.c, debug.c, profile.c: Renamed opcode Op_exit to
+ Op_atexit. Simplify exit value handling; use existing global
+ exit_val from main.c.
+ New opcode Op_stop.
+
+ * msg.c: New variables fatal_tag_valid, fatal_tag.
+ (r_fatal): Use these new variables.
+ (err): Change myname from dgawk to gawk when debugging;
+ reflects the correct source of error messages.
+
+ * builtin.c, msg.c: Change stdout to output_fp.
+ (do_fflush): Also flush output_fp if not stdout.
+
+ * command.y (yylex, yyparse): (Much) improved error recovery.
+
+ * awkgram.y (yylex): Add 'goto out' in 'check_special'
+ for do_traditional or do_posix check, lost somewhere
+ between 3.1.3 to 3.1.8.
+ (pop_var): New name remove_symbol to go with mk_symbol.
+ (install): New name install_symbol.
+
+ * debug.c:(set_gawk_output): Improved handling of /dev files
+ including /dev/ttyN, /dev/pts/N.
+ (pre_execute): Renamed execute, a pre_hook in r_interpret.
+ (post_execute): New function, a post_hook in r_interpret;
+ used to detect non-local jumps (next, nextfile, exit)
+ with commands 'until' and 'finish', and to print the
+ returned value for finish.
+ (print_instruction): Redo function params initialization
+ when trace is on. Hopefully, correct this time around.
+ (close_all): New function to close all known files
+ during quit and restart.
+
+ * eval.c(r_interpret): Redefine macro JUMPTO to include
+ post_hook from above, and use it exclusively to move to
+ the next instruction for execution.
+
+ * debug.c (do_run): Trap gawk fatal errors.
+Sun Sep 5 12:44:24 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (check_bracket_exp): Add `warned' flag to table and adjust
+ code to only warn once about each candidate.
+ (make_regexp): Always call check_bracket_exp, per discussion
+ on comp.lang.awk.
+
+Fri Aug 6 16:29:55 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (check_bracket_exp): Improved the code, again.
+
+Thu Aug 5 18:41:27 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (check_bracket_exp): Improved the code.
+
+Tue Aug 3 11:35:11 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (check_bracket_exp): New function.
+ (make_regexp): Call it if do_lint.
+
+Thu Jul 1 19:22:33 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add support for /inet4/... and /inet6/... files.
+
+ * io.c (socketopen): New parameter `family' for address family.
+ (inetfile): New function. Changed everywhere to use it and
+ the values it sets.
+
+Fri Jun 25 01:01:39 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Added short option letters for all long options
+ that didn't have them so that they can be used in #!. This
+ reinstates -r, FWIW.
+ (usage): Revised message to list standard options first, then
+ options for extensions, sorted by short letter.
+
+Mon Jun 21 23:05:20 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ New FPAT variable and patsplit built-in function.
+
+ * awk.h (NODETYPE): Add Node_FPAT.
+ (FPAT_node, do_patsplit, set_FPAT): Declare.
+ (set_FPAT, update_PROCINFO_str, update_PROCINFO_num,
+ current_field_sep): New functions.
+ * awkgram.y (tokentab): Add patsplit.
+ (snode): Add code for do_patsplit to default third arg to FPAT.
+ (isnoeffect, isassignable): Add cases for Node_FPAT.
+ * eval.c (nodetypes): Add FPAT.
+ (r_tree_eval, r_get_lhs): Add cases for Node_FPAT.
+ * field.c (fpat_parse_field, update_PROCINFO_num, set_FPAT,
+ do_patsplit): New functions.
+ (update_PROCINFO): Renamed to update_PROCINFO_str.
+ (FPAT_re_yes_case, FPAT_re_no_case, FPAT_regexp): New variables.
+ (using_FIELDWIDTHS): Replaced with current_field_sep and all calls.
+ * io.c (set_RS): Call current_field_sep insead of using_fieldwidths.
+ * main.c (main): Use update_PROCINFO_str and update_PROCINFO_num
+ instead of manually updating the array.
+ (varinit): Add FPAT.
+ * profile.c (tree_eval, pp_lhs, is_scalar, pp_var): Add case for
+ Node_FPAT.
+
+Fri Jun 12 13:25:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Make command line arguments that are directories a warning.
+ They remain a fatal error if --posix or --traditional.
+
+ * configure.ac: Remove the --disable-directories-fatal option.
+ * io.c (nextfile): Rationalize the code that handles directories,
+ including setting ERRNO correctly.
+
+Thu Feb 26 20:57:52 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes from August 2008 through February 2009 to add
+ BEGINFILE and ENDFILE, originally against 3.1.6, merged into
+ development version.
+
+ * awk.h (in_beginfile_rule, in_endfile_rule): Add declarations.
+ * awkgram.y (beginfile_block, endfile_block): Add declarations.
+ (beginfile_or_endfile_rule, parsing_endfile_rule): New variables.
+ (LEX_BEGINFILE, LEX_ENDFILE): New tokens, new rules for those tokens.
+ (tokentab): Add new entries for BEGINFILE, ENDFILE.
+ (LEX_NEXTFILE): Allow nextfile in BEGINFILE rule.
+ (LEX_GETLINE): Allow only `getline var < file' inside BEGINFILE or
+ ENDFILE.
+ * eval.c (interpret): Check in_beginfile_rule and in_endfile_rule for
+ errors for next and nextfile.
+ (update_ERRNO_saved): When errno == 0, set to ERRNO to
+ null string.
+ (interpret): Allow nextfile in BEGINFILE rule.
+ (update_ERRNO_saved): Check errcode paramater, not global errno.
+ * io.c (beginfile_block, endfile_block, in_beginfile_rule,
+ in_endfile_rule): New variables.
+ (do_input): Set them. Update ERRNO only if not do_traditional.
+ Propogate error code down to fatal message.
+ (run_beginfile_rule, run_endfile_rule): New functions.
+ (iop_alloc): Use it instead of inline code. Add fourth argument
+ indicating that the open hooks should run. Adjust calls. Point is
+ to not call open hooks twice inside `nextfile'.
+ (do_nextfile): Check it and also in_beginfile_rule and only longjump
+ when both filebuf valid and not in a BEGINFILE rule.
+ (nextfile): Call run_beginfile_rule and run_endfile_rule as
+ appropriate. Reorder the logic to set ERRNO and allow BEGINFILE
+ to call nextfile to skip a bad data file. Adjust calls to
+ iop_open and find_open_hook.
+ (nextfile): Call iop_alloc if there's a BEGINFILE block in case
+ the hooks changed.
+ (find_open_hook): New function.
+ (get_a_record): On read error, just set *errcode and return. Let
+ higher level logic decide if it's fatal.
+ (inrec): Have error be fatal if traditional or if there isn't
+ an ENDFILE rule.
+ * profile.c (dump_prog): Add code for BEGINFILE / ENDFILE.
+ * awk.h (dump_prog): Adjust declaration.
+ * main.c (main): Adjust call to `dump_prog'. Check beginfile_block and
+ endfile_block also to be not NULL in order to call do_input. Thanks to
+ Steffen Schuler for pointing out the bug.
+
+Thu Feb 26 07:54:51 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Per advice from BWK and my own feelings, nuke additions from 2001
+ of seek and tell functions. They were never documented anyway.
+
+ * awk.h (do_seek, do_tell): Remove declarations.
+ (IOBUF): Remove save_start and rec_size members.
+ * awkgram.y (tokentab): Remove "seek" and "tell" entries.
+ * io.c (do_getline): Remove code setting save_start and rec_size.
+ (iop_alloc): Remove code initializing save_start and rec_size.
+ (do_seek, do_tell): Removed.
+ * configure.ac: Remove --enable-seektell option.
+
+Mon Feb 16 21:54:13 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (tokentab): Enable switch / case by default.
+ * configure.ac: Remove test for --enable-switch.
+
+Thu Feb 12 22:06:17 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (optab): --gen-po becomes --gen-pot. -r goes away since it's
+ now on by default.
+ (usage): Similar changes.
+ * regex.h [RE_SYNTAX_GNU_AWK, RE_SYNTAX_POSIX_AWK]: Adjust to support
+ interval expressions.
+ [RE_DEBUG]: Nuke: it is no longer used.
+ * re.c (resetup): Adjust comment for do_intervals.
+ (reflags2str): Remove RE_DEBUG.
+
+Sat Jan 17 20:41:54 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (WSTRCUR): Always define, no real need for ifdef.
+ * eval.c (flags2str): Similar.
+ * field.c (rebuild_record): Similar.
+
+Sat Jan 17 19:59:39 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add indirect function calls. They require a special
+ syntax, which is an `@' in front of a function call.
+
+ * awk.h (NODETYPE): New Node_indirect_function_call value.
+ (ASSIGNED): New flag value.
+ * eval.c (nodetype2str): Add new node type.
+ (flags2str): Add ASSIGNED.
+ (func_call): Test the node type to determine
+ what kind of call. Cache the function body if a real function
+ is called indirectly. Also get scoping right if called from a function.
+ LOTS of work here to get this code right!
+ (op_assign): Add ASSIGNED to flags.
+ * awkgram.y (function_call, direct_function_call): New productions for
+ creating indirect function calls. Only call func_use for direct call.
+ (yylex): Add case for '@'. Only return it if not posix or traditional.
+ * profile.c (tree_eval): Add case for Node_indirect_func_call.
+ (pp_func_call): Check type and print '@' for indirect call.
+
+Tue Dec 30 22:25:04 2008 Assaf Gordon <gordon@cshl.edu>
+
+ * awk.h (do_sandbox): New variable declaration.
+ * main.c (do_sandbox): Variable definition.
+ (opttab): Add new option --sandbox.
+ (usage): Add to usage message.
+ * builtin.c (do_system): Disallow if sandboxed.
+ * io.c (redirect): Disallow redirections if sandboxed.
+
+Tue Dec 30 22:22:04 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (usage): Change --binary to --characters-as-bytes,
+ per Karl Berry.
+
+Thu Dec 18 05:29:46 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * field.c (*_parse_field): Add `sep_arr' argument and fill it.
+ * field.c (do_split): Add handling of fourth argument of awk
+ builtin `split'.
+ * field.c (get_field): Extend parse_field by default argument.
+ * awkgram.y (tokentab): Extend `split' entry with fourth argument.
+
+Wed Dec 17 09:54:00 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (do_binary): New variable for new option -b which
+ makes gawk not mess with multibyte strings.
+ (opttab): Add option entry for -b / --binary.
+ (main): If do_binary, set gawk_mb_cur_max to 1.
+
+Sat Oct 27 22:43:50 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (resetup): Add RE_INVALID_INTERVAL_ORD to syntax bits if
+ doing interval expressions.
+
+Thu Oct 25 23:11:10 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (devopen): Add `isdir' pointer argument.
+ * io.c (devopen): Ditto. Adjust logic that checks for directory.
+ Adjust all calls.
+ * main.c (main): Adjust call to devopen.
+
+Sun Oct 3 23:18:44 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (lex): Enabled \s and \S escape sequences.
+ * regcomp.c (peek_token): Ditto.
+
+Tue Aug 3 13:29:53 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): Make POSIX 2001 behavior the
+ default for `sub' and `gsub'.
+
+Wed Aug 21 13:39:08 2002 Dean Wakerly <dean@wakerly.com>
+
+ * main.c (main): Add short option letter 'r' for --re-interval.
+ Mainly for use in #! scripts.
+
+Wed Dec 26 22:03:48 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ Nuke /dev/pid etc. special files!
+
+ * awk.h (IOP_IS_INTERNAL, IOP_NO_FREE): Removed. Other defines
+ renumbered.
+ * io.c (iop_open, spec_setup, specfdopen, pidopen, useropen): Removed.
+ (do_input, redirect): Change uses of iop_open() to devopen() +
+ iop_alloc().
+ (iop_close, get_a_record): Remove special handling for IOP_INTERNAL,
+ IOP_NO_FREE.
+ (devopen): Remove comment relating to iop_open.
+ Add fstat check for valid fd for /dev/fd/N.
+
+Sun Nov 4 10:27:58 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h, builtin.c, awkgram.y: Renamed mark/reset to tell/seek.
+ * acconfig.h: Add `#undef SEEK_TELL'.
+ * configure.in: Add `--enable-seektell' configure-time option.
+ * io.c (do_seek, do_tell): renamed from do_reset, do_mark.
+
+Thu Aug 16 12:21:28 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ New feature, undocumented for now, use #define MARK_RESET to
+ to turn it on. New function val = mark("/some/file") to
+ save start position of current record. Use
+ reset("/some/file", pos) to go back to it. ONLY works
+ with getline.
+
+ * awk.h (IOBUF): New members save_start and rec_size.
+ (do_mark, do_reset): Add declarations.
+ * awkgram.y (tokentab): Add entries for mark and reset.
+ * io.c (specsetup): Initialize save_start and rec_size.
+ (iop_alloc): Ditto.
+ (do_getline): Update them as appropriate.
+ (do_mark, do_reset): New functions.
+
+Fri Sep 17 12:42:42 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (btowc): Changed to use mbrtowc.
+
+Wed Sep 15 08:26:55 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Further sync with GNU grep.
+
+Tue Sep 14 09:53:55 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (str2wstr): Per advice from Ulrich Drepper, when converting,
+ if the current byte is isprint, isgraph, iscntrl or zero, then it
+ can't start a multibyte character. This can save many calls to
+ `mbrtowcs', and speed up the conversion considerably.
+
+Mon Sep 13 11:19:21 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: Sync with GNU grep.
+ * re.c (dfawarn): New routine for use by dfa.
+
+Sun Sep 12 22:17:02 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (tree_eval): Fix comment on for ... delete array loop.
+ (pp_string_fp): Get escapes right on regex constant.
+
+Sun Sep 5 20:38:42 2010 John E. Haque <j.eh@mchsi.com>
+
+ * re.c (str2wstr): Decrement src_count when skipping bad bytes.
+
+Fri Aug 27 13:51:13 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Sync with current GNU grep - minor edits only.
+
+Fri Aug 20 16:26:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (tree_eval): Always parenthesize Node_cond_exp.
+ May add a few extra parens but guarantees the right semantics.
+ Thanks to Hermann Peifer <peifer@gmx.eu> for the bug report.
+
+Thu Aug 19 21:35:13 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.c (re_string_reconstruct): Move ifdef out to cover
+ variable declarations, to avoid "unused variable" warnings.
+ * regexec.c (check_arrival_add_next_nodes): Bracket declaration of
+ `err' with ifdef for the same reason.
+
+ Thanks to avarab@gmail.com for the suggestions.
+
+Wed Aug 18 22:13:30 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (AUTOMAKE_OPTIONS): Added. Other minor cleanups.
+
+Tue Aug 17 23:27:43 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pp_string_fp): Use different sets of escape characters
+ if printing a string or a regex, based on delimiter. Thanks to
+ Hermann Peifer <peifer@gmx.eu> for the bug report.
+
+Sun Aug 8 23:05:09 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (make_regexp): Don't allocate rp->dfareg unless
+ we're using dfa; causes a memory leak otherwise. Thanks to
+ Antonio Columbo for reporting the bug.
+
+Wed Jul 14 23:04:30 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * dfa.c: Include langinfo.h only if HAVE_LANGINFO_CODESET is
+ defined.
+
+Wed Jul 14 23:00:19 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yylex): Allow a backslash before CR-LF to also
+ work for line continuation, for MS-DOS style source files.
+ Thanks to (Vincent Belaiche) for pointing this out.
+
+Wed Jul 14 22:31:53 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (str2wstr): Keep going if get a bad multibyte sequence.
+ Allows match to give correct answers for RSTART, RLENGTH.
+ Add a lint warning. Correctly set the length of the string
+ based on pointer subtraction.
+
+Wed Jun 16 21:52:09 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (exec_count): Moved into NODE structure as standalone
+ element since count on `/pat/ { ... }' was wrong. Thanks to
+ Hermann Peifer <peifer@gmx.eu> for the bug report.
+
+ Note to self: DO NOT propogate this to the byte-code version.
+
+ Unrelated:
+
+ * awkgram.y (matchop): Made left associative to match behavior
+ of other awks.
+ (print_expression_list): Simplified so that something like
+ `print ("a", "b") in B in A' will work. Again, to match what
+ other awks do.
+
+Fri Jun 4 15:56:59 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Further merges with GNU grep.
+
+Thu May 20 22:20:32 2010 Stepan Kasal <skasal@redhat.com>
+
+ * Makefile.am [AUTOMAKE_OPTIONS]: Removed, contents now in ...
+ * configure.ac [AM_INIT_AUTOMAKE]: ... here.
+ Added dist-xz while I'm at it, per Karl Berry.
+
+Tue May 18 14:52:04 2010 Marcin Szewczyk <Marcin.Szewczyk@wodny.org>
+
+ * builtin.c (format_tree): Simplify code in pr_tail when multibyte
+ and %s or %d.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Fri Apr 30 11:37:54 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Remove check for libsnprintf.
+
+Tue Apr 27 22:23:26 2010 Andreas Schwab <schwab@linux-m68k.org>
+
+ * builtin.c (do_mktime): Make lint check more sane.
+ Fix overflow check. Removes GCC warning that Arnold
+ incorrectly didn't like.
+
+Mon Apr 26 20:16:07 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ltmain.sh: Removed.
+ * builtin.c (do_mktime): Restored old code to match the
+ documentation. We now have a warning that we just have to
+ live with. Sigh. Stupid GCC. Added a lint warning though.
+ (format_tree): More code so that %'d acts like %d on systems
+ without <locale.h>.
+ * main.c (main): Add `&& #if defined(HAVE_LOCALE_H)' for
+ call to setlocale.
+
+Wed Apr 21 23:35:43 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Change quoting of -Dargs so that even tcsh
+ users will be happy.
+ * regex_internal.c (MAX): Add `#undef MAX', just in case.
+ * configure.ac: Don't look for libsigsegv on OSF/1, gives
+ us severe headaches.
+
+Tue Apr 20 12:01:01 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: Sync with GNU grep. The long-standing x{0} bug
+ is now gone. Matching UTF-8 with "." is now much faster.
+ * re.c (avoid_dfa): Remove call to dfabroken() which is now gone.
+ * builtin.c (do_mktime): Simplify check of values passed in to be
+ more readable and to avoid a weird compiler warning from GCC.
+
+Fri Apr 16 15:02:26 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Add cast in error message to turn
+ off compiler warning.
+ * dfa.c (is_blank): New function. Use it everywhere instead of
+ ctype.h `isblank' macro which isn't available universally.
+
+Tue Apr 13 22:36:31 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c, awkgram.y, builtin.c, dfa.c, eval.c, ext.c, main.c,
+ node.c, re.c: Remove old ISxxx and TOxxx macros in favor of
+ standard versions. ``We're two wild and crazy guys!''
+
+Tue Apr 13 22:07:18 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getopt.c, getopt.h, getopt1.c, getopt_int.h, regcomp.c, regex.c,
+ regex.h, regex_internal.c, regex_internal.h, regexec.c: Sync with
+ glibc. What the heck.
+
+Thu Apr 8 21:33:09 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: All leading indentation is now spaces only. Yet
+ another sync with grep.
+
+Thu Apr 8 20:45:25 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Move dfa internals into dfa.c and sync with grep. Avoids VMS and
+ z/OS compile problems in order to avoid cygwin issue when used
+ with ligsigsegv. ("Portability? We don't need no stinkin'
+ portability!")
+
+ * dfa.h: Move all the internals into dfa.c.
+ (dfaalloc, dfamusts, dfabroken): Add declarations.
+ * dfa.c: Accept all the internals.
+ (dfaalloc, dfamusts, dfabroken): New functions.
+ * awk.h (Regexp): Use a `struct dfa *'.
+ * re.c (make_regexp): Call dfaalloc. Adjust uses of dfareg
+ in other routines.
+ (refree): Free the dfa struct too.
+
+Tue Apr 6 23:06:55 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: Further sync with GNU grep for enum change
+ and other misc changes.
+
+Tue Apr 6 20:13:45 2010 Michal Jaegermann <michal@harddata.com>
+
+ * main.c: Wrap declarations and bodies of `catchsegv' and
+ `catchstackoverflow' in #ifdef HAVE_LIBSIGSEGV to avoid
+ "not used" warnings.
+
+Tue Apr 6 20:11:47 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h: Move definition of token enum to dfa.c to avoid conflict
+ with Windows WCHAR introduced by libsigsegv. Thanks to Corinna
+ Vinschen.
+ * dfa.c: Enum body here.
+ (in_coll_range): z/OS fix: Initialize array to all zeros and assign
+ values instead of putting them into the initializer. Thanks to Dave
+ Pitts for reporting the problem.
+
+Fri Apr 2 12:32:40 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Sync with grep 2.6.3.
+
+Wed Mar 31 15:50:34 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (dfaexec): Move decl of `saved_end' up to top of function.
+ Fixes compilation on C89 compilers.
+
+Mon Mar 29 08:40:29 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ Remove local copy of libsigsegv. Use an external copy if available.
+
+ * Makefile.am: Remove SEGVSUBDIR and SEGVINCLUDE.
+ * configure.ac: Remove previous code that handled the library and use
+ gl_LIBSIGSEGV library.
+ * custom.h: Remove code for HAVE_SIGSEGV_H.
+ * main.c: Move to HAVE_LIBSIGSEGV.
+ * libsigegv/ : Removed.
+
+Mon Mar 29 05:41:35 2010 Corinna Vinschen <vinschen@redhat.com>
+
+ * dfa.c: Include hard-locale.h after xalloc.h because it needs
+ xmalloc.
+ * hard-locale.h (xmalloc): Remove declaration.
+ (hard_locale): Cast xmalloc to correct target type.
+
+Mon Mar 29 05:38:47 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c: (two_way_open): In counting down retries, test for > 0
+ instead of >= 0 since retries is unsigned. Thanks to Pat Rankin
+ for noticing.
+ * configure.ac: Remove use of -export-dynamic on cygwin.
+
+Thu Mar 25 21:48:13 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Sync to grep 2.6.1. That's probably enough for now.
+
+Wed Mar 24 19:48:01 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: More sync with grep.
+
+Tue Mar 23 19:42:48 2010 Jeff Chua <jeff.chua.linux@gmail.com>
+
+ * io.c (two_way_open): Bug fix in management of timeout value.
+
+Tue Mar 23 19:40:04 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: Synced with released grep 2.6. Oh Frabjous Day!
+ Callou! Callay!
+
+Mon Mar 22 22:49:44 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.c: Regenerated using bison 2.4.2.
+
+Fri Mar 19 10:19:20 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Minor edits for compat with grep.
+
+Fri Mar 19 09:19:56 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (two_way_open): Cleanup new code for socket opens.
+ * replace.c: Include missing_d/usleep.c based HAVE_USLEEP.
+ * configure.ac: Add usleep to list of functions to look for.
+
+Thu Mar 18 23:30:33 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: Imported from GNU grep and merged. Passes "make test".
+ * xalloc.h: New file, needed by dfa.c.
+ * Makefile.am (base_sources ): Added xalloc.h.
+
+Thu Mar 18 07:29:45 2010 Jeff Chua <jeff.chua.linux@gmail.com>
+
+ * io.c (two_way_open): Make failure to open a socket a non-fatal error.
+ Allow the amount of time to sleep during socket retries to come from an
+ undocumented env variable giving time in milliseconds.
+
+Mon Mar 8 20:58:05 2010 Paolo Bonzini <bonzini@gnu.org>
+
+ More fixes from GNU grep.
+
+ * dfa.c (dfaexec): Remove register keywords.
+ (FETCH): Use do..while(0) idiom.
+ (parse_bracket_exp_mb): Return MBCSET.
+ (in_coll_range): New.
+ (lex): Assign return value of parse_bracket_exp_mb to lasttok,
+ return it. Use in_coll_range instead of regcomp/regexec.
+
+Mon Mar 8 20:36:35 2010 Jim Meyering <jim@meyering.net>
+
+ Fixes from GNU grep development version:
+
+ build: avoid shadowing warnings
+ * dfa.c (match_mb_charset): Rename parameter: s/index/idx/.
+ (check_matching_with_multibyte_ops, match_anychar): Likewise.
+
+ build: avoid shadowing warning for unused "rs"
+ * dfa.c (transit_state): Remove dead stores;
+ Ignore transit_state_consume_1char return value.
+
+ syntax: remove trailing blanks
+ * dfa.c: Remove trailing blanks, to ease synchronization with grep.
+
+ clean-up: limit visibility of an internal function
+ * dfa.c (match_mb_charset): Declare static.
+
+ build: rename local to avoid shadowing global, dfa
+ * dfa.c (dfamust): Rename parameter: s/dfa/d/.
+
+Thu Feb 18 22:44:01 2010 Arnold D. Robbins <arnold@skeeve.com>0
+
+ * eval.c (push_args): Clear the stack to NULL pointers after mallocing
+ it. Fixes yesterday's problem when called from a rule.
+ See test/fcall_exit2.awk. Thanks to Seb <sbb@tuxfamily.org>.
+
+Wed Feb 17 23:19:32 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (pop_fcall): Check that argument on stack is not NULL before
+ attempting to clear it; add comment explaining it.
+ (push_args): Set nodes to zero for argument to make sure that values
+ are NULL for testing later in pop_fcall. See test/fcall_exit.awk.
+ Thanks to Seb <sbb@tuxfamily.org>.
+
+Sun Jan 31 22:46:49 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (prec_level): Add Node_regex to the switch so that
+ `! /xxx/' works. Thanks to Hermann Peifer <peifer@gmx.eu> for
+ reporting the bug.
+
+Thu Jan 28 17:40:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure, Makefile.am: Updated to Autoconf 2.65 and Automake 1.11.1,
+ libsigsegv 2.8.
+
+Thu Jan 21 23:24:56 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pprint): Separate out code for Node_switch_body and only
+ print the lnode; avoids printing the default case twice. Thanks to
+ Hermann Peifer <peifer@gmx.eu> for reporting the bug.
+
+Sun Jan 3 21:03:01 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Added casts as needed to silence warnings about
+ signedness of pointers from GCC 4.x.
+
+Fri Jan 1 11:41:50 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): At pr_tail, remember to take the precision
+ into account when determining how many characters to copy out.
+ Thanks to tczy <cy@wre.ath.cx> for the bug report.
+
+Tue Dec 8 12:29:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac, awk.h: Remove use of <signum.h> header file.
+
+Mon Dec 7 15:25:02 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Use <= and >= in the comparisons with
+ LONG_xxx instead of < and > so that things work correctly on systems
+ with 64 bit integers. Thanks to Stephen Davies for pointing out
+ the problem.
+
+Sat Nov 21 23:14:59 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): If there is not an actual thousands
+ separator character, don't let `quote_flag' have an effect. Fixes
+ test failure on Solaris 10, which bizarrely says to use the
+ thousands separator character every three digits, but then doesn't
+ actually supply one. Thanks to Nelson Beebe for the initial
+ report.
+
+Mon Nov 16 22:27:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (getnode): If MPROF wrap body in parentheses; remove
+ incorrect trailing semicolon.
+ * bisonfix.awk: Convert "y.tab.c" to "awkgram.c" for those rare
+ instances where we need to use a debugger on the parser so
+ that gdb will find the right source file.
+
+2009-10-26 Andreas Schwab <schwab@linux-m68k.org>
+
+ * io.c (iop_open): Set errno when rejecting a directory.
+
+Tue Oct 20 22:48:14 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (constant_fold): Fix check for two strings to look
+ at `right->flags'. Fix division code to check for division by
+ zero first. Thanks to Stephen Davies <scldad@sdc.com.au>
+ for both.
+
+Fri Oct 16 08:41:29 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): Do the close-on-exec setting before
+ attempt to get a FILE *. Thanks to Andreas Schwab.
+
+Wed Oct 14 23:25:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): When opening a file, set the close-on-exec flag.
+ Thanks to Chris Pearson <kermit4@gmail.com> for the bug report.
+
+Tue Oct 6 21:07:23 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): When an option requires an argument and we print a
+ message, call `usage' and exit.
+
+ Fix all calls to `usage' to use EXIT_FAILURE and EXIT_SUCCESS
+ instead of 1 and 0.
+
+Sun Oct 4 21:46:11 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Don't reset argv[0] to myname. In call
+ to `init_args', pass argv[0] if do_posix. Based on
+ Fedora bug report.
+
+Sun Oct 4 18:45:06 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): In lint warning, don't clobber
+ the character at the end of the subscript; instead use the
+ length to limit the number of characters printed. Thanks to
+ Nick Hobson <nick.hobson@yahoo.com>.
+
+Sun Aug 30 22:40:12 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_length): Handle the case where Node_var_new
+ was passed in as a parameter via a function call parameter.
+ Thanks to Greg Johnson <gregfjohnson@yahoo.com> for reporting
+ the bug.
+
+Tue Aug 11 19:23:51 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (parenthesize_expr): New function.
+ (tree_eval): Use it for Node_and and Node_or. Thanks to
+ Hermann Peifer <peifer@gmx.eu> for reporting the bug.
+
+Tue Aug 4 06:04:23 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): zero_flag does not apply to
+ %c and %s conversions. Thanks to Mike Brennan and Thomas Dickey
+ for the bug report.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Fri Jul 17 08:35:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.c: Rebuilt with current Bison (2.4.1).
+
+Thu Jul 9 22:55:17 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * (NEWS README array.c awk.h awkgram.y builtin.c configure
+ configure.ac custom.h dfa.c ext.c field.c floatcomp.c io.c
+ main.c node.c profile.c re.c replace.c): Update copyrights
+ and other prep for a release.
+
+Thu Jul 9 22:20:04 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (init_locale): New function to make a deep copy of the
+ struct lconv. Thanks to KIMURA Koichi <kimura.koichi@canon.co.jp>
+ for the info.
+ * eval.c (r_tree_eval): Further improve Node_assign_concat code to
+ temporarily to keep reference counts correct and to get the
+ desired behavior.
+
+Mon Jul 6 20:29:12 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * floatmagic.h: Remove @ signs copied from Texinfo.
+ It would help if I were more awake.
+
+Sat Jul 4 21:55:18 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (base_sources): Add floatmagic.h so it'll
+ go into the tar ball.
+
+Fri Jul 3 13:47:36 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (is_scalar): Add Node_func_call to list.
+ (pp_concat): Make logic smarter for tree created by Node_assign_concat.
+
+Fri Jul 3 13:01:49 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (optimize_concat): New function that applies
+ Node_assign_concat more generally.
+ * eval.c (r_tree_eval): Improve Node_assign_concat code to temporarily
+ increase the stref on `l' to avoid side effects during evaluation of
+ `r'. This makes test/nasty.awk work. Ouch.
+
+Tue Jun 30 22:10:37 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * floatmagic.h: New file.
+ * builtin.c (format_tree): Use functions defined in floatmagic.h.
+
+Tue Jun 30 21:57:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac, Makefile.am: Add new --disable-libsigsegv command line
+ option to configure.
+ (LIBSIGSEGV, SEGVINCLUDE, SEGVSUBDIR): New variables that will be empty
+ if libsigsegv is disabled so nothing will happen, and that will have the
+ right values otherwise. They are then substituted into the Makefile.
+
+Wed Jun 24 23:00:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bootstrap.sh: Revised. Now works again. We think. (CVS-only file)
+
+Wed Jun 24 21:57:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h: Move z/OS EXIT_FAILURE definition from here to ...
+ * awk.h: Here. Define at end after regular definition.
+
+Thu Jun 18 06:17:38 2009 Scott Deifik <scottd@amgen.com>
+
+ * awk.h: Don't define HAVE_SIGSEGV_H for DJGPP.
+
+Thu Jun 18 05:38:42 2009 Dave Pitts <dpitts@cozx.com>
+
+ * custom.h: Changes needed for z/OS.
+
+Wed Jun 10 08:22:53 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (parse_escape): Add a lint warning if \x.. has more than two
+ hex digits.
+
+2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
+
+Mon Jun 8 22:13:49 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update to Autoconf 2.63, Automake 1.11, Libtool 2.2.6a
+
+ * ltmain.sh: New file.
+ * configure.ac: Changes to keep infrastructure tools happy.
+ * alocal.m4, configure: Regenerated.
+ * Makefile.in, */Makefile.in: Regenerated.
+
+Mon Jun 8 07:43:25 2009 John DuBois <spcecdt@armory.com>
+
+ * builtin.c (mbc_byte_count, mbc_char_count): Make sure all declarations
+ come before executable code, for older compilers.
+ * dfa.c (insert): Ditto.
+ * io.c (devoopen): Ditto.
+
+Thu May 21 21:11:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add simple constant folding.
+
+ * awk.h (do_optimize): New declaration.
+ (calc_exp): Add declaration.
+ * eval.c (calc_exp): Make non-static.
+ * main.c (do_optimize): New variable.
+ (opttab): Add new entry for --optimize.
+ (main): Add 'O' to optlist and code for argument parsing.
+ (usage): Update for new option.
+ * awkgram.y (Node_concat, Node_exp, Node_times, Node_quotient, Node_mod,
+ Node_plus, Node_minus): Call `constant_fold' to create the node in
+ the tree.
+ (constant_fold): New function.
+
+Fri May 15 16:02:01 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (getnode): For MPROF: Fix a typo.
+
+Fri May 15 14:10:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Function arguments cannot be reserved variable names, per POSIX.
+
+ * main.c (struct varinit): Add flags member.
+ (varinit): Add values for flags member (one or both of NON_STANDARD
+ or NO_INSTALL). Add entries for the rest of the gawk variables and
+ sort them, so that the table can be searched by ...
+ (is_std_var): New routine to see if a name is a standard variable.
+ * awk.h (is_std_var): Add declaration.
+ * awkgram.y (func_install): Use new routine and issue error.
+
+Wed Apr 22 07:42:05 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): In code for handling \<dig> replacements,
+ first make sure that <dig> is within the range of parentheses sets
+ given, and then make sure that the subpattern start is not -1, meaning
+ that something actually matched. Thanks to Martin Olsson
+ <mnemo@minimum.se> for the bug report.
+ (do_length): Add a lint warning if `length' is passed an untyped
+ argument.
+
+Thu Apr 16 22:59:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (func_call): Save nloops_active; if after function returns
+ the actual nloops_active is greater than the saved value, it means
+ there was a return inside the loop body, so pop off the necessary
+ number of loops. Bug reported by Aleksey Cheusov <a.cheusov@gmail.com>.
+ Gawk was not leaking memory - that is, things were still pointed
+ to, but memory use could keep on growing.
+
+Fri Mar 27 10:59:11 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Add lint warnings for fieldwidth and/or
+ precision in %%, and add lint warning for unknown format specifier
+ (e.g. %b). Thanks to "joanes.polus" <joanes.polus@laposte.net> for
+ the report.
+
+Wed Mar 18 18:15:41 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * awk.h (EXIT_SUCCESS, EXIT_FAILURE): Move VMS-specific values
+ to vms/vms-conf.h.
+ (EXIT_FATAL): Define here instead of in msg.c.
+ * msg.c (EXIT_FATAL): Move definition to awk.h.
+
+Mon Mar 16 18:58:09 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * main.c [#if HAVE_SIGSEGV_H]: For the #else case (VMS),
+ (stackoverflow_context_t): Dummy typedef for use in prototypes;
+ (stackoverflow_install_handler): Make macro expand to 0 rather
+ than nothing so that (void) cast on invocation of it works.
+
+ * main.c (catchstackoverflow): Don't return 0 from void function.
+
+Wed Feb 25 21:34:14 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (tokentab): Have only one copy of BEGIN / END.
+ (tokcompare): New function.
+ (check_special): Sort tokentab for EBCDIC systems.
+
+Sun Feb 15 22:39:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pp_delete): Print tree->exec_count to actually get
+ the value printed. Thanks to Hermann Peifer <peifer@gmx.eu>
+ for reporting the bug.
+
+Thu Feb 12 21:54:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Change to use EXIT_FAILURE.
+ * msg.c [EXIT_FATAL]: New macro.
+ * msg.c (r_fatal): Change to use EXIT_FATAL.
+ Thanks to Pat Rankin for pointing these out.
+ * re.c (reflags2str): Account for RE_SYNTAX_EMACS.
+ * awk.h: If not VMS, define HAVE_SIGSEGV_H.
+ * main.c: Check HAVE_SIGSEGV_H before including <sigsegv.h>. If not
+ there, define dummy macros.
+ (catchsegv, catchstackoverflow): Remove unneeded comment. Add return 0
+ for compilers that care.
+
+Mon Feb 9 05:24:52 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [CONST]: Renamed CONSTANT to avoid conflict with libsigsegv
+ on Windows.
+ * awkgram.y, field.c, re.c: Update all uses.
+
+Tue Feb 3 22:46:59 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (do_close): Wrap updating of ERRNO in check for not
+ do_traditional.
+
+Sat Jan 31 23:14:00 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): For '%s', don't count the multibyte
+ characters if we are just copying all the characters. Gives
+ big speedup. Thanks to Hirofumi Saito <hi_saito@yk.rim.or.jp>
+ for reporting the problem.
+
+Thu Jan 29 21:14:30 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (parse_field, re_parse_field, def_parse_field,
+ posix_def_parse_field, null_parse_field, sc_parse_field,
+ fw_parse_field): Add new last arg `in_middle'. Ignored by all
+ except re_parse_field.
+ (re_parse_field): Enhance logic to only allow ^ in a regex to match
+ if indeed at the beginning of a record.
+ (getfield): Adjust call to parse_field.
+
+Tue Jan 27 21:42:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes suggested by Toni Schilling <Schilling@equicon.de>,
+ as modified by feedback from Pat Rankin, and some help
+ from me.
+
+ * awk.h [WEXITSTATUS]: Improve definition for MSC and VMS.
+ [EXIT_SUCCESS, EXIT_FAILURE]: Define if they aren't.
+ * io.c, main.c, profile.c: Switch to using EXIT_xxx instead of
+ 0 and 1.
+ (main): Use constants instead of 0/1 for exit_val variable.
+ * eval.c (interpret): Map exit value from `exit' statement into
+ success / fail constants for VMS for exit_val variable.
+
+Tue Jan 20 07:35:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.h: Define __USE_GNU if not _LIBC; needed for non-GLIBC
+ systems such as, oh say, Mac OS X.
+
+Tue Jan 13 09:23:40 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.c, regex_internal.h: Remove some changes that are no
+ longer needed after sync with GLIBC.
+
+Mon Jan 12 22:27:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Bi-annual sync with GLIBC.
+
+ * regexec.c, regex.h, regex_internal.c, regcomp.c, regex_internal.h,
+ regex.c: Reapply any portability patches specific to gawk.
+ * getopt.c: Sync with GLIBC.
+
+ Base versions:
+ getopt.c 1.57 Thu Jan 8 20:02:05 2009
+ getopt.h 1.21 Fri Mar 19 00:19:32 2004
+ getopt1.c 1.10 Tue Mar 9 10:35:37 2004
+ getopt_int.h 1.1 Tue Mar 9 10:31:19 2004
+ regex.c 1.129 Tue Sep 6 20:49:44 2005
+ regexec.c 1.99 Thu Jan 8 20:02:06 2009
+ regexec.c 1.99 Thu Jan 8 20:02:06 2009
+ regex.h 1.43 Wed Jan 16 10:09:47 2008
+ regex_internal.c 1.69 Thu Jan 8 20:02:06 2009
+ regex_internal.h 1.76 Thu Jan 8 20:02:06 2009
+ regcomp.c 1.120 Thu Jan 8 20:02:06 2009
+
+Mon Jan 5 23:07:58 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (devopen): Add a retry to calls to socketopen. Tunable
+ via undocumented GAWK_SOCK_RETRIES environment variable. Based
+ on code from Juergen Kahrs <Juergen.Kahrs@vr-web.de> after a
+ suggestion from Hermann Peifer <peifer@gmx.eu>.
+
+Mon Jan 5 22:48:39 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): A getline from a directory is no longer
+ fatal; instead it returns -1. Thanks to Paolo <oopla@users.sf.net>
+ for the report.
+
+Mon Dec 29 22:04:57 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Case for 's', improve logic for setting
+ the number of characters to copy, also at pr_tail. Based on
+ bug report by Hermann Peifer <peifer@gmx.net>.
+
+Thu Dec 11 21:23:50 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_length): If the wide string has zero length
+ but the bytes are more than zero, use the number of bytes.
+ (do_index): Similar also: fall back to byte count if the
+ bytes don't make a wide-character string.
+ Bug reported by "Carlos G." <charlie.brown.uy@gmail.com>
+
+ (do_substr): If defaulting to length of rest of the string,
+ do it based on the wide char string if it's valid.
+
+Fri Dec 5 11:12:11 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (free_rp): New function.
+ (redirect): Improved logic for yesterday's change, including
+ use of free_rp.
+ (close_redir): Use free_rp.
+
+Thu Dec 4 22:35:05 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): Only put the new struct redirect into
+ the list if the file or pipe could actually be opened. Fixes
+ a bug with the wrong return value of close, noticed by
+ Seb <sbb@tuxfamily.org>.
+ * dfa.c (parse_bracket_exp_mb): Don't zero out work_mbc->chars
+ after we malloc'ed it. Fixes a leak found by valgrind when
+ using UTF-8. (Hmmm. This got fixed in January 2007; It seems
+ to have crept back into the code in the August 2007 merge with
+ GNU grep. Sigh.)
+
+Mon Oct 20 11:47:59 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add -g3 and -gdwarf-2 to CFLAGS if compiling with
+ GCC and doing development. Should have done this ages ago.
+
+Sun Aug 31 22:03:55 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Tighten up the code even more so
+ that it matches the documentation.
+
+Mon Aug 25 22:41:47 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Tighten up the code to only allow
+ certain reasonable values when setting BINMODE.
+
+Fri Aug 22 14:43:49 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (nextfile): Users Strong In The Ways Of The Source can use
+ non-existant files on the command line without it being a fatal error.
+
+Wed Jul 30 23:10:51 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (research): Don't ever use DFA if need_start. It can
+ break on some weird cases. Reported by
+ "T. X. G." <leopardie333@yahoo.com>.
+
+Wed Jul 30 22:27:20 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_match): Add MAYBE_NUM flag to elements of array
+ created by `match' since data could come from user. Similar
+ semantics to `split'. Thanks to Dr. Dirk Zimoch <dirk.zimoch@psi.ch>
+ for reporting the bug.
+
+Tue Jun 24 07:44:06 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (insert): Reworked for significant speed improvement
+ by Johan Walles <johan.walles@gmail.com>. Imported from grep
+ bug list.
+ * profile.c (tree_eval): Do a return after all the built-in
+ variables instead of a break. Thanks again to Hermann Peifer
+ <peifer@gmx.eu> for finding the problem.
+
+Sun Jun 22 23:08:14 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Restore old code to use %ld when the value
+ is within the range of a long; improves performance noticably for
+ applications that convert integers to strings. Use %.0f only for
+ integral values that are outside the range of a long. Thanks to
+ Hermann Peifer <peifer@gmx.eu> for pointing out the existence
+ of a problem.
+
+Fri May 23 12:08:24 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (epsclosure): Change type of `visited' from int to char for
+ potential speedup. Based on bug report to bug-grep list from
+ Johan Walles <johan.walles@gmail.com>.
+
+Wed May 14 05:55:48 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): For `%c' case, add a lint warning
+ if the value is greater than 255.
+ (mbc_byte_count, mbc_char_count): Remove unused variable `i'.
+
+Thu Apr 24 20:31:03 2008 Bruno Haible <bruno@clisp.org>
+
+ * main.c (main): Move call to catch SIGBUS to before installation of
+ libsigsegv handler, since on some systems libsigsegv installs its
+ own handler for SIGBUS.
+ [STACK_SIZE]: Add a constant instead of inline. ADR.
+
+Wed Apr 23 22:30:27 2008 Duncan Moore <duncan.m00re@btinternet.com>
+
+ * builtin.c (state): Do as an integer array for systems that need it.
+ (do_rand, init_rand): Modify call to `initstate' as needed.
+
+Wed Apr 23 22:22:06 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (prednames): Add an extra zero to final initializer to
+ silence a compiler warning. Reported by Duncan Moore
+ <duncan.m00re@btinternet.com>.
+
+Wed Apr 23 21:36:06 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * field.c (fw_parse_field): Add code for multibyte case.
+
+Sat Mar 15 22:17:21 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_length): Handle the case of the parameter being
+ an array that was a function parameter.
+
+Tue Mar 11 22:49:11 2008 Kimura Koichi <kimura.koichi@canon.co.jp>
+
+ * builtin.c (format_tree): Fix call to mbc_byte_count to pass the
+ right number of characters based on the format type.
+
+Tue Mar 11 22:31:58 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * libsigsegv: Incorporated into the dist.
+ * Makefile.am (SUBDIRS): Added. Make it first so that the library
+ is built before gawk is.
+ (LDADD): Add the library.
+ (AM_CPPFLAGS): Add -I option to find <sigsegv.h> header.
+ * configure.ac: Add call to AC_CONFIG_SUBDIRS for libsigsegv.
+ * main.c (catchsegv, catchstackoverflow): New functions.
+ (main): Call into sigsegv library with them.
+
+Tue Mar 4 21:02:25 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (mbc_char_count, mbc_byte_count): New functions to return
+ the number of m.b. chars there are and the number of bytes needed to
+ copy them.
+ (format_tree): Use them for %s and %c cases to adjust precision and
+ for copying characters at pr_tail label.
+
+Thu Feb 14 14:05:01 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (init_args): Adjust type of third arg to remove warning from
+ GCC 4.2, add cast in call to make_string. Bleah.
+
+Fri Jan 25 12:13:39 2008 Dave Pitts <dpitts@cozx.com>
+
+ * README_d/README.zos: New file.
+ * Makefile.am: Add sed on y.tab.c to convert older Bison "parse error"
+ messages to "syntax error" messages.
+ * configure.ac: Added ZOS_USS changes.
+ * m4/arch.m4: Added ZOS_USS changes.
+ * m4/inttypes_h.m4: Added ZOS_USS changes.
+ * m4/inttypes.m4: Added ZOS_USS changes.
+ * m4/stdint_h.m4: Added ZOS_USS changes.
+ * awkgram.y: Added USE_EBCDIC changes for EBCDIC collating sequence.
+ * awk.h: Added ZOS_USS compile changes.
+ * eval.c: Added EBCDIC casetable and ZOS_USS changes.
+ * regcomp.c: Added btowc function for ZOS_USS.
+ * regex.h: Changed __string to __cstring to avoid ZOS_USS header usage.
+ * regex_internal.h: Added ZOS_USS changes and type defines.
+
+Sun Jan 13 08:16:38 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (epsclosure): Replace MALLOC + zero-out-loop with CALLOC for
+ large potential speedup, based on bug report to bug-grep list from
+ Johan Walles <johan.walles@gmail.com>.
+ (dfaanalyze): Made a similar change.
+
+Fri Dec 21 11:22:16 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pprint): Add a missing `#ifdef PROFILING'.
+
+Thu Dec 13 22:19:19 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (parenthesize): Remove "!" from output string.
+ (tree_eval): Fix quotes for delete array case.
+ (pp_var): New function, call it as appropriate everywhere else.
+
+Fri Nov 30 11:11:52 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Use NULL as first argument to `getaddrinfo'
+ if any_remote_host is true. Should help on Non-GLIBC systems.
+
+Thu Nov 15 22:01:36 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (two_way_open): Case for ptys. Change search for letters
+ to avoid ASCII / EBCDIC problems.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Sun Oct 14 23:19:12 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.am: Avoid GNU make-specific `make -C'.
+
+Sun Oct 14 19:37:01 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add check for `atexit', needed by replacement
+ version of `snprintf'.
+
+Sun Sep 30 21:50:59 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Rationalize locale's influence on %'g, strtonum, and input.
+
+ * awk.h (use_lc_numeric): Add declaration.
+ * builtin.c (format_tree): Add check for quote_flag and set
+ LC_NUMERIC so that The Right Thing gets done, then reset it.
+ (do_strtonum): Pass use_lc_numeric as second arg to isnondecimal.
+ * main.c (main): Have do_posix set use_lc_numeric also.
+
+Thu Sep 27 21:36:23 2007 Stepan Kasal <skasal@redhat.com>
+
+ * configure.ac: Do not instantiate version.c; remove the hack
+ to keep version.c from being removed upon `make distclean'.
+ * Makefile.am (version.c): New rule.
+ (.c.i, SUFFIXES): Remove, `.i' is unused.
+ (MAINTAINERCLEANFILES): Remove awkgram.c; Automake takes care of that.
+
+Wed Sep 26 14:40:13 2007 Eli Zaretskii <eliz@gnu.org>
+
+ * builtin.c (format_tree): Handle non-standard snprintf that
+ returns a negative value when the buffer is too small.
+
+Tue Sep 25 23:27:41 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ChangeLog: Removed all leading spaces. Fixed up formatting of
+ entries to have capital letter after the colon. Fixed a number of
+ entries to have the '*' in the right place. ASCII instead of ascii.
+ Capitalize Linux. (Is this anal-retentive or what? Sheesh.)
+
+Tue Sep 25 08:24:11 2007 KIMURA Koichi <kimura.koichi@canon.co.jp>
+
+ * awk.h: Add include of <io.h> for Visual Studio.
+ * regex_internal.h: Do the right thing for replacing alloca.
+
+Sat Sep 22 23:26:27 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_FIELDWIDTHS): Restore behavior of 3.1.4 that allowed
+ FIELDWIDTHS to be "" without crashing, and such a value has NF = 0.
+ Yet Another Dark Corner. Thanks to Glenn Zazulia <gnu@t1.zazu.com>
+ for pointing out the problem.
+
+ Unrelated:
+
+ * builtin.c (format_free): Make `quote_flag' not sticky. Thanks to
+ Ulrich Drepper for pointing this out.
+ * main.c (main): Adjust calls to `setlocale' and `localeconv' so that
+ the %'d flag will work even if not using the locale's decimal point.
+
+Thu Sep 20 21:02:41 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (hash, awk_hash, gst_hash_string): Add fourth argument
+ pointer to retrieve code. Only assign a value if not NULL.
+ Fix most places to pass NULL for fourth argument.
+ (assoc_lookup): Save the code in the node for use in growing the
+ array later.
+ (grow_table): Use the saved code instead of recomputing each time.
+ * awk.h (NODE hash): Add `code' member and `ahcode' macro.
+ (hash): Revise declaration.
+ * awkgram.y: Revise calls to `hash'.
+
+Tue Aug 21 17:47:07 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (copyleft): Cite version 3 of the license.
+ * dfa.c: Minor edits to sync with grep 2.5.3.
+
+Sat Aug 11 22:48:11 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * COPYING: Replaced with GPL 3.
+ * All other relevent files: Upgraded to GPL 3.
+
+Fri Aug 3 15:01:38 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * builtin.c (format_tree): Free `obuf' before call to `fatal'
+ to keep valgrind happy.
+
+Mon Jun 4 01:12:21 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * All relevant files: Updated copyright year to 2007.
+
+Mon May 28 08:06:15 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (use_lc_numeric): New variable, true for new
+ option `--use-lc-numeric'.
+ (optab): Add option "use-lc-numeric".
+ (usage): Add to usage message.
+ (main): Allow the --use-lc-numeric option to also use the
+ local decimal point.
+
+Fri May 18 16:26:00 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (_TANDME_SOURCE): Add test for ! _SCO_DS for
+ SCO systems. Thanks to John DuBois <spcecdt@armory.com>
+
+Tue May 15 13:14:04 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ General capability suggested by Michael May <mmlpz@t-online.de>.
+
+ * configure.ac: New option --disable-directories-fatal. Makes gawk
+ silently skip directories on the command line.
+ * io.c (iop_open): Add fourth parameter, pointer to flag which is set
+ to true if the file is a directory. In this case, close the fd and
+ return NULL.
+ (nextfile): Modify call to iop_open. Add logic to check for directory
+ and skip if --disable-directories-fatal was used. If the configure flag
+ was not used, then if do_traditional also skip.
+ (redirect): Modify call to iop_open and call fatal if isdir is true.
+
+Mon May 7 14:51:54 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * POSIX.STD: Updated.
+
+Wed May 2 19:29:56 2007 Stepan Kasal <kasal@ucw.cz>
+
+ Revert precedence of concatenation and | getline.
+ From mail dated 2005-10-31.
+
+ * awkgram.y (common_exp): Move the two rules for naked regexp and
+ the rule for "(...) in arr" to ...
+ (non_post_simp_exp): ... here ...
+ (simp_exp): ... and here, respectively. Fixes test/parsefld.awk/.
+ (simp_exp_nc): New nonterminal, needed to fix the
+ precedence of concatenation over "|getline".
+ (common_exp): Can also start with simp_exp_nc.
+
+Tue May 1 19:53:11 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Work around problem with /ab{0}c/.
+ * dfa.h (struct dfa): Add member `broken'.
+ * dfa.c (dfainit): Initialize it to false.
+ (lex): Set it if `minrep == maxrep && minrep == 0'.
+ * re.c (avoid_dfa): Check flag and return TRUE if set.
+
+Tue May 1 05:34:53 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add calls to AM_LANGINFO_CODESET, and gt_LC_MESSAGES.
+ Thanks to Matthew Burgess <matthew@linuxfromscratch.org>.
+
+Sun Apr 29 22:55:12 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (utf8_sb_map): Remove const if not __GNUC__ >= 3.
+ * regex_internal.h (re_dfa_t): Bracket bizarre macro call with
+ check for _LIBC.
+ Thanks to Nelson Beebe for finding both problems.
+
+Sun Apr 29 13:10:31 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_strftime): Add optional third argument to strftime()
+ which if non-zero or non-null means to use UTC.
+ * awkgram.y (tokentab): Allow three arguments to strftime.
+
+Fri Apr 27 11:44:27 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * README.cvs, bootstrap.sh: Added to CVS archive, not for
+ inclusion in tarballs.
+
+Fri Apr 20 16:48:30 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * awk.h: Move inclusion of redirect.h before HAVE_func blocks.
+
+Tue Apr 24 21:55:36 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (research): In the multibyte case, fall back to the full
+ matcher if need_start, since there are bugs in the dfa matcher
+ in some obscure cases. Sigh.
+ * builtin.c (format_tree): When using %.0f instead of %d, assert
+ that we're not malloc-ing zero.
+
+Tue Apr 17 21:51:40 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Portability fixes for lsbcc from Nelson Beebe.
+
+ * configure.ac: Check for stddef.h header.
+ * regex.h: Use check and include header to get size_t definition.
+ * main.c: Update UPDATE_YEAR, add #ifdef for HAVE_MTRACE.
+
+Tue Apr 17 13:49:13 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add test for struct sockaddr_storage.
+ * io.c: Add macro to redefine sockaddr_storage as sockaddr.
+
+Tue Apr 17 05:45:19 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Make it static, to match declaration at the
+ top of the file. (Thank you GCC for not reporting this. Grr.)
+
+Fri Apr 13 00:29:24 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * replace.c: Only include missing/getaddrinfo.c if HAVE_SOCKETS
+ is defined. Avoids problems on VMS. Thanks to Pat Rankin.
+
+Tue Apr 10 18:53:04 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y, builtin.c, eval.c, ext.c, field.c, io.c,
+ node.c: Added some sanity to the lint warnings, to only
+ print them once if they are syntactic or of the type where
+ they don't need to be repeated. Switch to `short' instead
+ of `int', and in general use a variable named `warned', for
+ consistency.
+
+Sun Apr 8 16:49:28 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Add guard code to ifdef out "signed" for VMS. Thanks for
+ the heads-up to Pat Rankin.
+ * regcomp.c (utf8_sb_map, init_dfa): Move non-GCC code to initialize
+ this array into code, to preserve word-size independance.
+ * configure.ac: Add check for <arpa/inet.h>.
+ * io.c: Include <arpa/inet.h> if we have it, instead of keyed off
+ Tandem, needed on some Unix systems.
+ * awk.h, main.c, msg.c, awkgram.y: Move to use of CAN_USE_STDARG_H
+ instead of continuously repeating check for header and defined STDC
+ and STDC. Thanks to Pat Rankin.
+
+Fri Apr 6 15:28:09 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_length): Only print `length(array)' lint warning once.
+ * node.c (dump_wstr): Restore from being ifdef'ed out. Useful in case
+ it needs to be called from a debugger.
+ * regcomp.c (utf8_sb_map): Fix gcc-specific code.
+ * awk.h (snprintf): Add declaration in case not available on the system.
+ (Ceil, Floor): Add macros changing the name for VMS, in an attempt to
+ fix linkage problems.
+ * io.c: Simplify includes for internet headers and for getaddrinfo
+ defines.
+
+Wed Apr 4 23:38:24 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c [AI_ADDRCONFIG]: Add a definition in case it's not available.
+ * main.c (usage): Add comment for translators to add translation
+ bug report address.
+
+Wed Apr 4 18:26:45 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * regexec.c (build_trtrable): Add missing #if HAVE_ALLOCA.
+
+Thu Mar 29 19:30:20 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * re.c (make_regexp): Cast casetable to RE_TRANSLATE_TYPE.
+
+Mon Mar 19 12:35:00 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Finish removing references to STRTOD_NOT_C89.
+
+ * awk.h (gawk_strtod): Use now if there is no strtod.
+ * replace.c (strtod.c): Include if there is no strtod.
+ * configure.ac [GAWK_AC_FUNC_STRTOD_C89]: Removed.
+
+Mon Mar 19 12:17:16 2007 Kimura Koichi <kimura.koichi@canon.co.jp>
+
+ * dfa.c (dfaexec): Add check for half-width katakana characters in
+ character classes in ShiftJIS locale.
+ From mail originally sent Mon, 01 Aug 2005 09:07:55 +0900
+
+Fri Mar 9 11:53:25 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (rebuild_record): Assert that wide string is off when
+ creating new fields. Inspired by Karel Zak.
+
+Fri Mar 9 11:26:01 2007 Matthew Woehlke <mwoehlke@tibco.com>
+
+ * io.c (get_a_record): Limit the max amount read to SSIZE_MAX. Needed
+ on Tandem systems where this amount is incredibly small.
+
+Tue Mar 6 08:17:49 2007 Paul Eggert <eggert@cs.ucla.edu>
+
+ * node.c (is_ieee_magic_val): Don't rely on strncasecmp; it mishandles
+ ASCII bytes in some locales.
+ (get_ieee_magic_val): Use strtod if it works, relying on our handbuilt
+ code only if it doesn't work. This is more likely to do the right
+ thing with strings like "-nan".
+
+Tue Feb 27 20:51:29 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac (AM_PROG_CC_STDC): Removed, per email suggestion
+ from Stepan Kasal some time ago.
+
+Tue Feb 27 20:44:07 2007 Aleksey Cheusov <vle@gmx.net>
+
+ * awk.h: Revise checks for MEMCPY_ULONG and MEMSET_ULONG
+ for MS Interix using MSVC.
+ * configure.ac (AC_CHECK_FUNCS): Add checks for memcopy_ulong
+ and memset_ulong.
+ From mail dated Tue Aug 30 12:38:39 2005.
+
+Mon Feb 26 12:47:10 2007 Tony Leneis <tleneis@cvrreg.com>
+
+ * dfa.c (dfacomp): Check that regexp is non-zero in length
+ also. Avoids problems with empty regex and IGNORECASE on
+ systems where `malloc(0)' returns a non-NULL pointer.
+ From mail dated Wed, 26 Oct 2005 15:42:07 -0700.
+
+Wed Feb 21 10:23:12 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * floatcomp.c (Floor, Ceil): Restore correct expression for Cray.
+ Then ifdef out the whole business, since it's likely to be obsolete.
+ Thanks to Paul Eggert.
+
+Mon Feb 19 12:28:47 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Simplify code: always format the value
+ ourselves. Use %.0f if the value is integral.
+ * floatcomp.c (dval_out_of_range): Remove function, not needed.
+ (awknum_fraction_bits): Removed.
+ (adjust_uint): New function, defined IFF have uintmax_t.
+ * builtin.c (tmp_integer): Use adjust_uint.
+ Move include of <inttypes.h> and <stdint.h> ...
+ * awk.h: to here.
+ (awknum_fraction_bits): Removed.
+ (adjust_uint): Declare, or define as do-nothing macro.
+
+Sun Feb 18 17:43:33 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c, floatcomp.c: Add include of <math.h> to get
+ correct declarations of math functions.
+ * configure.ac: If doing development, add -DYYDEBUG and also
+ -fno-builtin for GCC.
+
+Wed Feb 14 19:42:08 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add support for special infinity and NaN values in non-POSIX
+ mode, and in POSIX mode, just call system `strtod'.
+
+ * configure.ac [GAWK_AC_FUNC_STRTOD_C89]: Comment out.
+ * node.c (is_ieee_magic_val, get_ieee_magic_val): New functions.
+ (r_force_number): Adapt logic and use new functions.
+
+Tue Feb 13 13:02:32 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Move Paul's numeric stuff to a separate file to make code cleaner.
+
+ * floatcomp.c (awknum_fraction_bits): New variable.
+ (Floor, Ceil): Functions, moved here from macros in builtin.c.
+ (dval_out_of_range): New function for checking if double is in range
+ of long.
+ (FLT_RADIX, FLT_MANT_DIG, DBL_MANT_DIG, AWKSMALL_MANT_DIG,
+ AWKNUM_MANT_DIG, AWKNUM_FRACTION_BITS): Moved here from awk.h.
+ * awk.h: Add decls of stuff now in floatcomp.c.
+ * Makefile.am[base_sources]: Add floatcomp.c.
+ * builtin.c (tmp_integer): Refer to `awknum_fraction_bits'
+ instead of AWKNUM_FRACTION_BITS.
+ * node.c (format_val): Call `dval_out_of_range' instead of
+ inline coding the test.
+
+2007-02-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ * node.c (format_val): Fix bug when handling numbers close to
+ LONG_MIN and LONG_MAX.
+ * awk.h (FLT_RADIX, FLT_MANT_DIG, DBL_MANT_DIG, AWKSMALL_MANT_DIG,
+ AWKNUM_MANT_DIG, AWKNUM_FRACTION_BITS): Moved here from builtin.c.
+ * builtin.c: Move those macros to awk.h.
+ * awk.h (DBL_FRACTION_BITS): New macro.
+
+Fri Feb 9 13:40:10 2007 Matthew Woehlke <mw_triad@users.sourceforge.net>
+
+ More Tandem fixes.
+
+ * configure.ac: Check in Tandem's zrldsrl library for dlopen.
+ * regex_internal.h: Move <alloca.h> include into ifdef.
+ * regexec.c: Bracket alloca uses. Fix GCC use of `?:'.
+
+Fri Feb 9 13:30:15 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * replace.c: Add include of snprintf.c. Ooops!
+ * configure.ac: Add check for mkstemp and tmpfile for replacement
+ snprintf.c.
+
+Tue Feb 6 14:33:51 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Restructure a bit to remove need for and
+ use of goto.
+
+Sun Feb 4 16:35:21 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (field_spec, opt_incdec): New terminals.
+ (variable): Change definition of field reference to use field_spec.
+ See test/parse1.awk.
+
+Thu Feb 1 17:38:38 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c: Allow YYDEBUG to enable the `-D' option, not just
+ GAWKDEBUG.
+
+Wed Jan 31 19:30:26 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Restore my test for numeric values
+ being representable, as it includes more conditions than
+ Andrew's, pending a thorough review of undealt-with emails on
+ the topic.
+ * regexec.c (proceed_next_node): Move check for NULL to after
+ variable declarations inside initial `if'.
+
+Wed Jan 31 19:25:21 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * configure.ac (getaddrinfo): Improve test, since this function
+ can be in libsocket on some systems.
+
+Mon Jan 29 15:33:10 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am (valgrind): Also call new valgrind-scan target.
+
+Mon Jan 29 12:44:54 2007 Andreas Schwab <schwab@suse.de>
+
+ * dfa.c (copytoks): Adjust index into multibyte csets when
+ copying an MBCSET token.
+
+Fri Jan 26 20:01:38 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * node.c (format_val): Test whether a numeric value is integral
+ simply by converting it to long and then back again, and checking
+ if the value matches. That's more robust than trying to test
+ whether the floating-point value is representable as a long.
+ * builtin.c (format_tree): Fix buffer overflow bug, off-by-one errors
+ in checking snprintf return codes, and use "%.0f" to implement "%d"
+ formatting. For octal or hex formatting, test whether the value
+ is integral by trying to convert back to floating point and seeing
+ if the value matches. This is more robust than trying to test
+ whether the floating-point value is representable as an integer.
+
+Tue Jan 23 17:49:28 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Initialize socketfd to avoid "may be used
+ uninitialized" warning.
+ * regexec.c (regexec, re_search_stub): Removed unused variable `dfa'.
+ * builtin.c (wide_tolower_toupper): Fix signedness of pointer in
+ allocation calls and in call to make_str_node.
+
+Mon Jan 22 12:57:19 2007 Kimura Koichi <kimura.koichi@canon.co.jp>
+
+ Deal with halfwidth katakana in SJIS locale inside character ranges.
+ Based on http://sources.redhat.com/bugzilla/show_bug.cgi?id=1149.
+ Changes affect non-__LIBC code only.
+
+ * regcomp.c (re_compile_fastmap_iter): Handle half-size characters.
+ * regexec.c (check_node_accept_bytes): Same.
+
+Thu Jan 18 22:19:01 2007 Karel Zak <kzak@redhat.com>
+
+ * node.c (free_wstr): Assert that type is Node_val.
+
+Thu Jan 18 12:18:47 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (re_compile_fastmap_iter): Declare `dfa' to be
+ be volatile. Fixes valgrind problem with the ignrcase test.
+ Sheesh. Gawk should now be valgrind-clean. We hope.
+
+Mon Jan 15 14:28:04 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Use getaddrinfo instead of gethostbyname, to handle IPV6
+ format addresses. Based on patch submitted by
+ Jan Pazdziora <jpazdziora@redhat.com>.
+
+ * configure.ac: Add getaddrinfo to list of checked functions.
+ * configh.in, configure: Regenerated.
+ * io.c: Rework includes based on HAVE_GETADDRINFO.
+ (socketopen): Reworked for getaddrinfo.
+ (devopen): Modified for new socketopen.
+ * replace.c: Include getaddrinfo.c if necessary.
+
+Sun Jan 14 12:19:53 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: For bad name in array subscripting, build a
+ valid node anyway to avoid invalid reads reported by valgrind.
+ * dfa.c (parse_bracket_exp_mb): Remove assignment of NULL
+ to work_mbc->chars, was losing data malloc'ed earlier. Thanks
+ to valgrind.
+ (state_index): Alway initialize d->states[i].mbps elements to zero.
+ (dfafree): Free allocated d->states[i].mbps.elems if needed.
+ * regex.c: Try harder to undef alloca.
+ * regex_internal.h (__mempcpy): Undef before redefinining for
+ more recent versions of GLIBC.
+
+Sat Jan 13 22:10:43 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (str2wstr): For count of zero from mbrtowc, set count to 1
+ and fall through to code that copies. Originally from Paul Eggert.
+
+ Unrelated:
+ * configure.ac: Add call to AC_USE_SYSTEM_EXTENSIONS, should help
+ on Tandem. This lets us remove AC_AIX and AC_MINIX.
+
+ From Matthew Woehlke <mwoehlke@tibco.com> for Tandem:
+
+ * awk.h (_TANDEM_SOURCE): Also define _XOPEN_SOURCE_EXTENDED.
+ * io.c (_TANDEM_SOURCE): Include more headers.
+
+Sat Jan 13 21:53:48 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * field.c (set_FIELDWIDTHS): Avoid writing one past the end of
+ the array.
+ * node.c (r_force_number): Avoid reading uninitialized variable.
+
+Sat Jan 13 21:37:15 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (valgrind): New target based on idea from
+ Ralf Wildenhues for running valgrind on test suite.
+
+Sat Jan 13 21:24:54 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Enable more `--lint-old' warnings.
+ * awkgram.y: Warning about multiple BEGIN or END rules,
+ `index in array' outside of for loops, multidimensional arrays.
+ * field.c (set_FS): Warn about regex FS.
+ * node.c (parse_escape): Warn about `\b', `\f', `\r'.
+
+Sat Jan 13 20:56:56 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (wcasestrstr): Revert use of continue, reinstate goto.
+ Thanks to Andrew Schorr.
+ (free_wstr): Move zeroing of wsptr and wslen and clearing of flag
+ back outside the if.
+ * field.c (rebuild_record): In loop that copies fields to new record,
+ add call to `free_wstr'. This ensures that flag values are correct
+ and avoids double free later. Thanks to Karel Zak for pointing out
+ the problem.
+
+Fri Jan 12 14:01:51 2007 Dmitry V. Levin <ldv@altlinux.org>
+
+ * builtin.c (do_match): In addition to "gawk_mb_cur_max > 1" check,
+ check for positive string length.
+
+Fri Jan 12 13:57:20 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ Sync with GLIBC. Bi-annual this time.
+
+ * regexec.c, regex.h, regex_internal.c, regcomp.c:
+ Reapply any portability patches specific to gawk.
+ * regex_internal.h (build_wcs_upper_buffer): Fix return type
+ in declaration. Reapply any portability patches specific to gawk.
+ * regex.c: Add definitions for `bool', `true' and `false'.
+ Define `alloca' to something invalid to keep it from linking
+ in case a usage of `alloca' slipped through. Reapply any portability
+ patches specific to gawk.
+
+ Base versions:
+ getopt1.c 1.10 Tue Mar 9 10:35:37 2004
+ getopt.c 1.55 Fri Mar 24 10:59:56 2006
+ getopt.h 1.21 Fri Mar 19 00:19:32 2004
+ getopt_int.h 1.1 Tue Mar 9 10:31:19 2004
+ regex.c 1.129 Fri Mar 24 10:59:57 2006
+ regexec.c 1.97 Fri Mar 24 10:59:57 2006
+ regex.h 1.40 Mon Sep 25 20:03:05 2006
+ regex_internal.c 1.67 Mon Sep 25 20:03:05 2006
+ regex_internal.h 1.73 Fri Mar 24 10:59:57 2006
+ regcomp.c 1.112 Fri Mar 24 10:59:57 2006
+
+Fri Jan 12 12:28:51 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ABOUT-NLS, INSTALL, Makefile.in, aclocal.m4, config.guess,
+ config.rpath, config.sub, configh.in, configure, configure.ac,
+ depcomp, gettext.h, install-sh, missing, mkinstalldirs, ylwrap:
+ Updated to current autotools, Autoconf 2.61, Automake 1.10,
+ gettext 0.16.1.
+
+Thu Jan 4 18:23:50 2007 Dmitry V. Levin <ldv@altlinux.org>
+
+ * node.c (free_wstr): Zero wstptr and wstlen only if WSTRCUR
+ flag is set.
+ (str2wstr): Replace invalid `free' call with `free_wstr' call.
+
+Thu Jan 4 16:49:21 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_match): Move freeing of wc_indices to outside if.
+ Thanks to Sven Wegener <swegener@gentoo.org> for the report.
+
+Thu Dec 21 14:32:13 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (arg_assign): Reassign the '=' only if not initing.
+ * profile.c (varname): Deleted.
+ (pp_concat): New function to print concatenations.
+ (tree_eval): Don't use `varname' anymore. Use `pp_concat'.
+
+Mon Dec 11 12:43:04 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): Clear numeric flags on result
+ unconditionally.
+ * node.c (wcasestr): Replace `goto' with `continue'.
+
+Thu Nov 30 15:54:07 2006 Bruno Haible <bruno@clisp.org>.
+
+ * builtin.c: Change use of HAVE_LC_MESSAGES to defined(LC_MESSAGES).
+ Bruno suggested only for dcngettext, I did it everywhere (ADR).
+
+Wed Sep 6 02:04:32 2006 Andrew J. Schorr <aschorr@telemetry-investments.com>
+
+ * awkgram.y (get_src_buf): Adjust `source' and `sourceline' to
+ correctly handle mixed -f and --source options.
+
+Mon Aug 28 21:17:20 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * AUTHORS, FUTURES, LIMITATIONS, NEWS, POSIX.STD, PROBLEMS, README:
+ Added FSF copyright for no other reason than to satisfy the flunkies
+ running Savannah.
+ * Makefile.am: Removed `ansi2knr' from AUTOMAKE_OPTIONS also.
+
+Fri Aug 11 15:07:45 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_field, rebuild_record, set_record): Remove calls to
+ `free_wstr' since they're not needed.
+
+Sat Aug 5 22:04:24 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (unref): Call `free_wstr' for fields also. Thanks to
+ Andrew Schorr.
+
+Tue Jul 4 22:43:05 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (interpret): Node_assign_concat case: Turn off NUMBER and
+ NUMCUR flags in result. Sheesh. Thanks to
+ <Heiner.Marxen@DrB.Insel.DE> for finding the problem.
+
+Mon Jul 3 22:49:44 2006 Pat Rankin <rankin@pactechdata.com>
+
+ * main.c (load_environ): When AWKPATH is missing from ENVIRON[],
+ try to find it with getenv("AWKPATH") before resorting to DEFPATH.
+ Suggested by Galen Tackett.
+
+Mon Jul 3 00:27:59 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (INTERNAL_HANDLE): New constant for use by `iop_alloc'
+ when allocating an internal IOBUF.
+ (pidopen, useropen): Use it.
+ (iop_alloc): Add check for it and just return iop.
+
+Fri Jun 23 15:48:34 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (subn): At end for `do_sprintf' check, verify
+ that lnode is not NULL before using it to assign through.
+
+Sun Jun 18 22:27:25 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ Repair internal names like /dev/user, /dev/pid, as well as /dev/fd/N,
+ which have been broken for a long time but noone noticed.
+
+ * io.c (is_internal): New macro to check for internal file like
+ `/dev/user'.
+ (spec_setup): Reduce to two parameters, allocate logic is always true.
+ Add IOP_NO_FREE to flag.
+ (pidopen, useropen): Return `IOBUF *' instead of int. Fix
+ logic to test if `iop' parameter is NULL and if so to allocate it.
+ (specfdopen,): Return `IOBUF *' instead of int. Fix
+ logic to test if `iop' parameter is NULL and if so to allocate it.
+ Don't set IOP_NO_FREE in flag.
+ (iop_open): Remove `IOBUF iob' field from `struct internal' and its use
+ and the use of `spec_setup' from the code here. Change the check in the
+ call to the open function to look for NULL.
+ (get_a_record): Use `is_internal' in initial check for filling the
+ buffer to not try to call `read' on internal files. If true, set
+ the IOP_AT_EOF in the flag and return EOF.
+
+Fri Mar 24 13:05:56 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (get_src_buf): Remove function argument types from
+ declaration of `readfunc' to avoid bugaboos with VMS declaration
+ of `read' system call.
+
+Fri Mar 10 06:28:23 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (free_wstr): New declaration if MBS_SUPPORT, empty macro
+ otherwise.
+ * node.c (free_wstr): New function, inside MBS_SUPPORT. Frees the wide
+ string part of a node. Provided so that it can be used consistently
+ everywhere.
+ (format_val, r_dupnode, mk_number, make_str_node, unref): Use it.
+ * builtin.c (sub_common): Call `free_wstr' instead of doing it manually.
+ * eval.c (r_tree_eval): Same in Node_assign_concat case.
+ * field.c (set_field, rebuild_record, set_record): Add calls to
+ `free_wstr'.
+
+Mon Feb 13 22:45:34 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_tree_eval): Node_assign_concat. Release any
+ wide string value and reset the WSTRCUR flag. Based on
+ bug report by Karel Zak.
+
+2006-01-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ * Makefile.am (awkgram.c): Use $(AWK), not awk, so that the rule
+ works on Solaris too (e.g., Solaris 10). Problem reported by
+ Andrew J. Schorr.
+
+Mon Dec 19 05:39:46 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (format_val): Account for overlow of conversion
+ from double to long. Shows up worse on 64-bit systems.
+
+Wed Dec 14 18:57:34 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Fix logic of test for no numeric value.
+ Makes `gawk -v BINMODE=1 ...' work again. Thanks to Eli Zaretskii
+ <eliz@gnu.org> for pointing out the problem.
+
+Wed Oct 19 10:58:27 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main, arg_init): Only use the locale's decimal
+ point if do_posix is set. Too many people the world over
+ have complained about this.
+
+Fri Oct 7 13:54:09 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Enhancement to fix from 23 Sept 2005, suggested by Pat Rankin.
+
+ * awkgram.y (one_line_close): New function, closes open FILE * used
+ by `read_one_line'.
+ (fp): Static FILE * used by `read_one_line' and `one_line_close'.
+ * awkgram.y (read_one_line): Simplify check for call to `fdopen'.
+ (get_src_buf): New variable `closefunc' which is a pointer to a
+ function implementing the `close' system call interface.
+
+Fri Oct 7 13:23:29 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_FIELDWIDTHS): Fix off-by-one error in assignment
+ of sentinel value at end of FIELDWIDTHS array.
+
+Fri Sep 23 16:05:13 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (read_one_line): New function, mainly for debugging,
+ that reads one line of data at a time to pass back as a buffer.
+ Emulates the variable-length record filesystem of VMS, where
+ we first saw the problem fixed here.
+ (get_src_buf): New variable `readfunc' which is a pointer to a
+ function implementing the `read' system call interface. Based on
+ an environment variable, use `read_one_line' instead of `read'
+ for testing. Make the test for expanding the buffer smarter,
+ so that it doesn't grow unnecessarily.
+
+ Thanks to Galen Tackett (tackett_galen@bah.com) for reporting
+ the problem and to Anders Wallin and Pat Rankin for help
+ tracing and reproducing the problem and testing the fix.
+
+Fri Sep 9 15:06:07 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * hard-locale.h (xmalloc): Move declaration to file scope
+ for non-glibc systems and gcc 4. Thanks to Kito Danya Dietrich
+ <kito@gentoo.org>.
+
+Thu Aug 25 22:40:40 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (build_range_exp): Avoid `btowc' for single-byte
+ characters. Fedora Core 2, maybe others, have a broken version
+ that can't handle values > 127.
+
+Fri Aug 19 16:13:28 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regexec.c (proceed_next_node): Added a band-aid check at the
+ top of the first `if' to make sure that `mctx->state_log[*pidx]'
+ isn't NULL.
+
+Fri Aug 12 13:10:33 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (iop_alloc): Only free `iop' if it was malloc'ed in
+ the first place.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Tue Jul 26 21:44:54 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Copyright dates on all relevant files updated to 2005.
+
+Wed Jul 6 17:09:02 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Minor cleanups:
+
+ * io.c (do_index): Remove unused variables `mbclen', `mbs1' and `mbs2'.
+ * node.c (wstrstr): Remove unsed variable `j'.
+ (dump_wstr): `#ifdef' out, not currently needed.
+ * eval.c (op_assign): Move decl of `t1' and `t2' into a separate block
+ for the `! HAVE_FMOD' case. Keeps the compiler quiet. Similar for
+ `ltemp'.
+
+Wed Jul 6 16:51:31 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (close_io): Now takes pointer to boolean parameter indicating
+ if there was a problem closing standard output or standard error.
+ Update it in the right places.
+ * awk.h (close_io): Update the declaration.
+ * main.c (main): New variable `stdio_problem'. Pass it to `close_io'.
+ Check the result and exit non-zero if there was a problem.
+ (usage, version): Print warning message if problems with stdout.
+
+ Unrelated:
+
+ * main.c (main): For call to `setlocale' for LC_MESSAGES, just use
+ `#ifdef LC_MESSAGES'. Per Bruno Haible <bruno@clisp.org>.
+
+Wed Jul 6 16:44:58 2005 Jim Meyering <jim@meyering.net>
+
+ * main.c (init_fds): If any of the STDIN_FILENO, STDOUT_FILENO,
+ STDERR_FILENO are initially closed, reopen them with permissions
+ contrary to common usage so that any reasonable attempt to use
+ them will evoke the same sort of error as reading or writing to
+ a closed file descriptor would.
+
+Mon Jul 4 09:38:29 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ More multibyte fixes from Kimura Koichi, <kimura.koichi@canon.co.jp>.
+
+ * node.c (format_val, r_dupnode): Spell `wstptr' correctly.
+ * regex_internal.c (build_wcs_upper_buffer): Label `offsets_needed'
+ should not be inside `#ifdef _LIBC'.
+ * regcomp.c (build_charclass): Fix declaration of `class_name' in
+ prototype to not be unsigned.
+
+Thu Jun 30 11:52:34 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (tree_eval): Node_not: Remember to print the exclamation
+ point! Thanks to Dan Nielsen <Dan.Nielsen@corporate.ge.com>
+ for the bug report.
+ * mbsupport.h: Fix spelling of HAVE_ISWUPPER. Thanks to
+ Kimura Koichi, <kimura.koichi@canon.co.jp>.
+
+Sun Jun 26 16:37:59 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Unrelated changes:
+
+ * builtin.c (do_length): Allow array argument to length().
+ Returns number of elements in array.
+
+ * awkgram.y (yylex): Ignore carriage returns in source code. Sigh.
+
+Wed Jun 15 22:12:15 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (isnondecimal): Check loc.decimal_point before using it.
+ Avoids problems with command line assignment when locale info may
+ not be set up all the way yet.
+
+Wed Jun 15 21:59:54 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (make_str_node): If working with multibyte characters, while
+ parsing string constants, keep multibyte characters together. This
+ avoids problems in cases where one of the bytes is backslash. Initial
+ patch supplied by Kimura Koichi, <kimura.koichi@canon.co.jp>.
+
+Tue Jun 14 21:50:37 2005 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ Use Exponentiation By Squaring for integer powers for ^ and ^=.
+
+ * eval.c (calc_exp, cal_exp_posint): New functions.
+ (r_tree_eval): Use them.
+
+Fri Jun 3 12:15:54 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Further change the hack at the end so that
+ it works on Mac OS X `sed'. Sigh.
+
+Thu Jun 2 22:44:01 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac (TYPE_SOCKLEN_T): Use `int' as default type if can't
+ figure one out.
+ * awkgram.y: Warn that `//' is not a C++ comment. (:-)
+
+Thu Jun 2 20:55:27 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ From: Benno Schulenberg <benno@nietvergeten.nl>
+
+ * eval.c (func_call): Take message out of gettext call since it's for
+ debugging.
+ * ext.c (get_actual_argument): Fix formatting of message.
+
+Wed May 25 09:19:37 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Change hack at end that fixes Makefile to keep
+ version.c to use `sed' and not `ed'. More portable to OS/2, probably
+ other systems.
+
+Mon May 23 09:01:26 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Portability help from Jim Meyering.
+
+ * io.c: Rework ifdefs for <inttypes.h> and <stdint.h>. Test them
+ individually.
+ * configure.ac: Add AC_C_RESTRICT and code for socklen_t from rsync.
+ Check for isascii and btowc for regex.
+
+Sat May 14 22:49:54 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * wait_any (errno): Remove decl.
+ * gawk_popen: The pipe-simulated but not VMS or DOS version. Remove
+ decl/use of `strdup' in favor of `emalloc' and `strcpy'.
+
+Wed May 11 18:33:30 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ All files: Updated address of FSF to:
+
+ 51 Franklin Street, Fifth Floor
+ Cambridge, MA 02110-1301
+
+Wed May 11 18:19:03 2005 Jim Meyering <jim@meyering.net>
+
+ * configure.ac: Use AM_GNU_GETTEXT([external]).
+ Reflect upgrade to gettext-0.14.4.
+ Reflect renaming of `jm_'-prefixed macros.
+ (AC_CONFIG_FILES): Remove intl/Makefile.
+
+ * Makefile.am (SUBDIRS): Remove intl.
+ (AM_CPPFLAGS): Remove -Iintl.
+
+Wed May 11 11:42:06 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Straighten out mess with `isblank' which is C99 <ctype.h> function.
+
+ * configure.ac: Remove check for `isblank' in call to AC_CHECK_FUNCS.
+ * regex_internal.h: #ifdef out definition of `isblank' and provide
+ `is_blank' function a la dfa.c.
+ * field.c: Ditto.
+ * regcomp.c: #ifdef use of `isblank' and add `is_blank' use instead.
+
+Mon May 9 08:29:37 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add type check for `socklen_t', fixes compile
+ warning on AMD/64 Linux.
+ * io.c (socketopen): Change type of socket length variables
+ to `socklen_t' from `size_t'.
+
+Thu May 5 22:00:03 2005 John E. Haque <j.eh@mchsi.com>
+
+ * io.c (iop_alloc): Let an input processor hook installed via
+ `register_open_hooks' open its own fd in case gawk does not know
+ how to open it.
+ (iop_open): Call `os_close_on_exec' after `iop_alloc'.
+ ADR: If `iop_alloc' returns NULL but the fd is valid, close
+ the fd to avoid an fd leak.
+
+Mon May 2 08:05:59 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (update_ERRNO): Don't use `return' in a `void' function.
+ * awk.h (AWKNUM): Back out use of `long double' based on LDBL_MANT_DIG.
+ * builtin.c (tmp_integer): Back out extra ifdefs.
+
+Fri Apr 29 13:01:05 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Look for `isblank' function.
+ * field.c: Add define for `isblank' if we don't have it.
+
+Fri Apr 29 12:01:33 2005 Julian Foad <julianfoad@btopenworld.com>
+
+ From grep. Doesn't seem to affect awk.
+
+ * dfa.c (lex): Fix bug #9519: "echo do^re | grep do^re" was
+ failing to find a match. [Towards end, set `lasttok' before
+ returning `c'.]
+
+Fri Apr 29 00:28:46 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Jump through an amazingly convoluted hoop to get
+ config.status to keep version.c upon `make distclean'. Seems to
+ work though.
+
+Thu Apr 28 23:40:02 2005 Stepan Kasal <kasal@ucw.cz>
+
+ * configure.ac (PRINTF_HAS_F_FORMAT): Some cosmetic changes.
+ (custom.h): Don't cat custom.h at the end of config.h; instead, use
+ AH_BOTTOM([#include "custom.h"])
+ * awklib/Makefile.am (AM_CPPFLAGS): Add $(top_srcdir) so that
+ custom.h can be found.
+
+Thu Apr 28 23:21:22 2005 Jim Meyering <jim@meyering.net>
+
+ * field.c (set_FIELDWIDTHS): Tighten up the code to accept FIELDWIDTHS
+ values in [1..INT_MAX], e.g., detect overflow and invalid strings,
+ and reject strings starting with `-'.
+
+Thu Apr 28 23:05:33 2005 Stepan Kasal <kasal@ucw.cz>
+
+ * dfa.c (parse_bracket_exp_mb): Shorten one part of the code, to get
+ closer to grep's copy.
+
+Thu Apr 28 23:00:58 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * builtin.c (format_tree) [#if VAXCRTL]: For floating point
+ formatting, reject zero_flag if using old VAXCRTL run-time
+ library to avoid getting erroneous results which appear as if
+ numerically incorrect (due to an embedded space in some cases,
+ extra trailing zeroes in others) rather than just misformatted.
+ `hsprint' test still fails, but not as badly.
+
+Thu Apr 28 19:12:03 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (reflags2str): Add three new RE_ flags from current regex.h
+ to bring the table up to date.
+
+ * builtin.c (format_tree): Save 2 spare bytes instead of one. Suggested
+ by Stepan Kasal.
+
+Thu Apr 28 18:16:09 2005 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * awk.h (IOBUF): Add new fields `opaque', `get_record', and
+ *close_func', to support insertion of an alternate input processor.
+ This is used by the XML extension.
+ (register_deferred_variable, register_open_hook, update_ERRNO_saved):
+ Declare new functions.
+ (load_environ, load_procinfo): Remove declarations -- these functions
+ are no longer global, since we use register_deferred_variable instead.
+ * awkgram.y (register_deferred_variable): New function to allow
+ calling code to register special variable names that trigger a callback
+ upon the first reference. This is now used to implement ENVIRON
+ and PROCINFO.
+ (variable): Search the list of deferred variables instead of hardcoded
+ tests for ENVIRON and PROCINFO.
+ * eval.c (set_BINMODE): Fix spelling of "arbitrary" in warning message.
+ (update_ERRNO_saved): New function that allows the caller to specify
+ the errno value instead of using the current value.
+ (update_ERRNO): Implement by calling update_ERRNO_saved(errno).
+ * io.c (iop_close): Call `iop->close_func' if non-NULL.
+ (close_redir): Should save `errno' value, otherwise `lintwarn' messages
+ might update it. Then use `update_ERRNO_saved' to set ERRNO.
+ (do_getline): Call `update_ERRNO_saved' to set ERRNO based on the
+ error code returned by the redirect function (instead of the current
+ value of errno). Similarly, use `update_ERRNO_saved' to set ERRNO
+ based on the value returned by `get_a_record'. But add a special
+ check to avoid updating ERRNO if `get_a_record' returns an error
+ code value of -1 (this is used by the XML extension which already
+ sets ERRNO before returning).
+ (register_open_hook): New function to register a function to be
+ called whenever a new data file is opened. This can be used to
+ install a special input processor (as in the XML extension).
+ (iop_alloc): Call registered open hook.
+ (get_a_record): If a `get_record' method has been set, call that instead.
+ * main.c (init_vars): Use `register_deferred_variable' to implement
+ ENVIRON and PROCINFO.
+ (load_environ, load_procinfo): Now static instead of global.
+ * doc/gawk.texi: Document new internal functions `update_ERRNO_saved',
+ `register_deferred_variable', and `register_open_hook'.
+
+Thu Apr 28 10:50:10 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_find, do_delete): Change incorrect uses of STREQN
+ to memcmp.
+ * builtin.c (do_index): Same.
+ * field.c (set_FS): Same.
+ * io.c (redirect, getredirect, do_close, set_RS): Same.
+ * re.c (reisstring): Same.
+
+Wed Apr 27 21:35:57 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Allow for long double. Initial changes from Jean-Marc Saffroy
+ <jean-marc.saffroy@ext.bull.net>.
+
+ * awk.h (AWKNUM): If have long doubles (LDBL_MANT_DIG), define AWKNUM
+ as long double, otherwise just use double.
+ * builtin.c (format_tree): Change type of tmpval to double.
+ (do_strtonum): Same for `d' and types used in casts.
+ (tmp_integer): Don't do bit shifting if have long doubles.
+
+ Unrelated, from Andrew J. Schorr:
+
+ * io.c (close_one): Check for RED_FILE|RED_WRITE, not just RED_FILE.
+
+Mon Apr 25 12:23:18 2005 Andrew J. Schorr <aschorr@telemetry-investments.com>
+
+ * eval.c (r_tree_eval): In Node_assign_concat case, when copying string
+ constants, include the terminating zero byte.
+
+Fri Apr 1 06:26:31 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update to Automake 1.9.5.
+
+ * INSTALL, aclocal.m4, depcomp, install-sh, missing,
+ mkinstalldirs, ylwrap: Updated.
+
+ Unrelated:
+
+ * builtin.c (do_tolower, do_toupper): Remove old code
+ based on 8-bit character table.
+
+Wed Feb 23 08:23:22 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bisonfix.awk: New file, fixes continued #ifdef for dumb compilers.
+ * Makefile.am (awkgram.c): Fix rule to use it.
+ (EXTRA_DIST): Include bisonfix.awk.
+
+Tue Feb 22 21:18:50 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * random.h: Remove include of config.h and move it to ...
+ * random.c: Here. Move include of random.h back to where it was.
+
+ * regcomp.c, regex.c, regexec.c: NUKED all use of alloca not inside
+ `_LIBC' ifdef. Hooray!
+
+Sat Feb 19 20:13:28 2005 Pat Rankin <rankin@pactechdata.com>
+
+ Workarounds for bugs and missing C89 features in old VAX C compiler.
+
+ * regex_internal.h "mbsupport.h": Suppress inclusion if NO_MBSUPPORT
+ is defined.
+ [MB_CUR_MAX]: Define as 1 if mbsupport.h hasn't defined it.
+ [ER_ERRMSG, ERRMSG_TYPE, ERRMSG_OFFSET, ERRMSG_SEPARATOR]: New macros
+ conditionalized upon gawk's NO_TOKEN_PASTING macro.
+ * regcomp.c: Use them.
+ (parse_dup_op): Use alternate initialization of start_token if
+ RE_TOKEN_INIT_BUG is defined.
+ * regexec.c (proceed_next_node): Compare push_fail_stack() result
+ explicitly against REG_NOERROR rather than implicitly against 0.
+
+Sat Feb 19 20:05:50 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * dfa.c "mbsupport.h": Suppress inclusion if NO_MBSUPPORT is defined.
+
+Wed Feb 16 20:43:07 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * awk.h "mbsupport.h": Suppress inclusion if NO_MBSUPPORT is defined.
+ * regex.h <sys/types.h>: Guard inclusion with HAVE_SYS_TYPES_H.
+ * regex.c <sys/types.h>: Likewise.
+ * random.c "random.h": Include this first to get config.h setup.
+ <fcntl.h>: Guard inclusion with HAVE_FCNTL_H.
+ <unistd.h>: Guard inclusion with HAVE_UNISTD_H.
+ * io.c [#if defined(MSDOS) ||... defined(__CYGWIN__)]: Splice the
+ backslash continuation back into one long line.
+
+Wed Feb 16 10:11:21 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (unref, format_val): Add assertions checking that both
+ `tmp->wstptr != NULL' and `(tmp->flags & WSTRCUR) != 0' before
+ freeing `tmp->wstptr'. Thanks to kimura.koichi@canon.co.jp.
+
+ * random.c (HAVE_UNISTD_H): Conditionalize include of <unistd.h>.
+ Thanks to Scott Deifik <scottd@amgen.com>.
+
+Sun Feb 13 18:24:50 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Move `#ifdef MSG_PEEK' up to above
+ declarations too. Thanks to Michal Jaegermann.
+
+ * config.guess, config.sub: Updated from Savannah.
+
+Thu Feb 10 15:48:48 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.c (re_dfa_add_node): Remove variable `type'
+ and just use `token.type' directly in RE_ENABLE_I18N code below.
+ Saves a compiler warning, and a good compiler will handle it anyway.
+ * regexec.c (check_arrival_add_next_nodes): Move decl of `err'
+ inside #ifdef RE_ENABLE_I18N code where it's used.
+ * awkgram.y (yylex): Add casts to int before use of `strlen' results
+ for printf-style precision. Avoid a compiler warning.
+ * io.c (redirect, do_close): Same for use of tmp->stlen.
+
+ Thanks to Michal Jaegermann <michal@harddata.com>.
+
+Wed Feb 9 10:19:15 2005 Stepan Kasal <kasal@ucw.cz>
+
+ * Makefile.am (datadir, libexecdir): Removed.
+ (awkdatadir): Renamed to pkgdatadir.
+ (pkgdatadir, LDADD): Use the make syntax to refer to other variables,
+ not @...@.
+
+Wed Feb 9 10:05:46 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (r_dupnode): Assign NULL to r->wstr after `getnode'.
+ Fix count of bytes to copy in call to `memcpy'.
+ Thanks to Kimura Koichi, <kimura.koichi@canon.co.jp>.
+
+Tue Feb 8 19:26:22 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * regcomp.c (init_dfa): Avoid strcasecmp() since regex.c doesn't
+ use awk.h and none of the assorted other included header files
+ are guaranteed to declare it.
+ (parse_expression): Modify casts for the string arguments passed to
+ build_charclass_op() to fix char * vs unsigned char * mismatch.
+ (parse_bracket_exp): Likewise add cast for the string argument
+ passed to build_charclass().
+
+Mon Feb 7 15:04:09 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (make_scalar): Don't use P() macro in definition.
+ Thanks to Juergen Kahrs <Juergen.Kahrs@barco.com>.
+
+Wed Feb 2 16:36:19 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Call `close_io', without its result affecting
+ the exit status. Super small, super dark corner.
+
+ See test/exitval2.awk.
+
+Tue Feb 1 11:58:29 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.h (__APPLE_CC__): Removed test and definition of __restrict.
+ Not needed for current MacOS X compiler.
+
+Sun Jan 30 13:56:37 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fresh merge with CVS regex routines. Fixes handling of \B.
+ See tests/gnureop3.awk and also
+ http://sources.redhat.com/bugzilla/show_bug.cgi?id=693.
+
+ CVS base versions:
+
+ * regcomp.c: Version 1.92, Thu Jan 27 19:05:20 2005.
+ * regexec.c: Version 1.77, Thu Jan 27 19:06:34 2005.
+ * regex_internal.c: Version 1.49, Thu Jan 27 19:07:15 2005.
+ * regex_internal.h: Version 1.60, Wed Jan 26 22:40:50 2005.
+ * regexec.c: Version 1.77, Thu Jan 27 19:06:34 2005.
+
+Sat Jan 22 22:30:40 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Reinstate patch of 18 Nov 2001, for VMS, at least:
+
+ * random.c (srandomdev): ifdef-out. Lots of compile time
+ problems on multiple platforms, and gawk doesn't even
+ use the routine. The heck with fine-grained solutions.
+
+Thu Jan 20 14:15:32 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (LEX_FOR): Free NAME tokens in transformation of
+ `for (iggy in foo) delete foo[iggy]' into `delete foo'.
+ Thanks and a tip of the hatlo to Valgrind.
+
+ * dfa.c (_): Clean up stuff here by just including "gettext.h".
+ Per Bruno Haible.
+
+Wed Jan 19 18:29:23 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yylex): Improve parsing of numeric constants
+ and hex values, via a push from Paul Eggert. See test/hex.awk.
+
+ * regex_internal.c (re_node_set_alloc): If `size' is 0, just
+ zero out the structure. From valgrind.
+
+Tue Jan 18 17:23:25 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Make gawk multibyte aware. This means that index(), length(),
+ substr() and match() all work in terms of characters, not bytes.
+
+ * awk.h (NODE): Add `wsp' and `wslen' elements to value for wide
+ string.
+ (WSTRCUR, wstptr, wstlen, force_wstring): New macros.
+ (str2wstr, wstrstr, wcasestrstr): New declarations.
+ * builtin.c (do_index, do_length, do_substr, do_match): Handle wide
+ strings.
+ * eval.c (flags2str): Add WSTRCUR.
+ * node.c (format_val, r_dupnode, mk_number, make_str_node, unref):
+ Add code to deal with wide strings.
+ (str2wstr, dump_wstr, wstrstr, wcasestrstr): New functions.
+
+Sun Jan 16 15:10:35 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * random.h (int32_t): Define this type.
+
+Thu Jan 13 14:38:13 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Cause `configure --disable-nls' to still allow locale-correct
+ formating of numeric values.
+
+ * builtin.c (format_tree): Change #ifdefs to only test HAVE_LOCALE_H.
+ Improve code for ' flag so that extraneous separator is not included if
+ number of digits is multiple of locale separater count (3, 6, 9, etc.)
+ * dfa.c (dfaparse): Change ifdef to only test #ifdef LC_COLLATE.
+ * eval.c (fmt_ok): Remove ENABLE_NLS from #ifdef test.
+ * gettext.h: Include <locale.h> on both sides of test. Should really
+ be factored out.
+ * main.c (loc): Remove ENABLE_NLS from #ifdef test.
+ (main): Same in call to localeconv().
+ * node.c (isnondecimal): Remove ENABLE_NLS from #ifdef test.
+
+ Unrelated:
+
+ * regcomp.c (init_dfa): Change `codeset' to `codeset_name' in two
+ places.
+
+Mon Jan 10 11:49:56 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Annual sync with glibc.
+
+ * getopt_int.h: New file.
+ * Makefile.am (base_sources): Add it.
+ * getopt.h, getopt.c, getopt1.c: Updated.
+ * regcomp.c, regex.c, regex.h, regex_internal.c, regex_internal.h,
+ regexec.c: Updated.
+
+ Original versions:
+
+ getopt_int.h, 1.1, Tue Mar 9 10:31:19 2004
+ getopt1.c, 1.10, Tue Mar 9 10:35:37 2004
+ getopt.h, 1.21, Fri Mar 19 00:19:32 2004
+ getopt.c, 1.53, Wed Mar 10 23:13:26 2004
+ regcomp.c, 1.87, Mon Dec 6 02:56:42 2004
+ regex.c, 1.126, Fri Jan 30 05:19:58 2004
+ regex.h, 1.33, Thu Nov 18 23:50:57 2004
+ regex_internal.c, 1.46, Thu Jan 6 20:59:49 2005
+ regex_internal.h, 1.57, Mon Dec 27 16:29:05 2004
+ regexec.c, 1.75, Mon Dec 27 16:29:52 2004
+
+ * regex.h: Add check for __APPLE_CC__ and definition of __restrict.
+ * regex.c: Add check for _MSC_VER and include <stdio.h>.
+ * regex_internal.h (_RE_ENABLE_I18N): Change test.
+ (re_realloc): Add check/fix for SunOS 4.1.x.
+ * regex_internal.c (build_wcs_upper_buffer): ifdef label
+ `offsets_needed', add cast in call to `wcrtomb'.
+ * regcomp.c (build_charclass, build_charclass_op): Remove `unsigned'
+ from declarations of `char *' params.
+ (regerror): Remove use of mempcpy.
+ (peek_token): Disallow \s and \S for gawk.
+ (build_charclass): Change decl of `class_name' and use it directly.
+ Nuke variable `name'.
+ (build_charclass_op): Change decl of `class_name' and `extra'.
+
+Thu Jan 6 16:44:32 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Improve autoconfiscation stuff for wide character use.
+
+ * builtin.c (do_tolower, do_toupper): Conditionally compile
+ call to `wide_tolower_toupper'.
+ (wide_tolower_toupper): Conditionally compile typedefs and function.
+ * mbsupport.h: Add check for having `wint_t', and `iswlower',
+ `iswupper', `towlower' and `towupper'.
+ * configure.ac (HAVE_WINT_T): Add test.
+ (AC_CHECK_FUNCS): Add `wint_t', `iswlower', `iswupper', `towlower'
+ and `towupper'.
+
+ Unrelated change:
+
+ * hard-locale.h (hard_locale): Add decl of `xmalloc' to prevent
+ redeclaration problems on some compilers.
+
+Wed Jan 5 10:20:17 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update to Bison 2.0.
+
+ * bisonfix.sed: Removed, no longer needed.
+ * Makefile.am (EXTRA_DIST): Removed bisonfix.sed.
+ (awkgram.c): Fix build rule.
+ * awkgram.c: Regenerated.
+
+Tue Jan 4 18:47:56 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update to Automake 1.9.4.
+
+ * alocal.m4, config.guess, config.sub, install-sh: Updated.
+
+Mon Jan 3 14:08:27 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Update to Automake 1.9.3.
+
+ * INSTALL, alocal.m4, config.guess, config.sub, depcomp,
+ install-sh, missing, ylwrap: Updated.
+
+Mon Jan 3 11:23:36 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fix obscure issue. ^ in RS should only match at the very
+ beginning of the input. Essentially, the file is one long
+ string. To do this, use the `not_bol' flag in the `struct
+ pattern_buffer'. Thanks to Stepan Kasal for pointing out the
+ problem and to Andreas Schwab for pointing out the mechanism
+ for a solution.
+
+ * awk.h (RE_NEED_START, RE_NO_BOL): New flags for `research'.
+ (IOP_AT_START): New flag for IOBUF.
+ (research): Last parameter is now `flags'.
+ * builtin.c (do_match, sub_common): Change calls to `research'.
+ * eval.c (interpret, match_op): Same.
+ * field.c (re_parse_field): Same.
+ * io.c (spec_setup): Add IOP_AT_START flag.
+ (iop_alloc): Same.
+ (rsrescan): Modify logic to check IOP_AT_START and if not on to
+ add RE_NO_BOL to flags value in call to `research'.
+ (get_a_record): Clear IOP_AT_START upon return from `*matchrec'.
+ (iopflags2str): Add IOP_AT_START to table. Also IOP_CLOSED,
+ which was missing. (Ooops.)
+ * re.c (research): Last paramater is now flags. Modify logic to
+ handle RE_NO_BOL case by setting the right bit initially. Clean
+ up control flow so that it's cleared before returning. If RE_NO_BOL,
+ don't bother with the dfa matcher, as it doesn't have an analogous
+ capability.
+
+Wed Dec 22 12:33:48 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ For --exec, don't allow x=y assignments where filenames would be.
+ Do allow -v. This is because we assume --exec is used mainly for
+ CGI stuff and we don't want var assigns to affect the code.
+
+ Suggested by Stepan Kasal; motivated by reading about web security.
+
+ * main.c (disallow_var_assigns): New variable.
+ (main): Set the var for --exec.
+ (arg_assign): Check it appropriately.
+
+Sun Dec 19 17:27:09 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_gensub): Make `global' flag smarter, such that
+ a string numeric constant (e.g., "3") acts like a numeric
+ constant.
+ * node.c (r_force_number): Not really related: Only set NUMCUR
+ if we actually convert some digits.
+
+Sun Dec 19 16:08:50 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.h, dfa.c: Synchronize with what's happening in GNU grep
+ development. Effectively only minor whitespace changes and some
+ slight code motion of ifdefs and includes.
+ * hard-locale.h: New file, extracted from old dfa.c.
+ * Makefile.am (base_sources): Add hard-locale.h.
+
+Sun Dec 19 11:13:45 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Change type of `readle' and `namelen'
+ variables to size_t. For QNX, but a good idea anyway. Thanks
+ to `Anthony' (rz1a@mail.ru).
+
+Mon Dec 6 11:11:22 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Undid change of Mar 9 2004, to add gofast patch. It gets things
+ wrong for gawk. This removes the bandaid of ifdef-ing out the
+ main check. Eventually this'll all get straightened out in the
+ GNU grep code.
+
+ * dfa.c (buf_offset): Removed.
+ (SKIP_REMAINS_MB_IF_INITIAL_STATE): Removed use of buf_offset, do
+ free `mblen_buf', `inputwcs'.
+ (match_anychar, match_mb_charset, transit_state_consume_1char,
+ transit_state): Remove use of buf_offset in mblen_buf.
+ (dfaexec): Use `free' and `malloc', not `realloc'.
+
+Mon Dec 6 10:55:37 2004 Fumitoshi UKAI <ukai@debian.or.jp>
+
+ Forwarded from james@nocrew.org, the Debian contact.
+
+ * dfa.c (parse_bracket_exp_mb):
+ 1. Build range correctly when IGNORECASE for [a-a] to also get 'A'.
+ 2. For [:lower:] and [:upper:], if ignoring case, set type string
+ to "alpha". This parallels code in the regex routines.
+ 3. Reset wc1 to EOF when parsing bracket expressions.
+
+Mon Nov 29 18:36:25 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): When allocating a new struct redirect, set
+ rp->pid to -1, not 0, so that code checking for EOF on an
+ input pipe works correctly.
+
+Thu Nov 25 14:22:41 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * Makefile.am (MAINTAINERCLEANFILES): Add.
+ * version.in (version_string): Use PACKAGE_STRING.
+
+Tue Nov 23 17:27:38 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * re.c: Fix a typo in a comment.
+
+Mon Nov 22 16:47:00 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yylex): Add lint check for tawk style modifiers on
+ regexes, /.../i and /.../s. Not that it'll help anyone.
+
+Wed Oct 27 14:25:18 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * builtin.c (do_tolower, do_toupper): Fix the wide char handling,
+ especially when the lowercased char doesn't ocuppy the same
+ number of bytes as its uppercase equivalent. Make use of ...
+ (wide_tolower_toupper): ... this new static function.
+
+Mon Oct 25 11:51:14 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (bchunk, bchunk_one, cksize): Change type of `olen'
+ to size_t from long. It is the 21st century now, after all...
+ Thanks to Stepan Kasal.
+
+Mon Oct 11 10:49:09 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yylex): Improve lint warnings for non-decimal constants.
+ * node.c (isnondecimal): Made a little smarter, thanks to Stepan Kasal.
+
+Thu Oct 7 21:59:38 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (dfamust): Redo fix of 22 Sep to match code from
+ current GNU grep.
+
+Sun Oct 3 23:06:00 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (isnondecimal): Made smarter, so that 0xEE does
+ register as non-decimal. Added parameter to indicate use of
+ locale's decimal point and changed declaration and callers.
+
+Tue Sep 28 18:38:17 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (isnondecimal): New function, now smarter.
+ * awk.h (isnondecimal): Changed from macro to function.
+
+Wed Sep 22 11:24:46 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (dfamust): At end, check results of `malloc'.
+ Based on bug report from Sorav Bansal <sbansal@stanford.edu>
+ for grep.
+
+Mon Sep 20 13:18:18 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ New --exec option. Needed for gawk CGI scripts to prevent
+ arbitrary options and/or source getting passed in from the web.
+
+ * main.c (optab): New long option, --exec.
+ (main): Catch it. Like -f but end option processing.
+ (usage): Add it to the usage message.
+
+ Thanks to John DuBois and Don Stokes for their input.
+
+ Unrelated:
+
+ * dfa.c (dfaexec): Disabled caching into buffer that bypasses
+ multibyte initialization, since it can get things wrong. Thanks
+ to Andreas Schwab <schwab@suse.de>.
+
+Mon Sep 20 12:59:42 2004 Andreas Schwab <schwab@suse.de>
+
+ * awkgram.y (nextc): Check for end of lexer buffer before
+ advancing ring buffer index.
+
+Wed Sep 8 09:54:53 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Force LC_NUMERIC locale to "C" before parsing
+ the program, since a variable assignment with -v can leave the
+ locale set incorrectly.
+
+ Thanks to Sirix <sirix@poczta.onet.pl> for reporting the problem.
+
+Wed Aug 25 18:55:30 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (UPDATE_YEAR): New constant at top of file, where we
+ won't miss it.
+ (copyleft): Use it.
+
+Sun Aug 22 17:26:39 2004 Stepan Kasal <kasal@ucw.cz>
+
+ Define gawk_mb_cur_max even if there is no mbs support, as
+ ``const int'' and assign 1 to it.
+ This fixes a bug in re.c where #ifdef MBS_SUPPORT was missing.
+
+ * awk.h (gawk_mb_cur_max): Declare.
+ * main.c (gawk_mb_cur_max): Define.
+ * awkgram.y (nextc_is_1stbyte): Without mbs support, define to 1.
+ * builtin.c (index_multibyte_buffer): Define a dummy function
+ when there is no mbs support.
+ * awkgram.y, builtin.c, re.c: Remove some `#ifdef MBS_SUPPORT'.
+
+Sun Aug 15 22:08:04 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Import current FreeBSD random.c. Make it work for gawk.
+ Needed for cases where long is more than 32 bits.
+
+ * random.c: Imported from FreeBSD. Header includes tweaked.
+ * random.h: Typdef gawk_uint32_t appropriately and #define uint32_t
+ to it.
+ * configure.ac: Add calls to AC_CHECK_SIZEOF for unsigned int
+ and unsigned long.
+
+ Started with
+ http://www.freebsd.org/cgi/cvsweb.cgi/src/lib/libc/stdlib/random.c
+ Thanks to Andreas Schwab <schwab@suse.de> for the pointer.
+
+Thu Aug 12 13:09:53 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (copyleft): Fix copyright year.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Mon Aug 2 12:17:40 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Fix the hack. Do the sed on `Makefile',
+ not `Makefile.in'. Sigh.
+
+Sun Aug 1 14:48:30 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: MAJOR HACK: At end, remove version.c from Makefile.in
+ variable `CONFIG_CLEAN_FILES' so that `make distclean' doesn't
+ remove version.c.
+
+Mon Jul 19 17:07:27 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * config.guess, config.sub: Updated from Savannah CVS.
+
+Fri Jul 16 10:59:07 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (make_regexp): Bracket code using `gawk_mb_cur_max'
+ inside `#ifdef MBS_SUPPORT'.
+
+Thu Jul 15 12:36:25 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (parse_bracket_exp_mb): If doing case folding,
+ include the other case for regular characters inside [...].
+
+ * re.c (make_regexp): Smarten up handling of IGNORECASE,
+ particularly for multibyte character sets. Sigh.
+
+Wed Jul 14 16:25:23 2004 John Haque <mary1john8@earthlink.net>
+
+ * eval.c (interpret): For `Node_K_return', use `copynode'
+ and not `dupnode' for non-PERM, non-TEMP values.
+ (func_call): Don't add TEMP flag to returned value.
+
+ These two fix a problem uncovered by the July 8 change in
+ `assoc_lookup'.
+
+Wed Jul 14 16:14:09 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (node_common): Add check `lexeme >= lexptr_begin',
+ from valgrind run.
+
+Wed Jul 14 16:00:51 2004 John Haque <mary1john8@earthlink.net>
+
+ * io.c (rsrescan): Fix off by one error at end of record.
+
+Thu Jul 8 16:59:51 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * awkgram.y (output_redir): Make sure not to dereference NULL
+ pointer. The bug was triggered by the following code:
+
+ gawk 'BEGIN{print "date" |& getline}'
+
+ No test case created, beacuse of the following:
+ Correct interpretation involves executing "1" or "0" -- as the user
+ may have defined this, we would have to override this in the test
+ script. It's not worth the hassle.
+
+Thu Jul 8 12:59:49 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (load_casetable): Name changed from `load_ignorecase'.
+ * eval.c (load_casetable): Name changed from `load_ignorecase'.
+ Fix all uses.
+
+Thu Jul 8 12:32:13 2004 John Haque <mary1john8@earthlink.net>
+
+ * awkgram.y (get_src_buf): Fix off-by-one error to avoid "does not end
+ in newline" messages.
+ * array.c (assoc_lookup): Small performance hack: for TEMP subs nodes,
+ use its string memory for ahname.
+ * ext.c (get_actual_argument): Minor code cleanup.
+ * builtin.c (do_lshift, do_rshift, do_and, do_or, do_xor, do_compl):
+ fixed to issue "non-numeric argument" lint warnings before using
+ `force_number'.
+
+Mon Jun 21 16:53:35 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ More changes from John Haque to rationalize extension functions.
+
+ * awk.h (get_curfunc_arg_count): Name changed from
+ `get_curfunc_parm_count'.
+ * eval.c (get_curfunc_arg_count): Ditto, body redone to count actual
+ args passed at call time.
+ * ext.c (get_argument): Update range check.
+ (get_actual_argument): Simplify the code.
+
+Mon Jun 14 14:01:16 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes from John Haque and ADR to rationalize extension functions.
+
+ * awk.h (check_special, get_curfunc_parm_count, get_actual_argument):
+ new function declarations.
+ (get_scalar_argument, get_array_argument): New macros.
+ * awkgram.y (check_special): New function.
+ (yylex): Use `check_special' to search `tokentab'.
+ (dump_funcs): Always count functions, in order to get dynamic ones.
+ Removed bogus use of `static' on `tab' variable.
+ * eval.c (struct fcall): Change type of `count' to `size_t'.
+ (get_curfunc_parm_count): New function.
+ (push_args): Set `r->rnode' to NULL for local variable.
+ * ext.c (make_builtin): Add sanity checking for presence and
+ name of new function, and that it's not a redefinition.
+ (get_argument): Check that requested arg is within range of actual
+ number of parameters. Also clean up logic for Node_var_new,
+ Node_var_array, Node_array_ref.
+ (get_actual_argument): New function.
+ * profile.c (pp_builtin): Better handling of dynamic extension function.
+
+Sun Jun 13 14:32:22 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): Conditionalize checking for process recovery
+ on `#ifdef PIPES_SIMULATED'. Needed for MS-DOS and VMS.
+ * builtin.c (tmp_integer): Change bracketing of magic test to
+ `#ifdef HAVE_UINTMAX_T' which is more general and more correct.
+
+Wed Jun 9 21:36:01 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (make_regexp): Add dfa matching into IGNORECASE handling.
+
+Tue Jun 8 15:38:56 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (casetable): Remove `const'.
+ * eval.c (casetable): Remove `const'.
+ (load_ignorecase): New function. Loads locale-correct values in
+ upper 128 bytes.
+ (set_IGNORECASE): Call `load_ignorecase'.
+
+Tue Jun 8 14:04:19 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (get_src_buf): Make sure that value from
+ `optimal_bufsize' is reasonable. Increase it if not.
+
+Tue Jun 8 13:54:28 2004 John E. Haque <mary1john8@earthlink.net>
+
+ * awkgram.y (statement:LEX_FOR): Fix bug in loop to `delete a'
+ optimization.
+ * io.c (format_tree): Check for out of range values for
+ positional specifiers.
+
+Mon Jun 7 17:02:48 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (tmp_integer): Bracket the magic test inside
+ `#ifndef VMS'.
+
+ * awk.h (child_catcher): Remove declaration.
+ * main.c (main): Remove `signal' calls for SIGCLD, SIGCHLD.
+ * io.c (child_died, child_signo, child_catcher): Removed.
+ (get_a_record): Remove code checking for death of child.
+ (redirect): If `rp' matches and is at EOF and type is input
+ pipe, and `rp->pid' is not -1, call `wait_any' to reap the
+ child. This is a heuristic, but it works pretty well.
+
+Sun Jun 6 18:35:17 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Restore use of `memmove' instead of
+ memcpy. Otherwise some tests break on some systems. We think.
+ (child_died): Don't reset signal handler; breaks on some S5 systems.
+ (get_a_record): Reset handler if child_died. Still flaky on Solaris.
+ * configure.ac (version.c): Made from version.in again, for
+ non-Unix systems.
+ * Makefile.am (base_sources): Add version.c back.
+ * version.in: Include config.h for definition of const.
+ * main.c (version_string): Add back declaration, don't
+ include "version.i".
+ (main): Don't install child_catcher on Sun. (HACK)
+
+Thu Jun 3 14:06:06 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (version_string): Removed declaration, since
+ version.i is included directly.
+ * version.in: Removed test for definition of const.
+
+Tue Jun 1 19:23:53 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * Makefile.am (base_sources): Don't mention version.c, so that
+ it doesn't get distributed.
+ * po/POTFILES.in: Remove version.c
+ * configure.ac: Create version.i from version.in.
+ * main.c: Include version.i.
+
+Tue Jun 1 18:33:32 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fix problem reported by Stephen Marchant <Stephen.Marchant@Cognex.com>
+ on Thu, 30 Oct 2003 13:11:42 -0500.
+
+ * regex_internal.h (re_realloc): Allow for SunOS pre-Standard C
+ `realloc' which doesn't accept NULL pointers.
+ * awk.h (erealloc): Same.
+
+ Unrelated. Change suggested by Peter Sobisch <petersob@gmx.net>, have
+ PROCINFO["version"] be the version of gawk:
+
+ * main.c (load_procinfo): Add in version.
+
+ Unrelated: Avoid warning:
+
+ * main.c (main): Cast calls to `bindtextdomain' and `textdomain' to
+ void. Avoids diagnostic with `configure --disable-nls'.
+ * dfa.c (check_matching_with_multibyte_ops): Remove unneeded nested
+ #ifdef, per Scott Deifik (scottd@amgen.com). Also fix some spelling
+ errors in comments.
+
+Tue Jun 1 18:26:45 2004 Paul Eggert <eggert@twinsun.com>
+
+ Fix a bug reported by Mike Romaniw <msr@micromonumental.com>
+ to bug-gnu-utils on 2003-09-27: compl(compl(0xf0f)) returned 0xfff
+ on hosts with 64-bit uintmax_t and 64-bit IEEE-764 double, due to
+ rounding errors.
+
+ * doc/gawk.texi (Bitwise Functions): Leading nonzero bits are
+ removed in order to fit the result into a C 'double' without rounding
+ error.
+ * builtin.c: Include <float.h> if available.
+ (FLT_RADIX, FLT_MANT_DIG, DBL_MANT_DIG): Define if not already defined.
+ (AWKSMALL_MANT_DIG, AWKNUM_MANT_DIG, AWKNUM_FRACTION_BITS): New macros.
+ (tmp_integer): New function.
+ (do_lshift, do_rshift, do_and, do_or, do_xor, do_compl): Use them.
+
+Tue Jun 1 17:40:47 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * eval.c (push_args): Set var_value to Nnull_string for
+ local variables.
+
+Mon May 31 11:49:20 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * replace.c: #undef DEBUG before including mktime.c, it has
+ different meaning there.
+
+Mon May 31 08:25:30 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (get_actual): Add extra error message for `delete f'
+ inside body of function `f'.
+
+Mon May 3 09:53:34 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in, */Makefile.in: Updated to automake 1.8.4.
+ * config.guess, config.sub: Same.
+ * aclocal.m4, depcomp, install-sh: Same.
+
+Mon May 3 09:24:45 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Look for missing `strtoul'.
+ * replace.c: Include missing_d/stroul.c if not HAVE_STRTOUL.
+ * io.c (devopen): Use `strtoul' instead of `strtod' for
+ extracting fd number from "/dev/fd/N". (Thanks to Jim Meyering.)
+ * field.c (set_FIELDWIDTHS): Use `strtoul' instead of `strtod'
+ when parsing FIELDWIDTHS values. (Thanks to Jim Meyering.)
+
+Mon Apr 19 20:12:57 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in, */Makefile.in: Updated to automake 1.8.3.
+ * config.guess, config.sub: Same.
+
+2004-03-18 Stepan Kasal <kasal@ucw.cz>
+
+ * eval.c (make_scalar): Comment clarification.
+
+ * array.c (get_actual): Remove the condition ``canfatal''
+ before ``cant_happen()''; if the data are consistent, we
+ simply cannot get there with a non-func Node_param_list,
+ no matter whether we are called via get_array or not.
+
+ * awkgram.y (variable): Make one longer message, to help translators.
+
+Tue Mar 9 17:34:10 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Adapted `gofast' patch from Redhat Enterprise version of grep
+ to current dfa.c.
+
+ * dfa.c (buf_offset): New variable.
+ (SKIP_REMAINS_MB_IF_INITIAL_STATE): Modified to use it, don't
+ free `mblen_buf', `inputwcs'.
+ (match_anychar, match_mb_charset, transit_state_consume_1char,
+ transit_state): Use buf_offset in mblen_buf.
+ (dfaexec): Realloc things instead of free and malloc.
+
+Thu Mar 4 16:46:55 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac (AC_FUNC_MBRTOWC): Added.
+ (AC_CHECK_FUNCS): Removed `mbrtwoc'.
+ (REGEX_MALLOC): Removed. Not needed for new regex* routines.
+
+ * re.c (research): Removed comment and check for return of -2
+ since that was for old regex using alloca or REGEX_MALLOC.
+
+Wed Mar 3 17:10:16 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (close_one): Don't close stdout or stderr; can happen if
+ /dev/stdout or /dev/stderr are used in redirection and all the
+ open files get used.
+
+Sun Feb 29 12:17:37 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (build_charclass, build_charclass_op): Change type of
+ `class_name' parameter to `const char *' from `const unsigned char *'
+ and adjust callers.
+
+Thu Feb 26 15:20:22 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (get_src_buf): Rewritten to better manage input and
+ supplying newlines on command line programs. Fixes problems reading
+ source files on Cygwin.
+
+ Unrelated fixes from mary1john8@earthlink.net:
+
+ * node.c (format_val): For no malloc case, free s->stptr if necessary.
+ * io.c (nextfile): Add missing call to `unref(FILENAME_node->var_value)'
+ for no files case.
+ (close_redir): Remove file from redirection list even if fp is
+ stdout or stderr.
+
+Tue Feb 24 12:11:34 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.c (build_wcs_upper_buffer): Enclose `offsets_needed'
+ label in `#ifdef _LIBC' to silence `unused label' compiler warning.
+
+Tue Feb 24 11:57:18 2004 Nelson H.F. Beebe <beebe@math.utah.edu>
+
+ * regcomp.c (parse_expression): Add cast to (unsigned char *) in calls
+ to `build_charclass_op'.
+ * regex_internal.c (build_wcs_buffer): Add cast to char* in call to
+ `wcrtomb'.
+ * regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
+ bitset_mask, re_string_char_size_a, re_string_wchar_at,
+ re_string_elem_size_at): Change to use prototypes.
+ (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
+ Declare as `internal_function'.
+
+ * Makefile.am: Add rule to make .i files. This assists in debugging.
+ * awk.h (m_tree_eval): Add casts to NULL. (Some compilers are just
+ dumb. ADR)
+
+Mon Feb 23 15:58:39 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Clean up occupied process slots of children that have died:
+
+ * awk.h (child_catcher): New function, declare it.
+ * main.c (main): Catch SIGCHLD/SIGCLD with `child_catcher'.
+ * io.c (child_died): New static variable.
+ (child_catcher): New function, sets `child_died', reinstalls self
+ as signal handler.
+ (close_rp): New function: isolates actual fp/iop closing logic.
+ (close_redir): Call `close_rp'.
+ (get_a_record): Check `child_died' and call `wait_any(0)' if so.
+ Add descriptive comment.
+
+ Unrelated clean up:
+
+ * eval.c (fcalls): Renamed from `fcall_list'. All uses changed.
+ (pop_fcall, push_args, dump_fcall_stack): Adjusted to use indexing
+ on `fcalls' instead of a pointer into it. Avoids hassles if `fcalls'
+ is realloc-ed during recursive tree_evals. Thanks to BWK.
+
+ * config.guess, config.sub: Updated from Savannah.
+
+2004-02-19 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.14.1.
+
+Wed Feb 18 12:40:09 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (rule): Use `msg' not `warning' for `must have an
+ an action part' message. `warning' is wrong, since it's a real error.
+
+Mon Feb 16 12:17:39 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c, eval.c, builtin.c: Change test for `#ifdef HAVE_LOCALE_H'
+ to `#if ENABLE_NLS && defined(HAVE_LOCALE_H)' so that builds with
+ `configure --disable-nls' will actually work on non-glibc systems.
+
+Thu Feb 12 02:05:34 2004 Stepan Kasal <kasal@ucw.cz>
+
+ Lots of misc changes from Stepan Kasal integrated.
+
+ * array.c: Various variables and parameters of static functions
+ changed from int to long, in order to prevent overflow.
+
+ * eval.c (make_scalar): New function; takes care of everything
+ that has to be done when a node of type Node_var_new or
+ Node_array_ref changes to a scalar variable.
+ (tree_eval, get_lhs): Call it.
+ (tree_eval): From now on, tree_eval(NULL) doesn't work;
+ it reports an internal error.
+ * awk.h (m_tree_eval): Likewise for the two macro versions.
+ * awkgram.y (statement): Make sure the Node_K_return's lnode is
+ always the return value, never NULL.
+
+ * Makefile.am (install-exec-hook, uninstall-links): Make use of
+ $(VERSION).
+ (INCLUDES): Renamed to AM_CPPFLAGS.
+ (AM_CPPFLAGS): The file libintl.h is generated in the
+ build subdirectory intl, not in the directory $(srcdir)/intl.
+ (diffout): New target is an alias for ``make -C test diffout.''
+ * awklib/Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS.
+
+ * README_d/README.hpux: Change the whitespace in the appended patch,
+ so that it applies to the current source.
+ * posix/gawkmisc.c: Change a tab to a space (needed for the above).
+
+ Make version control more in the style of current autotools:
+
+ * configure.ac: Remove obsolete versions of macros:
+ AM_INIT_AUTOMAKE doesn't need any parameters.
+ AC_OUTPUT shouldn't have any parameters either.
+ Its parameters go to a new macro: AC_CONFIG_FILES.
+ AC_CONFIG_HEADERS moved near the end of the file.
+ * configure.ac: Add [version.c:version.in] to AC_CONFIG_FILES
+ * version.in: Modify for autoconf substitutions.
+ * version.c: Remove, it's generated at configure time now.
+ * fixvers, patchlev.h, unsupported/tandem/ptchlvl.h: Nuke and ...
+ * Makefile.am, main.c: ... forget them.
+
+Mon Feb 9 12:57:00 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h builtin.c eval.c field.c (HUGE): Changed to `UNLIMITED'.
+ Avoids possible conflict with constant in svid-mode math.h. Thanks to
+ Roman.Putanowicz@iecn.u-nancy.fr for pointing out the problem.
+
+Fri Feb 6 12:09:55 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Check for `wctype', `wcscoll' and `iswctype'.
+ * mbsupport.h: New file. Merges and centralizes testing for MBS support.
+ * Makefile.am (base_sources): Add mbsupport.h to list.
+ * dfa.c, dfa.h, awk.h (MBS_SUPPORT): Include "mbsupport.h" and use the
+ test there.
+ * regex_internal (RE_ENABLE_I18N): Same.
+
+ * Makefile.am (CLEANFILES): Added.
+
+Thu Feb 5 18:05:12 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac (HAVE_WCTYPE_T): New test code added.
+ * dfa.h (wctype_t): Define if system doesn't. Needed here too
+ for other files that include dfa.h.
+ * dfa.c (wctype_t): Define if system doesn't.
+ (lex): Manually fill in arrays used for char class range testing
+ so will work on c89 and older compilers.
+ (parse_bracket_exp_mb): Split up an assignment to avoid type complaints.
+
+ * main.c (main): When checking for `close_io' failure, only set
+ `exit_val' to 1 if not already exiting.
+
+ * regcomp.c (regerror): Remove use of mempcpy. Generates too
+ many compiler warnings.
+ * configure.ac (AC_CHECK_FUNCS): Don't bother checking for it.
+
+Wed Feb 4 17:34:47 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getopt.h (__THROW): Only define it if C++. The __GNU_PREREQ
+ macro is a major headache.
+
+2004-02-02 Paolo Bonzini <bonzini@gnu.org>
+
+ * regexec.c (check_matching): Add P_MATCH_FIRST parameter.
+ (re_search_internal): Pass new parameter to check_matching.
+ (check_matching): Unless a parenthesized group is found at the
+ beginning of the regexp, advance P_MATCH_FIRST until we entered
+ a state different from the initial state.
+
+Mon Feb 2 15:52:37 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (research): Change last param to re_search to pass
+ NULL if `need_start' is false. May give us a marginal speed gain.
+
+Thu Jan 29 17:04:51 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): Fix logic for `&' in replacement for
+ multibyte case. Simplify code a bit.
+
+Tue Jan 20 10:41:45 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Add check for `memmove'.
+ * replace.c: Include missing_d/memmove.c if don't have `memmove'.
+
+Sun Jan 18 12:01:29 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): Add comment and support for 2001 POSIX
+ behavior when --posix in effect. The masses have been
+ clamoring for this one.
+
+2004-01-16 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.13.1.
+ * intl/*: Updated to 0.13.1.
+
+Fri Jan 16 08:16:38 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getopt.h, getopt.c, getopt1.c: Synced to GLIBC version:
+ getopt.c: 1.51
+ getopt.h: 1.18
+ getopt1.c: 1.9
+
+Thu Jan 15 15:28:48 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ Here we go again:
+
+ * regcomp.c, regex.h, regex.c, regex_internal.h, regex_internal.c,
+ regexec.c: Sync to GLIBC version, but with bug fixes. GLIBC
+ CVS versions:
+
+ regcomp.c: 1.76
+ regexec.c: 1.55
+ regex.c: 1.125
+ regex.h: 1.30
+ regex_internal.c: 1.39
+ regex_internal.h: 1.45
+ regexec.c: 1.55
+
+ * acinclude.m4: Removed, not needed for automake 1.8.x.
+ * configure.ac: Updated to autoconf 2.59.
+
+ Everything else updated to automake 1.8x and autoconf 2.59.
+
+Wed Jan 14 14:26:36 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c, dfa.h: Updated manually with most of the changes in
+ grep 2.5.1. That version lost the ability to match newlines
+ in the data, so the merge had to be done by hand. Sigh.
+
+2004-01-12 Paolo Bonzini <bonzini@gnu.org>
+
+ ALLOCA patch from
+ http://sources.redhat.com/ml/libc-alpha/2004-01/msg00099.html
+ added.
+
+ * regcomp.c [_LIBC && !RE_ENABLE_I18N]:
+ Drop code to support this, it is never true.
+ (build_range_exp) [!_LIBC]: Do not create a range
+ in MBCSET for a single-byte character set.
+ (build_range_exp) [_LIBC]: Do not create a range
+ in MBCSET for a single-byte character set without
+ collation elements.
+ (init_dfa): Do not conditionalize on _LIBC, it
+ just makes the code less clear.
+ (parse_bracket_exp): Use NON_MATCH variable in
+ addition to "mbcset->non_match", not as an
+ alternative.
+ (build_charclass_op): Rename NOT parameter to
+ NON_MATCH, use it instead of declaring a variable.
+ (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
+ if the character set is single-byte.
+
+Wed Jan 7 15:23:04 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (mk_rexp): Set n->re_cnt to 1. Makes reinstated
+ dfa code actually take effect! Don't know how I missed this.
+
+ Unrelated: sync regex code to glibc.
+
+ * regcomp.c, regex.h, regex.c, regex_internal.h, regex_internal.c,
+ regexec.c: Sync to GLIBC version, but with bug fixes. GLIBC
+ CVS versions:
+
+ regcomp.c: 1.74
+ regex.c: 1.124
+ regex.h: 1.30
+ regex_internal.c: 1.39
+ regex_internal.h: 1.43
+ regexec.c: 1.55
+
+ * regcomp.c (peek_token): Temporarily, we hope, disable \s and \S
+ operators. Too much trouble to document right now.
+ * dfa.c (lex): Add code for \s and \S but disable it until
+ next release.
+
+Wed Dec 24 15:28:57 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_tree_eval): For Node_assign_concat, add
+ call `free_temp(r)'. Thanks to mary1john8@earthlink.net.
+
+Mon Dec 1 10:25:52 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ CONSTVAL not needed if we test PERM instead. Thanks to
+ mary1john8@earthlink.net. See test/concat3.awk.
+
+ * awk.h [CONSTVAL]: Removed.
+ * eval.c (flag2str): Removed CONSTVAL from table.
+ (r_tree_eval): For Node_assign_concat, it's enough to check
+ if l->flags has PERM clear.
+ * awkgram.y (yylex): Removed use of CONSTVAL for YSTRING and YNUMBER.
+
+Mon Nov 3 16:33:26 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (get_src_buf): Replace `memmove' with `memcpy' for
+ marginal portability gain to older systems.
+ * io.c (get_a_record): Ditto.
+
+Sun Nov 2 15:59:27 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [CONSTVAL]: Renamed from `STRCONST'.
+ * eval.c (flags2str): Fix in table.
+ (r_tree_eval): For Node_assign_concat, check for the flag for
+ both left and right hand sides. Also add a `force_string' call
+ for the right hand side and the left hand side.
+ * awkgram.y (yylex): Change flag value for YSTRING and add use
+ of flag for YNUMBER.
+
+Wed Oct 29 14:23:29 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [STRCONST]: New flag value.
+ * eval.c (flags2str): Add it to table.
+ (r_tree_eval): For Node_assign_concat, check for the flag so that
+ we don't clobber string constants given:
+ s = ""
+ s = s something
+ * awkgram.y (yylex): For YSTRING, set STRCONST flag.
+
+Tue Oct 28 18:00:00 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Force SUBSEP to always have a string value. Per bug report
+ from mary1john8@earthlink.net.
+
+ * awk.h (NODETYPE): New type, Node_SUBSEP.
+ (set_SUBSEP): Add declaration.
+ * awkgram.y (isnoeffect, isassignable): Add Node_SUBSPEP case.
+ * array.c (set_SUBSEP): New function.
+ * eval.c (nodetypes): Add Node_SUBSEP.
+ (r_tree_eval, r_get_lhs): Add code for Node_SUBSEP.
+ * main.c (varinit): Use Node_SUBSEP as type for SUBSEP.
+ * profile.c (tree_eval, pp_lhs, is_scalar, prec_level): Handle
+ Node_SUBSEP.
+
+Tue Oct 7 09:26:33 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (NODETYPE): New member `Node_assign_concat'.
+ * awkgram.y (exp): Look for case of `x = x y' and if so, create a
+ Node_assign_concat.
+ * eval.c (interpret): Add case for Node_assign_concat.
+ * profile.c (prec_level): Ditto.
+ (tree_eval): Ditto. For variables, call new function `vname' to
+ print name; handles varname field for -v variables, which end up
+ including the value.
+ (vname): New function.
+
+Wed Sep 24 17:32:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Speed up `avoid_dfa' kludge, at least a little:
+
+ * awk.h (struct Regexp): Add `has_anchor' member. Make it and
+ `dfa' member shorts; keeps space the same.
+ * re.c (make_regexp): Set `has_anchor' member correctly.
+ (avoid_dfa): Test for `has_anchor' member instead of searching
+ for it each time.
+
+Sun Sep 21 18:34:32 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (state): Only needs to be 256 bytes, initstate() can't
+ use any more than that. Well whadayaknow.
+ (do_rand, do_srand): Call `setstate' after calling `initstate'.
+
+Tue Sep 16 15:44:29 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (interpret): For Node_K_switch, add kludge_need_start stuff
+ as used in `match_op'. Sigh.
+ * re.c (make_regexp): Add `no_dfa' variable, which is true if
+ GAWK_NO_DFA exists in the environment. This enables run time
+ testing of things with/without the dfa matcher.
+
+Mon Sep 15 18:36:38 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ After much soul searching, reinstated old dfa code. The performance
+ of the new regex is just disastrous. Sigh.
+
+ * awk.h (re_cnt): Reinstated old definition.
+ (struct Regexp): Added `dfareg' and `dfa' members.
+ (make_regexp): New last parameter in function, changed decl.
+ (avoid_dfa): Added declaration.
+ * awkgram.y (regexp, mk_rexp): Added use of `re_cnt'. Fixed call
+ to `make_regexp'.
+ * Makefile.am: Add dfa.h and dfa.c.
+ * eval.c (match_op): Complexified: added call to `avoid_dfa' and
+ `kludge_need_start' variable where used to pass FALSE as last parameter
+ of research().
+ * field.c (set_FS): Fixed call to `make_regexp'.
+ * io.c (get_a_record, set_RS): Fixed calls to `make_regexp'.
+ * re.c (make_regexp): Added last paramter (`dfa') to function.
+ Complexified the code.
+ (re_update): Fixed call to `make_regexp'.
+ (research): Complexified the code, added calls to dfa stuff.
+ (dfaerror): New function.
+ (re_update): Fixed call to `make_regexp'.
+ (avoid_dfa): New function.
+
+Tue Sep 9 15:57:38 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (get_src_buf): Fix calculation of `offset' when shifting
+ source lines around. In general, improve handling of things when
+ moving the source code line around. What a mess this code is.
+
+Mon Sep 8 19:08:55 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (fmt_ok): Make provision for %F format and printf %'f flag
+ here too.
+
+2003-07-23 Christophe Bisiere <bisiere@univ-tlse1.fr> (tiny change)
+
+ * posix/regex.h (RE_TRANSLATE_TYPE): Define it to "unsigned char,"
+ to avoid problems at hosts with signed char.
+ * posix/regexec.c (re_search_internal): Don't say
+ "unsigned RE_TRANSLATE_TYPE."
+
+Thu Aug 28 11:09:41 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (nextfile): Change use of variable `files' to make it
+ clearer that it's a boolean flag.
+
+Tue Aug 26 22:58:15 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (useropen): Add `defined (HAVE_GETGROUPS)' as first test
+ in `#ifdef'. Brings things in sync with same test in main.c and awk.h.
+
+Tue Aug 26 22:49:37 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dbug.h: New file.
+
+ * array.c, awkgram.y, builtin.c, eval.c, ext.c, field.c, io.c,
+ main.c, msg.c, node.c, profile.c, re.c: Converted to use
+ Fred Fish's `dbug' library. By default compiled out, thus
+ not affecting speed.
+
+ For the nonce, the `dbug' library itself is not shipped with
+ gawk, since I expect no-one else but me to be using it.
+
+Thu Aug 21 23:15:36 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (numfiles): Change extern decl to long, to match what's
+ in main.c. Keeps things working on 64-bit systems. Thanks to bug
+ report from Jan Oravec <jan.oravec@6com.sk>.
+
+Wed Aug 20 14:53:47 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (genflags2str): Move test for out-of-space inside test
+ for is the bit set.
+
+Mon Aug 11 11:26:51 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (parse_bracket_exp): If `build_charclass' fails, just pass
+ its value on as the return value.
+
+Sun Aug 10 16:59:14 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c (build_range_exp): Make sure we don't
+ get WEOF on range characters.
+
+Tue Aug 5 21:49:32 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (get_actual): In `case Node_param_list' add test for
+ `&& (symbol->flags & FUNC) == 0' to the if.
+
+Sun Jul 13 18:28:38 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Further bug fix:
+
+ * awkgram.y (variable): Give the new variable an lnode
+ of Nnull_string if it's not an array, even if it is
+ a Node_var_new.
+
+Fri Jul 11 09:32:21 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Bug fix:
+
+ * eval.c (r_tree_eval): For Node_array_ref, set
+ tree->orig_array->var_value to Nnull_string too.
+
+ Unrelated i18n and POSIX change:
+
+ * configure.ac: Add check for local printf supporting %F format.
+ * awk.h (loc): New variable declaration.
+ * main.c (loc): Defined.
+ (main): Call `localeconv' to set loc.
+ * io.c (format_tree): Add support for printf quote flag, %'d for
+ decimal formats (not %e, %E), adds thousand separator into value.
+
+2003-07-10 Paul Eggert <eggert@twinsun.com>
+
+ * io.c (two_way_open): If /bin/sh cannot be executed, exit
+ with status 126 consistently.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Mon Jul 7 09:55:49 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (copyleft, usage): Make sure to fflush output fp. Per Jim
+ Meyering, if error, exit non-zero.
+ * ext.c (get_argument): Fix array paramater handling.
+
+2003-07-06 Paul Eggert <eggert@twinsun.com>
+
+ * builtin.c (do_substr): Issue better diagnostics when
+ d_substr and d_length are NaN, or when 0 < d_length < 1.
+ Be careful when comparing double to SIZE_MAX, as
+ the comparison might return the "wrong" answer when
+ `(double) SIZE_MAX' is a number that is not equal to
+ SIZE_MAX.
+ (do_gensub): Watch out for HOW values that are out of range
+ or are NaN.
+ (do_dcngettext): dcngettext wants an argument of type
+ unsigned long, not long, so use a value of that type.
+
+Fri Jul 4 10:58:02 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Make option letter 'D' fall through into default
+ unknown case if not debugging. Let's us have just one version of
+ `optlist'.
+
+Thu Jun 26 15:25:57 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (get_actual): Undo Stepan Kasal change of 2003-06-17.
+ See test/match2.awk.
+
+Wed Jun 25 15:26:08 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_rand): Change calculation so that result
+ obeys constraint: 0 <= N < 1. This is per history and POSIX.
+ Thanks to Nelson Beebe (beebe@math.utah.edu) for reporting
+ this issue.
+
+Mon Jun 23 15:13:39 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (rs1scan): Per advice from Bruno Haible, it's safe
+ to skip the multibyte checking code if RS is '\n'. See
+ the comment in the code. Big performance improvement for
+ multibyte locales.
+
+2003-06-20 Stepan Kasal <kasal@ucw.cz>
+
+ * eval.c (comp_func): If memcmp returns 0, we have to compare
+ the lengths.
+
+2003-06-19 Stepan Kasal <kasal@ucw.cz>
+
+ * eval.c (interpret) <Node_K_arrayfor>: Use NULL, not 0, to
+ initialize the variable list.
+ (comp_func): Array indices no longer are string values,
+ you have to use ahname_str, ahname_len.
+
+Tue Jun 17 11:53:46 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (get_actual): Make check for isparam
+ smarter: also check for FUNC flag.
+
+2003-06-17 Stepan Kasal <kasal@ucw.cz>
+
+ * array.c (get_actual): Even if canfatal is FALSE, don't
+ tolerate existence of things which can't happen.
+
+Mon Jun 16 16:21:44 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Removed m4/Makefile.
+ * m4/Makefile.am: Removed.
+
+2003-06-16 gettextize <bug-gnu-gettext@gnu.org>
+
+ * configure.ac (AC_OUTPUT): Add m4/Makefile.
+ (AM_GNU_GETTEXT_VERSION): Bump to 0.12.1.
+
+Sun Jun 15 20:45:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Enhance logic to fill buffers to include
+ `|| no_data_left(iop)'.
+ (rs1scan): Fix logic for setting recm fields for multibyte
+ character case.
+
+2003-06-10 Stepan Kasal <kasal@ucw.cz>
+
+ * awkgram.y (release_all_vars): Do not try to release a value of
+ Node_var_new; after get_lhs, use the lhs directly, do not try
+ to do (*lhs)->var_value; the Node_var case doesn't need
+ special treatment.
+ * builtin.c (do_match): `get_param' is successful iff it returns
+ Node_var_array---if the variable was new, get_param has already
+ changed the type.
+ * field.c (do_split): Likewise.
+
+Sun Jun 15 19:36:35 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (r_dupnode): Typo fix in hash tables: stptr -> ahname_str.
+ Thanks to mary1john8@earthlink.net.
+ * array.c (get_actual): Add `if (canfatal)' before call to
+ `cant_happen'.
+
+Sun Jun 15 19:25:49 2003 Patrick T.J. McPhee <ptjm@interlog.com>
+
+ * awk.h (memcpy_ulong): Add ! WIN32 to ifdefs.
+
+Mon Jun 9 18:38:20 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h (hpux): Added stuff to (hopefully) get `tzset'
+ declared on HP/UX 10 and up.
+
+Mon Jun 9 17:12:24 2003 Patrick T.J. McPhee <ptjm@interlog.com>
+
+ * awk.h (ATTRIBUTE_EXPORTED): New macro for dynamic libs on Windows32.
+ * CONVMFTidx, stack_ptr, do_lint, lintfunc: Now have this attribute.
+
+Mon Jun 9 13:11:33 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Clean up of Stepan's patches.
+
+ * array.c (get_actual): Renamed from r_get_array. Added second
+ param canfatal if routine should print fatal message when not an array.
+ (get_actual): Renamed 'prm' to `isparam'.
+ (array_vname): Add static msglen var; only realloc string if it grows.
+ Don't use `s += sprintf(...)'. No good on old systems where sprintf
+ returns char *. Minor formatting cleanups.
+ (do_adump): Restored separate `a' and `r' variables; helps for debugging.
+
+ * awk.h (SCALAR, UNINITIALIZED): Removed entirely, renumbered other flags.
+ (get_array, get_param): New macros, calls get_actual.
+ (get_actual): Declaration changed from that of r_get_array.
+
+ * awkgram.y (release_all_vars): Restored previous version of code; new
+ version isn't right for Node_xx variables.
+ (variable): Minor code cleanup for readability.
+
+ * builtin.c (do_match): Use get_param and print our own message when
+ third parameter is not an array.
+
+ * eval.c: Added a few comments here and there, removed some no longer
+ needed comments.
+
+ * field.c (do_split): Use get_param and print our own message when
+ second parameter is not an array.
+
+Mon Jun 9 11:46:21 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (do_delete): Initialize hash1 and last to keep gcc -Wall happy.
+ * io.c (rsnullscan): Comment out label skip_leading for same reason.
+
+Wed May 28 08:31:23 CEST 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * eval.c (forloops_active, in_function): Nuked.
+ (pop_all_forloops, pop_fcall_stack): Are now inline.
+
+Wed May 28 07:58:35 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * field.c, awk.h (Null_field): No longer static.
+ * field.c (init_fields): Initial value of $0 can be Nnull_string,
+ no need to copy it.
+ * eval.c (r_get_lhs) <Node_field_spec>: Test for uninitialized field,
+ which is Nnull_string for $0 and Null_field for $(>0).
+ * builtin.c (do_print_rec): Test for uninitialized $0.
+
+Tue May 27 17:03:02 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * awk.h (Node_var_new): New node type for variables which can be
+ either scalar or array. From now on, Node_var is always scalar.
+ (Node_gvar_ref): Nuked, its role can be taken by Node_array_ref.
+ (orig_var): Removed, orig_array is enough.
+ (SCALAR, UNINITIALIZED): Flags nuked.
+ (var_uninitialized): New macro to distinguish uninitialized vars;
+ used in several other macros.
+ * array.c (r_get_array, array_vname, do_adump): Adapt to the
+ above changes.
+ * awkgram.y, eval.c, field.c, main.c, node.c, profile.c: Ditto.
+
+Tue May 27 14:27:50 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * array.c (r_get_array): New function, which goes all the way
+ through Node_param_list to actual Node_var_array; if it encounters
+ non scalar Node_var, it changes it to Node_var_array.
+ (in_array, do_delete, do_delete_loop, do_adump, assoc_sort_inplace):
+ Use get_array.
+ (assoc_lookup): The parameter must be a Node_var_array.
+ * awk.h (get_array, r_get_array): Declare the new function and define
+ a macro to speed it up.
+ * builtin.c (do_match): Use get_array.
+ * eval.c (interpret) <Node_K_arrayfor>: Ditto.
+ (r_get_lhs) <Node_K_arrayfor>: Ditto.
+ * field.c (do_split): Ditto.
+
+Tue May 27 08:23:51 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ Changed node->vname meaning for type Node_array_ref and Node_gvar_ref.
+ It contains only the reference name; one has to (recursively) follow
+ node->prev_array to find out the call history for the array.
+
+ * array.c (array_vname): New function to print the array name.
+ (assoc_lookup, do_delete): Use array_vname.
+ * eval.c (interpret, r_tree_eval, r_get_lhs): Use array_vname.
+ (push_args, pop_fcall): Things have simplified.
+ * awk.h (array_vname): Declare.
+ (prev_array): Define.
+
+Sun Jun 8 11:25:36 2003 Stepan Kasal <kasal@ucw.cz>
+
+ * awkgram.y (append_right): When using savetail, remember that it
+ is not necessarily the tail of the list---it's just a pointer to
+ the last chunk appended.
+
+Thu Jun 5 12:01:41 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_strtonum): Make `strtonum(13)' work.
+
+Wed Jun 4 17:07:06 2003 Corinna Vinschen <vinschen@redhat.com>
+
+ * io.c (binmode): Include function for __CYGWIN__ too.
+
+Tue Jun 3 12:40:50 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (interpret): Node_K_switch. For regex case, don't
+ call `free_temp' on the result of `force_string' if it's equal to
+ switch_value. Thanks to John DuBois <spcecdt@armory.com>
+ for finding the problem.
+
+Sun Jun 1 13:08:22 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): For %c, force precision to 1.
+
+Wed May 28 11:55:48 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (isnoeffect, isassignable): Add Node_TEXTDOMAIN to
+ switches in both functions.
+
+Wed May 28 11:38:59 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * awkgram.y (switch_body): Remove rule ``switch_body:/*empty/''
+ as ``switch_body:case_statements'' covers it---this disambiguation
+ fixes a reduce/reduce conflict.
+
+Sun May 25 16:23:43 2003 Corinna Vinschen <vinschen@redhat.com>
+
+ * configure.ac: Remove linking against /usr/lib/automode.o.
+ * configure: Regenerate.
+
+Sun May 25 15:19:19 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * awk.h (get_lhs): For an initialized Node_var, you may return
+ the address of var_value pointer, no matter whether reference
+ bit was set or not. We were silly slowing down most of the
+ assignements.
+
+ * (get_a_record): After grow_iop_buffer, move recm.rt_start even
+ if recm.len == 0.
+
+Mon May 19 16:55:59 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Code for C-style switch statements. Initial version contributed by
+ Michael Benzinger <Michael.Benzinger@sabre-holdings.com>.
+
+ Disabled by default, use `configure --enable-switch' to turn it on.
+
+ * configure.ac: New AC_ARG_ENABLE for switch statements.
+ * awk.h (NODETYPE): New types for switch, case, default keywords
+ and respective lists.
+ * awkgram.y: New productions for switch statement. Does checking to
+ avoid duplicate cases.
+ * eval.c (nodetypes): New entries for new NODETYPEs.
+ (interpret): New code to do switch execution.
+ * profile.c (pprint): New code to print switch statements.
+
+Mon May 19 15:05:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.ac: Renamed from configure.in.
+ * fixvers: Now looks in configure.ac.
+ * Makefile.am: Now cites configure.ac.
+
+ * Misc other: Updated to Automake 1.7.5.
+
+Sun May 18 12:03:56 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (do_delete_loop): Fix bracing of logic for
+ tests.
+
+Wed May 14 09:01:16 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ Misc patches:
+
+ * builtin.c (do_match): If third parameter to `match' is supplied,
+ store all subexpressions which are applicable, even though there
+ are some unused between them.
+
+ * awkgram.y (yylex): When returning from unterminated REGEXP
+ (which is /* kludge */), take care to fake a yylval, to
+ prevent ``internal error'' later.
+
+Sun May 11 15:51:00 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * io.c (rsnullscan, get_a_record): Boundary condition bug fixes.
+
+Sun May 11 15:15:20 2003 Scott Deifik <scottd@amgen.com>
+
+ * awk.h: Add decls for `memcpy_ulong', `memset_ulong', and
+ MSC defines.
+ * regex.c: Include <stdio.h> if MSC for size_t.
+
+Mon May 5 15:11:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Only tweak RT's value in place if the current
+ RS scanner is the same as the last one. Bug report submitted by
+ John DuBois (<spcecdt@armory.com>).
+
+Fri May 2 14:39:48 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Add logic at end to be smart about setting
+ RT. Saves considerable time, esp for default case where RS = "\n".
+
+Wed Apr 30 11:44:38 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (do_split): Add check and code for Node_gvar_ref.
+ * array.c (in_array, do_delete, asort_actual): Same.
+ * builtin.c (do_split): Same for 3rd arg array parameter.
+ * eval.c (interpret): Same for Node_K_array_for.
+ (push_args): Same for evaluating extra args.
+
+Tue Apr 29 15:54:28 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Record reading code redone/simplified considerably.
+
+ * awk.h (IOBUF): Removed total field, no longer used.
+ * io.c (at_eof, has_data, no_data_left): New macros.
+ (RECVALUE, SCANSTATE): New enumerated types.
+ (rs1get_a_record, rsnull_get_a_record, rsre_get_a_record): Removed.
+ (get_a_record): Rewritten, again. Now contains just buffer and
+ record code; searching code moved into these functions:
+ (rs1scan, rsnullscan, rsrescan): New functions to scan a buffer
+ for record contents and terminator. Fill in values in:
+ (struct recmatch): Holds found record and terminator.
+ (spec_setup): Set iop->dataend to indicate data is already in buffer.
+ (nextfile, inrec): Use new macros instead of flag and pointer tests.
+ (set_RS): Set scanning function instead of record function.
+
+ FWIW, it all passes `make test'.
+
+Sun Apr 27 21:02:39 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (do_close): At end, if do_posix return 0. See comment in code.
+
+Tue Apr 15 09:56:03 2003 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * configure.in: Check existence of wcrtomb, and wcscoll.
+ * configh.in: Likewise.
+ * configure: Re-generate.
+ Thanks to Kimura Koichi <kimura.koichi@canon.co.jp> for reporting.
+
+Sun Apr 13 16:02:10 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Add call to `setlocale' for LC_NUMERIC after program is
+ parsed.
+ (arg_assign): Switch back to "C" locale for LC_NUMERIC for command
+ line assignments; this is per POSIX that period is decimal point for
+ program and command line assignments and the locale's separator
+ applies for input, output, and string to number conversion.
+
+2003-03-26 Paul Eggert <eggert@twinsun.com>
+
+ * builtin.c [HAVE_INTTYPES_H]: Include <inttypes.h>.
+ [!HAVE_INTTYPES_H && HAVE_STDINT_H]: Include <stdint.h>.
+ (CHAR_BIT, INTMAX_MIN, UINTMAX_MAX): Define if the system does not.
+ (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): New macros, taken from
+ coreutils and many other GNU utilities.
+ (format_tree): When formatting, use widest possible integers
+ rather than settling with 'long'.
+ (do_lshift, do_rshift, do_and, do_or, do_xor, do_compl): Likewise,
+ when doing bitwise operations.
+ * configure.in (jm_AC_TYPE_LONG_LONG, jm_AC_TYPE_UNSIGNED_LONG_LONG,
+ jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T): Add, since the mainline
+ code now needs this.
+ * doc/gawk.texi (Control Letters, Bitwise Functions): Document this.
+ * m4/intmax_t.m4: New file, taken from coreutils (but renamed to
+ avoid collision with our m4/inttypes.m4).
+ * m4/longlong.m4: New file, taken from coreutils.
+ * m4/uintmax_t.m4, m4/ulonglong.m4: Remove; superseded by the above
+ new m4 files.
+
+ * builtin.c (BITS_PER_BYTE): Remove; use CHAR_BIT instead, since
+ it's the standard name.
+ (do_lshift, do_rshift): Complain if the shift width is exactly equal
+ to the word size, too.
+
+Thu Mar 27 10:44:11 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (rs1_get_a_record, rsnull_get_a_record, rsre_get_a_record):
+ Enhance check for no data left in file to be only if file has
+ non-zero size. Linux files such as /proc/filesystems stat as a
+ regular file of size 0, but actually have contents. Ugh.
+ Thanks to Martin Schlemmer <azarah@gentoo.org> for the bug report.
+
+Wed Mar 26 12:19:32 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Add a lint warning at label `out_of_range'.
+
+Tue Mar 25 12:24:38 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (variable): For array subscript, if NAME is in the
+ symbol table, but not a variable, array, or parameter, generate
+ a syntax error.
+ (isarray): New function, tests if a symbol can be an array.
+
+ * custom.h: Add check for HP/UX, needed for GCC.
+
+Mon Mar 17 09:21:09 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Allow simultaneous manipulation of a global array directly
+ and when passed as a parameter.
+
+ * awk.h (Node_gvar_ref): New nodetype.
+ [orig_var]: New macro.
+ * array.c (do_delete_loop, do_delete): Add logic to handle
+ seeing Node_gvar_ref.
+ * eval.c (nodetypes): Add Node_gvar_ref.
+ (r_tree_eval, r_get_lhs): Add Node_gvar_ref case.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Wed Mar 19 14:08:11 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Production `program --> program error'. Add a return so
+ that we don't produce an infinite stream of error messages.
+ Thanks to Michael Mauch <michael.mauch@gmx.de> for pointing this out.
+
+Wed Mar 19 13:45:50 2003 Corinna Vinschen <vinschen@redhat.com>
+
+ * regex.c [RE_ENBABLE_I18N]: Remove definition; the one in
+ regex_internal.h is better and makes things work with Cygwin.
+
+Tue Mar 11 11:54:20 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.h: Don't include <limits.h> after <regex.h> was
+ included in regex.c, since it could redefine RE_DUP_MAX to a lower
+ value.
+ (bitset_set, bitset_clear, bitset_contain): Use 1UL instead of 1 in
+ left shift operations.
+ * regex.c: Include <limits.h> before <regex.h>
+ * regcomp.c (re_compile_fastmap_iter, init_word_char, parse_expression):
+ Use 1UL instead of 1 in left shift operations.
+
+Mon Mar 10 15:45:37 2003 Corinna Vinschen <vinschen@redhat.com>
+
+ * configure.in: Update CYGWIN case to add /usr/lib/automode.o.
+
+Thu Mar 6 11:07:36 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Updated to automake 1.7.3.
+
+ * config.guess, config.sub: Updated from prep.
+ * Makefile.am (AUTOMAKE_OPTIONS): Add dist-bzip2 to get .bz2 files.
+
+Tue Mar 4 10:40:46 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * version.in: Added goop for K&R compilers; forgot that I have to fix
+ this file which then is used to create version.c.
+
+Mon Mar 3 17:00:44 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: New option --disable-lint.
+ * awk.h (do_lint, do_lint_old): Conditionally declare based on NO_LINT.
+ * eval.c (set_LINT): Ifdef out body if NO_LINT.
+ * main.c (do_lint, do_lint_old): Conditionally compile properly.
+ (main): Handle --lint argument code.
+
+Fri Feb 28 10:43:07 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Add LC_TIME to the things that get set with
+ setlocale().
+ * builtin.c (format_tree): Change test of `n0-- <= 0' to ==, avoids
+ VMS diagnostic.
+
+Thu Feb 27 17:48:29 2003 Pat Rankin <rankin@pactechdata.com>
+
+ * regexec.c (proceed_next_node): Cast re_string_get_buffer to char *.
+ (get_subexp): Likewise.
+
+Tue Feb 25 12:33:41 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.h, regex_internal.c, regcomp.c, regexec.c:
+ Make MB_CUR_MAX into thread local variable re_mb_cur_max.
+
+ Unrelated, from Scott Deifik:
+
+ * io.c (grow_iop_buffer): Add checks for overflow of new buffer size.
+
+Mon Feb 24 13:30:59 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (gawk_mb_cur_max): Declared:
+ * main.c (gawk_mb_cur_max): Defined, init to 1.
+ (main): Initialize gawk_mb_cur_max.
+ * awkgram.y, builtin.c, eval.c, field.c, io.c, re.c (mb_cur_max):
+ Replaces all instances of MB_CUR_MAX, which is a function call (!)
+ in glibc. Big speed up, especially for -Fx case, where x is a
+ single character.
+
+ Unrelated:
+
+ * awkgram.y (rule): For non-existent action, use a Node_K_print_rec
+ node.
+
+Sun Feb 23 15:45:20 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Speed up plain `print' and `print $0':
+
+ * awk.h (Node_K_print_rec): New node type.
+ (do_print_rec): Declare function.
+ * awkgram.y (simple_stmt): Create humongous test for plain `print'
+ or `print $0', and if so, use a Node_K_print_rec for it. Modify
+ test for lint message.
+ * builtin.c (redirect_to_fp): New function for common code to get fp
+ and rp for do_print{,f,_rec} functions.
+ (do_print): Use redirect_to_fp().
+ (do_printf): Use redirect_to_fp().
+ (do_print_rec): New function to just print $0 from field_arr[0]
+ directly; will rebuild the record first if necessary.
+ * eval.c (nodetypes): Add Node_K_print_rec.
+ (interpret): Add Node_K_print_rec case.
+ * profile.c (pprint): Add Node_K_print_rec case.
+ (pp_print_stmt): If null lnode, print "$0" else print the lnode.
+
+ Unrelated:
+
+ * regex_internal.h: Add ENABLE_NLS to the condition for using
+ gettext so that --disable-nls really disables it.
+
+Sat Feb 23 22:46:00 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (rs1_get_a_record, rsnull_get_a_record, rsre_get_a_record):
+ Modify buffer-filling algorithm to always read one or more multiples
+ of the blocksize (iop->readsize).
+ (grow_iop_buffer): Make sure there's room for the current partially
+ read record and one disk block buffer.
+
+Thu Feb 20 22:02:00 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (research): Fix typo in cast of precision value to int.
+ * regex.h, regex.c, re_internal.h, re_internal.c, regcomp.c, regexec.c:
+ synced to GLIBC source, maintaining K&R portability changes, and bug
+ fixes, although losing ability to compile each file separately.
+ * Makefile.am (SOURCES): Moved placement of regex source files from here ...
+ (EXTRA_DIST): ... to here.
+
+Tue Feb 18 14:17:33 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (research): Cast precision value to int.
+ * builtin.c (format_tree): For toofew, cast field width value to int.
+ * io.c (rsre_get_a_record): Initialize restart and reend. Add a variable
+ to make sure they're set before used at end of function.
+ (iopflags2str): Removed decl at top and made not static so that GCC
+ stops complaining that it's defined but not used. Bleah.
+
+Mon Feb 17 11:02:34 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * config.guess, config.sub: Updated from prep.
+
+Sun Feb 16 15:47:15 2003 Scott Deifik <scottd@amgen.com>
+
+ * awk.h (format_tree, make_str_node): Changed decls to match how
+ they are called.
+ * builtin.c (format_tree, sub_common): Same.
+ * node.c (make_str_node): Same.
+
+Wed Feb 5 14:18:01 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Removed duplicate decl of set_prof_file(). Removed
+ undef of const for non-ANSI C; config.h should handle it.
+ * msg.c (set_loc): Use srcfile and srcline in regular code to shut up
+ stupid SGI compiler.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Tue Feb 4 13:40:41 2003 Martin C. Brown <mc@whoever.com>
+
+ * intl/libgnuintl.h: Preprocessor fixes for MacOS X.
+ * regex.h: Ditto.
+
+Tue Feb 4 13:39:37 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (builtin_func): New string for use in rationalizing
+ function parsing and installation code.
+
+Sun Feb 2 16:00:55 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Cache function body code pointer so that only have to find it the
+ first time a function is called. This potential for optimization
+ brought to my attention by Stepan Kasal.
+
+ * awk.h [funcbody]: New macro.
+ * awkgram.y (FUNC_CALL): Set $$->funcbody to NULL.
+ * eval.c (func_call): Changed to take top-level Node_func_call as the
+ single parameter. Do the lookup and caching.
+ (r_tree_eval): Change how func_call() is called in switch.
+ * profile.c (pp_func_call): Similar changes.
+ (tree_eval): Ditto.
+
+Sun Feb 2 15:32:42 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ ADR: More grammar rationalization/repair from Stepan.
+
+ * awkgram.y (common_exp, simp_exp): The rule from getline (without
+ pipe) has been moved from common_exp to simp_exp.
+
+ The redirection of print statements reworked. The idea comes from
+ mawk-1.3.3; much thanks to Michael Brennan!
+
+ * awkgram.y (IO_OUT, IO_IN): New tokens.
+ (APPEND_OP, TWOWAYIO): Swallowed by the above ones.
+ (in_print, in_parens): New static variables, to trace whether
+ IO_OUT is expected.
+ (yylex): Emit the new tokens, update in_parens on '(' and ')'.
+ (exp): The print command(s) reworked.
+ (oputput_redir): Reworked.
+ (print_expression_list): New non-terminal.
+ (rexp, rexpression_list opt_rexpression_list): Nuked.
+ (exp, simp_exp): ``cmd|getline'' rule changed to
+ ``cmd IO_IN getline'' and moved from exp to simp_exp.
+
+ Unrelated:
+
+ * awkgram.y (variable): Don't return Node_func, issue a fatal
+ error instead.
+ * eval.c (r_tree_eval, r_get_lhs): Omit special checks for Node_func,
+ nodes of this type cannot get into the program tree.
+ * profile.c (tree_eval, pp_lhs): Likewise.
+
+Thu Jan 30 17:42:05 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ ADR: Applied lots of patches from Stepan.
+
+ * array.c (do_delete_loop): Call after_assign for the loop index.
+ * field.c (do_split): The third argument to split(), sep, has to be
+ evaluated and the result dupnoded before assoc_clear is called,
+ similarily as src. And we needn't to evaluate the third argument
+ if it's CONSTant regex and the first parameter is null string.
+ * awk.h (dupnode): Changed to macro, function renamed to r_dupnode.
+ * node.c (dupnode, r_dupnode): Rename.
+ * awkgram.y (parms_shadow): Return bool value, ...
+ (shadow_funcs): ... which will enable us to end the program if
+ lintfunc is fatal.
+ (program): Cleanup of the rules defining the ``program'' non-terminal.
+ (start, program, rule): No value associated,
+ expression_value is now treated similarily as begin_block and end_block.
+ (pattern, rule): Bison actions for non-terminal `pattern' now
+ add a new rule to the appropriate Node_rule_list, action for
+ non-terminal `rule' now only adds the associated code block
+ to the rnode of Node_rule_node.
+ (io_allowed): Renamed to !begin_or_end_rule.
+ (append_pattern): New function, adds new Node_rule_node to a rule_list.
+ (mkrangenode): Deleted, this tiny function was called only once.
+ (function_body): Non-terminal replaced by `action'.
+ (statements, action, statement): `statements' can now be empty;
+ both callers had to accomodate to this.
+ (statements): Don't call isnoeffect($2->type) if
+ $2 happens to be NULL.
+
+Mon Jan 27 14:12:19 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (iop_close): Based on report by Stepan Kasal and because of
+ his changes, don't call reset_record() when saving a copy of contents
+ of $0.
+ * awkgram.y: Improved function parsing error messages for case where
+ user uses a builtin name as a function name. Based on error report
+ by Stepan Kasal.
+ * ext.c (make_builtin): Set FUNC flag for new function. Based on error
+ report by Stepan Kasal.
+
+Mon Jan 27 14:06:20 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * field.c (reset_record): No longer call set_record(), the code is
+ moved to the function body. Do not set MAYBE_NUM.
+ (set_record): Call reset_record() to perform the common tasks.
+ The prototype has changed, change awk.h and all callers.
+
+Mon Jan 27 10:50:03 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (NODE): `proc' renamed to `builtin,' to fix a conflict
+ on some systems. Replaced on all spots where it was used.
+
+Sun Jan 26 11:52:01 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [NUMSUBPATS]: New macro.
+ * builtin.c (do_match): Use it in loop that fills in subpattern info.
+ * eval.c (r_tree_eval): For Node_assign, don't call free_temp(),
+ as assign_val() contains dupnode(), which would clear the TEMP
+ flag. From Stepan Kasal <kasal@math.cas.cz>.
+ * config.sub: Updated from prep.
+
+Sun Jan 19 22:34:01 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (do_asorti): Add declaration.
+ * awkgram.y (tokentab): Add asorti() function to table.
+ * array.c (ASORT_TYPE): New enumerated type for VALUE or INDEX array
+ sorting.
+ (assoc_sort_inplace): New second arg of type ASORT_TYPE. Additional code
+ to rearrange array so rest of merge-sorting works; basically values are
+ tossed and index moved into value spot.
+ (asort_actual): Renamed from do_asort(). Takes new ASORT_TYPE argument.
+ (do_asort): Calls asort_actual(tree, VALUE).
+ (do_asorti): Calls asort_actual(tree, INDEX).
+
+ * main.c (load_procinfo): Free groupset array when done with it.
+
+Thu Jan 16 18:30:50 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_match): Revised to provide start and length
+ indices in array 3rd parameter.
+ * config.guess, config.sub: Updated from prep.
+
+Thu Jan 2 11:09:12 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ Updated to bison 1.875.
+
+Tue Dec 31 17:14:45 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Updated things to automake 1.7.2 and autoconf 2.57.
+
+Tue Dec 31 16:54:44 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [IOP_CLOSED]: New flag.
+ * io.c (iop_close): Set IOP_CLOSED flag.
+ (inrec): Check for IOP_CLOSED; if set return EOF.
+ (rs1_get_a_record, rsnull_get_a_record): Check for EOF before
+ refilling buffers.
+ (rsre_get_a_record): Ditto. Also, set RT before updating pointers in IOP.
+ * Makefile.am (efence): New target to compile with Electric Fence.
+
+2002-12-23 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * awk.h (catchsig): Delete prototype.
+ * main.c (catchsig): Make static and remove excess argument.
+ (main): Delete unnecessary casts.
+ * io.c (rs1_get_a_record, rsnull_get_a_record): Mark parameter
+ with ATTRIBUTE_UNUSED.
+
+Mon Dec 23 11:54:07 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex_internal.h, regex_internal.c, regcomp.c, regexec.c, version.c:
+ Fixed to compile, once again, under K&R compilers.
+ * io.c (grow_iop_buffer): Fix calculation of new size to
+ first subtract 2, double, then add 2 back in.
+
+Fri Dec 20 11:48:42 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ get_a_record split into three routines.
+
+ * awk.h (IOBUF): Structure reworked for new code.
+ * io.c (get_a_record): Now a pointer to different functions.
+ (rs1_get_a_record, rsnull_get_a_record, rsre_get_a_record): New functions.
+ (iop_alloc, iop_close): Reworked for new structure.
+ (do_getline, inrec): Modifiend for new EOF condition.
+ (iopflags2str): New routine.
+
+Fri Dec 20 11:05:50 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c, regex_internal.c, regex_internal.h: Changes to allow separate
+ compilation of the reg*c files.
+ * regcomp.c: Fix bug in using translation tables with [[:upper:]] etc.
+ * Makefile.am: Move regex files into sources from EXTRA_DIST. (ADR)
+
+Mon Dec 9 14:20:42 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * main.c (main): When processing option '-f' don't ignore spaces
+ if optarg points at the beginning of the current argument
+ (like ``gawk -f " " file'').
+
+2002-11-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * awkgram.y (stopme): Mark parameter with ATTRIBUTE_UNUSED.
+ (yyerror): Add ATTRIBUTE_PRINTF_1.
+ * builtin.c (do_systime, do_rand): Likewise.
+ * field.c (set_field, re_parse_field, def_parse_field,
+ posix_def_parse_field, null_parse_field, sc_parse_field,
+ fw_parse_field): Likewise.
+ * io.c (pidopen, useropen): Likewise.
+ * main.c (catchsig): Likewise.
+ * profile.c (init_profiling): Likewise.
+ * awk.h (err): Add ATTRIBUTE_PRINTF.
+ * msg.c (err): Delete redundant prototype. Fix format specifier.
+
+Wed Nov 27 06:04:20 2002 Pat Rankin <rankin@pactechdata.com>
+
+ * ext.c [#if !DYNAMIC] (do_ext): Cast string value for error node.
+
+Sun Nov 24 18:23:29 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ From Paul Eggert, with some edits by me.
+
+ * builtin.c (do_substr): Consistently use floating point
+ values for lint messages, so they should be printed pretty
+ much as the user saw them. Check for overflow before
+ converting floating point to integer. Do the right thing with
+ NaNs.
+
+ Check for index out-of-range before checking for length
+ out-of-range, to avoid some nasty effects if address
+ arithmetic overflows (e.g., indx + length < index).
+
+ Allow zero-length substrings when checking for lint if
+ do_lint == LINT_INVALID.
+
+Sun Nov 24 18:21:06 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (LINT_ALL, LINT_INVALID): New constants.
+ * main.c (main): Allow --lint=invalid which restricts warning to
+ things that aren't valid.
+ * eval.c (set_LINT): Update setting logic.
+
+Wed Nov 20 13:14:58 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (lintfunc): Improve ifdef for attribute to only
+ work for GCC 3.2 and later.
+ * io.c (PIPES_SIMULATED): Don't define if on AIX, which
+ does define TANDEM in one of its header files. Ugh.
+
+Tue Nov 19 15:33:55 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_substr): Use %lu in warnings instead of %d.
+
+Mon Nov 18 14:42:53 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * config.guess: Synced from ftp.gnu.org.
+ * config.sub: Ditto.
+
+Sun Nov 17 21:32:49 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Updated things to automake 1.7.1.
+
+Sun Nov 3 14:33:30 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_get_lhs): For variables, always clear UNINITIALIZED,
+ since the variable is about to be assigned to. From Stepan Kasal.
+
+Fri Nov 1 11:19:01 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (lintfunc): Can only supply attributes for a function
+ pointer if GCC >= 3. Added ifdefs. Bah, humbug.
+
+2002-10-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * array.c (array_init, concat_exp, assoc_find, do_delete):
+ Const-ify.
+ * awk.h (redirect, set_record, pp_func, pp_string_fp, format_val,
+ parse_escape, make_regexp, research, reisstring, remaybelong):
+ Likewise.
+ * awkgram.y (dumpintlstr, dumpintlstr2, func_use, dup_parms,
+ var_comp, finfo, fcompare, func_use, dumpintlstr, dumpintlstr2):
+ Likewise.
+ * builtin.c (stdfile, do_fflush, do_index, category_table):
+ Likewise.
+ * eval.c (push_forloop, push_args, PUSH_BINDING, RESTORE_BINDING,
+ cmp_nodes, op_assign, loop_info, fcall, fmt_ok, set_LINT,
+ comp_func): Likewise.
+ * ext.c (do_ext): Likewise.
+ * field.c (set_record): Likewise.
+ * io.c (gawk_popen, two_way_open, binmode, redirect, getredirect,
+ fatal): Likewise.
+ * node.c (values, format_val, make_str_node, parse_escape): Likewise.
+ * profile.c (pp_string, pp_match_op, pp_func, pp_string,
+ pp_string_fp): Likewise.
+ * re.c (make_regexp, research, reisstring, remaybelong): Likewise.
+
+2002-10-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * awk.h (__attribute__, ATTRIBUTE_UNUSED, ATTRIBUTE_NORETURN,
+ ATTRIBUTE_PRINTF, ATTRIBUTE_PRINTF_1, __extension__): Define.
+ (emalloc, erealloc): Fix format specifier warnings.
+ (do_nextfile):Mark with ATTRIBUTE_NORETURN.
+ (getredirect): Const-ify.
+ (msg, error, warning, r_fatal, lintfunc): Mark with
+ ATTRIBUTE_PRINTF_1.
+ (r_fatal): Mark with ATTRIBUTE_NORETURN.
+ * builtin.c (format_tree): Fix format specifier warning.
+ * eval.c (interpret): Likewise.
+ * main.c (usage, copyleft, catchsig, nostalgia, version): Mark
+ with ATTRIBUTE_NORETURN.
+ * profile.c (dump_and_exit): Likewise.
+
+2002-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * array.c (array_init): Use ISDIGIT, not isdigit.
+ * awk.h (m_tree_eval, force_number, force_string): Use
+ __extension__ in statement expressions.
+ * main.c (lintfunc): Fix !__SDTC__ case.
+ * regex_internal.c (calc_state_hash): Fix inline declaration.
+ * regexec.c (proceed_next_node): Cast assignment to correct type.
+
+2002-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * awk.h (exp_node, Func_ptr): Add prototype arguments.
+ * awkgram.y (yystype, token, getfname, nextc, pushback,
+ allow_newline, yylex): Likewise.
+ * io.c (wait_any): Likewise.
+ * profile.c (indent_in, indent_out): Likewise.
+ * random.h (random): Likewise.
+
+2002-10-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * array.c (grow_table): Const-ify.
+ * awk.h (RE_TRANSLATE_TYPE): Define.
+ (flagtab, casetable): Const-ify.
+ (getfname, shadow_funcs, redflags2str): Prototype.
+ (flags2str, genflags2str, nodetype2str, redflags2str, set_loc,
+ msg, error, warning, r_fatal): Const-ify.
+ * awkgram.y (tokentab, snode): Likewise.
+ * builtin.c (format_tree, do_strftime,
+ localecategory_from_argument): Likewise.
+ * eval.c (casetable, nodetypes, nodetype2str, flags2str,
+ genflags2str): Likewise.
+ * io.c (redflags2str, socketopen): Likewise.
+ * main.c (varfile, version_string, lintfunc, optab, copyleft,
+ varinit, init_vars): Likewise.
+ * msg.c (srcfile, msg, warning, error, set_loc, r_fatal):
+ Likewise.
+ * profile.c (pp_op_assign, pp_match_op, pp_redir): Likewise.
+ * random.c (sccsid): Likewise.
+ * version.c, version.in (version_string): Likewise.
+
+Tue Oct 29 10:50:52 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Update version in AC_INIT and AM_INIT_AUTOMAKE
+ * fixvers: Make grep for pattern a little smarter.
+
+Mon Oct 28 16:35:39 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (hash): Now a function pointer.
+ * array.c (gst_hash_string, scramble): New functions.
+ (awk_hash): Renamed from hash.
+ (hash): Now a function pointer.
+ (array_init): Change hash function based on environment for
+ experimentation.
+
+Mon Oct 28 13:21:20 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Applied lots of patches from Stepan Kasal, tweaked as needed
+ for current code base.
+
+ * node.c (dupnode): When n->stref overfows, flag the node as PERM.
+ Same for n->ahname_ref.
+ (unref): Remove the check for n->stref == LONG_MAX and
+ n->ahname_ref == LONG_MAX.
+ * awk.h (make_string): The third argument to make_str_node changed
+ from FALSE to 0, it's not Boolean.
+ (free_temp): Evaluate the argument only once, so that we
+ can call free_temp(tree_eval(n)) for achieving side effects.
+ (load_environ, load_procinfo): Changed return type to NODE *.
+ * main.c (load_environ): The ENVIRON_node should be created with type
+ Node_var_array and lnode set to NULL. Return pointer to the created node
+ and create an empty hash even on TANDEM.
+ (load_procinfo): Same mods for PROCINFO_node.
+ (init_args): ARGV_node should also have lnode set to NULL.
+ * eval.c (r_tree_eval): case Node_assign moved just above the other
+ assignment cases.
+ (op_assign): ++ and -- cases merged with += and -=, respectively.
+ (push_args): Evaluate all args, even in cases where more args are
+ supplied then required.
+ (interpret): In case Node_K_forarray, flag the variable
+ num_elems also as volatile, so that it survives longjmp() and
+ can be trusted when linting code.
+ (r_get_lhs): Case Node_param_list was unreachable (unless
+ something breaks really badly), remove it;
+ (r_tree_eval): Case Node_var_array removed from the last switch,
+ it was caught in the first switch above.
+ * profile.c (tree_eval): Again, case Node_var_array was caught above.
+ * awkgram.y (variable): Code simplified, making use of the above
+ changes.
+ * field.c (sc_parse_field): IGNORECASE only applies to regex based
+ field-splitting, so remove code that pays attention to it.
+ (do_split): Don't use parse_field if RS_is_null.
+ (set_FS): Beware of FS == "\\" even if RS_is_null.
+
+ Code changes to make things work better:
+ * field.c (set_FS): Don't use cmp_nodes() to compare old and new
+ value of FS, that uses IGNORECASE, which is a bad idea. Improve
+ logic for choosing sc_parse_field. Ensure that when RS_is_null
+ but using a single character, that we do pay attention to
+ case when doing regex splitting.
+ * io.c (set_RS): Don't use cmp_nodes() to compare old and new
+ value of RS, that uses IGNORECASE, which is a bad idea.
+
+Mon Oct 28 09:43:14 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * recomp.c (parse_expression): Change return statement into
+ two so it'll compile for SGI cc.
+
+ * awk.h (STR, CUR): Changed to STRCUR and NUMCUR respectively,
+ to avoid conflict with STR on some System V systems. Changed
+ in all source files.
+
+Thu Oct 24 16:14:34 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (AVG_CHAIN_MAX): Now a variable, to allow easy experimentation.
+ (array_init): Pulls a new value from env var AVG_CHAIN_MAX if it
+ exists and sets the variable.
+ * awk.h: Add declaration for array_init().
+ * main.c (main): Call array_init().
+
+Tue Oct 22 11:23:56 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bisonfix.sed: Updated for current bison. Death to alloca!
+
+2002-10-21 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * builtin.c (tolower, toupper): Add casts to char* to fix some
+ compiler warnings.
+ * eval.c (cmp_nodes): Ditto.
+ * regcomp.c (peek_token_bracket): Skip the byte already read.
+
+Wed Oct 16 15:02:09 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (set_RS): Make sure to always call set_FS().
+
+2002-10-11 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regcomp.c (re_compile_fastmap_iter): Remove the handling
+ OP_CONTEXT_NODE.
+ (regfree): Likewise.
+ (create_initial_state): Likewise.
+ (analyze): Remove the substitutions which became useless.
+ (calc_first): Likewise.
+ (calc_epsdest): Use edests of OP_BACK_REF in case that it has
+ epsilon destination.
+ (duplicate_node_closure): New function.
+ (duplicate_node): Remove the handling OP_CONTEXT_NODE.
+ (calc_inveclosure): Likewise.
+ (calc_eclosure): Likewise.
+ (calc_eclosure_iter): Invoke duplicate_node_closure instead of
+ direct invocation of duplicate_node.
+ (parse): Don't use comma operator in the return to avoid compiler
+ warning.
+ (parse_reg_exp): Likewise.
+ (parse_branch): Likewise.
+ (parse_expression): Likewise.
+ (parse_sub_exp): Likewise.
+ (parse_dup_op): Likewise.
+ * regex_internal.c (re_dfa_add_node): Remove the substitutions
+ which became useless.
+ (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
+ (create_cd_newstate): Likewise.
+ * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
+ (re_token_t): Likewise.
+ (re_dfa_t): Likewise.
+ (re_node_set_remove): New macro.
+ * regexec.c (check_matching): Remove the handling
+ OP_CONTEXT_NODE.
+ (check_halt_node_context): Likewise.
+ (proceed_next_node): Likewise.
+ (pop_fail_stack): Fix the memory leak.
+ (set_regs): Likewise.
+ (free_fail_stack_return): New function.
+ (sift_states_backward): Fix the memory leak. Remove the handling
+ OP_CONTEXT_NODE.
+ (update_cur_sifted_state): Append some if clause to avoid redundant
+ call.
+ (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
+ back reference.
+ (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
+ (check_subexp_limits): Likewise.
+ (search_subexp): Likewise.
+ (sift_states_bkref): Likewise.
+ (transit_state_mb): Likewise.
+ (transit_state_bkref_loop): Likewise.
+ (transit_state_bkref_loop): Likewise.
+ (group_nodes_into_DFAstates): Likewise.
+ (check_node_accept): Likewise.
+ (sift_ctx_init): Add initializing.
+
+Tue Oct 15 14:18:53 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_IGNORECASE): Call set_RS() instead of
+ set_FS_if_not_FIELDWIDTHS(). The former calls the latter
+ for us, and also makes IGNORECASE affect RS like it's supposed to.
+ * field.c (FS_re_yes_case, FS_re_no_case): New variables.
+ (set_FS): Smarten up routine to not recompile FS_regexp if all
+ that's changed is IGNORECASE or if switching back to FS from
+ FIELDWIDTHS. Significant speed-up for cases where IGNORECASE
+ is assigned to for every record.
+ * io.c (RS_re_yes_case, RS_re_no_case): New variables.
+ (set_RS): Similar changes as to set_FS(). In particular,
+ IGNORECASE changing now affects record splitting too.
+ * re.c (refree): Set rp->pat.tranaslate to NULL. It comes
+ from casetable and shouldn't be freed. (Strictly necessary
+ only for old regex, but a good idea anyway).
+ Also, call regfree(& rp->pat) instead of manually free()ing
+ things, since there's dynamically allocated stuff hiding in
+ the buffer. Avoids a memory leak.
+
+Mon Oct 14 12:02:39 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Major space reduction in array management. Overhead reduced
+ to two NODE's per element from three.
+
+ * awk.h (ahash): Union is gone.
+ (hash.ref): New union member.
+ (ahnext): New definition into hash union.
+ (ahvalue): New definition into hash union.
+ (ahname_str): New member, points into hash union.
+ (ahname_len): New member, points into hash union.
+ (ahname_ref): New member, points into hash union.
+ * array.c: Replaces uses of ahname member with string and
+ length. Set the reference count correctly to 1 on new nodes.
+ * eval.c (interpret): Case for Node_K_arrayfor. dupnode() the
+ array indices, and set loop variable to new value made via
+ make_string().
+ * node.c (unref, dupnode): Node_ahash nodes are now also
+ reference counted, a la strings. Similar code is used to
+ increment/decrement the counts, and/or copy nodes as
+ needed.
+
+ Unrelated:
+ * awk.h (forsub): Removed. Not used.
+
+Sun Oct 13 16:58:27 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * profile.c (pprint): #undef the temporary defines at the end
+ of the case.
+ * eval.c (interpret): Likewise.
+ (assign_val): We can unref() before doing dupnode().
+ Also, move the check for NF < 0 from here ...
+ * field.c (set_NF): ... to here.
+ * main.c (varinit): No need to call set_NF().
+ * awkgram.y (statements): Don't be so generous when concatenating
+ `statements' with a `statement'.
+
+
+2002-10-13 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regcomp.c: Synced with development sources.
+ * regex_internal.c: Synced with development sources.
+ * regex_internal.h: Synced with development sources.
+ * regexec.c: Synced with development sources.
+
+Sun Oct 13 21:35:35 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (NODE): Reflags is now unsigned long for:
+ (exec_count): Defined to be sub.nodep.reflags. Using `number'
+ broke pgawk.
+ * profile.c (Node_K_delete_loop): Print out as a for loop
+ with a comment that it's internally the same as `delete array'.
+ * eval.c (Node_K_delete_loop): Increment the exec_count. Ooops.
+ * configure.in (AM_GNU_GETTEXT_VERSION): New macro call.
+ * custom.h: Updated description of the file at the top.
+
+Thu Oct 10 16:39:51 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (vname, exec_count): Now macros into different
+ parts of the NODE structure that can be safely used for them.
+ Saves 16 bytes per NODE.
+ * eval.c: Changed use of `vname' to `varname' to avoid new
+ macro.
+ * main.c (lintfunc): Made ifdefed decls match awk.h.
+ * eval.c (comp_func): Use memcmp instead of strcmp.
+ * configure.in (AC_CONFIG_HEADER): Physically append custom.h
+ to config.h to avoid subdir compiliation problems.
+
+Sun Oct 6 17:36:15 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Updated to automake 1.7 and bison 1.50.
+
+ * INSTALL: Replaced with current version from automake 1.7.
+ * config.guess: Replaced with current version from automake 1.7.
+ * config.sub: Replaced with current version from automake 1.7.
+ * depcomp: Replaced with current version from automake 1.7.
+ * doc/texinfo.tex: Replaced with current version from automake 1.7.
+ * install-sh: Replaced with current version from automake 1.7.
+ * missing: Replaced with current version from automake 1.7.
+ * mkinstalldirs: Replaced with current version from automake 1.7.
+ * ylwrap: Replaced with current version from automake 1.7.
+
+ * configure.in (DYNAMIC): Updated AC_DEFINE(DYNAMIC) to
+ three-argument form for autoheader.
+ * acinclude.m4: Removed includes of jm-mktime.m4 and
+ largefile.m4, which are now standard parts of Autoconf.
+
+ * Makefile.in: Regenerated.
+ * aclocal.m4: Regenerated.
+ * awkgram.c: Regenerated.
+ * awklib/Makefile.in: Regenerated.
+ * configure: Regenerated.
+ * doc/Makefile.in: Regenerated.
+ * test/Makefile.in: Regenerated.
+
+Sun Sep 29 16:47:49 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h (__WIN32__): Added from gnuwin32 project, via
+ Stepan Kasal.
+
+ * awkgram.y: For tawk compatibility, added `delete(array)'.
+ To remain undocumented, since it's WAY non-standard.
+
+Sun Sep 22 22:23:50 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (re_cnt): Removed, not needed since no dfa code.
+ * awkgram.y (regexp, a_regexp): Removed use of re_cnt.
+ * re.c (re_update): Ditto.
+
+Thu Sep 19 10:55:37 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (binmode): Create function if defined(WIN32) also.
+
+ Updated to gettext 0.11.5, autoconf 2.54 and automake 1.6.3.
+
+ * aclocal.m4: Regenerated.
+ * m4/codeset.m4: Updated.
+ * m4/gettext.m4: Updated.
+ * m4/glibc21.m4: Updated.
+ * m4/iconv.m4: Updated.
+ * m4/lcmessage.m4: Updated.
+ * m4/lib-ld.m4: Updated.
+ * m4/lib-link.m4: Updated.
+ * m4/lib-prefix.m4: Updated.
+ * m4/progtest.m4: Updated.
+ * po/Makefile.in.in: Updated.
+ * po/Rules-quot: Updated.
+ * po/boldquot.sed: Updated.
+ * po/en@boldquot.header: Updated.
+ * po/en@quot.header: Updated.
+ * po/insert-header.sin: Updated.
+ * po/quot.sed: Updated.
+ * po/remove-potcdate.sin: Updated.
+
+Tue Sep 17 23:46:01 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Moved override of INSTALL to just after
+ AC_INIT so that it takes effect. Necessary for Autoconf 2.5x.
+
+Mon Sep 16 16:40:57 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * awkgram.y (want_assign): Removed.
+ (SLASH_BEFORE_EQUAL, ASSIGN): New terminals; ``/='' is now
+ formed from these two.
+ (a_slash): New non-terminal, representing either '/' or
+ SLASH_BEFORE_EQUAL.
+ (assign_operator): New non-terminal, replaces ASSIGNOP.
+ (REGEXP): yylex now eats the terminating '/' before
+ returning REGEXP token.
+ (exp): The check for C-like comments moved from here
+ (regexp): ... to here.
+ (common_exp): New non-terminal; contains common parts of exp
+ and rexp. (a_relop, relop_or_less): New non-terminals.
+ (rexp): Some rules updated to be analogous to exp.
+ (output_redir): Can contain only common_exp, not exp in general.
+
+Mon Sep 16 22:51:51 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (two_way_open): Move label use_pipes outsidef of ifdef,
+ just in case.
+
+Thu Sep 12 15:11:28 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (getfname): Return NULL if not found, remove
+ fatal error. Could be an extension function.
+ (dump_funcs): Walk symbol table counting functions before
+ mallocing table, since there could be extension functions,
+ func_count could be too small.
+ * profile.c (pp_builtin): Handle NULL return from getfname().
+ Print it as "extension_function()" if so.
+
+Tue Sep 10 17:33:48 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Minor code simplification.
+
+ * awk.h (in_array): Change return type to NODE*.
+ (assoc_exists): Remove declaration.
+ * array.c (in_array): Change return type to NODE *.
+ Return value is pointer to element value or NULL.
+ (assoc_exists): Removed function.
+ * eval.c (r_tree_eval): Case Node_in_array, change value
+ to test return of in_array() against NULL.
+ * io.c (pty_vs_pipes): Change test to make a tmp_string()
+ of the index and call in_array(). Add free_temp() of
+ subscript and free() of full_index (oops).
+
+2002-09-10 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * posix/regcomp.c: Wrap #include wchar.h and wctype.h in #if.
+ (build_range_exp): Add castings to strlen invocations.
+ (build_collating_symbol): Restore the type of characters from "char"
+ to "unsigned char", and supplement castings.
+ (build_collating_symbol): Likewise.
+ (build_equiv_class): Likewise.
+ (build_charclass): Likewise.
+ (seek_collating_symbol_entry): Likewise.
+ (parse_bracket_exp): Likewise.
+ (build_word_op): Supplement a casting.
+ * posix/regex_internal.c: Wrap #include wchar.h and wctype.h in #if.
+ (re_string_allocate): Fix castings.
+ (re_string_construct): Likewise.
+ (re_string_construct_common): Likewise.
+ (re_string_realloc_buffers): Likewise.
+ (build_wcs_buffer): Likewise.
+ (build_wcs_upper_buffer): Likewise.
+ (re_string_skip_chars): Likewise.
+ (re_string_reconstruct): Likewise.
+ * posix/regex_internal.h: Restore the type of characters in
+ re_string_t and bracket_elem_t from "char" to "unsigned char".
+ (re_string_elem_size_at): Fix castings.
+ * posix/regexec.c: Wrap #include wchar.h and wctype.h in #if.
+ (transit_state_bkref_loop): Restore the type of characters from
+ "char" to "unsigned char", and append a cast to "char*" pointer in
+ array subscript.
+ (check_node_accept_bytes): Likewise.
+ (find_collation_sequence_value): Likewise.
+
+Thu Sep 5 13:15:09 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (remaybelong): New routine.
+ (reisstring): Simplified the code a bit.
+ * awk.h (remaybelong): Declaration added.
+ * io.c (get_a_record): Change fourth grungy special case to
+ use remaybelong() instead of strchr() on last character.
+
+Wed Sep 4 13:20:26 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (do_input): Recode guts of main loop to be easier
+ to trace with a debugger.
+ (get_a_record): Fourth grungy special case for RE-based
+ record splitting added. See explanatory comments there
+ and test/rebuf.awk.
+
+2002-09-03 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * posix/regcomp.c (regcomp): Append "__restrict" modifier to avoid
+ warnings of some compilers.
+ (build_collating_symbol): Change the type of characters from
+ "unsigned char" to "char", and append a cast to "char*" pointer in
+ array subscript.
+ (build_collating_symbol): Likewise.
+ (build_equiv_class): Likewise.
+ (build_charclass): Likewise.
+ (re_compile_pattern): Remove incorrect cast.
+ (re_compile_fastmap_iter): Change the type of characters from
+ "unsigned char" to "char", and append a cast to "char*" pointer
+ in array subscript.
+ (parse_bracket_exp): Likewise.
+ * posix/regex_internal.c (re_string_construct_common): Likewise.
+ (re_string_allocate): Likewise.
+ (re_string_construct): Likewise.
+ (re_string_realloc_buffers): Likewise.
+ (build_wcs_buffer): Likewise.
+ (re_string_reconstruct): Likewise.
+ * posix/regex_internal.h: Change the type of characters in
+ re_string_t and bracket_elem_t from "unsigned char" to "char".
+ * posix/regexec.c (regexec): Append "__restrict" modifier to avoid
+ warnings of some compilers.
+ (transit_state_bkref_loop): Change the type of characters from
+ "unsigned char" to "char", and append a cast to "char*" pointer in
+ array subscript.
+ (check_node_accept_bytes): Likewise.
+ (find_collation_sequence_value): Likewise.
+
+Wed Aug 21 15:40:36 2002 Corinna Vinschen <vinschen@redhat.com>
+
+ * configure.in: Define --without-libintl-prefix and
+ --without-libiconv-prefix for Cygwin by default.
+ * Makefile.am: Call fixvers from $(srcdir).
+ * awk.h: Don't define O_BINARY on Cygwin.
+
+Wed Aug 21 15:31:57 2002 Andreas Buening <andreas.buening@nexgo.de>
+
+ * configure.in (AC_OBJEXT, AC_EXEEXT): Added. Removed OS/2 goo.
+ * Makefile.am (check-local): Add $(EXEEXT) suffixes, remove OS/2 goo.
+ * regcomp.c, regex_internal.c, regexec.c: Conditionalize include of
+ <wchar.h> and <wctype.h> on RE_ENABLE_I18N.
+
+Wed Aug 21 14:43:57 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gettext.h (ENABLE_NLS): Add include of locale.h so that things
+ compile even without optimization. Sheesh.
+ * io.c (two_way_open, pty_vs_pipes): Conditionalize pty code on
+ HAVE_TERMIOS_H.
+
+Thu Aug 8 22:16:10 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (main): Force LC_NUMERIC locale to "C", esp. for
+ M$ systems. Ugh.
+
+Wed Aug 7 13:42:01 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Improve test for newlines at beginning of
+ record but with nothing following it. See test/nulrsend.
+
+Mon Aug 5 10:12:39 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add option to use ptys instead of pipes for |&.
+ Basic plumbing originally from Paolo Bonzini <bonzini@gnu.org>.
+
+ * awk.h (RED_PTY): New flag.
+ (assoc_exists): Add declaration.
+ * array.c (in_array): Use FALSE not zero for return value.
+ (assoc_exists): New routine to find and return value for an index
+ in an array.
+ * configure.in: Test for termios.h and stropts.h, and grantpt function.
+ * io.c: Include termios.h and stropts.h if available.
+ (redflags2str): Add RED_PTY to table.
+ (redirect): Add RED_PTY to flags turned off when searching.
+ (close_redir): Close write channel for two-way pipes
+ that use ptys by sending an EOF.
+ (two_way_open): If pty_vs_pipe(), use pty's to open two-way pipes as
+ they are line-buffered by default --> alleviates deadlock problems.
+ If fails, fall back to using pipes.
+ (pty_vs_pipe): New function.
+ * main.c (arg_assign): Clean up English in some of the error messages.
+
+Sun Aug 4 00:37:38 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * re.c (make_regexp): Don't pass the error message returned by
+ re_compile_pattern() to gettext(); it's already gettextized.
+ (make_regexp): Minor reformat of code.
+
+Wed Jul 31 23:50:31 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Removed dfa code from gawk since not really needed with new regex.
+
+ * Makefile.am: Removed dfa.h and dfa.c.
+ * awk.h (struct Regexp): Removed `dfareg' and `dfa' members.
+ (make_regexp): Last parameter in function went away, changed decl.
+ (avoid_dfa): Removed declaration.
+ * awkgram.y: Fixed call to make_regexp().
+ * eval.c (match_op): Simplified: removed call to avoid_dfa() and
+ `kludge_need_start' variable. Instead, pass FALSE as last parameter
+ of research().
+ * field.c (set_FS): Fixed call to make_regexp().
+ * io.c (get_a_record, set_RS): Fixed calls to make_regexp().
+ * re.c (make_regexp): Removed last paramter (`dfa') from function.
+ Simplified the code.
+ (research): Simplified the code, removed calls to dfa stuff.
+ (dfaerror): Removed function.
+ (re_update): Fixed call to make_regexp().
+ (avoid_dfa): Removed function.
+
+Thu Jul 25 21:55:45 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regcomp.c, regex_internal.c, regex_internal.h, regexec.c: Bug
+ fixes from Isamu Hasegawa <isamu@yamato.ibm.com> and Stepan Kasal
+ <kasal@math.cas.cz> applied.
+
+Sat Jul 6 23:28:37 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yyerror): Change text of unexpected newline message to
+ include end of string.
+
+Mon Jun 17 17:58:55 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (do_split): Per Michal Jaegermann, move free_temp(fs)
+ above label `out'.
+
+Tue Jun 11 23:26:09 2002 Paul Eggert <eggert@twinsun.com>
+
+ Update to autoconf 2.53 and automake 1.6.1.
+
+ * acconfig.h: Removed.
+ * m4/isc-posix.m4: Removed.
+ * m4/jm-mktime.m4: Removed.
+ * m4/largefile.m4: Removed.
+ * m4/ssize_t.m4: Removed.
+ * ansi2knr.c: Updated.
+ * depcomp: Updated.
+ * install-sh: Updated.
+ * missing: Updated.
+ * mkinstalldirs: Updated.
+ * ylwrap: Updated.
+
+ * configure.in: Improved quoting.
+ * acinclude.m4: Use `m4_sinclude', not antiquated `sinclude'.
+
+Tue Jun 11 23:08:40 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Add `getgrent' to list of functions checked
+ so that awklib/grcat is compiled correctly.
+
+Tue Jun 11 22:18:42 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ Improve argument parsing and -v assignment.
+
+ * awk.h (struct src): Add additional enum values.
+ (arg_assign): Return type and arg list changes.
+ * io.c (nextfile): Add extra arg in call to `arg_assign'.
+ * main.c (pre_assign): Nuked.
+ (allocfiles): New variable.
+ (srcfiles_add, preassigns_add): New macros.
+ (main): Logic cleaned up.
+ (add_src): New function.
+
+ Use `size_t' for optimal_bufsize function.
+
+ * awkgram.y (yylex): `len' is now size_t.
+ * pc/gawkmisc.pc (optimal_bufsize): Change return type to size_t.
+ * posix/gawkmisc.c (optimal_bufsize): Change return type to size_t.
+ * unsupported/atari/gawkmisc.atr (optimal_bufsize): Change return type
+ to size_t.
+ * unsupported/tandem/tmisc.c (optimal_bufsize): Change return type to size_t.
+ * vms/gawkmisc.vms (optimal_bufsize): Change return type to size_t.
+ * README_d/README.hpux: New file.
+
+Fri May 24 12:23:01 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (init_profiling): Remove default initialization
+ of `prof_fp' to stderr. Per Stepan Kasal <kasal@math.cas.cz>.
+
+Wed May 15 15:39:17 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Work through builtin operations to make sure that
+ anything that might have side effects gets dealt with.
+
+ * array.c (do_delete): Evaluate subscript first before
+ checking if something is or isn't an array.
+ * builtin.c (sub_common): Evaluate replacement text, and
+ free it if no match of regex in source text.
+
+Wed May 15 15:30:34 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Switch to new version of regex from IBM Japan.
+
+ * regcomp.c: New file.
+ * regex.c: Replaced with new version.
+ * regex.h: Replaced with new version.
+ * regex_internal.c: New file.
+ * regex_internal.h: New file.
+ * regexec.c: New file.
+ * Makefile.am (EXTRA_SOURCES): New files added.
+
+Tue May 14 17:04:05 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (<locale.h>): Move check and include into gettext.h.
+ * gettext.h (<locale.h>): Add check and include per patch from
+ Bruno Haible.
+
+ * field.c (do_split): When checking for split of null string,
+ evaluate seperator if it's not FS, since could have side effects.
+ At end, free_temp(fs), not free_temp(sep).
+ Both of these thanks to Stepan Kasal <kasal@math.cas.cz>.
+
+Mon May 13 00:41:31 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h (ultrix): Add define GETGROUPS_NOT_STANDARD.
+ * main.c (init_groupset): For GETGROUPS_NOT_STANDARD, use old way
+ to set `ngroups'.
+
+2002-05-10 Andreas Schwab <schwab@suse.de>
+
+ * dfa.c (parse_bracket_exp_mb): Fix warning.
+
+Thu May 9 22:28:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (sub_common): Fix logic for match of null strings to
+ get correct semantics. See test/gsubtst2.*.
+ * field.c (do_split): Minor code cleanup; the third arg to split()
+ is set to be FS by the grammar, so don't need to check it for NULL.
+ Thanks to Stepan Kasal <kasal@math.cas.cz>.
+ * awk.h (locale.h): Move include before that of "gettext.h" for systems
+ that define functions that gettext.h would use when NLS is disabled.
+ Per bug report from Ayamura Kikuchi <ayamura@ayamura.org>.
+
+Tue May 7 17:31:01 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Miscellanious patches courtesy of Stepan Kasal <kasal@math.cas.cz>.
+
+ * field.c, main.c: Tidy up some comments.
+ * field.c (set_FIELDWIDTHS): Init fw_alloc to 4 so it isn't
+ immediately realloced.
+ * main.c (load_procinfo): Check value of FS/FIELDWIDTHS for
+ value of PROCINFO["FS"].
+ * awk.h (set_FS_if_not_FIELDWIDTHS): Removed decl.
+ * field.c (set_FS_if_not_FIELDWIDTHS): Removed function.
+ * eval.c (set_IGNORECASE): Use inline code checking `using_fieldwidths()'.
+ * io.c (set_IGNORECASE): Ditto.
+
+Sun May 5 14:28:34 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fix a memory leak in array for loops if the body contains a
+ `next' or `nextfile' statement. The changes maintain a stack
+ of active for loops that is pushed and popped for each loop,
+ and popped entirely for `next', `nextfile', etc.
+
+ * eval.c (forloops_active, pop_forloop, pop_all_forloops, push_forloop):
+ new functions.
+ (interpret): Case Node_K_arrayfor, call push and pop functions.
+ Case Node_rule_list: Pop loops and pop fcalls after longjmp.
+ Cases Node_K_next, Node_K_nextfile, Node_K_break and
+ Node_K_continue, removed check before longjmp.
+ Case Node_K_exit: Add loop check.
+ (loop_stack, nloops, nloops_active): New variables that implement
+ the stack.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Wed May 1 16:07:49 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getopt.c: Installed latest version from glibc.
+
+Sun Apr 28 17:19:07 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fixvers: Changed patterns to allow test versions of the
+ form `gawk-3.1.1a'.
+ * patchlev.h: Patchlevel is now a string constant.
+ * main.c (version): Print patchlevel using %s, not %d.
+ * Makefile.am: Rework DEFPATH stuff and datadir stuff yet again.
+
+ * config.sub: Updated with current version from ftp.gnu.org.
+ * config.guess: Ditto.
+
+ Upgrade to gettext-0.11.2:
+
+ * ABOUT-NLS: Replaced with version from gettext 0.11.2.
+ * config.rpath: Replaced with version from gettext 0.11.2.
+ * intl/*: Replaced with version from gettext 0.11.2.
+ * po/Makefile.in.in: Replaced with version from gettext 0.11.2.
+ * po/Makevars.template: Replaced with version from gettext 0.11.2.
+ * po/Rules-quot: Replaced with version from gettext 0.11.2.
+ * po/boldquot.sed: Replaced with version from gettext 0.11.2.
+ * po/en@boldquot.header: Replaced with version from gettext 0.11.2.
+ * po/en@quot.header: Replaced with version from gettext 0.11.2.
+ * po/insert-header.sin: Replaced with version from gettext 0.11.2.
+ * po/quot.sed: Replaced with version from gettext 0.11.2.
+ * po/remove-potcdate.sin: Replaced with version from gettext 0.11.2.
+ * m4/codeset.m4: Replaced with version from gettext 0.11.2.
+ * m4/gettext.m4: Replaced with version from gettext 0.11.2.
+ * m4/glibc21.m4: Replaced with version from gettext 0.11.2.
+ * m4/iconv.m4: Replaced with version from gettext 0.11.2.
+ * m4/isc-posix.m4: Replaced with version from gettext 0.11.2.
+ * m4/lcmessage.m4: Replaced with version from gettext 0.11.2.
+ * m4/lib-ld.m4: Replaced with version from gettext 0.11.2.
+ * m4/lib-link.m4: Replaced with version from gettext 0.11.2.
+ * m4/lib-prefix.m4: Replaced with version from gettext 0.11.2.
+ * m4/progtest.m4: Replaced with version from gettext 0.11.2.
+
+Wed Apr 17 15:09:45 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.c (PREFIX): Change test for token concatenation ability
+ to `#ifdef HAVE_STRINGIZE'. If a cpp has one, it ought to have
+ the other.
+
+Tue Apr 16 12:26:06 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (tree_eval): Make unary minus case smarter,
+ use is_scalar test and if false parenthesize expression.
+ Add Node_TEXTDOMAIN case.
+ (pp_lhs, is_scalar, prec_level): Add Node_TEXTDOMAIN cases.
+
+Thu Apr 11 21:28:33 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (do_adump): Spelling fix in output message.
+ * builtin.c: Ditto, in multiple routines.
+ (do_toupper, do_tolower): Add cast to size_t in assigment to mbclen
+ for some compilers.
+ * re.c (research): Fix way returning is done to silence some
+ compiler diagnostics.
+
+Wed Apr 10 19:30:51 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (datadir): Set directly to have `/awk'.
+ (DEFPATH): Go back to using $(datadir) for path.
+
+Tue Apr 9 17:34:09 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Upgraded to gettext 0.11.1.
+
+ * Makefile.am (LDADD): Use @LIBINTL@ instead of @INTLLIBS@.
+ * ABOUT-NLS: Version from 0.11.1.
+ * config.rpath: Version from 0.11.1.
+ * aclocal.m4: Regenerated based on new files.
+ * intl/*: Replaced with version from 0.11.1.
+ * m4/ChangeLog: New file.
+ * m4/codeset.m4: New file.
+ * m4/gettext.m4: Version from 0.11.1.
+ * po/ChangeLog: New file.
+ * po/Makefile.in.in: Version from 0.11.1.
+ * po/remove-potcdate.sin: New file.
+
+Mon Apr 8 22:22:58 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (libexecdir): Set directly to have `/awk'.
+ (DEFPATH): Use $(pkgdatadir) for path.
+ (install-exec-hook): Add version link for pgawk.
+ (uninstall-links): Remove pgawk version link.
+
+Wed Mar 20 13:44:21 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c (__alignof__): Definition for non-GCC compilers.
+
+Sun Mar 17 17:41:55 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (do_pathopen): Malloc buffers to hold constructed
+ filenames: No Arbitrary Limits! Thanks to keoki@techie.com
+ for the bug report.
+
+Sun Mar 10 16:59:06 2002 Scott Deifik <scottd@amgen.com>
+
+ * awk.h (LOCALEDIR): Provide a definition in case not using
+ i18n stuff.
+
+Wed Mar 6 18:14:44 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (usage): Add some explanatory text and examples at end.
+
+Sun Mar 3 16:42:50 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getopt.h, getopt.c, getopt1.c: Update to current version
+ from glibc CVS.
+
+Fri Feb 22 15:53:38 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * dfa.c (fetch_wc): Fix type from wchar_t to wint_t.
+ (parse_bracket_exp_mb): Likewise.
+ * regex.c (extract_number): Retrieve the sign information from
+ byte-code in case of AIX.
+
+Thu Feb 21 16:44:24 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (resetup): Moved setting re_max_failures into regex.c.
+ * regex.c (re_max_failures): Set to really big if REGEX_MALLOC
+ defined. Do this in both places that define re_max_failures.
+
+Thu Feb 21 19:02:22 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * builtin.c (sub_common): Avoid index_multibyte_buffer invocation
+ in single byte character environments.
+
+Thu Feb 21 10:08:56 2002 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * dfa.c (parse_bracket_exp_mb): For ':', use wctype_t in MALLOC,
+ not wchar_t.
+
+Thu Feb 21 09:52:16 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Upgraded to automake 1.5 and gettext-0.11.
+ Also bug fix to multibyte code.
+
+ * ABOUT-NLS: Upgraded.
+ * config.guess, config.sub, config.rpath, gettext.h, ylwrap: New files.
+ * Makefile.am: Added above to appropriate places.
+ * awk.h: Replace libintl.h and macros with include of gettext.h.
+ (emalloc, erealloc): Add num bytes to error message, put string inside _().
+ (index_multibyte_buffer): Removed decl.
+ * awklib/Makefile.am: Use $(EXEEXT) for grcat and pwcat targets.
+ * builtin.c (index_multibyte_buffer): Made static to this file.
+ (sub_common): Add checks that replacement string is length > 0 so
+ that we don't try to malloc(0): this fails on some systems.
+ * configure.in (AM_GNU_GETTEXT): Update macro for gettext 0.11.
+ (ALL_LINGUAS): Removed.
+ * m4/codeset.m4: New file.
+ * m4/gettext.m4: Updated.
+ * m4/glibc21.m4: New file.
+ * m4/iconv.m4: New file.
+ * m4/isc-posix.m4: New file.
+ * m4/lcmessage.m4: Updated.
+ * m4/lib-ld.m4: New file.
+ * m4/lib-link.m4: New file.
+ * m4/lib-prefix.m4: New file.
+ * m4/progtest.m4: Updated.
+ * intl/*: Replaced with version from gettext 0.11.
+ * po/*: Revised for gettext 0.11.
+
+Mon Feb 18 14:42:39 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (nondec2awknum): Change assert to runtime check
+ in case user passed in bad data.
+
+2002-02-17 Paul Eggert <eggert@twinsun.com>
+
+ * re.c (resetup): Try to avoid silly limitation of regex.c by
+ setting re_max_failures to the largest reasonable value.
+
+Sun Feb 17 14:57:43 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (research): If re_search() returns -2, the
+ match failed since regex couldn't allocate enough memory
+ for what it needed. Fail with a fatal message instead.
+ This is a workaround, not a fix, but I don't mess with
+ regex.[ch].
+
+Fri Feb 8 16:01:11 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (LEX_FOR): Fix case of array loop with body of single
+ delete statement to actually check the right things to make the
+ optimization.
+ * profile.c (tree_eval): Add case for Node_K_delete_loop.
+ (prec_level): Ditto.
+
+Mon Feb 4 10:38:00 2002 Bruno Haible <bruno@clisp.org>
+
+ * awk.h (dcngettext): New macro.
+ (do_dcngettext): New declaration.
+ * awkgram.y (tokentab): Add dcngettext.
+ (snode): Add a warning for incorrect use of dcngettext.
+ (dumpintlstr): fflush at the end, not in the middle.
+ (dumpintlstr2): New function.
+ * builtin.c (localecategory_from_argument): New function, extracted
+ from do_dcgettext.
+ (do_dcgettext): Call it.
+ (do_dcngettext): New function.
+
+Sun Feb 3 17:56:20 2002 Bruno Haible <bruno@clisp.org>
+
+ * builtin.c (do_bindtextdomain): Don't free the same variable twice.
+ * main.c (main): Call setlocale for LC_MESSAGE, to make dcgettext
+ function work on glibc systems.
+
+Wed Jan 23 15:03:36 2002 Andreas Buening <andreas.buening@nexgo.de>
+
+ * configure.in (PATH_SEPARATOR): Code added for OS/2.
+ Makefile.am (PATH_SEPARATOR): Added.
+ (DEFPATH): Make use of PATH_SEPARATOR.
+
+Wed Jan 23 14:46:04 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yylex): Add test for lasttok != '$' when looking
+ at _"...". See comments in code.
+
+Wed Aug 15 07:43:10 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c : Implements the codes for exactn_bin to work correctly
+ in multibyte environments, in case of invalid multibyte sequence.
+
+Wed Aug 15 07:36:56 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c : Implements the codes for charset/charset_not to
+ work in multibyte environments.
+
+Wed Aug 15 05:04:34 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c : Add some comments.
+
+Wed Aug 15 05:04:15 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c (count_mbs_length): New function, check the mutibyte
+ strings and count how many wchar_t the substring occupy.
+ (CHAR_T): New macro, character type depending on
+ environments(singlebyte/multibyte).
+ (UCHAR_T): New macro, unsigned character type.
+ (COMPILED_BUFFER_VAR): New macro, the buffer containing
+ the compiled buffer.
+ Adapt singlebyte/multibyte environments with CHAR_T, UCHAR_T,
+ and COMPILED_BUFFER_VAR.
+
+Mon Jun 25 09:00:41 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c : Reorganize code to build code twice. byte_* are
+ for single byte, wcs_* are for multibyte character sets.
+ Chose functions according to current locale dynamically.
+ * regex.c (convert_mbs_to_wcs): New function, convert multibyte
+ strings to wide character strings for multibyte environments.
+
+Fri Jun 22 05:43:50 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * regex.c (MBS_SUPPORT): New macro, defined if the environment
+ can handle multibyte characters.
+ (OFFSET_ADDRESS_SIZE): Offset address size in the
+ compiled buffer.
+ Rewrite offset addresses with OFFSET_ADDRESS_SIZE.
+
+Thu Apr 26 08:03:17 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * builtin.c (index_multibyte_buffer): Inspect the buffer and write
+ the index.
+ (sub_common): In multibyte environment, skip multibyte characters
+ when we check special characters.
+ * awk.h (index_multibyte_buffer): Add prototype.
+ * eval.c (cmp_nodes): In multibyte environment, compare per character.
+ * field.c (re_parse_field): In multibyte environment, avoid to
+ call research() on invalid boundary.
+ (sc_parse_field): In multibyte environment, avoid to compare on
+ invalid boundary.
+ (null_parse_field): In multibyte environment, split per
+ character, not per byte.
+ * io.c (get_a_record): In multibyte environment, avoid to compare
+ on invalid boundary.
+
+Wed Apr 25 08:29:47 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * awk.h (strncasecmpmbs): Add prototype.
+ * builtin.c (strncasecmpmbs): New function like strncasecmp but for
+ multibyte strings.
+ (do_index): In multibyte environment, compare per character.
+ * builtin.c (do_tolower): In multibyte environment, user towlower
+ instead of TOLOWER.
+ (do_toupper): In multibyte environment, user towupper instead
+ of TOUPPER.
+
+Tue Apr 24 10:38:06 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ In multibyte environments, handle multibyte characters as single
+ characters in bracket expressions.
+
+ * dfa.h (mb_char_classes): New structure.
+ (mbcsets): New variable.
+ (nmbcsets): New variable.
+ (mbcsets_alloc): New variable.
+ * dfa.c (prtok): Handle MBCSET.
+ (fetch_wc): New function to fetch a wide character.
+ (parse_bracket_exp_mb): New function to handle multibyte character
+ in lex().
+ (lex): Invoke parse_bracket_exp_mb() for multibyte bracket expression.
+ (atom): Handle MBCSET.
+ (epsclosure): Likewise.
+ (dfaanalyze): Likewise.
+ (dfastate): Likewise.
+ (match_mb_charset): New function to judge whether a bracket match
+ with a multibyte character.
+ (check_matching_with_multibyte_ops): Handle MBCSET.
+ (dfainit): Initialize new variables.
+ (dfafree): Free new variables.
+
+Mon Apr 23 01:40:09 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ Implement the mechanism to match with multibyte characters,
+ and use it for `period' in multibyte environments.
+
+ * dfa.h (mbps): New variable.
+ * dfa.c (prtok): Handle ANYCHAR.
+ (lex): Use ANYCHAR for `period' in multibyte environments.
+ (atom): Handle ANYCHAR.
+ (state_index): Initialize mbps in multibyte environments.
+ (epsclosure): Handle ANYCHAR.
+ (dfaanalyze): Handle ANYCHAR.
+ (dfastate): Handle ANYCHAR.
+ (realloc_trans_if_necessary): New function.
+ (transit_state_singlebyte): New function.
+ (match_anychar): New function.
+ (check_matching_with_multibyte_ops): New function.
+ (transit_state_consume_1char): New function.
+ (transit_state): New function.
+ (dfaexec): Invoke transit_state if expression can match with
+ a multibyte character in multibyte environments.
+ (dfamust): Handle ANYCHAR.
+
+Fri Apr 20 11:31:24 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ Avoid incorrect state transition in multibyte environments.
+
+ * dfa.h (nmultibyte_prop): New variable.
+ (multibyte_prop): New variable.
+ * dfa.c (addtok): Set inputwcs.
+ (dfastate): Avoid incorrect state transition in multibyte
+ environments.
+ (dfaexec): Likewise.
+ (dfainit): Init multibyte_prop.
+ (dfafree): Free multibyte_prop.
+ (inputwcs): New variable.
+ (mblen_buf): New variable contains the amount of remain byte
+ of corresponding multibyte character in the input string.
+
+Fri Apr 20 06:28:59 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ Handle a multibyte character followed by '*', '+', and '{n,m}'
+ correctly.
+
+ * dfa.c (update_mb_len_index): New function.
+ Support for multibyte string.
+ (FETCH): Call update_mb_len_index.
+ (lex): Check cur_mb_index not to misunderstand multibyte characters.
+ (atom): Make a tree from a multibyte character.
+ (dfaparse): Initialize new variables.
+ (mbs): New variable.
+ (cur_mb_len): New variable.
+ (cur_mb_index): New variable.
+
+Thu Apr 19 09:32:47 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * awkgram.y (cur_mbstate): New varialble containing means current
+ shift state.
+ (cur_char_ring): New varialbe reffering the buffer which contains
+ last some character from the buffer.
+ (cur_ring_idx): New variable containing the current index on
+ cur_char_ring.
+ (nextc_is_1stbyte): New macro, means that last nextc() return a
+ singlebyte character or 1st byte of a multibyte character.
+ (nextc): Check the buffer and update cur_ring_char in multibyte
+ environments.
+ (pushback): Adjust cur_ring_idx in multibyte environments.
+ (yylex): Add check whether nextc() returned 1st-byte in multibyte
+ environments.
+ * re.c (make_regexp): In multibyte environment, skip multibyte
+ characters when we check special characters.
+
+Wed Apr 18 07:58:20 2001 Isamu Hasegawa <isamu@yamato.ibm.com>
+
+ * awk.h (MBS_SUPPORT): New flag, means supporting multibyte strings.
+ * configure.in : Add check for wchar.h, wctype.h, mbrtowc, and mbrlen.
+
+Wed Jan 16 16:32:40 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_strtonum): Simplified. Check first if the
+ value matches a non-decimal number, and if so convert it.
+ Otherwise do a regular force_number.
+
+Mon Jan 7 22:12:15 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (statement): Moved delete, print, and expressions into
+ new non-terminal `simple_stmt'. Allow opt_simple_stmt in the
+ first and third part of a for loop, per latest POSIX, which documents
+ an otherwise undocumented historical oddity in Unix awk. This has
+ the pleasant side effect of making line numbers more accurate for
+ messages involving delete statements.
+ (opt_simple_stmt, simple_stmt): New non-terminals.
+
+ Based on bug report from drj@pobox.com.
+
+Mon Dec 24 14:04:02 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Changes for VMS with new strftime:
+ (AC_HEADER_TIME): Added.
+ (AC_CHECK_HEADERS): Check for sys/time.h.
+ (TIME_T_IN_SYS_TYPES_H): Add header check.
+ * acconfig.h (TIME_T_IN_SYS_TYPES_H): Added.
+
+Wed Dec 19 16:01:58 2001 Peter J. Farley III <pjfarley@dorsai.org>
+
+ * configure.in: Add MS-DOS to getpgrp special case.
+ * dfa.c, getopt.c, regex.c: Fix code to work with --disable-nls.
+
+Wed Dec 19 15:59:25 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * profile.c (init_profiling_signals) [__DJGPP__]: Use SIGINT
+ instead of SIGHUP and SIGQUIT instead of SIGUSR1.
+
+Tue Dec 18 20:56:07 2001 Andreas Buening <andreas.buening@nexgo.de>
+
+ More OS/2 stuff.
+
+ * awk.h (O_BINARY): Don't redefine for EMX.
+ * io.c (gawk_popen): Add __EMX__ in case compiling DOS executable.
+ * configure.in: Add OS/2 to case for manual GETPGRP_VOID.
+
+Tue Dec 4 17:54:30 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ New configure time option, --with-whiny-user-strftime.
+
+ * configure.in (AC_ARG_WITH): Add appropriate code for autoconf.
+ * accondig.h (USE_INCLUDED_STRFTIME): Add #undef for it.
+ * custom.h (USE_INCLUDED_STRFTIME): Set things up write.
+
+Tue Dec 4 16:44:07 2001 Andreas Buening <andreas.buening@nexgo.de>
+
+ Mongo patch for updated OS/2 support.
+
+ * awk.h (TOUPPER, TOLOWER): Define only if not already defined.
+ * awkgram.y (extproc feature): Add ifdef for __EMX__.
+ * gawkmisc.c (__EMX__): Include pc/gawkmisc.c directly.
+ * io.c (__EMX__): Added for a number of places in addition to OS2 def.
+ (two_way_open): Added OS/2 specific code added that uses spawn.
+ (gawk_popen): Ditto.
+
+Mon Dec 3 14:07:56 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fix use of getgroups to use dynamic memory, solves
+ problem of systems where NGROUPS_MAX lies.
+
+ * awk.h (groupset, ngroups): New extern variables.
+ * configure.in (AC_CHECK_FUNCS): Add getgroups to list.
+ * io.c (user_open): Use global ngroups and groupset variables,
+ don't call getgroups here.
+ * main.c (init_groupset): New function to init global
+ vars using malloc. Declare it at top.
+ (main): Call init_groupset().
+ (load_procinfo): Use global ngroups and groupset variables.
+
+Sun Nov 18 11:56:01 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * random.c (srandomdev): ifdef-out. Lots of compile time
+ problems on multiple platforms, and gawk doesn't even
+ use the routine. The heck with fine-grained solutions.
+
+Wed Nov 14 16:12:40 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * builtin.c (bchunk_one): Use `ofre < 1' instead of `ofre <= 0'
+ to avoid compiler complaint about suspicious comparison for
+ unsigned variable. (`ofre == 0' ought to suffice...)
+
+Tue Nov 13 17:27:52 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yyerror): Fix the code to behave like it
+ used to. Keep "no arbitrary limits" by mallocing the
+ buffer and freeing it.
+
+Wed Nov 7 16:46:20 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (yyerror): Remove dependency upon buf[] to
+ hold prepended space and `^' pointer. Avoids core dumps
+ for long source lines.
+
+Sat Nov 3 22:27:21 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * m4/strtod.m4: Add missing `#endif'. Oops.
+
+Mon Oct 29 14:53:57 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Add semicolons in calls to count_args().
+ Apparently bisoon adds a semicolon to each body
+ automatically and byacc doesn't.
+
+Sun Oct 28 16:53:18 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Fix off-by-one error in "ran out
+ for this one" diagnostic. Also fix lint check for too many
+ arguments vs. count in format string.
+
+Wed Oct 10 11:01:47 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fixvers: Check that files exist before doing `cmp', in
+ case they're in a source code system and aren't there.
+ Fix from Grant Erickson (gerickson@brocade.com).
+
+Thu Oct 4 18:20:36 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_tree_eval): For comparison, dupnode() results of
+ evaluation so that we can hang on to them and avoid memory
+ corruption. Change calls to free_temp() to unref().
+
+Tue Sep 25 15:19:53 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (iop_open): Only call os_close_on_exec() for
+ fd > fileno(stderr).
+
+2001-09-07 Paul Eggert <eggert@twinsun.com>
+
+ * io.c (redirect): When deciding to use the fdopen bug hack,
+ use "__sun" rather than "solaris". No compilers predefine
+ "solaris", but both GCC and Sun C predefine "__sun".
+
+Thu Aug 30 15:17:12 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (copyleft): Use a printf %d for last year of update
+ to avoid translation strings changing when the file
+ is updated from now on. Suggestion from Ulrich Drepper.
+
+Thu Aug 23 14:01:14 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (unary minus production): Add check that value
+ isn't a string. Based on bug report from drj@pobox.com.
+ * profile.c (tree_eval): For node_val, only test NUMBER
+ to see if value is numeric, not NUM|NUMBER.
+
+Thu Aug 16 12:21:28 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in (ALL_LINGUAS): Added `fr' and `tr'.
+ * po/fr.po, po/tr.fo: New files.
+
+2001-08-13 Paul Eggert <eggert@twinsun.com>
+
+ This patch fixes a bug that causes gawk to rewind standard
+ input incorrectly. It also removes all instances of fseek,
+ from the gawk source proper, which should make gawk a bit
+ more portable.
+
+ (The original patch removed off_t & lseek too, but I need
+ that for something else. ADR.)
+
+ * posix/gawkmisc.c (optimal_bufsize):
+ Don't use lseek on the input, because that might change
+ its state. Instead, just check whether it is a regular file.
+ This obviates the need to invoke isatty.
+ (Also, fix a spelling error in the first line of the source.)
+ * pc/gawkmisc.pc, unsupported/atari/gawkmisc.atr: Likewise.
+
+ * awk.h (S_ISREG): Move this macro here ...
+ * io.c (S_ISREG): from here.
+
+ * protos.h (fseek): Remove prototype; no longer used.
+
+Fri Aug 3 13:38:54 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Change assert test on type to real test
+ to protect against FS[1] = "x" kinds of things. It'd be better
+ to do this in the grammar, but this is easier and just as
+ effective.
+
+ Undid BECAMEARRAY changes of 25 June 2001 in favor of correct code:
+ * eval.c (pop_fcall): Change test and comment for freeing n->vname.
+ (flags2str): Removed BECAMEARRAY entry.
+ * awk.h (BECAMEARRAY): Removed define.
+ * array.c (assoc_lookup): Removed setting of BECAMEARRAY flag.
+
+Mon Jul 23 17:33:13 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Handle case where RS = "" and input file
+ is only newlines. See test/onlynl. Bug report by
+ Michel Jouvin <jouvin@lal.in2p3.fr>.
+
+Wed Jul 4 18:34:19 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (assign_val): Don't allow negative values for NF.
+ * field.c (set_NF): Robustify field-freeing code to make sure
+ values are always positive.
+
+Sun Jul 1 19:15:01 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_index): If second string is "", return 1.
+
+Mon Jun 25 19:34:24 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ Further rationalization of treatment of dynamic regexes,
+ so that profiling code works correctly.
+
+ * awk.h (NODETYPE): New type, Node_dynregex.
+ * awkgram.y (mk_rexp): Use Node_dynregex.
+ * eval.c (nodetypes): Add Node_dynregex.
+ (r_tree_eval): Add Node_dynregex to case for match_op().
+ * profile.c (tree_eval): Add Node_dynregex to case for pp_match_op().
+ (pp_match_op): Handle Node_dynregex, simplify cases for ~ and !~.
+ * re.c (re_update): Add assertion that type is Node_regex when flags
+ indicate CONST.
+
+ New lint warning.
+
+ * awkgram.y (yylex): Added lint warning that constant with leading
+ zero is treated as octal or hex.
+
+ Generalized code for those who are Strong In The Ways of the Source.
+
+ * awk.h: New boolean variable.
+ * main.c (main): Set it.
+ * eval.c (interpret): For arrays, check it. Remove variable 'first',
+ not needed anymore.
+ * profile.c (pp_string_fp): Enable printing of non-ASCII characters
+ verbatim if variable set.
+
+ Fix memory corruption on SCO for array vars as params changed globally.
+
+ * awk.h (BECAMEARRAY): New flag.
+ * array.c (assoc_lookup): Set the flag as appropriate.
+ * eval.c (flags2str): Add the flag.
+ (pop_fcall): Check the flag, don't free memory if set.
+
+Wed Jun 13 18:07:06 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (fmt_index): Actually call erealloc() to grow fmt_list
+ if that's really necessary. Bug report from David Jones,
+ djones@zoonami.com.
+
+Sun Jun 10 14:24:48 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pp_match_op): Rationalized the code.
+
+Thu Jun 7 11:54:36 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (O_BINARY): Don't define if already defined
+ (as is true for cygwin/gcc --- oops).
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+Wed Apr 25 11:44:07 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (AM_MAKEFLAGS): Add definition per advice from
+ Nelson Beebe.
+
+Tue Apr 24 14:28:00 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * io.c (devopen): Patch from Jeurgen to robustify pulling
+ out hostname, port numbers, etc, to avoid any buffer overrun
+ problems.
+
+Mon Apr 23 10:26:38 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * awkgram.y: Fix grammar so that `print ... |& ".." |& getline'
+ dies with a parse-time error message.
+
+Sun Apr 22 16:46:48 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Fix from Juergen in recursive call.
+
+Thu Apr 19 18:39:20 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * awk.h: Really fix logic around include of <sys/types.h>.
+
+ * awk.h (callresult): New name for `result' macro.
+ * eval.c (r_get_lhs, case Node_builtin): Use it.
+
+Thu Apr 19 16:31:09 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * io.c: Move code around to allow compilation with DEC C.
+
+Thu Apr 19 16:21:56 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * random.h: Move decl of random() here.
+ * random.c: Remove decl of random().
+
+Mon Apr 9 11:41:58 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c (dfainit): Initialize more members in the structure,
+ based on bug report in bug.gnu.utils by aaronl@vitelus.com
+ (Aaron Lehmann).
+ * awk.h: Fix logic around include of <sys/types.h>.
+
+Thu Apr 5 20:12:05 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * dfa.c: For VMS, #include <stddef.h> instead of <sys/types.h>.
+ * missing_d/mktime.c: Likewise.
+
+ * random.c: Reorder include directives to get gawk config info
+ from random.h sooner.
+ [fcntl.h]: Guard #include with HAVE_FCNTL_H test.
+ [unistd.h]: Guard #include with HAVE_UNISTD_H test.
+
+ * random.c (srandomdev): Skip /dev/urandom usage if O_RDONLY
+ is not defined.
+
+Tue Mar 20 11:07:11 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (function_body): Add opt_nls to end of production.
+
+Tue Mar 20 09:30:32 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * awk.h (BROKEN_STRNCASECMP): Add decl of strcasecmp.
+ * io.c (two_way_open): Add `return FALSE;' for fussy compilers.
+
+Sun Mar 18 15:10:56 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (gawk_pclose): Set the exit value for close correctly
+ if the pipe died with a signal.
+
+Wed Mar 7 11:28:52 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (get_a_record): Correctly handle the case of a leading
+ single newline at the front of the file when RS = "".
+
+2001-02-26 Paul Eggert <eggert@twinsun.com>
+
+ * COPYING: Incorporate latest version from FSF, which fixes a Y2k bug.
+
+ * builtin.c (do_mktime): Allow the user to specify the
+ tm_isdst member as an optional trailing integer, and to
+ specify "out-of-range" members. Check for overflow when
+ subtracting 1 from month or 1900 from year. Allow years just
+ past INT_MAX, as they work on some hosts when INT_MAX - 1900
+ is representable as an int.
+
+ * doc/gawk.1, doc/gawk.texi: Document the above changes.
+ Also, document that the origin-zero Gregorian calendar is used.
+ Fix confusing wording about "midnight" by replacing it with 00:00
+ ("midnight" is also 24:00, the end of the day).
+ Mention the typical range for time stamps.
+ Do not assume that years are nonnegative and are less than 10,000.
+ Suggest TZ=UTC0 instead of TZ=GMT0, as that's how recent versions
+ of GNU date behave.
+ GMT is not always the time of day in Greenwich these days.
+ Fix typos: "Emporer/Era", "1980's", "1970's".
+
+ * m4/largefile.m4: Synchronized with latest version.
+
+Tue Feb 27 12:10:11 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pp_in_array): Change test to tree->type == Node_expression_list.
+
+Wed Feb 7 14:46:50 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (LEX_FOR): Allow newline after `;' in for loops.
+ Per bug report from Brian Kernighan, bwk@research.bell-labs.com.
+
+Tue Feb 6 18:35:27 2001 Martin C. Brown <mc@whoever.com>
+
+ * io.c (socket_open): Conditionalize various options based on
+ ifdef. Needed for BeOS port.
+
+Tue Feb 6 18:17:13 2001 Michal Jaegermann <michal@ellpspace.math.ualberta.ca>
+
+ * regex.c (re_match_2_internal): Case maybe_pop_jump, for
+ charset and not_charset: Change cast from (unsigned char)
+ to (unsigned). Catches last 8 chars with high bit set
+ if backtracking. See test/rebt8b1.awk, test/rebt8b2.awk.
+
+Tue Feb 6 11:20:21 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ Have `for (iggy in foo)' save the elements and loop over them.
+ Make sorted for loops a dynamic test instead of a compile time test.
+ Still requires being Strong In The Ways Of The Source.
+
+ * awk.h: (struct search): Removed.
+ (assoc_scan, assoc_next): Removed declarations.
+ * array.c (assoc_scan, assoc_next): Removed functions.
+ * eval.c (interpret): Remove Node_K_array_sorted_for. Change code
+ at Node_K_arrayfor.
+ (nodetypes): Remove Node_K_array_sorted_for.
+ * configure.in: Removed array sorting test.
+ * awkgram.y: Removed sorted_in keyword and associated code.
+
+Sun Feb 4 14:57:49 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (interpret): Use tree->rnode->exec_count to hold count of
+ times if was true.
+ profile.c (interpret): Ditto.
+ * main.c (pre_assign): Gross hack. malloc fresh copy of assign so can
+ clear the '=', otherwise screws up profiling print out.
+
+Sun Jan 28 16:16:02 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ Per request from Nelson Beebe, SIGHUP to pgawk dumps profile
+ and function call stack and exits, SIGUSR1 dumps and continues
+ running.
+
+ * eval.c (dump_fcall_stack): New function, dumps awk function call
+ stack.
+ * awk.h (dump_fcall_stack): Add declaration.
+ (init_profiling_signals): Ditto.
+ * main.c (main): Call init_profiling_signals.
+ * profile.c (init_profiling_signals, dump_and_exit, just_dump): New
+ functions.
+
+Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * io.c (gawk_popen): Restore the mode of stdin before running the
+ child process and switch it back if BINMODE is in effect after the
+ child returns.
+ (redirect): Restore the mode of stdin before running the child
+ process.
+ (close_redir): Switch mode of stdin back to binary if BINMODE is
+ in effect, after the child returns.
+
+ * builtin.c (do_system): Restore the mode of stdin before running
+ the child process and switch it back if BINMODE is in effect after
+ the child returns.
+
+ * awk.h (os_restore_mode): Add prototype.
+
+Thu Jan 18 14:03:06 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h, README_d/README.ultrix: Fixes for Ultrix
+ from Juergen Kahrs.
+
+Wed Jan 17 11:03:40 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * io.c (redirect) [F_GETFL && O_APPEND]: Use binmode in the call
+ to fdopen.
+
+Mon Jan 15 16:29:52 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (prec_level): Made Node_K_getline higher than <
+ but lower than others. Allows use of getline with redirection
+ inside an if.
+
+Wed Jan 10 15:35:06 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Rationalized string assignment.
+
+Sun Jan 7 15:26:16 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getopt.h: Removed names in prototypes for getopt_long
+ and getopt_long_only, fixes problems on MINGW32.
+
+Thu Jan 4 10:13:46 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Add check for mcheck.h
+ * main.c: Include mcheck.h if have it.
+ (main): If TIDYMEM turned on in environment, also call mtrace().
+
+Wed Jan 3 16:41:33 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fixed minor memory leaks.
+ * re.c (re_update): When IGNORECASE changed, unref(t->re_text).
+ * eval.c (pop_fcall): Fix the logic to correctly free the vname
+ when copying array args back to their underlying source.
+
+ Fixed massive memory leaks.
+ * node.c (dupnode): If PERM is set, do nothing.
+ (unref): Fix logic. Always turn off TEMP. Check just for MALLOC
+ when incrementing the stref.
+ * array.c (assoc_lookup): Turn off PERM also when saving subscript.
+ * builtin.c (sub_common): Turn off PERM also when making private copy
+ of string.
+
+ Add a minor memory cleanup facility (undocumented):
+ * awk.h (do_tidy_mem, release_all_vars): Add declarations.
+ * main.c (do_tidy_mem): Add declaration.
+ (main): If $TIDYMEM exists, do_tidy_mem is true, and call mtrace().
+ * awkgram.y (release_all_vars): New function.
+
+Sun Dec 31 10:47:37 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (in_end_rule): Renamed `parsing_end_rule' to avoid
+ conflict with global var of same name.
+
+Sun Dec 24 10:36:54 2000 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * awkgram.y (snode): Reword the error message about the number of
+ arguments for a builtin, so as not to use the English `s' as a
+ plural suffix.
+
+Tue Dec 12 08:38:03 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ext.c (do_ext): ifdef out use of `dummy'. Duh.
+ * regex.c (re_error_msgid): Revert to array of `char *' so that can
+ compile on K&R compilers. Fix all uses appropriately.
+ (re_error_msgid_idx): Removed.
+
+Fri Dec 8 11:47:26 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ext.c (dummy): Make gcc specific via ifdef.
+ * builtin.c (do_dcgettext): Make conditional compilation smarter.
+ * msg.c (warning, error, r_fatal): Finish switching back to
+ multi-version function header.
+
+Wed Dec 6 13:28:58 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * random.h: Include <config.h> to get ssize_t definition.
+ * awkgram.y (yyerror): Restore multi-version function header,
+ it seems that what ansi2knr produces doesn't quite do the
+ job on old compilers.
+ msg.c (msg): Ditto.
+
+Tue Dec 5 15:05:35 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in (AC_C_INLINE): Added macro call.
+ * Makefile.am (LN): Define it for install hooks.
+
+Sun Dec 3 17:28:53 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (os_setbinmode): Declare new function.
+ (setmode): Remove definition: conflicts with MacOS X.
+ * main.c (main): Change call of setmode to os_setbindmode.
+
+ * builtin.c (do_dcgettext): Improve ifdef for code, fixes MacOS X.
+ * custom.h (__APPLE__): Force definition of HAVE_MKTIME, won't
+ link otherwise. Harumph.
+
+Sun Nov 26 11:58:52 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_dcgettext, do_bindtextdomain): Add calls to
+ free_temp the various arguments. Sigh.
+ * io.c (yylex): Nuked bstart variable, put all uses of mend variable
+ into TANDEM ifdef.
+ * main.c (load_environ): Removed cp variable, value never used.
+ * random.c: Remvoed uses of `inline' keyword.
+ * Makefile.am (install-exec-hook, uninstall-local): New targets.
+ Adds creation of gawk-X.Y.Z and awk links, as in 3.0.x.
+ * configure.in (GAWK_AC_TYPE_SSIZE_T): Added.
+ m4/ssize_t.m4: New file.
+
+Wed Nov 22 14:47:18 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ After consultation with Brian Kernighan and Michael Brennan,
+ nuked the abort keyword.
+
+ * awk.h (Node_K_abort): Removed.
+ * eval.c (aborting): Removed decl.
+ (interpret): Removed Node_K_abort case.
+ * io.c (do_input): Removed checks for aborting.
+ * main.c (aborting): Removed.
+ (main): Removed checks for aborting.
+ * profile.c (pprint): Removed Node_K_abort case.
+ * awk.y (LEX_ABORT): All stuff removed.
+
+Wed Nov 22 10:45:57 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ext.c (dummy): Move inside #ifdef DYNAMIC. Helps on
+ PCs and other platforms that don't do dynamic loading.
+ * awk.h (RED_TCP): New flag, means use shutdown.
+ io.c (redflags2str): Add RED_TCP.
+ (SHUT_RD, SHUT_WR, SHUT_RDWR): Add conditional defines.
+ (redirect): Add RED_TCP to tflag if appropriate. Add more
+ #ifdef HAVE_SOCKETS as needed.
+ (close_redir): If RED_TCP set, shutdown(2) on each end of the socket.
+
+Tue Nov 21 16:25:41 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y: for (iggy in foo) loops: Add test that index
+ in delete statement is a simple variable.
+
+Tue Nov 14 16:11:39 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Add appropriate conditional versions of the gettext
+ functions if we don't have <libintl.h> or if ENABLE_NLS
+ is not defined or zero.
+ * configure.in: Add check for libintl.h header.
+
+ From Scott Deifik for PCs.
+ * awk.h (lintwarn): Call set_loc unconditionally, makes
+ compilation work on PCs.
+ * builtin.c (do_dcgettext): Compile out cat_tab and code
+ if not ENABLE_NLS.
+ * ext.c: For MSC, no long long variable.
+ * random.c: Use clock() instead of gettimeofday().
+ * builtin.c: Fixed prototypes for new random functions (ADR).
+
+Sun Nov 12 17:45:44 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (parse_next_arg): Fix call to >= num_args so
+ running out of args check is correct, instead of core dumping.
+ (format_tree): Save and restore `the_args' and `args_size'
+ if a nested call is in progress, see explanatory comment.
+ See also tests/addcomma.
+ * Makefile.am: Fix things so that gawk/pgawk built first,
+ even if `make check' called before make. Add some
+ commentary.
+
+Wed Nov 8 14:39:20 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Only add -rdynamic for Linux.
+ * dfa.h, dfa.c: Upgraded to versions in grep 2.4.2.
+
+Tue Nov 7 18:17:17 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * All: Switched to ANSI function headers and added
+ `ansi2knr' automake option. Really cool.
+
+Tue Nov 7 16:57:49 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): Check for O_APPEND in flags when doing
+ fdopen() of /dev/fd/N. Thanks to bug report from
+ "John H. DuBois III" <spcecdt@armory.com>.
+
+Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (os_is_setuid): Declare function.
+ * main.c (main): Call it if do_lint and warn if true.
+ * awkgram.y (tokentab):
+ - Made sure all extensions are actually marked as such. Ouch.
+ - Changed "sort" to "asort". Potential to break too much old code.
+ * getopt.h, getopt.c, getopt1.c: Replaced with current versions
+ from glibc CVS archive.
+
+Mon Nov 6 18:14:33 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * random.c: Replaced with recent version from FreeBSD.
+
+Mon Nov 6 15:37:12 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ Major simplification of automake machinery.
+
+ * configure.in:
+ - INSTALL is forced only if not provided in environment
+ - lots of Makefile.in files removed since move to automake 1.4a
+ * Makefile.am, */Makefile.am: Moved directories that don't need
+ the automake machinery into EXTRA_DIST as appropriate and
+ removed the Makefile{,.am,.in} files as needed.
+ * eval_p.c, profile_p.c: New files to make it easier with automake
+ to compile pgawk.
+
+Tue Oct 24 12:20:18 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (valinfo, var_comp, dump_vars): New functions to dump
+ the list of global variables.
+ * awk.h: Declare dump_vars.
+ * main.c (optab): New option "dump-variables".
+ (main): Code to handle it, set the output file and then call
+ dump_vars() at the end.
+ (usage): New option added to usage message.
+
+Sat Oct 21 22:59:59 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (parms_shadow): For a function, check if any
+ parameters shadow global variables and print a warning.
+ (shadow_funcs): Go through all functions and call parms_shadow().
+ (isnoeffect, isassignable): Add Node_LINT and NODE_BINMODE.
+ * main.c (main): If do_lint, call shadow_funcs().
+ * awk.h: Add declaration of shadow_funcs().
+ * configure.in: Added m4/Makefile and awklib/eg/network/Makefile
+ to list of generated makefiles.
+
+Tue Oct 17 10:47:35 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Reverted change that did dupnode of
+ array indices. Creates significant problems if index is
+ numeric value and CONVFMT changes. Added fix to set
+ bucket->ahname->stfmt to -1 so that force_string never recalculates
+ the string value, and also turned off NUM and turned on STR.
+ See test/arynasty.awk.
+
+Mon Oct 16 12:21:26 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * All: Cleaned up various lint warnings for consistent phrasing.
+ * awk.y (in_end_rule): New variable for warning about unredirected
+ getline. It's ok in a BEGIN, but not in an END.
+
+Sun Oct 15 14:14:05 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_FS): Add lint warning for FS = "".
+ (do_split): Ditto for 3rd arg = "".
+
+Fri Oct 13 09:17:04 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (close_redir): Clear rp->fp on all closes. Remove
+ rp from list if either closing both ends or both ends
+ have been closed separately. Add exitwarn message for
+ co-process.
+ (flush_io): Add warning message if fflush of co-process
+ fails. Rationalize return value to either 0 or -1.
+ * builtin.c (do_gensub): 3rd arg of zero generates a
+ warning.
+ (do_fflush): Rationalize return value: -1 for unopen or read-only
+ redirection, status of fflush otherwise.
+
+Wed Oct 11 22:11:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y (for loop): Check that there is a body as
+ part of the `is it a delete statement' check.
+
+Thu Oct 5 11:56:42 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h, awkgram.y, configure.in, eval.c: Enabled
+ `for (i in_sorted array)' loops for those who
+ are Strong In The Way Of The Source. So there.
+
+Mon Oct 2 10:09:32 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (do_close): Make close(x) for non-open x return -1
+ and update ERRNO. close(FILENAME) no longer does anything
+ magic; this is all for better consistency with other awks
+ and is more logical, anyway.
+
+Thu Sep 28 17:27:16 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (close_one): Added a lint warning if it becomes
+ necessary to start multiplexing fd's, per ancient suggestion
+ from Scott Deifik, <scottd@amgen.com>.
+
+Tue Sep 26 14:41:41 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c: Move enum for redirection placement to top
+ of file, and make the value a parameter to pp_redir.
+ Fix all the calls. This gets `|&' right everywhere.
+
+Sun Sep 24 16:38:04 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (freenode): Set the flags straight to UNINITIALIZED.
+ * node.c (unref): Fix test for MALLOC|TEMP to test the
+ actual flags, not zero.
+ * builtin.c (format_tree): ala print and concat, dupnode
+ the temp nodes from tree_evaling the arguments. See
+ test/nasty2.awk.
+
+Mon Sep 18 10:16:58 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (snode): Make match 3rd arg and close 2nd arg fatal
+ errors if --tradtional.
+
+Thu Sep 14 12:22:42 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (update_ERRNO): Call gettext on result of strerror.
+ i18n rules.
+
+Wed Sep 13 14:56:11 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_tree_eval): Case for Node_concat. Dupnode the
+ strings ala do_print to get more consistent results.
+ Compare gawk 3.0.6 to nawk/mawk on test/nasty.awk.
+ Thanks to Andrew Sumner (andrewsumner@yahoo.com) for
+ pointing this one out.
+
+Wed Sep 13 10:06:47 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (two_way_close_type): New enumerated type.
+ (close_redir): New third param of type two_way_close_type.
+ Add smarts to two-way case for different close types.
+ Only remove it from the redir list if closing is for both ends.
+ (gawk_pclose): Check that rp->iop != NULL before closing,
+ all three versions.
+ * awkgram.y (tokentab): Allow 2nd argument to close.
+ (snode): Add lint warning.
+
+Sun Sep 10 14:16:10 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_FIELDWIDTHS): Generate a fatal error upon
+ encountering a negative width.
+
+Sun Sep 10 10:37:35 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkgram.y (snode): If first argument to dcgettext is a
+ string constant and --gen-po, dump the string constant to
+ the .po file too.
+ * main.c (nostalgia): Add call to fflush(stderr).
+ * eval.c (r_tree_eval): Add entries for Node_LINT and for
+ NODE_TEXTDOMAIN.
+
+Thu Sep 7 10:46:20 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_dcgettext): Per suggestion from Ulrich Drepper,
+ make the awk interface:
+
+ str = dcgettext(string [, domain [, category]])
+
+Wed Sep 6 16:28:12 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ Bring gettext features out to the awk level!
+
+ * awk.h: Add declarations of new functions `do_dcgettext'
+ `do_bindtextdomain', `set_TEXTDOMAIN' and variables
+ `TEXTDOMAIN', `TEXTDOMAIN_node'. New NODETYPE enum
+ `Node_TEXTDOMAIN'.
+ * eval.c (nodetypes): Add Node_TEXTDOMAIN at end.
+ (set_TEXTDOMAIN): New function.
+ (r_get_lhs): Add case for Node_TEXTDOMAIN.
+ * main.c (varinit): Add entry for TEXTDOMAIN.
+ * node.c (format_val): If INTLSTR use dcgettext of string
+ and TEXTDOMAIN.
+ * awkgram.y (tokentab): Add entries for "dcgettext" and
+ "bindtextdomain".
+ * builtin.c (do_dcgettext, do_bindtextdomain): New functions.
+
+Tue Sep 5 17:01:34 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * profile.c (pp_string_fp): Use lower case versions of
+ isascii and isprint to avoid printing high-bit-set
+ characters. Make it smarter to break strings at 70
+ chars or after embedded newline, for --gen-po.
+ Fix the calls to it everywhere for new boolean option
+ to yes/no break lines.
+ * m4/strtod.m4: New file, defines GAWK_AC_FUNC_STRTOD_C89.
+ * configure.in: GAWK_AC_FUNC_STRTOD_C89 call added
+ * acinclude.m4: Include strtod.m4.
+ * acconfig.h: Add entry for STRTOD_NOT_C89.
+ Remove entries for BITOPS and NON_DEC_DATA.
+ * missing/missing.c: Add check for STRTOD_NOT_C89, use ours
+ if set.
+ * missing/strtod.c: Make smarter for input like 0x345.
+ * awk.h: [STRTOD_NOT_C89]: Define strtod gawk_strtod to get
+ our version. Avoids linker weirdness.
+
+Mon Sep 4 09:16:43 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_record): Fix from Utz-Uwe Haus
+ <haus@saturn.Math.Uni-Magdeburg.DE> to make sure there's
+ always enough room in the record.
+ * builtin.c (nondec2awknum): Fix octal conversions to exit
+ when hitting a non-digit, and not go to decimal. Make
+ check for non-octal better. Based on bug report from
+ Morris_Lee@tvratings.com.
+
+Sun Sep 3 13:52:11 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): Allow positional parameters for
+ %*.* kinds of things.
+
+ Made octal/hex constants and strtonum on by default. Made
+ --enable-non-decimal-data a runtime switch `--non-decimal-data'.
+
+ * configure.in: Removed AC_ARG_ENABLE for --enable-bitops and
+ --enable-non-decimal-data.
+ In .developing check, remove the AC_DEFINEs.
+ * awk.h: Decls for bitwise functions now there by default.
+ Add decl of `do_non_decimal_data'.
+ * main.c (do_non_decimal_data): New variable
+ (optlist): Add new entry for `--non-decimal-data'.
+ (main): Turn off `do_non_decimal_data' if `do_traditional'.
+ (usage): Add the new option.
+ * node.c (r_force_number): Make check for non-decimal data a
+ runtime check based on do_non_decimal_data.
+ * awkgram.y (yylex): Make non-decimal constants a runtime check.
+ * builtin.c: Remove the ifdefs around the bit functions and
+ nondec2awknum.
+
+Tue Aug 29 18:45:56 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Go back to ARRAYDEBUG if .developing set.
+ * awkgram.y: Use ARRAYDEBUG for adump(), use multiple tests
+ for stopme().
+
+Mon Aug 28 17:09:06 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (do_split): Add check for first arg is null string,
+ if so, skip the work and return zero.
+
+Mon Aug 14 23:01:55 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ Add %COUNT$... handling to printf.
+
+ * awk.h (printf_count): New define in NODE structure.
+ (format_tree): Added decl.
+ * awkgram.y (count_args): New function to set printf_count in
+ a node.
+ [print productions]: Call the function.
+ * (snode): For do_sprintf, call count_args, set the count
+ in the lnode.
+ * builtin.c (format_tree): New fourth arg is argument count.
+ Add smarts to handle the `$' in a format.
+ * (do_sprintf): Use new argument to format_tree.
+ node.c (format_val): Ditto.
+
+Sun Aug 13 11:10:41 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes from Alan J. Broder (ajb@woti.com):
+ - Array third arg to match puts subtexts into the array:
+
+ * awk.y (tokentab): "match" gets third arg, and lint warning
+ * builtin.c (do_match): If third arg there, fill it with subtexts
+
+ - New builtin sort function:
+
+ * awk.h (do_sort): Declared.
+ * array.c (do_sort, dup_table, merge, merge_sort, assoc_from_list,
+ assoc_sort_inplace): New functions.
+
+ * eval.c (tree_eval): In debug code, make uninitialized var
+ a warning, not a fatal error. Breaks too many things.
+
+Wed Aug 9 10:51:41 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (func_call): Increment the exec_count on the
+ function's node; this allows printing a call count for
+ functions.
+ profile.c (pp_func): Print the count for functions.
+ * ALL: Changed DEBUG to GAWKDEBUG in all gawk files, so that
+ I don't get regex/dfa debugging. In some cases, changed
+ memory-related stuff to MEMDEBUG. Still have work to do.
+ * awk.h, node.c, profile.c: Removed exec_count_init variable;
+ code has been cleaned up to not need different values for
+ profiling/not profiling.
+
+Thu Jul 5 21:10:59 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (casetable): Removed the USE_PURE_ASCII stuff; it
+ was never documented. Latin 1 forever.
+ * main.c (main): Only call `init_profiling' after arg parsing
+ if `do_profiling' is still false. Avoids resetting `prof_fp'
+ back to stderr.
+
+2000-02-17 Akim Demaille <akim@epita.fr>
+
+ * m4: New directory.
+ * acinclude.m4: Removed, replaced by m4/*.m4.
+ * Makefile.am: Adjusted.
+ Added ACLOCAL_AMFLAGS.
+ * configure.in Adjusted.
+ Use AC_SYS_LARGEFILE not GAWK_AC_SYS_LARGEFILE, jm_FUNC_MKTIME,
+ not GAWK_FUNC_MKTIME.
+ * acconfig.h: Removed _FILE_OFFSET_BITS, _LARGEFILE_SOURCE and
+ _LARGE_FILES now templated by m4/largefile.m4.
+
+2000-02-15 Arnold Robbins <arnold@skeeve.com>
+
+ * MOVED TO AUTOMAKE AND GETTEXT.
+ Just about every file touched. Work done by Arno Peters.
+
+Sun Jan 2 14:48:23 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ First edit of the new millenium!
+ * awk.y (yylex): If lint checking, be obnoxious about gotos.
+
+Mon Oct 25 19:12:02 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h: Remove C_ALLOCA ifdef.
+ * main.c (main): Remove C_ALLOCA code.
+ * io.c (do_input): Ditto.
+
+Mon Aug 9 17:36:24 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bisonfix.sed: Unconditionally #undef YYSTACK_USE_ALLOCA.
+ * configure.in: Remove all alloca and ALLOCA related stuff.
+ * Makefile.in: Ditto.
+
+Thu Jul 29 18:32:05 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (NODE): exec_count now in #ifndef NO_PROFILING.
+ * Makefile.in: Changes to only recompile eval.c and profile.c to a
+ special version for profiling.
+ * custom.h [MSC_VER]: Turn on NO_PROFILING to omit the exec_count
+ and save space.
+ * node.c (more_nodes): Move setting of exec_count to
+ #ifndef NO_PROFILING.
+
+Thu Jul 1 12:12:05 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in (AC_PREREQ): Update to 2.13.
+ GAWK_AC_C_STRINGIZE: convert to AC_C_STRINGIZE.
+ * aclocal.m4 (GAWK_AC_C_STRINGIZE): Remove definition, now
+ part of autoconf.
+ * acconfig.h (HAVE_STRINGIZE): Ditto.
+
+Wed Apr 28 11:08:05 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Fix call to free_temp(subs) to after
+ last use of subs.
+
+Sun Apr 25 16:48:06 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect): Add lint warning when same file is used for
+ > and >>.
+
+Thu Apr 22 15:05:30 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Fix call to fatal to lintwarn instead.
+ * node.c (r_force_number): Use `0 &&' to disable warnings about
+ conversions: they're overzealous, methinks.
+
+Thu Apr 8 14:27:58 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ New features for profiling:
+
+ * awk.h (NODE): Add `exec_count' member.
+ (freenode): Clear `exec_count' upon free.
+ * awk.y (func_count): New variable, counts total number of functions.
+ (func_install): Increment func_count.
+ (struct finfo): Information for use in sorting functions when
+ pretty printing.
+ (fcompare): Compare two finfo structures.
+ (dump_funcs): Print the functions in sorted order for profiling.
+ (getfname): Return the name of a builtin function.
+ * eval.c (INCREMENT): New macro for counting execution of nodes.
+ (interpret): Call INCREMENT() appropriately.
+ * main.c (do_profiling): New flag if doing profiling.
+ `--profiling': New option added to getopt_long machinery.
+ (main): For profiled version, set do_profile and output file.
+ Call `dump_prog' and `dump_funcs' if do_profiling at end.
+ (usage): Add new argument.
+ * node.c (more_nodes, freenode): Set exec_count to zero.
+ * profile.c: New file, does pretty printing and prints counts.
+ * Makefile.in: Update to create two versions of gawk, regular
+ and `pgawk' which does profiling.
+
+Wed Mar 10 21:38:14 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (close_redir): Use update_ERRNO() instead of manually
+ doing it.
+
+Mon Dec 21 15:58:21 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Add BeOS to list of cases where we hardwire
+ GETPGRP_VOID.
+ custom.h: Remove the #define from __be_os case. Cleaner to
+ do it all in configure. Based on email from Martin C. Brown,
+ mc@whoever.com.
+
+Mon Nov 30 20:52:52 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (update_ERRNO): New function, mainly for use by
+ extension functions.
+ * awk.h: Add decl.
+
+Tue Nov 24 18:13:29 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Changes based on submission from Christos Zoulas at D.E. Shaw
+ that adds the following features:
+ - checking for use of uninitialized variables
+ - checking if a string that's not a number converts to 0
+ - ability to load a dynamic library to add built-ins
+ - VERSION variable (may or may not stay)
+ Additional change:
+ - --lint=fatal makes lint errors become fatal
+ - LINT="fatal" has the same effect, any other positive
+ value makes lint errors be just warnings
+ * Makefile.in (includedir): New variable for gawk header files
+ (ext.c, ext.o): New source and object files
+ (OTHERS, extension): New directory for macro with example extension
+ (install): Install header files
+ * acconfig.h (DYNAMIC): New macro, true if can do dynamic loading
+ * array.c (assoc_lookup): New parameter `reference' is true if we
+ want to do reference checking. Add appropriate reference checking
+ code.
+ * awk.h (UNITITIALIZED): New flag
+ (lintfunc): Function pointer for correct function to use
+ (lintwarn): New macro to produce warnings
+ (result): New macro for func call result, used in commented out
+ code in eval.c.
+ (getnode, freenode): Revised to set UNINITIALIZED.
+ (get_lhs): Third arg for reference checking, change all calls
+ -- Add appropriate decls of new/changed functions
+ * awk.y (tokentab): New builtin "extension" for adding extensions
+ (node_common): Set flags to UNINITIALIZED for Node_var.
+ * configure.in (dynamic linking): New check. Probably should
+ be a separate macro.
+ * eval.c (flag2str): Add UNINITIALIZED to the table.
+ (r_tree_eval): Add checks for UNINITIALIZED.
+ (push_args): Appropriate changes for UNINITIALIZED to work.
+ (r_get_lhs): New third argument for reference checking.
+ (set_LINT): Add code to handle setting `lintfunc' appropriately.
+ * ext.c: New file, for doing dynamic library extensions.
+ * extension/*: New directory with simple example code.
+ * main.c (VERSION_node, EXTENSION_node): New nodes for new vars.
+ (optab): Change for "lint" to allow optional argument.
+ (lintfunc): Definition.
+ (main): Add case in option processing for --lint.
+ (varinit): Add entries for VERSION and EXTENSION.
+ * node.c (r_force_number): Checks that string really is a number.
+ (morenodes): Set UNITIALIZED in the flags.
+ * re.c (all): Change `result' to `res' globally to avoid conflict
+ with new macro.
+ * GLOBAL: Change lint calls to warning() to lintwarn().
+ * GLOBAL: Change all calls to get_lhs() to have 3rd arg.
+ * GLOBAL: Change all calls to assoc_lookup() to have 3rd arg.
+
+Sun Nov 22 17:07:39 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * patchlev.h: Renamed from patchlevel.h to make life
+ easier for the PC guys.
+ (main.c): Changed to include patchlev.h.
+ (Makefile.in): Changed to ref patchlev.h where needed.
+
+Sat Nov 7 21:29:52 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_get_lhs): case Node_field_spec. Fix the lint
+ warnings for field reference of null string or non-numeric value.
+ When turned on, $0 generated a warning! Oops.
+
+Thu Nov 5 16:58:38 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (init_fds): New function to pre-open 0, 1, and 2 on
+ /dev/null if they're not open. Robustness, more or less.
+ (main): Call init_fds.
+ * io.c (str2mode): Add smarts for two-letter strings
+ such as "rw", "r+", "wr", "w+" and "a+".
+
+Mon Nov 2 16:55:46 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_*): Added lint checks for non-numeric
+ and/or non-string arguments, as appropriate. This should
+ have been done long ago.
+
+Tue Oct 20 21:56:06 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (LINT_node): New variable for LINT special var
+ (Node_LINT): New node type.
+ (set_LINT): Declare function.
+ * main.c (varinit): Add LINT variable.
+ (usage): Print an emphatic pointer to the manual for bug reports.
+ * eval.c (nodetypes): New entry for Node_LINT.
+ (r_get_lhs): Case added for Node_LINT.
+ (set_LINT): Set do_lint from LINT variable.
+
+Mon Oct 19 22:35:46 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: For GCC, add -Wall to get warnings for development.
+ * Makefile.in (awktab.c): Move sed stuff to separate script.
+ * bisonfix.sed: New script, with old fix and Solaris x86 fix.
+ * awk.h (nodetype2str): Add declaration.
+ (load_procinfo): Add declaration.
+
+Tue Oct 13 22:28:56 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes to make PROCINFO["FS"] reflect the use of FIELDWIDTHS or FS.
+
+ * eval.c (assign_val): New function that does the mechanics of
+ assignment
+ * main.c (load_procinfo): Add setting of PROCINFO["FS"] to "FS".
+ * field.c (update_PROCINFO): New function to update the array.
+ (set_FS): Call update_PROCINFO.
+ (set_FIELDWIDTHS): Ditto.
+
+Sun Sep 27 10:18:05 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (reisstring): New prototype.
+ * re.c (reisstring): New function, returns true if the re did
+ a simple string match. This is rather simplistic in its logic.
+ * io.c (get_a_record): In the case that RS is a regexp, AND
+ the re matched at the exact end of the buffer, add a call to
+ `reisstring' in case it's a simple string match. If so, we
+ don't need to read more into the buffer because we don't
+ have a regex like `x.*y' that might extend longer.
+ This should be very helpful for interactive /inet clients
+ where something like `RS = "\r\n"' happens.
+
+Thu Aug 13 22:07:40 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (socketopen): Fixes from Juergen Kahrs to socket
+ opening code for "any host".
+
+Tue Jul 14 19:02:33 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * aclocal.m4 (GAWK_AC_LIB_SOCKETS): Removed the caching;
+ configure gave different results the second time it was run!
+
+Fri Jul 10 09:11:06 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (interpret): Minor cleanups: add variable name to
+ fatal error Node_K_array_for and other minor changes.
+
+Mon Jun 22 16:53:34 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (tags, TAGS): Add $(LIBSRC).
+
+Tue Jun 2 15:23:05 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (devopen): Relax previous change, don't require "any",
+ just that a port be there. The user can put 0 if they
+ don't care.
+
+Wed May 27 21:33:45 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (devopen): For /inet, require that local and remote
+ ports and the remote hostname be there, and that `any'
+ be used for a port if they don't care.
+
+Thu May 21 14:13:46 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (parse_escape): Add warning that is always on
+ for \q for any unknown q inside string or regex constant.
+ I got bit by this myself once too often. Or else I'm
+ just getting old and senile.
+
+Mon May 4 12:42:49 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (NODETYPE): Sorted the Node_xxx entries for the
+ builtin variables. Gotta look nice, don't we?
+ * eval.c (nodetypes): Ditto.
+ (genflags2str): Added code to check that we don't
+ overflow the static buffer. This is just a debugging
+ routine, not worth the hassle of dynamic allocation.
+
+Mon Mar 2 16:06:16 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (dist): Remove any embedded copied RCS or CVS
+ directories.
+
+Mon Feb 23 00:09:52 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (genflags2str): Add declaration.
+ * eval.c (genflags2str): New function.
+ (flags2str): Use new general purpose function.
+ * io.c (redflags2str): Same.
+
+Sun Feb 22 23:57:29 1998 Arnold D. Robbins <arnold@skeeve.com>
+
+ Significant changes to add two-way i/o and sockets!!!
+
+ * Makefile.in: Add @SOCKET_LIBS@ to LIBS variable.
+ * acconfig.h: Add HAVE_SOCKETS and HAVE_PORTALS defs.
+ * aclocal.m4: New macro GAWK_AC_LIB_SOCKETS.
+ * awk.h: New node type, Node_redirect_twoway, and new redirection
+ flags: RED_TWOWAY, and RED_SOCKET.
+ * awk.y (parser): Add TWOWAYIO token and appropriate productions.
+ (yylex): Recognize `|&' token if not traditional.
+ * builtin.c (do_print, do_printf): Flush buffer if TWOWAYIO.
+ * configure.in: Add header checks for networking header files,
+ add --enable-portals switch, call GAWK_AC_LIB_SOCKETS
+ * eval.c (nodetypes): Add string constant for Node_redirect_twoway.
+ * io.c (redflags2str): New function.
+ (redirect): Better error message in default case, add code for
+ Node_redirect_twoway.
+ (socketopen): New function.
+ (iop_open, devopen): Add recognition of `/inet/...'.
+ (two_way_open): New function.
+
+Sat Dec 13 21:15:07 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (struct node): New member, `param_list' in union `x', becomes
+ `node->parmlist' in the code.
+ * awk.y (func_install): Rearranged a bit, to build up a list of
+ the function parameter names and to save it in the `parmlist' field.
+ * eval.c (push_args): New parameter, `varnames', which is the list
+ of variable names. Use this to set the vname field of each
+ parameter's value as it's created. Special case arrays to include
+ where they came from, mainly for array vs. scalar diagnostics.
+ (r_tree_eval): Don't set the `vname' field for parameters.
+ (pop_fcall): Free the `vname' field if it's an array.
+ (func_call): Pass in the `parmlist' field to call of push_args().
+ (r_get_lhs): For Node_subscript, change error message to use
+ the `vname' field.
+ (stopme): New do-nothing function for use with debugging code
+ and setting breakpoints.
+
+Thu Dec 4 15:18:17 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y: Fixed several lint checks and moved some into
+ test for do_lint_old.
+ * eval.c (fmt_index): Add value of bad format spec to
+ error message.
+
+Tue Nov 18 22:19:02 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (install): Strip the installed binary.
+ From Anatoly A. Orehovsky (tolik@mpeks.tomsk.su).
+
+Sun Nov 16 22:12:39 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (in_array, assoc_lookup): Add symbol->vname to
+ fatal calls for scalar in array context.
+
+Wed Nov 12 22:18:33 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h [ISASCII]: On all IS* macros, add cast to unsigned char.
+ [TOUPPER, TOLOWER]: New macros using unsigned char.
+ * awk.y: Change to use of IS* vs. is* macros.
+ * builtin.c (nondec2awknum): Change to use of IS* vs. is* macros,
+ change casts for casetable[] from int to unsigned char.
+ use new TOLOWER, TOUPPER macros
+ * dfa.c [ISASCII]: On all IS* macros, add cast to unsigned char.
+ (lex): Change isdigit to ISDIGIT.
+ [TOUPPER, TOLOWER]: New macros using unsigned char, now used.
+ * eval.c (fmt_ok): Change to use of IS* vs. is* macros.
+ * field.c (sc_parse_field): Change to use of IS* vs. is* macros,
+ change casts for casetable[] from int to unsigned char.
+ (set_FS): Change to use of IS* vs. is* macros.
+ * io.c (get_a_record): Change to use of IS* vs. is* macros,
+ change casts for casetable[] from int to unsigned char.
+ * main.c (main): Change to use of IS* vs. is* macros.
+ * node.c (r_force_number, parse_escape): Change to use of IS* vs.
+ is* macros.
+ * re.c (make_regexp): Change to use of IS* vs. is* macros.
+ * regex.c [ISASCII]: On all IS* macros, add cast to unsigned char.
+
+Sun Oct 19 12:36:47 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ALL: Change email address to arnold@gnu.org in all relevant places.
+
+Wed Oct 15 03:38:12 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y (yylex): Don't allow newlines after ? or : if do_posix.
+
+Thu Oct 9 19:28:39 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h [SEQUENT]: Removed; not needed any more since the
+ mmap code was ripped out.
+
+Wed Oct 8 17:22:03 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in: Remove check for madvise; don't need it any more
+ after nuking use of mmap.
+
+Tue Oct 7 11:14:21 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (flags2str): Made the code table driven. Shortened a lot.
+
+Tue Sep 30 20:59:17 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (r_get_lhs): case Node_field_spec. Add lint warnings
+ for field reference of null string or non-numeric value.
+ Based on patch submitted by Alan Broder, ajb@dtmr.com.
+
+Wed Sep 24 20:47:59 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h [TANDEM]: New changes. Finishes up Tandem
+ integration.
+
+Mon Sep 22 00:42:34 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * custom.h [__be_os]: Remove BROKEN_TOKEN definition.
+ * dfa.c, dfa.h: Change `token' to `dfa_token' to avoid BeOS
+ compile problems.
+
+Thu Aug 7 22:35:17 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes for BeOS from mc@whoever.com
+
+ * awk.h (strncasecmp): Bracket prototype.
+ custom.h [__be_os]: New stuff.
+ dfa.h, dfa.c [BROKEN_TOK]: New ifdefs to use dfa_token, not token.
+
+Fri Aug 1 13:32:49 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ Tandem changes:
+
+ * awk.h [TANDEM]: Misc additions, as needed.
+ * io.c (get_a_record): Changes for fixed length records; not used
+ on other systems.
+ * main.c (MRL): New variable, TANDEM specific.
+ (main): Update handling -mr option for TANDEM.
+ (load_environ): Comment out whole routine if TANDEM.
+ missing.c [TANDEM]: New includes.
+ gawkmisc.c [TANDEM]: Include `tmiscc'.
+
+Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ Close-on-exec changes:
+
+ * awk.h: (os_close_on_exec, os_isdir): New functions.
+ * gawkmisc.c: Add include fcntl.h.
+ * configure.in [AC_CHECK_HEADERS]: Add fcntl.h.
+ * io.c (devopen, iop_open): Change to use os_isdir(), not S_IFDIR().
+ (redirect, devopen, iop_open, gawk_popen): Change all calls to
+ fcntl() to os_close_on_exec().
+
+Tue Jul 29 11:09:45 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Fixed check for digits to use isdigit()
+ instead of looping over digits and using strchr(). Duh.
+
+Sat Jul 26 22:52:08 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (set_BINMODE): Fix so that `-v BINMODE=w' works.
+ * node.c (r_force_number): Add decl of strtod(); makes things
+ work on MIPS.
+ * Makefile.in (install-strip): New target.
+
+Fri Jul 18 13:28:05 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (redirect, devopen, iop_open, gawk_popen): Set the
+ close-on-exec flag on all files and pipes opened for I/O.
+ Keeps children run via system() or other pipes from running out
+ of file descriptors.
+
+ (Reported by Kenny McCormack, gazelle@yin.interaccess.com.)
+
+Tue Jul 8 22:18:00 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y [LEX_NEXT]: Removed support for `next file' as two words.
+
+Tue Jul 8 06:46:32 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfa.c: Changes from pjr@jet.UK (Paul J Rippin) from an old
+ bug report against 2.14.0 that speed up initialization and
+ rewrite the inner loop into readable code.
+
+Thu Jul 3 11:44:50 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Atari support moved into new `unsupported' directory.
+ awk.h, Makefile.in, gawkmisc.c, and missing.c modified.
+
+Sun Jun 29 14:17:37 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y (exp): Fixed warning about `x = /foo/'.
+
+Wed Jun 25 09:07:57 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * PORTS: Removed from distribution.
+ * Makefile.in (MISC): Removed PORTS.
+
+Sun Jun 22 11:52:57 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ BINMODE changes.
+
+ * awk.h (Node_BINMODE): Added.
+ (struct redirect): Added mode field to save for io.c:close_one().
+ (BINMODE, BINMODE_node, set_BINMODE): Add declarations.
+ * awk.y (isnoeffect): Add Node_BINMODE.
+ * eval.c (nodetypes): Add Node_BINMODE string.
+ (r_tree_eval, r_get_lhs): Add cases for Node_BINMODE.
+ (set_BINMODE): New function.
+ * io.c (binmode): New function.
+ (nextfile, redirect, gawk_popen): Add calls to binmode().
+ * main.c (BINMODE, BINMODE_node): Add decls.
+ (main): Add call to setmode() if BINMODE is set.
+ (varinit): Add entry for BINMODE.
+
+Wed Jun 4 21:52:25 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * configure.in [AC_FUNC_MMAP]: Removed call.
+ * awk.h [struct iobuf]: Removed IOP_MMAPED flag and `getrec' member.
+ * io.c: Removed all mmap related code.
+
+Sun Apr 27 16:23:56 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * aclocal.m4 [GAWK_AC_FUNC_MKTIME]: New macro.
+ * configure.in (GAWK_AC_FUNC_MKTIME): Call it.
+
+Thu Apr 24 23:25:06 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (devopen): Remove stat test for /dev/foo files. Finally.
+
+Fri Jul 26 09:23:15 1996 Arnold D. Robbins <arnold@skeeve.com>
+
+ Changes to add an abort statement, a la tawk.
+
+ * awk.h (Node_K_abort): New enum value for NODETYPE.
+ * main.c (aborting): New flag variable.
+ (main): Add logic to handle aborting.
+ * eval.c (interpret): Add case for Node_K_abort.
+ * io.c (do_input): If aborting, break loop.
+ * awk.y (tokentab): Add entry for "abort" keyword
+ (PRODUCTIONS): Add production for LEX_ABORT.
+
+Wed Jul 24 12:49:52 1996 Arnold D. Robbins <arnold@skeeve.com>
+
+ First cut at changes for i18n.
+
+ * awk.h (do_intl): Declare new flag variable.
+ [INTLSTR]: New flag def.
+ (m_tree_eval): Fix definitions for INTLSTR.
+ (force_string): Fix definitions for INTLSTR.
+ * awk.y (yylex): Add _"..." for international strings.
+ (dumpintlstr): New function.
+ * main.c (do_intl): Define new flag variable.
+ (optab): Add "gen-po" entry.
+ (main): If do_intl, exit, don't run the program.
+ (gawkoption): Add "gen-po" entry.
+ * node.c (r_force_string): Call gettext if flags indicate INTLSTR.
+
+Thu Mar 14 06:29:42 1996 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (do_mktime): Added declaration of new function.
+ * builtin.c (do_mktime): New function.
+ * awk.y (tokentab): Added "mktime" to list of gawk extensions.
+ * missing.c [HAVE_MKTIME]: Added include of mktime.c if needed.
+
+Mon Feb 26 22:32:19 1996 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (pidopen, useropen): Added warnings to use PROCINFO[],
+ not special files.
+ * main.c (load_procinfo): New function.
+ * awk.y (variable): Added call to load_procinfo() function.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Thu Aug 3 17:47:53 2000 Greg McGary <greg@mcgary.org>
+
+ * regex.c: Patches for gcc bounded pointer handling.
+
+Thu Aug 3 13:09:09 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (in_array, do_delete): Fix tests for index equality
+ when searching through the array to work correctly when
+ index is "".
+
+Fri Jul 14 21:40:17 2000 Pat Rankin <rankin@eql.caltech.edu>
+
+ * builtin.c (format_tree): Workaround a DEC C V5.7 bug by
+ splitting `strcpy() + 3' into two expressions (the builtin
+ inline strcpy evidently has erroneous return type of void *
+ instead of char *; reputedly fixed in V6.1).
+
+ * eval.c (C): New macro.
+ [casetable]: Use it to add explicit casts for the character
+ values outside the range of 0 to 127.
+ * missing/strncasecmp.c [C, charmap]: Likewise.
+
+ * io.c (redirect): Add EIO check on failed open for VMS.
+
+Fri Jul 14 11:57:23 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ Efficiency hack: turn `for (iggy in foo) delete foo[iggy]'
+ into moral equivalent of `delete foo'.
+
+ * array.c (do_delete_loop): New routine.
+ * awk.h [NODETYPE]: New Node_K_delete_loop value.
+ Add declaration of do_delete_loop.
+ * awk.y [LEX_FOR]: Fix code to recognize special case.
+ * eval.c (nodetypes): New entry for Node_K_delete_loop.
+ (interpret): Add case for Node_K_delete_loop, add more
+ diagnostic info in default (cant_happen) case.
+
+Tue Jul 11 22:15:10 2000 Pat Rankin <rankin@eql.caltech.edu>
+
+ * awk.y (nextc): Recast unsigned char values back to int to
+ prevent VAX C from truncating EOF to 255.
+
+Tue Jul 11 14:08:23 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (do_delete): Switch to string comparison, not
+ cmp_nodes.
+ (assoc_find): Add call to force_string on subscript.
+ * eval.c (interpret): Case Node_K_arrayfor: check for
+ Node_array_ref and fetch original_array. Yowser.
+
+Fri Jun 30 21:57:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Don't force the subscript
+ to be a string. Not a good idea after the change
+ to using dupnode.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed Jun 14 13:03:45 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * field.c (set_record): Manage a private buffer for $0.
+ Keeps things safe in case `getline var' rearranges the
+ IOBUF's contents that $0 is still pointing into.
+
+Tue Jun 13 16:27:55 2000 Paul Eggert <eggert@twinsun.com>
+
+ Upgrade to latest and greatest version of largefile code.
+
+ * configure.in (AC_CANONICAL_HOST): Remove.
+ (GAWK_AC_SYS_LARGEFILE): Defer until after AC_MINIX,
+ to avoid autoconf warnings.
+
+ Rewrite largefile configuration so that we don't need to run
+ getconf and don't need AC_CANONICAL_HOST.
+ * config.guess, config.sub: Remove these files.
+ * Makefile.in (MISC): Remove config.guess, config.sub.
+ * m4/largefile.m4 (GAWK_AC_SYS_LARGEFILE_FLAGS,
+ GAWK_AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
+ (GAWK_AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
+ (GAWK_AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
+ CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
+ All uses changed.
+ Instead of inspecting the output of getconf, try to compile the
+ test program without and with the macro definition.
+ (GAWK_AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
+ for getconf. Instead, check for the needed flags by compiling
+ test programs.
+
+ (GAWK_AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to be 500 to
+ work around glibc 2.1.3 bug.
+
+ (GAWK_AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on IRIX if the
+ installer said otherwise.
+
+ (GAWK_AC_SYS_LARGEFILE_FLAGS): Work around a bug in the QNX shell,
+ which doesn't propagate exit status of failed commands inside
+ shell assignments.
+
+Wed Jun 7 13:23:09 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Updated copyright dates in appropriate files.
+
+Mon May 22 17:29:43 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (clean): Get `*/core' too.
+
+Sun May 7 16:33:05 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (concat_exp): Change ref to `lnode->stlen' and
+ `lnode->stptr' for SUBSEP to use `var_value->...'.
+
+Tue May 2 09:54:29 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ Fix referencing freed memory as shown by test/arynocls.* tests.
+ * awk.h [Node_array_ref]: New node type.
+ [orig_array]: New macro element in NODE structure.
+ * field.c (do_split): Handle case for Node_array_ref, fetch
+ the original array.
+ * array.c (in_array, do_delete): Ditto.
+ * eval.c (nodetypes[]): Add Node_array_ref string.
+ (r_tree_eval): Handle case for Node_array_ref.
+ (push_args): Push arrays as Node_array_ref, and pass them on.
+ (pop_fcall): Don't unref lnode if it's an array when releasing
+ local arguments. Check for both Node_array and Node_array_ref.
+ (r_get_lhs): Choke on Node_array_ref as for Node_array.
+ For Node_subscript, handle Node_array_ref.
+
+Tue May 2 09:52:12 2000 Bruno Haible <haible@clisp.cons.org>
+
+ * io.c (redirect): After reopening a `struct redirect', move it to
+ the head of the list.
+
+Sun Apr 2 17:51:40 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * re.c (re_update): Check if IGNORECASE has changed, and
+ if so recompute the re. See test/igncdym.awk.
+
+Mon Mar 20 16:18:34 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * io.c (set_RS): Added a lint warning about multicharacter RS,
+ per suggestion from Akim DeMaille (akim@epita.fr).
+
+Sun Feb 13 14:40:32 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (push_args): Fix from Nide Naoyuki <nide@ics.nara-wu.ac.jp>,
+ re-assign `f' in case tree_eval moved fcall_list around.
+
+Sun Feb 6 11:39:33 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (op_assign): Fix it right. For ++ and --, get the lhs
+ in the operations, do the op, and then return. For += etc,
+ get the rhs FIRST, since the lhs can move around as a result,
+ *then* get the lhs and do the operation. See test/opasnidx.awk.
+
+Tue Feb 1 18:41:40 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (op_assign): Reget the rval after regetting
+ the left hand side. See test/opasnslf.awk for why.
+
+Thu Jan 27 18:06:31 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y (yylex): Made ']' not one of the characters
+ that sets `want_assign' to false. `a[i] /= 2' was
+ broken. Per bug report from Kristofer T. Karas
+ <ktk@ktk.bidmc.harvard.edu>.
+
+Wed Dec 22 15:06:37 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y: Removed declarations of functions before
+ definition of `tokentab[]'. They're redundant with
+ what's in awk.h.
+
+Thu Dec 9 17:01:07 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (parse_escape): Add lint warning for unrecognized
+ escape sequences.
+
+Mon Dec 6 15:17:34 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (usage): Changed bug reporting email addresses to
+ be a reference to `Bugs' node in the online and printed
+ doc, instead.
+
+Thu Dec 2 13:08:18 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_compl): Test `d' for negative inside the do_lint
+ test, not uval. Ooops.
+
+Fri Nov 26 10:58:36 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_find): ALWAYS compare indexes as strings,
+ don't use cmp_nodes in case they are numeric. Oh my.
+ Talk about a Day 1 bug!
+
+Tue Nov 23 11:58:53 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.c (SYNTAX): Cast argument to `unsigned char' instead of
+ &-ing with 0xFF. Hopefully somewhat more portable, ala 21 Nov 99
+ changes to awk.y.
+
+Sun Nov 21 22:25:27 1999 Paul Eggert <eggert@twinsun.com>
+
+ * aclocal.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
+ problem with the QNX 4.25 shell, which doesn't propagate exit
+ status of failed commands inside shell assignments.
+
+Sun Nov 21 20:33:35 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h (nextc): Remove declaration, don't need it here.
+ awk.y (nextc): Cast values to unsigned char so that latin-1
+ characters in strings don't turn themselves into EOF.
+ Most notably y-umlaut, which is decimal 255.
+
+Mon Nov 1 20:00:25 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regex.c (init_syntax_once): Move below definition of
+ ISALNUM etc., then use ISALNUM to init the table, so that
+ the word ops will work if i18n'ed.
+ (SYNTAX): And subscript with 0xFF for Latin-1 characters.
+
+Mon Oct 25 18:37:13 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.h, main.c, io.c: Undo previous changes (22 Oct 1999).
+ * main.c (main): Move call to `init_fields()' to before
+ arg parsing. This allows `-v NF=blah' to work ok.
+
+Fri Oct 22 17:43:40 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (arg_assign): Add new arg, `initing' for icky special
+ casing of -v of special variables. Use it to check for NF.
+ May need to add other cases later.
+ (pre_assign): Change call arg_assign, passing initing=TRUE;
+ io.c (nextfile): Change call arg_assign, passing initing=FALSE;
+ awk.h: Change prototype for arg_assign.
+
+Tue Oct 19 16:06:48 1999 Paul Eggert <eggert@twinsun.com>
+
+ * io.c (close_redir): Don't munge errno between setting it and
+ using it.
+
+Wed Oct 6 17:47:47 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * main.c (arg_assign): Return NULL on bad variable. Allows
+ things like `./3x=stuff' to work as a filename.
+
+Thu Sep 23 21:35:46 1999 Paul Eggert <eggert@twinsun.com>
+
+ * aclocal.m4 (GAWK_AC_SYS_LARGEFILE_FLAGS): Work around GCC
+ 2.95.1 bug in HP-UX 10.20 or later. (Had to fix the fix. ADR. :-)
+
+Tue Sep 21 13:31:36 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (format_tree): For '0', only set zero_flag if we
+ haven't seen the field width or precision yet.
+
+Mon Aug 9 13:06:01 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * array.c (assoc_lookup): Removed code that gave each array
+ a private copy of each index. Balloons memory usage for
+ no good reason that I can see. Just use dupnode in all
+ cases.
+ * configure.in: Check for $srcdir/.developing adds extra
+ defines for my testing/debugging use. Yes, hack alert.
+
+Sun Aug 1 11:02:02 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * node.c (dupnode): Turn off FIELD when copying nodes.
+ * array.c (do_adump, assoc_dump): New functions for array debugging.
+ * awk.y (tokentab): Conditionally add "adump" function for debugging.
+ * awk.h: Delcare new functions.
+
+Thu Jul 29 23:26:40 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ From wsanchez@apple.com:
+ * Makefile.in (install-strip): New target, coding stds. compatibility.
+ * config.guess, config.sub: Add MacOS X recognition.
+
+Thu Jul 29 19:09:19 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awk.y (func_install): Make `function foo(foo)' a fatal error.
+ eval.c (r_tree_eval): Diagnose use of a function name as a
+ variable inside the function.
+
+Sun Jul 4 16:53:14 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * eval.c (eval_condition): Add extra braces to avoid
+ gcc warning. I'm not going to bother for the library
+ code like dfa and regex.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Wed Jun 30 16:10:11 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * awk.h: Add include of <assert.h>, and comment about config.h
+ having to be included before any system headers. Otherwise,
+ with egcs-2.91.66 and later on Linux systems, and possibly
+ others, things break badly, due to the LFS macros.
+ * awk.y, builtin.c, eval.c, field.c, io.c: Removed include
+ of assert.h
+
+Wed Jun 9 11:39:19 1999 Paul Eggert <eggert@twinsun.com>
+
+ Port the large-file code to AIX, HP-UX, and IRIX.
+ Add cross-compilation support for large files.
+
+ * config.guess, config.sub: New files.
+
+ * configure.in (AC_CANONICAL_HOST):
+ Add; GAWK_AC_SYS_LARGEFILE needs this.
+ (GAWK_AC_SYS_LARGEFILE): Renamed from GAWK_AC_LARGE_FILES.
+
+ * aclocal.m4 (GAWK_AC_SYS_LARGEFILE): Renamed from GAWK_AC_LARGE_FILES.
+ Add support for AIX and HP-UX.
+ (GAWK_AC_SYS_LARGEFILE_FLAGS, GAWK_AC_SYS_LARGEFILE_SPACE_APPEND,
+ GAWK_AC_SYS_LARGEFILE_MACRO_VALUE): New macros.
+
+ * acconfig.h (_FILE_OFFSET_BITS, _LARGEFILE_SOURCE, _LARGE_FILES):
+ New macros.
+
+ * Makefile.in (MISC): Add config.guess and config.sub so they get
+ included in the distribution.
+
+Wed Jun 9 11:29:29 1999 Paul Eggert <eggert@twinsun.com>
+
+ * io.c (iop_alloc): Don't mmap files whose sizes don't fit in `int'.
+ [ This isn't really needed, as HAVE_MMAP is #undef'ed at the top,
+ but it's there in case people want to take their life in their hands. ]
+
+Sun Jun 6 11:28:07 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.46: Release tar file made.
+
+Wed Jun 2 14:36:24 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * PORTS: Updated with a more recent list of systems
+ that gawk compiles and tests ok on.
+
+Tue Jun 1 14:24:59 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.45: Release tar file made.
+
+Tue May 25 16:32:37 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * builtin.c (format_tree): More smarts for weird cases, such as
+ zero precisions and zero values used with the `#' flag.
+ Thanks to Andreas Schwab (schwab@gnu.org) for pointing these out.
+
+Wed May 19 14:02:54 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * io.c (do_close): Move test for `close(FILENAME)' to after
+ loop through all open redirections. Fixes problems in obscure
+ cases with redirections in END rules.
+
+Sun May 16 14:08:39 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * awk.y (yylex): Fix group of characters including ',' to
+ set want_assign = FALSE. Fixes bizarre parsing problems in
+ function call lists, for example.
+ * io.c (get_a_record): Repair logic for single-leading-newline
+ case.
+
+Tue May 11 16:48:11 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * aclocal.m4 (GAWK_AC_AIX_TWEAK): New macro.
+ * configure.in: Call it
+ * Makefile.in: (awklib/all): Pass CFLAGS on to sub-make so
+ that password programs will get AIX magic defines. Avoids
+ having to tweak program code for those in doc/gawk.texi.
+
+Mon May 3 16:56:23 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * array.c (do_delete): Don't free_temp(subs) until after all
+ references to it are finished.
+
+Mon May 3 13:41:16 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.44: Release tar file made.
+
+Sun May 2 18:25:43 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * io.c (get_a_record): Do a really good job of stripping newlines
+ from the front of records when RS = "" and there's only one
+ newline at the front of the file, which the regex didn't catch.
+
+Wed Apr 28 12:27:49 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * configure.in: More HP stuff: fix the manual alloca code so that
+ gawk will compile and link on HP systems. See the comments.
+
+Sun Apr 25 13:39:16 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (gawk): Add $(CFLAGS) to linking step.
+ * configure.in: Correctly do AC_FUNC_GETPGRP on HP systems too.
+
+Tue Apr 13 20:21:00 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.43: Release tar file made.
+
+Tue Apr 13 19:02:20 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * io.c (useropen, pidopen): Add casts to int on arguments to
+ silence gcc warnings.
+ * regex.c (regcomp,regexec,regfree): Add ifdef for APPLE.
+
+Thu Feb 4 10:38:02 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * custom.h: Hacks for BeOS. Not documented in the manual right now.
+ * configure.in: Hacks for BeOS. Check for HP-UX and define C_ALLOCA
+ if not using gcc. I wish they'd just fix bison already.
+
+Sun Dec 20 16:57:38 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.42: Release tar file made.
+
+Sun Nov 15 21:05:39 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * io.c (gawk_popen): Add WIN32 to list of systems that use
+ the non-real-pipe version. From the PC gawk guys.
+
+Wed Nov 4 11:32:24 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.41: Release tar file made.
+
+Tue Nov 3 16:24:35 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * eval.c (r_get_lhs): Fix the cases for the special variables,
+ don't unref their current value if it's the same as the internal
+ copy; perhaps the current one is used in a concatenation or some
+ other expression somewhere higher up in the call chain. Ouch.
+ See test/getnr2tm.awk.
+
+Sun Nov 1 15:24:52 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * builtin.c (format_tree): Improve handling of zero-fill
+ when a precision is present. See test/zeroflag.awk.
+
+Wed Oct 28 20:40:17 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * eval.c (r_tree_eval): Case for Node_concat. Get lengths
+ separately, in case one expression has a side effect that
+ that changes another. Ugly, but it keeps gawk from core
+ dumping. See test/nasty.awk.
+
+Sun Oct 18 21:27:24 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * awk.y (append_right): Bug fix, if `list' or `new' are NULL,
+ return `list', so that things don't break too badly.
+ * regex.c (re_compile_fastmap): Remove unused variable `num_regs'.
+
+Thu Oct 8 19:36:57 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * BETA Release 3.0.40: Release tar file made.
+
+Mon Jul 27 10:14:33 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * node.c (parse_escape): Remove assignment with side effects
+ from ISXDIGIT test. Thanks to "Mihai T. LAZARESCU"
+ <mihai@ccmserv.polito.it> for pointing this out.
+
+Mon Apr 27 11:31:32 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * main.c (usage): Fix the email address for the bug list.
+ (copyleft): Update the copyright year.
+
+Mon Mar 23 21:22:32 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * eval.c (r_get_lhs): Make sure that values of type
+ Node_param_list don't have the FUNC flag set. This means
+ we don't allow the use of a function name as a variable or
+ array from within the function.
+
+Sun Mar 22 19:12:32 1998 Paul Eggert <eggert@twinsun.com>
+
+ * aclocal.m4 (GAWK_AC_LARGE_FILES): New macro that checks for
+ large file support, and updates CPPFLAGS, LDFLAGS, LIBS as
+ needed.
+ * configure.in: Call GAWK_AC_LARGE_FILES.
+ * Makefile.in (CPPFLAGS, LDFLAGS): Let autoconf configure.
+ (COMPFLAGS): Add $(CPPFLAGS).
+
+Mon Mar 16 14:06:41 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * field.c (using_FIELDWIDTHS): New macro.
+ (using_fieldwidths): Use new macro.
+ (do_split): In case for FS_DFLT, also check that
+ we're not using FIELDWIDTHS. Otherwise, split() would use
+ FIELDWIDTHS, not current value of FS. Oops.
+
+Sun Nov 16 20:08:59 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * builtin.c (sub_common): Fix for count of matches in gsub
+ from Geert.Debyser@esat.kuleuven.ac.be.
+
+Wed Oct 15 03:38:12 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * field.c (set_FS): Use `sc_parsefield' if the value of FS is not
+ alphabetic OR if not ignoring case. Bug fix if IGNORECASE
+ is true and FS happens to be '^'. Sheesh, talk about obscure.
+ (rebuild_record): Add more smarts to the code that sets up the
+ fields. Thanks to Alan J. Broder (ajb@dtmr.com).
+
+Sun Oct 5 11:56:52 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * configure.in: If ISC add -D_SYSV3 to CFLAGS, per email from
+ Mario Vanoni (vanonim@dial.eunet.ch).
+
+Fri Sep 26 00:57:49 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * awk.y (append_right): Return if either list is NULL. Prevents
+ syntax errors from causing core dumps.
+
+Wed Sep 17 15:34:15 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * field.c (rebuild_record): Set things up so that all fields point
+ into the new record and release any changed fields without
+ causing memory leaks. Avoids problems when fields are extended
+ with the value of $0 or other fields and then $0 is assigned to.
+
+Mon Sep 15 16:12:55 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * builtin.c (do_print): When testing for NUMBER, make sure
+ it's not a string too. Thanks to Michael Brennan for
+ clarifying the semantics.
+
+Sun Sep 14 19:55:12 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * node.c (format_val): Always format values ourselves: avoids
+ problems if OFMT is bizarre, like %s.
+
+Sun Sep 14 00:08:53 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * io.c (get_a_record): Replace all occurrences of the test
+ `grRS == FALSE' with `RS_is_null' which makes ` RS = "\0" '
+ actually work, is clearer code, and actually makes use of
+ the `RS_is_null' variable!
+
+Sun Aug 17 07:15:12 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * field.c (set_FS): Change logic to always set parse_field, even
+ if FS hasn't changed. Thanks to Igor Sheyn for catching this.
+
+Wed Aug 6 21:04:37 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * io.c (VMS et al gawk_popen): Use pclose, not fclose, if
+ iop_alloc fails.
+
+Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * awk.y [variable]: Fix case for subscript if $3 == NULL.
+
+Sun Jul 27 22:47:30 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * awk.y (get_src_buf): Don't close file if it's stdin.
+
+Sun Jul 27 22:47:15 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * io.c (#if VMS: vmsrtl_fileno): New routine.
+ (#if VMS: fileno): New macro substituted for stdio one.
+
+Thu Jul 17 20:05:59 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * builtin.c (do_print): When OFMT != CONVFMT, create a new
+ temporary node with just the numeric value valid and format it,
+ and use that for printing. Avoids memory corruption.
+
+Wed Jul 16 10:01:16 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * regex.c: When SYNTAX_TABLE is defined, but not emacs, then
+ CHAR_SET_SIZE is not defined, though used in regcomp. It should
+ be taken out of #ifdef SYNTAX_TABLE. Fix from bug group, from
+ Akim Demaille, demaille@inf.enst.fr.
+ * awk.h (isnondecimal): Make test a little smarter.
+ * builtin.c (nondec2awknum): Add bailout for decimal numbers, e.g.
+ `00.1'. Fix from Larry Schwimmer <rosebud@cyclone.Stanford.EDU>.
+
+Thu Jun 19 19:00:40 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * eval.c (interpret): case Node_K_next, Node_K_nextfile: fatal
+ error if called from BEGIN or END.
+ (Fixed completely Mon May 3 13:31:42 1999.)
+
+Mon Jun 9 22:40:04 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * builtin.c (nondec2awknum): Allow `f' and `F' in hexadecimal numbers.
+ Gotta get more sleep...
+ * array.c (assoc_lookup): Fix from Tom Karzes (karzes@equator.com)
+ for memory leak when forcing type to Node_var_array.
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Wed May 14 08:06:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (do_close): Add lint warning if closing something that
+ isn't open.
+
+Tue May 13 12:14:12 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * random.c, builtin.c: Remove __GLIBC__ tests, since it breaks
+ `make test'. I prefer consistency across platforms.
+ * Makefile.in (gawk): Undid April 25 changes and added comment.
+ Putting COMPLAGS in breaks with -g on VMS POSIX.
+
+Sun May 11 14:48:04 1997 Darrell Hankerson <hankedr@mail.auburn.edu>
+
+ * io.c [MSC_VER]: Add cases for WIN32.
+ * regex.c [MSC_VER]: Add cases for WIN32.
+
+Sun May 11 07:04:01 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_print): In the loop that evaluates each expression
+ to be printed, do a dupnode to avoid bizarre output. Thanks to
+ Michal for finding this problem.
+ * awk.y (yylex): Fix scanning of hexadecimal constants.
+
+Wed May 7 15:09:25 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (get_a_record): Fix casetable indexing with cast to int.
+ Keeps Michal happy.
+
+Tue May 6 16:40:19 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (func_call): Removed unneeded variables.
+
+Mon May 5 21:17:37 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * missing/strftime.c [case 'v', VMS_EXT]: For VMS date format, two
+ digit day of month should not be zero padded on the 1st through
+ the 9th.
+
+Mon May 5 06:33:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * regex.h, regex.c: Merge with current GLIBC version.
+
+Mon May 5 06:33:47 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * io.c (nextfile): Move the check for null return from iop_open
+ in the normal case and add one for the "no args" case.
+
+Fri Apr 25 16:52:33 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * array.c (grow_table): Add a bunch more large primes so arrays
+ can get really big. Thanks to christos@deshaw.com.
+ * all files: Remove ifdef'ed out code and update copyrights.
+ * Makefile.in (gawk): Add $(COMPFLAGS) to command line.
+ * eval.c (flags2str): Added case for FIELD.
+
+Thu Apr 24 22:39:23 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * COPYING: Changed to current official version from FSF.
+ * regex.c: Merge with GLIBC version.
+ * awk.h [_GNU_SOURCE]: Bracket definition inside ifdef.
+ (NODE.source_line): Move name member out of `x' union and
+ into `nodep'; avoids problems doing diagnostics.
+ (nondec2num): Put decl into #if BITOPS || NONDECDATA
+ * posix/gawkmisc.c, missing/system.c, missing/strtod.c,
+ missing/strerror.c: Move to generic GPL statement at top.
+ * builtin.c (nondec2num): Put into #if BITOPS || NONDECDATA
+
+Wed Apr 23 22:14:14 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * dfa.c: Misc changes for really pedantic SGI compilers.
+ * builtin.c: Bracket defs of random() etc for GLIBC.
+ * random.c: Bracket whole file for GLIBC.
+ * configure.in: Extra goop for GETPGRP test for VMS POSIX.
+ * custom.h [VMS]: Remove hard definition of GETPGRP_VOID.
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Tue Apr 15 21:35:45 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ NEW UNDOCUMENTED FEATURE. USE THE SOURCE LUKE!
+ * acconfig.h [NONDECDATA]: New macro.
+ * awk.h: Add decl of do_strtonum.
+ * awk.y (tokentab): Add entry for strtonum function.
+ * builtin.c (do_strtonum): New function.
+ * configure.in (non-decimal-data): New --enable-* option.
+ * node.c (r_force_number): Change to allow non-decimal data inside
+ ifdef NONDECDATA.
+
+Tue Apr 15 06:32:50 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * missing/strftime.c (malloc, realloc, getenv, strchr): Only
+ declare these when STDC_HEADERS is not defined.
+ <stdlib.h, string.h>: Include these when STDC_HEADERS is defined.
+ * awk.h (freenode, tree_eval, m_tree_eval): Reorganize definitions.
+ * alloca.c (malloc): If malloc is already defined as a macro,
+ presumeably by config.h, don't define or declare it.
+
+Wed Apr 9 22:45:27 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in [COMPFLAGS]: Per suggestion from Karl Berry, put
+ $(CFLAGS) last.
+
+Tue Apr 8 23:54:46 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (interpret): For Node_K_break and Node_K_continue, if
+ treating them like `next', also check the function call stack
+ and pop it if necessary.
+
+Mon Apr 7 18:22:37 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h: Add decls of new routines do_compl() and set_loc().
+ * awk.y (tokentab): Add entry for "compl" function.
+ * builtin.c (do_compl): New function to do ones complement.
+ (do_substr): Rationalized yet again, now notices negative start
+ and length parameters.
+ * eval.c (push_args): Fix if call_list gets realloc'ed in the
+ middle of things. Avoids crash for deeply nested function calls.
+ * main.c (catch_sig): Add call to set_loc().
+ * msg.c (set_loc, srcfile, srcline): New function and private
+ variables to help out in tracing down source of error messages.
+
+Fri Mar 28 08:42:27 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (iop_alloc, iop_close): Undo changes of Feb 11, apparently
+ other cleanups in io.c made mmap stuff start working again.
+ BAH! It's a mess, the test suite still fails. I'm leaving the
+ mmap stuff undefined for now. It'll probably get ripped out in 3.1.
+
+Thu Mar 27 08:48:57 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * custom.h [_SEQUENT_]: Undef HAVE_MMAP.
+
+Wed Mar 26 09:08:16 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (iop_alloc): Fix definition to make it static.
+
+Mon Mar 24 23:09:07 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * field.c (init_fields, etc..): More clean up use of Null_field
+ and the various flags.
+ * node.c (unref): If a field, free the node itself. Fixes
+ memory leak problems.
+
+Sun Mar 23 22:51:09 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h [FIELD]: New flag for node->flags field.
+ * builtin.c (sub_common): If FIELD is set, dup the string.
+ * field.c (init_fields): Set up a new Null_field global var.
+ (init_fields, set_field, set_record) use the FIELD flag.
+ (getfield): Use Null_field instead of private variable.
+ * io.c (wait_any): Comment out calls to pclose and iop_close,
+ caused weird race conditions. See test/pipeio1.awk. Thanks
+ to Darrell Hankerson for tracing this one down.
+
+Tue Mar 18 20:57:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * dfa.c (inboth): Free templist; plugs memory leak.
+ * field.c (init_fields, grow_fields_arr, set_field, rebuild_record,
+ set_record): Remove PERM flag from entries in fields_arr[]. Fixes
+ nasty memory leak.
+
+Tue Mar 18 06:33:00 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.y (dup_parms): Robustified against parameter errors.
+
+Sun Mar 16 21:31:40 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ NEW UNDOCUMENTED FEATURE. USE THE SOURCE LUKE!
+ * acconfig.h [BITOPS]: New macro. If set, do octal & hex and bit ops.
+ * awk.h [isnondecimal]: New macro, and decl of new functions.
+ * awk.y (yylex): Add recognition of octal and hex constants.
+ * builtin.c (do_and, do_or, do_xor, do_lshift, do_rshift): New
+ functions that do bit operations.
+ (nondec2awknum): New function to convert octal or hex to double.
+ * configure.in: Add AC_ARG_ENABLE for bit operations.
+ * node.c (r_force_number): Add octal and hex conversion.
+
+Sun Mar 16 21:28:56 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h [IOP_NOFREE_OBJ]: New macro.
+ * io.c (iop_open, iop_alloc): Add new third parameter, which is
+ either NULL, meaning allocate a new IOP, or the address of one
+ already allocated. Have a static one in the `nextfile'
+ routine, and use the IOP_NOFREE_OBJ flag for it. All of this
+ keeps us from reading freed memory. The `swaplns' test fails
+ otherwise.
+ (iop_close): If IOP_NOFREE_OBJ is set, don't free the IOBUF.
+
+Wed Feb 26 06:21:02 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (in_function, pop_fcall_stack, pop_fcall, push_args):
+ New functions. These manage "frames" of awk function call arguments.
+ The problem is that a `next' or a `nextfile' from a function
+ leaks memory. These changes allow us to free up that memory.
+ (interpret): for Node_K_next and Node_K_nextfile, check if in
+ a function call and free all function call frames.
+
+Fri Feb 21 06:23:19 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ Misc changes from Katsuyuki Okabe <HGC02147@niftyserve.or.jp>:
+
+ * builtin.c (do_substr): Change a %d to %ld in warning message.
+ * eval.c (op_assign): Fix format string for warning about %=.
+
+Wed Feb 19 23:29:02 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * main.c (main): Add do_intervals to condition that causes
+ resetup() to be called again. Makes the --re-interval option
+ actually work. What a concept.
+
+Fri Feb 14 09:47:31 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c [#include "awk.h"]: Undef HAVE_MMAP to just use the old code.
+ Something is causing a file descriptor leak, and this is getting to
+ be just too much hair. I reserve the right to rip out the mmap
+ code entirely at a future date.
+
+Tue Feb 11 06:28:29 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (iop_alloc): For an mmap'ed file, close the file descriptor,
+ and then touch each page to get a private copy. Fixes nasty case
+ of truncating our input file.
+ (iop_close): Don't call close on mmap'ed file.
+
+Wed Feb 5 17:59:04 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (interpret): For Node_K_delete, just call do_delete; let
+ it handle the case of `delete array'.
+ * array.c (do_delete): Changed to handle case of `delete array',
+ and made smarter if the array is actually an uninitialized
+ parameter.
+
+Sun Jan 26 22:58:29 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * getopt.h, getopt.c, getopt1.c: Replaced with new versions from
+ GLIBC 2.
+
+Sun Jan 19 23:37:03 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (nodetype2str): Not static, for debugging.
+ (flags2str): New function for debugging.
+ * field.c (get_field): Add new var that is like Nnull_string but
+ does not have numeric attributes, so that new fields are strings.
+ (set_record): Turn off PERM flag before unrefing fields and field 0.
+ * array.c (in_array): Always evaluate subscript, could have
+ side effects.
+ * builtin.c (do_strftime): Way increase size of buffer to make sure
+ we don't have overflow problem. Keeps Paul Eggert happy.
+ * custom.h [__amigaos__]: Define fork to vfork. From Fred Fish.
+ * dfa.c: Move include of config.h to top, for RSXNT. From Kai
+ Uwe Rommel.
+ (ISALPHA, etc): Change from Jacob Engelbrecht (jaen@novo.dk)
+ to better handle non-ASCII environments.
+ * gawkmisc.c: Remove amigados case, posix should now work fine.
+ * amiga/*: Nuked per previous entry.
+ * Makefile.in: Removed all references to amiga
+ * io.c [HAVE_SYS_PARAM_H]: Add #undef RE_DUP_MAX to avoid
+ spurious conflict with regex.h.
+ (flush_io): Remove amiga ifdefs, not needed anymore.
+ (spec_setup): Set getrec field for special files. Fix from
+ Mark Gray (markgray@pdt.net).
+ * node.c (more_nodes): Fix to get the last entry in the array.
+
+Wed Jan 8 17:42:37 1997 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * io.c (mmap_get_record): Fix return value if file ends without
+ record separator.
+
+Fri Jan 3 19:57:16 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * awk.y (get_src_buf): Test for an empty source file by detecting
+ an initial read of 0 bytes rather than by relying on info from
+ stat().
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Wed Dec 25 11:17:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install, uninstall): Use $(srcdir)/patchlevel.h.
+ Thanks to Richard Levitte, LeViMS@stacken.kth.se.
+ (install): Remove chmod command; let $(INSTALL_PROGRAM) use -m.
+
+Mon Dec 23 20:36:59 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * custom.h (#if VMS_POSIX): Define GETPGRP_VOID.
+
+Fri Dec 20 08:59:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * getopt.c, getopt1.c: Comment out the `#if defined (_LIBC) ||
+ !defined (__GNU_LIBRARY__)' and `#endif' to force use of this
+ getopt, even on systems like Linux. This will be handled
+ better in 3.1 / glibc 2.
+
+Thu Dec 19 22:52:39 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.y (yylex): In several places, after yyerror(), add call to
+ exit(). Otherwise, infinite messages. This should probably
+ be handled better.
+
+Wed Dec 18 22:42:10 1996 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * getopt.c (_getopt_internal): If 'W' and ';', if optind == argc,
+ return c, don't fall through.
+
+Wed Dec 18 10:09:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * configure.in [AC_PREREQ]: Update to 2.12 in order to switch to
+ autoconf 2.12. Lots of other files will be rebuilt automatically.
+ [AM_SANITY_CHECK_CC]: Removed, autoconf does it now.
+ * aclocal.m4 [AM_SANITY_CHECK_CC]: Removed, autoconf does it now.
+
+Tue Dec 17 22:23:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_strftime): Fix case if format string is "".
+ Also fix it if format is not "" but result of strftime is "".
+ See comments in code.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Tue Dec 10 22:39:41 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (dist): Add dependency on `info'. Remove line that
+ does makeinfo.
+ (install): Use $(LN) not $(LN_S) to link gawk gawk-version.
+
+Sun Dec 8 07:53:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (gawk): Took COMPFLAGS out of link line for help
+ on VMS posix. Shouldn't (I hope) affect anything else.
+
+Thu Nov 28 11:52:24 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * configure.in (AC_PROG_INSTALL): Set INSTALL to install-sh.
+
+Tue Nov 26 22:42:00 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * PORTS: Updated list of systems.
+ * Makefile.in (install): Fix some typos and add some improvements
+ for Ultrix.
+
+Sun Nov 24 22:16:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_printf): If no args, fatal error. Return silently
+ if --traditional.
+
+Thu Nov 7 20:54:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (inrec): Make sure EOF hasn't already happened before
+ trying to read; prevents accessing freed buffer. Thanks to
+ Michal Jaegermann.
+ * Makefile.in [AWKSRC]: Add random.h.
+ * random.h: New file, redefines names of the `random' functions.
+ * random.c, builtin.c: Add include of random.h.
+
+Thu Nov 7 09:06:21 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.y (snode): Undo 4 Oct change, put do_split code back.
+ * field.c (do_split): Restore old code; add test for CONST, so
+ that re_parse_field is used if third arg to split is a regexp
+ constant.
+
+Mon Nov 4 12:57:11 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * main.c (main): Research -m[fr] options don't need literal '='
+ characters. Brian's documentation was confusing. Fixed, not
+ that anyone actually uses these options with gawk.
+
+Sun Nov 3 11:23:21 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * field.c (def_parse_field): Add \n to list of acceptable white space.
+ (posix_def_parse_field): New routine, just like def_parse_field(),
+ but only allows space and tab as separators.
+ (do_split, set_FS): Make appropriate choice between the two
+ *def_parse_field() routines.
+
+Fri Oct 25 10:13:06 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * configure.in: Remove test for random.
+ * Makefile.in: Add random.c to list of files always compiled.
+ * missing.c: Remove HAVE_RANDOM test.
+ * builtin.c: Remove ifdef's for HAVE_RANDOM.
+ [GAWK_RAND_MAX]: Use constant we know works with our random().
+ * random.c: New file - moved from missing/ directory.
+
+Wed Oct 23 19:46:01 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * builtin.c (do_tolower, do_toupper): Add `unsigned char *' casts.
+
+Tue Oct 22 21:27:52 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c [GAWK_RANDOM_MAX]: Try to make definition a bit
+ smarter; don't use RAND_MAX if it's equal to SHRT_MAX, blows
+ things up.
+
+Tue Oct 22 08:49:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * main.c (copyleft): Update copyright date to 1996.
+ * Too many files to list: Update copyright date to 1996.
+
+Sun Oct 20 12:21:09 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.y, dfa.c, eval.c, io.c, re.c: Added various FIXME comments.
+
+Sat Oct 19 22:06:42 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (nodetype2str): Make static, add prototype.
+ * field.c (sc_parse_field): Cast array subscripts to int to
+ shut up gcc warnings.
+ * gawkmisc.c: Add prototype for xmalloc.
+ * awk.h: Add prototype for getredirect.
+ * builtin.c (do_fflush): Remove extern decl of getredirect.
+ * io.c (get_a_record, mmap_get_record): Change decl of rs to int,
+ to shut up gcc warnings.
+ * awk.y (isassignable): Add a default to switch to quiet gcc.
+ * getopt.c (_getopt_internal): Give default value to `indfound'.
+
+Fri Oct 18 09:00:49 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * regex.h [RE_SYNTAX_AWK]: Add RE_CONTEXT_INDEP_ANCHORS.
+
+Thu Oct 17 22:32:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * aclocal.m4 [AM_SANITY_CHECK_CC]: Added.
+ * configure.in: Use it.
+
+Thu Oct 17 21:43:25 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * configure.in: Add checks for locale.h and setlocale().
+ * awk.h: Include locale.h and define out setlocale() if not available.
+ * main.c (main): Call setlocale().
+ * builtin.c (do_tolower, do_toupper): Use unsigned char pointers,
+ to get other charsets right in different locales.
+
+Wed Oct 16 21:32:53 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (format_tree): Change initial buffer size to 512
+ and use a constant. Allows large values of %f per bug report
+ from sheyn@cs.bu.edu.
+
+Wed Oct 16 21:22:08 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in [MISC]: Removed TAGS and tags.
+ (local-distclean): Added TAGS and tags.
+ (maintainer-clean): Removed TAGS and tags.
+
+Wed Oct 16 12:28:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * main.c (version): Add call to copyleft(), per new standards.
+ version.c: Fix text of version string to match new standards.
+
+Sun Oct 6 22:19:45 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * regex.c: Updated to Emacs 19.34b base.
+
+Sun Oct 6 21:57:34 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * re.c (make_regexp): Fixed to handle \8 and \9 in the middle
+ of a regexp.
+
+Fri Oct 4 10:26:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.y (snode): Remove case for do_split; always making the
+ third arg a Node_regex is wrong.
+ * field.c (do_split): Rationalized to distinguish `/ /' from `" "'.
+ Generally fixed up.
+ * node.c (parse_escape): Allow single digit \x escapes.
+
+1996-10-02 Paul Eggert <eggert@twinsun.com>
+
+ * builtin.c (format_tree): Fix bug in %d and %i format: NaNs, and
+ values in the range LONG_MAX+1 .. ULONG_MAX, were mishandled.
+ Don't assume that double values <= -1 are converted to unsigned
+ long in the expected way; the C Standard doesn't guarantee this.
+
+1996-10-02 Paul Eggert <eggert@twinsun.com>
+
+ * awk.h (INT_MAX): Remove unused symbol.
+
+Mon Sep 30 22:19:11 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * getopt.c (_getopt_internal): If 'W' is in the optstring followed
+ by a ';' then search through the long opts table. This makes
+ `-W foo=bar' same as `--foo=bar'.
+ * main.c (main): 'W' now prints an error message.
+ (gawk_option): Deleted the routine.
+
+Sun Sep 29 23:04:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (sub_common): Fix several bugs with gsub when
+ matching null strings. See test/gsubtest.awk.
+
+Fri Sep 20 17:35:54 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * alloca.c (NULL): Don't define if <config.h> has already done so.
+
+Fri Sep 20 11:54:31 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_print): Evaluate all the expressions first and
+ then print them. Avoids surprising behavior. See test/prtoeval.awk
+ for an example.
+
+Tue Sep 10 06:21:40 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h [FUNC]: New flag, marks a Node_parameter_list as really
+ being the function name; allows more checking in awk.y.
+ * awk.y (isassignable): Now takes a NODE * instead of a type, to
+ check if a function parameter is marked FUNC, then it's the function
+ name, which is not assignable. Fix call from snode().
+ (function_prologue): Mark function name as FUNC.
+ (yyerror): Don't call exit() anymore; gawk will now report
+ all syntax errors.
+
+Sun Sep 1 19:36:30 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * field.c (rebuild_record): After building new field 0, go through
+ all old fields, and if they used to point into the old one,
+ have them point into the new one. Then turn off PERM flag before
+ unref-ing field 0.
+
+Wed Aug 28 19:13:34 1996 Arnold D. Robbins <arnold@math.utah.edu>
+
+ * eval.c (set_IGNORECASE): Correctly parenthesize bit operations
+ in test and fix logic for string value.
+
+Wed Aug 28 22:06:33 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * main.c (usage): Add email addresses for bug reporting, per
+ change in GNU Coding Standards from RMS.
+
+Sun Aug 11 23:13:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): Correct use of $(INSTALL_PROGRAM).
+
+Thu Aug 8 23:29:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * parse.y (isassignable): New function, checks in type can
+ be assigned to.
+ (snode): Changed checking for 3rd arg of gsub to be more
+ general, supersedes earlier change.
+
+Thu Aug 8 13:58:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * parse.y (snode): If third arg to sub or gsub is builtin
+ function, complain, since can't substitute into result.
+ * eval.c (r_get_lhs): Diagnose Node_builtin as an error, instead
+ of falling through into default case and using cant_happen().
+
+Thu Aug 1 07:13:14 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * regex.h [RE_DEBUG]: New macro.
+ [RE_SYNTAX_GNU_AWK]: Add RE_DEBUG.
+ [RE_SYNTAX_POSIX_AWK]: Add RE_INTERVALS.
+ * regex.c (re_set_syntax): Add #ifdef DEBUG code to turn on `debug'
+ flag if RE_DEBUG set, and turn off debug if not set and debug
+ was on.
+ * main.c (main): Remove `do_intervals = TRUE' from `if (do_posix)',
+ it's now handled in the definition of RE_SYNTAX_POSIX_AWK.
+
+Mon Jul 29 17:49:07 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * io.c (O_ACCMODE): Define it if <fcntl.h> doesn't.
+
+Mon Jul 29 12:02:48 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (set_IGNORECASE): Made somewhat smarter. gawk -v IGNORECASE=0
+ was acting the same as -v IGNORECASE=1. Thanks to Darrell Hankerson
+ for the bug report.
+
+Fri Jul 26 12:04:43 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h (format_val): Add declaration of new routine.
+ * node.c (format_val): New routine, abstracts old guts of
+ r_forcestring; accepts format string and index as additional params.
+ (r_force_string): Changed to call format_val.
+ * builtin.c (do_print): Don't tree_eval the tree twice in case
+ OFMTidx != CONVFMTidx; doing so could cause side effects
+ (from bug report by Tobias Rettstadt, xassp@ipds.uni-kiel.de).
+ Instead, call format_val.
+
+Mon Jul 22 21:59:15 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (iop_close): Change check for "is $0 in the input buffer"
+ to use `< (iop->buf + iop->secsiz + iop->size)' instead of
+ `< iop->end'. The latter is bogus if EOF has been hit on the
+ file. Fix from Darrel Hankerson based on bug report by
+ Charles Howes (howes@grid.direct.ca). See test/eofsplit.awk.
+
+Thu Jul 18 19:43:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (sub_common): Backed out change of Feb 14 in favor of:
+ (do_gensub): Changed to use make_string and then to |= TEMP
+ flag, based on bug report and patch from Katsuyuki Okabe,
+ hgc02147@niftyserve.or.jp.
+
+Thu Jul 18 19:23:53 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * custom.h: Added ifdef for QNX, based on bug report from
+ Michael Hunter, mphunter@qnx.com.
+
+Mon Jul 15 09:31:01 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (redirect): When finding the rp pointer, if it's not
+ NULL, set str = rp->value. This gets the '\0' terminated
+ version. Motivated by bug report from John Hawkinson
+ (jhawk@bbnplanet.com).
+
+Sun Jul 14 18:40:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * configure.in: Added call to AC_CHECK_LIB(m, fmod), since
+ apparently some systems have fmod in the math library.
+ Portability: The Holy Grail. Sigh.
+
+Sun Jul 14 18:08:01 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h: Add Jim Meyerings ISASCII etc hacks for ctype macros.
+ * builtin.c (do_toupper, do_tolower, sub_common): Changed to use
+ upper-case versions of ctype macros.
+ * main.c (main): Ditto.
+ * node.c (r_force_number, parse_escape): Ditto.
+
+Sun Jul 14 06:34:18 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * field.c (set_record): Made it always do the PERM flag.
+ Fixes cases where $0 is assigned to, e.g. by gsub, keeps
+ the fields valid.
+ (get_field): Removed the call to reset_record in
+ case where ! field0_valid. We want to leave the fields alone
+ if they've been changed.
+
+Thu Jul 11 23:04:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (devopen): Change tests of (flag & O_fooONLY) to
+ (flag & O_ACCMODE) == O_fooONLY. Per (long standing) bug
+ report from Chapman Flack.
+ (close_redir): Change final conditional to just (status != 0)
+ so that ERRNO always set; the warning had its own `if (do_lint)'
+ anyway.
+ * eval.c (do_split): Force type of array to be Node_var_array
+ instead of Node_var. Per (long standing) bug report from
+ Chapman Flack.
+
+Thu Jul 11 22:17:14 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): Added symlink of gawk to awk if
+ no awk in $(bindir).
+ (LN_S): New variable for symlinking.
+ (uninstall): Remove awk if it's the same gawk.
+ * Configure.in: Added call to AC_PROG_LN_S for Makefile.in.
+
+Sun Jul 7 15:47:13 1996 Arnold D. Robbins <arnold@infographix.com>
+
+ * main.c (main): Made `--posix' turn on interval expressions.
+ Gawk now matches its documentation. (What a concept!)
+
+Wed Jul 3 15:02:48 1996 Arnold D. Robbins <arnold@infographix.com>
+
+ * regex.h, regex.c: Upgraded to changes from Emacs 19.31.
+
+Fri May 17 08:46:07 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (get_a_record): Added `continued' flag. Fix from
+ Darrell Hankerson for when RS = "\n|something".
+
+Wed May 15 02:34:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (awklib/all): Now depends on gawk, fixes problem
+ with parallel make.
+
+Tue May 14 15:02:52 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (format_tree): Fix handling of '*' to deal with
+ negative value for fieldwidth -- make positive and turn on
+ left justify. Per bug report from Michael Brennan.
+
+Sun May 12 20:42:06 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * eval.c (r_get_lhs): case Node_subscript. Check if array name
+ is actually a function, fatal error if so.
+
+Sun May 5 10:11:52 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (redirect): Call flush_io() before creating a new output pipe,
+ per bug report from Brian Kernighan (bwk@research.bell-labs.com).
+
+Fri Mar 15 06:38:33 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): Use $(INSTALL_PROGRAM), not $(INSTALL).
+ (local-distclean): Add `*~' to list of files to be removed.
+ (CFLAGS): Now contains just @CFLAGS@.
+ (COMPFLAGS): Replaces use of CFLAGS, has CFLAGS plus all the
+ other stuff.
+
+Wed Mar 13 14:19:38 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (mmap_get_record): Fixed to not place sentinel at end
+ of mmap'ed object. Won't work if file is exact multiple of
+ disk block size. See comments in code for more info.
+ Thanks to Rick Adams (rick@uunet.uu.net) for help in testing.
+
+Sun Mar 10 22:50:23 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * io.c (do_close): Notice if we were called as `close(FILENAME)'
+ and arrange to close the current input file. This turns out
+ to be easy to do, just call `nextfile(TRUE)'. Based on bug report
+ from Pascal A. Dupuis, <dupuis@lei.ucl.ac.be>.
+
+Thu Mar 7 08:08:51 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * field.c (init_fields, grow_fields, set_field, rebuild_record):
+ Nuke the `nodes' array everywhere. Anytime a field is unref'ed,
+ allocate a new node that is a copy of Nnull_string. This avoids
+ subtle memory management problems when doing a lot of assignment
+ to fields, and tweaking of NF. Make sure that fields_arr[0] always
+ has a type of Node_val!
+ * field.c (set_NF): If NF is decremented, clear fields between
+ NF and parse_high_water, otherwise if NF incremented, clear
+ fields between parse_high_water and NF.
+ * eval.c (nodetype2str): New function, used for diagnostics.
+ (interpret): Use nodetype2str when finding invalid node.
+
+Mon Mar 4 09:02:28 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_toupper, do_tolower): Use isascii along with
+ isupper/islower before changing case, in case characters have
+ the high bit set. This is a hack.
+
+Mon Feb 26 22:24:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (sub_common): If no match, and called from gensub,
+ don't free the temporary string, since the tmp_number then
+ writes over it.
+
+Sun Feb 25 23:13:01 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (format_tree): Fixed %c to treat user input as
+ numeric also by adding test for MAYBE_NUM.
+
+Tue Feb 20 12:25:50 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * configure.in: Added AC_FUNC_MMAP call and add madvise to
+ list of functions to look for.
+ * awk.h [IOP_ISMAPPED]: New flag value for mmap support and new
+ `getrec' structure member in struct iobuf.
+ * io.c (iop_alloc, iop_close): Changed to map/unmap input file
+ into memory if possible.
+ (mmap_get_record): New function to actually retrieve the
+ record from mmaped file.
+
+Thu Feb 1 08:56:46 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_substr): Fixed lint message to use indx+1 when
+ start position is past end of string.
+
+Sun Jan 28 07:00:56 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_substr): Rationalized handling of missing length
+ argument, as well as various accompanying lint warnings. Previous
+ code was slightly bogus. Talk about your Day 1 bugs.
+
+Thu Jan 25 14:09:11 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * builtin.c (do_substr): If length exceeds length of actual
+ string, do computation of needed substring length *after*
+ the lint warning.
+
+Wed Jan 24 10:06:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (gawk): Add $(CFLAGS) to link line.
+ (Makefile): Target depends on the Makefile.in files.
+ (OTHERS): Added TAGS and tags to the distribution.
+ (local-distclean): New rule.
+ (distclean): Use it.
+ (maintainer-clean): Don't `make distclean' before running submakes,
+ since that removes makefiles needed for the submakes.
+ * builtin.c (do_strftime): Remove hard coded limit on length of result.
+ Based on code from Paul Eggert (eggert@twinsun.com).
+
+Mon Jan 22 13:16:37 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * main.c (usage): Takes new fp parameter which is either
+ stdout for `--help' (per the GNU Coding Standards) or stderr
+ if an error occurs. Fix all calls.
+ (version): Prints to stdout per the coding stds.
+ (copyleft): Prints to stdout now, not stderr, and exits.
+
+Fri Jan 19 08:10:29 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * regex.h [RE_GNU_AWK]: Added RE_CONTEXT_INDEP_OPS to set of
+ bits we turn off for regular operation. Breaks things like
+ /^+[0-9]+/ to match a literal `+' at the beginning of, say,
+ a phone number.
+
+Wed Jan 10 23:19:36 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * 3.0.0 polished up and release tar file made.
+
+Wed Dec 27 11:46:16 1995 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * 2.94.0 released to porting group (no, I haven't been good
+ about this file; I'll do better once 3.0 is released).
+
+Mon Aug 28 23:04:30 1995 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * awk.h updated for NeXT - bracket TRUE/FALSE
+ * io.c (get_a_record): Removed shadowing of 'start' in
+ * Makefile.in and doc/Makefile.in: Fixed to use gawk.1 and gawk.texi,
+ instead of gawk.1.in and gawk.texi.in.
+
+Mon Aug 25 11:04:30 1995 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * 2.90.0 released to porting group.
+
+Fri Aug 18 12:43:31 1995 Arnold D. Robbins <arnold@puny.ssc.com>
+
+ * ChangeLog created.
diff --git a/README_d/ChangeLog b/README_d/ChangeLog
index 8cea0656..8aaeb418 100644
--- a/README_d/ChangeLog
+++ b/README_d/ChangeLog
@@ -1,8 +1,5 @@
-2010-12-18 Eli Zaretskii <eliz@gnu.org>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * README.pc: Update and simplify. Remove lots of
- outdated stuff for systems and configurations no longer supported.
-
-2010-12-18 Arnold Robbins <arnold@skeeve.com>
-
- * ChangeLog: Created.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/README_d/ChangeLog.0 b/README_d/ChangeLog.0
new file mode 100644
index 00000000..8cea0656
--- /dev/null
+++ b/README_d/ChangeLog.0
@@ -0,0 +1,8 @@
+2010-12-18 Eli Zaretskii <eliz@gnu.org>
+
+ * README.pc: Update and simplify. Remove lots of
+ outdated stuff for systems and configurations no longer supported.
+
+2010-12-18 Arnold Robbins <arnold@skeeve.com>
+
+ * ChangeLog: Created.
diff --git a/awklib/ChangeLog b/awklib/ChangeLog
index e3f24da4..8aaeb418 100644
--- a/awklib/ChangeLog
+++ b/awklib/ChangeLog
@@ -1,180 +1,5 @@
-Mon Jan 10 21:40:05 2011 Andreas Buening <andreas.buening@nexgo.de>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * Makefile.am (AWKPROG): Get correct path to gawk executable.
-
-Fri Nov 19 11:53:16 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Remove special handling of CVS directories.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-2007-05-25 Andreas Schwab <schwab@suse.de>
-
- * Makefile.am: Add missing dependencies on stamp-eg.
-
-Wed Mar 14 13:22:52 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am (AWKPROG): New macro to set locale sanely.
- (stamp-eg): Use it instead of $AWK to do the extractions.
-
-Wed Mar 14 13:16:28 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (clean-local): Remove `eg.old' also.
-
-Sat Jan 13 21:17:33 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * Makefile.am (stamp-eg): Allow rebuilding from a VPATH build.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Mon Jun 20 23:20:22 2005 Andreas Schwab <schwab@suse.de>
-
- * Makefile.am: Install pwcat and grcat in pkglibexecdir instead of
- libexecdir.
-
-Wed Feb 9 10:13:27 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (pkgdatadir, pkglibexecdir): Use $(datadir) and
- $(libexecdir) instead of @datadir@ and @libexecdir@ for coolest
- GNU Coding Standards compatibility and functionality. Per Stepan
- Kasal.
-
-Tue Feb 8 18:57:08 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (pkgdatadir, pkglibexecdir): New variables for compatibility
- with current GNU Coding Standards. Fixed uses. Thanks to Stepan Kasal
- and the discussion in bug-gnu-utils.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Thu Mar 18 17:43:59 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS. Per
- Stepan Kasal.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Thu Oct 10 13:24:09 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (INCLUDES): Added to get .. for build dir
- which will have config.h in it.
- (grcat,pwcat): Use $(COMPILE) instead of $(CC) to get
- $(INCLUDES) included.
-
-Tue Jun 11 23:43:36 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (grcat): Add def for config.h and -I flag.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Wed Apr 17 15:20:27 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (clean): Add *.exe to list of files to be cleaned.
-
-2002-01-27 Bruno Haible <bruno@clisp.org>
-
- * eg/lib/libintl.awk (dcngettext): New function.
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-2001-02-26 Paul Eggert <eggert@twinsun.com>
-
- * Makefile.am (stamp-eg): Use $(AWK), not awk, as the
- native awk might not work.
-
-2001-02-26 Andreas Schwab <schwab@suse.de>
-
- * Makefile.am: Install igawk as script.
-
-Mon Nov 6 15:29:08 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Fixed to have all functionality from before
- the switch to automake.
- * extract.awk: Updated to match version in the doc.
-
-Sat Jul 26 23:08:29 1997 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (install-strip): new target.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Sun Apr 13 15:40:55 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): fix second for loop to use $$i. Sigh.
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Wed Dec 25 11:17:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): remove chmod command; let
- $(INSTALL_PROGRAM) use -m.
-
-Tue Dec 17 22:29:49 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): fix installation of files in eg/lib.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Sun Oct 20 12:30:41 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (install): minor tweaks for portability.
-
-Fri Mar 15 06:33:38 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (pwcat, grcat): Add $(LDFLAGS).
- (clean): add `*~' to list of files to be removed.
-
-Wed Jan 24 10:06:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (clean): Remove $(AUXAWK).
- (maintainer-clean): Depend on distclean, not the other way around.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/awklib/ChangeLog.0 b/awklib/ChangeLog.0
new file mode 100644
index 00000000..e3f24da4
--- /dev/null
+++ b/awklib/ChangeLog.0
@@ -0,0 +1,180 @@
+Mon Jan 10 21:40:05 2011 Andreas Buening <andreas.buening@nexgo.de>
+
+ * Makefile.am (AWKPROG): Get correct path to gawk executable.
+
+Fri Nov 19 11:53:16 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Remove special handling of CVS directories.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+2007-05-25 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.am: Add missing dependencies on stamp-eg.
+
+Wed Mar 14 13:22:52 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am (AWKPROG): New macro to set locale sanely.
+ (stamp-eg): Use it instead of $AWK to do the extractions.
+
+Wed Mar 14 13:16:28 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (clean-local): Remove `eg.old' also.
+
+Sat Jan 13 21:17:33 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.am (stamp-eg): Allow rebuilding from a VPATH build.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Mon Jun 20 23:20:22 2005 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.am: Install pwcat and grcat in pkglibexecdir instead of
+ libexecdir.
+
+Wed Feb 9 10:13:27 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (pkgdatadir, pkglibexecdir): Use $(datadir) and
+ $(libexecdir) instead of @datadir@ and @libexecdir@ for coolest
+ GNU Coding Standards compatibility and functionality. Per Stepan
+ Kasal.
+
+Tue Feb 8 18:57:08 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (pkgdatadir, pkglibexecdir): New variables for compatibility
+ with current GNU Coding Standards. Fixed uses. Thanks to Stepan Kasal
+ and the discussion in bug-gnu-utils.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Thu Mar 18 17:43:59 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (INCLUDES): Renamed to AM_CPPFLAGS. Per
+ Stepan Kasal.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Thu Oct 10 13:24:09 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (INCLUDES): Added to get .. for build dir
+ which will have config.h in it.
+ (grcat,pwcat): Use $(COMPILE) instead of $(CC) to get
+ $(INCLUDES) included.
+
+Tue Jun 11 23:43:36 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (grcat): Add def for config.h and -I flag.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Wed Apr 17 15:20:27 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (clean): Add *.exe to list of files to be cleaned.
+
+2002-01-27 Bruno Haible <bruno@clisp.org>
+
+ * eg/lib/libintl.awk (dcngettext): New function.
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+2001-02-26 Paul Eggert <eggert@twinsun.com>
+
+ * Makefile.am (stamp-eg): Use $(AWK), not awk, as the
+ native awk might not work.
+
+2001-02-26 Andreas Schwab <schwab@suse.de>
+
+ * Makefile.am: Install igawk as script.
+
+Mon Nov 6 15:29:08 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Fixed to have all functionality from before
+ the switch to automake.
+ * extract.awk: Updated to match version in the doc.
+
+Sat Jul 26 23:08:29 1997 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (install-strip): new target.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Sun Apr 13 15:40:55 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): fix second for loop to use $$i. Sigh.
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Wed Dec 25 11:17:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): remove chmod command; let
+ $(INSTALL_PROGRAM) use -m.
+
+Tue Dec 17 22:29:49 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): fix installation of files in eg/lib.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Sun Oct 20 12:30:41 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (install): minor tweaks for portability.
+
+Fri Mar 15 06:33:38 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (pwcat, grcat): Add $(LDFLAGS).
+ (clean): add `*~' to list of files to be removed.
+
+Wed Jan 24 10:06:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (clean): Remove $(AUXAWK).
+ (maintainer-clean): Depend on distclean, not the other way around.
diff --git a/configure b/configure
index e0d4ff1d..2fc0835c 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for GNU Awk 3.1.87.
+# Generated by GNU Autoconf 2.68 for GNU Awk 4.0.0.
#
# Report bugs to <bug-gawk@gnu.org>.
#
@@ -560,8 +560,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='GNU Awk'
PACKAGE_TARNAME='gawk'
-PACKAGE_VERSION='3.1.87'
-PACKAGE_STRING='GNU Awk 3.1.87'
+PACKAGE_VERSION='4.0.0'
+PACKAGE_STRING='GNU Awk 4.0.0'
PACKAGE_BUGREPORT='bug-gawk@gnu.org'
PACKAGE_URL='http://www.gnu.org/software/gawk/'
@@ -1292,7 +1292,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures GNU Awk 3.1.87 to adapt to many kinds of systems.
+\`configure' configures GNU Awk 4.0.0 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1362,7 +1362,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of GNU Awk 3.1.87:";;
+ short | recursive ) echo "Configuration of GNU Awk 4.0.0:";;
esac
cat <<\_ACEOF
@@ -1474,7 +1474,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-GNU Awk configure 3.1.87
+GNU Awk configure 4.0.0
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -2178,7 +2178,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by GNU Awk $as_me 3.1.87, which was
+It was created by GNU Awk $as_me 4.0.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -3013,7 +3013,7 @@ fi
# Define the identity of the package.
PACKAGE='gawk'
- VERSION='3.1.87'
+ VERSION='4.0.0'
cat >>confdefs.h <<_ACEOF
@@ -11260,7 +11260,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by GNU Awk $as_me 3.1.87, which was
+This file was extended by GNU Awk $as_me 4.0.0, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -11328,7 +11328,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-GNU Awk config.status 3.1.87
+GNU Awk config.status 4.0.0
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
diff --git a/configure.ac b/configure.ac
index 3adad741..d532963b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,7 +1,7 @@
dnl
dnl configure.ac --- autoconf input file for gawk
dnl
-dnl Copyright (C) 1995-2010 the Free Software Foundation, Inc.
+dnl Copyright (C) 1995-2011 the Free Software Foundation, Inc.
dnl
dnl This file is part of GAWK, the GNU implementation of the
dnl AWK Programming Language.
@@ -23,7 +23,7 @@ dnl
dnl Process this file with autoconf to produce a configure script.
-AC_INIT([GNU Awk], 3.1.87, bug-gawk@gnu.org, gawk)
+AC_INIT([GNU Awk], 4.0.0, bug-gawk@gnu.org, gawk)
# This is a hack. Different versions of install on different systems
# are just too different. Chuck it and use install-sh.
diff --git a/doc/ChangeLog b/doc/ChangeLog
index 8b32325b..8aaeb418 100644
--- a/doc/ChangeLog
+++ b/doc/ChangeLog
@@ -1,1032 +1,5 @@
-Mon Jun 13 22:28:02 2011 Arnold D. Robbins <arnold@skeeve.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * gawk.texi: Document that POSIX now says [a-z] is undefined outside
- the C and POSIX locales, so gawk treats it as the Good Lord intended
- in all cases. Thanks to Paul Eggert for letting me know about this
- and providing URLs to cite.
-
-Fri May 27 09:59:38 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1, gawk.texi: Minor edits w.r.t. the bug reporting address.
-
-Wed May 25 22:03:53 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1, gawk.texi: Straighten out owners of the different
- Windows ports.
-
-Thu May 19 17:52:46 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Igawk, have pathto check for "-".
- Thanks to Steffen Schuler <schuler.steffen@googlemail.com>,
- from email dated 27, December 2008.
-
-Thu May 19 16:57:28 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Revised to reflect the reality
- that -d and -p don't allow a space before the file name.
- Thanks to Pat Rankin.
-
-Mon May 16 16:40:50 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Remove last vestiges of old PROCINFO sorting
- description.
-
-Mon May 9 15:58:33 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Finish array sorting and do a spell check.
-
-Fri May 6 13:21:20 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Finish edits after full read through.
- * gawk.1: Update array sorting information.
-
-Wed May 4 23:39:09 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Start at revamping array sorting doc. Still
- needs work.
-
-Wed Apr 27 21:49:23 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Minor edit.
- * awkcard.in: Document third arg to asort and asorti.
-
-Thu Apr 7 21:55:27 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Nextfile Function): Removed, along with all references,
- since only gawk and MKS awk allow next from a function, so this
- function was useless for most people. Strange that noone noticed.
- I wonder who really reads the doc?
-
- Lots of other fixes have been going in too.
-
-Sun Mar 27 21:10:55 2011 Pat Rankin <rankin@pactechdata.com>
-
- * gawk.texi (Builit-in Variables: PROCINFO array, Scanning All
- Elements of an Array: `for' statement): Update the documentation
- for PROCINFO["sorted_in"]; add "ascending index number",
- "descending index string", "ascending value", and "descending
- value" as supported sort orderings.
- * gawk.1 (PROCINFO array): Update PROCINFO["sorted_in"] to
- reflect that the value matters, and list the supported sort orders.
-
-Tue Feb 15 17:11:26 2011 Pat Rankin <rankin@pactechdata.com>
-
- * gawk.texi (Builit-in Variables: PROCINFO array, Scanning All
- Elements of an Array: `for' statement): Document that the value
- of PROCINFO["sorted_in"] matters; sort orders "ascending index
- string", "descending index string", and "unsorted" are supported.
-
-Sun Feb 13 19:58:35 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in, gawk.1, gawk.texi, gawkinet.texi: Fix typos
- and spelling errors.
-
-Thu Feb 10 21:48:18 2011 Pat Rankin <rankin@pactechdata.com>
-
- * gawk.texi: Update VMS section.
-
-Thu Feb 10 21:31:36 2011 Andreas Buening <andreas.buening@nexgo.de>
-
- * gawk.texi: Update OS/2 information.
-
-Thu Feb 10 21:06:14 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * lflashlight-small.xpic: Renamed from lflashlight.small.xpic.
- * rflashlight-small.xpic: Renamed from rflashlight.small.xpic.
- * Makefile.am (EXTRA_DIST): Adjusted.
-
-Tue Feb 1 10:21:22 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, awkcard.in, gawk.1: Document isarray function,
- magic string in PROCINFO for array sorting. Needs a little
- more work in gawk.texi.
-
-Mon Jan 10 21:52:21 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * lflashlight.small.xpic, rflashlight.small.xpic: Original
- source files for flashlight files from xpic tool.
- It only took over 10 years to put them into the dist.
- * Makefile.am (EXTRA_DIST): Add the new files.
-
-Thu Jan 6 22:13:11 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Replace xpic figures in Appendix D with figures
- from xfig.
- * general-program.eps, general-program.fig, general-program.pdf,
- process-flow.eps, process-flow.fig, process-flow.pdf: New files.
- * Makefile.am (EXTRA_DIST): Add the new files.
-
-Wed Jan 5 14:33:51 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Sanitize making of different PDF files.
-
-Sun Jan 2 20:30:37 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Update to latest from texinfo CVS repository.
-
-Tue Dec 28 21:46:21 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * README.DGAWK: Removed, since there is now a chapter on the
- debugger.
- * Makefile.am (EXTRA_DIST): Remove README.DGAWK.
-
-Tue Dec 28 07:13:20 2010 John Haque <j.eh@mchsi.com>
-
- * gawk.texi: Update dgawk examples. Document condition command
- without an expression. Fix a typo.
-
-Tue Dec 21 10:06:05 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (pdf): Renamed from `all-pdf'. Much more logical
- and easier to remember.
-
-Sat Dec 18 20:14:58 2010 Eli Zaretskii <eliz@gnu.org>
-
- * gawk.texi (DOS Quoting): Fix a typo.
- (Top, PC Installation): Remove "PC Dynamic" from the menus.
- (PC Installation, PC Compiling, PC Using): Remove obsolete stuff.
- Fix whitespace between sentences. Add indexing.
- (PC Testing): New node, stuff moved from "PC Compiling".
- (PC Dynamic): Node removed.
- (Cygwin): Fix wording.
- (MSYS): Fix whitespace between sentences.
-
-Thu Dec 9 22:27:53 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in, gawk.1, gawk.texi, gawkinet.texi: Remove discussion
- of raw option in making sockets, since it was never implemented.
-
-Wed Dec 1 21:39:15 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in, gawk.1: Document arrays of arrays.
- * gawk.texi: General progress.
-
-Mon Nov 8 22:24:21 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Minor fix from Jari Aalto <jari.aalto@cante.net>
- to help Emacs fontification.
-
-Tue Nov 2 12:15:56 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in, gawk.1, gawk.texi: --lint --> -L,
- --lint-old --> -t.
-
-Mon Nov 1 22:01:26 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in, gawk.1, gawk.texi: -l renamed -t.
-
-Sat Oct 30 05:53:25 2010 John Haque <j.eh@mchsi.com>
-
- * gawk.texi: Added section on Array of Arrays.
-
-Sat Oct 23 20:36:58 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Updated, cleaned up.
- * gawk.1: Updated, some clean up.
-
-Wed Sep 22 05:29:43 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Added section on @include files.
-
-Wed Aug 18 22:14:19 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Minor edits.
- * Makefile.am (LN): Use `ln -f' when installing link for
- pgawk.1. Thanks to Peter Breitenlohner <peb@mppmu.mpg.de>.
-
-Thu Jul 1 21:29:25 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Document `/inet4' and `/inet6'.
-
-Sun Jun 27 21:58:47 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Document all short options.
-
-Wed Jun 2 22:06:22 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Document FPAT variable and patsplit
- function.
-
-Fri Jun 12 13:28:24 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1: Remove --disable-directories-fatal configuration
- option.
-
-Thu Feb 26 20:36:18 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Document BEGINFILE and ENDFILE.
-
-Mon Feb 16 21:53:22 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Document switch statements as always available.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Thu Feb 12 22:36:32 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Document that interval expressions are now on by default.
- Also that --gen-po is now --gen-pot.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Sat Jan 17 20:03:43 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Document indirect function calls.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Tue Dec 30 22:22:04 2008 Assaf Gordon <gordon@cshl.edu>
-
- * gawk.texi: Document new --sandbox option.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Tue Dec 30 22:21:11 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Change --binary to --characters-as-bytes, per Karl Berry.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Thu Dec 18 05:30:13 2008 Steffen Schuler <schuler.steffen@googlemail.com>
-
- * gawk.texi: Documented fourth parameter of split().
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Thu Dec 18 05:16:48 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Minimally document `-b' / --binary.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Sun Nov 16 22:03:50 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Fully documented `-r' as synonym for --re-interval.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Tue Aug 3 13:35:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Document that gawk now uses the 2001 POSIX
- rules for `sub' and `gsub'.
-
-Wed Dec 26 22:15:05 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Documented that process special files are gone.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Tue Apr 20 11:48:31 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Update to latest from texinfo git repository.
- * gawk.texi, gawk.1, awkcard.in: Update version and copyright dates.
-
-Thu Mar 25 21:51:58 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Clarify the socket timeout environment variables.
-
-Wed Mar 10 21:28:12 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Reworded 'index in array' so that there's no chance of
- someone using 'index' as a real subscript. Thanks to Hermann
- Peifer for the push.
-
-Thu Feb 4 20:54:48 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Multiple cleanups and bringing of things up to date.
- * gawk.1: Ditto, only not as much.
- * Makefile.am: New `all-pdf' target to make PDF files of manpage
- and reference card.
-
-Tue Aug 4 06:07:35 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Document that 0 flag in
- printf applies only to the numeric formats.
-
-Tue Aug 4 05:58:52 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to current version.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Tue Jul 21 22:20:25 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, awkcard.in: Update mawk site information now
- that Thomas Dickey is maintaining it.
-
-Mon Jul 13 07:53:32 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (SEDME2): New macro, used in making awkcard.ps,
- removes last empty page. Finally!
-
-Fri Jul 10 10:35:29 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Rearrange items for better formatting and
- organization.
- * gawk.texi (Exit Status): New node to document exit values.
- (Exit Statement): Give portability advice about exit value.
-
-Wed Jul 8 08:55:50 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Really fix table option for --verbose. Other
- fixes and improvements, including document %'d flag.
-
-Tue Jul 7 09:13:02 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Fix table option for --verbose.
-
-Mon Jun 8 00:40:26 2009 Tommi Vainikainen <thv@iki.fi>
-
- * gawk.1: Bug fix to restore space between paragraphs at
- entry for "--".
-
-Thu May 21 21:09:59 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1, awkcard.in: Document new -O / --optimize option.
- * gawk.texi (Options): Likewise.
-
-Fri May 15 14:34:37 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (User-defined): Document that you can't use
- the name of a built-in variable as a function parameter.
-
-Sat May 2 23:36:10 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Other Versions): Add Quiktrim awk.
- (How to Contribute): Change things to point to awk.info.
-
-Mon Apr 6 22:29:47 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Bell Labs awk also supports fflush()
- and fflush(""). Thanks to Steffen Schuler
- <schuler.steffen@googlemail.com>.
-
-Mon Mar 30 21:26:04 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Simple Server): Fix bug since 3.1.0 where error
- message from typo was in the middle of the HandleGet function.
- Thanks to Tim Menzies for catching this.
-
-Mon Feb 9 22:11:16 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Translate Program): Bug fix in stranslate
- function from Steffen Schuler <schuler.steffen@googlemail.com>.
-
-Tue Feb 3 22:06:10 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Regexp Field Splitting): Documented dark corner
- of ^ in FS.
-
-Sat Jan 17 20:37:12 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Plain Getline): Bug fix in code. Thanks to
- Steffen Schuler <schuler.steffen@googlemail.com>.
-
-Mon Jan 5 22:47:42 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1, awkcard.in: Document that getline returns 1
- on sucess. Thanks to Paolo <oopla@users.sf.net> for
- the report.
-
-Fri Dec 26 14:45:39 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawkinet.texi: Update to FDL 1.3.
-
-Mon Dec 1 21:20:39 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (File Checking): Correct the text at the end; getline
- isn't fatal, period, not related to POSIX. Thanks to
- Seb <sbb@tuxfamily.org> for pointing this out.
- (Round-Function): Change initial return when equal to return ival,
- which lops off any digits, e.g. if given 121.0. Thanks to
- Timothy J. Stefanski <TJStefanski@magellanhealth.com>.
-
-Fri Aug 1 17:34:55 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Signature Program): Added new subsection.
-
-Thu Jul 31 21:38:08 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Variable Typing): Document that array elements created
- by `match' also get strnum attribute.
-
-Mon Jun 2 22:47:08 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Control Letters): Add a note about %c only
- taking values from 0 to 255.
- (DOS Quoting): New node.
-
-Thu Jan 31 16:17:27 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawkinet.texi: Updated the Back-Cover text per
- latest from the FSF.
-
-Fri Jan 25 12:13:39 2008 Dave Pitts <dpitts@cozx.com>
-
- * gawk.texi (pwcat.c, grcat.c): Added ZOS_USS changes.
-
-Mon Jan 14 05:30:16 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Add maintainer contact info for z/OS.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Fri Oct 19 04:13:33 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Add length(array) to list of extensions at end.
- Revise date.
-
-Thu Oct 18 08:40:59 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version from Texinfo 4.11.
-
-Sun Oct 14 20:37:59 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Fix version numbers and copyright info, minor
- cleanups to format nicely.
-
-Sun Sep 30 22:30:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Conversion): Add table describing locale decimal
- point versus period.
-
-Sat Sep 8 23:53:46 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: A number of minor fixes based on suggestions
- from Jack Kelley <Jack.Kelley@epa.qld.gov.au>.
-
-Sat Aug 11 22:46:14 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Copying): Move to GPL 3.
-
-Wed May 30 17:11:19 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (CLEANFILES): Added, so that even "make distclean"
- will do the right thing.
- (clean): Removed, let automake to do it.
-
-Tue May 29 22:49:16 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Document --use-lc-numeric. Document that some
- VMS systems come with an old version of gawk.
-
-Mon May 28 08:21:51 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1, awkcard.in: Document --use-lc-numeric.
-
-Tue May 15 13:27:38 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1: Documented --disable-directories-fatal
- configure option.
-
-Wed May 9 21:50:44 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Reviewed and updated, minor typos fixed.
- * awkcard.in: Added mention of %F.
-
-Wed May 2 19:55:02 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Cleaned up discussion of string concatenation
- where needed, including a note about the mixed treatment
- of `"echo " "date" | getline'. Sigh.
-
-Sun Apr 29 13:33:27 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Time Functions): Update description of strftime
- for third utc-flag argument. Other minor fixes.
- * gawk.1, awkcard.in: Same.
-
-Tue Apr 3 22:47:40 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (New Ports): Update list of files for all of
- regex that should not be messed with lightly.
-
-Wed Mar 21 09:02:53 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Removed last vestiges of arnold@gnu.org
- email address.
-
-Wed Mar 7 13:06:31 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Getopt Function): Add a note that user level
- code must clear out ARGV from 1 to Optind.
- Thanks to Matthew.Hall1@VerizonWireless.com, from mail
- dated Tue, 02 Aug 2005 09:04:37 -0700.
-
-Wed Mar 7 08:48:02 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Fix my personal email address. Sheesh.
- Thanks again to Sahak Petrosyan <petrosyan@gmail.com>.
-
-Tue Mar 6 09:13:38 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Fix link to online version of the manual.
- Thanks to Sahak Petrosyan <petrosyan@gmail.com>.
-
-Wed Feb 14 19:40:33 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Add discussion of magic values for Inf, NaN,
- and hexadecimal floating point in appendix on numbers.
- Other minor updates for date, trademarks, etc.
-
-Sun Jan 21 12:59:33 2007 "Ennio-(Sr)" <ennio@WouldBe-ei.net>
-
- * gawk.1: Add note that locale settings can influence the
- choice of decimal point character.
-
-Sat Jan 13 22:43:39 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * gawk.texi: Fix some typos.
- * gawkinet.texi: Likewise.
-
-Sat Jan 13 21:25:28 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * awkcard.in: next is POSIX.
- * gawk.texi: V7/SVR3.1: Mention assignable `$0', `var in index'
- as expression. Specify `FS' limitation.
-
-Fri Jan 12 12:28:51 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated upon move to current autotools.
-
-Thu Jan 4 19:56:45 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Applied patch from Eric Raymond to stop his stupid
- automated email kvetching about the wonders of docbook.
-
-2006-07-29 Paul Eggert <eggert@cs.ucla.edu>
-
- * gawk.texi: Document that `$$0++--' isn't valid even though it
- is unambiguous according to the Awk grammar. This is in response
- to Open Group XCU ERN 86
- <http://www.opengroup.org/austin/aardvark/latest/xcubug2.txt>.
-
-Fri Oct 21 12:50:19 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- Better support for PDF, thanks to Marty Leisner
- <leisner@rochester.rr.com> for the prodding.
-
- * Makefile.am: Add lflashlight.pdf, rflashlight.pdf, statist.pdf
- to EXTRADIST and add gawk.pdf and gawkinet.pdf to list of files
- to remove for `clean'.
- * lflashlight.pdf, rflashlight.pdf, statist.pdf: New files, created
- with `epstopdf foo.eps > foo.pdf'.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Sun Jun 26 16:24:07 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Document `length(array)'.
- * gawk.1: Ditto.
- * awkcard.in: Ditto.
-
-Mon May 23 20:56:32 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Removed references to `--with-included-gettext'.
-
-Fri Apr 1 06:25:30 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2005-01-30.17.
-
-Wed Feb 9 11:39:38 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Per Stepan Kasal, removed html rules, since
- Automake does it for us.
-
-Tue Jan 4 18:47:34 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2004-11-25.16.
-
-Mon Jan 3 14:09:57 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2004-10-31.06.
-
-Wed Sep 22 11:40:06 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1, gawk.texi, awkcard.in: Documented new --exec option.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Wed Jul 28 17:03:16 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (TROFF): Add -U flag to invocation. Makes it
- possible to format ref card from a build directory that isn't
- the source directory.
- (distclean): Removed target. Let automake handle it.
-
-Tue Jun 15 12:21:09 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2004-06-14.14.
- * gawk.texi (Dynamic Extensions): Text revised to follow
- current implementation: new APIs, info on `n->param_cnt'
- fixed.
-
- Also in all index entries where comma does not separate
- primary, secondary or tertiary terms, replaced the comma
- with @comma{} and removed the corresponding comments.
-
-Mon May 31 09:11:01 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * ad.block, awkcard.in, cardfonts, colors, no.colors: Change
- old email address to current one.
-
-Mon May 3 09:54:46 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version from Automake 1.8.4.
-
-Mon Mar 22 10:53:13 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated.
-
-Tue Jan 6 17:38:40 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated.
- * gawk.texi: All @strong{Note:} changed to `@quotation NOTE'.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Mon Jun 9 16:06:30 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Set automatic-xref-title and change all cross
- references to be of the single-argument type. Made all
- @node lines have just the node name.
-
- Should have done both of these years ago.
-
-Sun May 11 16:08:58 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (html, gawk.html, gawkinet.html): New targets.
-
-Mon Mar 31 17:15:23 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (install-data-hook, uninstall-hook): Added code to
- hard link gawk.1 to pgawk.1 upon install and remove pgawk.1 upon
- uninstall. Avoids MANPATH search problems, etc. etc.
- (man_MANS): Removed pgawk.1 from the list.
- * pgawk.1: Removed.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Tue Mar 11 11:22:36 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (man_MANS): Add pgawk.1.
- * pgawk.1: New file, does `.so gawk.1' so that `man pgawk' will work.
- Thanks to Nelson Beebe for pointing the need for this.
-
-Sun Feb 9 09:45:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawkinet.texi: Per Karl Berry, change dircategory
- to follow current standards. In gawkinet.texi, remove
- bracketing ifinfo.
-
-Thu Feb 6 12:06:22 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2003-02-03.16 from Texinfo 4.5.
-
-Tue Feb 4 15:21:46 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * awkcard.in: Redid the page-breaking.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Sun Jan 26 11:13:01 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2003-01-24.17 from prep.
- * gawk.texi: Documented asorti(), new elements in match() 3rd arg,
- misc cleanups. Updated to FDL 1.2.
- * awkcard.in, gawk.1: Ditto for asorti(), match().
- * gawkinet.texi: Updated to FDL 1.2.
-
-Thu Jan 16 18:34:54 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2003-01-12.11 from prep.
-
-Sun Nov 24 17:55:23 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2002-11-05.11 from Texinfo 4.3.
-
-Sun Nov 17 21:34:35 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 2002-10-13.14 from automake 1.7.1.
-
-Fri Nov 1 11:25:00 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- From Kaveh Ghazi:
-
- * gawk.texi (grcat.c): Include stdlib.h.
- (main): Fix format specifier warnings.
- * gawk.texi (pwcat.c): Include config.h/stdlib.h.
- (main): Fix format specifier warnings.
-
-Tue Jun 11 23:08:04 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Fix grcat code ifdef for HAVE_GETGRENT.
-
-2002-05-09 Paul Eggert <eggert@twinsun.com>
-
- [ ADR: Some minor post-patch editing was required. ]
-
- * gawk.texi (igawk): Do not put temporary files in /tmp, as that
- has some security problems. This fixes a problem originally
- reported by Jarno Huuskonen via solar@openwall.com.
-
- Fix the following problems with igawk while we're at it.
-
- * Report missing operands of options; this fixes e.g. an
- infinite loop with "igawk -W".
-
- * Check for --source and -Wsource only, not -.source (which matches
- errors). Similarly for other multichar options.
-
- * Do not use 'echo', as that mishandles backslashes.
-
-Mon May 13 01:25:40 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkinet.texi: Change `ifinfo' to `ifnottex' around
- the Top node. Thanks to Eli Zaretskii.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Tue Apr 16 13:26:13 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: FINALLY. All O'Reilly production and
- indexing changes integrated. Index reviewed and
- cleaned up.
- * gawkinet.texi: Ditto.
- * awkcard.in: Redid page breaking.
- * Makefile.am (clean): Add `awkcard.tr' to list of files
- that are removed.
- (distclean): Depend on clean to REALLY GET `awkcard.tr'.
- Sheesh.
-
-Mon Apr 15 14:43:51 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version from Texinfo 4.2.
- * gawk.texi: Modified to use new @copying command.
- * gawkinet.texi: Ditto.
-
-Wed Mar 20 17:07:50 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version from Texinfo 4.1.
-
-2002-02-10 Paul Eggert <eggert@twinsun.com>
-
- * gawk.texi (Word Sorting): Don't use sort +1, as POSIX 1003.1-2001
- no longer allows it. Use sort -k instead.
-
-2002-01-27 Bruno Haible <bruno@clisp.org>
-
- * gawk.texi: Document the dcngettext function.
- * awkcard.in: Likewise.
- * gawk.1: Likewise.
-
-Mon Jan 28 18:41:02 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkinet.texi, Makefile.am: Removed User Friendly cartoon.
- Sigh.
-
-Wed Dec 19 16:00:39 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * gawk.texi (Profiling): Describe the signals used for profile
- dumping in the DJGPP version.
-
-Mon Sep 3 18:30:13 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi (Top): Put in @ifnottex so that makeinfo
- --html is now happy.
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-Mon May 14 19:57:31 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawkinet.texi: Versions for distribution
- put in place.
- * gawk.1, awkcard.in: Minor edits for consistency of
- usage, formatting.
-
-Wed Nov 22 14:57:59 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Removed all documentation
- of abort.
-
-Sun Aug 13 11:23:50 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: documented sort function
- and optional third argument to match.
-
-Sun Aug 13 00:40:41 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: hardwired publisher info.
- * publisher.texi: Removed. Not needed any more.
- * gawkinet.texi: Added title page stuff.
-
-Thu Jul 5 21:05:57 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: moved to use of @command, @option everywhere
- appropriate. Removed all @page and @group in anticipation
- of re-page breaking. Updated stuff for install-info.
- Added FDL.
-
-Tue Nov 10 11:42:26 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * publisher.texi: new file with publisher related info.
- * Makefile.in: updated dvi and postscript targets to make
- them lots smarter about not reformatting if need be.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed May 17 19:04:54 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi, gawk.1, awkcard.in: Documented %u. Ooops.
-
-Tue May 2 11:44:13 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * texinfo.tex: Updated to version 1999-10-01.07.
- * gawk.texi: Redid page breaking for new texinfo.tex.
-
-Thu Apr 6 12:32:49 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: Change info dir file entry to `(gawk)' from
- `(gawk.info)'.
- * Makefile.in [$(infodir)/gawk.info]: Fix grep test is
- accordance with above.
-
-Sun Feb 13 15:36:32 2000 Paul Eggert <eggert@twinsun.com>
-
- * gawk.texi: Mention that arithmetic is done in double
- precision floating point, and point to Goldberg's paper for
- people who want to know more. Fix some other minor floating
- point discussion issues.
-
-Wed Nov 3 17:04:35 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.1: Lots of troff ``lint'' from Paul Eggert. Not all
- of his changes, just the ones I thought worth doing.
-
-Mon Oct 11 16:53:54 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (gawk.dvi): Put $(srcdir) first in TEXINPUTS,
- and also just use texi2dvi, don't run texindex and tex
- manually. Doing so is no longer necessary.
-
-Mon Aug 9 13:06:01 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.texi: New node `Array Efficiency' on the best use
- of subscripting to avoid memory bloat.
-
-Thu Jul 29 23:15:34 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in ($(infodir)/gawk.info): Removed loop around
- $(INSTALL_DATA), since there's only one Info file to install,
- install it directly.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Wed Oct 7 21:59:33 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * texinfo.tex: Updated to version 2.227, from Texinfo 3.12.
-
-Sun Oct 19 12:26:08 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * ALL: change references to arnold@gnu.ai.mit.edu to arnold@gnu.org.
-
-Tue Sep 23 10:31:17 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * texinfo.tex: Updated to version 2.218, from Texinfo 3.11.
-
-Fri Jul 4 08:19:00 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in ($(infodir)/gawk.info): Don't make dependent upon
- gawk.info, in case installed one is newer. Instead, check that
- an installed gawk.info exists and is identical to current one.
- If so, just exit; otherwise do the install.
-
-Wed Jul 2 14:55:12 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in ($(infodir)/gawk.info): typo fix.
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Sun Apr 13 15:39:20 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in ($(infodir)/gawk.info): exit 0 in case install-info
- fails.
-
-Thu Jan 2 23:17:53 1997 Fred Fish <fnf@ninemoons.com>
-
- * Makefile.in (awkcard.tr): Use ':' chars to separate parts of
- sed command, since $(srcdir) may expand to something with '/'
- characters in it, which confuses sed terribly.
- * gawk.texi (Amiga Installation): Note change of configuration
- from "m68k-cbm-amigados" to "m68k-amigaos". Point ftp users
- towards current ADE distribution and not obsolete Aminet
- "gcc" distribution. Change "FreshFish" to "Geek Gadgets".
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Wed Dec 25 11:17:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in ($(mandir)/igawk$(manext),$(mandir)/gawk$(manext)):
- remove chmod command; let $(INSTALL_DATA) use -m.
-
-Tue Dec 17 22:38:28 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (gawk.info,gawk.dvi,postscript): run makeinfo, TeX,
- and/or troff against files in $(srcdir). Thanks to Ulrich Drepper.
- ($(infodir)/gawk.info): use --info-dir to install-info, not
- --infodir.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Mon Dec 9 12:48:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * no.colors: new file from Michal for old troffs.
- * Makefile.in [AWKCARD]: changes to parameterize old/new troff.
-
-Sun Dec 1 15:04:56 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * texinfo.tex: Updated to version 2.193, from Karl Berry.
-
-Tue Nov 26 22:57:15 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in ($(infodir)/gawk.info): Change option in call
- to `install-info' to `--info-dir' from `--infodir'.
-
-Mon Nov 4 13:30:39 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in: updates for reference card.
- (ad.block, awkcard.in, cardfonts, colors, macros, setter.outline):
- new files for reference card.
-
-Wed Oct 16 12:43:02 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * texinfo.tex: Updated to version 2.185, from texinfo-3.9 dist.
-
-Sun Aug 11 23:12:08 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in ($(infodir)/gawk.info): correct use of
- $(INSTALL_DATA) and remove chmod command.
-
-Thu Jul 11 22:06:50 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in ($(mandir)/gawk.$(ext), $(mandir)/igawk.$(ext)):
- made dependant on files in $(srcdir).
-
-Fri Mar 15 06:45:35 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (clean): add `*~' to list of files to be removed.
-
-Thu Jan 25 23:40:15 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (dvi): run texindex and tex an extra time.
- This gets the cross references right. Sigh.
-
-Wed Jan 24 11:51:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (maintainer-clean):
- Depend on distclean, not the other way around.
- Output warning message as per GNU standards.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/doc/ChangeLog.0 b/doc/ChangeLog.0
new file mode 100644
index 00000000..8b32325b
--- /dev/null
+++ b/doc/ChangeLog.0
@@ -0,0 +1,1032 @@
+Mon Jun 13 22:28:02 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document that POSIX now says [a-z] is undefined outside
+ the C and POSIX locales, so gawk treats it as the Good Lord intended
+ in all cases. Thanks to Paul Eggert for letting me know about this
+ and providing URLs to cite.
+
+Fri May 27 09:59:38 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, gawk.texi: Minor edits w.r.t. the bug reporting address.
+
+Wed May 25 22:03:53 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, gawk.texi: Straighten out owners of the different
+ Windows ports.
+
+Thu May 19 17:52:46 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Igawk, have pathto check for "-".
+ Thanks to Steffen Schuler <schuler.steffen@googlemail.com>,
+ from email dated 27, December 2008.
+
+Thu May 19 16:57:28 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Revised to reflect the reality
+ that -d and -p don't allow a space before the file name.
+ Thanks to Pat Rankin.
+
+Mon May 16 16:40:50 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Remove last vestiges of old PROCINFO sorting
+ description.
+
+Mon May 9 15:58:33 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Finish array sorting and do a spell check.
+
+Fri May 6 13:21:20 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Finish edits after full read through.
+ * gawk.1: Update array sorting information.
+
+Wed May 4 23:39:09 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Start at revamping array sorting doc. Still
+ needs work.
+
+Wed Apr 27 21:49:23 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Minor edit.
+ * awkcard.in: Document third arg to asort and asorti.
+
+Thu Apr 7 21:55:27 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Nextfile Function): Removed, along with all references,
+ since only gawk and MKS awk allow next from a function, so this
+ function was useless for most people. Strange that noone noticed.
+ I wonder who really reads the doc?
+
+ Lots of other fixes have been going in too.
+
+Sun Mar 27 21:10:55 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * gawk.texi (Builit-in Variables: PROCINFO array, Scanning All
+ Elements of an Array: `for' statement): Update the documentation
+ for PROCINFO["sorted_in"]; add "ascending index number",
+ "descending index string", "ascending value", and "descending
+ value" as supported sort orderings.
+ * gawk.1 (PROCINFO array): Update PROCINFO["sorted_in"] to
+ reflect that the value matters, and list the supported sort orders.
+
+Tue Feb 15 17:11:26 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * gawk.texi (Builit-in Variables: PROCINFO array, Scanning All
+ Elements of an Array: `for' statement): Document that the value
+ of PROCINFO["sorted_in"] matters; sort orders "ascending index
+ string", "descending index string", and "unsorted" are supported.
+
+Sun Feb 13 19:58:35 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in, gawk.1, gawk.texi, gawkinet.texi: Fix typos
+ and spelling errors.
+
+Thu Feb 10 21:48:18 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * gawk.texi: Update VMS section.
+
+Thu Feb 10 21:31:36 2011 Andreas Buening <andreas.buening@nexgo.de>
+
+ * gawk.texi: Update OS/2 information.
+
+Thu Feb 10 21:06:14 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * lflashlight-small.xpic: Renamed from lflashlight.small.xpic.
+ * rflashlight-small.xpic: Renamed from rflashlight.small.xpic.
+ * Makefile.am (EXTRA_DIST): Adjusted.
+
+Tue Feb 1 10:21:22 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, awkcard.in, gawk.1: Document isarray function,
+ magic string in PROCINFO for array sorting. Needs a little
+ more work in gawk.texi.
+
+Mon Jan 10 21:52:21 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * lflashlight.small.xpic, rflashlight.small.xpic: Original
+ source files for flashlight files from xpic tool.
+ It only took over 10 years to put them into the dist.
+ * Makefile.am (EXTRA_DIST): Add the new files.
+
+Thu Jan 6 22:13:11 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Replace xpic figures in Appendix D with figures
+ from xfig.
+ * general-program.eps, general-program.fig, general-program.pdf,
+ process-flow.eps, process-flow.fig, process-flow.pdf: New files.
+ * Makefile.am (EXTRA_DIST): Add the new files.
+
+Wed Jan 5 14:33:51 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Sanitize making of different PDF files.
+
+Sun Jan 2 20:30:37 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Update to latest from texinfo CVS repository.
+
+Tue Dec 28 21:46:21 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * README.DGAWK: Removed, since there is now a chapter on the
+ debugger.
+ * Makefile.am (EXTRA_DIST): Remove README.DGAWK.
+
+Tue Dec 28 07:13:20 2010 John Haque <j.eh@mchsi.com>
+
+ * gawk.texi: Update dgawk examples. Document condition command
+ without an expression. Fix a typo.
+
+Tue Dec 21 10:06:05 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (pdf): Renamed from `all-pdf'. Much more logical
+ and easier to remember.
+
+Sat Dec 18 20:14:58 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * gawk.texi (DOS Quoting): Fix a typo.
+ (Top, PC Installation): Remove "PC Dynamic" from the menus.
+ (PC Installation, PC Compiling, PC Using): Remove obsolete stuff.
+ Fix whitespace between sentences. Add indexing.
+ (PC Testing): New node, stuff moved from "PC Compiling".
+ (PC Dynamic): Node removed.
+ (Cygwin): Fix wording.
+ (MSYS): Fix whitespace between sentences.
+
+Thu Dec 9 22:27:53 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in, gawk.1, gawk.texi, gawkinet.texi: Remove discussion
+ of raw option in making sockets, since it was never implemented.
+
+Wed Dec 1 21:39:15 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in, gawk.1: Document arrays of arrays.
+ * gawk.texi: General progress.
+
+Mon Nov 8 22:24:21 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Minor fix from Jari Aalto <jari.aalto@cante.net>
+ to help Emacs fontification.
+
+Tue Nov 2 12:15:56 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in, gawk.1, gawk.texi: --lint --> -L,
+ --lint-old --> -t.
+
+Mon Nov 1 22:01:26 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in, gawk.1, gawk.texi: -l renamed -t.
+
+Sat Oct 30 05:53:25 2010 John Haque <j.eh@mchsi.com>
+
+ * gawk.texi: Added section on Array of Arrays.
+
+Sat Oct 23 20:36:58 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Updated, cleaned up.
+ * gawk.1: Updated, some clean up.
+
+Wed Sep 22 05:29:43 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Added section on @include files.
+
+Wed Aug 18 22:14:19 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Minor edits.
+ * Makefile.am (LN): Use `ln -f' when installing link for
+ pgawk.1. Thanks to Peter Breitenlohner <peb@mppmu.mpg.de>.
+
+Thu Jul 1 21:29:25 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Document `/inet4' and `/inet6'.
+
+Sun Jun 27 21:58:47 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Document all short options.
+
+Wed Jun 2 22:06:22 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Document FPAT variable and patsplit
+ function.
+
+Fri Jun 12 13:28:24 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1: Remove --disable-directories-fatal configuration
+ option.
+
+Thu Feb 26 20:36:18 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Document BEGINFILE and ENDFILE.
+
+Mon Feb 16 21:53:22 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document switch statements as always available.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Thu Feb 12 22:36:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document that interval expressions are now on by default.
+ Also that --gen-po is now --gen-pot.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Sat Jan 17 20:03:43 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document indirect function calls.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Tue Dec 30 22:22:04 2008 Assaf Gordon <gordon@cshl.edu>
+
+ * gawk.texi: Document new --sandbox option.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Tue Dec 30 22:21:11 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Change --binary to --characters-as-bytes, per Karl Berry.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Thu Dec 18 05:30:13 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * gawk.texi: Documented fourth parameter of split().
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Thu Dec 18 05:16:48 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Minimally document `-b' / --binary.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Sun Nov 16 22:03:50 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Fully documented `-r' as synonym for --re-interval.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Tue Aug 3 13:35:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document that gawk now uses the 2001 POSIX
+ rules for `sub' and `gsub'.
+
+Wed Dec 26 22:15:05 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Documented that process special files are gone.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Tue Apr 20 11:48:31 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Update to latest from texinfo git repository.
+ * gawk.texi, gawk.1, awkcard.in: Update version and copyright dates.
+
+Thu Mar 25 21:51:58 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Clarify the socket timeout environment variables.
+
+Wed Mar 10 21:28:12 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Reworded 'index in array' so that there's no chance of
+ someone using 'index' as a real subscript. Thanks to Hermann
+ Peifer for the push.
+
+Thu Feb 4 20:54:48 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Multiple cleanups and bringing of things up to date.
+ * gawk.1: Ditto, only not as much.
+ * Makefile.am: New `all-pdf' target to make PDF files of manpage
+ and reference card.
+
+Tue Aug 4 06:07:35 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Document that 0 flag in
+ printf applies only to the numeric formats.
+
+Tue Aug 4 05:58:52 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to current version.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Tue Jul 21 22:20:25 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, awkcard.in: Update mawk site information now
+ that Thomas Dickey is maintaining it.
+
+Mon Jul 13 07:53:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (SEDME2): New macro, used in making awkcard.ps,
+ removes last empty page. Finally!
+
+Fri Jul 10 10:35:29 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Rearrange items for better formatting and
+ organization.
+ * gawk.texi (Exit Status): New node to document exit values.
+ (Exit Statement): Give portability advice about exit value.
+
+Wed Jul 8 08:55:50 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Really fix table option for --verbose. Other
+ fixes and improvements, including document %'d flag.
+
+Tue Jul 7 09:13:02 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Fix table option for --verbose.
+
+Mon Jun 8 00:40:26 2009 Tommi Vainikainen <thv@iki.fi>
+
+ * gawk.1: Bug fix to restore space between paragraphs at
+ entry for "--".
+
+Thu May 21 21:09:59 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, awkcard.in: Document new -O / --optimize option.
+ * gawk.texi (Options): Likewise.
+
+Fri May 15 14:34:37 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (User-defined): Document that you can't use
+ the name of a built-in variable as a function parameter.
+
+Sat May 2 23:36:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Other Versions): Add Quiktrim awk.
+ (How to Contribute): Change things to point to awk.info.
+
+Mon Apr 6 22:29:47 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Bell Labs awk also supports fflush()
+ and fflush(""). Thanks to Steffen Schuler
+ <schuler.steffen@googlemail.com>.
+
+Mon Mar 30 21:26:04 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Simple Server): Fix bug since 3.1.0 where error
+ message from typo was in the middle of the HandleGet function.
+ Thanks to Tim Menzies for catching this.
+
+Mon Feb 9 22:11:16 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Translate Program): Bug fix in stranslate
+ function from Steffen Schuler <schuler.steffen@googlemail.com>.
+
+Tue Feb 3 22:06:10 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Regexp Field Splitting): Documented dark corner
+ of ^ in FS.
+
+Sat Jan 17 20:37:12 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Plain Getline): Bug fix in code. Thanks to
+ Steffen Schuler <schuler.steffen@googlemail.com>.
+
+Mon Jan 5 22:47:42 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, awkcard.in: Document that getline returns 1
+ on sucess. Thanks to Paolo <oopla@users.sf.net> for
+ the report.
+
+Fri Dec 26 14:45:39 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawkinet.texi: Update to FDL 1.3.
+
+Mon Dec 1 21:20:39 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (File Checking): Correct the text at the end; getline
+ isn't fatal, period, not related to POSIX. Thanks to
+ Seb <sbb@tuxfamily.org> for pointing this out.
+ (Round-Function): Change initial return when equal to return ival,
+ which lops off any digits, e.g. if given 121.0. Thanks to
+ Timothy J. Stefanski <TJStefanski@magellanhealth.com>.
+
+Fri Aug 1 17:34:55 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Signature Program): Added new subsection.
+
+Thu Jul 31 21:38:08 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Variable Typing): Document that array elements created
+ by `match' also get strnum attribute.
+
+Mon Jun 2 22:47:08 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Control Letters): Add a note about %c only
+ taking values from 0 to 255.
+ (DOS Quoting): New node.
+
+Thu Jan 31 16:17:27 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawkinet.texi: Updated the Back-Cover text per
+ latest from the FSF.
+
+Fri Jan 25 12:13:39 2008 Dave Pitts <dpitts@cozx.com>
+
+ * gawk.texi (pwcat.c, grcat.c): Added ZOS_USS changes.
+
+Mon Jan 14 05:30:16 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Add maintainer contact info for z/OS.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Fri Oct 19 04:13:33 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Add length(array) to list of extensions at end.
+ Revise date.
+
+Thu Oct 18 08:40:59 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version from Texinfo 4.11.
+
+Sun Oct 14 20:37:59 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Fix version numbers and copyright info, minor
+ cleanups to format nicely.
+
+Sun Sep 30 22:30:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Conversion): Add table describing locale decimal
+ point versus period.
+
+Sat Sep 8 23:53:46 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: A number of minor fixes based on suggestions
+ from Jack Kelley <Jack.Kelley@epa.qld.gov.au>.
+
+Sat Aug 11 22:46:14 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Copying): Move to GPL 3.
+
+Wed May 30 17:11:19 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (CLEANFILES): Added, so that even "make distclean"
+ will do the right thing.
+ (clean): Removed, let automake to do it.
+
+Tue May 29 22:49:16 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document --use-lc-numeric. Document that some
+ VMS systems come with an old version of gawk.
+
+Mon May 28 08:21:51 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, awkcard.in: Document --use-lc-numeric.
+
+Tue May 15 13:27:38 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1: Documented --disable-directories-fatal
+ configure option.
+
+Wed May 9 21:50:44 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Reviewed and updated, minor typos fixed.
+ * awkcard.in: Added mention of %F.
+
+Wed May 2 19:55:02 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Cleaned up discussion of string concatenation
+ where needed, including a note about the mixed treatment
+ of `"echo " "date" | getline'. Sigh.
+
+Sun Apr 29 13:33:27 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Time Functions): Update description of strftime
+ for third utc-flag argument. Other minor fixes.
+ * gawk.1, awkcard.in: Same.
+
+Tue Apr 3 22:47:40 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (New Ports): Update list of files for all of
+ regex that should not be messed with lightly.
+
+Wed Mar 21 09:02:53 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Removed last vestiges of arnold@gnu.org
+ email address.
+
+Wed Mar 7 13:06:31 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Getopt Function): Add a note that user level
+ code must clear out ARGV from 1 to Optind.
+ Thanks to Matthew.Hall1@VerizonWireless.com, from mail
+ dated Tue, 02 Aug 2005 09:04:37 -0700.
+
+Wed Mar 7 08:48:02 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Fix my personal email address. Sheesh.
+ Thanks again to Sahak Petrosyan <petrosyan@gmail.com>.
+
+Tue Mar 6 09:13:38 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Fix link to online version of the manual.
+ Thanks to Sahak Petrosyan <petrosyan@gmail.com>.
+
+Wed Feb 14 19:40:33 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Add discussion of magic values for Inf, NaN,
+ and hexadecimal floating point in appendix on numbers.
+ Other minor updates for date, trademarks, etc.
+
+Sun Jan 21 12:59:33 2007 "Ennio-(Sr)" <ennio@WouldBe-ei.net>
+
+ * gawk.1: Add note that locale settings can influence the
+ choice of decimal point character.
+
+Sat Jan 13 22:43:39 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * gawk.texi: Fix some typos.
+ * gawkinet.texi: Likewise.
+
+Sat Jan 13 21:25:28 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * awkcard.in: next is POSIX.
+ * gawk.texi: V7/SVR3.1: Mention assignable `$0', `var in index'
+ as expression. Specify `FS' limitation.
+
+Fri Jan 12 12:28:51 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated upon move to current autotools.
+
+Thu Jan 4 19:56:45 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Applied patch from Eric Raymond to stop his stupid
+ automated email kvetching about the wonders of docbook.
+
+2006-07-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ * gawk.texi: Document that `$$0++--' isn't valid even though it
+ is unambiguous according to the Awk grammar. This is in response
+ to Open Group XCU ERN 86
+ <http://www.opengroup.org/austin/aardvark/latest/xcubug2.txt>.
+
+Fri Oct 21 12:50:19 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ Better support for PDF, thanks to Marty Leisner
+ <leisner@rochester.rr.com> for the prodding.
+
+ * Makefile.am: Add lflashlight.pdf, rflashlight.pdf, statist.pdf
+ to EXTRADIST and add gawk.pdf and gawkinet.pdf to list of files
+ to remove for `clean'.
+ * lflashlight.pdf, rflashlight.pdf, statist.pdf: New files, created
+ with `epstopdf foo.eps > foo.pdf'.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Sun Jun 26 16:24:07 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Document `length(array)'.
+ * gawk.1: Ditto.
+ * awkcard.in: Ditto.
+
+Mon May 23 20:56:32 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Removed references to `--with-included-gettext'.
+
+Fri Apr 1 06:25:30 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2005-01-30.17.
+
+Wed Feb 9 11:39:38 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Per Stepan Kasal, removed html rules, since
+ Automake does it for us.
+
+Tue Jan 4 18:47:34 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2004-11-25.16.
+
+Mon Jan 3 14:09:57 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2004-10-31.06.
+
+Wed Sep 22 11:40:06 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1, gawk.texi, awkcard.in: Documented new --exec option.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Wed Jul 28 17:03:16 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (TROFF): Add -U flag to invocation. Makes it
+ possible to format ref card from a build directory that isn't
+ the source directory.
+ (distclean): Removed target. Let automake handle it.
+
+Tue Jun 15 12:21:09 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2004-06-14.14.
+ * gawk.texi (Dynamic Extensions): Text revised to follow
+ current implementation: new APIs, info on `n->param_cnt'
+ fixed.
+
+ Also in all index entries where comma does not separate
+ primary, secondary or tertiary terms, replaced the comma
+ with @comma{} and removed the corresponding comments.
+
+Mon May 31 09:11:01 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ad.block, awkcard.in, cardfonts, colors, no.colors: Change
+ old email address to current one.
+
+Mon May 3 09:54:46 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version from Automake 1.8.4.
+
+Mon Mar 22 10:53:13 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated.
+
+Tue Jan 6 17:38:40 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated.
+ * gawk.texi: All @strong{Note:} changed to `@quotation NOTE'.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Mon Jun 9 16:06:30 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Set automatic-xref-title and change all cross
+ references to be of the single-argument type. Made all
+ @node lines have just the node name.
+
+ Should have done both of these years ago.
+
+Sun May 11 16:08:58 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (html, gawk.html, gawkinet.html): New targets.
+
+Mon Mar 31 17:15:23 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (install-data-hook, uninstall-hook): Added code to
+ hard link gawk.1 to pgawk.1 upon install and remove pgawk.1 upon
+ uninstall. Avoids MANPATH search problems, etc. etc.
+ (man_MANS): Removed pgawk.1 from the list.
+ * pgawk.1: Removed.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Tue Mar 11 11:22:36 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (man_MANS): Add pgawk.1.
+ * pgawk.1: New file, does `.so gawk.1' so that `man pgawk' will work.
+ Thanks to Nelson Beebe for pointing the need for this.
+
+Sun Feb 9 09:45:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawkinet.texi: Per Karl Berry, change dircategory
+ to follow current standards. In gawkinet.texi, remove
+ bracketing ifinfo.
+
+Thu Feb 6 12:06:22 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2003-02-03.16 from Texinfo 4.5.
+
+Tue Feb 4 15:21:46 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * awkcard.in: Redid the page-breaking.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Sun Jan 26 11:13:01 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2003-01-24.17 from prep.
+ * gawk.texi: Documented asorti(), new elements in match() 3rd arg,
+ misc cleanups. Updated to FDL 1.2.
+ * awkcard.in, gawk.1: Ditto for asorti(), match().
+ * gawkinet.texi: Updated to FDL 1.2.
+
+Thu Jan 16 18:34:54 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2003-01-12.11 from prep.
+
+Sun Nov 24 17:55:23 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2002-11-05.11 from Texinfo 4.3.
+
+Sun Nov 17 21:34:35 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 2002-10-13.14 from automake 1.7.1.
+
+Fri Nov 1 11:25:00 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ From Kaveh Ghazi:
+
+ * gawk.texi (grcat.c): Include stdlib.h.
+ (main): Fix format specifier warnings.
+ * gawk.texi (pwcat.c): Include config.h/stdlib.h.
+ (main): Fix format specifier warnings.
+
+Tue Jun 11 23:08:04 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Fix grcat code ifdef for HAVE_GETGRENT.
+
+2002-05-09 Paul Eggert <eggert@twinsun.com>
+
+ [ ADR: Some minor post-patch editing was required. ]
+
+ * gawk.texi (igawk): Do not put temporary files in /tmp, as that
+ has some security problems. This fixes a problem originally
+ reported by Jarno Huuskonen via solar@openwall.com.
+
+ Fix the following problems with igawk while we're at it.
+
+ * Report missing operands of options; this fixes e.g. an
+ infinite loop with "igawk -W".
+
+ * Check for --source and -Wsource only, not -.source (which matches
+ errors). Similarly for other multichar options.
+
+ * Do not use 'echo', as that mishandles backslashes.
+
+Mon May 13 01:25:40 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkinet.texi: Change `ifinfo' to `ifnottex' around
+ the Top node. Thanks to Eli Zaretskii.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Tue Apr 16 13:26:13 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: FINALLY. All O'Reilly production and
+ indexing changes integrated. Index reviewed and
+ cleaned up.
+ * gawkinet.texi: Ditto.
+ * awkcard.in: Redid page breaking.
+ * Makefile.am (clean): Add `awkcard.tr' to list of files
+ that are removed.
+ (distclean): Depend on clean to REALLY GET `awkcard.tr'.
+ Sheesh.
+
+Mon Apr 15 14:43:51 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version from Texinfo 4.2.
+ * gawk.texi: Modified to use new @copying command.
+ * gawkinet.texi: Ditto.
+
+Wed Mar 20 17:07:50 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version from Texinfo 4.1.
+
+2002-02-10 Paul Eggert <eggert@twinsun.com>
+
+ * gawk.texi (Word Sorting): Don't use sort +1, as POSIX 1003.1-2001
+ no longer allows it. Use sort -k instead.
+
+2002-01-27 Bruno Haible <bruno@clisp.org>
+
+ * gawk.texi: Document the dcngettext function.
+ * awkcard.in: Likewise.
+ * gawk.1: Likewise.
+
+Mon Jan 28 18:41:02 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkinet.texi, Makefile.am: Removed User Friendly cartoon.
+ Sigh.
+
+Wed Dec 19 16:00:39 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * gawk.texi (Profiling): Describe the signals used for profile
+ dumping in the DJGPP version.
+
+Mon Sep 3 18:30:13 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi (Top): Put in @ifnottex so that makeinfo
+ --html is now happy.
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+Mon May 14 19:57:31 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawkinet.texi: Versions for distribution
+ put in place.
+ * gawk.1, awkcard.in: Minor edits for consistency of
+ usage, formatting.
+
+Wed Nov 22 14:57:59 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Removed all documentation
+ of abort.
+
+Sun Aug 13 11:23:50 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: documented sort function
+ and optional third argument to match.
+
+Sun Aug 13 00:40:41 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: hardwired publisher info.
+ * publisher.texi: Removed. Not needed any more.
+ * gawkinet.texi: Added title page stuff.
+
+Thu Jul 5 21:05:57 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: moved to use of @command, @option everywhere
+ appropriate. Removed all @page and @group in anticipation
+ of re-page breaking. Updated stuff for install-info.
+ Added FDL.
+
+Tue Nov 10 11:42:26 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * publisher.texi: new file with publisher related info.
+ * Makefile.in: updated dvi and postscript targets to make
+ them lots smarter about not reformatting if need be.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed May 17 19:04:54 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi, gawk.1, awkcard.in: Documented %u. Ooops.
+
+Tue May 2 11:44:13 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * texinfo.tex: Updated to version 1999-10-01.07.
+ * gawk.texi: Redid page breaking for new texinfo.tex.
+
+Thu Apr 6 12:32:49 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: Change info dir file entry to `(gawk)' from
+ `(gawk.info)'.
+ * Makefile.in [$(infodir)/gawk.info]: Fix grep test is
+ accordance with above.
+
+Sun Feb 13 15:36:32 2000 Paul Eggert <eggert@twinsun.com>
+
+ * gawk.texi: Mention that arithmetic is done in double
+ precision floating point, and point to Goldberg's paper for
+ people who want to know more. Fix some other minor floating
+ point discussion issues.
+
+Wed Nov 3 17:04:35 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.1: Lots of troff ``lint'' from Paul Eggert. Not all
+ of his changes, just the ones I thought worth doing.
+
+Mon Oct 11 16:53:54 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (gawk.dvi): Put $(srcdir) first in TEXINPUTS,
+ and also just use texi2dvi, don't run texindex and tex
+ manually. Doing so is no longer necessary.
+
+Mon Aug 9 13:06:01 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.texi: New node `Array Efficiency' on the best use
+ of subscripting to avoid memory bloat.
+
+Thu Jul 29 23:15:34 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in ($(infodir)/gawk.info): Removed loop around
+ $(INSTALL_DATA), since there's only one Info file to install,
+ install it directly.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Wed Oct 7 21:59:33 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * texinfo.tex: Updated to version 2.227, from Texinfo 3.12.
+
+Sun Oct 19 12:26:08 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * ALL: change references to arnold@gnu.ai.mit.edu to arnold@gnu.org.
+
+Tue Sep 23 10:31:17 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * texinfo.tex: Updated to version 2.218, from Texinfo 3.11.
+
+Fri Jul 4 08:19:00 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in ($(infodir)/gawk.info): Don't make dependent upon
+ gawk.info, in case installed one is newer. Instead, check that
+ an installed gawk.info exists and is identical to current one.
+ If so, just exit; otherwise do the install.
+
+Wed Jul 2 14:55:12 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in ($(infodir)/gawk.info): typo fix.
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Sun Apr 13 15:39:20 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in ($(infodir)/gawk.info): exit 0 in case install-info
+ fails.
+
+Thu Jan 2 23:17:53 1997 Fred Fish <fnf@ninemoons.com>
+
+ * Makefile.in (awkcard.tr): Use ':' chars to separate parts of
+ sed command, since $(srcdir) may expand to something with '/'
+ characters in it, which confuses sed terribly.
+ * gawk.texi (Amiga Installation): Note change of configuration
+ from "m68k-cbm-amigados" to "m68k-amigaos". Point ftp users
+ towards current ADE distribution and not obsolete Aminet
+ "gcc" distribution. Change "FreshFish" to "Geek Gadgets".
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Wed Dec 25 11:17:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in ($(mandir)/igawk$(manext),$(mandir)/gawk$(manext)):
+ remove chmod command; let $(INSTALL_DATA) use -m.
+
+Tue Dec 17 22:38:28 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (gawk.info,gawk.dvi,postscript): run makeinfo, TeX,
+ and/or troff against files in $(srcdir). Thanks to Ulrich Drepper.
+ ($(infodir)/gawk.info): use --info-dir to install-info, not
+ --infodir.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Mon Dec 9 12:48:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * no.colors: new file from Michal for old troffs.
+ * Makefile.in [AWKCARD]: changes to parameterize old/new troff.
+
+Sun Dec 1 15:04:56 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * texinfo.tex: Updated to version 2.193, from Karl Berry.
+
+Tue Nov 26 22:57:15 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in ($(infodir)/gawk.info): Change option in call
+ to `install-info' to `--info-dir' from `--infodir'.
+
+Mon Nov 4 13:30:39 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in: updates for reference card.
+ (ad.block, awkcard.in, cardfonts, colors, macros, setter.outline):
+ new files for reference card.
+
+Wed Oct 16 12:43:02 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * texinfo.tex: Updated to version 2.185, from texinfo-3.9 dist.
+
+Sun Aug 11 23:12:08 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in ($(infodir)/gawk.info): correct use of
+ $(INSTALL_DATA) and remove chmod command.
+
+Thu Jul 11 22:06:50 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in ($(mandir)/gawk.$(ext), $(mandir)/igawk.$(ext)):
+ made dependant on files in $(srcdir).
+
+Fri Mar 15 06:45:35 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (clean): add `*~' to list of files to be removed.
+
+Thu Jan 25 23:40:15 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (dvi): run texindex and tex an extra time.
+ This gets the cross references right. Sigh.
+
+Wed Jan 24 11:51:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (maintainer-clean):
+ Depend on distclean, not the other way around.
+ Output warning message as per GNU standards.
diff --git a/extension/ChangeLog b/extension/ChangeLog
index f13a7ebd..8aaeb418 100644
--- a/extension/ChangeLog
+++ b/extension/ChangeLog
@@ -1,91 +1,5 @@
-Mon May 23 22:03:46 2011 John Haque <j.eh@mchsi.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * testarg.awk, testarg.c: Updated.
-
-Thu Mar 31 22:58:19 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * filefuncs.c (do_stat): Fix a comment. Also in doc.
-
-Thu Jan 13 20:37:02 2011 Andrew J. Schorr <aschorr@telemetry-investments.com>
-
- * filefuncs.c (do_stat): Malloc the buffer to read the contents
- of the link. From mail of June 21, 2005.
-
-Sun Jan 2 21:08:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * filefuncs.c: Synched with code in gawk.texi, copyright dates
- updated.
-
-Sat Dec 18 20:22:44 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * pcext.def: Removed, since we don't support MSFT compilers.
-
-Wed Nov 24 20:08:13 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * arrayparm.c, dl.c, filefuncs.c, fork.c, ordchr.c, readfile.c,
- rwarray.c, testarg.c, xreadlink.c: Define `plugin_is_GPL_compatible'
- per GNU Coding standards.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Mon May 18 21:31:34 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * rwarray.c (write_value, read_value): Use htonl / ntohl to write /
- read the code for double / string. Test read-in code for != 0
- to handle stuff written before this change.
-
-Sat May 16 22:52:34 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * rwarray.c (do_reada, read_elem, read_value): Made the code
- actually work.
-
-Fri May 15 16:01:06 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * rwarray.c, rwarray.awk: New files.
- * steps: Updated.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Sun Jun 26 09:03:32 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * filefuncs.c (do_stat): Check return value from readlink()
- for error. Pass in `sizeof(buf) - 1' to leave room for trailing
- zero byte. From: Glenn Zazulia <gnu@t1.zazu.com>.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Mon Jun 21 17:02:37 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- More from John Haque.
-
- * testarg.c, testarg.awk: New files.
- * arrayparm.c (do_mkarray): Change call of `get_curfunc_parm_count'
- to `get_curfunc_arg_count'.
- * filefuncs.c (do_chdir, do_stat): Ditto.
- * fork.c (do_fork, do_waitpid): Ditto.
- * ordchr.c (do_ord, do_chr): Ditto.
- * readfile.c (do_readfile): Ditto.
- * steps: Updated.
-
-Mon Jun 14 14:01:16 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- ChangeLog started.
-
- Changes from John Haque and ADR to rationalize extension functions.
-
- * extension/filefuncs.c: Revised for new functionality. See
- corresponding entry in main ChangeLog.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/extension/ChangeLog.0 b/extension/ChangeLog.0
new file mode 100644
index 00000000..f13a7ebd
--- /dev/null
+++ b/extension/ChangeLog.0
@@ -0,0 +1,91 @@
+Mon May 23 22:03:46 2011 John Haque <j.eh@mchsi.com>
+
+ * testarg.awk, testarg.c: Updated.
+
+Thu Mar 31 22:58:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * filefuncs.c (do_stat): Fix a comment. Also in doc.
+
+Thu Jan 13 20:37:02 2011 Andrew J. Schorr <aschorr@telemetry-investments.com>
+
+ * filefuncs.c (do_stat): Malloc the buffer to read the contents
+ of the link. From mail of June 21, 2005.
+
+Sun Jan 2 21:08:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * filefuncs.c: Synched with code in gawk.texi, copyright dates
+ updated.
+
+Sat Dec 18 20:22:44 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * pcext.def: Removed, since we don't support MSFT compilers.
+
+Wed Nov 24 20:08:13 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arrayparm.c, dl.c, filefuncs.c, fork.c, ordchr.c, readfile.c,
+ rwarray.c, testarg.c, xreadlink.c: Define `plugin_is_GPL_compatible'
+ per GNU Coding standards.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon May 18 21:31:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * rwarray.c (write_value, read_value): Use htonl / ntohl to write /
+ read the code for double / string. Test read-in code for != 0
+ to handle stuff written before this change.
+
+Sat May 16 22:52:34 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * rwarray.c (do_reada, read_elem, read_value): Made the code
+ actually work.
+
+Fri May 15 16:01:06 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * rwarray.c, rwarray.awk: New files.
+ * steps: Updated.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Sun Jun 26 09:03:32 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * filefuncs.c (do_stat): Check return value from readlink()
+ for error. Pass in `sizeof(buf) - 1' to leave room for trailing
+ zero byte. From: Glenn Zazulia <gnu@t1.zazu.com>.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Mon Jun 21 17:02:37 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ More from John Haque.
+
+ * testarg.c, testarg.awk: New files.
+ * arrayparm.c (do_mkarray): Change call of `get_curfunc_parm_count'
+ to `get_curfunc_arg_count'.
+ * filefuncs.c (do_chdir, do_stat): Ditto.
+ * fork.c (do_fork, do_waitpid): Ditto.
+ * ordchr.c (do_ord, do_chr): Ditto.
+ * readfile.c (do_readfile): Ditto.
+ * steps: Updated.
+
+Mon Jun 14 14:01:16 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ ChangeLog started.
+
+ Changes from John Haque and ADR to rationalize extension functions.
+
+ * extension/filefuncs.c: Revised for new functionality. See
+ corresponding entry in main ChangeLog.
diff --git a/m4/ChangeLog b/m4/ChangeLog
index 305c1cfd..8aaeb418 100644
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -1,180 +1,5 @@
-Wed Jan 5 20:36:10 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * readline.m4: Move call to AC_LANG([C]) from here to
- ../configure.ac.
-
-Tue Jan 4 11:09:43 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * readline.m4: Really fixed to work correctly with Autoconf 2.68.
-
-Sat Dec 25 21:40:25 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * readline.m4: Fixed to work correctly with Autoconf 2.68.
-
-Fri Dec 24 13:00:26 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * readline.m4: Updated to work with Autoconf 2.68.
-
-2010-12-22 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.18.1.
- * iconv.m4: Upgrade to gettext-0.18.1.
- * lib-ld.m4: Upgrade to gettext-0.18.1.
- * lib-link.m4: Upgrade to gettext-0.18.1.
- * lib-prefix.m4: Upgrade to gettext-0.18.1.
- * nls.m4: Upgrade to gettext-0.18.1.
- * po.m4: Upgrade to gettext-0.18.1.
- * progtest.m4: Upgrade to gettext-0.18.1.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Mon Apr 26 20:16:49 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * libtool.m4, ltoptions.m4, ltsugar.m4, ltversion.m4,
- lt~obsolete.m4: Removed.
-
-Mon Mar 29 08:42:38 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * libsigsegv.m4: New file, from gnulib.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.17.
- * iconv.m4: Upgrade to gettext-0.17.
- * lib-link.m4: Upgrade to gettext-0.17.
- * po.m4: Upgrade to gettext-0.17.
-
-Mon Jun 8 22:15:29 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * libtool.m4, lt~obsolete.m4 ltsugar.m4 ltversion.m4,
- ltoptions.m4: New files.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Tue Mar 20 21:33:31 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * strtod.m4: Removed, not needed anymore.
-
-2007-01-08 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.16.1.
- * lib-link.m4: Upgrade to gettext-0.16.1.
- * lib-prefix.m4: Upgrade to gettext-0.16.1.
- * nls.m4: Upgrade to gettext-0.16.1.
- * po.m4: Upgrade to gettext-0.16.1.
- * intl.m4: New file, copied in from move to current Autotools.
- * intldir.m4: New file, copied in from move to current Autotools.
- * lock.m4: New file, copied in from move to current Autotools.
- * visibility.m4: New file, copied in from move to current Autotools.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Wed Jul 6 17:05:32 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * gettext.m4: Per Bruno Haible, revert the change for the test
- for locale.h from Sergey Poznyakoff.
-
-Wed Jun 8 20:45:17 2005 Sergey Poznyakoff <gray@Mirddin.farlep.net>
-
- * gettext.m4: Move test for locale.h and LC_MESSAGES in AM_GNU_GETTEXT.
- Makes things work when the library is external.
-
-Mon May 30 21:31:43 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * intmax_t.m4: Updated macro for intmax_t from Jim Meyering.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-2004-02-19 gettextize <bug-gnu-gettext@gnu.org>
-
- * po.m4: Upgrade to gettext-0.14.1.
-
-2004-01-16 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.13.1.
- * intmax.m4: New file, from gettext-0.13.1.
- * lib-ld.m4: Upgrade to gettext-0.13.1.
- * lib-prefix.m4: Upgrade to gettext-0.13.1.
- * longdouble.m4: New file, from gettext-0.13.1.
- * longlong.m4: Upgrade to gettext-0.13.1.
- * po.m4: Upgrade to gettext-0.13.1.
- * printf-posix.m4: New file, from gettext-0.13.1.
- * signed.m4: New file, from gettext-0.13.1.
- * size_max.m4: New file, from gettext-0.13.1.
- * ulonglong.m4: Upgrade to gettext-0.13.1.
- * wchar_t.m4: New file, from gettext-0.13.1.
- * wint_t.m4: New file, from gettext-0.13.1.
- * xsize.m4: New file, from gettext-0.13.1.
- * Makefile.am: New file.
-
-Thu Jan 15 15:51:12 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * m4/arch.m4, m4/socket.m4, m4/strtod.m4: Quoting fixed for automake 1.8.x.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-2003-06-16 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.12.1.
- * inttypes_h.m4: Upgrade to gettext-0.12.1.
- * lib-ld.m4: Upgrade to gettext-0.12.1.
- * lib-link.m4: Upgrade to gettext-0.12.1.
- * lib-prefix.m4: Upgrade to gettext-0.12.1.
- * nls.m4: New file, from gettext-0.12.1.
- * po.m4: New file, from gettext-0.12.1.
- * progtest.m4: Upgrade to gettext-0.12.1.
- * stdint_h.m4: Upgrade to gettext-0.12.1.
- * uintmax_t.m4: New file, from gettext-0.12.1.
- * ulonglong.m4: New file, from gettext-0.12.1.
- * Makefile.am: New file.
-
-2003-03-26 Paul Eggert <eggert@twinsun.com>
-
- * longlong.m4, intmax_t.m4: New files.
- * ulonglong.m4, uintmax_t.m4: Removed.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Wed Nov 20 13:15:59 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * arch.m4 (GAWK_AIX_TWEAK): Add -DGAWK_AIX for use in
- io.c to get real pipes. Ugh.
- Change test to -d /lpp so it actually works. Sigh.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-2002-04-28 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.11.2.
- * isc-posix.m4: Upgrade to gettext-0.11.2.
- * lib-link.m4: Upgrade to gettext-0.11.2.
-
-2002-04-09 gettextize <bug-gnu-gettext@gnu.org>
-
- * gettext.m4: Upgrade to gettext-0.11.1.
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/m4/ChangeLog.0 b/m4/ChangeLog.0
new file mode 100644
index 00000000..305c1cfd
--- /dev/null
+++ b/m4/ChangeLog.0
@@ -0,0 +1,180 @@
+Wed Jan 5 20:36:10 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * readline.m4: Move call to AC_LANG([C]) from here to
+ ../configure.ac.
+
+Tue Jan 4 11:09:43 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * readline.m4: Really fixed to work correctly with Autoconf 2.68.
+
+Sat Dec 25 21:40:25 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * readline.m4: Fixed to work correctly with Autoconf 2.68.
+
+Fri Dec 24 13:00:26 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * readline.m4: Updated to work with Autoconf 2.68.
+
+2010-12-22 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.18.1.
+ * iconv.m4: Upgrade to gettext-0.18.1.
+ * lib-ld.m4: Upgrade to gettext-0.18.1.
+ * lib-link.m4: Upgrade to gettext-0.18.1.
+ * lib-prefix.m4: Upgrade to gettext-0.18.1.
+ * nls.m4: Upgrade to gettext-0.18.1.
+ * po.m4: Upgrade to gettext-0.18.1.
+ * progtest.m4: Upgrade to gettext-0.18.1.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Mon Apr 26 20:16:49 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * libtool.m4, ltoptions.m4, ltsugar.m4, ltversion.m4,
+ lt~obsolete.m4: Removed.
+
+Mon Mar 29 08:42:38 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * libsigsegv.m4: New file, from gnulib.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.17.
+ * iconv.m4: Upgrade to gettext-0.17.
+ * lib-link.m4: Upgrade to gettext-0.17.
+ * po.m4: Upgrade to gettext-0.17.
+
+Mon Jun 8 22:15:29 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * libtool.m4, lt~obsolete.m4 ltsugar.m4 ltversion.m4,
+ ltoptions.m4: New files.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Tue Mar 20 21:33:31 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strtod.m4: Removed, not needed anymore.
+
+2007-01-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.16.1.
+ * lib-link.m4: Upgrade to gettext-0.16.1.
+ * lib-prefix.m4: Upgrade to gettext-0.16.1.
+ * nls.m4: Upgrade to gettext-0.16.1.
+ * po.m4: Upgrade to gettext-0.16.1.
+ * intl.m4: New file, copied in from move to current Autotools.
+ * intldir.m4: New file, copied in from move to current Autotools.
+ * lock.m4: New file, copied in from move to current Autotools.
+ * visibility.m4: New file, copied in from move to current Autotools.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Wed Jul 6 17:05:32 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gettext.m4: Per Bruno Haible, revert the change for the test
+ for locale.h from Sergey Poznyakoff.
+
+Wed Jun 8 20:45:17 2005 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * gettext.m4: Move test for locale.h and LC_MESSAGES in AM_GNU_GETTEXT.
+ Makes things work when the library is external.
+
+Mon May 30 21:31:43 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * intmax_t.m4: Updated macro for intmax_t from Jim Meyering.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+2004-02-19 gettextize <bug-gnu-gettext@gnu.org>
+
+ * po.m4: Upgrade to gettext-0.14.1.
+
+2004-01-16 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.13.1.
+ * intmax.m4: New file, from gettext-0.13.1.
+ * lib-ld.m4: Upgrade to gettext-0.13.1.
+ * lib-prefix.m4: Upgrade to gettext-0.13.1.
+ * longdouble.m4: New file, from gettext-0.13.1.
+ * longlong.m4: Upgrade to gettext-0.13.1.
+ * po.m4: Upgrade to gettext-0.13.1.
+ * printf-posix.m4: New file, from gettext-0.13.1.
+ * signed.m4: New file, from gettext-0.13.1.
+ * size_max.m4: New file, from gettext-0.13.1.
+ * ulonglong.m4: Upgrade to gettext-0.13.1.
+ * wchar_t.m4: New file, from gettext-0.13.1.
+ * wint_t.m4: New file, from gettext-0.13.1.
+ * xsize.m4: New file, from gettext-0.13.1.
+ * Makefile.am: New file.
+
+Thu Jan 15 15:51:12 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * m4/arch.m4, m4/socket.m4, m4/strtod.m4: Quoting fixed for automake 1.8.x.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+2003-06-16 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.12.1.
+ * inttypes_h.m4: Upgrade to gettext-0.12.1.
+ * lib-ld.m4: Upgrade to gettext-0.12.1.
+ * lib-link.m4: Upgrade to gettext-0.12.1.
+ * lib-prefix.m4: Upgrade to gettext-0.12.1.
+ * nls.m4: New file, from gettext-0.12.1.
+ * po.m4: New file, from gettext-0.12.1.
+ * progtest.m4: Upgrade to gettext-0.12.1.
+ * stdint_h.m4: Upgrade to gettext-0.12.1.
+ * uintmax_t.m4: New file, from gettext-0.12.1.
+ * ulonglong.m4: New file, from gettext-0.12.1.
+ * Makefile.am: New file.
+
+2003-03-26 Paul Eggert <eggert@twinsun.com>
+
+ * longlong.m4, intmax_t.m4: New files.
+ * ulonglong.m4, uintmax_t.m4: Removed.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Wed Nov 20 13:15:59 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arch.m4 (GAWK_AIX_TWEAK): Add -DGAWK_AIX for use in
+ io.c to get real pipes. Ugh.
+ Change test to -d /lpp so it actually works. Sigh.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+2002-04-28 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.11.2.
+ * isc-posix.m4: Upgrade to gettext-0.11.2.
+ * lib-link.m4: Upgrade to gettext-0.11.2.
+
+2002-04-09 gettextize <bug-gnu-gettext@gnu.org>
+
+ * gettext.m4: Upgrade to gettext-0.11.1.
+
diff --git a/missing_d/ChangeLog b/missing_d/ChangeLog
index 4eaa802f..8aaeb418 100644
--- a/missing_d/ChangeLog
+++ b/missing_d/ChangeLog
@@ -1,171 +1,5 @@
-Mon Nov 29 20:09:40 2010 Eli Zaretskii <eliz@gnu.org>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * strftime.c <tzname>: Don't declare for __MINGW32__.
-
-Thu Nov 25 21:16:58 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * strcoll.c: New file.
- * memcmp.c, memcpy.c, memset.c, strchr.c, strtod.c: Remove
- `register' keyword everywhere, as in mainline code.
-
-Sun Jun 6 21:44:19 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * getaddrinfo.h: Add undef for addrinfo, freeaddrinfo, and
- getaddrinfo, just in case.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Fri Apr 30 11:38:49 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * snprintf.c: Add check to undef restrict and define as empty.
- Allows !@#$%^&*() OSF/1 to compile and build.
-
-Mon Apr 26 19:48:07 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * snprintf.c (vsnprintf): Undo change of 21 April. vsnprintf
- is needed for vprintf in that file.
-
-Wed Apr 21 23:32:51 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * snprintf.c (vsnprintf): Don't define if not STDARG_H.
- Gawk doesn't use it.
-
-Fri Mar 19 09:19:17 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * usleep.c: New file.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Sun Oct 14 19:37:33 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * snprintf.c (safe_tmpfile): If have `atexit', add call to a function
- that closes the open fp and unlinks the file. Needed mainly for
- PC which can't do Unix-style unlink-after-open.
-
-Tue Oct 2 22:12:13 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * snprintf.c (safe_tmpfile): Add use of TMPDIR and TEMP environment
- variables for systems that may not have a /tmp. For MS systems
- do unlink at close. Thanks to Eli Zaretskii and Scott Deifik
- for motivating me to do the right thing.
-
-Fri Apr 13 06:05:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * getaddrinfo.c: Add test for HAVE_SOCKETS with error message
- if not. Thanks to Pat Rankin.
-
-Sun Apr 8 16:15:27 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * getaddrinfo.c: Add include of <netinet/in.h>, and <arpa/inet.h>.
-
-Fri Apr 6 13:23:04 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * memmove.c.BSD, strncasecmp.c.BSD: Removed so that they won't make
- their way into a tarball; these were the original versions from BSD
- that were in use until the Savannah CVS archive went into place; see
- the entry from August 25, 2006.
-
-Thu Apr 5 17:01:15 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * sprintf.c (snprintf): Fix typo and call vsnprintf
- instead of calling self recursively. Thanks to Pat Rankin.
-
-Tue Feb 27 20:58:01 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * snprintf.c: Change names from gawk_xxx to real xxx.
-
-Mon Jan 15 14:34:30 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * getaddrinfo.h, getaddrinfo.c: New files, based on
- submission by Jan Pazdziora <jpazdziora@redhat.com>.
-
-Fri Sep 15 15:05:09 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * strncasecmp.c, memmove.c: Corrected the FSF's address.
-
-Fri Aug 25 13:21:57 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * README: New file.
- * strncasecmp.c, memmove.c: Replaced with versions
- from GLIBC, hacked unmercifully to work standalone.
-
-Fri Oct 21 11:18:10 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * strtod.c (gawk_strtod): Made check for locale's decimal
- point conditional also upon do_posix.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Tue Jul 26 21:27:46 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * strtod.c (gawk_strtod) [ENABLE_NLS]: Removed from conditional
- paralleling change to main.c.
- * stroul.c (strtoul): Same.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Mon May 3 09:24:21 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * strtoul.c: New file.
-
-Sun May 2 18:03:54 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * strtod.c (gawk_strtod): Check for locale's decimal point
- instead of hard-wiring period.
-
-Tue Jan 20 10:38:48 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * memmove.c: New file.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Mon Feb 3 20:37:09 2003 Pat Rankin <rankin@pactechdata.com>
-
- * strftime.c: Restore use of TIME_T_IN_SYS_TYPES_H to control
- inclusion of <sys/types.h>.
- (TYPE_SIGNED): Add workaround to avoid diagnostic from Compaq C V6.4.
- (my_strftime) [case 's']: Likewise; exclude negative number handling
- if TIME_T_UNSIGNED is defined.
-
-Mon Jan 27 12:09:50 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * strtod.c (gawk_strtod): Cleanup, changing the logic
- so that ptr is correct. Fixes the bug that 0e0 is not
- recognized as numeric.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Tue Dec 4 17:56:46 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * strftime.c: Replaced with glibc version.
- * strftime.3: Removed
-
-Fri Aug 3 09:01:19 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- ChangeLog created.
-
- * strtod.c (strtod): Fixed test at end for failure to
- be a little smarter.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/missing_d/ChangeLog.0 b/missing_d/ChangeLog.0
new file mode 100644
index 00000000..4eaa802f
--- /dev/null
+++ b/missing_d/ChangeLog.0
@@ -0,0 +1,171 @@
+Mon Nov 29 20:09:40 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * strftime.c <tzname>: Don't declare for __MINGW32__.
+
+Thu Nov 25 21:16:58 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strcoll.c: New file.
+ * memcmp.c, memcpy.c, memset.c, strchr.c, strtod.c: Remove
+ `register' keyword everywhere, as in mainline code.
+
+Sun Jun 6 21:44:19 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getaddrinfo.h: Add undef for addrinfo, freeaddrinfo, and
+ getaddrinfo, just in case.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Fri Apr 30 11:38:49 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * snprintf.c: Add check to undef restrict and define as empty.
+ Allows !@#$%^&*() OSF/1 to compile and build.
+
+Mon Apr 26 19:48:07 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * snprintf.c (vsnprintf): Undo change of 21 April. vsnprintf
+ is needed for vprintf in that file.
+
+Wed Apr 21 23:32:51 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * snprintf.c (vsnprintf): Don't define if not STDARG_H.
+ Gawk doesn't use it.
+
+Fri Mar 19 09:19:17 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * usleep.c: New file.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Sun Oct 14 19:37:33 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * snprintf.c (safe_tmpfile): If have `atexit', add call to a function
+ that closes the open fp and unlinks the file. Needed mainly for
+ PC which can't do Unix-style unlink-after-open.
+
+Tue Oct 2 22:12:13 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * snprintf.c (safe_tmpfile): Add use of TMPDIR and TEMP environment
+ variables for systems that may not have a /tmp. For MS systems
+ do unlink at close. Thanks to Eli Zaretskii and Scott Deifik
+ for motivating me to do the right thing.
+
+Fri Apr 13 06:05:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getaddrinfo.c: Add test for HAVE_SOCKETS with error message
+ if not. Thanks to Pat Rankin.
+
+Sun Apr 8 16:15:27 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getaddrinfo.c: Add include of <netinet/in.h>, and <arpa/inet.h>.
+
+Fri Apr 6 13:23:04 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * memmove.c.BSD, strncasecmp.c.BSD: Removed so that they won't make
+ their way into a tarball; these were the original versions from BSD
+ that were in use until the Savannah CVS archive went into place; see
+ the entry from August 25, 2006.
+
+Thu Apr 5 17:01:15 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * sprintf.c (snprintf): Fix typo and call vsnprintf
+ instead of calling self recursively. Thanks to Pat Rankin.
+
+Tue Feb 27 20:58:01 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * snprintf.c: Change names from gawk_xxx to real xxx.
+
+Mon Jan 15 14:34:30 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * getaddrinfo.h, getaddrinfo.c: New files, based on
+ submission by Jan Pazdziora <jpazdziora@redhat.com>.
+
+Fri Sep 15 15:05:09 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strncasecmp.c, memmove.c: Corrected the FSF's address.
+
+Fri Aug 25 13:21:57 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * README: New file.
+ * strncasecmp.c, memmove.c: Replaced with versions
+ from GLIBC, hacked unmercifully to work standalone.
+
+Fri Oct 21 11:18:10 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strtod.c (gawk_strtod): Made check for locale's decimal
+ point conditional also upon do_posix.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Tue Jul 26 21:27:46 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strtod.c (gawk_strtod) [ENABLE_NLS]: Removed from conditional
+ paralleling change to main.c.
+ * stroul.c (strtoul): Same.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Mon May 3 09:24:21 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strtoul.c: New file.
+
+Sun May 2 18:03:54 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strtod.c (gawk_strtod): Check for locale's decimal point
+ instead of hard-wiring period.
+
+Tue Jan 20 10:38:48 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * memmove.c: New file.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Mon Feb 3 20:37:09 2003 Pat Rankin <rankin@pactechdata.com>
+
+ * strftime.c: Restore use of TIME_T_IN_SYS_TYPES_H to control
+ inclusion of <sys/types.h>.
+ (TYPE_SIGNED): Add workaround to avoid diagnostic from Compaq C V6.4.
+ (my_strftime) [case 's']: Likewise; exclude negative number handling
+ if TIME_T_UNSIGNED is defined.
+
+Mon Jan 27 12:09:50 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * strtod.c (gawk_strtod): Cleanup, changing the logic
+ so that ptr is correct. Fixes the bug that 0e0 is not
+ recognized as numeric.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Tue Dec 4 17:56:46 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strftime.c: Replaced with glibc version.
+ * strftime.3: Removed
+
+Fri Aug 3 09:01:19 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ ChangeLog created.
+
+ * strtod.c (strtod): Fixed test at end for failure to
+ be a little smarter.
diff --git a/pc/ChangeLog b/pc/ChangeLog
index 96621200..8aaeb418 100644
--- a/pc/ChangeLog
+++ b/pc/ChangeLog
@@ -1,680 +1,5 @@
-Mon Jun 20 20:37:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * Makefile.tst: Sync with mainline version.
-
-Mon Jun 20 20:16:58 2011 Eli Zaretskii <eliz@gnu.org>
-
- * Makefile (LIBOBJS): Remove hard-locale$O.
- (dfa$O): Remove hard-locale.h from prerequisites.
-
-Sun Jun 5 21:47:33 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Tue May 31 23:09:13 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Tue May 31 23:07:20 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst (fpat2): Fix the test.
-
-Thu May 26 22:12:28 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Mon May 23 21:52:49 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Sat May 14 22:30:06 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Mon May 9 15:13:18 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Sun May 8 20:57:16 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Mon May 2 23:34:54 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Fri Apr 29 12:35:21 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile: Remove dependencies on awkprintf.h.
-
-Sun Apr 24 11:54:58 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Fri Apr 1 11:50:59 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * config.h (ISATTY): Remove definition.
- * gawkmisc.pc (os_iastty): New function.
-
-Sun Feb 27 22:58:08 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Mon Feb 21 20:32:36 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst (GAWK_EXT_TESTS): Include profile3. Thanks to
- Scott Deifik for pointing out the omission.
-
-Wed Feb 16 21:09:50 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.tst (lintwarn): New test.
-
-Wed Feb 16 20:40:27 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Mon Feb 14 21:30:48 2011 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Sun Feb 13 20:23:07 2011 Eli Zaretskii <eliz@gnu.org>
-
- * gawkmisc.pc (files_are_same): Change arguments. Compare file
- names and modification times in addition to devices and inodes.
- * Makefile (LIBOBJS): Add hard-locale$O.
- Update prerequisites.
- * config.h (ISATTY) [__MINGW32__ || _MSC_VER]: Define.
-
-Mon Feb 7 22:45:28 2011 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.tst: Sync with mainline version.
-
-Tue Feb 1 23:15:45 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Thu Jan 27 21:31:23 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Fixes for dumpvars and mv, cp, et. al.
-
-Mon Jan 17 22:21:07 2011 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Mon Jan 17 22:17:07 2011 Arnold Robbins <arnold@skeeve.com>
-
- * config.h: Remove definitions of PIPES_SIMULATED and _NFILE for
- DJGPP. Per Eli, they aren't needed here.
-
-2011-01-08 Eli Zaretskii <eliz@gnu.org>
-
- * popen.c (scriptify): Fix syntax error.
-
- * config.h (HAVE___ARGZ_COUNT, HAVE___ARGZ_NEXT)
- (HAVE___ARGZ_STRINGIFY): Don't define.
- (HAVE_PORTALS): Remove reference.
-
- * gawkmisc.pc (unsetenv) [__DJGPP__]: Implement.
- (usleep) [__MINGW32__]: Resurrect.
-
-Tue Jan 4 11:20:40 2011 Arnold Robbins <arnold@skeeve.com>
-
- * config.h: Add PIPES_SIMULATED and definition of _NFILE for
- DJGPP.
-
-Sat Dec 18 22:12:42 2010 Arnold Robbins <arnold@skeeve.com>
-
- * gawkw32.def: Removed.
- * Makefile (gawk.exp): Removed target and rule.
-
-Sat Dec 18 20:13:35 2010 Eli Zaretskii <eliz@gnu.org>
-
- * popen.h: Remove the parts conditioned by _MSC_VER and OS2. Use
- __DJGPP__ instead of __GO32__.
-
- * popen.c (popen, pclose) [OS2, _MSC_VER]: Remove definitions.
- (unixshell, scriptify, os_pclose): Remove OS2 parts.
-
- * getid.c: Remove the parts conditioned by _MSC_VER and OS2.
-
- * config.h: Remove the parts conditioned by _MSC_VER.
-
- * Makefile: Drop support for DJGPP v1.x and for Microsoft
- compilers on DOS/Windows.
-
- * gawkmisc.pc (setenv, unsetenv) [__MINGW32__]: Emulations for MinGW.
-
- * Makefile (DLMINGW32): New variable.
- (mingw32): Pass it to sub-Make.
-
- * dlfnc.h, dlfcn.c, include/*: Removed.
-
-Mon Nov 29 20:10:00 2010 Eli Zaretskii <eliz@gnu.org>
-
- * config.h (HAVE_STRFTIME): Don't define for __MINGW32__. Define
- strftime to rpl_strftime, to avoid infinite recursion in
- missing_d/strftime.c.
-
-Fri Nov 12 12:36:18 2010 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Thu Oct 28 08:17:00 2010 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline version.
-
-Wed Jul 14 23:05:57 2010 Eli Zaretskii <eliz@gnu.org>
-
- * config.h (HAVE_USLEEP) [__MINGW32__]: Define.
-
- * gawkmisc.pc (usleep) [__MINGW32__]: Implementation of `usleep'
- for MinGW.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Mon May 3 21:15:49 2010 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst (lc_num1): Now passes, remove "expect to fail"
- message.
-
-Tue Apr 13 22:13:51 2010 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * config.h, Makefile.tst: Sync with mainline.
-
-Tue Feb 2 20:49:20 2010 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Mon Jul 13 05:43:07 2009 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Still more sync with mainline.
-
-Tue Jun 23 05:24:12 2009 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: More sync with mainline.
-
-Thu Jun 18 06:24:29 2009 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline.
-
-2008-07-26 Eli Zaretskii <eliz@gnu.org>
-
- * config.h (WEXITSTATUS) [_MSC_VER || __MINGW32__]: Define.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Sat Oct 20 22:42:08 2007 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst: Sync with mainline, Revise inftest.
-
-Fri Oct 19 05:37:37 2007 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * config.h: Add definition of HAVE_ATEXIT. Needed for replacement
- sprintf.
-
-Thu Oct 4 21:19:54 2007 Juan M. Guerrero <juan.guerrero@gmx.de>
-
- * Makefile.tst (fmtspcl.ok): Remove unneeded dependency on Makefile.
-
-Wed Sep 26 15:10:17 2007 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makefile.tst (poundbang): Fix path in call to gawk.
- (nofile): Fix output message with sed to match what test suite wants.
-
-Wed Sep 26 14:46:34 2007 Eli Zaretskii <eliz@gnu.org>
-
- * Makefile.tst (msg): Use $(CMP) instead a literal "cmp".
- (nonl): Use NUL instead of /dev/null.
- (devfd, pid, fmtspcl, nofile, rstest4, rstest5, getlnhd, clos1way):
- Expect to fail on MinGW.
- (fmtspcl.ok): Depend on Makefile, not Makefile.tst.
- (pipeio2, hsprint, fmttest): Expect formatting or whitespace
- differences.
- (exitval2): Use exitval2.w32 instead of exitval2.awk.
-
- * config.h (HAVE_DECL_TZNAME) [__MINGW32__]: Define.
- (HAVE_ALLOCA) [__MINGW32__]: Don't define.
- (HAVE_SNPRINTF) [__MINGW32__]: Remove _MSC_VER condition.
-
-Tue Sep 25 08:22:11 2007 KIMURA Koichi <kimura.koichi@canon.co.jp>
-
- * config.h: For Visual Studio, undef restrict, define HAVE_TMPFILE,
- undef TIME_WITH_SYS_TIME.
-
-Mon May 21 05:46:46 2007 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * config.h (HAVE_MKTIME): Define.
-
-Wed May 16 22:12:55 2007 Scott Deifik <scottd.mail@sbcglobal.net>
-
- * Makfile.tst: Changes for DJGPP, bring in sync with main
- test/Makefile.
-
-Wed May 9 21:01:18 2007 Scott Deifik <scottd.mail@sbcglobal.net>
-
- DJGPP changes:
-
- * config.h: Add HAVE_MKTME, HAVE_MKSTEMP, conditionalize
- HAVE_SNPRINTF. (ADR: #define out restrict).
- * Makefile: Add replace$0 to AWKOBJS2 and PAWKOBJS2.
-
-2007-03-19 Juan M. Guerrero <juan.guerrero@gmx.de>
-
- * config.h: Undef HAVE_ALLOCA for DJGPP.
- * Makefile: Add floatcomp$O to AWKOBJS1 and PAWKOBJS1.
-
-2007-02-25 Juan M. Guerrero <juan.guerrero@gmx.de>
-
- * config.h: Let DEFPATH reflect DJGPP installation directory tree.
- * Makefile: pkgdatadir variable defined to $(prefix)/lib/awk.
- * Makefile: In DJGPP section use the DJGPP environment variable to
- redefine the pkgdatadir variable.
-
-2006-07-22 Eli Zaretskii <eliz@gnu.org>
-
- * Makefile.tst: Update copyright years.
- (COMSPEC): If it's empty, use ComSpec instead.
- (CMP): Ignore white space differences.
- (BASIC_TESTS): Add concat4, nofile, ovrflow1, subi18n.
- (GAWK_EXT_TESTS): Add binmode1, devfd1, devfd2, fwtest, nondec2.
- (msg): Use $(CMP) instead of literal "cmp".
- (inftest): Uncomment the test.
- (nonl): Use NUL, so it works with any DOS/Windows shell.
- (fsspcoln): Run `head' though the system shell.
- (nondec2, nofile, binmode1, subi18n, concat4, devfd1, devfd2)
- (ovrflow1, fwtest, mixed1): New tests.
- (fmttest, hsprint, ovrflow1, posix): Run output through Sed to
- adjust the number of leading zeros in the exponent produced by %e.
- (longwrds): Set SORT to just "sort".
- (exitval2): Use exitval2.w32.
-
-2006-07-01 Eli Zaretskii <eliz@gnu.org>
-
- * popen.h (os_popen): Declare 1st argument "const char *".
-
- * popen.c (scriptify): Declare argument "const char *".
- (os_system): Declare argument "const char *". Add a new local
- variable cmd1 to hold the results of scriptify.
- (os_popen): Declare 1st argument "const char *". Add a new local
- variable cmd to hold the results of scriptify.
-
- * Makefile (mingw32): Update definitions for CF, LF, and LF2. Use
- libmsvcrtp60 during linking (for multibyte and wide character
- support).
- (io$O): Depend on popen.h.
-
- * config.h (HAVE_BTOWC) [_WIN32]: Define.
- (HAVE_INTMAX_T, HAVE_UINTMAX_T, HAVE_INTTYPES_H, HAVE_STDINT_H)
- (HAVE_INTTYPES_H_WITH_UINTMAX, HAVE_ISASCII, HAVE_ISWCTYPE)
- (HAVE_ISWLOWER, HAVE_ISWUPPER, HAVE_LONG_LONG, HAVE_MBRLEN)
- (HAVE_MBRTOWC, HAVE_TOWLOWER, HAVE_TOWUPPER, HAVE_WCHAR_H)
- (HAVE_WCRTOMB, HAVE_WCSCOLL, HAVE_WCTYPE, HAVE_WCTYPE_H)
- (HAVE_WCTYPE_T, HAVE_WINT_T) [__MINGW32__]: Define.
- (inline) [__GNUC__]: Define to __inline__.
- (HAVE_MEMMOVE, HAVE_PUTENV, HAVE_SETLOCALE, HAVE_LOCALE_H)
- (HAVE_SNPRINTF, HAVE_STRTOUL, HAVE_STDLIB_H, HAVE_SYS_STAT_H)
- (HAVE_SYS_TIME_H, HAVE_UNSIGNED_LONG_LONG) [__MINGW32__]: Define.
- (HAVE_UNISTD_H): Define also for __MINGW32__.
- (PACKAGE_BUGREPORT, PACKAGE_NAME, PACKAGE_STRING)
- (PACKAGE_TARNAME, PACKAGE_VERSION): Define.
- (VERSION): Update.
- [__MINGW32__]: Include <limits.h>.
- (HAVE_POPEN_H): Define as 1.
- (ssize_t, intmax_t, uintmax_t): Don't redefine for __MINGW32__.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Sun Jun 26 09:31:35 2005 Scott Deifik <scottd@amgen.com>
-
- * Makefile: Decrease stack size for MSC.
- * Makefile.tst (Maketests): Syncronized with what's happening in
- the main dist.
-
-Thu Apr 28 23:08:51 2005 Scott Deifik <scottd@amgen.com>
-
- * config.h, Makefile.tst: Synced to main distribution.
-
-Wed Feb 16 10:20:18 2005 Scott Deifik <scottd@amgen.com>
-
- * Makefile: Decrease stack size for MSC.
- * Makefile.tst: Syncronized with what's happening in the main dist.
- * config.h: Improved for DJGPP.
-
-Wed Feb 9 14:38:38 2005 Scott Deifik <scottd@amgen.com>
-
- * Makefile, Makefile.tst: Syncronized with what's happening
- in the main dist.
-
-Thu Feb 3 14:57:28 2005 Scott Deifik <scottd@amgen.com>
-
- * config.h (SIZEOF_UNSIGNED_INT, SIZEOF_UNSIGNED_LONG): Add definitions.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Sun Jun 13 17:40:09 2004 Scott Deifik <scottd@amgen.com>
-
- * Makefile: Reduce the stack size for MSC.
- * Makefile.tst: Synchronized with main distribution.
-
-Sun Jun 13 17:39:47 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile (AWKOBJS2, PAWKOBJS2): Restore version.o.
-
-Tue Jun 1 22:31:36 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile (AWKOBJS2, PAWKOBJS2): Remove version.o.
-
- Per Jim Meyering:
- * popen.c (scriptify): Check `realloc' return value.
-
-Tue Mar 2 18:10:55 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile (LIBOJBS): Add `dfa$O' into list.
- (main$O rule): Removed, since patchlev.h not part of dist
- anymore.
-
-Tue Mar 2 18:09:54 2004 Scott Deifik <scottd@amgen.com>
-
- * config.h (HAVE_ALLOCA_H): Undefine.
- * Makefile (LMSC): Adjust stack size for MSC.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Thu Jun 26 15:00:20 2003 Scott Deifik <scottd@amgen.com>
-
- * Makefile.tst: Synchronized to main dist.
-
-Sun Jun 15 19:27:58 2003 Patrick T.J. McPhee <ptjm@interlog.com>
-
- * config.h: Separate the ifdefs for os_system from ssize_t etc.
-
-Sun Jun 15 19:05:15 2003 Scott Deifik <scottd@amgen.com>
-
- * Makefile.tst: Synchronized to main dist.
-
-Mon Jun 9 17:12:24 2003 Patrick T.J. McPhee <ptjm@interlog.com>
-
- * dlfcn.c, dlfcn.h, gawke32.def: New files.
- * Makefile: Changes to allow dynamic linking of libraries
- under Windows32.
-
-Sun May 11 15:19:52 2003 Scott Deifik <scottd@amgen.com>
-
- * config.h: Update defs for ssize_t, intmax_t, uintmax_t.
- * Makefile: Update compile options.
- * gawkmisc.pc (memcpy_long, memset_long): New functions.
- * Makefile.tst: Synchronized with test/Makefile.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Sun Feb 23 16:25:44 2003 Scott Deifik <scottd@amgen.com>
-
- * Makefile, Makefile.tst: Synchronized to main dist.
-
-Sun Feb 16 15:44:20 2003 Scott Deifik <scottd@amgen.com>
-
- * config.h: Updated.
-
-Sun Feb 9 11:57:11 2003 Scott Deifik <scottd@amgen.com>
-
- * Makefile, Makefile.tst: Synchronized to main dist.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Sun Nov 24 18:37:31 2002 Scott Deifik <scottd@amgen.com>
-
- * Makefile, Makefile.tst: Synchronized to main dist.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Thu Apr 18 17:29:16 2002 Scott Deifik <scottd@amgen.com>
-
- * Makefile.tst (strftime): Remove comment on call to $(CMP).
-
-Sun Mar 10 17:05:35 2002 Scott Deifik <scottd@amgen.com>
-
- * Makefile.tst: More clean up and sync with ../test/Makefile.
-
-Thu Jan 3 15:20:17 2002 Scott Deifik <scottd@amgen.com>
-
- * Makefile.tst: Minor clean up and sync with ../test/Makefile.
-
-Wed Dec 19 16:01:58 2001 Peter J. Farley III <pjfarley@dorsai.org>
-
- * gawkmisc.pc: Just use single quote for `quote' for all cases.
-
-Wed Dec 19 15:59:52 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * install.awk: Install gawkinet.info as well.
- * awklib/igawk.awk: Bring in sync with awklib/eg/prog/igawk.sh.
- * makefile (PRSPFILE, PRSP, PLDRSP, DO_PLNK, DO_PBIND, PLDJG): New
- variables.
- (djgpp, djgpp-debug): Set PLNK and PBIND.
- (PBIND): Define to EMPTY as default.
- (PAWKOBJS1, PAWKOBJS2, PGAWKOBJS): New variables.
- (all): Add pgawk.exe.
- (pgawk.exe, $(PRSPFILE)): New rules.
- ($(ALLOBJS)): Add eval_p.o and profile_p.o to the list of files
- that are dependent on awk.h, dfa.h, regex.h, and config.h.
- (eval_p$O, profile_p$O): New dependencies.
- (clean): Add pgawk and $(PRSPFILE) to files that are to be cleaned
- up.
-
-Tue Dec 4 16:44:07 2001 Andreas Buening <andreas.buening@nexgo.de>
-
- Updated OS/2 support.
-
- * gawkmisc.pc (quote): Use single quote for __EMX__.
- (os_arg_fixup): new OS/2 code.
- (os_devopen): for OS/2 return -1.
- (ispath): check for leading drive letter for __EMX__.
- (os_close_on_exec): Add check for defined __EMX__.
- (os_is_setuid): Add real code for __EMX__.
- (_os2_is_abs_path): new function.
- (_os2_unixroot): new function.
- (_os2_unixroot_path): new function.
-
-Tue Sep 25 15:19:53 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.pc (os_close_on_exec): If fd <= 2, return.
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-Tue Jan 30 10:56:05 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * config.h: Per Kay Uwe Rommel, turn on HAVE_FCNTL_H for
- all PC platforms so that BINMODE works on all.
-
-Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * gawkmisc.pc (gawk_name): Support file names with mixed forward-
- and back-slashes.
- (orig_tty_mode): New variable.
- (os_setbinmode): Save the original mode of the console device.
- [__DJGPP__]: Allow the program to be interrupted with Ctrl-C even
- though the console was switched to binary mode.
- (os_restore_mode): New function.
-
-Wed Jan 17 10:59:32 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * gawkmisc.pc (os_close_on_exec) [__DJGPP__]: Don't print the
- warning about failure to set close-on-exec bit, unless it's DJGPP
- 2.04 or later.
-
-Wed Jan 3 19:11:00 2001 Darrel Hankerson <hankedr@auburn.edu>
-
- * popen.c: write script files in binary only if the shell is
- unix-like.
- * Makefile: set threshold (-Gt) on MSC 16bit versions to obtain
- sufficient stack. 3.0.91 builtin.c compiles with optimization,
- in MSC[67], so remove the special compile
-
-Wed Jan 3 19:54:12 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * config.h, gawkmisc.pc: Allow fcntl if DGJPP. From Scott.
-
-Sun Dec 3 16:53:37 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.pc (os_setbinmode): new function.
-
-Sun Dec 3 14:56:38 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile, Makefile.tst, gawkmisc.pc: updated from Scottd.
- * popen.c: updated from Darrell Hankerson.
-
-Wed Nov 22 11:47:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawk.rsp, pc_popen.c, pc_popen.h, Makefile, Makefile.tst,
- gawkmisc.pc: Synched with diffs from Scott Deifik.
- * config.h: Updated from main dist, best guess by me, will
- probably need tweaking.
-
-Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.pc (os_is_setuid): new function.
-
-Thu Nov 5 16:50:09 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * gawkmisc.pc (os_devopen): handle "/dev/null".
-
-Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Close-on-exec changes:
- gawkmisc.pc: (os_close_on_exec, os_isdir): new functions.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed Jun 21 16:44:54 2000 Scott Deifik <scottd@amgen.com>
-
- * Makefile, Makefile.tst: synchronized with main dist, again.
-
-Thu May 18 14:07:52 2000 Scott Deifik <scottd@amgen.com>
-
- * Makefile, Makefile.tst: synchronized with main dist.
- * config.h: Define HAVE_LIMITS_H as 1.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Sun Jun 27 12:27:00 1999 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * Makefile, Makefile.tst, ../README_d/README.pc: finalized.
- * include/process.h: new file
-
-Fri May 21 00:00:00 1999 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * popen.c: MSC (on DOS/Windows32) and MINGW32 now honor SHELL.
- * io.c: MINGW32 reports errno==0 after failure in redirect();
- assume close_one() in this case.
- * io.c: Add HAVE_POPEN_H and let pc/config.h deal with the mess.
- (Can't move everything to config.h because of popen define.)
-
-Sun May 9 09:12:33 1999 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * Add 1999-04-30 changes from Eli Zaretskii <eliz@is.elta.co.il>
- 1. Makefile (TAGS, tags): New targets.
- 2. Makefile.tst (regtes): Pass the value of $CMP to the
- regtest script.
-
-Thu Nov 18 03:48:32 1998 Scott Deifik <scottd@amgen.com>
-
- * Readme.pc: More LFN-based comments.
-
-Thu Nov 12 21:01:24 1998 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * mingw32 target added with corresponding minor changes to getid.c,
- io.c, and config.h.
-
- * vcWin32 needed popen defines in config.h which were inadvertently
- omitted from 3.0.3.
-
- * README.pc updated to clarify the procedure for building
- non-LFN versions on LFN systems, and to note that Windows32 gawk
- may require Windows32 utilities.
-
- * emxbnd target modified to accomodate older versions of emx.
-
-Thu Nov 08 09:11:44 1998 Scott Deifik <scottd@amgen.com>
-
- * pc/Makefile: Stack reduced again for 16bit MSC versions.
-
- * pc/Makefile.tst: Updated to keep in sync with new
- test/Makefile.in. In addition, made to work in Windows 9x
- with non-LFN tools.
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Tue May 13 20:06:09 1997 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * vcWin32 target added. Some new tests for WIN32 in gawkmisc.c
- io.c, and regex.c. Makefile changes for nmake, which can't
- expand $($x).
-
- * config.h updated for BITOPS and NONDECDATA (also in Makefile).
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Fri Jan 17 19:20:45 1997 Darrel Hankerson <hankedr@mail.auburn.edu>
-
- * Makefile: add KUR's emxnt target for emx+RSXNT. Create awk.exe
- "link" to gawk.exe for djgpp target. (Suggested by Eli Zaretskii.
- Should be done as part of a smarter install, since awk.exe only
- works with djgpp gawk.exe.) Separate djgpp-v1 into djgppv1
- target. Install awk.exe if present.
-
- * install.awk: install awk.exe if present (only for djgpp)
-
- * config.h: additional include for emx+RSXNT.
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Thu Aug 1 19:46:00 1996 Scott Deifik <scottd@amgen.com>
-
- * Makefile: Changes for MSC 8.
-
-Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * ChangeLog created.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/pc/ChangeLog.0 b/pc/ChangeLog.0
new file mode 100644
index 00000000..96621200
--- /dev/null
+++ b/pc/ChangeLog.0
@@ -0,0 +1,680 @@
+Mon Jun 20 20:37:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon Jun 20 20:16:58 2011 Eli Zaretskii <eliz@gnu.org>
+
+ * Makefile (LIBOBJS): Remove hard-locale$O.
+ (dfa$O): Remove hard-locale.h from prerequisites.
+
+Sun Jun 5 21:47:33 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Tue May 31 23:09:13 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Tue May 31 23:07:20 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst (fpat2): Fix the test.
+
+Thu May 26 22:12:28 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon May 23 21:52:49 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Sat May 14 22:30:06 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon May 9 15:13:18 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Sun May 8 20:57:16 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon May 2 23:34:54 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Fri Apr 29 12:35:21 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile: Remove dependencies on awkprintf.h.
+
+Sun Apr 24 11:54:58 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Fri Apr 1 11:50:59 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * config.h (ISATTY): Remove definition.
+ * gawkmisc.pc (os_iastty): New function.
+
+Sun Feb 27 22:58:08 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon Feb 21 20:32:36 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst (GAWK_EXT_TESTS): Include profile3. Thanks to
+ Scott Deifik for pointing out the omission.
+
+Wed Feb 16 21:09:50 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.tst (lintwarn): New test.
+
+Wed Feb 16 20:40:27 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon Feb 14 21:30:48 2011 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Sun Feb 13 20:23:07 2011 Eli Zaretskii <eliz@gnu.org>
+
+ * gawkmisc.pc (files_are_same): Change arguments. Compare file
+ names and modification times in addition to devices and inodes.
+ * Makefile (LIBOBJS): Add hard-locale$O.
+ Update prerequisites.
+ * config.h (ISATTY) [__MINGW32__ || _MSC_VER]: Define.
+
+Mon Feb 7 22:45:28 2011 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.tst: Sync with mainline version.
+
+Tue Feb 1 23:15:45 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Thu Jan 27 21:31:23 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Fixes for dumpvars and mv, cp, et. al.
+
+Mon Jan 17 22:21:07 2011 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Mon Jan 17 22:17:07 2011 Arnold Robbins <arnold@skeeve.com>
+
+ * config.h: Remove definitions of PIPES_SIMULATED and _NFILE for
+ DJGPP. Per Eli, they aren't needed here.
+
+2011-01-08 Eli Zaretskii <eliz@gnu.org>
+
+ * popen.c (scriptify): Fix syntax error.
+
+ * config.h (HAVE___ARGZ_COUNT, HAVE___ARGZ_NEXT)
+ (HAVE___ARGZ_STRINGIFY): Don't define.
+ (HAVE_PORTALS): Remove reference.
+
+ * gawkmisc.pc (unsetenv) [__DJGPP__]: Implement.
+ (usleep) [__MINGW32__]: Resurrect.
+
+Tue Jan 4 11:20:40 2011 Arnold Robbins <arnold@skeeve.com>
+
+ * config.h: Add PIPES_SIMULATED and definition of _NFILE for
+ DJGPP.
+
+Sat Dec 18 22:12:42 2010 Arnold Robbins <arnold@skeeve.com>
+
+ * gawkw32.def: Removed.
+ * Makefile (gawk.exp): Removed target and rule.
+
+Sat Dec 18 20:13:35 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * popen.h: Remove the parts conditioned by _MSC_VER and OS2. Use
+ __DJGPP__ instead of __GO32__.
+
+ * popen.c (popen, pclose) [OS2, _MSC_VER]: Remove definitions.
+ (unixshell, scriptify, os_pclose): Remove OS2 parts.
+
+ * getid.c: Remove the parts conditioned by _MSC_VER and OS2.
+
+ * config.h: Remove the parts conditioned by _MSC_VER.
+
+ * Makefile: Drop support for DJGPP v1.x and for Microsoft
+ compilers on DOS/Windows.
+
+ * gawkmisc.pc (setenv, unsetenv) [__MINGW32__]: Emulations for MinGW.
+
+ * Makefile (DLMINGW32): New variable.
+ (mingw32): Pass it to sub-Make.
+
+ * dlfnc.h, dlfcn.c, include/*: Removed.
+
+Mon Nov 29 20:10:00 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * config.h (HAVE_STRFTIME): Don't define for __MINGW32__. Define
+ strftime to rpl_strftime, to avoid infinite recursion in
+ missing_d/strftime.c.
+
+Fri Nov 12 12:36:18 2010 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Thu Oct 28 08:17:00 2010 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline version.
+
+Wed Jul 14 23:05:57 2010 Eli Zaretskii <eliz@gnu.org>
+
+ * config.h (HAVE_USLEEP) [__MINGW32__]: Define.
+
+ * gawkmisc.pc (usleep) [__MINGW32__]: Implementation of `usleep'
+ for MinGW.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Mon May 3 21:15:49 2010 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst (lc_num1): Now passes, remove "expect to fail"
+ message.
+
+Tue Apr 13 22:13:51 2010 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * config.h, Makefile.tst: Sync with mainline.
+
+Tue Feb 2 20:49:20 2010 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Jul 13 05:43:07 2009 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Still more sync with mainline.
+
+Tue Jun 23 05:24:12 2009 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: More sync with mainline.
+
+Thu Jun 18 06:24:29 2009 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline.
+
+2008-07-26 Eli Zaretskii <eliz@gnu.org>
+
+ * config.h (WEXITSTATUS) [_MSC_VER || __MINGW32__]: Define.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Sat Oct 20 22:42:08 2007 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst: Sync with mainline, Revise inftest.
+
+Fri Oct 19 05:37:37 2007 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * config.h: Add definition of HAVE_ATEXIT. Needed for replacement
+ sprintf.
+
+Thu Oct 4 21:19:54 2007 Juan M. Guerrero <juan.guerrero@gmx.de>
+
+ * Makefile.tst (fmtspcl.ok): Remove unneeded dependency on Makefile.
+
+Wed Sep 26 15:10:17 2007 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makefile.tst (poundbang): Fix path in call to gawk.
+ (nofile): Fix output message with sed to match what test suite wants.
+
+Wed Sep 26 14:46:34 2007 Eli Zaretskii <eliz@gnu.org>
+
+ * Makefile.tst (msg): Use $(CMP) instead a literal "cmp".
+ (nonl): Use NUL instead of /dev/null.
+ (devfd, pid, fmtspcl, nofile, rstest4, rstest5, getlnhd, clos1way):
+ Expect to fail on MinGW.
+ (fmtspcl.ok): Depend on Makefile, not Makefile.tst.
+ (pipeio2, hsprint, fmttest): Expect formatting or whitespace
+ differences.
+ (exitval2): Use exitval2.w32 instead of exitval2.awk.
+
+ * config.h (HAVE_DECL_TZNAME) [__MINGW32__]: Define.
+ (HAVE_ALLOCA) [__MINGW32__]: Don't define.
+ (HAVE_SNPRINTF) [__MINGW32__]: Remove _MSC_VER condition.
+
+Tue Sep 25 08:22:11 2007 KIMURA Koichi <kimura.koichi@canon.co.jp>
+
+ * config.h: For Visual Studio, undef restrict, define HAVE_TMPFILE,
+ undef TIME_WITH_SYS_TIME.
+
+Mon May 21 05:46:46 2007 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * config.h (HAVE_MKTIME): Define.
+
+Wed May 16 22:12:55 2007 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ * Makfile.tst: Changes for DJGPP, bring in sync with main
+ test/Makefile.
+
+Wed May 9 21:01:18 2007 Scott Deifik <scottd.mail@sbcglobal.net>
+
+ DJGPP changes:
+
+ * config.h: Add HAVE_MKTME, HAVE_MKSTEMP, conditionalize
+ HAVE_SNPRINTF. (ADR: #define out restrict).
+ * Makefile: Add replace$0 to AWKOBJS2 and PAWKOBJS2.
+
+2007-03-19 Juan M. Guerrero <juan.guerrero@gmx.de>
+
+ * config.h: Undef HAVE_ALLOCA for DJGPP.
+ * Makefile: Add floatcomp$O to AWKOBJS1 and PAWKOBJS1.
+
+2007-02-25 Juan M. Guerrero <juan.guerrero@gmx.de>
+
+ * config.h: Let DEFPATH reflect DJGPP installation directory tree.
+ * Makefile: pkgdatadir variable defined to $(prefix)/lib/awk.
+ * Makefile: In DJGPP section use the DJGPP environment variable to
+ redefine the pkgdatadir variable.
+
+2006-07-22 Eli Zaretskii <eliz@gnu.org>
+
+ * Makefile.tst: Update copyright years.
+ (COMSPEC): If it's empty, use ComSpec instead.
+ (CMP): Ignore white space differences.
+ (BASIC_TESTS): Add concat4, nofile, ovrflow1, subi18n.
+ (GAWK_EXT_TESTS): Add binmode1, devfd1, devfd2, fwtest, nondec2.
+ (msg): Use $(CMP) instead of literal "cmp".
+ (inftest): Uncomment the test.
+ (nonl): Use NUL, so it works with any DOS/Windows shell.
+ (fsspcoln): Run `head' though the system shell.
+ (nondec2, nofile, binmode1, subi18n, concat4, devfd1, devfd2)
+ (ovrflow1, fwtest, mixed1): New tests.
+ (fmttest, hsprint, ovrflow1, posix): Run output through Sed to
+ adjust the number of leading zeros in the exponent produced by %e.
+ (longwrds): Set SORT to just "sort".
+ (exitval2): Use exitval2.w32.
+
+2006-07-01 Eli Zaretskii <eliz@gnu.org>
+
+ * popen.h (os_popen): Declare 1st argument "const char *".
+
+ * popen.c (scriptify): Declare argument "const char *".
+ (os_system): Declare argument "const char *". Add a new local
+ variable cmd1 to hold the results of scriptify.
+ (os_popen): Declare 1st argument "const char *". Add a new local
+ variable cmd to hold the results of scriptify.
+
+ * Makefile (mingw32): Update definitions for CF, LF, and LF2. Use
+ libmsvcrtp60 during linking (for multibyte and wide character
+ support).
+ (io$O): Depend on popen.h.
+
+ * config.h (HAVE_BTOWC) [_WIN32]: Define.
+ (HAVE_INTMAX_T, HAVE_UINTMAX_T, HAVE_INTTYPES_H, HAVE_STDINT_H)
+ (HAVE_INTTYPES_H_WITH_UINTMAX, HAVE_ISASCII, HAVE_ISWCTYPE)
+ (HAVE_ISWLOWER, HAVE_ISWUPPER, HAVE_LONG_LONG, HAVE_MBRLEN)
+ (HAVE_MBRTOWC, HAVE_TOWLOWER, HAVE_TOWUPPER, HAVE_WCHAR_H)
+ (HAVE_WCRTOMB, HAVE_WCSCOLL, HAVE_WCTYPE, HAVE_WCTYPE_H)
+ (HAVE_WCTYPE_T, HAVE_WINT_T) [__MINGW32__]: Define.
+ (inline) [__GNUC__]: Define to __inline__.
+ (HAVE_MEMMOVE, HAVE_PUTENV, HAVE_SETLOCALE, HAVE_LOCALE_H)
+ (HAVE_SNPRINTF, HAVE_STRTOUL, HAVE_STDLIB_H, HAVE_SYS_STAT_H)
+ (HAVE_SYS_TIME_H, HAVE_UNSIGNED_LONG_LONG) [__MINGW32__]: Define.
+ (HAVE_UNISTD_H): Define also for __MINGW32__.
+ (PACKAGE_BUGREPORT, PACKAGE_NAME, PACKAGE_STRING)
+ (PACKAGE_TARNAME, PACKAGE_VERSION): Define.
+ (VERSION): Update.
+ [__MINGW32__]: Include <limits.h>.
+ (HAVE_POPEN_H): Define as 1.
+ (ssize_t, intmax_t, uintmax_t): Don't redefine for __MINGW32__.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Sun Jun 26 09:31:35 2005 Scott Deifik <scottd@amgen.com>
+
+ * Makefile: Decrease stack size for MSC.
+ * Makefile.tst (Maketests): Syncronized with what's happening in
+ the main dist.
+
+Thu Apr 28 23:08:51 2005 Scott Deifik <scottd@amgen.com>
+
+ * config.h, Makefile.tst: Synced to main distribution.
+
+Wed Feb 16 10:20:18 2005 Scott Deifik <scottd@amgen.com>
+
+ * Makefile: Decrease stack size for MSC.
+ * Makefile.tst: Syncronized with what's happening in the main dist.
+ * config.h: Improved for DJGPP.
+
+Wed Feb 9 14:38:38 2005 Scott Deifik <scottd@amgen.com>
+
+ * Makefile, Makefile.tst: Syncronized with what's happening
+ in the main dist.
+
+Thu Feb 3 14:57:28 2005 Scott Deifik <scottd@amgen.com>
+
+ * config.h (SIZEOF_UNSIGNED_INT, SIZEOF_UNSIGNED_LONG): Add definitions.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Sun Jun 13 17:40:09 2004 Scott Deifik <scottd@amgen.com>
+
+ * Makefile: Reduce the stack size for MSC.
+ * Makefile.tst: Synchronized with main distribution.
+
+Sun Jun 13 17:39:47 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile (AWKOBJS2, PAWKOBJS2): Restore version.o.
+
+Tue Jun 1 22:31:36 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile (AWKOBJS2, PAWKOBJS2): Remove version.o.
+
+ Per Jim Meyering:
+ * popen.c (scriptify): Check `realloc' return value.
+
+Tue Mar 2 18:10:55 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile (LIBOJBS): Add `dfa$O' into list.
+ (main$O rule): Removed, since patchlev.h not part of dist
+ anymore.
+
+Tue Mar 2 18:09:54 2004 Scott Deifik <scottd@amgen.com>
+
+ * config.h (HAVE_ALLOCA_H): Undefine.
+ * Makefile (LMSC): Adjust stack size for MSC.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Thu Jun 26 15:00:20 2003 Scott Deifik <scottd@amgen.com>
+
+ * Makefile.tst: Synchronized to main dist.
+
+Sun Jun 15 19:27:58 2003 Patrick T.J. McPhee <ptjm@interlog.com>
+
+ * config.h: Separate the ifdefs for os_system from ssize_t etc.
+
+Sun Jun 15 19:05:15 2003 Scott Deifik <scottd@amgen.com>
+
+ * Makefile.tst: Synchronized to main dist.
+
+Mon Jun 9 17:12:24 2003 Patrick T.J. McPhee <ptjm@interlog.com>
+
+ * dlfcn.c, dlfcn.h, gawke32.def: New files.
+ * Makefile: Changes to allow dynamic linking of libraries
+ under Windows32.
+
+Sun May 11 15:19:52 2003 Scott Deifik <scottd@amgen.com>
+
+ * config.h: Update defs for ssize_t, intmax_t, uintmax_t.
+ * Makefile: Update compile options.
+ * gawkmisc.pc (memcpy_long, memset_long): New functions.
+ * Makefile.tst: Synchronized with test/Makefile.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Sun Feb 23 16:25:44 2003 Scott Deifik <scottd@amgen.com>
+
+ * Makefile, Makefile.tst: Synchronized to main dist.
+
+Sun Feb 16 15:44:20 2003 Scott Deifik <scottd@amgen.com>
+
+ * config.h: Updated.
+
+Sun Feb 9 11:57:11 2003 Scott Deifik <scottd@amgen.com>
+
+ * Makefile, Makefile.tst: Synchronized to main dist.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Sun Nov 24 18:37:31 2002 Scott Deifik <scottd@amgen.com>
+
+ * Makefile, Makefile.tst: Synchronized to main dist.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Thu Apr 18 17:29:16 2002 Scott Deifik <scottd@amgen.com>
+
+ * Makefile.tst (strftime): Remove comment on call to $(CMP).
+
+Sun Mar 10 17:05:35 2002 Scott Deifik <scottd@amgen.com>
+
+ * Makefile.tst: More clean up and sync with ../test/Makefile.
+
+Thu Jan 3 15:20:17 2002 Scott Deifik <scottd@amgen.com>
+
+ * Makefile.tst: Minor clean up and sync with ../test/Makefile.
+
+Wed Dec 19 16:01:58 2001 Peter J. Farley III <pjfarley@dorsai.org>
+
+ * gawkmisc.pc: Just use single quote for `quote' for all cases.
+
+Wed Dec 19 15:59:52 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * install.awk: Install gawkinet.info as well.
+ * awklib/igawk.awk: Bring in sync with awklib/eg/prog/igawk.sh.
+ * makefile (PRSPFILE, PRSP, PLDRSP, DO_PLNK, DO_PBIND, PLDJG): New
+ variables.
+ (djgpp, djgpp-debug): Set PLNK and PBIND.
+ (PBIND): Define to EMPTY as default.
+ (PAWKOBJS1, PAWKOBJS2, PGAWKOBJS): New variables.
+ (all): Add pgawk.exe.
+ (pgawk.exe, $(PRSPFILE)): New rules.
+ ($(ALLOBJS)): Add eval_p.o and profile_p.o to the list of files
+ that are dependent on awk.h, dfa.h, regex.h, and config.h.
+ (eval_p$O, profile_p$O): New dependencies.
+ (clean): Add pgawk and $(PRSPFILE) to files that are to be cleaned
+ up.
+
+Tue Dec 4 16:44:07 2001 Andreas Buening <andreas.buening@nexgo.de>
+
+ Updated OS/2 support.
+
+ * gawkmisc.pc (quote): Use single quote for __EMX__.
+ (os_arg_fixup): new OS/2 code.
+ (os_devopen): for OS/2 return -1.
+ (ispath): check for leading drive letter for __EMX__.
+ (os_close_on_exec): Add check for defined __EMX__.
+ (os_is_setuid): Add real code for __EMX__.
+ (_os2_is_abs_path): new function.
+ (_os2_unixroot): new function.
+ (_os2_unixroot_path): new function.
+
+Tue Sep 25 15:19:53 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.pc (os_close_on_exec): If fd <= 2, return.
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+Tue Jan 30 10:56:05 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * config.h: Per Kay Uwe Rommel, turn on HAVE_FCNTL_H for
+ all PC platforms so that BINMODE works on all.
+
+Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * gawkmisc.pc (gawk_name): Support file names with mixed forward-
+ and back-slashes.
+ (orig_tty_mode): New variable.
+ (os_setbinmode): Save the original mode of the console device.
+ [__DJGPP__]: Allow the program to be interrupted with Ctrl-C even
+ though the console was switched to binary mode.
+ (os_restore_mode): New function.
+
+Wed Jan 17 10:59:32 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * gawkmisc.pc (os_close_on_exec) [__DJGPP__]: Don't print the
+ warning about failure to set close-on-exec bit, unless it's DJGPP
+ 2.04 or later.
+
+Wed Jan 3 19:11:00 2001 Darrel Hankerson <hankedr@auburn.edu>
+
+ * popen.c: write script files in binary only if the shell is
+ unix-like.
+ * Makefile: set threshold (-Gt) on MSC 16bit versions to obtain
+ sufficient stack. 3.0.91 builtin.c compiles with optimization,
+ in MSC[67], so remove the special compile
+
+Wed Jan 3 19:54:12 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * config.h, gawkmisc.pc: Allow fcntl if DGJPP. From Scott.
+
+Sun Dec 3 16:53:37 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.pc (os_setbinmode): new function.
+
+Sun Dec 3 14:56:38 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile, Makefile.tst, gawkmisc.pc: updated from Scottd.
+ * popen.c: updated from Darrell Hankerson.
+
+Wed Nov 22 11:47:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawk.rsp, pc_popen.c, pc_popen.h, Makefile, Makefile.tst,
+ gawkmisc.pc: Synched with diffs from Scott Deifik.
+ * config.h: Updated from main dist, best guess by me, will
+ probably need tweaking.
+
+Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.pc (os_is_setuid): new function.
+
+Thu Nov 5 16:50:09 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * gawkmisc.pc (os_devopen): handle "/dev/null".
+
+Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Close-on-exec changes:
+ gawkmisc.pc: (os_close_on_exec, os_isdir): new functions.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed Jun 21 16:44:54 2000 Scott Deifik <scottd@amgen.com>
+
+ * Makefile, Makefile.tst: synchronized with main dist, again.
+
+Thu May 18 14:07:52 2000 Scott Deifik <scottd@amgen.com>
+
+ * Makefile, Makefile.tst: synchronized with main dist.
+ * config.h: Define HAVE_LIMITS_H as 1.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Sun Jun 27 12:27:00 1999 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * Makefile, Makefile.tst, ../README_d/README.pc: finalized.
+ * include/process.h: new file
+
+Fri May 21 00:00:00 1999 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * popen.c: MSC (on DOS/Windows32) and MINGW32 now honor SHELL.
+ * io.c: MINGW32 reports errno==0 after failure in redirect();
+ assume close_one() in this case.
+ * io.c: Add HAVE_POPEN_H and let pc/config.h deal with the mess.
+ (Can't move everything to config.h because of popen define.)
+
+Sun May 9 09:12:33 1999 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * Add 1999-04-30 changes from Eli Zaretskii <eliz@is.elta.co.il>
+ 1. Makefile (TAGS, tags): New targets.
+ 2. Makefile.tst (regtes): Pass the value of $CMP to the
+ regtest script.
+
+Thu Nov 18 03:48:32 1998 Scott Deifik <scottd@amgen.com>
+
+ * Readme.pc: More LFN-based comments.
+
+Thu Nov 12 21:01:24 1998 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * mingw32 target added with corresponding minor changes to getid.c,
+ io.c, and config.h.
+
+ * vcWin32 needed popen defines in config.h which were inadvertently
+ omitted from 3.0.3.
+
+ * README.pc updated to clarify the procedure for building
+ non-LFN versions on LFN systems, and to note that Windows32 gawk
+ may require Windows32 utilities.
+
+ * emxbnd target modified to accomodate older versions of emx.
+
+Thu Nov 08 09:11:44 1998 Scott Deifik <scottd@amgen.com>
+
+ * pc/Makefile: Stack reduced again for 16bit MSC versions.
+
+ * pc/Makefile.tst: Updated to keep in sync with new
+ test/Makefile.in. In addition, made to work in Windows 9x
+ with non-LFN tools.
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Tue May 13 20:06:09 1997 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * vcWin32 target added. Some new tests for WIN32 in gawkmisc.c
+ io.c, and regex.c. Makefile changes for nmake, which can't
+ expand $($x).
+
+ * config.h updated for BITOPS and NONDECDATA (also in Makefile).
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Fri Jan 17 19:20:45 1997 Darrel Hankerson <hankedr@mail.auburn.edu>
+
+ * Makefile: add KUR's emxnt target for emx+RSXNT. Create awk.exe
+ "link" to gawk.exe for djgpp target. (Suggested by Eli Zaretskii.
+ Should be done as part of a smarter install, since awk.exe only
+ works with djgpp gawk.exe.) Separate djgpp-v1 into djgppv1
+ target. Install awk.exe if present.
+
+ * install.awk: install awk.exe if present (only for djgpp)
+
+ * config.h: additional include for emx+RSXNT.
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Thu Aug 1 19:46:00 1996 Scott Deifik <scottd@amgen.com>
+
+ * Makefile: Changes for MSC 8.
+
+Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * ChangeLog created.
diff --git a/po/ChangeLog b/po/ChangeLog
index 3c951001..8aaeb418 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -1,127 +1,5 @@
-Wed Jun 8 22:14:07 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * sv.po, sv.gmo: Updated!
- * LINGUAS: Updated and sorted.
-
-Thu May 19 17:10:07 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * LINGUAS: Updated and sorted.
-
-Wed May 18 21:45:31 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * LINGUAS: Updated and sorted.
-
-Sun May 1 20:32:10 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * LINGUAS: Removed all files not updated recently; some have been
- abandoned all the way back to 2002.
- * README: New file.
-
-Mon Mar 21 20:40:28 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * LINGUAS: Sorted.
-
-Fri Mar 18 12:01:21 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * fi.po, fi.gmo: New files.
- * LINGUAS: Updated.
-
-2010-12-22 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.18.1.
- * Rules-quot: Upgrade to gettext-0.18.1.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Mon Jun 8 23:12:09 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in.in: Reinstate change of 2008.12.18.
-
-2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.17.
-
-Thu Dec 18 20:36:34 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in.in (install-dvi, install-ps): New targets that
- do nothing, per email from "Stoddard, Isaac A"
- <isaac.a.stoddard@boeing.com>.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Mon Sep 10 12:41:34 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * All .po files: Updated to GPL 3.
-
-2007-01-08 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.16.1.
- * Makevar.template: New file, copied in from gettext-0.16.1.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-2004-02-19 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.14.1.
- * Rules-quot: Upgrade to gettext-0.14.1.
-
-2004-01-16 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.13.1.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-2003-06-16 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.12.1.
- * Rules-quot: New file, from gettext-0.12.1.
- * boldquot.sed: New file, from gettext-0.12.1.
- * en@boldquot.header: New file, from gettext-0.12.1.
- * en@quot.header: New file, from gettext-0.12.1.
- * insert-header.sin: New file, from gettext-0.12.1.
- * quot.sed: New file, from gettext-0.12.1.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Mon Dec 2 11:49:59 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Rules-quot, en@quot.reader, en@boldquot.reader: removed.
-
-Thu Sep 19 11:00:00 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Updated to gettext 0.11.5.
-
-Mon Jun 17 18:26:23 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * POTFILES.in: Updated with list of new regex files.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-2002-04-09 gettextize <bug-gnu-gettext@gnu.org>
-
- * Makefile.in.in: Upgrade to gettext-0.11.1.
- * remove-potcdate.sin: New file, from gettext-0.11.1.
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/po/ChangeLog.0 b/po/ChangeLog.0
new file mode 100644
index 00000000..3c951001
--- /dev/null
+++ b/po/ChangeLog.0
@@ -0,0 +1,127 @@
+Wed Jun 8 22:14:07 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * sv.po, sv.gmo: Updated!
+ * LINGUAS: Updated and sorted.
+
+Thu May 19 17:10:07 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * LINGUAS: Updated and sorted.
+
+Wed May 18 21:45:31 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * LINGUAS: Updated and sorted.
+
+Sun May 1 20:32:10 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * LINGUAS: Removed all files not updated recently; some have been
+ abandoned all the way back to 2002.
+ * README: New file.
+
+Mon Mar 21 20:40:28 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * LINGUAS: Sorted.
+
+Fri Mar 18 12:01:21 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fi.po, fi.gmo: New files.
+ * LINGUAS: Updated.
+
+2010-12-22 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.18.1.
+ * Rules-quot: Upgrade to gettext-0.18.1.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Jun 8 23:12:09 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in.in: Reinstate change of 2008.12.18.
+
+2009-06-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.17.
+
+Thu Dec 18 20:36:34 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in.in (install-dvi, install-ps): New targets that
+ do nothing, per email from "Stoddard, Isaac A"
+ <isaac.a.stoddard@boeing.com>.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Mon Sep 10 12:41:34 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * All .po files: Updated to GPL 3.
+
+2007-01-08 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.16.1.
+ * Makevar.template: New file, copied in from gettext-0.16.1.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+2004-02-19 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.14.1.
+ * Rules-quot: Upgrade to gettext-0.14.1.
+
+2004-01-16 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.13.1.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+2003-06-16 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.12.1.
+ * Rules-quot: New file, from gettext-0.12.1.
+ * boldquot.sed: New file, from gettext-0.12.1.
+ * en@boldquot.header: New file, from gettext-0.12.1.
+ * en@quot.header: New file, from gettext-0.12.1.
+ * insert-header.sin: New file, from gettext-0.12.1.
+ * quot.sed: New file, from gettext-0.12.1.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Mon Dec 2 11:49:59 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Rules-quot, en@quot.reader, en@boldquot.reader: removed.
+
+Thu Sep 19 11:00:00 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Updated to gettext 0.11.5.
+
+Mon Jun 17 18:26:23 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * POTFILES.in: Updated with list of new regex files.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+2002-04-09 gettextize <bug-gnu-gettext@gnu.org>
+
+ * Makefile.in.in: Upgrade to gettext-0.11.1.
+ * remove-potcdate.sin: New file, from gettext-0.11.1.
+
diff --git a/po/da.gmo b/po/da.gmo
index 4e6c8aed..3b92979b 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index aff99634..f8fee301 100644
--- a/po/da.po
+++ b/po/da.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-22 10:37+0200\n"
"Last-Translator: Keld Simonsen <keld@keldix.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -1994,12 +1994,12 @@ msgstr ""
"Ugyldigt multibyte data fundet. MÃ¥ske er der uoverensstemmelse mellem dine "
"data og dit locale."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s '%s': kunne ikke få fat på fd flag: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s '%s': kunne ikke sætte luk-ved-exec (fcntl F_SETFD: %s)"
diff --git a/po/de.gmo b/po/de.gmo
index 6f447080..dbcb5d22 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index 89a1ce25..76c58cad 100644
--- a/po/de.po
+++ b/po/de.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.81\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-18 14:43+0200\n"
"Last-Translator: Philipp Thomas <pth@suse.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
@@ -2054,14 +2054,14 @@ msgstr ""
"Es wurden unbekannte Multibyte-Daten gefunden. Ihre Daten entsprechen "
"neventuell nicht der gesetzten Locale"
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr ""
"%s %s »%s«: Die Kennungen des Dateideskriptors konnten nicht abgefragt "
"werden: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr ""
diff --git a/po/es.gmo b/po/es.gmo
index 9b324758..5e1cc0ce 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index 1723d10f..3aaea217 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-22 23:33-0500\n"
"Last-Translator: Cristian Othón Martínez Vera <cfuga@itam.mx>\n"
"Language-Team: Spanish <es@li.org>\n"
@@ -2041,13 +2041,13 @@ msgstr ""
"Se detectaron datos multibyte inválidos. Puede ser que no coincidan sus "
"datos con su local."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr ""
"%s %s `%s': no se pueden obtener las opciones del fd: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s `%s': no se puede establecer close-on-exec: (fcntl F_SETFD: %s)"
diff --git a/po/fi.gmo b/po/fi.gmo
index 51f691b9..f45d001a 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index 5a418604..6ff929be 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-22 11:32+0200\n"
"Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -2014,12 +2014,12 @@ msgstr ""
"Virheellinen monitavutieto havaittu. Paikallisasetuksesi ja tietojesi "
"välillä saattaa olla täsmäämättömyys."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s â€%sâ€: ei voitu hakea fd-lippuja: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s â€%sâ€: ei voitu asettaa close-on-exec: (fcntl F_SETFD: %s)"
diff --git a/po/fr.gmo b/po/fr.gmo
index 0aeb6ed3..b7be5e92 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 3aa805f7..c1d2b8b7 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-22 09:31+0200\n"
"Last-Translator: Jean-Philippe Guérard <jean-philippe.guerard@corbeaunoir."
"org>\n"
@@ -2036,13 +2036,13 @@ msgstr ""
"Données multioctets non valables détectées. Possible incohérence entre "
"données et paramètres régionaux (locale)."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr ""
"%s %s « %s » : impossible d'obtenir les drapeaux du fd : (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr ""
diff --git a/po/gawk.pot b/po/gawk.pot
index 08d92ecc..302ece16 100644
--- a/po/gawk.pot
+++ b/po/gawk.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.86\n"
+"Project-Id-Version: gawk 4.0.0\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1912,12 +1912,12 @@ msgid ""
"and your locale."
msgstr ""
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr ""
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr ""
diff --git a/po/it.gmo b/po/it.gmo
index 80b17227..be3081ec 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index 3d23003d..b8a246dd 100644
--- a/po/it.po
+++ b/po/it.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.81\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-03-19 16:52+0100\n"
"Last-Translator: Antonio Colombo <azc100@gmail.com>\n"
"Language-Team: Italian <it@li.org>\n"
@@ -2000,12 +2000,12 @@ msgstr ""
"Trovati dati multi-byte invalidi. Può esserci una differenza tra i dati e la "
"codifica locale."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s `%s': non riesco a ottenere flag 'fd': (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr ""
diff --git a/po/ja.gmo b/po/ja.gmo
index 26195d6a..08320041 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 4caefd35..aef2235d 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-25 09:44+0900\n"
"Last-Translator: Yasuaki Taniguchi <yasuakit@gmail.com>\n"
"Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
@@ -1983,12 +1983,12 @@ msgstr ""
"無効ãªãƒžãƒ«ãƒãƒã‚¤ãƒˆãƒ‡ãƒ¼ã‚¿ãŒæ¤œå‡ºã•れã¾ã—ãŸã€‚データã¨ãƒ­ã‚±ãƒ¼ãƒ«ãŒä¸€è‡´ã—ã¦ã„ãªã„よ"
"ã†ã§ã™ã€‚"
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s `%s': fd フラグをå–å¾—ã§ãã¾ã›ã‚“: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s `%s': close-on-exec を設定ã§ãã¾ã›ã‚“: (fcntl F_SETFD: %s)"
diff --git a/po/nl.gmo b/po/nl.gmo
index c4cd185c..e6f75154 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 21d4c8d2..5601ec01 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-22 21:03+0200\n"
"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
@@ -2006,14 +2006,14 @@ msgstr ""
"Ongeldige multibyte-gegevens gevonden.\n"
"Uw gegevens passen vermoedelijk niet bij uw taalregio."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr ""
"%s %s '%s': kan bestandsdescriptorvlaggen niet verkrijgen: (fcntl F_GETFD: "
"%s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s '%s': kan 'close-on-exec' niet activeren: (fcntl F_SETFD: %s)"
diff --git a/po/pl.gmo b/po/pl.gmo
index 2c2d0465..068e6be0 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 82a85b59..3a68d675 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.81\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-05-14 11:41-0400\n"
"Last-Translator: Wojciech Polak <polak@gnu.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -2031,12 +2031,12 @@ msgstr ""
"Wykryto nieprawidłowe dane. Możliwe jest niedopasowanie pomiędzy Twoimi "
"danymi a ustawieniami regionalnymi."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s `%s': nie można uzyskać flag fd: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s `%s': nie można ustawić close-on-exec: (fcntl F_SETFD: %s)"
diff --git a/po/sv.gmo b/po/sv.gmo
index 2197ecc9..f1b38753 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index 9e72e55b..e8385551 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: gawk 3.1.83\n"
"Report-Msgid-Bugs-To: arnold@skeeve.com\n"
-"POT-Creation-Date: 2011-06-17 11:09+0300\n"
+"POT-Creation-Date: 2011-06-23 09:46+0300\n"
"PO-Revision-Date: 2011-06-07 14:22+0200\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -1999,12 +1999,12 @@ msgstr ""
"Ogiltig multibytedata upptäckt. Dina data och din lokal stämmer kanske inte "
"överens."
-#: posix/gawkmisc.c:175
+#: posix/gawkmisc.c:176
#, c-format
msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)"
msgstr "%s %s \"%s\": kunde inte hämta fb-flaggor: (fcntl F_GETFD: %s)"
-#: posix/gawkmisc.c:187
+#: posix/gawkmisc.c:188
#, c-format
msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)"
msgstr "%s %s \"%s\": kunde inte sätta stäng-vid-exec (fcntl F_SETFD: %s)"
diff --git a/posix/ChangeLog b/posix/ChangeLog
index eae49b37..8aaeb418 100644
--- a/posix/ChangeLog
+++ b/posix/ChangeLog
@@ -1,174 +1,5 @@
-Mon Jun 20 20:19:03 2011 Corinna Vinschen <vinschen@redhat.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * gawkmisc.c: Add include of <windows.h> for Cygwin to
- remove a compiler warning.
-
-Mon May 2 23:38:06 2011 Corinna Vinschen <vinschen@redhat.com>
-
- * gawkmisc.c (cygwin_premain0): Use the real type for the secondnd
- argument.
-
-Fri Apr 1 11:50:59 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (os_iastty): New function.
-
-Sun Feb 13 20:23:34 2011 Eli Zaretskii <eliz@gnu.org>
-
- * gawkmisc.c (files_are_same): Change arguments; call `stat' as
- part of the body.
-
-Tue Feb 1 23:05:51 2011 Corinna Vinschen <vinschen@redhat.com>
-
- Make values of ctype macros into unsigned char to fix
- warnings found on Cygwin / Newlib.
-
- * gawkmisc.c (optimal_bufsize): Add cast.
-
-Mon Jan 24 22:21:08 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Everything: Move to ANSI headers on the function definitions.
-
-Mon Jan 24 22:20:43 2011 Corinna Vinschen <vinschen@redhat.com>
-
- * gawkmisc.c: Update CYGWIN code.
-
-Wed Nov 24 17:26:24 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (os_close_on_exec): After discussion on the Bash
- list, change the routine to follow POSIX and use read/modify/write
- on the flags value.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Tue Apr 13 22:38:01 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c: Remove use of ISxxx in favor of standard names.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Sun Apr 2 21:43:02 2006 Corinna Vinschen <vinschen@redhat.com>
-
- * gawkmisc.c (os_setbinmode): Call `setmode' for Cygwin.
- (cygwin_premain0, cygwin_premain2): Change type of `myself'
- parameter to `void *'.
-
-Sun Mar 12 22:45:11 2006 Corinna Vinschen <vinschen@redhat.com>
-
- * gawkmisc.c (cygwin_premain2): New function.
- Fixes CR-LF problem with already open stdin.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Sun May 25 16:23:43 2003 Corinna Vinschen <vinschen@redhat.com>
-
- * gawkmisc.c (cygwin_premain0): New function.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Tue Dec 17 11:05:11 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (optimal_bufsize): Stat the file first, so that
- stb is always valid for higher level code.
-
-Thu Nov 28 10:20:05 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (optimal_bufsize): Enhance to use AWKBUFSIZE
- environment variable for debugging.
-
-Tue Jun 11 22:18:42 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * gawkmisc.c (DEFBLKSIZE): Add check for st_blksize > 0,
- fixes weird bug on some versions of HP-UX.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Tue Sep 25 15:19:53 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (os_close_on_exec): If fd <= 2, return.
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * gawkmisc.c (os_restore_mode): New function.
-
-Sun Dec 3 16:53:37 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (os_setbinmode): New function.
-
-Tue Nov 14 16:13:08 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c: Remove all includes. Done by ../gawkmisc.c.
-
-Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.c (os_is_setuid): new function.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Close-on-exec changes:
- gawkmisc.c: (os_close_on_exec, os_isdir): new functions.
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * ChangeLog created.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/posix/ChangeLog.0 b/posix/ChangeLog.0
new file mode 100644
index 00000000..eae49b37
--- /dev/null
+++ b/posix/ChangeLog.0
@@ -0,0 +1,174 @@
+Mon Jun 20 20:19:03 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * gawkmisc.c: Add include of <windows.h> for Cygwin to
+ remove a compiler warning.
+
+Mon May 2 23:38:06 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * gawkmisc.c (cygwin_premain0): Use the real type for the secondnd
+ argument.
+
+Fri Apr 1 11:50:59 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (os_iastty): New function.
+
+Sun Feb 13 20:23:34 2011 Eli Zaretskii <eliz@gnu.org>
+
+ * gawkmisc.c (files_are_same): Change arguments; call `stat' as
+ part of the body.
+
+Tue Feb 1 23:05:51 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ Make values of ctype macros into unsigned char to fix
+ warnings found on Cygwin / Newlib.
+
+ * gawkmisc.c (optimal_bufsize): Add cast.
+
+Mon Jan 24 22:21:08 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Everything: Move to ANSI headers on the function definitions.
+
+Mon Jan 24 22:20:43 2011 Corinna Vinschen <vinschen@redhat.com>
+
+ * gawkmisc.c: Update CYGWIN code.
+
+Wed Nov 24 17:26:24 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (os_close_on_exec): After discussion on the Bash
+ list, change the routine to follow POSIX and use read/modify/write
+ on the flags value.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Tue Apr 13 22:38:01 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c: Remove use of ISxxx in favor of standard names.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Sun Apr 2 21:43:02 2006 Corinna Vinschen <vinschen@redhat.com>
+
+ * gawkmisc.c (os_setbinmode): Call `setmode' for Cygwin.
+ (cygwin_premain0, cygwin_premain2): Change type of `myself'
+ parameter to `void *'.
+
+Sun Mar 12 22:45:11 2006 Corinna Vinschen <vinschen@redhat.com>
+
+ * gawkmisc.c (cygwin_premain2): New function.
+ Fixes CR-LF problem with already open stdin.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Sun May 25 16:23:43 2003 Corinna Vinschen <vinschen@redhat.com>
+
+ * gawkmisc.c (cygwin_premain0): New function.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Tue Dec 17 11:05:11 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (optimal_bufsize): Stat the file first, so that
+ stb is always valid for higher level code.
+
+Thu Nov 28 10:20:05 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (optimal_bufsize): Enhance to use AWKBUFSIZE
+ environment variable for debugging.
+
+Tue Jun 11 22:18:42 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * gawkmisc.c (DEFBLKSIZE): Add check for st_blksize > 0,
+ fixes weird bug on some versions of HP-UX.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Tue Sep 25 15:19:53 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (os_close_on_exec): If fd <= 2, return.
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * gawkmisc.c (os_restore_mode): New function.
+
+Sun Dec 3 16:53:37 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (os_setbinmode): New function.
+
+Tue Nov 14 16:13:08 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c: Remove all includes. Done by ../gawkmisc.c.
+
+Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.c (os_is_setuid): new function.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Close-on-exec changes:
+ gawkmisc.c: (os_close_on_exec, os_isdir): new functions.
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * ChangeLog created.
diff --git a/test/ChangeLog b/test/ChangeLog
index 3d5b4de4..8aaeb418 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,1785 +1,5 @@
-Mon Jun 20 20:35:04 2011 Arnold D. Robbins <arnold@skeeve.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * dfastress.awk, dfastress.ok: New files.
- * Makefile.am (dfastress): New test.
-
-Sun Jun 5 21:45:27 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * fpat1.ok, fpat1.in: Updated to test things better.
-
-Tue May 31 22:50:28 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * regrange.awk, regrange.ok: New files.
- * Makefile.am (regrange): New test.
-
-Thu May 26 22:08:27 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * fpat2.awk, fpat2.ok: New files. Thanks to Pat Rankin for the cases.
- * Makefile.am (fpat2): New test.
-
-Mon May 23 14:03:15 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * fpatnull.awk, fpatnull.in, fpatnull.ok: New files.
- * Makefile.am (fpatnull): New test.
-
-Sun May 22 11:58:58 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * dumpvars.ok: Updated.
-
-Thu May 19 16:56:31 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated.
-
-Sat May 14 22:28:56 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * delargv.awk, delargv.ok: New files.
- * Makefile.am (delargv): New test.
-
-Mon May 9 15:06:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Put next and exit tests into gawk specific tests
- since they use BEGINFILE and ENDFILE. Thanks to Pat Rankin.
-
-Sun May 8 20:32:59 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * arraysort.ok, sort1.ok: Updated.
-
-Wed May 4 23:37:27 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- Revise tests for array sorting.
-
- * arraysort.awk, arraysort.ok, sort1.awk, sort1.ok,
- sortfor.awk: Revised.
-
-Wed May 4 23:07:39 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * nastyparm.awk, nastyparm.ok: New files from John Haque.
- * Makefile.am (nastyparm): New test.
-
-Wed May 4 23:03:06 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * delsub.awk, delsub.ok: New files.
- * Makefile.am (delsub): New test.
-
-Fri Apr 22 16:07:01 2011 John Haque <j.eh@mchsi.com>
-
- * sortu.awk, sortu.ok: New files.
-
-Fri Apr 22 09:19:06 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * arraysort.ok: Updated.
-
-Mon Apr 18 10:22:28 2011 John Haque <j.eh@mchsi.com>
-
- * arraysort.awk, arraysort.ok, sort1.awk, sort1.ok: Updated.
-
-Fri Apr 15 13:49:36 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * ofmta.awk, ofmta.ok: New files from John Haque.
- * Makefile.am (ofmta): New test.
-
-Thu Apr 7 21:44:06 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * arraysort.awk, arraysort.ok: Added more test cases.
-
-Fri Apr 1 11:56:54 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * arraysort.awk, arraysort.ok: New files from John Haque,
- edited somewhat.
- * Makefile.am (arraysort): New test.
-
-Wed Mar 30 22:00:59 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * next.sh, exit.sh: New files from John Haque, edited somewhat.
- * Makefile.am (next, exit): New tests.
-
-Mon Feb 21 20:32:36 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (GAWK_EXT_TESTS): Include profile3. Thanks to
- Scott Deifik for pointing out the omission.
-
-Tue Feb 15 17:11:26 2011 Pat Rankin <rankin@pactechdata.com>
-
- * sortfor.awk: New values for PROCINFO["sorted_in"].
- * sortfor.ok: Sync with updated sortfor.awk.
-
-Wed Feb 16 21:09:50 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (lintwarn): New test.
- * lintwarn.awk, lintwarn.ok: New files from John Haque.
- * funsmnam.ok, noeffect.ok, paramdup.ok, paramres.ok: Adjust
- after fixes to lint warnings.
-
-Mon Feb 14 21:31:10 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (profile2): Add -v sortcmd=sort to pgawk invocation.
- (profile1): Remove awkprof.out. Thanks to Pat Rankin for noticing.
-
-Sun Feb 13 20:27:35 2011 Pat Rankin <rankin@pactechdata.com>
-
- * xref.awk: Allow sortcmd to be preset via -v option.
- * profile2.ok: Sync with updated xref.awk.
-
-Sun Feb 13 19:55:15 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (profile3): New test.
- * profile3.awk, profile3.ok: New files.
-
-Fri Feb 11 10:29:48 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (manyfiles): Bump limit up above 1024, which is
- what most modern systems have for number of open file descriptors.
-
-Tue Feb 8 22:49:17 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * aryprm4.ok, scalar.ok, sclforin.ok, sclifin.ok: Fixed to match
- output message changes.
-
-Mon Feb 7 21:39:39 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (negrange): New test.
- * negrange.awk, negrange.ok: New files.
-
-Tue Feb 1 23:21:39 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * xref.awk: Change sort command to just "sort"; avoids
- problems for Windows and is good enough for the test.
- * profile2.ok: Update.
-
-Tue Feb 1 10:20:47 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * sortfor.awk: Change magic string to match code.
-
-Thu Jan 27 22:56:19 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (sortfor): New test.
- * sortfor.awk, sortfor.in, sortfor.ok: New files.
-
-Thu Jan 27 22:03:22 2011 John Haque <j.eh@mchsi.com>
-
- * xref.awk, profile2.ok: Fixed to be character set independent.
-
-Sun Dec 26 13:54:21 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (EXTRA_DIST): Include profile2.ok in the list. Oops.
-
-Mon Dec 13 13:54:56 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * localenl.sh: Use --posix option.
-
-Sun Dec 12 13:58:36 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * gsubtst5.ok: Adjust contents.
-
-Tue Dec 7 22:31:51 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (profile1, profile2): New tests.
- * dtdgport.awk, xref.original, xref.awk, profile2.ok: New files.
- * Gentests: Use POSIX character classes instead of ranges.
-
-Mon Dec 6 19:47:09 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (whiny): Removed test.
- * whiny.awk, whiny.in, whiny.ok: Removed.
-
-Wed Dec 1 08:11:46 2010 Corinna Vinschen <vinschen@redhat.com>
-
- * Makefile.am (beginfile1): Refer to Makefile instead of
- $(srcdir)/Makefile for building out of the source directory.
-
-Tue Nov 30 13:51:35 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated.
-
-Mon Nov 29 21:52:49 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * funstack.awk, gsubtst5.ok, igncfs.awk, longwrds.awk,
- ofmtbig.awk, subamp.awk: Fix regexes to remove ranges.
-
-Fri Nov 12 11:58:40 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (dumpvars): New test.
- * dumpvars.in, dumpvars.ok: New files.
-
-Thu Nov 11 16:29:06 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * backgsub.ok: Updated to match change in code.
- * posix2008sub.awk, posix2008.ok: New files, renamed from ...
- * psx96sub.awk, psx96sub.ok: Removed.
- * Makefile.am (posix2008sub): Renamed from `psx96sub'.
-
-Tue Nov 2 12:14:50 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated.
-
-Mon Nov 1 21:44:48 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- New tests for arrays of arrays, courtesy of John Haque
- <j.eh@mchsi.com>.
-
- * Makefile.am (aadelete1, aadelete2, aarray1,
- aasort, aasorti): New tests.
- * aadelete1.awk, aadelete1.ok, aadelete2.awk, aadelete2.ok,
- aarray1.awk, aarray1.ok, aasort.awk, aasort.ok,
- aasorti.awk, aasorti.ok: New files.
-
- Unrelated:
- * badargs.ok: Updated.
-
-Tue Oct 26 20:49:41 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (switch2): Made into a test.
- * switch2.ok: New file.
-
-Tue Oct 19 08:26:03 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (gsubtst6, mbstr1, mbprintf3, printfbad2):
- Re-enable these tests that got lost during the merge. Thanks
- to Scott Deifik for noticing.
-
-Fri Oct 15 14:20:22 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (beginfile1, range1): New tests.
- * beginfile1.awk, beginfile1.in, beginfile1.ok: New files.
- * range1.awk, range1.in, range1.ok: New files.
-
-Sun Jun 27 22:01:38 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated with new usage message.
-
-Tue Jun 22 20:55:47 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fpat1, patsplit): New tests.
- * fpat1.awk, fpat1.in, fpat1.ok, patsplit.awk, patsplit.ok: new files.
-
-Fri Jan 16 11:36:02 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok, funstack.awk, gsubtst4.ok: Adjust to change in
- --gen-po option, removal of -r, and enabling interval expressions.
-
-Fri Jan 16 11:36:02 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (indirectcall): New test.
- * indirectcall.awk, indirectcall.in, indirectcall.ok: New files.
-
-Tue Dec 30 22:27:08 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated.
-
-Tue Dec 9 06:58:00 2008 Steffen Schuler <schuler.steffen@googlemail.com>
-
- * Makefile.am (splitarg4): New test.
- * splitarg4.awk, splitarg4.in, splitarg4.ok: New files.
-
-Wed Dec 26 22:01:52 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * pid.awk: Fix to use PROCINFO now that /dev/pid, /dev/ppid gone.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Wed Apr 21 22:23:30 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (EXTRA_DIST): Add Gentests.vms so it'll be
- in the dist.
- * localenl.sh, localenl.ok: Remove UNKNOWN locale per
- request from Nelson Beebe.
- * lc_num1.awk, lc_num1.ok: Revised to not fail on systems
- where the quote flag isn't supported. Also per Nelson Beebe.
-
-Thu Feb 18 22:50:54 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fcall_exit2): New test.
- * fcall_exit2.awk, fcall_exit2.in, fcall_exit2.ok: New files.
-
-Wed Feb 17 23:25:27 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fcall_exit): New test.
- * fcall_exit.awk, fcall_exit.ok: New files.
-
-Fri Feb 5 13:02:10 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (forref): New test.
- * forref.awk, forref.ok: New files.
-
-Tue Oct 6 19:49:22 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (uninit5): New test.
- * uninit5.awk, uninit5.ok: New files.
-
-Tue Aug 4 06:04:04 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * hsprint.ok: Updated.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Fri Jul 3 13:04:55 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (charset-tests): Moved tests that can fail based on
- character set and locale issues into a separate section.
-
-Wed Jun 24 22:30:31 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * lintold.awk: Changed to avoid floating point problems on VMS.
-
-Wed Jun 24 05:39:00 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * printfbad2.awk, printfbad2.ok: Adjusted for systems where sed
- will add a final newline if the input didn't contain one.
-
-Mon Jun 22 00:44:50 2009 Pat Rankin <rankin@pactechdata.com>
-
- * getlndir.awk (SRCDIR): Allow caller to override "." as directory.
- * intformat.awk (HUGEVAL): Allow caller to override the largest
- value, and restructure 10^x and 2^y loops to use it without
- overflowing on non-IEEE floating pointing hosts.
-
-Tue Jun 23 05:26:52 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (MACHINE_TESTS): Move fmtspcl to here per Pat Rankin.
-
-Fri Jun 19 14:26:55 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (GAWK_EXT_TESTS): Fixed sorting of tests.
- Removed ovrflow1 test since double1 is a superset; thanks
- to Pat Rankin.
- * (ovrflow1.awk, ovrflow1.ok): Removed.
-
-Thu Jun 18 05:46:32 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (localenl): Per Michal Jaegermann, send stderr output
- to /dev/null.
- * (machine-tests): Moved several tests to new section for tests
- whose output can vary by hardware.
-
-Thu Jun 11 04:50:44 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (lc_num1): Don't need --posix, changed command line
- so that AWKPATH influences again. Thanks to Corinna Vinschen
- for making me fix this.
-
-Wed Jun 10 08:28:13 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (lc_num1, printfbad2): Fix so building outside the
- source directory works.
-
-Thu May 21 21:10:53 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated.
-
-Fri May 15 14:38:16 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (paramres): New test.
- * paramres.awk, paramres.ok: New files.
-
-Fri Mar 27 10:57:49 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (printfbad2): New test.
- * printfbad2.awk, printfbad2.in, printfbad2.ok: New files.
-
-Tue Feb 3 22:08:27 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (uparrfs): New test.
- * uparrfs.awk, uparrfs.in, uparrfs.ok: New files.
-
-Mon Jan 5 22:53:26 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (getlndir): New test.
- * getlndir.awk, getlndir.ok: New files.
-
-Mon Dec 29 22:46:10 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (mbprintf3): New test.
- * mbprintf3.awk, mbprintf3.in, mbprintf3.ok: New files.
-
-Thu Dec 18 20:57:39 2008 Stepan Kasal <skasal@redhat.com>
-
- * lc_num1.awk, lc_num1.ok: Test that the quote modifier in
- printf is not sticky.
- * Makefile.am: Add it.
- * Gentests: Allow _ in test names.
-
-Thu Dec 11 21:36:11 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (mbstr1): New test.
- * mbstr1.awk, mbstr1.ok: New files.
-
-Thu Dec 4 22:44:39 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (closebad): New test.
- * closebad.awk, closebad.ok: New files.
-
-Thu Jul 31 21:44:21 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (match3, gsubtst6): New tests.
- * match3.awk, match3.in, match3.ok: New files.
- * gsubtst6.awk, gsubtst6.ok: New files.
-
-Fri May 2 12:43:51 2008 Steffen Schuler <schuler.steffen@googlemail.com>
-
- * Makefile.am (mbfw1): Add code for test to use a UTF locale.
-
-Wed Apr 23 22:13:47 2008 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (funlen, mbfw1, mbprintf1, mbprintf2): New tests.
- * funlen.awk, funlen.in, funlen.ok: New files.
- * mbfw1.awk, mbfw1.in, mbfw1.ok: New files.
- * mbprintf1.awk, mbprintf1.in, mbprintf1.ok: New files.
- * mbprintf2.awk, mbprintf2.ok: New files.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Wed Sep 26 14:32:28 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (localenl): New test.
- (regtest): Fixed invocation of shell script.
- * localenl.sh, localenl.ok: New files.
- * reg/func2.good: Revised to match current gawk output.
-
-Wed Sep 26 14:49:04 2007 Eli Zaretskii <eliz@gnu.org>
-
- * exitval2.w32: New file, a Windows version for exitval2.awk.
-
-Tue May 29 13:22:33 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * badargs.ok: Updated.
-
-Thu May 17 21:10:51 2007 Pat Rankin <rankin@pactechdata.com>
-
- * icasers.awk: Modify pattern to work on VMS too, doesn't
- break Unix/Linux.
-
-Tue May 15 22:05:24 2007 Pat Rankin <rankin@pactechdata.com>
-
- Steps towards generating VMS .mms file to run test suite.
-
- * Makefile.am (FAIL_CODE1): New macro, list of programs
- that exit 1.
- * Gentests: Add VMS code.
- * Gentests.vms: New file.
-
-Wed May 2 19:30:54 2007 Stepan Kasal <kasal@ucw.cz>
-
- Revert precedence of concatenation and | getline.
- From mail dated 2005-10-31.
-
- * parsefld.awk, parsefld.in, parsefld.ok: New files.
- * Makefile.am (parsefld): New basic test, check for $/regex/ and
- for /re1/+/re2/.
- * getline.awk, getline.ok: Add precedence check "echo " "date"|getline
-
-Sun Apr 29 22:43:28 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * hsprint.awk: Add extra "%" to format string. Thanks to Nelson Beebe.
- * hsprint.ok: Revised.
-
-Tue Apr 24 23:15:01 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * fmtspcl.tok: Provide correct version.
-
-Tue Apr 17 22:23:41 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * double2.awk, double2.ok: Limit to 2^63 for portability across
- different platforms. Sigh.
-
-Thu Apr 12 20:00:27 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am, Makefile.in (fmtspcl): Use fmtspcl.tok to build
- a fmtspcl.ok file suitable for the given platform.
- (diffout): Handle case where the .ok file is in the build directory.
-
-Mon Mar 26 08:24:04 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fmtspcl.ok): Don't remove for cleaning, add
- to EXTRA_DIST.
-
-Fri Mar 9 11:38:34 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fmtspcl.tok): Removed use of and reference
- to this file.
-
-Tue Feb 6 08:21:02 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (double1, double2, zero2): New tests.
- * double1.awk, double1.ok, double2.awk, double2.ok,
- zero2.awk, zero2.ok: New files.
-
-Sun Feb 4 16:32:45 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (parse1): New test.
- * parse1.awk, parse1.in, parse1.ok: New files.
-
-Thu Feb 1 17:41:48 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am (fmtspcl): New test.
- (CLEANFILES): Add fmtpspcl.ok to list.
- * fmtspcl.awk, fmtspcl.tok: New files.
-
-Mon Jan 29 15:31:35 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am (diffout): Make it work if no problems.
- (valgrind-scan): New target to show problems.
-
-Mon Jan 29 12:51:16 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (reint2): New test.
- * reint2.awk, reint2.in, reint2.ok: New files.
-
-Fri Jan 26 20:01:38 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am (intformat): New test.
- * intformat.awk, intformat.ok: New files.
-
-Tue Jan 23 08:10:48 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fwtest2): New test.
- * fwtest2.awk, fwtest2.in, fwtest2.ok: New files.
-
-Sun Jan 21 13:09:33 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (synerr2, wideidx2): New test.
- * synerr2.awk, synerr2.ok, wideidx2.awk, wideidx2.ok: New files.
-
-Fri Jan 19 15:11:12 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (strnum1, widesub4): New test.
- * strnum1.awk, strnum1.ok, widesub4.awk, widesub4.ok: New files.
-
-Thu Jan 18 13:37:00 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makeilfe.am (devfd, wideidx, widesub, widesub2, widesub3): New
- tests.
- * devfd.in4, devfd.in5, devfd.ok, wideidx.awk, wideidx.in, wideidx.ok,
- widesub.awk, widesub.ok, widesub2.awk, widesub2.ok, widesub3.awk,
- widesub3.in, widesub3.ok: New files.
-
-Tue Jan 16 12:16:39 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
-
- * Makefile.am: In pid test, no further need to remove _pid.in,
- since the test no longer creates that file.
- * pid.awk: Do not read correct values from stdin (they are now passed
- as command-line variables with -v). Make sure to produce output
- if the comparisons are successful.
- * pid.ok: No longer empty, should contain 3 lines if all goes well.
- * pid.sh: Do not create _pid.in; instead, pass values in with -v.
-
-Sun Jan 14 18:03:12 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * fnarray.ok: Updated.
-
-2007-01-13 Eli Zaretskii <eliz@gnu.org>
-
- * pipeio2.awk: Don't use empty lines, because Windows ECHO does
- something different when invoked without arguments.
-
- * pipeio2.ok: Update.
-
- * Makefile.am (EXTRA_DIST): Add exitval2.w32.
-
- * exitval2.w32: New file.
-
-Sat Jan 13 21:25:11 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * lintold.awk, lintold.in, lintold.ok: New `--lint-old' test.
- * Gentests, Makefile.am: Adjust.
-
-Sat Jan 13 21:17:51 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * Makefile.am (Maketests): Allow rebuilding from a VPATH build.
-
-Fri Jan 12 14:04:24 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (mtchi18n): new test.
- * mtchi18n.awk, mtchi18n.in, mtchi18n.ok: new files.
-
-Wed Sep 6 02:09:26 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (mixed1): new test.
- * mixed1.ok: new file.
-
-Tue Jun 20 05:37:53 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (devfd1, devfd2): new tests.
- * devfd.in1, devfd.in2, devfd1.awk, devfd1.ok, devfd2.ok: new files.
-
-Sun Mar 12 23:48:31 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (concat4): new test.
- * concat4.awk, concat4.in, concat4.ok: new files.
-
-Sun Mar 12 23:33:26 2006 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (subi18n): new test (from
- KIMURA Koichi <kimura.koichi@canon.co.jp>).
- * subi18n.awk, subi18n.ok: New files.
-
-Mon Dec 19 05:41:56 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (ovrflow1): new test.
- * ovrflow1.awk, ovrflow1.ok: new files.
-
-Wed Dec 14 19:01:08 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (binmode1): new test.
- * binmode1.ok: new file.
-
-Fri Oct 7 12:28:41 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fwtest): new test.
- * fwtest.awk, fwtest.in, fwtest.ok: new files.
-
-Fri Aug 12 14:40:47 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (nofile): New test.
- * nofile.ok: New file.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Sun Jul 10 18:31:45 2005 Scott Deifik <scottd@amgen.com>
-
- * regtest.sh: Changed to use diff instead of cmp for djgpp.
- This addresses DOS vs. UNIX end-of-line issues.
-
-Thu Jun 9 23:40:14 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (Maketests): Don't use $< in rule, it breaks
- on some non-GNU versions of make. Sigh.
-
-Wed Apr 27 22:22:05 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (longdbl): new test.
- * longdbl.awk, longdbl.in, longdbl.ok: new files.
-
-Wed Feb 2 16:44:41 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (exitval2): new test.
- * exitval2.awk, exitval2.ok: new files.
-
-Mon Jan 31 10:00:52 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (gnuops3): new test.
- * gnuops3.awk, gnuops3.ok: new files.
-
-Wed Jan 19 18:04:40 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (hex): new test.
- * hex.awk, hex.ok: new files.
-
-Sun Jan 9 11:53:09 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (strftime, igncras2, subamp): Use `GAWKLOCALE',
- not `GAWK_LOCALE'. Grrr!
-
-Mon Jan 3 12:20:08 2005 William J. Poser <wjposer@ldc.upenn.edu>
-
- * Makefile.am (wjposer1): new test.
- * wjposer1.awk, wjposer1.in, wjposer1.ok: new files.
-
-Mon Jan 3 11:55:48 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (rsstart1, rsstart2, rsstart3): new tests.
- * rsstart1.in, rsstart1.awk, rsstart1.ok, rsstart2.awk,
- rsstart2.ok, rsstart3.ok: new files.
-
-Sun Dec 19 17:31:48 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (gensub2): new test.
- * gensub2.awk, gensub2.ok: new files.
-
- Thanks to "John H. DuBois III" <spcecdt@armory.com>.
-
-Thu Dec 9 15:22:58 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fsspcoln): new test.
- * fsspcoln.awk, fsspcoln.in, fsspcoln.ok: new files.
-
-Mon Nov 29 18:41:33 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (iobug1): new test.
- * iobug1.awk, iobug1.ok: new files.
-
-Tue Sep 28 18:39:53 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * nondec.awk, nondec.ok: Add 00.34 as value to print, it should
- not be treated as octal.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Wed Jul 14 16:04:46 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (rstest6): new test.
- * rstest6.awk, rstest6.in, rstest6.ok: new files.
-
-Tue Jul 13 10:53:32 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * strftlng: Use `$(CMP) ... >/dev/null 2>&1' instead of `-s'
- for OS/2 and other systems that use `CMP = diff -a'.
-
-Mon Jun 14 18:44:39 2004 Pat Rankin <rankin@pactechdata.com>
-
- * longwrds.awk: allow caller the means to override SORT command.
-
-Tue Jun 8 14:12:52 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fordel, printfbad1): new tests.
- * fordel.awk, fordel.ok: new files.
- * printfbad1.awk, printfbad1.ok: new files.
-
-Mon Apr 19 20:29:52 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (manglprm): new test.
- * manglprm.awk, manglprm.in, manglprm.ok: new files.
-
-Mon Feb 23 18:39:24 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * inftest.awk: Add loop limit per Nelson H.F. Beebe.
- * Makefile.am (strftime): Use LC_ALL=C for `date' invocation.
-
-Thu Feb 12 02:08:15 2004 Stepan Kasal <kasal@ucw.cz>
-
- * Makefile.am (diffout): Use $(srcdir), when we are not building
- in the source tree.
-
-Wed Feb 11 10:23:39 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (strcat1): new test.
- * strcat1.awk, strcat1.ok: new files.
-
-Fri Feb 6 12:09:55 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (CLEANFILES): Added.
-
-Thu Feb 5 15:34:14 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (exitval1): new test.
- * exitval1.awk, exitval1.ok: new files.
-
-Mon Feb 2 10:29:19 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (subamp): new test.
- * subamp.awk, subamp.in, subamp.ok: new files.
-
- * subamp, ignrcas2, strftime: Set GAWK_LOCALE, not LC_ALL.
-
-Wed Jan 14 15:28:34 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (backw): new test.
- * backw.awk, backw.in, backw.ok: new files.
-
-Mon Dec 1 10:29:22 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (concat3): new test.
- * concat3.awk, concat3.ok: new files.
-
-Sun Nov 2 16:05:21 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (concat2): new test.
- * concat2.awk, concat2.ok: new files.
-
-Wed Oct 29 13:35:37 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (subsepnm): new test.
- * subsepnm.awk, subsepnm.ok: new files.
-
-Mon Sep 15 16:05:37 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (ignrcas2): new test.
- * ignrcas2.awk, ignrcas2.ok: new files.
-
-Tue Sep 9 16:03:34 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (unterm): new test.
- * unterm.awk, unterm.ok: new files.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Fri Jul 4 11:12:07 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (poundbang2): Removed.
- (poundbang): Added env var settings.
-
-Thu Jun 26 15:44:33 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (match2, whiny): new tests.
- * match2.awk, match2.ok: new files.
- * whiny.awk, whiny.ok: new files.
-
-Thu Jun 26 14:51:40 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Use double quotes for sed invocation to make
- life easier (eventually) for DOS version of Makefile.
- * pipeio2.awk, pipio2.ok: Ditto.
-
-Wed Jun 18 12:32:14 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (AWK): Use LC_ALL=$${GAWKLOCALE:-C} and
- same for LANG when running awk. Provides sane locale for
- tests with ability to override it if need be.
- (all tests): Removed explicit setting of LC_ALL and LANG.
- * Gentests: Ditto.
-
-Wed May 28 08:02:33 CEST 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (uninit4): new test.
- * uninit4.awk, uninit4.ok: new files.
-
-Wed May 28 06:30:23 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 scalar uninit3):
- new tests.
- * aryprm4.awk aryprm4.ok aryprm5.awk aryprm5.ok aryprm6.awk aryprm6.ok:
- aryprm7.awk aryprm7.ok aryprm8.awk aryprm8.ok scalar.awk scalar.ok:
- uninit3.awk uninit3.ok: new files.
-
-Tue May 27 14:27:50 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (aryprm1, aryprm2, aryprm3, sortempty): New tests.
- * aryprm1.awk, aryprm1.ok, aryprm2.awk, aryprm2.ok: New files.
- * aryprm3.awk, aryprm3.ok, sortempty.awk, sortempty.ok: dtto
- * prmarscl.ok: The actual error message has changed.
-
-Tue May 27 08:23:51 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * arrayref3.ok, arrayref4.ok, fnaryscl.ok: Error messages reformatted.
-
-Sun Jun 8 17:18:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fmttest, strtonum, nested, gsubtst5, delarpm2): New tests.
- * fmttest.awk, fmttest.ok: New files. From Nelson Beebe,
- <beebe@math.utah.edu>.
- * strtonum.awk, strtonum.ok: New files.
- * nested.awk, nested.in, nested.ok: New files.
- * gsubtst5.awk, gsubtst5.in, gsubtst5.ok: New files.
- * delarpm2.awk, delarpm2.ok: New files. (Also from Nelson Beebe.)
-
- * switch2.awk: Currently unused test for switch code.
-
-Wed May 14 16:49:53 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Gentests: Add LC_ALL=C LANG=C to generated tests.
- * Makefile.am: All other manual tests: ditto.
-
-Sun May 11 15:27:55 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (rsnulbig, rsnulbig2): New tests.
- * rsnulbig.ok, rsnulbig2.ok: New files.
-
-Sun May 11 15:00:20 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (arrayprm2, arrayprm3, arryref2, arryref3, arryref4,
- arryref5, rstest3, rstest4, rstest5): New tests.
- * arrayprm2.awk, arrayprm2.ok, arrayprm3.awk, arrayprm3.ok, arryref2.ok,
- arryref3.ok, arryref4.ok, arryref5.ok, rstest3.awk, rstest3.ok, rstest4.awk,
- rstest4.ok, rstest5.awk, rstest5.ok: New files.
-
-Sun May 11 12:20:59 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * strftime.awk: Remove seconds from input and strftime output,
- to decrease chance of failing on second boundary.
- * Makefile.am (strftime): Tweak message appropriately.
-
-Tue Mar 25 08:35:42 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fnarray2): New test.
- * fnarray2.awk, fnarray2.ok: New files.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Wed Mar 19 14:00:00 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (synerr1): New test.
- * synerr1.awk, synerr1.ok: New files.
-
-Tue Mar 4 10:32:23 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (clean): Remove `core*' for modern Linux which
- drops core in `core.PID' files.
-
-2003-02-17 Jim Meyering <jim@meyering.net>
-
- * Makefile.am (check): Don't depend on the pass-fail rule that
- reports any failures. Otherwise, for `make -j' that rule's commands
- could run before all tests had completed, resulting in spurious
- failures or potentially, even unreported failures. Instead, just
- `$(MAKE) pass-fail'.
-
-Sun Feb 9 11:48:32 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Moved `space' into UNIX_TESTS. Breaks in
- MS environments.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Tue Feb 4 12:22:41 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (fnmisc): New test case.
- * fnmisc.awk, fnmisc.ok: New files.
-
-Sun Feb 2 15:33:33 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * getline3.awk, getline3.ok: Renamed from getline2.awk, getline2.ok
- * Makefile.am (getline, getline2): getline renamed to getline2,
- new test under the name getline.
- * getline.awk, getline.ok, getline2.awk, getline2.ok:
- rename getline.* getline2.*; new files getline.* .
- * getline.awk, getline.ok: add tests for ``cmd | getline ''
- * Makefile.am (printf0): New test.
- * printf0.awk, printf0.ok: New files.
- * fnarray.ok: The error message has changed.
-
-Thu Jan 30 15:32:56 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (splitarr, getline2, inputred, prec): New tests.
- * splitarr.awk, splitarr.ok: New files.
- * getline2.awk, getline2.ok: New files.
- * inputred.awk, inputred.ok: New files.
- * prec.awk, prec.ok: New files.
- * noeffect.awk: add second no-effect command; two error messages
- should be generated. Add some empty statements, to check that --lint
- doesn't abort on them.
-
-Tue Jan 28 18:34:22 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * arrymem1.awk: Enhanced test.
- * arrayme1.ok: Updated for new output
-
-Mon Jan 27 14:07:16 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * nfldstr.awk: Add tests for automatic number conversion.
-
-Mon Jan 27 12:25:41 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (asort, asorti, match1): New tests.
- * match1.awk, match1.in: New files.
- * asort.awk, asort.in: New files.
- * asorti.awk, asorti.in: New files.
-
-Mon Jan 27 12:10:16 2003 Stepan Kasal <kasal@math.cas.cz>
-
- * strtod.awk, strtod.in, strtod.ok: Added test for 0e0 and similar.
-
-Sun Jan 26 16:49:41 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (zeroe0): New test.
- * zeroe0.awk, zeroe0.in: New files.
-
-Thu Jan 2 11:09:12 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * parseme.ok, noparms.ok: Revised for bison 1.875.
-
-Tue Dec 31 16:54:44 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: (poundbang): Fix code.
- (efence): New target to remove _* files run with Electric Fence
- but that are otherwise OK.
-
-Thu Dec 26 16:44:37 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (poundbang): Add code to handle systems with limits on
- paths for #! files.
-
-Mon Dec 9 14:20:44 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (space): New test: ``gawk -f " " file'' should try
- to include file ` '.
-
-Sun Nov 17 21:47:11 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (manyfiles): Reference $(srcdir)/$@.ok so can build
- and test in a different directory.
-
-Sun Nov 3 14:47:59 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- Move tests with inline input and/or programs into separate files so can let
- Gentests do more work. Per Nelson Beebe, just print the name of each test.
-
- * Makefile.am (fstabplus, longwrds, fieldwdth, ignrcase, posix, rs, fsbs):
- removed targets so will be generated by Gentests.
- (negexp, resplit, childin, back89, nfldstr, nondec): ditto.
- * Gentests: print name of test, make cmp not echo by prefixing with @.
- * fstabplus.in: new file.
- * fieldwdth.awk, fieldwdth.in: new files.
- * ignrcase.awk, ignrcase.in: new files.
- * longwrds.awk: send output to sort instead of letting makefile do it.
- * longwrds.in: renamed from manpage.
- * posix.in: new file.
- * manyfiles.ok: new file.
- * rs.awk: new file.
- * fsbs.awk: new file.
- * negexp.awk: new file.
- * resplit.awk, resplit.in: new files.
- * childin.awk, childin.in: new files.
- * back89.awk: new file.
- * nfldstr.awk, nfldstr.in: new files.
-
-Sun Nov 3 14:37:39 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (uninit2): new test case, requires lint.
- * uninit2.awk, uninit2.ok: new files.
-
-Fri Nov 1 11:34:45 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (nondec): Always run this test.
-
-Tue Oct 29 10:40:47 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (EXTRA_DIST): Added Gentests to list of files
- to distribute.
-
-Mon Oct 28 15:36:42 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (icasers, icasefs, rstest1, rstest2): new test cases.
- (argarray): Remove argarray.in if not in srcdir.
- * icasers.awk, icasers.in, icasers.ok: new files.
- * icasefs.awk, icasefs.ok: new files.
- * rstest1.awk, rstest1.ok: new files.
- * rstest2.awk, rstest2.ok: new files.
-
-Mon Oct 28 12:25:25 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (uninitialized): New test.
- * uninitialized.awk, uninitialized.ok: New files.
-
-Mon Oct 28 11:24:16 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * Gentests: new script
- * Maketests: new file, generated automatically by Gentests
- * Makefile.am: new rules and variables to make use of Gentests;
- Most targets removed, Gentests will take care
-
-Sun Oct 13 16:58:07 2002 Stepan Kasal <kasal@math.cas.cz>
-
- * Makefile.am (nfneg): new test case.
- * nfneg.awk, nfneg.ok: new files.
-
-Mon Oct 7 09:38:07 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (noloop1, noloop2): new test cases.
- * noloop.awk, noloop1.in, noloop1.ok, noloop2.in, noloop2.ok:
- new files.
-
-Tue Oct 1 18:28:40 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (poundbang): Rewrote rule to avoid problems
- with hardcoding of /tmp pathname.
- (poundbang.awk): Changed the way it works.
- (poundbang.ok): Removed.
-
-Thu Sep 5 13:31:28 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (rebuf): new test case.
- * rebuf.awk, rebuf.in, rebuf.ok: new files.
-
-Wed Aug 21 15:31:57 2002 Andreas Buening <andreas.buening@nexgo.de>
-
- * Makefile.am (AWKPROG): Add $(EXEEXT) macro.
- (PATH_SEPERATOR): Removed.
- (poundbag): Added $(EXEEXT) and use of ${TMPDIR-/tmp}.
-
-Wed Aug 7 13:47:09 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (nulrsend): new test case.
- * nulrsend.awk, nulrsend.in, nulrsend.ok: new files.
-
-Sun Aug 4 00:25:23 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (gsubtst3, gsubtst4): new test cases.
- * gsubtst3.awk, gsubtst3.ok, gsubtst4.awk, gsubtst4.ok: new files.
-
-Thu May 9 22:31:36 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (gsubtst2): new test case.
- * gsubtest.awk, gsubtest.ok: Added new test.
- * gsubtst2.awk, gsubtst2.ok: new files.
-
-Sun May 5 12:38:55 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am: Minor mods to use LC_ALL=C so that checks will
- use the English messages, not any translations.
- (manyfiles): Fixed (hopefully) to leave a file around if the
- test fails, so that we don't get a spurious "ALL TESTS PASSED"
- message.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Tue Apr 16 17:07:25 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (pass-fail): New target that prints an
- `all passed' or `x tests failed' message, for use in
- grep-ing build logs.
- (check): Add pass-fail as last dependency.
-
- Thanks to Nelson Beebe for the thought, beebe@math.utah.edu.
-
-Sun Mar 10 17:00:51 2002 Scott Deifik <scottd@amgen.com>
-
- * Makefile.am (strftime): Add TZ=GMT0 into environment, to
- regularize things, esp. for some DJGPP systems.
-
-Mon Feb 18 14:55:19 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (longsub): new test case.
- * longsub.awk, longsub.in, longsub.ok: new files.
-
-Wed Jan 23 15:03:36 2002 Andreas Buening <andreas.buening@nexgo.de>
-
- * Makefile.am (PATH_SEPARATOR): Added.
- (awkpath): Make use of PATH_SEPARATOR.
-
-Wed Jan 23 14:50:38 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (concat1): new test case.
- * concat1.awk, concat1.in, concat1.ok: new files.
-
-Mon Jan 7 22:21:25 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (forsimp): new test case.
- * forsimp.awk, forsimp.ok: new files.
-
-Wed Dec 26 22:01:52 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (inftest): Add sed to fix case issues between
- different libc versions. Ugh.
-
-Wed Dec 19 16:01:58 2001 Peter J. Farley III <pjfarley@dorsai.org>
-
- * Makefile.am (manyfiles): Also delete \15 in tr.
-
-Tue Dec 18 20:56:07 2001 Andreas Buening <andreas.buening@nexgo.de>
-
- * Makefile.am (nors): Add \15 to list of chars to delete so
- test will run on OS/2 also.
-
-Thu Oct 4 18:34:49 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (membug1): new test case.
- * membug1.awk, membug1.in, membug1.ok: new files.
-
-Thu Aug 23 14:04:10 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (minusstr): new test case.
- * minusstr.awk, minusstr.ok: new files.
-
-Sat Aug 4 23:42:37 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (arrymem1): new test case.
- (compare2): new test case.
- (regtest): Make test work, use regtest.sh, not .awk.
- * arrymem1.awk, arrymem1.ok: new files.
- * compare2.awk, compare2.ok: new files.
-
-Mon Jul 23 17:32:03 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (onlynl): new test case.
- * onlynl.awk, onlynl.in, onlynl.ok: new files.
-
-Wed Jun 13 18:12:43 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.am (ofmtfidl): new test case.
- * ofmtfidl.awk, ofmtfidl.in, ofmtfidl.ok: new files.
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-Sun May 6 13:30:20 2001 Arnold Robbins <arnold@skeeve.com>
-
- * inftest.awk: Changed test to use < so that it will
- work for MSC and DJGPP combination, per Scott Deifik.
-
-Tue Mar 20 11:09:51 2001 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (funsemnl): new test case.
- * funsemnl.awk, funsemnl.ok: new files.
-
-Wed Mar 7 11:31:41 2001 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (leadnl): new test case.
- * leadnl.awk, leadnl.in, leadnl.ok: new files.
-
-Tue Feb 6 18:08:15 2001 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (rebt8b1, rebt8b2): new test case.
- * rebt8b1.awk, rebt8b1.ok: new files.
- * rebt8b2.awk, rebt8b2.ok: new files.
-
-Sun Dec 3 15:36:41 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (gnuops2): New test case.
- * gnuops2.awk, gnuops2.ok: New files, based on bug report from
- Servatius.Brandt@fujitsu-siemens.com.
-
-Mon Nov 27 15:52:46 2000 Arnold Robbins <arnold@skeeve.com>
-
- * regx8bit.awk, regx8bit.ok: Updated to what should
- work on all systems.
-
-Wed Nov 22 13:27:59 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (poundbang): Added some smarts for /tmp mounted
- noexec. Hopefully it'll even work.
-
-Tue Nov 14 17:45:02 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am: Added - to all cmp calls for consistency.
-
-Sun Nov 12 17:50:18 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (addcomma): new test case.
- * addcomma.awk, addcomma.in, addcomma.ok: new files.
-
-Tue Nov 7 16:03:06 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (regx8bit, psx96sub): new test cases.
- * regx8bit.awk, regx8bit.ok, psx96sub.awk, psx96sub.ok: new files.
-
-Sun Oct 22 12:09:43 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (shadow): new test case.
- * shadow.awk, shadow.ok: new files.
-
-Tue Oct 17 10:51:09 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (arynasty): new test case.
- * arynasty.awk, arynasty.ok: new files.
-
-Mon Oct 2 10:17:13 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (clsflnam): Add redirect of stderr.
- * clsflnam.awk, clsflnam.ok: modified to reflect changed
- semantics of close() for a non-open file. See ../ChangeLog.
-
-Sun Sep 24 16:46:29 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (nasty2): new test case.
- * nasty2.awk, nasty2.ok: new files.
-
-Wed Sep 13 11:09:49 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (check): Added calls to new targets that
- print messages.
- (clos1way, basic-msg-start, basic-msg-end, unix-msg-start,
- unix-msg-end, extend-msg-start, extend-msg-end): new targets.
- * clos1way.awk, clos1way.ok: new files.
-
-Tue Sep 12 16:29:54 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (leaddig): new test case.
- * leaddig.awk, leaddig.ok: new files.
-
-Wed Sep 6 14:09:15 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (strtod): new test case.
- * strtod.awk, strtod.in, strtod.ok: new files.
-
-Mon Sep 4 09:33:28 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (octsub): new test case.
- * octsub.awk, octsub.ok: new files.
-
-Sun Aug 13 12:37:16 2000 Arnold Robbins <arnold@skeeve.com>
-
- * Makefile.am (sort1, diffout): new test cases.
- * sort1.awk, sort1.ok: new files.
-
-2000-02-15 Arnold Robbins <arnold@skeeve.com>
-
- * MOVED TO AUTOMAKE AND GETTEXT.
- Just about every file touched. Work done by Arno Peters.
-
-Wed May 19 15:41:41 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (datanonl,regeq,redfilnm): new test cases.
- * datanonl.awk, datanonl.in, datanonl.ok: new files.
- * regeq.awk, regeq.in, regeq.ok: new files.
- * redfilnm.awk, redfilnm.in, redfilnm.ok: new files.
-
-Mon May 10 17:11:30 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (rsnul1nl): new test case.
- * rsnul1nl.awk, rsnul1nl.in, rsnul1nl.ok: new files.
-
-Sun Apr 25 13:02:35 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (inetechu,inetecht,inetdayu,inetdayt,inet): new
- tests, courtesy of Juergen Khars.
- (paramtyp): new test for bug from Juergen.
- * paramtyp.awk, paramtyp.in: new files.
-
-Sun Oct 25 23:11:46 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (ofmtbig,procinfs): new test cases.
- * procinfs.awk, procinfs.ok: new files.
- * ofmtbig.awk, ofmtbig.in, ofmtbig.ok: new files.
-
-Tue Oct 20 22:07:10 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (lint): new test case.
- * lint.awk, lint.ok: new files.
- * badargs.ok: updated output corresponding to change made to
- main.c (see main ChangeLog).
-
-Tue May 26 20:39:07 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * pipeio2.awk: change "\'" to "'" to avoid new warning.
-
-Mon Mar 23 21:53:36 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (fnasgnm): new test case.
- * fnasgnm.awk, fnasgnm.in, fnasgnm.ok: new files.
-
-Fri Mar 20 11:01:38 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (fnaryscl): new test case.
- * fnaryscl.awk, fnaryscl.ok: new files.
-
-Mon Mar 16 15:23:22 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (splitdef): new test case.
- * splitdef.awk, splitdef.ok: new files.
-
-Fri Sep 26 01:10:14 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (parseme): new test case.
- * parseme.awk, parseme.ok: new files.
-
-Sun Sep 14 23:25:10 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (ofmts): new test case.
- * ofmts.awk, ofmts.in, ofmts.ok: new files.
-
-Sun Aug 17 07:17:35 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (fsfwfs): new test case.
- * fsfwfs.awk, fsfwfs.in, fsfwfs.ok: new files.
-
-Sun Jul 27 23:08:53 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (hsprint): new test case.
- * hsprint.awk, hsprint.ok, printfloat.awk: new files.
-
-Thu Jul 17 20:07:31 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (ofmt): new test case.
- * ofmt.awk, ofmt.in, ofmt.ok: new files.
-
-Sun Jun 22 16:17:35 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (nlinstr): new test case.
- * nlinstr.awk, nlinstr.in, nlinstr.ok: new files.
-
-Wed Jun 4 13:18:21 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * pid.sh: send errors to /dev/null to toss warning about
- using PROCINFO["pid"] etc. This test explicitly tests
- the special files. It'll need changing in 3.2.
-
-Thu Apr 24 23:24:59 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (messages): remove special case if /dev/fd exists.
- Finally.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Thu Aug 3 17:51:56 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (nlstrina): new test case.
- * nlstrina.awk, nlstrina.ok: new files.
-
-Tue Jul 11 14:22:55 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (fnparydl): new test case.
- * fnparydl.awk, fnparydl.ok: new files.
-
-Fri Jun 30 22:00:03 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (arysubnm): new test case.
- * arysubnm.awk, arysubnm.ok: new files.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed Jun 14 13:17:59 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (getlnbuf): new test case.
- * getlnbuf.awk, gtlnbufv.awk, getlnbuf.in, getlnbuf.ok: new files.
-
-Mon Jun 5 15:51:39 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * pipeio2.awk: Change use of tr to sed, fixes problems
- on SCO OS5.
- * pipeio2.ok: Updated to reflect use of sed.
-
-Tue May 2 13:28:04 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (strftime): moved test code into a separate
- file for the PC guys.
- * strftime.awk: new file.
-
-Mon Apr 10 15:58:13 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (longwrds): Add setting LC_ALL=C to sort
- call to preserve traditional output. (Theme from the
- Twilight Zone plays eerily in the background...)
-
-Sun Apr 2 17:51:40 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (igncdym): new test case.
- * igncdym.awk, igncdym.in, igncdym.ok: new files.
-
-Wed Mar 8 13:43:44 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (arynocls): new test case.
- * arynocls.awk, arynocls.in, arynocls.ok: new files.
-
-Sun Feb 6 11:45:15 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (opasnidx): new test case.
- * opasnidx.awk, opasnidx.ok: new files.
-
-Tue Feb 1 18:40:45 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (opasnslf): new test case.
- * opasnslf.awk, opasnslf.ok: new files.
-
-Thu Jan 27 18:09:18 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (subslash): new test case.
- * subslash.awk, subslash.ok: new files.
-
-Fri Nov 26 11:03:07 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (numindex): new test case.
- * numindex.awk, numindex.in, numindex.ok: new files.
-
-Sun Oct 24 08:46:16 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (strftime): Add tweak for $NF that should
- hopefully avoid cygwin problems with lack of timezone.
-
-Thu Jul 29 19:25:02 1999 Arnold D. Robbins <arnold@skeeve.com>
-
- * Makefile.in (fsmnam, fnamedat): new test cases.
- * fsmnam.awk, fsmnam.ok: new files.
- * fnamedat.awk, fnamedat.in, fnamedat.ok: new files.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Tue May 25 16:37:50 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (printf1): new test case.
- * printf1.awk, printf1.ok: new files.
-
-Wed May 19 15:32:09 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * reg/*: moved exp and log tests to new `Obsolete' directory; they
- would only succeed under SunOS 4.x.
-
-Mon May 3 11:53:33 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (gawk.extensions): removed `nondec' until the
- associated features get documented in 3.1.
-
-Tue Nov 3 16:46:39 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (getnr2tm, getnr2tb): new test cases.
- * getnr2tm.awk, getnr2tm.in, getnr2tm.ok: new files.
- * getnr2tb.awk, getnr2tb.in, getnr2tb.ok: new files.
-
-Sun Nov 1 13:20:08 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (zeroflag): new test case.
- * zeroflag.awk, zeroflag.ok: new files
-
-Wed Oct 28 18:44:19 1998 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (nasty): new test case.
- * nasty.awk, nasty.ok: new files
-
-Sun Nov 16 20:08:59 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * gsubtest.awk, gsubtest.ok: fix for count of matches in gsub
- from Geert.Debyser@esat.kuleuven.ac.be.
-
-Sun Nov 16 19:54:50 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Makefile.in (strftime): fix a typo (LANC -> LANG).
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Tue May 13 12:53:46 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (messages): more testing for OK failure on Linux.
-
-Sun May 11 14:57:11 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (nondec): new test case.
- * nondec.awk, nondec.ok: new files.
-
-Sun May 11 07:07:05 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (prdupval): new test case.
- * prdupval.awk, prdupval.in, prdupval.ok: new files.
-
-Wed May 7 21:54:34 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (delarprm): new test case.
- * delarprm.awk, delarprm.ok: new files.
-
-Wed May 7 17:54:00 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (pid): several fixes from ghazi@caip.rutgers.edu.
-
-Tue May 6 20:28:30 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (strftime): Use the right locale stuff.
- (clobber): don't need an input file.
-
-Thu Apr 24 22:24:42 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (pid): new test case, from jco@convex.com.
- (specfile): removed test case, pid does it better.
- * pid.awk, pid.ok, pid.sh: new files.
- * specfile.awk: removed.
-
-Wed Apr 23 23:37:10 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (pipeio2): new test case.
- * pipeio2.awk, pipeio2.ok, pipeio2.in: new files.
-
-Sun Apr 20 12:22:52 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (clobber): new test case.
- * clobber.awk, clobber.ok: new files.
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Tue Apr 15 05:57:29 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (strftlng): More wizardry for bizarre Unix systems.
- (nlfldsep): use program and input file, not shell script
- (basic, unix-tests, gawk.extensions): moved specfile, pipeio1
- and strftlng into unix-tests per Pat Rankin.
- * nlfldsep.awk, nlfldsep.in: new files.
- * nlfldsep.sh: removed.
-
-Wed Apr 9 23:32:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (funstack): new test case.
- * funstack.awk, funstack.in, funstack.ok: new files.
- * substr.awk: added many more tests.
- * substr.ok: updated
-
-Wed Mar 19 20:10:21 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (pipeio1): new test case.
- * pipeio1.awk, pipeio1.ok: new files.
-
-Tue Mar 18 06:38:36 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (noparm): new test case.
- * noparm.awk, noparm.ok: new files.
-
-Fri Feb 21 06:30:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (reint): new test case.
- * reint.awk, reint.in, reint.ok: new files.
-
-Wed Feb 5 18:17:51 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (fnarydel): new test case.
- * fnarydel.awk, fnarydel.ok: new files.
-
-Sun Jan 19 17:06:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (nors): new test case.
- * nors.ok: new file.
-
-Sun Jan 19 17:06:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (specfile, strftlng, nfldstr): new test cases.
- * specfile.awk, strftlng.awk, strftlng.ok, nfldstr.ok: new files.
-
-Fri Dec 27 11:27:13 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (intest): new test case.
- * intest.awk, intest.ok: new files.
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Thu Nov 7 09:12:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (splitvar): new test case.
- * splitvar.awk, splitvar.in, splitvar.ok: new files.
-
-Sun Nov 3 10:55:50 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (nlfldsep): new test case.
- * nlfldsep.sh, nlfldsep.ok: new files.
-
-Fri Oct 25 10:29:56 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * rand.awk: call srand with fixed seed.
- * rand.ok: new file.
- * Makefile.in (rand): changed to compare output with rand.ok.
-
-Sat Oct 19 21:52:04 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (tradanch): new test case.
- * tradanch.awk, tradanch.in, tradanch.ok: new files.
-
-Thu Oct 17 21:22:05 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * tweakfld.awk: move `rm' out into Makefile.in.
- * eofsplit.awk: fixed buggy code so won't loop forever.
- * Makefile.in (all): add unix-tests.
- (unix-tests): new target, has pound-bang, fflush, getlnhd.
- (basic): removed fflush, getlnhd.
- (tweakfld): added rm from tweakfld.awk.
-
-Sun Oct 6 22:00:35 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (back89): new test case.
- * back89.in, back89.ok: new files.
-
-Sun Oct 6 20:45:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (splitwht): new test case.
- * splitwht.awk, splitwht.ok: new files.
-
-Sun Sep 29 23:14:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (gsubtest): new test case.
- * gsubtest.awk, gsubtest.ok: new files.
-
-Fri Sep 20 11:58:40 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (prtoeval): new test case.
- * prtoeval.awk, prtoeval.ok: new files.
-
-Tue Sep 10 06:26:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (gsubasgn): new test case.
- * gsubasgn.awk, gsubasgn.ok: new files.
-
-Wed Aug 28 22:06:33 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * badargs.ok: updated output corresponding to change made to
- main.c (see main ChangeLog).
-
-Thu Aug 1 07:20:28 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (clean): remove out[123] files from `messages' test.
- Thanks to Pat Rankin (rankin@eql.caltech.edu).
-
-Sat Jul 27 23:56:57 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (prt1eval): new test case.
- * prt1eval.awk, prt1eval.ok: new files.
-
-Mon Jul 22 22:06:10 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (eofsplit): new test case.
- * eofsplit.awk, eofsplit.ok: new files.
-
-Sun Jul 14 07:07:45 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (fldchgnf): new test case.
- * fldchgnf.awk, fldchgnf.ok: new files.
-
-Tue May 21 23:23:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (substr): new test case.
- * substr.awk, substr.ok: new files.
-
-Tue May 14 15:05:23 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (dynlj): new test case.
- * dynlj.awk, dynlj.ok: new files.
-
-Sun May 12 20:45:34 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (fnarray): new test case.
- * fnarray.awk, fnarray.ok: new files.
-
-Fri Mar 15 06:46:48 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (clean): added `*~' to list of files to be removed.
- * tweakfld.awk (END): added to do clean up action.
-
-Thu Mar 14 16:41:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (mmap8k): new test case.
- * mmap8k.in, mmap8k.ok: new files.
-
-Sun Mar 10 22:58:35 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (clsflnam): new test case.
- * clsflnam.in, clsflnam.awk, clsflnam.ok: new files.
- * tweakfld.awk: changed to have a fixed date.
-
-Thu Mar 7 09:56:09 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (tweakfld): new test case.
- * tweakfld.in, tweakfld.awk, tweakfld.ok: new files.
-
-Sun Mar 3 06:51:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (getlnhd, backgsub) : new test cases.
- * getlnhd.awk, getlnhd.ok: new files.
- * backgsub.in, backgsub.awk, backgsub.ok: new files.
-
-Mon Feb 26 22:30:02 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (sprintfc): new test case.
- * sprintfc.in, sprintfc.awk, sprintfc.ok: new files.
- * gensub.awk: updated for case of no match of regex.
-
-Wed Jan 24 10:06:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Makefile.in (distclean, maintainer-clean): new targets.
- (reindops): added test from Rick Adams (rick@uunet.uu.net).
- (arrayparm, paramdup, defref, strftime, prmarscl, sclforin,
- sclifin): Fix from Larry Schwimmer (schwim@cyclone.stanford.edu)
- so that tests that are supposed to fail use `... || exit 0' to
- cause a clean `make clean'.
-
-Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * ChangeLog created.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/test/ChangeLog.0 b/test/ChangeLog.0
new file mode 100644
index 00000000..3d5b4de4
--- /dev/null
+++ b/test/ChangeLog.0
@@ -0,0 +1,1785 @@
+Mon Jun 20 20:35:04 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dfastress.awk, dfastress.ok: New files.
+ * Makefile.am (dfastress): New test.
+
+Sun Jun 5 21:45:27 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fpat1.ok, fpat1.in: Updated to test things better.
+
+Tue May 31 22:50:28 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * regrange.awk, regrange.ok: New files.
+ * Makefile.am (regrange): New test.
+
+Thu May 26 22:08:27 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fpat2.awk, fpat2.ok: New files. Thanks to Pat Rankin for the cases.
+ * Makefile.am (fpat2): New test.
+
+Mon May 23 14:03:15 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fpatnull.awk, fpatnull.in, fpatnull.ok: New files.
+ * Makefile.am (fpatnull): New test.
+
+Sun May 22 11:58:58 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * dumpvars.ok: Updated.
+
+Thu May 19 16:56:31 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Sat May 14 22:28:56 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * delargv.awk, delargv.ok: New files.
+ * Makefile.am (delargv): New test.
+
+Mon May 9 15:06:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Put next and exit tests into gawk specific tests
+ since they use BEGINFILE and ENDFILE. Thanks to Pat Rankin.
+
+Sun May 8 20:32:59 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arraysort.ok, sort1.ok: Updated.
+
+Wed May 4 23:37:27 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ Revise tests for array sorting.
+
+ * arraysort.awk, arraysort.ok, sort1.awk, sort1.ok,
+ sortfor.awk: Revised.
+
+Wed May 4 23:07:39 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * nastyparm.awk, nastyparm.ok: New files from John Haque.
+ * Makefile.am (nastyparm): New test.
+
+Wed May 4 23:03:06 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * delsub.awk, delsub.ok: New files.
+ * Makefile.am (delsub): New test.
+
+Fri Apr 22 16:07:01 2011 John Haque <j.eh@mchsi.com>
+
+ * sortu.awk, sortu.ok: New files.
+
+Fri Apr 22 09:19:06 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arraysort.ok: Updated.
+
+Mon Apr 18 10:22:28 2011 John Haque <j.eh@mchsi.com>
+
+ * arraysort.awk, arraysort.ok, sort1.awk, sort1.ok: Updated.
+
+Fri Apr 15 13:49:36 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * ofmta.awk, ofmta.ok: New files from John Haque.
+ * Makefile.am (ofmta): New test.
+
+Thu Apr 7 21:44:06 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arraysort.awk, arraysort.ok: Added more test cases.
+
+Fri Apr 1 11:56:54 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arraysort.awk, arraysort.ok: New files from John Haque,
+ edited somewhat.
+ * Makefile.am (arraysort): New test.
+
+Wed Mar 30 22:00:59 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * next.sh, exit.sh: New files from John Haque, edited somewhat.
+ * Makefile.am (next, exit): New tests.
+
+Mon Feb 21 20:32:36 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (GAWK_EXT_TESTS): Include profile3. Thanks to
+ Scott Deifik for pointing out the omission.
+
+Tue Feb 15 17:11:26 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * sortfor.awk: New values for PROCINFO["sorted_in"].
+ * sortfor.ok: Sync with updated sortfor.awk.
+
+Wed Feb 16 21:09:50 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (lintwarn): New test.
+ * lintwarn.awk, lintwarn.ok: New files from John Haque.
+ * funsmnam.ok, noeffect.ok, paramdup.ok, paramres.ok: Adjust
+ after fixes to lint warnings.
+
+Mon Feb 14 21:31:10 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (profile2): Add -v sortcmd=sort to pgawk invocation.
+ (profile1): Remove awkprof.out. Thanks to Pat Rankin for noticing.
+
+Sun Feb 13 20:27:35 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * xref.awk: Allow sortcmd to be preset via -v option.
+ * profile2.ok: Sync with updated xref.awk.
+
+Sun Feb 13 19:55:15 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (profile3): New test.
+ * profile3.awk, profile3.ok: New files.
+
+Fri Feb 11 10:29:48 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (manyfiles): Bump limit up above 1024, which is
+ what most modern systems have for number of open file descriptors.
+
+Tue Feb 8 22:49:17 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * aryprm4.ok, scalar.ok, sclforin.ok, sclifin.ok: Fixed to match
+ output message changes.
+
+Mon Feb 7 21:39:39 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (negrange): New test.
+ * negrange.awk, negrange.ok: New files.
+
+Tue Feb 1 23:21:39 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * xref.awk: Change sort command to just "sort"; avoids
+ problems for Windows and is good enough for the test.
+ * profile2.ok: Update.
+
+Tue Feb 1 10:20:47 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * sortfor.awk: Change magic string to match code.
+
+Thu Jan 27 22:56:19 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (sortfor): New test.
+ * sortfor.awk, sortfor.in, sortfor.ok: New files.
+
+Thu Jan 27 22:03:22 2011 John Haque <j.eh@mchsi.com>
+
+ * xref.awk, profile2.ok: Fixed to be character set independent.
+
+Sun Dec 26 13:54:21 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (EXTRA_DIST): Include profile2.ok in the list. Oops.
+
+Mon Dec 13 13:54:56 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * localenl.sh: Use --posix option.
+
+Sun Dec 12 13:58:36 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gsubtst5.ok: Adjust contents.
+
+Tue Dec 7 22:31:51 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (profile1, profile2): New tests.
+ * dtdgport.awk, xref.original, xref.awk, profile2.ok: New files.
+ * Gentests: Use POSIX character classes instead of ranges.
+
+Mon Dec 6 19:47:09 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (whiny): Removed test.
+ * whiny.awk, whiny.in, whiny.ok: Removed.
+
+Wed Dec 1 08:11:46 2010 Corinna Vinschen <vinschen@redhat.com>
+
+ * Makefile.am (beginfile1): Refer to Makefile instead of
+ $(srcdir)/Makefile for building out of the source directory.
+
+Tue Nov 30 13:51:35 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Mon Nov 29 21:52:49 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * funstack.awk, gsubtst5.ok, igncfs.awk, longwrds.awk,
+ ofmtbig.awk, subamp.awk: Fix regexes to remove ranges.
+
+Fri Nov 12 11:58:40 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (dumpvars): New test.
+ * dumpvars.in, dumpvars.ok: New files.
+
+Thu Nov 11 16:29:06 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * backgsub.ok: Updated to match change in code.
+ * posix2008sub.awk, posix2008.ok: New files, renamed from ...
+ * psx96sub.awk, psx96sub.ok: Removed.
+ * Makefile.am (posix2008sub): Renamed from `psx96sub'.
+
+Tue Nov 2 12:14:50 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Mon Nov 1 21:44:48 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ New tests for arrays of arrays, courtesy of John Haque
+ <j.eh@mchsi.com>.
+
+ * Makefile.am (aadelete1, aadelete2, aarray1,
+ aasort, aasorti): New tests.
+ * aadelete1.awk, aadelete1.ok, aadelete2.awk, aadelete2.ok,
+ aarray1.awk, aarray1.ok, aasort.awk, aasort.ok,
+ aasorti.awk, aasorti.ok: New files.
+
+ Unrelated:
+ * badargs.ok: Updated.
+
+Tue Oct 26 20:49:41 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (switch2): Made into a test.
+ * switch2.ok: New file.
+
+Tue Oct 19 08:26:03 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (gsubtst6, mbstr1, mbprintf3, printfbad2):
+ Re-enable these tests that got lost during the merge. Thanks
+ to Scott Deifik for noticing.
+
+Fri Oct 15 14:20:22 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (beginfile1, range1): New tests.
+ * beginfile1.awk, beginfile1.in, beginfile1.ok: New files.
+ * range1.awk, range1.in, range1.ok: New files.
+
+Sun Jun 27 22:01:38 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated with new usage message.
+
+Tue Jun 22 20:55:47 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fpat1, patsplit): New tests.
+ * fpat1.awk, fpat1.in, fpat1.ok, patsplit.awk, patsplit.ok: new files.
+
+Fri Jan 16 11:36:02 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok, funstack.awk, gsubtst4.ok: Adjust to change in
+ --gen-po option, removal of -r, and enabling interval expressions.
+
+Fri Jan 16 11:36:02 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (indirectcall): New test.
+ * indirectcall.awk, indirectcall.in, indirectcall.ok: New files.
+
+Tue Dec 30 22:27:08 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Tue Dec 9 06:58:00 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * Makefile.am (splitarg4): New test.
+ * splitarg4.awk, splitarg4.in, splitarg4.ok: New files.
+
+Wed Dec 26 22:01:52 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * pid.awk: Fix to use PROCINFO now that /dev/pid, /dev/ppid gone.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Wed Apr 21 22:23:30 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (EXTRA_DIST): Add Gentests.vms so it'll be
+ in the dist.
+ * localenl.sh, localenl.ok: Remove UNKNOWN locale per
+ request from Nelson Beebe.
+ * lc_num1.awk, lc_num1.ok: Revised to not fail on systems
+ where the quote flag isn't supported. Also per Nelson Beebe.
+
+Thu Feb 18 22:50:54 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fcall_exit2): New test.
+ * fcall_exit2.awk, fcall_exit2.in, fcall_exit2.ok: New files.
+
+Wed Feb 17 23:25:27 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fcall_exit): New test.
+ * fcall_exit.awk, fcall_exit.ok: New files.
+
+Fri Feb 5 13:02:10 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (forref): New test.
+ * forref.awk, forref.ok: New files.
+
+Tue Oct 6 19:49:22 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (uninit5): New test.
+ * uninit5.awk, uninit5.ok: New files.
+
+Tue Aug 4 06:04:04 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * hsprint.ok: Updated.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Fri Jul 3 13:04:55 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (charset-tests): Moved tests that can fail based on
+ character set and locale issues into a separate section.
+
+Wed Jun 24 22:30:31 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * lintold.awk: Changed to avoid floating point problems on VMS.
+
+Wed Jun 24 05:39:00 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * printfbad2.awk, printfbad2.ok: Adjusted for systems where sed
+ will add a final newline if the input didn't contain one.
+
+Mon Jun 22 00:44:50 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * getlndir.awk (SRCDIR): Allow caller to override "." as directory.
+ * intformat.awk (HUGEVAL): Allow caller to override the largest
+ value, and restructure 10^x and 2^y loops to use it without
+ overflowing on non-IEEE floating pointing hosts.
+
+Tue Jun 23 05:26:52 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (MACHINE_TESTS): Move fmtspcl to here per Pat Rankin.
+
+Fri Jun 19 14:26:55 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (GAWK_EXT_TESTS): Fixed sorting of tests.
+ Removed ovrflow1 test since double1 is a superset; thanks
+ to Pat Rankin.
+ * (ovrflow1.awk, ovrflow1.ok): Removed.
+
+Thu Jun 18 05:46:32 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (localenl): Per Michal Jaegermann, send stderr output
+ to /dev/null.
+ * (machine-tests): Moved several tests to new section for tests
+ whose output can vary by hardware.
+
+Thu Jun 11 04:50:44 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (lc_num1): Don't need --posix, changed command line
+ so that AWKPATH influences again. Thanks to Corinna Vinschen
+ for making me fix this.
+
+Wed Jun 10 08:28:13 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (lc_num1, printfbad2): Fix so building outside the
+ source directory works.
+
+Thu May 21 21:10:53 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Fri May 15 14:38:16 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (paramres): New test.
+ * paramres.awk, paramres.ok: New files.
+
+Fri Mar 27 10:57:49 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (printfbad2): New test.
+ * printfbad2.awk, printfbad2.in, printfbad2.ok: New files.
+
+Tue Feb 3 22:08:27 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (uparrfs): New test.
+ * uparrfs.awk, uparrfs.in, uparrfs.ok: New files.
+
+Mon Jan 5 22:53:26 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (getlndir): New test.
+ * getlndir.awk, getlndir.ok: New files.
+
+Mon Dec 29 22:46:10 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mbprintf3): New test.
+ * mbprintf3.awk, mbprintf3.in, mbprintf3.ok: New files.
+
+Thu Dec 18 20:57:39 2008 Stepan Kasal <skasal@redhat.com>
+
+ * lc_num1.awk, lc_num1.ok: Test that the quote modifier in
+ printf is not sticky.
+ * Makefile.am: Add it.
+ * Gentests: Allow _ in test names.
+
+Thu Dec 11 21:36:11 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mbstr1): New test.
+ * mbstr1.awk, mbstr1.ok: New files.
+
+Thu Dec 4 22:44:39 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (closebad): New test.
+ * closebad.awk, closebad.ok: New files.
+
+Thu Jul 31 21:44:21 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (match3, gsubtst6): New tests.
+ * match3.awk, match3.in, match3.ok: New files.
+ * gsubtst6.awk, gsubtst6.ok: New files.
+
+Fri May 2 12:43:51 2008 Steffen Schuler <schuler.steffen@googlemail.com>
+
+ * Makefile.am (mbfw1): Add code for test to use a UTF locale.
+
+Wed Apr 23 22:13:47 2008 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (funlen, mbfw1, mbprintf1, mbprintf2): New tests.
+ * funlen.awk, funlen.in, funlen.ok: New files.
+ * mbfw1.awk, mbfw1.in, mbfw1.ok: New files.
+ * mbprintf1.awk, mbprintf1.in, mbprintf1.ok: New files.
+ * mbprintf2.awk, mbprintf2.ok: New files.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Wed Sep 26 14:32:28 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (localenl): New test.
+ (regtest): Fixed invocation of shell script.
+ * localenl.sh, localenl.ok: New files.
+ * reg/func2.good: Revised to match current gawk output.
+
+Wed Sep 26 14:49:04 2007 Eli Zaretskii <eliz@gnu.org>
+
+ * exitval2.w32: New file, a Windows version for exitval2.awk.
+
+Tue May 29 13:22:33 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * badargs.ok: Updated.
+
+Thu May 17 21:10:51 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * icasers.awk: Modify pattern to work on VMS too, doesn't
+ break Unix/Linux.
+
+Tue May 15 22:05:24 2007 Pat Rankin <rankin@pactechdata.com>
+
+ Steps towards generating VMS .mms file to run test suite.
+
+ * Makefile.am (FAIL_CODE1): New macro, list of programs
+ that exit 1.
+ * Gentests: Add VMS code.
+ * Gentests.vms: New file.
+
+Wed May 2 19:30:54 2007 Stepan Kasal <kasal@ucw.cz>
+
+ Revert precedence of concatenation and | getline.
+ From mail dated 2005-10-31.
+
+ * parsefld.awk, parsefld.in, parsefld.ok: New files.
+ * Makefile.am (parsefld): New basic test, check for $/regex/ and
+ for /re1/+/re2/.
+ * getline.awk, getline.ok: Add precedence check "echo " "date"|getline
+
+Sun Apr 29 22:43:28 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * hsprint.awk: Add extra "%" to format string. Thanks to Nelson Beebe.
+ * hsprint.ok: Revised.
+
+Tue Apr 24 23:15:01 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * fmtspcl.tok: Provide correct version.
+
+Tue Apr 17 22:23:41 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * double2.awk, double2.ok: Limit to 2^63 for portability across
+ different platforms. Sigh.
+
+Thu Apr 12 20:00:27 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am, Makefile.in (fmtspcl): Use fmtspcl.tok to build
+ a fmtspcl.ok file suitable for the given platform.
+ (diffout): Handle case where the .ok file is in the build directory.
+
+Mon Mar 26 08:24:04 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fmtspcl.ok): Don't remove for cleaning, add
+ to EXTRA_DIST.
+
+Fri Mar 9 11:38:34 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fmtspcl.tok): Removed use of and reference
+ to this file.
+
+Tue Feb 6 08:21:02 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (double1, double2, zero2): New tests.
+ * double1.awk, double1.ok, double2.awk, double2.ok,
+ zero2.awk, zero2.ok: New files.
+
+Sun Feb 4 16:32:45 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (parse1): New test.
+ * parse1.awk, parse1.in, parse1.ok: New files.
+
+Thu Feb 1 17:41:48 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am (fmtspcl): New test.
+ (CLEANFILES): Add fmtpspcl.ok to list.
+ * fmtspcl.awk, fmtspcl.tok: New files.
+
+Mon Jan 29 15:31:35 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am (diffout): Make it work if no problems.
+ (valgrind-scan): New target to show problems.
+
+Mon Jan 29 12:51:16 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (reint2): New test.
+ * reint2.awk, reint2.in, reint2.ok: New files.
+
+Fri Jan 26 20:01:38 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am (intformat): New test.
+ * intformat.awk, intformat.ok: New files.
+
+Tue Jan 23 08:10:48 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fwtest2): New test.
+ * fwtest2.awk, fwtest2.in, fwtest2.ok: New files.
+
+Sun Jan 21 13:09:33 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (synerr2, wideidx2): New test.
+ * synerr2.awk, synerr2.ok, wideidx2.awk, wideidx2.ok: New files.
+
+Fri Jan 19 15:11:12 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (strnum1, widesub4): New test.
+ * strnum1.awk, strnum1.ok, widesub4.awk, widesub4.ok: New files.
+
+Thu Jan 18 13:37:00 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makeilfe.am (devfd, wideidx, widesub, widesub2, widesub3): New
+ tests.
+ * devfd.in4, devfd.in5, devfd.ok, wideidx.awk, wideidx.in, wideidx.ok,
+ widesub.awk, widesub.ok, widesub2.awk, widesub2.ok, widesub3.awk,
+ widesub3.in, widesub3.ok: New files.
+
+Tue Jan 16 12:16:39 2007 Andrew J. Schorr <ajschorr@users.sourceforge.net>
+
+ * Makefile.am: In pid test, no further need to remove _pid.in,
+ since the test no longer creates that file.
+ * pid.awk: Do not read correct values from stdin (they are now passed
+ as command-line variables with -v). Make sure to produce output
+ if the comparisons are successful.
+ * pid.ok: No longer empty, should contain 3 lines if all goes well.
+ * pid.sh: Do not create _pid.in; instead, pass values in with -v.
+
+Sun Jan 14 18:03:12 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * fnarray.ok: Updated.
+
+2007-01-13 Eli Zaretskii <eliz@gnu.org>
+
+ * pipeio2.awk: Don't use empty lines, because Windows ECHO does
+ something different when invoked without arguments.
+
+ * pipeio2.ok: Update.
+
+ * Makefile.am (EXTRA_DIST): Add exitval2.w32.
+
+ * exitval2.w32: New file.
+
+Sat Jan 13 21:25:11 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * lintold.awk, lintold.in, lintold.ok: New `--lint-old' test.
+ * Gentests, Makefile.am: Adjust.
+
+Sat Jan 13 21:17:51 2007 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.am (Maketests): Allow rebuilding from a VPATH build.
+
+Fri Jan 12 14:04:24 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mtchi18n): new test.
+ * mtchi18n.awk, mtchi18n.in, mtchi18n.ok: new files.
+
+Wed Sep 6 02:09:26 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (mixed1): new test.
+ * mixed1.ok: new file.
+
+Tue Jun 20 05:37:53 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (devfd1, devfd2): new tests.
+ * devfd.in1, devfd.in2, devfd1.awk, devfd1.ok, devfd2.ok: new files.
+
+Sun Mar 12 23:48:31 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (concat4): new test.
+ * concat4.awk, concat4.in, concat4.ok: new files.
+
+Sun Mar 12 23:33:26 2006 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (subi18n): new test (from
+ KIMURA Koichi <kimura.koichi@canon.co.jp>).
+ * subi18n.awk, subi18n.ok: New files.
+
+Mon Dec 19 05:41:56 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (ovrflow1): new test.
+ * ovrflow1.awk, ovrflow1.ok: new files.
+
+Wed Dec 14 19:01:08 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (binmode1): new test.
+ * binmode1.ok: new file.
+
+Fri Oct 7 12:28:41 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fwtest): new test.
+ * fwtest.awk, fwtest.in, fwtest.ok: new files.
+
+Fri Aug 12 14:40:47 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (nofile): New test.
+ * nofile.ok: New file.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Sun Jul 10 18:31:45 2005 Scott Deifik <scottd@amgen.com>
+
+ * regtest.sh: Changed to use diff instead of cmp for djgpp.
+ This addresses DOS vs. UNIX end-of-line issues.
+
+Thu Jun 9 23:40:14 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (Maketests): Don't use $< in rule, it breaks
+ on some non-GNU versions of make. Sigh.
+
+Wed Apr 27 22:22:05 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (longdbl): new test.
+ * longdbl.awk, longdbl.in, longdbl.ok: new files.
+
+Wed Feb 2 16:44:41 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (exitval2): new test.
+ * exitval2.awk, exitval2.ok: new files.
+
+Mon Jan 31 10:00:52 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (gnuops3): new test.
+ * gnuops3.awk, gnuops3.ok: new files.
+
+Wed Jan 19 18:04:40 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (hex): new test.
+ * hex.awk, hex.ok: new files.
+
+Sun Jan 9 11:53:09 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (strftime, igncras2, subamp): Use `GAWKLOCALE',
+ not `GAWK_LOCALE'. Grrr!
+
+Mon Jan 3 12:20:08 2005 William J. Poser <wjposer@ldc.upenn.edu>
+
+ * Makefile.am (wjposer1): new test.
+ * wjposer1.awk, wjposer1.in, wjposer1.ok: new files.
+
+Mon Jan 3 11:55:48 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (rsstart1, rsstart2, rsstart3): new tests.
+ * rsstart1.in, rsstart1.awk, rsstart1.ok, rsstart2.awk,
+ rsstart2.ok, rsstart3.ok: new files.
+
+Sun Dec 19 17:31:48 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (gensub2): new test.
+ * gensub2.awk, gensub2.ok: new files.
+
+ Thanks to "John H. DuBois III" <spcecdt@armory.com>.
+
+Thu Dec 9 15:22:58 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fsspcoln): new test.
+ * fsspcoln.awk, fsspcoln.in, fsspcoln.ok: new files.
+
+Mon Nov 29 18:41:33 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (iobug1): new test.
+ * iobug1.awk, iobug1.ok: new files.
+
+Tue Sep 28 18:39:53 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * nondec.awk, nondec.ok: Add 00.34 as value to print, it should
+ not be treated as octal.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Wed Jul 14 16:04:46 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (rstest6): new test.
+ * rstest6.awk, rstest6.in, rstest6.ok: new files.
+
+Tue Jul 13 10:53:32 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strftlng: Use `$(CMP) ... >/dev/null 2>&1' instead of `-s'
+ for OS/2 and other systems that use `CMP = diff -a'.
+
+Mon Jun 14 18:44:39 2004 Pat Rankin <rankin@pactechdata.com>
+
+ * longwrds.awk: allow caller the means to override SORT command.
+
+Tue Jun 8 14:12:52 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fordel, printfbad1): new tests.
+ * fordel.awk, fordel.ok: new files.
+ * printfbad1.awk, printfbad1.ok: new files.
+
+Mon Apr 19 20:29:52 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (manglprm): new test.
+ * manglprm.awk, manglprm.in, manglprm.ok: new files.
+
+Mon Feb 23 18:39:24 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * inftest.awk: Add loop limit per Nelson H.F. Beebe.
+ * Makefile.am (strftime): Use LC_ALL=C for `date' invocation.
+
+Thu Feb 12 02:08:15 2004 Stepan Kasal <kasal@ucw.cz>
+
+ * Makefile.am (diffout): Use $(srcdir), when we are not building
+ in the source tree.
+
+Wed Feb 11 10:23:39 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (strcat1): new test.
+ * strcat1.awk, strcat1.ok: new files.
+
+Fri Feb 6 12:09:55 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (CLEANFILES): Added.
+
+Thu Feb 5 15:34:14 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (exitval1): new test.
+ * exitval1.awk, exitval1.ok: new files.
+
+Mon Feb 2 10:29:19 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (subamp): new test.
+ * subamp.awk, subamp.in, subamp.ok: new files.
+
+ * subamp, ignrcas2, strftime: Set GAWK_LOCALE, not LC_ALL.
+
+Wed Jan 14 15:28:34 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (backw): new test.
+ * backw.awk, backw.in, backw.ok: new files.
+
+Mon Dec 1 10:29:22 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (concat3): new test.
+ * concat3.awk, concat3.ok: new files.
+
+Sun Nov 2 16:05:21 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (concat2): new test.
+ * concat2.awk, concat2.ok: new files.
+
+Wed Oct 29 13:35:37 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (subsepnm): new test.
+ * subsepnm.awk, subsepnm.ok: new files.
+
+Mon Sep 15 16:05:37 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (ignrcas2): new test.
+ * ignrcas2.awk, ignrcas2.ok: new files.
+
+Tue Sep 9 16:03:34 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (unterm): new test.
+ * unterm.awk, unterm.ok: new files.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Fri Jul 4 11:12:07 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (poundbang2): Removed.
+ (poundbang): Added env var settings.
+
+Thu Jun 26 15:44:33 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (match2, whiny): new tests.
+ * match2.awk, match2.ok: new files.
+ * whiny.awk, whiny.ok: new files.
+
+Thu Jun 26 14:51:40 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Use double quotes for sed invocation to make
+ life easier (eventually) for DOS version of Makefile.
+ * pipeio2.awk, pipio2.ok: Ditto.
+
+Wed Jun 18 12:32:14 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (AWK): Use LC_ALL=$${GAWKLOCALE:-C} and
+ same for LANG when running awk. Provides sane locale for
+ tests with ability to override it if need be.
+ (all tests): Removed explicit setting of LC_ALL and LANG.
+ * Gentests: Ditto.
+
+Wed May 28 08:02:33 CEST 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (uninit4): new test.
+ * uninit4.awk, uninit4.ok: new files.
+
+Wed May 28 06:30:23 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (aryprm4 aryprm5 aryprm6 aryprm7 aryprm8 scalar uninit3):
+ new tests.
+ * aryprm4.awk aryprm4.ok aryprm5.awk aryprm5.ok aryprm6.awk aryprm6.ok:
+ aryprm7.awk aryprm7.ok aryprm8.awk aryprm8.ok scalar.awk scalar.ok:
+ uninit3.awk uninit3.ok: new files.
+
+Tue May 27 14:27:50 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (aryprm1, aryprm2, aryprm3, sortempty): New tests.
+ * aryprm1.awk, aryprm1.ok, aryprm2.awk, aryprm2.ok: New files.
+ * aryprm3.awk, aryprm3.ok, sortempty.awk, sortempty.ok: dtto
+ * prmarscl.ok: The actual error message has changed.
+
+Tue May 27 08:23:51 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * arrayref3.ok, arrayref4.ok, fnaryscl.ok: Error messages reformatted.
+
+Sun Jun 8 17:18:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fmttest, strtonum, nested, gsubtst5, delarpm2): New tests.
+ * fmttest.awk, fmttest.ok: New files. From Nelson Beebe,
+ <beebe@math.utah.edu>.
+ * strtonum.awk, strtonum.ok: New files.
+ * nested.awk, nested.in, nested.ok: New files.
+ * gsubtst5.awk, gsubtst5.in, gsubtst5.ok: New files.
+ * delarpm2.awk, delarpm2.ok: New files. (Also from Nelson Beebe.)
+
+ * switch2.awk: Currently unused test for switch code.
+
+Wed May 14 16:49:53 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Gentests: Add LC_ALL=C LANG=C to generated tests.
+ * Makefile.am: All other manual tests: ditto.
+
+Sun May 11 15:27:55 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (rsnulbig, rsnulbig2): New tests.
+ * rsnulbig.ok, rsnulbig2.ok: New files.
+
+Sun May 11 15:00:20 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (arrayprm2, arrayprm3, arryref2, arryref3, arryref4,
+ arryref5, rstest3, rstest4, rstest5): New tests.
+ * arrayprm2.awk, arrayprm2.ok, arrayprm3.awk, arrayprm3.ok, arryref2.ok,
+ arryref3.ok, arryref4.ok, arryref5.ok, rstest3.awk, rstest3.ok, rstest4.awk,
+ rstest4.ok, rstest5.awk, rstest5.ok: New files.
+
+Sun May 11 12:20:59 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * strftime.awk: Remove seconds from input and strftime output,
+ to decrease chance of failing on second boundary.
+ * Makefile.am (strftime): Tweak message appropriately.
+
+Tue Mar 25 08:35:42 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fnarray2): New test.
+ * fnarray2.awk, fnarray2.ok: New files.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Wed Mar 19 14:00:00 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (synerr1): New test.
+ * synerr1.awk, synerr1.ok: New files.
+
+Tue Mar 4 10:32:23 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (clean): Remove `core*' for modern Linux which
+ drops core in `core.PID' files.
+
+2003-02-17 Jim Meyering <jim@meyering.net>
+
+ * Makefile.am (check): Don't depend on the pass-fail rule that
+ reports any failures. Otherwise, for `make -j' that rule's commands
+ could run before all tests had completed, resulting in spurious
+ failures or potentially, even unreported failures. Instead, just
+ `$(MAKE) pass-fail'.
+
+Sun Feb 9 11:48:32 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Moved `space' into UNIX_TESTS. Breaks in
+ MS environments.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Tue Feb 4 12:22:41 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (fnmisc): New test case.
+ * fnmisc.awk, fnmisc.ok: New files.
+
+Sun Feb 2 15:33:33 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * getline3.awk, getline3.ok: Renamed from getline2.awk, getline2.ok
+ * Makefile.am (getline, getline2): getline renamed to getline2,
+ new test under the name getline.
+ * getline.awk, getline.ok, getline2.awk, getline2.ok:
+ rename getline.* getline2.*; new files getline.* .
+ * getline.awk, getline.ok: add tests for ``cmd | getline ''
+ * Makefile.am (printf0): New test.
+ * printf0.awk, printf0.ok: New files.
+ * fnarray.ok: The error message has changed.
+
+Thu Jan 30 15:32:56 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (splitarr, getline2, inputred, prec): New tests.
+ * splitarr.awk, splitarr.ok: New files.
+ * getline2.awk, getline2.ok: New files.
+ * inputred.awk, inputred.ok: New files.
+ * prec.awk, prec.ok: New files.
+ * noeffect.awk: add second no-effect command; two error messages
+ should be generated. Add some empty statements, to check that --lint
+ doesn't abort on them.
+
+Tue Jan 28 18:34:22 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * arrymem1.awk: Enhanced test.
+ * arrayme1.ok: Updated for new output
+
+Mon Jan 27 14:07:16 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * nfldstr.awk: Add tests for automatic number conversion.
+
+Mon Jan 27 12:25:41 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (asort, asorti, match1): New tests.
+ * match1.awk, match1.in: New files.
+ * asort.awk, asort.in: New files.
+ * asorti.awk, asorti.in: New files.
+
+Mon Jan 27 12:10:16 2003 Stepan Kasal <kasal@math.cas.cz>
+
+ * strtod.awk, strtod.in, strtod.ok: Added test for 0e0 and similar.
+
+Sun Jan 26 16:49:41 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (zeroe0): New test.
+ * zeroe0.awk, zeroe0.in: New files.
+
+Thu Jan 2 11:09:12 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * parseme.ok, noparms.ok: Revised for bison 1.875.
+
+Tue Dec 31 16:54:44 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: (poundbang): Fix code.
+ (efence): New target to remove _* files run with Electric Fence
+ but that are otherwise OK.
+
+Thu Dec 26 16:44:37 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (poundbang): Add code to handle systems with limits on
+ paths for #! files.
+
+Mon Dec 9 14:20:44 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (space): New test: ``gawk -f " " file'' should try
+ to include file ` '.
+
+Sun Nov 17 21:47:11 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (manyfiles): Reference $(srcdir)/$@.ok so can build
+ and test in a different directory.
+
+Sun Nov 3 14:47:59 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ Move tests with inline input and/or programs into separate files so can let
+ Gentests do more work. Per Nelson Beebe, just print the name of each test.
+
+ * Makefile.am (fstabplus, longwrds, fieldwdth, ignrcase, posix, rs, fsbs):
+ removed targets so will be generated by Gentests.
+ (negexp, resplit, childin, back89, nfldstr, nondec): ditto.
+ * Gentests: print name of test, make cmp not echo by prefixing with @.
+ * fstabplus.in: new file.
+ * fieldwdth.awk, fieldwdth.in: new files.
+ * ignrcase.awk, ignrcase.in: new files.
+ * longwrds.awk: send output to sort instead of letting makefile do it.
+ * longwrds.in: renamed from manpage.
+ * posix.in: new file.
+ * manyfiles.ok: new file.
+ * rs.awk: new file.
+ * fsbs.awk: new file.
+ * negexp.awk: new file.
+ * resplit.awk, resplit.in: new files.
+ * childin.awk, childin.in: new files.
+ * back89.awk: new file.
+ * nfldstr.awk, nfldstr.in: new files.
+
+Sun Nov 3 14:37:39 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (uninit2): new test case, requires lint.
+ * uninit2.awk, uninit2.ok: new files.
+
+Fri Nov 1 11:34:45 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (nondec): Always run this test.
+
+Tue Oct 29 10:40:47 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (EXTRA_DIST): Added Gentests to list of files
+ to distribute.
+
+Mon Oct 28 15:36:42 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (icasers, icasefs, rstest1, rstest2): new test cases.
+ (argarray): Remove argarray.in if not in srcdir.
+ * icasers.awk, icasers.in, icasers.ok: new files.
+ * icasefs.awk, icasefs.ok: new files.
+ * rstest1.awk, rstest1.ok: new files.
+ * rstest2.awk, rstest2.ok: new files.
+
+Mon Oct 28 12:25:25 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (uninitialized): New test.
+ * uninitialized.awk, uninitialized.ok: New files.
+
+Mon Oct 28 11:24:16 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * Gentests: new script
+ * Maketests: new file, generated automatically by Gentests
+ * Makefile.am: new rules and variables to make use of Gentests;
+ Most targets removed, Gentests will take care
+
+Sun Oct 13 16:58:07 2002 Stepan Kasal <kasal@math.cas.cz>
+
+ * Makefile.am (nfneg): new test case.
+ * nfneg.awk, nfneg.ok: new files.
+
+Mon Oct 7 09:38:07 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (noloop1, noloop2): new test cases.
+ * noloop.awk, noloop1.in, noloop1.ok, noloop2.in, noloop2.ok:
+ new files.
+
+Tue Oct 1 18:28:40 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (poundbang): Rewrote rule to avoid problems
+ with hardcoding of /tmp pathname.
+ (poundbang.awk): Changed the way it works.
+ (poundbang.ok): Removed.
+
+Thu Sep 5 13:31:28 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (rebuf): new test case.
+ * rebuf.awk, rebuf.in, rebuf.ok: new files.
+
+Wed Aug 21 15:31:57 2002 Andreas Buening <andreas.buening@nexgo.de>
+
+ * Makefile.am (AWKPROG): Add $(EXEEXT) macro.
+ (PATH_SEPERATOR): Removed.
+ (poundbag): Added $(EXEEXT) and use of ${TMPDIR-/tmp}.
+
+Wed Aug 7 13:47:09 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (nulrsend): new test case.
+ * nulrsend.awk, nulrsend.in, nulrsend.ok: new files.
+
+Sun Aug 4 00:25:23 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (gsubtst3, gsubtst4): new test cases.
+ * gsubtst3.awk, gsubtst3.ok, gsubtst4.awk, gsubtst4.ok: new files.
+
+Thu May 9 22:31:36 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (gsubtst2): new test case.
+ * gsubtest.awk, gsubtest.ok: Added new test.
+ * gsubtst2.awk, gsubtst2.ok: new files.
+
+Sun May 5 12:38:55 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Minor mods to use LC_ALL=C so that checks will
+ use the English messages, not any translations.
+ (manyfiles): Fixed (hopefully) to leave a file around if the
+ test fails, so that we don't get a spurious "ALL TESTS PASSED"
+ message.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Tue Apr 16 17:07:25 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (pass-fail): New target that prints an
+ `all passed' or `x tests failed' message, for use in
+ grep-ing build logs.
+ (check): Add pass-fail as last dependency.
+
+ Thanks to Nelson Beebe for the thought, beebe@math.utah.edu.
+
+Sun Mar 10 17:00:51 2002 Scott Deifik <scottd@amgen.com>
+
+ * Makefile.am (strftime): Add TZ=GMT0 into environment, to
+ regularize things, esp. for some DJGPP systems.
+
+Mon Feb 18 14:55:19 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (longsub): new test case.
+ * longsub.awk, longsub.in, longsub.ok: new files.
+
+Wed Jan 23 15:03:36 2002 Andreas Buening <andreas.buening@nexgo.de>
+
+ * Makefile.am (PATH_SEPARATOR): Added.
+ (awkpath): Make use of PATH_SEPARATOR.
+
+Wed Jan 23 14:50:38 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (concat1): new test case.
+ * concat1.awk, concat1.in, concat1.ok: new files.
+
+Mon Jan 7 22:21:25 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (forsimp): new test case.
+ * forsimp.awk, forsimp.ok: new files.
+
+Wed Dec 26 22:01:52 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (inftest): Add sed to fix case issues between
+ different libc versions. Ugh.
+
+Wed Dec 19 16:01:58 2001 Peter J. Farley III <pjfarley@dorsai.org>
+
+ * Makefile.am (manyfiles): Also delete \15 in tr.
+
+Tue Dec 18 20:56:07 2001 Andreas Buening <andreas.buening@nexgo.de>
+
+ * Makefile.am (nors): Add \15 to list of chars to delete so
+ test will run on OS/2 also.
+
+Thu Oct 4 18:34:49 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (membug1): new test case.
+ * membug1.awk, membug1.in, membug1.ok: new files.
+
+Thu Aug 23 14:04:10 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (minusstr): new test case.
+ * minusstr.awk, minusstr.ok: new files.
+
+Sat Aug 4 23:42:37 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (arrymem1): new test case.
+ (compare2): new test case.
+ (regtest): Make test work, use regtest.sh, not .awk.
+ * arrymem1.awk, arrymem1.ok: new files.
+ * compare2.awk, compare2.ok: new files.
+
+Mon Jul 23 17:32:03 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (onlynl): new test case.
+ * onlynl.awk, onlynl.in, onlynl.ok: new files.
+
+Wed Jun 13 18:12:43 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.am (ofmtfidl): new test case.
+ * ofmtfidl.awk, ofmtfidl.in, ofmtfidl.ok: new files.
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+Sun May 6 13:30:20 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * inftest.awk: Changed test to use < so that it will
+ work for MSC and DJGPP combination, per Scott Deifik.
+
+Tue Mar 20 11:09:51 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (funsemnl): new test case.
+ * funsemnl.awk, funsemnl.ok: new files.
+
+Wed Mar 7 11:31:41 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (leadnl): new test case.
+ * leadnl.awk, leadnl.in, leadnl.ok: new files.
+
+Tue Feb 6 18:08:15 2001 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (rebt8b1, rebt8b2): new test case.
+ * rebt8b1.awk, rebt8b1.ok: new files.
+ * rebt8b2.awk, rebt8b2.ok: new files.
+
+Sun Dec 3 15:36:41 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (gnuops2): New test case.
+ * gnuops2.awk, gnuops2.ok: New files, based on bug report from
+ Servatius.Brandt@fujitsu-siemens.com.
+
+Mon Nov 27 15:52:46 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * regx8bit.awk, regx8bit.ok: Updated to what should
+ work on all systems.
+
+Wed Nov 22 13:27:59 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (poundbang): Added some smarts for /tmp mounted
+ noexec. Hopefully it'll even work.
+
+Tue Nov 14 17:45:02 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am: Added - to all cmp calls for consistency.
+
+Sun Nov 12 17:50:18 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (addcomma): new test case.
+ * addcomma.awk, addcomma.in, addcomma.ok: new files.
+
+Tue Nov 7 16:03:06 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (regx8bit, psx96sub): new test cases.
+ * regx8bit.awk, regx8bit.ok, psx96sub.awk, psx96sub.ok: new files.
+
+Sun Oct 22 12:09:43 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (shadow): new test case.
+ * shadow.awk, shadow.ok: new files.
+
+Tue Oct 17 10:51:09 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (arynasty): new test case.
+ * arynasty.awk, arynasty.ok: new files.
+
+Mon Oct 2 10:17:13 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (clsflnam): Add redirect of stderr.
+ * clsflnam.awk, clsflnam.ok: modified to reflect changed
+ semantics of close() for a non-open file. See ../ChangeLog.
+
+Sun Sep 24 16:46:29 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (nasty2): new test case.
+ * nasty2.awk, nasty2.ok: new files.
+
+Wed Sep 13 11:09:49 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (check): Added calls to new targets that
+ print messages.
+ (clos1way, basic-msg-start, basic-msg-end, unix-msg-start,
+ unix-msg-end, extend-msg-start, extend-msg-end): new targets.
+ * clos1way.awk, clos1way.ok: new files.
+
+Tue Sep 12 16:29:54 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (leaddig): new test case.
+ * leaddig.awk, leaddig.ok: new files.
+
+Wed Sep 6 14:09:15 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (strtod): new test case.
+ * strtod.awk, strtod.in, strtod.ok: new files.
+
+Mon Sep 4 09:33:28 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (octsub): new test case.
+ * octsub.awk, octsub.ok: new files.
+
+Sun Aug 13 12:37:16 2000 Arnold Robbins <arnold@skeeve.com>
+
+ * Makefile.am (sort1, diffout): new test cases.
+ * sort1.awk, sort1.ok: new files.
+
+2000-02-15 Arnold Robbins <arnold@skeeve.com>
+
+ * MOVED TO AUTOMAKE AND GETTEXT.
+ Just about every file touched. Work done by Arno Peters.
+
+Wed May 19 15:41:41 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (datanonl,regeq,redfilnm): new test cases.
+ * datanonl.awk, datanonl.in, datanonl.ok: new files.
+ * regeq.awk, regeq.in, regeq.ok: new files.
+ * redfilnm.awk, redfilnm.in, redfilnm.ok: new files.
+
+Mon May 10 17:11:30 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (rsnul1nl): new test case.
+ * rsnul1nl.awk, rsnul1nl.in, rsnul1nl.ok: new files.
+
+Sun Apr 25 13:02:35 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (inetechu,inetecht,inetdayu,inetdayt,inet): new
+ tests, courtesy of Juergen Khars.
+ (paramtyp): new test for bug from Juergen.
+ * paramtyp.awk, paramtyp.in: new files.
+
+Sun Oct 25 23:11:46 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (ofmtbig,procinfs): new test cases.
+ * procinfs.awk, procinfs.ok: new files.
+ * ofmtbig.awk, ofmtbig.in, ofmtbig.ok: new files.
+
+Tue Oct 20 22:07:10 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (lint): new test case.
+ * lint.awk, lint.ok: new files.
+ * badargs.ok: updated output corresponding to change made to
+ main.c (see main ChangeLog).
+
+Tue May 26 20:39:07 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * pipeio2.awk: change "\'" to "'" to avoid new warning.
+
+Mon Mar 23 21:53:36 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (fnasgnm): new test case.
+ * fnasgnm.awk, fnasgnm.in, fnasgnm.ok: new files.
+
+Fri Mar 20 11:01:38 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (fnaryscl): new test case.
+ * fnaryscl.awk, fnaryscl.ok: new files.
+
+Mon Mar 16 15:23:22 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (splitdef): new test case.
+ * splitdef.awk, splitdef.ok: new files.
+
+Fri Sep 26 01:10:14 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (parseme): new test case.
+ * parseme.awk, parseme.ok: new files.
+
+Sun Sep 14 23:25:10 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (ofmts): new test case.
+ * ofmts.awk, ofmts.in, ofmts.ok: new files.
+
+Sun Aug 17 07:17:35 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (fsfwfs): new test case.
+ * fsfwfs.awk, fsfwfs.in, fsfwfs.ok: new files.
+
+Sun Jul 27 23:08:53 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (hsprint): new test case.
+ * hsprint.awk, hsprint.ok, printfloat.awk: new files.
+
+Thu Jul 17 20:07:31 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (ofmt): new test case.
+ * ofmt.awk, ofmt.in, ofmt.ok: new files.
+
+Sun Jun 22 16:17:35 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (nlinstr): new test case.
+ * nlinstr.awk, nlinstr.in, nlinstr.ok: new files.
+
+Wed Jun 4 13:18:21 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * pid.sh: send errors to /dev/null to toss warning about
+ using PROCINFO["pid"] etc. This test explicitly tests
+ the special files. It'll need changing in 3.2.
+
+Thu Apr 24 23:24:59 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (messages): remove special case if /dev/fd exists.
+ Finally.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Thu Aug 3 17:51:56 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (nlstrina): new test case.
+ * nlstrina.awk, nlstrina.ok: new files.
+
+Tue Jul 11 14:22:55 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (fnparydl): new test case.
+ * fnparydl.awk, fnparydl.ok: new files.
+
+Fri Jun 30 22:00:03 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (arysubnm): new test case.
+ * arysubnm.awk, arysubnm.ok: new files.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed Jun 14 13:17:59 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (getlnbuf): new test case.
+ * getlnbuf.awk, gtlnbufv.awk, getlnbuf.in, getlnbuf.ok: new files.
+
+Mon Jun 5 15:51:39 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * pipeio2.awk: Change use of tr to sed, fixes problems
+ on SCO OS5.
+ * pipeio2.ok: Updated to reflect use of sed.
+
+Tue May 2 13:28:04 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (strftime): moved test code into a separate
+ file for the PC guys.
+ * strftime.awk: new file.
+
+Mon Apr 10 15:58:13 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (longwrds): Add setting LC_ALL=C to sort
+ call to preserve traditional output. (Theme from the
+ Twilight Zone plays eerily in the background...)
+
+Sun Apr 2 17:51:40 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (igncdym): new test case.
+ * igncdym.awk, igncdym.in, igncdym.ok: new files.
+
+Wed Mar 8 13:43:44 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (arynocls): new test case.
+ * arynocls.awk, arynocls.in, arynocls.ok: new files.
+
+Sun Feb 6 11:45:15 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (opasnidx): new test case.
+ * opasnidx.awk, opasnidx.ok: new files.
+
+Tue Feb 1 18:40:45 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (opasnslf): new test case.
+ * opasnslf.awk, opasnslf.ok: new files.
+
+Thu Jan 27 18:09:18 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (subslash): new test case.
+ * subslash.awk, subslash.ok: new files.
+
+Fri Nov 26 11:03:07 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (numindex): new test case.
+ * numindex.awk, numindex.in, numindex.ok: new files.
+
+Sun Oct 24 08:46:16 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (strftime): Add tweak for $NF that should
+ hopefully avoid cygwin problems with lack of timezone.
+
+Thu Jul 29 19:25:02 1999 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Makefile.in (fsmnam, fnamedat): new test cases.
+ * fsmnam.awk, fsmnam.ok: new files.
+ * fnamedat.awk, fnamedat.in, fnamedat.ok: new files.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Tue May 25 16:37:50 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (printf1): new test case.
+ * printf1.awk, printf1.ok: new files.
+
+Wed May 19 15:32:09 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * reg/*: moved exp and log tests to new `Obsolete' directory; they
+ would only succeed under SunOS 4.x.
+
+Mon May 3 11:53:33 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (gawk.extensions): removed `nondec' until the
+ associated features get documented in 3.1.
+
+Tue Nov 3 16:46:39 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (getnr2tm, getnr2tb): new test cases.
+ * getnr2tm.awk, getnr2tm.in, getnr2tm.ok: new files.
+ * getnr2tb.awk, getnr2tb.in, getnr2tb.ok: new files.
+
+Sun Nov 1 13:20:08 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (zeroflag): new test case.
+ * zeroflag.awk, zeroflag.ok: new files
+
+Wed Oct 28 18:44:19 1998 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (nasty): new test case.
+ * nasty.awk, nasty.ok: new files
+
+Sun Nov 16 20:08:59 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * gsubtest.awk, gsubtest.ok: fix for count of matches in gsub
+ from Geert.Debyser@esat.kuleuven.ac.be.
+
+Sun Nov 16 19:54:50 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Makefile.in (strftime): fix a typo (LANC -> LANG).
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Tue May 13 12:53:46 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (messages): more testing for OK failure on Linux.
+
+Sun May 11 14:57:11 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (nondec): new test case.
+ * nondec.awk, nondec.ok: new files.
+
+Sun May 11 07:07:05 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (prdupval): new test case.
+ * prdupval.awk, prdupval.in, prdupval.ok: new files.
+
+Wed May 7 21:54:34 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (delarprm): new test case.
+ * delarprm.awk, delarprm.ok: new files.
+
+Wed May 7 17:54:00 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (pid): several fixes from ghazi@caip.rutgers.edu.
+
+Tue May 6 20:28:30 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (strftime): Use the right locale stuff.
+ (clobber): don't need an input file.
+
+Thu Apr 24 22:24:42 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (pid): new test case, from jco@convex.com.
+ (specfile): removed test case, pid does it better.
+ * pid.awk, pid.ok, pid.sh: new files.
+ * specfile.awk: removed.
+
+Wed Apr 23 23:37:10 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (pipeio2): new test case.
+ * pipeio2.awk, pipeio2.ok, pipeio2.in: new files.
+
+Sun Apr 20 12:22:52 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (clobber): new test case.
+ * clobber.awk, clobber.ok: new files.
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Tue Apr 15 05:57:29 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (strftlng): More wizardry for bizarre Unix systems.
+ (nlfldsep): use program and input file, not shell script
+ (basic, unix-tests, gawk.extensions): moved specfile, pipeio1
+ and strftlng into unix-tests per Pat Rankin.
+ * nlfldsep.awk, nlfldsep.in: new files.
+ * nlfldsep.sh: removed.
+
+Wed Apr 9 23:32:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (funstack): new test case.
+ * funstack.awk, funstack.in, funstack.ok: new files.
+ * substr.awk: added many more tests.
+ * substr.ok: updated
+
+Wed Mar 19 20:10:21 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (pipeio1): new test case.
+ * pipeio1.awk, pipeio1.ok: new files.
+
+Tue Mar 18 06:38:36 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (noparm): new test case.
+ * noparm.awk, noparm.ok: new files.
+
+Fri Feb 21 06:30:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (reint): new test case.
+ * reint.awk, reint.in, reint.ok: new files.
+
+Wed Feb 5 18:17:51 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (fnarydel): new test case.
+ * fnarydel.awk, fnarydel.ok: new files.
+
+Sun Jan 19 17:06:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (nors): new test case.
+ * nors.ok: new file.
+
+Sun Jan 19 17:06:18 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (specfile, strftlng, nfldstr): new test cases.
+ * specfile.awk, strftlng.awk, strftlng.ok, nfldstr.ok: new files.
+
+Fri Dec 27 11:27:13 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (intest): new test case.
+ * intest.awk, intest.ok: new files.
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Thu Nov 7 09:12:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (splitvar): new test case.
+ * splitvar.awk, splitvar.in, splitvar.ok: new files.
+
+Sun Nov 3 10:55:50 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (nlfldsep): new test case.
+ * nlfldsep.sh, nlfldsep.ok: new files.
+
+Fri Oct 25 10:29:56 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * rand.awk: call srand with fixed seed.
+ * rand.ok: new file.
+ * Makefile.in (rand): changed to compare output with rand.ok.
+
+Sat Oct 19 21:52:04 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (tradanch): new test case.
+ * tradanch.awk, tradanch.in, tradanch.ok: new files.
+
+Thu Oct 17 21:22:05 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * tweakfld.awk: move `rm' out into Makefile.in.
+ * eofsplit.awk: fixed buggy code so won't loop forever.
+ * Makefile.in (all): add unix-tests.
+ (unix-tests): new target, has pound-bang, fflush, getlnhd.
+ (basic): removed fflush, getlnhd.
+ (tweakfld): added rm from tweakfld.awk.
+
+Sun Oct 6 22:00:35 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (back89): new test case.
+ * back89.in, back89.ok: new files.
+
+Sun Oct 6 20:45:54 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (splitwht): new test case.
+ * splitwht.awk, splitwht.ok: new files.
+
+Sun Sep 29 23:14:20 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (gsubtest): new test case.
+ * gsubtest.awk, gsubtest.ok: new files.
+
+Fri Sep 20 11:58:40 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (prtoeval): new test case.
+ * prtoeval.awk, prtoeval.ok: new files.
+
+Tue Sep 10 06:26:44 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (gsubasgn): new test case.
+ * gsubasgn.awk, gsubasgn.ok: new files.
+
+Wed Aug 28 22:06:33 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * badargs.ok: updated output corresponding to change made to
+ main.c (see main ChangeLog).
+
+Thu Aug 1 07:20:28 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (clean): remove out[123] files from `messages' test.
+ Thanks to Pat Rankin (rankin@eql.caltech.edu).
+
+Sat Jul 27 23:56:57 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (prt1eval): new test case.
+ * prt1eval.awk, prt1eval.ok: new files.
+
+Mon Jul 22 22:06:10 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (eofsplit): new test case.
+ * eofsplit.awk, eofsplit.ok: new files.
+
+Sun Jul 14 07:07:45 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (fldchgnf): new test case.
+ * fldchgnf.awk, fldchgnf.ok: new files.
+
+Tue May 21 23:23:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (substr): new test case.
+ * substr.awk, substr.ok: new files.
+
+Tue May 14 15:05:23 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (dynlj): new test case.
+ * dynlj.awk, dynlj.ok: new files.
+
+Sun May 12 20:45:34 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (fnarray): new test case.
+ * fnarray.awk, fnarray.ok: new files.
+
+Fri Mar 15 06:46:48 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (clean): added `*~' to list of files to be removed.
+ * tweakfld.awk (END): added to do clean up action.
+
+Thu Mar 14 16:41:32 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (mmap8k): new test case.
+ * mmap8k.in, mmap8k.ok: new files.
+
+Sun Mar 10 22:58:35 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (clsflnam): new test case.
+ * clsflnam.in, clsflnam.awk, clsflnam.ok: new files.
+ * tweakfld.awk: changed to have a fixed date.
+
+Thu Mar 7 09:56:09 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (tweakfld): new test case.
+ * tweakfld.in, tweakfld.awk, tweakfld.ok: new files.
+
+Sun Mar 3 06:51:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (getlnhd, backgsub) : new test cases.
+ * getlnhd.awk, getlnhd.ok: new files.
+ * backgsub.in, backgsub.awk, backgsub.ok: new files.
+
+Mon Feb 26 22:30:02 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (sprintfc): new test case.
+ * sprintfc.in, sprintfc.awk, sprintfc.ok: new files.
+ * gensub.awk: updated for case of no match of regex.
+
+Wed Jan 24 10:06:16 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Makefile.in (distclean, maintainer-clean): new targets.
+ (reindops): added test from Rick Adams (rick@uunet.uu.net).
+ (arrayparm, paramdup, defref, strftime, prmarscl, sclforin,
+ sclifin): Fix from Larry Schwimmer (schwim@cyclone.stanford.edu)
+ so that tests that are supposed to fail use `... || exit 0' to
+ cause a clean `make clean'.
+
+Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * ChangeLog created.
diff --git a/version.c b/version.c
index 400c5b46..9431e51b 100644
--- a/version.c
+++ b/version.c
@@ -1,3 +1,3 @@
#include "config.h"
-const char *version_string = "GNU Awk 3.1.87";
+const char *version_string = "GNU Awk 4.0.0";
diff --git a/vms/ChangeLog b/vms/ChangeLog
index b635ce30..8aaeb418 100644
--- a/vms/ChangeLog
+++ b/vms/ChangeLog
@@ -1,699 +1,5 @@
-Wed Jun 22 18:04:29 2011 Pat Rankin <rankin@pactechdata.com>
+2011-06-23 Arnold D. Robbins <arnold@skeeve.com>
- * vmstest.com (msg): Display gawk's version at start of test run.
-
-Mon Jun 20 20:38:35 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * vmstest.com (dfastress): New test.
-
-Mon Jun 20 20:24:34 2011 Pat Rankin <rankin@pactechdata.com>
-
- * descrip.mms: Remove compilation of hard-locale.c.
- * vmsbuild.com: Likewise.
-
-Tue May 31 23:10:35 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * vmstest.com (regrange): New test.
-
-Thu May 26 22:14:06 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * vmstest.com (fpat2): New test.
-
-Wed May 25 01:31:50 2011 Pat Rankin <rankin@pactechdata.com>
-
- * gawk.hlp: Substantial updates, for first time in 8 years!
-
- * vmstest.com (fpatnull): New test.
-
-Sun May 15 19:24:22 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (delargv): New test.
-
-Fri May 13 18:45:35 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (exit, next): Move from basic to gawk extensions.
- (exit: do__exit): Define "gawk" in subroutine to make sure PIPE
- uses the local definition instead of some other global one.
-
- * vms_gawk.c (vms_gawk): Convert /OPTIMIZE into "-O" rather than
- to "-W optimize".
-
- * gawk.cld (gen_pot): Fix typo in name.
-
-Mon May 9 01:43:40 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (arraysort, delsub, exit, next, ofmta, sortu): New
- tests.
- (paramdup): Merge with other exit_code 1 tests.
- {various}: change several instances of "nl:" to "_NL:" so that all
- tests which reference the null device spell it the same way.
-
-Fri Apr 29 18:10:49 2011 Pat Rankin <rankin@pactechdata.com>
-
- * gawkmisc.vms (os_isatty): New routine.
-
-Sat Feb 26 18:35:01 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vms_gawk.c, gawk.cld: Add support for new command qualifiers:
- /extra_commands="text" -e "awk program text"
- /profile[=file] --profile [awkprof.out]
- /dump_variables[=file] --dump_variables [awkvars.out]
- /optimize, /traditional, /re_interval, /sandbox, /non_decimal_data
- New but not documented since not useful for present VMS port:
- /characters_as_bytes, /use_lc_numeric, /gen_pot
- Revamp several existing qualifiers:
- /strict was --compat, now synonym for /traditional
- /lint=(warn,fatal,invalid,old)
- /lint=warn --lint (same as /lint without any value)
- /lint=fatal --lint fatal
- /lint=old --lint-old
- /lint=(warn,fatal) --lint fatal (warn ignored)
- /lint=(warn,old) --lint --lint-old
- /lint=(fatal,old) --lint fatal --lint-old
- /usage, /version, /copyright try harder to make awk program and
- data file be optional since these just give messages and then quit.
- (vms_usage): Substitute "GAWK", "DGAWK", or "PGAWK" as appropriate
- for command name when issuing the VMS-specific usage message.
- * vms.h (CLI$_NEGATED): Define macro (from <cilmsgdef.h>).
-
- * vms_cli.c: Add copyright notice. Remove unused P() macro.
- (dcl$present, dcl$get_value, dcl$parse_command): Use lowercase
- rather than upper for these system routine names.
-
-Fri Feb 18 19:24:30 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (beginfile1, dumpvars): New tests.
- (lintwarn): Add exit_code 1.
-
-Wed Feb 16 21:09:50 2011 Arnold D. Robbins <arnold@skeeve.com>
-
- * vmstest.com (lintwarn): New test.
-
-Sun Feb 13 18:48:29 2011 Pat Rankin <rankin@pactechdata.com>
-
- * gawkmisc.vms (files_are_same): Update to handle new arguments.
-
- * vmstest.com (profile1, profile2, profile3): New tests.
- (pgawk_tests, profile_tests): New test sets.
- (iobug1): Clean up spurious extra output file. Sigh.
-
- * descrip.mms, vmsbuild.com: Include hard-locale.c in build.
-
-Sun Feb 13 20:23:57 2011 Eli Zaretskii <eliz@gnu.org>
-
- * gawkmisc.vms (files_are_same): Change arguments; call `stat' as
- part of the body.
-
-Sat Feb 12 19:29:41 2011 Pat Rankin <rankin@pactechdata.com>
-
- * redirect.h (snprintf): Declare regardless of HAVE_SNPRINTF or
- CRTL_VER_V732.
-
-Mon Feb 7 22:43:37 2011 Arnold Robbins <arnold@skeeve.com>
-
- * vmstest.com (negrange): Add new test.
-
-Sun Feb 6 18:54:20 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (psx96sub, whiny): Remove obsolete tests.
- (aadelete1, aadelete2, aarray1, aasort, assorti, fpat1,
- indirectcall, patsplit, posix2000sub, range1, sortfor, splitarg4,
- switch2): Add new tests.
-
-Tue Jan 18 17:51:07 2011 Pat Rankin <rankin@pactechdata.com>
-
- * vms_args.c (vms_arg_fixup): If AWK_LIBRARY lacks a value, define
- it as "SYS$LIBRARY:" so that the default value of AWKPATH ends
- with a valid directory. Needed so that gawk -f no-such-file
- will report "file not found" or "no such file or directory"
- instead of "file specification syntax error".
-
- * vms-conf.h: Sync with configh.in; define HAVE_STRCOLL as 1.
-
- * vmstest.com (fnarray, funsmnam, paramres, parseme): Change these
- tests to expect EXIT_CODE 1 rather than EXIT_CODE 2.
-
-Sat Nov 6 16:33:01 2010 Pat Rankin <rankin@pactechdata.com>
-
- * redirect.h, vms.h: Drop use of P() macro in function prototypes.
- * vms_misc.c, vms_popen.c: Likewise.
-
-Wed Aug 11 17:47:57 2010 Pat Rankin <rankin@pactechdata.com>
-
- * redirect.h (vsnprintf): Move #define into !HAVE_SNPRINTF block.
-
-Tue Aug 10 12:57:40 2010 Pat Rankin <rankin@pactechdata.com>
-
- * redirect.h: Declare vsnprintf and define it to use missing_d one.
- * vms-conf.h: Add #undef template for HAVE_SETENV.
-
-Mon Aug 9 10:58:03 2010 Arnold Robbins <arnold@skeeve.com>
-
- * redirect.h: Add decls of setenv, unsetenv, and snprintf to
- avoid informational warnings from the compiler about undecleared
- functions.
-
-Thu Aug 5 15:01:55 2010 Arnold Robbins <arnold@skeeve.com>
-
- * vms-build.com: Correctly build dgawk.
- * redirect.h (setenv, unsetenv): Define as macros to get the
- replacement versions in missing_d/.
-
-Mon Mar 8 15:17:41 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (space): handle alternate error reason.
- (fmtspcl): suppress this test.
-
-Wed Mar 3 16:29:10 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: sync with configh.in; reformat a couple of comments.
- (PACKAGE_URL): add #undef as placeholder.
-
-Wed Jan 6 19:05:05 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vms_fwrite.c (tty_fwrite): Check which_gawk, and stick to
- ordinary fwrite() when it's exe_debugging because dgawk uses
- other stdio calls besides fwrite for terminal output, and that
- wouldn't interleave sanely with tty_fwrite()'s terminal output.
-
-Wed Jan 6 19:05:05 2010 Pat Rankin <rankin@pactechdata.com>
-
- * awk.h (exe_mode): Define new enum: exe_gawking for regular gawk,
- exe_debugging for dgawk, and exe_profiling for pgawk.
- (which_gawk): Declare new variable.
- * eval.c (which_gawk): Define it.
-
-Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.8: Release tar file made.
-
-Tue Apr 20 14:54:03 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h (HAVE_LIBSIGSEGV): Add placeholder; leave undefined.
- * vmstest.com (manyfiles): keep going even if gawk fails.
-
-Thu Apr 1 14:04:17 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (uninit5): fix typo in test name.
-
-Mon Mar 29 16:26:39 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h (HAVE_USLEEP): define.
- * vmstest.com (fcall_exit, fcall_exit2, forref, uninit5): new tests.
- * descrip.mms (builtin.obj): add floatmagic.h dependency.
-
-Mon Mar 8 15:17:41 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (space): handle alternate error reason.
- (fmtspcl): suppress this test.
-
-Wed Mar 3 16:29:10 2010 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: sync with configh.in; reformat a couple of comments.
- (PACKAGE_URL): add #undef as placeholder.
-
-Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.7: Release tar file made.
-
-Wed Jul 8 18:59:22 2009 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com (charset_tests): New list; move various tests from
- basic and gawk_ext lists.
- (fmtspcl): Move to machine_tests list.
- (lc_num1, mbfw1, mbprintf1, rsstart3): Skip these failing tests.
- (double1, double2): Likewise.
-
-Mon Jun 22 00:51:17 2009 Pat Rankin <rankin@pactechdata.com>
-
- * vms_misc.c (vms_open): Explicitly specify "rat=cr" to force
- carriage-return-carraige-control record attribute along with
- stmlf foramt. gawk failed on an internal redirection attempt
- (``print anything > file'') if an earlier version of the output
- file existed with conflicting attributes and the program was
- built using DECC$SHR run-time library rather than VAXCRTL.
-
- * vmstest.com: Add over 70 new tests. Overhaul how lists of
- tests are specified and executed. Make many similar tests run
- with shared commands instead of maintaining separate code for
- each one. Put output for 'test' into "_'test'.tmp" instead of
- "tmp." so that it's easier to investigate if/when multiple test
- failures occur in the same run.
- (vms_io2): New test to check the ``print anything > file'' fix.
-
-Wed Mar 18 18:16:50 2009 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h (EXIT_SUCCESS, EXIT_FAILURE): Define #if !HAVE_STDLIB_H.
- (EXIT_FATAL): Define.
-
-Mon Mar 16 19:09:27 2009 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: Synchronize with configh.in,
- (HAVE_ATEXIT): Define.
-
-Tue Jan 27 21:49:53 2009 Arnold D. Robbins <arnold@skeeve.com>
-
- Per Pat Rankin based on changes to awk.h and change in main code
- to use EXIT_SUCCESS / EXIT_FAILURE from Toni Schilling
- <Schilling@equicon.de>.
-
- * redirect.h (exit): Remove definition.
- * vms_misc.c (vms_exit): Remove code.
-
-Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.6: Release tar file made.
-
-Wed May 16 19:54:00 2007 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: re-sync with configh.in.
-
-Sun Apr 29 18:09:17 2007 Pat Rankin <rankin@pactechdata.com>
-
- * redirect.h: declare snprintf() if CRTL_VER_V732 is defined;
- redefining __CRTL_VER in config.h causes <stdio.h> to suppress it.
-
- * vmstest.com (fnarray): exit code has changed to 2.
- (pid): target values now passed by command line rather than file.
-
-Fri Apr 20 16:48:30 2007 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: #define HAVE_SNPRINTF for V7.3-2 and later CRTL.
- * redirect.h: #define snprintf to gawk_snprintf if we're using
- missing_d/snprintf.c; avoids diagnostic about its declaration.
-
-Thu Apr 12 18:59:33 2007 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: Leave HAVE_MKSTEMP undefined; we want tmpfile().
-
-Thu Mar 29 19:30:20 2007 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: reconcile with configh.in.
-
- * descrip.mms: compile floatcomp.c; add pgawk target and build
- pgawk.exe for `make all'.
- * vmsbuild.com: compile floatcomp.c; always build pgawk.exe in
- addition to gawk.exe.
-
-Wed Jul 27 21:31:14 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vmstest.com: Format test group feedback differently (append "...")
- to distinguish it from individual test feedback.
- (manyfiles): Determine the number of files to use dynamically
- instead of using hardcoded 300 in case user's open file quota
- is generous enough to support more than that.
- (longsub): Add error trap so that failure when gawk is built with
- VAXCRTL doesn't cause testing to terminate.
- (vms_io1): Invoke with normal Unix-style command line syntax.
- (vms_cmd): New test; split off DCL-style command line from vms_io1.
-
-Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.5: Release tar file made.
-
-Mon May 23 20:54:31 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms_gawk.c [gawk_cmd, #if __ia64__]: Switch from globalvalue
- to strict_refdef and then take gawk_cmd's address during use.
-
- * vmstest.com (concat1, longsub, arrayprm2, arrayprm3, arryref2,
- arryref3, arryref4, arryref5, aryprm1, aryprm2, aryprm3,
- aryprm4, aryprm5, aryprm6, aryprm7, aryprm8, concat2, concat3,
- delarpm2, delfunc, exitval2, fmttest, fnarray2, fnmisc, fordel,
- getline3, gsubasgn, gsubtest, gsubtst2, gsubtst4, gsubtst5,
- hex, inputred, iobug1, manglprm, nested, nfneg, noloop1,
- noloop2, nulrsend, prec, prtoeval, rstest1, rstest2, rstest3,
- rstest4, rstest5, scalar, sortempty, splitarr, strcat1,
- subsepnm, synerr1, uninit2, uninit3, uninit4, uninitialized,
- unterm, wjposer1, zeroe0): New tests.
-
-Wed May 18 21:22:09 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms_gawk.c [#if __ia64__]: Use #pragma extern_model globalvalue
- for the declaration of gawk_cmd.
-
-Mon May 9 21:17:33 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h [#if DECC]: Use #pragma to suppress "new feature in C99"
- diagnostic for structure field designator style initialization in
- regexec.c.
-
-Thu May 5 21:17:48 2005 Anders Wallin <anders_s_wallin@yahoo.se>
-
- * vms_gawk.c [__ia64__]: Change to lower case, then Itanium
- VMS is happy.
-
-Sun May 1 08:20:00 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms_gawk.c [gawk_cmd]: Declare as ordinary data symbol rather
- than as a fake routine for Itanium. (Can't do that for other
- configurations without getting tangled up in compiler-specific
- details like `#pragma extern_model' and VAX C's `globalref'.)
-
-Fri Mar 4 20:46:20 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: Define VAXCRTL when appropriate; used in builtin.c.
-
-Sat Feb 19 20:13:28 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h [RE_TOKEN_INIT_BUG]: Define for regcomp.c.
-
-Wed Feb 16 20:45:21 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h [NO_MBSUPPORT]: Define when compiling with VAX C.
- [inline]: Define as empty when compiling with VAX C.
-
-Thu Jan 20 19:09:52 2005 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: Synchronize with configh.in.
-
-Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.4: Release tar file made.
-
-Mon Jun 14 18:40:22 2004 Pat Rankin <rankin@pactechdata.com>
-
- * descrip.mms (dfa.c, dfa.h): reinstate these.
- (gettext.h, mbsupport.h): add these.
- (patchlev.h): remove this.
-
- * vmstest.com (longwrds): customize it.
- (getline, getline2): replace getline with getline2.
-
-Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.3: Release tar file made.
-
-Mon Jun 9 22:15:40 2003 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h: Synchronize with current configh.in.
- ALLOW_SWITCH: Define this to enable new `switch' feature.
-
-Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- This time for sure.
- -- Bullwinkle
-
- * Release 3.1.2: Release tar file made.
-
-Thu Feb 27 17:54:33 2003 Pat Rankin <rankin@pactechdata.com>
-
- * descrip.mms: Revert regex compilation to single file.
- vmsbuild.com: Likewise.
-
-Thu Feb 20 18:06:54 2003 Pat Rankin <rankin@pactechdata.com>
-
- * vms_gawk.c (vms_gawk): Don't check for `RUNUSED' status because
- it gets a false match when gawk is invoked via fork+exec.
-
- * gawk.hlp: Limited updates to the release notes section.
-
-Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
-
- All relevant files: Copyright year updated to 2003.
-
-Mon Feb 3 20:37:09 2003 Pat Rankin <rankin@pactechdata.com>
-
- * vms-conf.h (ssize_t): Define as int.
- (TIME_T_UNSIGNED): New macro; used in strftime.
- * vms_cli.c (Cli_Parse_Command): Increase command buffer size
- from 2.5Kb to 8Kb.
-
- From Steve Pitcher:
- * vms_gawk.c (vms_gawk): Don't report "missing required element"
- for INSFPRM status unless invoked via a native DCL verb.
-
- From Jouk Jansen:
- * vms-conf.h (CRTL_VER_V731): New macro.
- * vms_misc.c (getpgrp): Use it.
-
-Mon Dec 23 16:53:42 2002 Pat Rankin <rankin@pactechdata.com>
-
- * descrip.mms (AWKOBJ1, AWKOBJ2): Split AWKOBJS into pieces to
- avoid line length overflow when creating gawk.opt.
- (regcomp.obj, regexec.obj, regex_internal.obj): New targets.
- * vmsbuild.com: Likewise.
-
-Thu Nov 21 19:45:08 2002 Pat Rankin <rankin@pactechdata.com>
-
- * descrip.mms: Update to reflect regex changes; eliminate dfa.
-
- * vmstest.com (exit_code): Hack to add "EXIT CODE n" record to
- output for tests that trigger gawk failure.
-
-Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.1: Release tar file made.
-
-Wed Apr 17 15:57:30 2002 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (forsimp, concat1, longsub): New Tests.
- (strftime): Revamp test to avoid use of defunct %v extension.
-
-Sat Dec 22 19:18:31 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * redirect.h (tzset): Declare.
-
-Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.1.0: Release tar file made. And there was
- rejoicing.
-
-Thu Apr 12 18:29:50 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms_misc.c (open): Add handling for /dev/null and /dev/tty.
- (vms_devopen): Remove handling for /dev/null and /dev/tty.
-
- * vms_misc.c (VMS_stat, VMS_fstat): New functions to work
- around old VAXCRTL bugs.
- * redirect.h (fstat): Define as VMS_fstat for VAX C or GNU C.
-
- * vms-conf.h (HAVE_UNISTD_H): Avoid <unistd.h> for GNU C.
-
- * descrip.mms: Synchronize with 3.1.0 sources.
-
- * vmstest.com: Add many new tests.
- (fixup_LRL): New subroutine.
-
-Thu Apr 5 20:31:22 2001 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms-conf.h: synchronize with current configh.in.
- [NO_ALLOCA]: define instead of C_ALLOCA.
- * redirect.h (strcoll): substitute strcmp for VAXCRTL config.
- (struct timeval): define.
- (gettimeofday): substitute vms_gettimeofday; declare.
-
- * vms_misc.c (vms_gettimeofday): new function.
- * vms_fwrite.c [#if NO_ALLOCA]: fix fake alloca's use of free().
-
- * vmsbuild.com: synchronize with current sources.
-
-Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
-
- * gawkmisc.vms (os_restore_mode): New function.
-
-Sun Dec 3 16:53:37 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.vms (os_setbinmode): new function.
-
-Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * gawkmisc.vms (os_is_setuid): new function.
-
-Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
-
- * Close-on-exec changes:
- gawkmisc.vms: (os_close_on_exec, os_isdir): new functions.
-
-Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.6: Release tar file made.
-
-Sat Jul 15 20:52:09 2000 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (printf1, fusmnam, fnamedat, numindex,
- subslash, opasnslf, opasnidx, arynocls, getlnbuf,
- arysubnm, fnparydl): New basic tests.
- (igncdym): New gawk.extensions test.
- (nondec): Old gawk.extensions test commented out.
-
-Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
-
- * Release 3.0.5: Release tar file made.
-
-Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
-
- * Release 3.0.4: Release tar file made. This time for sure.
-
-Fri May 7 20:29:04 1999 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms-conf.h (__CRTL_VER): Add same override as __VMS_VER.
-
-Wed May 5 19:10:15 1999 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (nasty, zeroflag, getnr2tm, getnr2tb): New tests.
-
-Wed Nov 25 17:24:26 1998 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (vms_tests): New general target.
- (vms_io1): New specific test.
-
-Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.3: Release tar file made.
-
-Mon May 12 18:39:30 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (delarprm, prdupval): new `basic' tests.
- (nondec): new `gawk.extensions' test (commented out for now).
- (reint): move from `basic' to `gawk.extensions'.
-
-Mon May 5 21:40:07 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (clobber): new `basic' test.
- (pid): new test, replacing `specfile'.
- (pipeio2): new for `unix-tests'; can't execute this one under VMS.
-
-Mon May 5 21:23:52 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms_args.c (vms_arg_fixup): for the 2>&1 case, don't set the
- output filename to "sys$error" because that results in an extra
- empty file being created.
-
- * vms_misc.c (vms_open): explicitly specify stream_lf format
- when creating files rather than letting DECC$SHR make a new file
- inherit its record format from any earlier version of that file.
-
- Suggested by Pete Cascio <pete@rmi.net>:
-
- * vms_misc.c (vms_open): use full record sharing options when
- reading any record-oriented file, regardless of its organization.
-
-Mon Apr 21 19:22:12 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com (funstack): new `basic' test.
- (reint): add missing entry to `basic'.
- (pipeio1, specfile, strftlng): move from `basic' to `unix-tests'.
- (childin): skip due to known failure.
- (specfile): skip due to potentially confusing feedback.
-
-Thu Apr 24 23:18:04 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * vms_popen.c, vms_misc.c, vms_gawk.c, vms_fwrite.c,
- vms_args.c: moved to generic GPL statement at top.
-
-Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * BETA Release 3.0.34: Release tar file made.
-
-Wed Apr 2 18:17:30 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * descrip.mms, vmsbuild.com (PATCHLVL): update to 3.
-
- * vmstest.com (nlfldsep, splitvar, intest, nfldstr, nors,
- fnarydel, noparms, pipeio1): new tests.
-
-Wed Jan 15 15:21:01 1997 Pat Rankin <rankin@eql.caltech.edu>
-
- * redirect.h (stat, fstat): do not declare these functions;
- rely on <stat.h> to do so. There are too many DEC C version
- variants to handle otherwise.
-
- From Martin Zinser <zinser@axp602.gsi.de>:
-
- * descrip.mms (gawk.dvi): update to build in [.doc] directory
- using texindex.c retained from an earlier gawk 2.x distribution.
- (texindex.exe): don't assume VAX C.
-
-Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.2: Release tar file made.
-
-Mon Dec 23 20:51:27 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms_misc.c (vms_bcopy): `bcopy' is defined as this in redirect.h.
-
-Thu Dec 19 17:49:31 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * redirect.h (strcasecmp, strncasecmp, tzset, tzname,
- daylight, timezone, altzone, bcopy, popen, pclose, unlink):
- New macros to avoid conflict with VMS V7.x DECC$SHR symbols.
- (close, dup, dup2, read): Declare with full prototypes.
- (fstat, stat): Ditto, and guard against conflicting DEC C
- declarations (which might have trailing elipsis).
- * vms_misc.c (tzset, tzname, daylight, timezone, altzone):
- Suppress these if compiled with VMS_V7 defined [not supported].
-
-Mon Dec 16 14:32:08 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms_popen (popen): Delete unprototyped declaration of strcmp()
- to avoid conflict with a strcmp macro in DEC C V5.0 header files.
-
-Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * Release 3.0.1: Release tar file made.
-
-Fri Dec 6 20:55:57 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * redirect.h, vms-conf.h: Refine Sep 20th change: include
- <stdlib.h> and <string.h> in redirect.h rather than vms-conf.h
- so that it occurs for VMS POSIX as well as for normal VMS.
-
-Wed Nov 20 15:47:02 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * descrip.mms (LIBOBJS): Rename from GNUOBJS; add random.obj.
- (LIBSRC): Rename from GNUSRC; add random.c.
- (AWKSRC): Add random.h.
- (random.obj, builtin.obj): Depend upon random.h.
- * vmsbuild.com: compile random.c, link random.obj.
-
- * vmstest.com (childin): Split message about expected failure
- in order to avoid consecutive tick marks in the quoted string.
-
-Wed Nov 13 15:32:58 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * vmstest.com: New file to execute test suite.
-
-Fri Nov 8 18:29:42 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- Revise makefiles so that no editing should be needed.
-
- * descrip.mms: Use DEC C as the default compiler, since
- the same compile and link options for it can be used as-is
- on both VAX and Alpha.
- (GNUC, VAXC): New `make' macros for specifying an alternate
- compiler on the MMS or MMK command line.
- (PATCHLVL): Update to 1.
- * vmsbuild.com: Make the equivalent changes.
-
-Mon Oct 28 17:02:39 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms.h (U_Long, U_Short): Replace u_long and u_short typedefs.
- * vms_*.c: Use them.
-
- * vms.h, vms_*.c: Change SYS$ and LIB$ routines to lower case
- equivalents; fully prototype sys$ and lib$ routines rather than
- just declare them.
-
-Fri Sep 20 17:33:05 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms-conf.h: directly include <stdlib.h> and <string.h>.
- * vms-conf.h (strftime): delete this macro.
- * redirect.h (strftime): define it here instead.
-
-Fri May 17 09:08:16 1996 Arnold Robbins <arnold@skeeve.atl.ga.us>
-
- * gawkmisc.vms (envsep): Now initialized to ',' instead of ':',
- per email from Pat Rankin.
-
-Thu Jan 11 15:20:14 1996 Pat Rankin <rankin@eql.caltech.edu>
-
- * vms-conf.h [#if __DECC]: Changes to support V5.x of DEC C.
- (_DECC_V4SOURCE, __SOCKET_TYPEDEFS): Define these to avoid
- duplicate u_long and u_short typedefs.
- (__VMS_VER): If value indicates VMS V6.2 or later, redefine it to
- indicate V6.1 in order to avoid conflicting prototype for getopt.
-
-Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
-
- * ChangeLog created.
+ * ChangeLog.0: Rotated ChangeLog into this file.
+ * ChangeLog: Created anew for gawk 4.0.0 and on.
+ * 4.0.0: Release tar ball made.
diff --git a/vms/ChangeLog.0 b/vms/ChangeLog.0
new file mode 100644
index 00000000..b635ce30
--- /dev/null
+++ b/vms/ChangeLog.0
@@ -0,0 +1,699 @@
+Wed Jun 22 18:04:29 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (msg): Display gawk's version at start of test run.
+
+Mon Jun 20 20:38:35 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * vmstest.com (dfastress): New test.
+
+Mon Jun 20 20:24:34 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * descrip.mms: Remove compilation of hard-locale.c.
+ * vmsbuild.com: Likewise.
+
+Tue May 31 23:10:35 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * vmstest.com (regrange): New test.
+
+Thu May 26 22:14:06 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * vmstest.com (fpat2): New test.
+
+Wed May 25 01:31:50 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * gawk.hlp: Substantial updates, for first time in 8 years!
+
+ * vmstest.com (fpatnull): New test.
+
+Sun May 15 19:24:22 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (delargv): New test.
+
+Fri May 13 18:45:35 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (exit, next): Move from basic to gawk extensions.
+ (exit: do__exit): Define "gawk" in subroutine to make sure PIPE
+ uses the local definition instead of some other global one.
+
+ * vms_gawk.c (vms_gawk): Convert /OPTIMIZE into "-O" rather than
+ to "-W optimize".
+
+ * gawk.cld (gen_pot): Fix typo in name.
+
+Mon May 9 01:43:40 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (arraysort, delsub, exit, next, ofmta, sortu): New
+ tests.
+ (paramdup): Merge with other exit_code 1 tests.
+ {various}: change several instances of "nl:" to "_NL:" so that all
+ tests which reference the null device spell it the same way.
+
+Fri Apr 29 18:10:49 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * gawkmisc.vms (os_isatty): New routine.
+
+Sat Feb 26 18:35:01 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_gawk.c, gawk.cld: Add support for new command qualifiers:
+ /extra_commands="text" -e "awk program text"
+ /profile[=file] --profile [awkprof.out]
+ /dump_variables[=file] --dump_variables [awkvars.out]
+ /optimize, /traditional, /re_interval, /sandbox, /non_decimal_data
+ New but not documented since not useful for present VMS port:
+ /characters_as_bytes, /use_lc_numeric, /gen_pot
+ Revamp several existing qualifiers:
+ /strict was --compat, now synonym for /traditional
+ /lint=(warn,fatal,invalid,old)
+ /lint=warn --lint (same as /lint without any value)
+ /lint=fatal --lint fatal
+ /lint=old --lint-old
+ /lint=(warn,fatal) --lint fatal (warn ignored)
+ /lint=(warn,old) --lint --lint-old
+ /lint=(fatal,old) --lint fatal --lint-old
+ /usage, /version, /copyright try harder to make awk program and
+ data file be optional since these just give messages and then quit.
+ (vms_usage): Substitute "GAWK", "DGAWK", or "PGAWK" as appropriate
+ for command name when issuing the VMS-specific usage message.
+ * vms.h (CLI$_NEGATED): Define macro (from <cilmsgdef.h>).
+
+ * vms_cli.c: Add copyright notice. Remove unused P() macro.
+ (dcl$present, dcl$get_value, dcl$parse_command): Use lowercase
+ rather than upper for these system routine names.
+
+Fri Feb 18 19:24:30 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (beginfile1, dumpvars): New tests.
+ (lintwarn): Add exit_code 1.
+
+Wed Feb 16 21:09:50 2011 Arnold D. Robbins <arnold@skeeve.com>
+
+ * vmstest.com (lintwarn): New test.
+
+Sun Feb 13 18:48:29 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * gawkmisc.vms (files_are_same): Update to handle new arguments.
+
+ * vmstest.com (profile1, profile2, profile3): New tests.
+ (pgawk_tests, profile_tests): New test sets.
+ (iobug1): Clean up spurious extra output file. Sigh.
+
+ * descrip.mms, vmsbuild.com: Include hard-locale.c in build.
+
+Sun Feb 13 20:23:57 2011 Eli Zaretskii <eliz@gnu.org>
+
+ * gawkmisc.vms (files_are_same): Change arguments; call `stat' as
+ part of the body.
+
+Sat Feb 12 19:29:41 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * redirect.h (snprintf): Declare regardless of HAVE_SNPRINTF or
+ CRTL_VER_V732.
+
+Mon Feb 7 22:43:37 2011 Arnold Robbins <arnold@skeeve.com>
+
+ * vmstest.com (negrange): Add new test.
+
+Sun Feb 6 18:54:20 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (psx96sub, whiny): Remove obsolete tests.
+ (aadelete1, aadelete2, aarray1, aasort, assorti, fpat1,
+ indirectcall, patsplit, posix2000sub, range1, sortfor, splitarg4,
+ switch2): Add new tests.
+
+Tue Jan 18 17:51:07 2011 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_args.c (vms_arg_fixup): If AWK_LIBRARY lacks a value, define
+ it as "SYS$LIBRARY:" so that the default value of AWKPATH ends
+ with a valid directory. Needed so that gawk -f no-such-file
+ will report "file not found" or "no such file or directory"
+ instead of "file specification syntax error".
+
+ * vms-conf.h: Sync with configh.in; define HAVE_STRCOLL as 1.
+
+ * vmstest.com (fnarray, funsmnam, paramres, parseme): Change these
+ tests to expect EXIT_CODE 1 rather than EXIT_CODE 2.
+
+Sat Nov 6 16:33:01 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * redirect.h, vms.h: Drop use of P() macro in function prototypes.
+ * vms_misc.c, vms_popen.c: Likewise.
+
+Wed Aug 11 17:47:57 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * redirect.h (vsnprintf): Move #define into !HAVE_SNPRINTF block.
+
+Tue Aug 10 12:57:40 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * redirect.h: Declare vsnprintf and define it to use missing_d one.
+ * vms-conf.h: Add #undef template for HAVE_SETENV.
+
+Mon Aug 9 10:58:03 2010 Arnold Robbins <arnold@skeeve.com>
+
+ * redirect.h: Add decls of setenv, unsetenv, and snprintf to
+ avoid informational warnings from the compiler about undecleared
+ functions.
+
+Thu Aug 5 15:01:55 2010 Arnold Robbins <arnold@skeeve.com>
+
+ * vms-build.com: Correctly build dgawk.
+ * redirect.h (setenv, unsetenv): Define as macros to get the
+ replacement versions in missing_d/.
+
+Mon Mar 8 15:17:41 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (space): handle alternate error reason.
+ (fmtspcl): suppress this test.
+
+Wed Mar 3 16:29:10 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: sync with configh.in; reformat a couple of comments.
+ (PACKAGE_URL): add #undef as placeholder.
+
+Wed Jan 6 19:05:05 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_fwrite.c (tty_fwrite): Check which_gawk, and stick to
+ ordinary fwrite() when it's exe_debugging because dgawk uses
+ other stdio calls besides fwrite for terminal output, and that
+ wouldn't interleave sanely with tty_fwrite()'s terminal output.
+
+Wed Jan 6 19:05:05 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * awk.h (exe_mode): Define new enum: exe_gawking for regular gawk,
+ exe_debugging for dgawk, and exe_profiling for pgawk.
+ (which_gawk): Declare new variable.
+ * eval.c (which_gawk): Define it.
+
+Thu May 6 20:55:14 2010 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.8: Release tar file made.
+
+Tue Apr 20 14:54:03 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h (HAVE_LIBSIGSEGV): Add placeholder; leave undefined.
+ * vmstest.com (manyfiles): keep going even if gawk fails.
+
+Thu Apr 1 14:04:17 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (uninit5): fix typo in test name.
+
+Mon Mar 29 16:26:39 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h (HAVE_USLEEP): define.
+ * vmstest.com (fcall_exit, fcall_exit2, forref, uninit5): new tests.
+ * descrip.mms (builtin.obj): add floatmagic.h dependency.
+
+Mon Mar 8 15:17:41 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (space): handle alternate error reason.
+ (fmtspcl): suppress this test.
+
+Wed Mar 3 16:29:10 2010 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: sync with configh.in; reformat a couple of comments.
+ (PACKAGE_URL): add #undef as placeholder.
+
+Tue Jul 21 22:28:56 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.7: Release tar file made.
+
+Wed Jul 8 18:59:22 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com (charset_tests): New list; move various tests from
+ basic and gawk_ext lists.
+ (fmtspcl): Move to machine_tests list.
+ (lc_num1, mbfw1, mbprintf1, rsstart3): Skip these failing tests.
+ (double1, double2): Likewise.
+
+Mon Jun 22 00:51:17 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_misc.c (vms_open): Explicitly specify "rat=cr" to force
+ carriage-return-carraige-control record attribute along with
+ stmlf foramt. gawk failed on an internal redirection attempt
+ (``print anything > file'') if an earlier version of the output
+ file existed with conflicting attributes and the program was
+ built using DECC$SHR run-time library rather than VAXCRTL.
+
+ * vmstest.com: Add over 70 new tests. Overhaul how lists of
+ tests are specified and executed. Make many similar tests run
+ with shared commands instead of maintaining separate code for
+ each one. Put output for 'test' into "_'test'.tmp" instead of
+ "tmp." so that it's easier to investigate if/when multiple test
+ failures occur in the same run.
+ (vms_io2): New test to check the ``print anything > file'' fix.
+
+Wed Mar 18 18:16:50 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h (EXIT_SUCCESS, EXIT_FAILURE): Define #if !HAVE_STDLIB_H.
+ (EXIT_FATAL): Define.
+
+Mon Mar 16 19:09:27 2009 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: Synchronize with configh.in,
+ (HAVE_ATEXIT): Define.
+
+Tue Jan 27 21:49:53 2009 Arnold D. Robbins <arnold@skeeve.com>
+
+ Per Pat Rankin based on changes to awk.h and change in main code
+ to use EXIT_SUCCESS / EXIT_FAILURE from Toni Schilling
+ <Schilling@equicon.de>.
+
+ * redirect.h (exit): Remove definition.
+ * vms_misc.c (vms_exit): Remove code.
+
+Mon Oct 22 08:49:05 2007 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.6: Release tar file made.
+
+Wed May 16 19:54:00 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: re-sync with configh.in.
+
+Sun Apr 29 18:09:17 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * redirect.h: declare snprintf() if CRTL_VER_V732 is defined;
+ redefining __CRTL_VER in config.h causes <stdio.h> to suppress it.
+
+ * vmstest.com (fnarray): exit code has changed to 2.
+ (pid): target values now passed by command line rather than file.
+
+Fri Apr 20 16:48:30 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: #define HAVE_SNPRINTF for V7.3-2 and later CRTL.
+ * redirect.h: #define snprintf to gawk_snprintf if we're using
+ missing_d/snprintf.c; avoids diagnostic about its declaration.
+
+Thu Apr 12 18:59:33 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: Leave HAVE_MKSTEMP undefined; we want tmpfile().
+
+Thu Mar 29 19:30:20 2007 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: reconcile with configh.in.
+
+ * descrip.mms: compile floatcomp.c; add pgawk target and build
+ pgawk.exe for `make all'.
+ * vmsbuild.com: compile floatcomp.c; always build pgawk.exe in
+ addition to gawk.exe.
+
+Wed Jul 27 21:31:14 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vmstest.com: Format test group feedback differently (append "...")
+ to distinguish it from individual test feedback.
+ (manyfiles): Determine the number of files to use dynamically
+ instead of using hardcoded 300 in case user's open file quota
+ is generous enough to support more than that.
+ (longsub): Add error trap so that failure when gawk is built with
+ VAXCRTL doesn't cause testing to terminate.
+ (vms_io1): Invoke with normal Unix-style command line syntax.
+ (vms_cmd): New test; split off DCL-style command line from vms_io1.
+
+Tue Jul 26 21:46:16 2005 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.5: Release tar file made.
+
+Mon May 23 20:54:31 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_gawk.c [gawk_cmd, #if __ia64__]: Switch from globalvalue
+ to strict_refdef and then take gawk_cmd's address during use.
+
+ * vmstest.com (concat1, longsub, arrayprm2, arrayprm3, arryref2,
+ arryref3, arryref4, arryref5, aryprm1, aryprm2, aryprm3,
+ aryprm4, aryprm5, aryprm6, aryprm7, aryprm8, concat2, concat3,
+ delarpm2, delfunc, exitval2, fmttest, fnarray2, fnmisc, fordel,
+ getline3, gsubasgn, gsubtest, gsubtst2, gsubtst4, gsubtst5,
+ hex, inputred, iobug1, manglprm, nested, nfneg, noloop1,
+ noloop2, nulrsend, prec, prtoeval, rstest1, rstest2, rstest3,
+ rstest4, rstest5, scalar, sortempty, splitarr, strcat1,
+ subsepnm, synerr1, uninit2, uninit3, uninit4, uninitialized,
+ unterm, wjposer1, zeroe0): New tests.
+
+Wed May 18 21:22:09 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_gawk.c [#if __ia64__]: Use #pragma extern_model globalvalue
+ for the declaration of gawk_cmd.
+
+Mon May 9 21:17:33 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h [#if DECC]: Use #pragma to suppress "new feature in C99"
+ diagnostic for structure field designator style initialization in
+ regexec.c.
+
+Thu May 5 21:17:48 2005 Anders Wallin <anders_s_wallin@yahoo.se>
+
+ * vms_gawk.c [__ia64__]: Change to lower case, then Itanium
+ VMS is happy.
+
+Sun May 1 08:20:00 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_gawk.c [gawk_cmd]: Declare as ordinary data symbol rather
+ than as a fake routine for Itanium. (Can't do that for other
+ configurations without getting tangled up in compiler-specific
+ details like `#pragma extern_model' and VAX C's `globalref'.)
+
+Fri Mar 4 20:46:20 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: Define VAXCRTL when appropriate; used in builtin.c.
+
+Sat Feb 19 20:13:28 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h [RE_TOKEN_INIT_BUG]: Define for regcomp.c.
+
+Wed Feb 16 20:45:21 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h [NO_MBSUPPORT]: Define when compiling with VAX C.
+ [inline]: Define as empty when compiling with VAX C.
+
+Thu Jan 20 19:09:52 2005 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: Synchronize with configh.in.
+
+Mon Aug 2 12:18:15 2004 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.4: Release tar file made.
+
+Mon Jun 14 18:40:22 2004 Pat Rankin <rankin@pactechdata.com>
+
+ * descrip.mms (dfa.c, dfa.h): reinstate these.
+ (gettext.h, mbsupport.h): add these.
+ (patchlev.h): remove this.
+
+ * vmstest.com (longwrds): customize it.
+ (getline, getline2): replace getline with getline2.
+
+Mon Jul 7 11:01:43 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.3: Release tar file made.
+
+Mon Jun 9 22:15:40 2003 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h: Synchronize with current configh.in.
+ ALLOW_SWITCH: Define this to enable new `switch' feature.
+
+Wed Mar 19 14:10:31 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ This time for sure.
+ -- Bullwinkle
+
+ * Release 3.1.2: Release tar file made.
+
+Thu Feb 27 17:54:33 2003 Pat Rankin <rankin@pactechdata.com>
+
+ * descrip.mms: Revert regex compilation to single file.
+ vmsbuild.com: Likewise.
+
+Thu Feb 20 18:06:54 2003 Pat Rankin <rankin@pactechdata.com>
+
+ * vms_gawk.c (vms_gawk): Don't check for `RUNUSED' status because
+ it gets a false match when gawk is invoked via fork+exec.
+
+ * gawk.hlp: Limited updates to the release notes section.
+
+Tue Feb 4 14:28:06 2003 Arnold D. Robbins <arnold@skeeve.com>
+
+ All relevant files: Copyright year updated to 2003.
+
+Mon Feb 3 20:37:09 2003 Pat Rankin <rankin@pactechdata.com>
+
+ * vms-conf.h (ssize_t): Define as int.
+ (TIME_T_UNSIGNED): New macro; used in strftime.
+ * vms_cli.c (Cli_Parse_Command): Increase command buffer size
+ from 2.5Kb to 8Kb.
+
+ From Steve Pitcher:
+ * vms_gawk.c (vms_gawk): Don't report "missing required element"
+ for INSFPRM status unless invoked via a native DCL verb.
+
+ From Jouk Jansen:
+ * vms-conf.h (CRTL_VER_V731): New macro.
+ * vms_misc.c (getpgrp): Use it.
+
+Mon Dec 23 16:53:42 2002 Pat Rankin <rankin@pactechdata.com>
+
+ * descrip.mms (AWKOBJ1, AWKOBJ2): Split AWKOBJS into pieces to
+ avoid line length overflow when creating gawk.opt.
+ (regcomp.obj, regexec.obj, regex_internal.obj): New targets.
+ * vmsbuild.com: Likewise.
+
+Thu Nov 21 19:45:08 2002 Pat Rankin <rankin@pactechdata.com>
+
+ * descrip.mms: Update to reflect regex changes; eliminate dfa.
+
+ * vmstest.com (exit_code): Hack to add "EXIT CODE n" record to
+ output for tests that trigger gawk failure.
+
+Wed May 1 16:41:32 2002 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.1: Release tar file made.
+
+Wed Apr 17 15:57:30 2002 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (forsimp, concat1, longsub): New Tests.
+ (strftime): Revamp test to avoid use of defunct %v extension.
+
+Sat Dec 22 19:18:31 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * redirect.h (tzset): Declare.
+
+Sun Jun 3 13:04:44 2001 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.1.0: Release tar file made. And there was
+ rejoicing.
+
+Thu Apr 12 18:29:50 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms_misc.c (open): Add handling for /dev/null and /dev/tty.
+ (vms_devopen): Remove handling for /dev/null and /dev/tty.
+
+ * vms_misc.c (VMS_stat, VMS_fstat): New functions to work
+ around old VAXCRTL bugs.
+ * redirect.h (fstat): Define as VMS_fstat for VAX C or GNU C.
+
+ * vms-conf.h (HAVE_UNISTD_H): Avoid <unistd.h> for GNU C.
+
+ * descrip.mms: Synchronize with 3.1.0 sources.
+
+ * vmstest.com: Add many new tests.
+ (fixup_LRL): New subroutine.
+
+Thu Apr 5 20:31:22 2001 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms-conf.h: synchronize with current configh.in.
+ [NO_ALLOCA]: define instead of C_ALLOCA.
+ * redirect.h (strcoll): substitute strcmp for VAXCRTL config.
+ (struct timeval): define.
+ (gettimeofday): substitute vms_gettimeofday; declare.
+
+ * vms_misc.c (vms_gettimeofday): new function.
+ * vms_fwrite.c [#if NO_ALLOCA]: fix fake alloca's use of free().
+
+ * vmsbuild.com: synchronize with current sources.
+
+Sun Jan 28 15:50:02 2001 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * gawkmisc.vms (os_restore_mode): New function.
+
+Sun Dec 3 16:53:37 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.vms (os_setbinmode): new function.
+
+Tue Nov 7 14:09:14 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * gawkmisc.vms (os_is_setuid): new function.
+
+Wed Jul 30 19:53:52 1997 Arnold D. Robbins <arnold@gnu.org>
+
+ * Close-on-exec changes:
+ gawkmisc.vms: (os_close_on_exec, os_isdir): new functions.
+
+Mon Aug 7 15:23:00 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.6: Release tar file made.
+
+Sat Jul 15 20:52:09 2000 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (printf1, fusmnam, fnamedat, numindex,
+ subslash, opasnslf, opasnidx, arynocls, getlnbuf,
+ arysubnm, fnparydl): New basic tests.
+ (igncdym): New gawk.extensions test.
+ (nondec): Old gawk.extensions test commented out.
+
+Sun Jun 25 15:08:19 2000 Arnold D. Robbins <arnold@skeeve.com>
+
+ * Release 3.0.5: Release tar file made.
+
+Wed Jun 30 16:14:36 1999 Arnold D. Robbins <arnold@gnu.org>
+
+ * Release 3.0.4: Release tar file made. This time for sure.
+
+Fri May 7 20:29:04 1999 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms-conf.h (__CRTL_VER): Add same override as __VMS_VER.
+
+Wed May 5 19:10:15 1999 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (nasty, zeroflag, getnr2tm, getnr2tb): New tests.
+
+Wed Nov 25 17:24:26 1998 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (vms_tests): New general target.
+ (vms_io1): New specific test.
+
+Thu May 15 12:49:08 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.3: Release tar file made.
+
+Mon May 12 18:39:30 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (delarprm, prdupval): new `basic' tests.
+ (nondec): new `gawk.extensions' test (commented out for now).
+ (reint): move from `basic' to `gawk.extensions'.
+
+Mon May 5 21:40:07 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (clobber): new `basic' test.
+ (pid): new test, replacing `specfile'.
+ (pipeio2): new for `unix-tests'; can't execute this one under VMS.
+
+Mon May 5 21:23:52 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms_args.c (vms_arg_fixup): for the 2>&1 case, don't set the
+ output filename to "sys$error" because that results in an extra
+ empty file being created.
+
+ * vms_misc.c (vms_open): explicitly specify stream_lf format
+ when creating files rather than letting DECC$SHR make a new file
+ inherit its record format from any earlier version of that file.
+
+ Suggested by Pete Cascio <pete@rmi.net>:
+
+ * vms_misc.c (vms_open): use full record sharing options when
+ reading any record-oriented file, regardless of its organization.
+
+Mon Apr 21 19:22:12 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com (funstack): new `basic' test.
+ (reint): add missing entry to `basic'.
+ (pipeio1, specfile, strftlng): move from `basic' to `unix-tests'.
+ (childin): skip due to known failure.
+ (specfile): skip due to potentially confusing feedback.
+
+Thu Apr 24 23:18:04 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * vms_popen.c, vms_misc.c, vms_gawk.c, vms_fwrite.c,
+ vms_args.c: moved to generic GPL statement at top.
+
+Fri Apr 18 07:55:47 1997 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * BETA Release 3.0.34: Release tar file made.
+
+Wed Apr 2 18:17:30 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * descrip.mms, vmsbuild.com (PATCHLVL): update to 3.
+
+ * vmstest.com (nlfldsep, splitvar, intest, nfldstr, nors,
+ fnarydel, noparms, pipeio1): new tests.
+
+Wed Jan 15 15:21:01 1997 Pat Rankin <rankin@eql.caltech.edu>
+
+ * redirect.h (stat, fstat): do not declare these functions;
+ rely on <stat.h> to do so. There are too many DEC C version
+ variants to handle otherwise.
+
+ From Martin Zinser <zinser@axp602.gsi.de>:
+
+ * descrip.mms (gawk.dvi): update to build in [.doc] directory
+ using texindex.c retained from an earlier gawk 2.x distribution.
+ (texindex.exe): don't assume VAX C.
+
+Wed Dec 25 11:25:22 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.2: Release tar file made.
+
+Mon Dec 23 20:51:27 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms_misc.c (vms_bcopy): `bcopy' is defined as this in redirect.h.
+
+Thu Dec 19 17:49:31 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * redirect.h (strcasecmp, strncasecmp, tzset, tzname,
+ daylight, timezone, altzone, bcopy, popen, pclose, unlink):
+ New macros to avoid conflict with VMS V7.x DECC$SHR symbols.
+ (close, dup, dup2, read): Declare with full prototypes.
+ (fstat, stat): Ditto, and guard against conflicting DEC C
+ declarations (which might have trailing elipsis).
+ * vms_misc.c (tzset, tzname, daylight, timezone, altzone):
+ Suppress these if compiled with VMS_V7 defined [not supported].
+
+Mon Dec 16 14:32:08 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms_popen (popen): Delete unprototyped declaration of strcmp()
+ to avoid conflict with a strcmp macro in DEC C V5.0 header files.
+
+Tue Dec 10 23:09:26 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * Release 3.0.1: Release tar file made.
+
+Fri Dec 6 20:55:57 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * redirect.h, vms-conf.h: Refine Sep 20th change: include
+ <stdlib.h> and <string.h> in redirect.h rather than vms-conf.h
+ so that it occurs for VMS POSIX as well as for normal VMS.
+
+Wed Nov 20 15:47:02 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * descrip.mms (LIBOBJS): Rename from GNUOBJS; add random.obj.
+ (LIBSRC): Rename from GNUSRC; add random.c.
+ (AWKSRC): Add random.h.
+ (random.obj, builtin.obj): Depend upon random.h.
+ * vmsbuild.com: compile random.c, link random.obj.
+
+ * vmstest.com (childin): Split message about expected failure
+ in order to avoid consecutive tick marks in the quoted string.
+
+Wed Nov 13 15:32:58 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vmstest.com: New file to execute test suite.
+
+Fri Nov 8 18:29:42 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ Revise makefiles so that no editing should be needed.
+
+ * descrip.mms: Use DEC C as the default compiler, since
+ the same compile and link options for it can be used as-is
+ on both VAX and Alpha.
+ (GNUC, VAXC): New `make' macros for specifying an alternate
+ compiler on the MMS or MMK command line.
+ (PATCHLVL): Update to 1.
+ * vmsbuild.com: Make the equivalent changes.
+
+Mon Oct 28 17:02:39 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms.h (U_Long, U_Short): Replace u_long and u_short typedefs.
+ * vms_*.c: Use them.
+
+ * vms.h, vms_*.c: Change SYS$ and LIB$ routines to lower case
+ equivalents; fully prototype sys$ and lib$ routines rather than
+ just declare them.
+
+Fri Sep 20 17:33:05 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms-conf.h: directly include <stdlib.h> and <string.h>.
+ * vms-conf.h (strftime): delete this macro.
+ * redirect.h (strftime): define it here instead.
+
+Fri May 17 09:08:16 1996 Arnold Robbins <arnold@skeeve.atl.ga.us>
+
+ * gawkmisc.vms (envsep): Now initialized to ',' instead of ':',
+ per email from Pat Rankin.
+
+Thu Jan 11 15:20:14 1996 Pat Rankin <rankin@eql.caltech.edu>
+
+ * vms-conf.h [#if __DECC]: Changes to support V5.x of DEC C.
+ (_DECC_V4SOURCE, __SOCKET_TYPEDEFS): Define these to avoid
+ duplicate u_long and u_short typedefs.
+ (__VMS_VER): If value indicates VMS V6.2 or later, redefine it to
+ indicate V6.1 in order to avoid conflicting prototype for getopt.
+
+Wed Jan 10 22:58:55 1996 Arnold D. Robbins <arnold@skeeve.atl.ga.us>
+
+ * ChangeLog created.