pkgsrc-WIP-cvs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: wip/mawk

Module name:    wip
Committed by:   cheusov
Date:           Wed Aug 25 20:00:00 UTC 2010

Modified Files:
        wip/mawk: Makefile distinfo

Log Message:

Update to 1.3.4-20100625

   Major changes:
        + correct translation of octal and hex escapes for system regular
          expression library.
        + modify configure script to support --program-suffix, etc.
        + add Debian package scripts, for "mawk-cur".
        + add RPM spec-file.
        + move release- and patch-level values from version.c to patchlev.h
          to simplify packaging scripts.

        + correct translation of "^{" pattern for system regular expression
          library  (report by Elias Pipping).
        + fix sentence fragment in README (report by Elias Pipping).

        + cleanup gcc warnings for 64-bit platform, e.g., use size_t rather
          than unsigned, etc.
        + fix warnings from clang --analyze
        + update/improve configure script
          + modify CF_GCC_VERSION to ignore stderr, e.g., from c89 alias
          + modify CF_GCC_WARNINGS, moving -W and -Wall into the list to check,
            since c89 alias for gcc complains about these options.
          + add --disable-leaks and related options, for testing.
          + add lint rule to makefile.
          + add configure-check for ctags to work with pkgsrc.
        + amend change of array.w, fixes a regression in "delete" (report by
          Heiner Marxen).

        + modify split() to handle embedded nulls in the string to split, e.g.,
                BEGIN{s="a\0b"; print length(s); n = split(s,f,""); print n}
          (report by Morris Lee).

        + modify array.w to update table pointers in the special case where
          an array is known to have string-indices, but is later indexed via
          integers.  The problem occurs when the array grows large enough to
          rehash it, e.g.,
                BEGIN{a["n"];for(i=1;i<1000;++i)printf "%d\n", a[i]; }
          (report by Morris Lee).

        + increase size of reference-count for strings to unsigned.  It was an
          unsigned short, which prevented using arrays larger than 64k, e.g.,
                BEGIN{for(i = 1; i <= 65550; ++i){if(i >= 65534 && i<=65537) 
print i; s[i] = "a"}; delete s;}
          (report by Morris Lee).

        + add special case for Solaris 10 (and up) to configure check

        + refactored configure check CF_REGEX

        + add a configure check for large files (report by Sean Kumar).

        + modify check in collect_RE() to show the actual limit value, e.g.,
          MIN_SPRINTF-2 used for built-in regular expressions.

        + increase MIN_SPRINTF, used as limit on regular-expression size, to
          match the MAX_SPLIT value, i.e., slightly more than doubling the size
          (report by Markus Gnam).

        + further modify makefile to build outside the source-tree.

        + modify makefile and mawktest to use relative path again, since the
          existing script did not work with openSUSE's build (patch by Guido

        + fix makefile's .c.i rule, which lacked CPP definition.

        + update mawktest.bat script to more/less correspond with mawktest,
          for Win32 console except where echo command does not handle the
          required quoting syntax.

        + add vs6.mak, for Visual Studio 6.

        + modify mawktest script to report results from all tests, rather than
          halting on the first failure.

        + add limit-check after processing match(test, "[^0-9A-Za-z]") to
          ensure the internal trailing null of the test-string is not mistaken
          for part of the string, i.e., RSTART, RLENGTH are computed correctly
          (report by Markus Gnam).

        + modify parsing of -W option to use comma-separated values, e.g.,
          "-Wi,e" for "-Winteractive" and "-Werror".

        + add timestamp to scancode.c, to help manage revisions.

        + improve configure macro CF_XOPEN_SOURCE, making it remove possibly
          conflicting definitions before adding new ones.

        + update config.guess and config.sub

        > patches by Jan Psota:

        + improve buffering for -Winteractive option.

        + allow multiple single-character flags after -W, e.g., "-Wie" for
          "-Winteractive" and "-Werror" to permit these to be passed on a
          "#"-line of a shell script, e.g.,
                #!/usr/bin/mawk -Wie

        > patches by Jonathan Nieder:

        + add new M_SAVE_POS and M_2JC operation codes (states) to the
          built-in regular expression engine.  Use these to reimplement
          m* (closure), to provide a way to avoid infinite looping on
          matches against empty strings.  This change requires
          the workaround for gawk's noloop1 testcase from 20090726.

        + improve buffer-overflow check for string_buff.

        + fix collect_RE to treat "[^]]" as a character class (meaning "not a
          closing bracket") but "[^^]]" not as one.  This also requires
          initializing the local "start of character class" variable to NULL
          rather than the beginning of the string, to avoid an invalid array
          access when collecting expressions such as "^text".

        + within a character class and not followed by a :, ., or ~, a "[" is
          just like any other character.  This way, you can tell mawk to scan
          for a literal [ character with "mawk /[[]/", and you can scan for a [
          or ] with "mawk /[][]/".  Also clean up the relevant loop in
          do_class() to make it a bit more readable.

        + outside a character class, a "]" is just like any other character.

        + prevent do_class() from scanning past the end, e.g., if the
          terminating zero byte was escaped.

        + fix regular-expression parsing when a right parenthesis ")" is
          found without a preceding left parenthesis.

        + fix resetting of position stack when backtracking.

        + modify regular-expression engine to avoid exponential running time
          for some regular expression matches in which the first match mawk
          finds extends to the end of the string.  This is a new fix for the
          gawk noloop2 test, added here for regression testing.

To generate a diff of this commit:
cvs -z3 rdiff -u -r1.3 -r1.4 wip/mawk/distinfo
cvs -z3 rdiff -u -r1.5 -r1.6 wip/mawk/Makefile

To view a diff of this commit:

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users 
worldwide. Take advantage of special opportunities to increase revenue and 
speed time-to-market. Join now, and jumpstart your future.
pkgsrc-wip-cvs mailing list

Home | Main Index | Thread Index | Old Index