12021-10-27 Arnold D. Robbins <arnold@skeeve.com> 2 3 * 5.1.1: Release tar ball made. 4 52021-10-24 Arnold D. Robbins <arnold@skeeve.com> 6 7 * README: Updated. 8 92021-10-20 Andrew J. Schorr <aschorr@telemetry-investments.com> 10 11 * msg.c (err): Need to check that FNR_node->var_value is non-NULL 12 before testing with is_mpg_number. 13 142021-10-18 Arnold D. Robbins <arnold@skeeve.com> 15 16 Factor duplicated code out into a separate function. 17 D.R.Y. principle. 18 19 * symbol.c (get_name_from_awk_ns): New function. 20 (lookup): Use it. 21 (install): Use it. 22 23 * awkgram.y (check_qualified_special): Use awk_namespace instead of a 24 string constant. 25 * profile.c (pprint): Ditto. 26 (adjust_namespace): Ditto. Also, fix the check for the qualified 27 name to look for the "::" in case one namespace is a prefix of 28 another. 29 302021-10-13 Arnold D. Robbins <arnold@skeeve.com> 31 32 * README: Update version, copyright year. 33 * custom.h: Update copyright year. 34 352021-09-26 Arnold D. Robbins <arnold@skeeve.com> 36 37 * builtin.c (do_mktime): Update that ISO 8601 does not allow 38 hours > 23. Thanks to Nethox <nethox+awk@gmail.com> for the info. 39 402021-09-23 Arnold D. Robbins <arnold@skeeve.com> 41 42 * gawkapi.h: Some clean-up of comments in the header file. 43 442021-09-12 Arnold D. Robbins <arnold@skeeve.com> 45 46 * interpret.h: Remove subscript_in_array variable. 47 48 Unrelated: 49 50 * builtin.c (add_thousands): Fix insertion of thousands_sep 51 string. Do it in reverse order. 52 532021-09-10 Arnold D. Robbins <arnold@skeeve.com> 54 55 * interpret.h: For Op_subscript, don't allow references into 56 FUNCTAB and SYMTAB to create new elements. Thanks to 57 Jason C. Kwan <jasonckwan@yahoo.com> for the bug report. 58 59 Unrelated: 60 61 * aclocal.m4: Regenerated: Automake 1.16.4. 62 * NEWS: Updated. 63 64 Unrelated: 65 66 * awkgram.y (YYERROR_IS_DECLARED): Added for Bison 3.8. 67 * command.y (YYERROR_IS_DECLARED): Ditto. 68 * NEWS: Updated. 69 702021-09-09 Arnold D. Robbins <arnold@skeeve.com> 71 72 Move to Autoconf 2.71 (finally!) 73 74 * configure.ac: Updated. 75 * aclocal.m4, configh.in configure: Regenerated. 76 * NEWS: Updated. 77 782021-09-06 Arnold D. Robbins <arnold@skeeve.com> 79 80 Have the ' flag work for %d in MPFR mode also. Thanks to 81 Dan Nielsen <catskill549@yahoo.com> for the report. 82 83 * builtin.c (add_thousands): New function. 84 (reverse): New helper function. 85 (format_tree): Use add_thousands if MPFR and an integer 86 format. 87 882021-09-03 Arnold D. Robbins <arnold@skeeve.com> 89 90 * main.c (UPDATE_YEAR): Update to 2021. 91 922021-08-18 Arnold D. Robbins <arnold@skeeve.com> 93 94 * main.c (main): Change have_srcfile from int to bool. 95 962021-08-15 Arnold D. Robbins <arnold@skeeve.com> 97 98 Allow setting AR and ARFLAGS on the configure command line. 99 Thanks to Jacob Burkholder <jake.burkholder2@gmail.com> for 100 the report. 101 102 * configure.ac (AR_FLAGS): Provide default value. 103 (AR): Call AC_SUBST on it. 104 1052021-08-13 Arnold D. Robbins <arnold@skeeve.com> 106 107 * builtin.c (do_sub): Rationalize handling of strongly typed 108 regex as argument to sub/gsub, as well as rationalize the return 109 value from gensub to always be string. Thanks to John Naman 110 <gawker@703n.com> for the bug report. 111 1122021-08-05 Andrew J. Schorr <aschorr@telemetry-investments.com> 113 114 * mpfr.c (do_mpfr_func): New argument, warn_negative. If true, 115 print a warning message about a negative argument. Bring -M 116 code into line with regular code. Bug report from Neil Ormos 117 in the help-gawk list. 118 119 Unrelated: 120 121 * mpfr.c (do_mpfr_int_div, mpg_div, mpg_mod): If dividing by 122 zero, print a fatal error messages. Brings MPFR code into line 123 with the regular code. Thanks to Peng Yu for noticing the bug, in 124 the help-gawk list. 125 1262021-07-23 Arnold D. Robbins <arnold@skeeve.com> 127 128 * awk.h (exec_count_t): Add typedef for Vax VMS C and everyone else. 129 (EXEC_COUNT_FMT, EXEC_COUNT_PROFILE_FMT): Corresponding format 130 strings for printf. 131 * debug.c (print_instruction): Use EXEC_COUNT_FMT. 132 * profile.c (indent): Ditto and use EXEC_COUNT_PROFILE_FMT. 133 1342021-07-07 Arnold D. Robbins <arnold@skeeve.com> 135 136 * array.c (asort_actual): Add a lint warning for passing the 137 same array as the first two arguments without a third. 138 Thanks to Peng Yu <pengyu.ut@gmail.com> for the report. 139 1402021-06-30 Arnold D. Robbins <arnold@skeeve.com> 141 142 * custom.h: Add a bunch of defines to work around the continous, 143 needless churn in support/dfa.c. 144 1452021-06-04 Arnold D. Robbins <arnold@skeeve.com> 146 147 * builtin.c (format_tree): In MPFR prints, cast values to 148 int for proper int vs. unsigned comparison. Fixes things 149 for HP-UX. Thanks to Daniel Richard G. for the report. 150 1512021-05-21 Arnold D. Robbins <arnold@skeeve.com> 152 153 * debug.c: For z/OS, use %#p to print pointers, %p everything else. 154 1552021-05-13 Arnold D. Robbins <arnold@skeeve.com> 156 157 * custom.h: For z/OS, define _REGEX_INCLUDE_LIMITS_H. 158 * profile.c (pprint): Add a diagnostic print for an 159 unexprected node type. 160 1612021-05-05 Arnold D. Robbins <arnold@skeeve.com> 162 163 Move to Automake 1.16.3. 164 165 * configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects option. 166 * NEWS: Updated. 167 168 Get `make distcheck' working again: 169 170 * Makefile.am (EXTRA_DIST): Remove files that are now in build-aux. 171 1722021-04-16 Arnold D. Robbins <arnold@skeeve.com> 173 174 * main.c (arg_assign): For -v '@/...' make sure that there are 175 at least three characters there. Thanks to Ed Morton 176 <mortoneccc@comcast.net> for the report. 177 1782021-04-14 Arnold D. Robbins <arnold@skeeve.com> 179 180 Fix up lint warnings for "no effect" to avoid false warnings. 181 Straighten out the messages, and remove the run-time warning, 182 since a parse-time warning is already issued. Thanks to 183 Arkadiusz Drabczyk <arkadiusz@drabczyk.org> for the initial 184 bug report. 185 186 * awkgram.y (isnoeffect): Add more opcodes that are "no effect". 187 (add_lint): For LINT_no_effect, check that all the opcodes in the 188 list are "no effect". Only if so, issue the warning. Remove the 189 addition of the run-time warning. 190 * interpret.h (r_interpret): Remove LINT_no_effect from Op_lint 191 case. 192 1932021-02-13 Arnold D. Robbins <arnold@skeeve.com> 194 195 * io.c (nextfile): Use the value of ARGC directly in the for 196 loop, in case it gets changed by code or by a command line 197 assignment. Thanks to the discussion in comp.lang.awk for 198 the report. 199 2002021-01-28 Arnold D. Robbins <arnold@skeeve.com> 201 202 Fix a Day One Bug! 203 204 * main.c (main): For -b option, only set LC_ALL to C if 205 not --posix. Ooops. 206 2072021-01-09 Arnold D. Robbins <arnold@skeeve.com> 208 209 Fix problems turning something like 018 into decimal. 210 Thanks to Arkadiusz Drabczyk <arkadiusz@drabczyk.org> and to 211 Jean-Philippe Guérard <jean-philippe.guerard@xn--tigreray-i1a.org> 212 for the reports. 213 214 * builtin.c (nondec2awknum): Use a copy of len, in case we detect 215 8 or 9 and have to restart as decimal. 216 * mpfr.c (mpg_strtoui): For 8 or 9, set base to 10. 217 218 Unrelated: 219 * array.c, awk.h, awkgram., builtin.c, cmd.h, command.y, debug.c, 220 eval.c, gawk.api.c, gawkapi.h, interpret.h, io.c, main.c, mfpr.c, 221 node.c, profile.c, re.c: Update copyright year. 222 2232021-01-08 Arnold D. Robbins <arnold@skeeve.com> 224 225 General tightening up use of const and types. Thanks to 226 the C++ porting experiment. 227 228 * array.c (null_array): Separate out multiple assignment of zero. 229 * awk.h: Add <math.h> here and pull it out of individual files. 230 (CONVFMT): Make const char *. 231 (quote): Make const char *. 232 (defpath): Make const char *. 233 (deflibpath): Make const char *. 234 (envsep): Make const char *. 235 (DO_FLAG_NONE): New zero enum value. 236 (getblock): Add a cast to the ty argument. 237 (make_regnode): First argument is now NODETYPE. 238 (gawk_name): Returns const char *. 239 * awkgram.y: Include argument types in read_func pointer. 240 (make_regnode): First argument is now NODETYPE. 241 * builtin.c (do_typeof): Use const char *. 242 (format_nan_inf): Move declaration of val to top of function. 243 * cmd.h (dbg_prompt, commands_prompt, eval_prompt, dgawk_prompt): 244 Make const char *. 245 (struct cmd_token): Use const char *. Rename `class' to `lex_class'. 246 * command.y (lex_class): Update all uses. 247 (find_command): Use const char *. 248 * debug.c (dbg_prompt, commands_prompt, eval_prompt, dgawk_prompt, 249 output_file): Make const char *. 250 (struct dbg_option): Use const char *. 251 (do_info): Use const char *. Cast stop.command to enum argtype. 252 (do_finish): Cast stop.command to enum argtype. 253 (do_return, do_until): Ditto. 254 (print_instruction, set_gawk_output, set_prompt): Add casts to 255 some function parameters. 256 * eval.c (update_ERRNO_int): Use const char *. 257 * gawk.api.c (valtype2str): Return const char *. 258 (api_get_argument): Use awk_true instead of true in return statements. 259 (awk_value_to_node): Move declaration of tval to top of function. 260 (api_release): Cast a_cookie to NODE *. 261 * gawkapi.h (struct awk_input): Include argument types in 262 read_func pointer. 263 * interpret.h (r_interpret): Add cast to argument in call to 264 do_getline_redir. 265 * io.c (read_with_timeout): Change second param to void * from char *. 266 (redirect_string): Add casts to function call parameters. 267 (path_info): Use const char *. 268 (init_awkpath): Ditto. 269 * main.c (CONVFMT, locale_dir): Now const char *. 270 (do_flags): Init to DO_FLAG_NONE instead of zero. 271 * mfpr.c (get_rnd_mode): Add cast to return value. 272 (set_round_mode): Add cast to assignment of rndm. 273 (do_mpfr_func): Include argument types in type of second parameter. 274 * node.c (r_make_number): Remove declaration of strtod. 275 * profile.c (pp_push): Add cast in assignment to n->type. Use 276 const char * for `pre' at Op_func_call. 277 * re.c (check_bracket_exp): Add cast to return from memchr. 278 2792021-01-07 Arnold D. Robbins <arnold@skeeve.com> 280 281 * builtin.c (format_tree): Generalize handling of invalid 282 format modifiers. Add support for three more letters. Thanks to 283 Arkadiusz Drabczyk <arkadiusz@drabczyk.org> for the report. 284 285 Unrelated: 286 287 * io.c (rsnullscan): Adjust loop test to get to end of string 288 when re match is null string. Thanks to Ed Morton 289 <mortoneccc@comcast.net> for the report. 290 2912020-12-26 Arnold D. Robbins <arnold@skeeve.com> 292 293 * NEWS: Updated. 294 2952020-12-20 Arnold D. Robbins <arnold@skeeve.com> 296 297 Second steps fixing +inform, +nancy, for MPFR. 298 299 * builtin.c (format_nan_inf): Use mpfr_signbit instead of mpfr_sgn. 300 * mpfr.c (force_mpnum): Check for NaN and leading minus and if so 301 set the signbit with mpfr_setsign. 302 (mpg_force_number): Copy in code from f_force_number to check 303 properly for +inf, +nan. 304 3052020-12-19 Arnold D. Robbins <arnold@skeeve.com> 306 307 First steps fixing +inform, +nancy. Sigh. 308 309 * awk.h (is_ieee_magic_val): Add declaration. 310 * node.c (is_ieee_magic_val): Make extern, not static. 311 (r_force_number): Make the check smarter, catch -nan. 312 3132020-11-02 Arnold D. Robbins <arnold@skeeve.com> 314 315 * re.c (make_regexp): Cast len parameter to int to avoid 316 compiler warnings. 317 3182020-10-31 Arnold D. Robbins <arnold@skeeve.com> 319 320 * re.c (make_regexp): When re_compile_pattern fails, use the 321 original text of the regexp in the error message. Thanks to Neil 322 R. Ormos <ormos-gnulists17@ormos.org> for the report. 323 3242020-10-29 Arnold D. Robbins <arnold@skeeve.com> 325 326 * eval.c (setup_frame): Handle the case of values from FUNCTAB. 327 Thanks to Denis Shirokov <cosmogen@gmail.com> for the report. 328 3292020-10-12 Arnold D. Robbins <arnold@skeeve.com> 330 331 * gawkapi.c (api_lintwarn): Fix comparison, should be to check 332 lintfunc, not lintwarn. Thanks to OLLIER Jean-François 333 <lalanne.51@wanadoo.fr>, reported 23 March, 2014. 334 3352020-10-11 Arnold D. Robbins <arnold@skeeve.com> 336 337 * re.c (make_regexp): Add {} to characters that cause rp->maybe_long 338 to be true. 339 * io.c (rsrescan): Update comment for step 4. 340 3412020-09-21 Arnold D. Robbins <arnold@skeeve.com> 342 343 * awk.h (enum redirect_flags): Add RED_NONE. 344 (redirect_flags_t): New typedef. 345 * io.c (redflags2str): Handle RED_NONE. 346 (check_duplicated_redirections): New function. 347 (redirect_string): Use new typedef. Call new function if do_lint 348 instead of using inline code. 349 (close_redir): Add error message for failure on close of two-way pipe. 350 3512020-09-04 Arnold D. Robbins <arnold@skeeve.com> 352 353 * awkgram.y [GRAMMAR]: Install arrays as Node_var_array. Improves 354 PROCINFO["identifiers"]. Thanks to anoncoward@nym.hush.com 355 for the report. 356 3572020-08-25 Arnold D. Robbins <arnold@skeeve.com> 358 359 * interpret.h (r_interpret): At Op_rule, check if in BEGINFILE. If so, 360 clear the record. Fixes an issue reported by Pat Rankin in May, 2011. 361 3622020-08-24 Arnold D. Robbins <arnold@skeeve.com> 363 364 * awkgram.y, builtin.c, command.y, debug.c, gawkapi.c, 365 io.c, node.c: Make all messages consistent: Remove final periods 366 from messages that had them. 367 * TODO: Updated. 368 3692020-08-20 Arnold D. Robbins <arnold@skeeve.com> 370 371 * awk.h (NODE): Move valref completely out of the union. Fixes 372 core dumps on old GCC on CentOS 7. 373 3742020-08-13 Arnold D. Robbins <arnold@skeeve.com> 375 376 Fix TIDYMEM / use of mtrace. 377 378 * configure.ac: Add mtrace to list of functions searched for. 379 * symbol.c (make_symbol): Set valref to 1. Allows the 380 release_all_vars function to work. 381 382 Unrelated: 383 384 * array.c (value_info): Spell ROUNDMODE correctly in output. 385 * mpfr.c (set_ROUNDMODE): Ditto. 386 3872020-08-12 Arnold D. Robbins <arnold@skeeve.com> 388 389 * awkgram.c, command.c: Regenerated with Bison 3.7.1. 390 * NEWS: Updated. 391 392 Unrelated: 393 394 * profile.c (pp_namespace): Always print a newline before the 395 @namespace, in case it comes after a comment. Thanks to J Naman 396 for the report. 397 * symbol.c (comp_symbol): Adjust comparison so that names in the 398 awk namespace come out first. Makes the order of functions in 399 pretty-printed output more sane. Thanks also to J Naman for 400 getting me to explore this issue. 401 4022020-07-29 Arnold D. Robbins <arnold@skeeve.com> 403 404 * custom.h (FLEXIBLE_ARRAY_MEMBER): Define to 1 for dfa.h. 405 4062020-07-28 Arnold D. Robbins <arnold@skeeve.com> 407 408 Eliminate 'iszero: redefined' warning from tcc. 409 410 * awk.h (is_zero): Renamed from `iszero'. 411 (boolval): Update usage. 412 * awkgram.y [GRAMMAR]: Ditto. 413 (negate_num): Ditto. 414 * debug.c (condition_triggered): Ditto. 415 * eval.c (set_LINT): Ditto. 416 4172020-07-26 Arnold D. Robbins <arnold@skeeve.com> 418 419 * awkgram.c, command.c: Regenerated with Bison 3.7. 420 * NEWS: Updated. 421 422 Unrelated: 423 424 * gawkapi.h (api_get_mpfr, api_get_mpz): Mark as obsolete. 425 4262020-07-22 Arnold D. Robbins <arnold@skeeve.com> 427 428 * Makefile.in: Regenerated. 429 4302020-07-21 Arnold D. Robbins <arnold@skeeve.com> 431 432 * configure.ac (AM_INIT_AUTOMAKE): Update to 1.16. 433 * ar-lib, compile, config.guess, config.rpath, config.sub, 434 depcomp, install-sh, missing, ylwrap: Moved to build-aux. 435 4362020-07-20 gettextize <bug-gnu-gettext@gnu.org> 437 438 * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.20.2. 439 4402020-07-19 Arnold D. Robbins <arnold@skeeve.com> 441 442 * NEWS: Fix title on leading set of changes. Thanks to 443 Marcus <marcuscruse@ya.ru> for the report. 444 445 Unrelated: Bump minor API version since semantics have changed. 446 447 * gawkapi.h (api_minor_version): Increase to 1. 448 449 Unrelated: Fix a spelling error in a comment. 450 451 * mpfr.c (force_mpnum): Fix a typo. 452 4532020-07-17 Arnold D. Robbins <arnold@skeeve.com> 454 455 * gawkapi.h (gawk_api_minor_version): Increase, since the 456 MPFR/MPZ stuff changed some. Remains source and binary 457 compatible, but semantics are different. 458 4592020-07-15 Arnold D. Robbins <arnold@skeeve.com> 460 461 Finish cleaning up MPFR valgrind issues. 462 463 * awk.h (struct block_header): Remove MPFR and GMP enums. 464 * gawkapi.c (getmpfr, freempfr, getmpz, freempz): Removed 465 (api_get_mpfr): Use emalloc instead of getmpfr. 466 (api_get_mpz): Use emalloc instead of getmpz. 467 * gawkapi.h: Add comments on MPFR and MPZ 468 (make_number_mpfr, make_number_mpz): Update comments. 469 * node.c (nextfree): Remove mpfr and mpz entries. 470 * NEWS: Updated. 471 472 Unrelated: 473 474 * config.guess, config.sub: Updated from GNULIB. 475 4762020-07-13 Arnold D. Robbins <arnold@skeeve.com> 477 478 * mpfr.c (mpg_interpret): Small speedup. If do_itrace and opcode is 479 not one that's handled, return early. 480 4812020-07-12 Arnold D. Robbins <arnold@skeeve.com> 482 483 * mpfr.c (mpg_interpret): Make the instruction tracing more sane. 484 485 Fix the testext test for MPFR. 486 487 * gawkapi.c (awk_value_to_node): Use correct code to copy 488 MPFR/MPN numbers and don't free the original values. 489 * interpret.h (r_interpret): At Op_ext_builtin, separate out calls 490 to the external function and awk_value_to_node, for ease in a 491 debugger. 492 * NEWS: Updated. 493 4942020-07-10 Arnold D. Robbins <arnold@skeeve.com> 495 496 Fix printf issues. Thanks to Michal Jaegermann for the report. 497 498 * cint_array.c (cint_dump): Fix printf formats. 499 * debug.c (print_symbol): Ditto. 500 * mpfr.c (mpg_interpret): Ditto. 501 5022020-07-09 Arnold D. Robbins <arnold@skeeve.com> 503 504 Fix dbugeval2 test for MPFR. 505 506 * debug.c (do_eval): Preserve DO_MPFR flag in do_flags before 507 parsing the string to be evaluated. 508 509 Fix indirect call tests for MPFR: 510 511 * awkgram.y (lookup_builtin): Only return the MPFR builtin 512 function if the pointer is not NULL. 513 514 Unrelated: 515 516 * config.guess, config.sub: Updated from GNULIB. 517 5182020-07-08 Arnold D. Robbins <arnold@skeeve.com> 519 520 * str_array.c (str_lookup): If a pure number, copy to a string. Fixes 521 the printfchar test for MPFR. 522 523 Fix typedregex2 and typedregex3 tests for MPFR: 524 525 * mpfr.c (mpg_zero): No longer static inline. 526 (force_mpnum): Handle the case of a strongly typed regex. 527 (mpg_interpret): Add tracing for do_itrace. 528 * awk.h (mpg_zero): Add declaration. 529 * node.c (make_typed_regex): Init to zero for MPFR via mpg_zero. 530 5312020-07-07 Arnold D. Robbins <arnold@skeeve.com> 532 533 * awk.h: Turn all the flag defines into enums. GDB can then show 534 the bit maps directly. 535 536 Unrelated: Fix another MPFR bug, reported by Hyunho Cho 537 <mug896@naver.com>. 538 539 * mpfr.c (force_mpnum): Restore the character at the end of 540 the string if only saw + or -. 541 5422020-07-07 Andrew J. Schorr <aschorr@telemetry-investments.com> 543 544 * node.c (r_dupnode): Sanitize the code, particularly for MPFR. 545 5462020-07-05 Arnold D. Robbins <arnold@skeeve.com> 547 548 Bug fixes in MPFR, reported by Hyunho Cho<mug896@naver.com>. 549 550 * node.c (r_dupnode): Set strndmode and also set stlen of new 551 string. (How did that one get by us for so long?) 552 * mpfr.c (force_mpnum): Check for a + or - sign with nothing following it. 553 554 Unrelated. Make do_itrace a real variable so that it's easier to 555 change the value from a debugger. 556 557 * awk.h (do_itrace): Declare. 558 (DO_ITRACE, do_itrace): Remove macros. 559 * main.c (do_itrace): Define. 560 (parse_args): Set do_itrace. 561 5622020-07-03 Arnold D. Robbins <arnold@skeeve.com> 563 564 Fix a double free error with -M. Thanks to 565 "NIDE, Naoyuki" <nide@ics.nara-wu.ac.jp> for the report. 566 567 * field.c (clear_mpfr): New macro, clears MPFR and NUMCUR bits. 568 (reset_record): Use it on the newly copied field values. 569 (purge_record): Add introductory comment since we're in the file. 570 5712020-07-01 Arnold D. Robbins <arnold@skeeve.com> 572 573 * eval.c (posix_compare): Rewrite contributed by 574 Michael Builov <mbuilov@gmail.com>. 575 576 Unrelated: 577 578 * awk.h: New option: do_itrace. 579 * interpret.h (r_interpret): Print instruction trace if enabled. 580 * main.c (optab): New option: -I/--trace. 581 (parse_args): Update optlist and the code to handle it. 582 * NEWS: Updated. 583 5842020-06-29 Arnold D. Robbins <arnold@skeeve.com> 585 586 * debug.c: Cleanup messages. Error messages start with lower 587 case letter. 588 * TODO: Updated. 589 5902020-06-14 Arnold D. Robbins <arnold@skeeve.com> 591 592 Disallow SYMTAB and FUNCTAB as destination arguments to builtin 593 functions that clear arrays: 594 595 * awk.h (check_symtab_functab): Add declaration. 596 * array.c (asort_actual): Call it in check for second argument. 597 * builtin.c (check_symtab_functab): New function. 598 (do_match): Call it in check for third argument. 599 * field.c (do_patsplit, do_split): Call it in checks for fourth and 600 second arguments. 601 6022020-06-12 Arnold D. Robbins <arnold@skeeve.com> 603 604 * array.c (asort_actual): If SYMTAB or FUNCTAB is the second argument, 605 fatal out. If they are the first argument, make it work when a 606 second argument is supplied. 607 * TODO, NEWS: Updated. 608 6092020-06-10 Arnold D. Robbins <arnold@skeeve.com> 610 611 More miscellaneous fixes from Michael Builov <mbuilov@gmail.com>. 612 613 * node.c (r_unref): Handle GAWKDEBUG same as in awk.h:unref. 614 (parse_escape): isxdigit/isdigit/isupper called with possible negative 615 int: fixed. Dead code under "if (do_lint && j > 2)" eliminated, 616 j cannot be > 2. 617 (init_btowc_cache): Also initialize wide-char at index 255. 618 619 And so that `make check' passes with GAWKDEBUG defined: 620 621 * msg.c (err): Remove abort() call if fatal. Didn't really do 622 anything special for us. 623 6242020-06-10 Arnold D. Robbins <arnold@skeeve.com> 625 626 * awkgram.c, command.c: Regenerated with bison 3.6.3. 627 * NEWS: Updated. 628 6292020-06-10 Andrew J. Schorr <aschorr@telemetry-investments.com> 630 631 Convert exec_count from long long to unsigned long long. 632 * awk.h (INSTRUCTION): Change ldl type from long long to unsigned 633 long long. 634 * debug.c (print_instruction): Fix printf format for exec_count. 635 * profile.c (indent): The argument is now an unsigned long long, 636 and fix the printf format to match. 637 6382020-06-10 Arnold D. Robbins <arnold@skeeve.com> 639 640 Miscellaneous fixes from Michael Builov <mbuilov@gmail.com>. 641 642 * awkgram.y (rule_block): Fix size declaration 643 (parse_program): Adjust memset call. 644 (get_comment): Check for end of file before checking for space. 645 * io.c (gawk_popen): Move os_close_on_exec call inside #endif. 646 * builtin.c (do_bindtextdomain): Don't pass NULL to strlen. 647 * debug.c (set_breakpoint): Don't dereference NULL pointer in D_func. 648 (serialize_list): Get the buffer management right to avoid overrun. 649 6502020-06-10 Arnold D. Robbins <arnold@skeeve.com> 651 652 Thanks to Andrew Schorr for suggesting a better way to 653 handle exec_count being a long long. 654 655 * awk.h (INSTRUCTION): Make new ldl member be the long long. 656 (exec_count): Is now ldl. 657 * profile.c (pprint): Fix printf of exec_count. 658 6592020-06-09 Arnold D. Robbins <arnold@skeeve.com> 660 661 * awkgram.y (tokexpand): Use size_t instead of int for size of 662 buffer. 663 6642020-06-08 Arnold D. Robbins <arnold@skeeve.com> 665 666 * awkgram.y: Fix `print $"2"' case. Thanks to Ed Morton 667 <mortoneccc@comcast.net> for the report. 668 669 Unrelated: 670 671 * awk.h (INSTRUCTION): Make dl a long long for profiling 672 counts on 32 bit systems. Thanks to Peter Lindgren 673 for the report. 674 * profile.c (indent): Take a long long parameter and fix 675 the printf format. 676 6772020-06-05 Arnold D. Robbins <arnold@skeeve.com> 678 679 * awkgram.y: Allow @/foo/ as return expression in a function. 680 Oops. 681 6822020-06-05 Arnold D. Robbins <arnold@skeeve.com> 683 684 * configure.ac: Add call to AM_PROG_AR for use in 685 cross compiles. Thanks to Sergei Trofimovich <slyfox@gentoo.org> 686 for the patch. 687 6882020-05-15 Arnold D. Robbins <arnold@skeeve.com> 689 690 * config.guess, config.sub: Updated from GNULIB. 691 6922020-05-14 Arnold D. Robbins <arnold@skeeve.com> 693 694 * awkgram.c, command.c: Rebuild with Bison 3.6. 695 * NEWS: Updated. 696 6972020-05-06 Arnold D. Robbins <arnold@skeeve.com> 698 699 Add lint check for string + string. It's not concatenation 700 in awk, but is in most other languages. Thanks to Roland Illig 701 <roland.illig@gmx.de> for the suggestion. 702 703 * awk.h (Op_lint_plus): New opcode. 704 * awkgram.y (mk_binary): Add it into the list in the right place 705 if do_lint. 706 * eval.c (optypes): Add case for Op_lint_plus. 707 * interpret.h (r_interpret): Ditto. 708 7092020-04-14 Arnold D. Robbins <arnold@skeeve.com> 710 711 * 5.1.0: Release tar ball made. 712 7132020-04-10 Arnold D. Robbins <arnold@skeeve.com> 714 715 * field.c (save_FPAT): New global variable. 716 (get_field): Check if using FPAT or not in order to pass in 717 the right variables to parse_field function. Fixes bug in 718 delayed field parsing when using FPAT. Thanks to 719 luciole75w <luciole75w@gmail.com> for the bug report. 720 (set_FPAT): Use global save_FPAT instead of local save_fpat. 721 722 Unrelated: 723 724 * awkgram.c, command.c: Rebuild with Bison 3.5.4. 725 * NEWS: Updated. 726 727 Unrelated: 728 729 * awk.h (do_lint_extensions): Define to zero if NO_LINT. 730 7312020-04-02 Arnold D. Robbins <arnold@skeeve.com> 732 733 * field.c (re_parse_field): If default parsing and trailing 734 whitespace, don't set a null field at the end. Thanks to 735 Ed Morton <mortoneccc@comcast.net> for the report. 736 7372020-03-18 Arnold D. Robbins <arnold@skeeve.com> 738 739 * TODO: Add more stuff. 740 7412020-03-15 Arnold D. Robbins <arnold@skeeve.com> 742 743 * Makefile.am (zos-diffout): New target. 744 * awkgram.y, command.y: Upgrade to Bison 3.5.3. 745 * NEWS: Updated. 746 7472020-03-11 Arnold D. Robbins <arnold@skeeve.com> 748 749 * main.c: Further message update. Thanks again to 750 Roland Illig <roland.illig@gmx.de>. 751 7522020-03-09 Andrew J. Schorr <aschorr@telemetry-investments.com> 753 754 * array.c (sort_up_value_string): If either arg is not a Node_val, 755 call out to sort_up_value_type instead. If cmp_strings returns zero, 756 fall back to sort_up_index_string as a tie-breaker. 757 (sort_up_value_number): If either arg is not a Node_val, call out to 758 sort_up_value_type instead. If cmp_strings returns zero, fall back 759 to sort_up_index_string as a tie-breaker. 760 (do_sort_up_value_type): Renamed from sort_up_value_type with one 761 change: if both arguments have type Node_var, we compare the 762 var_value NODEs instead. 763 (sort_up_value_type): New wrapper function around do_sort_up_value_type 764 to fall back to sort_up_index_string as a tie-breaker. 765 7662020-03-09 Arnold D. Robbins <arnold@skeeve.com> 767 768 * array.c, awk.h, awkgram.y, builtin.c, command.y, debug.c, 769 ext.c, int_array.c, io.c, main.c, symbol.c: Messages refined 770 based on suggestions from Roland Illig <roland.illig@gmx.de>. 771 7722020-03-06 Jannick <thirdedition@gmx.net> 773 774 * Makefile.am: Replace AM_MAKEFLAGS with AM_CFLAGS and AM_LDFLAGS. 775 Put pc/Makefile.tst into BUILT_SOURCES, instead of in dist-hook. 776 Add $(srcdir) to rules for the yacc files. Use AM_LDFLAGS in 777 the efence rule. 778 * configure.ac: Use GAWK_CANONICAL_HOST instead of AC_CANONICAL_HOST; 779 this supplies MSYS2 support. Remove use of EXEEXT. 780 7812020-03-04 Arnold D. Robbins <arnold@skeeve.com> 782 783 * NEWS: Updated. 784 7852020-02-13 John E. Malmberg <wb8tyw@qsl.net> 786 787 * custom.h: OpenVMS needs _REGEX_INCLUDE_LIMITS_H defined. 788 7892020-02-09 Arnold D. Robbins <arnold@skeeve.com> 790 791 * awkgram.y: Add lint check for assignment in condition to 792 if and for statements. Thanks to Jannick <thirdedition@gmx.net> 793 for the suggestion. 794 * debug.c (do_eval): Remove @eval from the symbol table if there 795 was a syntax error in the statement being evaluated. Thanks again 796 to Jannick, for the report. 797 7982020-02-04 John E. Malmberg <wb8tyw@qsl.net> 799 800 * custom.h: Fix OpenVMS SIZE_MAX value. 801 8022020-02-01 Arnold D. Robbins <arnold@skeeve.com> 803 804 * awk.h, dfa.c: Move include of mbsupport.h to ... 805 * custom.h: ... here. 806 * configure.ac: Add check for isblank. 807 8082020-01-27 Arnold D. Robbins <arnold@skeeve.com> 809 810 * custom.h: Fix non-VMS compilation. 811 8122020-01-26 John E. Malmberg <wb8tyw@qsl.net> 813 814 * custom.h: Additional OpenVMS typedefs needed. 815 * gettext.h: Fix macro for implementations without gettext 816 to not force the result to be a const char *. 817 8182020-01-26 Andrew J. Schorr <aschorr@telemetry-investments.com> 819 820 * array.c (sort_up_value_type): Small efficiency tweak. Only 821 run through the list of other types if both values are not scalars. 822 8232020-01-24 Arnold D. Robbins <arnold@skeeve.com> 824 825 * array.c, profile.c, cint_array.c, builtin.c, interpret.h, 826 main.c: Update copyright years. 827 8282020-01-23 Arnold D. Robbins <arnold@skeeve.com> 829 830 * array.c (sort_up_value_type): Handle other types of nodes, 831 in case someone applies PROCINFO["sorted_in"] to SYMTAB or 832 FUNCTAB. This threw an assertion error if assertions were 833 enabled. Thanks to John Namam <gawker@703n.com> for the report. 834 (asort_actual): Disallow SYMTAB and FUNCTAB as first arguments. 835 * TODO: Note that we should should eventually allow SYMTAB/FUNCTAB 836 passed to asort/asorti if a destination array is provided. (The 837 current code breaks right now.) 838 8392020-01-19 Arnold D. Robbins <arnold@skeeve.com> 840 841 * profile.c (pp_top): New macro. 842 (pprint): Be smarter for print[f] with redirection that was 843 parenthesized, to not print `printf(("hello\n")) > "..."'. 844 845 Unrelated: 846 * compile, config.guess, config.rpath, config.sub, depcomp: Updated 847 from GNULIB. 848 8492020-01-14 Andrew J. Schorr <aschorr@telemetry-investments.com> 850 851 * cint_array.c (cint_array_init): Fix off-by-one error in array 852 bounds overflow check for an NHAT value set in the environment. 853 Thanks to Michael Builov <mbuilov@gmail.com> for the report. 854 8552020-01-08 Arnold D. Robbins <arnold@skeeve.com> 856 857 Fix a number of subtle memory leaks. Thanks to the 858 combination of MEMDEBUG and valgrind for finding them. 859 860 * builtin.c (do_print): Unref tmp if force_string_ofmt 861 returned something different. 862 (call_sub, call_match, call_split_func): Free any 863 created regexp. 864 * debug.c (do_eval): Free the node holding the @eval function 865 when done with it. 866 * field.c (init_fields): Create fields_arr[0] and Nnull_field 867 in a rational fashion. 868 * interpret.h (Op_assign_concat): Handle newly created node 869 better. 870 871 Unrelated: 872 873 * interpret.h (Op_subscript): When retrieving from SYMTAB, check 874 for Node_var_new; variables can exist but have not been assigned 875 a value. Thanks to Denis Shirokov <cosmogen@gmail.com> for the report. 876 877 Unrelated: 878 879 * builtin.c (do_typeof): Handle Node_array_ref also. Thanks to 880 Denis Shirokov <cosmogen@gmail.com> for the report. 881 8822019-12-22 Arnold D. Robbins <arnold@skeeve.com> 883 884 * config.guess: Updated from GNULIB. 885 8862019-12-22 Jannick <thirdedition@gmx.net> 887 888 * configure.ac: Hardcode the shared object extension to dll 889 on Windows platforms, i.e.whenever EXEEXT is '.exe'. 890 8912019-12-22 Arnold D. Robbins <arnold@skeeve.com> 892 893 * gettext.h: Update from gettext 0.20.1. 894 * NEWS: Updated. 895 8962019-12-18 Paul Eggert <eggert@Penguin.CS.UCLA.EDU> 897 898 Fix memcpy issue found by -fsanitize=undefined 899 * field.c (set_record): Don't memcpy (databuf, NULL, 0), 900 as the C standard says the resulting behavior is undefined. 901 9022019-12-16 Arnold D. Robbins <arnold@skeeve.com> 903 904 * awkgram.y, command.y: Upgrade to Bison 3.5. 905 * NEWS: Updated. 906 9072019-11-21 Arnold D. Robbins <arnold@skeeve.com> 908 909 * config.rpath: Update from GNULIB. 910 9112019-11-10 Arnold D. Robbins <arnold@skeeve.com> 912 913 * compile, config.rpath: Update from GNULIB. Adds msys support. 914 9152019-11-03 Arnold D. Robbins <arnold@skeeve.com> 916 917 * field.c (get_field): Remove special case code for fpat_parse_field. 918 Fixes a bug reported by Ed Morton <mortoneccc@comcast.net>. 919 9202019-10-19 Arnold D. Robbins <arnold@skeeve.com> 921 922 * compile, depcomp: Update from GNULIB. 923 9242019-10-13 Arnold D. Robbins <arnold@skeeve.com> 925 926 Fix handling of assigning @/.../ to FS and RS. Thanks 927 to Stephane Chazelas <stephane.chazelas@gmail.com> 928 for the report. 929 930 * field.c (set_FS): Check for REGEX in the flags. 931 * io.c (set_RS): Ditto. 932 9332019-10-04 Arnold D. Robbins <arnold@skeeve.com> 934 935 * config.guess, config.sub, install-sh: Updated from GNULIB. 936 9372019-09-30 John E. Malmberg <wb8tyw@qsl.net> 938 939 * custom.h: OpenVMS does not provide ULLONG_MAX 940 9412019-09-20 Florian Weimer <fweimer@redhat.com> 942 943 * configure.ac (PRINTF_HAS_F_FORMAT): Include <string.h> for 944 strcmp. 945 (PRINTF_HAS_A_FORMAT): Likewise. 946 * configure: Regenerate. 947 9482019-09-17 Arnold D. Robbins <arnold@skeeve.com> 949 950 * awkgram.y, commands.y: Upgrade to Bison 3.4.2. 951 * NEWS: Updated. 952 9532019-09-10 Andrew J. Schorr <aschorr@telemetry-investments.com> 954 955 * awk.h (block_header): Remove cnt field and replace it with 956 highwater. If MEMDEBUG is defined, add active counter. 957 * node.c (r_getblock): The cnt field was replaced by active. Update 958 highwater as appropriate. 959 (r_freeblock): Decrement the active counter (renamed from cnt). 960 (more_blocks): Bump the highwater counter (renamed from cnt). 961 * builtin.c (do_typeof): When providing PROCINFO debug memory stats, 962 replace count_<blah> with <blah>_active and <blah>_highwater. When 963 MEMDEBUG is not set, we calculate the active value by subtracting the 964 number of elements in the free list from the highwater value. 965 9662019-09-01 Arnold D. Robbins <arnold@skeeve.com> 967 968 * profile.c (pp_list, pp_concat): Fix use-after-free errors 969 in both routines. Thanks to valgrind and Andy's MEMDEBUG code. 970 9712019-09-01 Andrew J. Schorr <aschorr@telemetry-investments.com> 972 973 * awk.h (block_header): Add cnt field even when MEMDEBUG is not 974 defined, and add a name field. 975 * node.c (nextfree): Initialize new name field. 976 (more_blocks): Bump nextfree[id].cnt by BLOCKCHUNK. 977 * builtin.c (do_typeof): When the 1st argument is PROCINFO and the 978 2nd arg is provided, return new "count_<blah>" fields containing 979 the memory allocation accounts of the various block types. 980 9812019-08-30 Andrew J. Schorr <aschorr@telemetry-investments.com> 982 983 * configure.ac (.developing): Add -DMEMDEBUG to CFLAGS. 984 * awk.h (block_header): If MEMDEBUG is defined, add cnt field 985 to track the number of allocations. 986 (getblock, freeblock): When MEMDEBUG is defined, replace these 987 macros with calls to new functions r_getblock and r_freeblock. 988 * node.c (r_getblock, r_freeblock): New functions that simply 989 use malloc and free when MEMDEBUG is defined. 990 9912019-08-30 Andrew J. Schorr <aschorr@telemetry-investments.com> 992 993 * interpret.h (r_interpret): For Op_match_rec, unref if a 994 dynamic regexp. Fixes another memory issue. See the thread starting 995 at https://lists.gnu.org/archive/html/bug-gawk/2019-08/msg00023.html. 996 9972019-08-29 Arnold D. Robbins <arnold@skeeve.com> 998 999 Restore a modified version of the change of 1000 2016-05-03, which used realloc to shrink the buffer. 1001 1002 * builtin.c (format_tree): Reduce INITIAL_OUT_SIZE to 64. 1003 At the end, call realloc only if there is more 1004 than (2 * INITIAL_OUT_SIZE) bytes to give back. 1005 10062019-08-23 Arnold D. Robbins <arnold@skeeve.com> 1007 1008 * main.c (main): Fix whitespace issues. 1009 * re.c (re_update): Small code cleanup in handling t->re_cnt. 1010 Thanks to Andrew Schorr. 1011 10122019-08-21 Arnold D. Robbins <arnold@skeeve.com> 1013 1014 * config.guess: Updated from GNULIB. 1015 10162019-08-15 Arnold D. Robbins <arnold@skeeve.com> 1017 1018 Revert a6df7afc605079df7d85318846a522ef64aaa44d, change of 1019 2016-05-03, which used realloc to shrink the buffer, in an 1020 attempt to save memory. In actuality, it could cause increased 1021 memory usage, even though there was no memory leak. See 1022 https://lists.gnu.org/archive/html/bug-gawk/2019-08/msg00003.html 1023 and the rest of thread for more detail. 1024 1025 * builtin.c (format_tree): Don't use realloc, just call 1026 make_str_node with the original buffer. Remove `olen_final' 1027 variable and its use. 1028 10292019-08-15 Andrew J. Schorr <aschorr@telemetry-investments.com> 1030 1031 Reduce memory usage by only compiling the IGNORECASE version of 1032 regexp when it's actually needed. 1033 1034 * awkgram.y (make_regnode): Only compile the regular version. 1035 * re.c (re_cache_get): New function. 1036 (re_update): Use it as appropriate. 1037 10382019-07-23 Koichi Murase <myoga.murase@gmail.com> 1039 1040 * builtin.c (do_xor): Remove unneeded local variable `i'. Simplify 1041 the loop's computation. 1042 (do_and): Improve the initial value for the result. 1043 10442019-07-23 Andrew J. Schorr <aschorr@telemetry-investments.com> 1045 1046 Fix reporting of negative arguments for and(), or() and xor(). 1047 Thanks to Koichi Murase <myoga.murase@gmail.com> for the 1048 report. 1049 1050 * builtin.c (do_and): Use nargs instead of i in the loop to 1051 check for non-numeric and negative arguments. 1052 (do_or): Ditto. 1053 (do_xor): Ditto. 1054 10552019-07-23 Arnold D. Robbins <arnold@skeeve.com> 1056 1057 * Checklist: Updated. 1058 10592019-07-21 Arnold D. Robbins <arnold@skeeve.com> 1060 1061 * command.y, custom.h, eval.c, ext.c, field.c, io.c, 1062 msg.c, node.c, nonposix.h, re.c: Update copyright year. 1063 * NEWS: Updated. 1064 * README: Updated. 1065 10662019-07-16 Arnold D. Robbins <arnold@skeeve.com> 1067 1068 * TODO: Updated. 1069 * awkgram.y [GRAMMAR]: Change some lint warnings to use lintwarn. 1070 (yylex): Ditto. 1071 * field.c (choose_fs_function): Ditto. 1072 * main.c (main): Ditto. 1073 * node.c (parse_escape): Ditto. 1074 10752019-07-09 Arnold D. Robbins <arnold@skeeve.com> 1076 1077 * gawkapi.h: Update copyright year, fix some spelling errors. 1078 10792019-07-08 Andrew J. Schorr <aschorr@telemetry-investments.com> 1080 1081 * gawkapi.h (gawk_api_major_version): Bump from 2 to 3 because the 1082 namespace changes altered the function signatures in gawk_api_t. 1083 And add a comment at the top of the structure with a reminder that 1084 the version number should be bumped whenever the struct is altered 1085 in any way. 1086 10872019-06-30 Arnold D. Robbins <arnold@skeeve.com> 1088 1089 * interpret.h (r_interpret): Fix two more cases of warning 1090 about gawk extensions. 1091 * awkgram.y [GRAMMAR]: And two more cases here. Thanks to 1092 Mark Krauze <daburashka@ya.ru> for making me look for them. 1093 1094 Unrelated: 1095 1096 * config.sub: Updated from GNULIB. 1097 10982019-06-26 Arnold D. Robbins <arnold@skeeve.com> 1099 1100 * symbol.c (install): Strip off any leading `awk::' before 1101 installing a symbol. Thanks to Andrew Schorr for the 1102 report. 1103 11042019-06-21 Arnold D. Robbins <arnold@skeeve.com> 1105 1106 * config.guess, config.sub: Updated from GNULIB. 1107 * awkgram.y (get_src_buf): Set buffers to zero to avoid 1108 possible issues with accessing uninitialized memory. 1109 Thanks to valgrind, as pointed out by Nadezhda Vyukova 1110 <qniva@yandex.ru>. 1111 * NEWS, README.git: Fix some typos. 1112 11132019-06-19 Arnold D. Robbins <arnold@skeeve.com> 1114 1115 * re.c (make_regexp): If do_posix, have {} in ok_to_escape. 1116 Thanks to Ed Morton <mortoneccc@comcast.net> for the report. 1117 11182019-06-18 Arnold D. Robbins <arnold@skeeve.com> 1119 1120 * 5.0.1: Release tar ball made. 1121 11222019-06-06 Arnold D. Robbins <arnold@skeeve.com> 1123 1124 * main.c (usage): Update comment for translators. 1125 11262019-06-02 Arnold D. Robbins <arnold@skeeve.com> 1127 1128 * awkgram.c, command.c: Update to Bison 3.4. 1129 * NEWS: Updated. 1130 11312019-05-22 Arnold D. Robbins <arnold@skeeve.com> 1132 1133 Add --lint=no-ext. Suggest by Mark Krauze <daburashka@ya.ru>. 1134 1135 * NEWS: Updated. 1136 * awk.h (DO_LINT_EXTENSIONS): New enum. 1137 (do_lint_extensions): New macro. 1138 * awkgram.y (yylex, snode): Use do_lint_extensions instead of 1139 do_lint where appropriate. 1140 * builtin.c (do_length): Ditto. 1141 * eval.c (set_IGNORECASE, set_BINMODE): Ditto. 1142 (set_LINT): Revise logic. 1143 * field.c (do_split, set_FIELDWIDTHS, chose_fs_function, set_FPAT): 1144 Ditto. 1145 * io.c (set_RS): Ditto. 1146 * main.c (usage): Updated. 1147 (parse_args): Revise the code to handle --lint=no-ext. 1148 11492019-05-10 Arnold D. Robbins <arnold@skeeve.com> 1150 1151 * NEWS: Updated. 1152 11532019-05-06 Arnold D. Robbins <arnold@skeeve.com> 1154 1155 In sandbox mode, disallow assigning filenames that weren't 1156 there initially. Thanks to Nolan Woods <nolan_w@sfu.ca> for 1157 pointing out the gap. 1158 1159 * awk.h (init_argv_array): Add declaration. 1160 * cint_array.c (argv_store): New vtable for ARGV. 1161 (argv_shadow_array): New file static variable 1162 (argv_store, init_argv_array): New functions. 1163 * main.c (init_args): If in sandbox mode, build shadow array of 1164 initial argv values. Call init_argv_array. 1165 11662019-05-05 Arnold D. Robbins <arnold@skeeve.com> 1167 1168 * ext.c (load_ext): Fix the message in the version for when 1169 extensions are not available. 1170 11712019-04-24 Arnold D. Robbins <arnold@skeeve.com> 1172 1173 * msg.c (msg): Use %ld for the line number value. Thanks to 1174 Michal Jaegermann for the report. 1175 11762019-04-23 Arnold D. Robbins <arnold@skeeve.com> 1177 1178 * config.sub: Updated from GNULIB. 1179 11802019-02-21 Andrew J. Schorr <aschorr@telemetry-investments.com> 1181 1182 * interpret.h (Op_store_field): Move call to force_string to 1183 here from unfield. Speeds up work with fields that are numeric 1184 only. Thanks to Tom Gray <tom_gray@keysight.com> for the report. 1185 11862019-04-21 Arnold D. Robbins <arnold@skeeve.com> 1187 1188 * POSIX.STD: Updated. 1189 * field.c (get_field): If NF == -1, check parse high water to 1190 set in_middle correctly. Thanks to <oguzismailuysal@gmail.com> 1191 for the report. 1192 11932019-04-18 Arnold D. Robbins <arnold@skeeve.com> 1194 1195 * msg.c (msg): Add an undocumented feature. "Use the Source, Luke." 1196 * Makefile.am (EXTRA_DIST): Add ChangeLog.1 to the list. Ooops. 1197 * CheckList: Updated. 1198 1199 Fix core dump reported by Steve Kemp <steve@steve.org.uk>: 1200 1201 * awk.h (errcount): Declare. 1202 * awkgram.y (errcount): No longer static. 1203 * command.y (dbg_errcount): Renamed from errcount. 1204 * main.c (catchsig, catchsegv): If errcount > 0, just exit, 1205 don't abort. 1206 12072019-04-12 Arnold D. Robbins <arnold@skeeve.com> 1208 1209 * configure.ac: Update version to 5.0.0. 1210 * configure: Regenerated. 1211 * ChangeLog.1: Rotated ChangeLog into this file. 1212 * ChangeLog: Created anew for gawk 5.0.0 and on. 1213 * README: Bump version to 5.0.0. 1214 * 5.0.0: Release tar ball made. 1215