diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 64 |
1 files changed, 64 insertions, 0 deletions
@@ -9,6 +9,11 @@ in PROCINFO["argv"][0..argc-1]. (load_procinfo): Call load_procinfo_argv. +2015-05-11 Arnold D. Robbins <arnold@skeeve.com> + + * awk.h, awkgram.y, builtin.c, eval.c profile.c, re.c: + Change Node_hardregex to Node_typedregex everywhere. + 2015-05-05 Arnold D. Robbins <arnold@skeeve.com> * awkgram.y (yylex): Yet Another Fix for parsing bracket @@ -19,6 +24,14 @@ * config.guess, config.sub: Get latest versions. + Make profiling for hard regexes work. + + * profile.c (pp_string_or_hard_regex): Renamed from pp_string. + Add bool param for hard regex and add @ if so. + (pp_string): New function, calls pp_string_or_hard_regex. + (pp_hard_regex): New function, calls pp_string_or_hard_regex. + (pprint): Adjust to print a hard regex correctly. + 2015-05-01 Arnold D. Robbins <arnold@skeeve.com> * awkgram.y: Make sure values are not null in param list. @@ -43,6 +56,11 @@ 2015-04-28 Arnold D. Robbins <arnold@skeeve.com> + * builtin.c (isarray): Add lint warning that isarray() + is deprecated. + +2015-04-28 Arnold D. Robbins <arnold@skeeve.com> + * awkgram.y (yylex): Rework the bracket handling from zero. Thanks to Michal Jaegermann for yet another test case. @@ -129,6 +147,11 @@ * builtin.c (do_sub): Improve some variable names for readability and add / expand some comments. + Unrelated: + + * builtin.c (call_sub, call_match, call_split_func): Allow for + regex to be Node_hardregex. + 2015-04-14 Andrew J. Schorr <aschorr@telemetry-investments.com> Arnold D. Robbins <arnold@skeeve.com> @@ -136,6 +159,7 @@ to malloc, test for final amount after all matches done and need to copy in the final part of the original string. + 2015-04-13 Arnold D. Robbins <arnold@skeeve.com> * regcomp.c (analyze): Prevent malloc(0). @@ -207,6 +231,14 @@ Thanks to Andrew Schorr for finding the problem and supplying initial code; I did it slightly differently. +2015-04-03 Arnold D. Robbins <arnold@skeeve.com> + + * awk.h (force_string): If hard_regex, return string text of the regex. + (force_string, force_number): If hard_regex, return Nnull_string. + * awkgram.y: Fix ~ and !~ with @/.../. + * eval.c (setup_frame): Handle a hard regex. + * re.c (avoid_dfa): Ditto. + 2015-04-02 Andrew J. Schorr <aschorr@telemetry-investments.com> * NEWS: Rename div to intdiv. @@ -271,6 +303,24 @@ * interpret.h (r_interpret): If calling do_sub, do it through call_sub_func(). +2015-03-19 Arnold D. Robbins <arnold@skeeve.com> + + * re.c (re_update): Handle hard regex - for sub/gsub/gensub. + * awkgram.y (grammar): Add support for hard_regex with ~ and !~; + allowed only on the right hand side. + (mk_rexp): Handle a hard regex. + +2015-03-18 Arnold D. Robbins <arnold@skeeve.com> + + * builtin.c (do_typeof): Be smarter about checking for uninitialized + values; can now detect and return "untyped" for such values. + * awkgram.y (yylex): Collect @/.../ entirely in the lexer and return + a new terminal (HARD_REGEX). + (regexp): Reverted to just a regular awk regexp constant. + (hard_regexp): New nonterminal, can be used only in direct + assignment and as an argument in function call. New set of nonterminals + for function call expression lists. More work still to do. + 2015-03-18 Arnold D. Robbins <arnold@skeeve.com> * config.guess, config.sub: Updated, from libtool 2.4.6. @@ -312,6 +362,20 @@ a long-standing problem where `-lm' was used twice in the final compilation line. +2015-02-27 Arnold D. Robbins <arnold@skeeve.com> + + Start on making regexp a real type. + + * awk.h (Node_hardregex): New node type. + (do_typeof): Add declaration. + * awkgram.y: Make @/.../ a hard regex. + (tokentab): New entry for typeof() function. + (snode): Try to handle typeof(). + (make_regnode): Handle Node_hardregex. + * builtin.c (do_typeof): New function. + * eval.c (nodetypes): Add Node_hardregex. + * re.c (re_update): Check for hardregex too in assert. + 2015-02-24 Arnold D. Robbins <arnold@skeeve.com> * POSIX.STD: Update copyright year. |