In perl.git, the branch smoke-me/khw-xx has been created

<http://perl5.git.perl.org/perl.git/commitdiff/39f1c1d3042422fddd94db76eba28330e7f7a5b8?hp=0000000000000000000000000000000000000000>

        at  39f1c1d3042422fddd94db76eba28330e7f7a5b8 (commit)

- Log -----------------------------------------------------------------
commit 39f1c1d3042422fddd94db76eba28330e7f7a5b8
Author: Karl Williamson <[email protected]>
Date:   Sat Sep 27 17:13:42 2014 -0600

    regcomp.c: Properly dereference a ptr
    
    UTF8_IS_INVARIANT takes a byte as its argument, not a ptr.  This bug was
    introduced by 62a59291 in 5.21.4.  It doesn't probably cause bugs
    because the ptr is always too big to be an invariant, but it slows
    things down somewhat by not taking a shortcut it could.
    
    It turns out that there is a discrepency between the APIs of the
    UTF8-foo macros.  Some take a byte, and some a string ptr.

M       regcomp.c

commit 03ddc672ee4d3cafb3d0caa1c63434792931dc34
Author: Karl Williamson <[email protected]>
Date:   Sun Sep 21 22:07:58 2014 -0600

    Suppress some Solaris warnings
    
    We get an integer overflow message when we left shift a 1 into the
    highest bit of a word.  This changes the 1's into 1U's to indicate
    unsigned.  This is done for all the flag bits in the affected word, as
    they could get reorderd by someone in the future, unintentionally
    reintroducing this problem again.

M       op.h
M       op_reg_common.h
M       regexp.h

commit c56c436243db367c90aa7ea36caf86dd738f7d44
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 24 12:51:46 2014 -0600

    op_reg_common.h: Update comment
    
    The PL file previously referred to has been deleted, and replaced by a
    different one.

M       op_reg_common.h

commit d7c7193343c3e49ef7c191c8a5beb7d6fc9a9c1e
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 24 12:49:13 2014 -0600

    B/Makefile.PL: Allow constants to be long/unsigned
    
    This looks for numerical constants, but failed to see long and/or
    unsigned ones, which have suffixes U and/or L, or lowercase u and/or l.

M       ext/B/Makefile.PL

commit e529c894ed6bcb8c72eaa3d10ce481ad3d0af06e
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 22 11:56:48 2014 -0600

     Deprecate multiple "x" in "/xx"
    
     It is planned for a future Perl release to have /xx mean something
     different from just /x.  To prepare for this, this commit raises a
     deprecation warning if someone currently has this usage.  A grep of CPAN
     did not turn up any instances of this, but this is to be safe anyway.
    
     The added code is more general than actually needed, in case we want to
     do this for another flag.

M       ext/re/re.pm
M       ext/re/t/reflags.t
M       pod/perldelta.pod
M       pod/perldiag.pod
M       regcomp.c
M       regexp.h
M       t/re/reg_mesg.t
M       toke.c

commit 5bfc7d489df24612c0e06f0a8a73aea60cb8012e
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 22 11:54:37 2014 -0600

    toke.c: Clarify comment

M       toke.c

commit 9ef678d7d940f711db38608ae93ac47e8e1eff1f
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 17 17:59:39 2014 -0600

    op_reg_common.h: White-space only
    
    Align columns vertically

M       op_reg_common.h

commit d871241c4201328a9437a07cb8d10001c3b361d2
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 17 17:55:16 2014 -0600

    Make space for /xx flag
    
    This doesn't actually use the flag yet.
    We no longer have to make version-dependent changes to
    ext/Devel-Peek/t/Peek.t, (it being in /ext) so this doesn't

M       dump.c
M       ext/B/t/concise-xs.t
M       ext/Devel-Peek/t/Peek.t
M       ext/re/re.pm
M       lib/B/Deparse.pm
M       op.h
M       op_reg_common.h
M       regexp.h
M       regnodes.h

commit 14dda03df372cb75a460f17edde239af13782a0d
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 17 17:57:17 2014 -0600

    op_reg_common.h: #define in terms of more basic one
    
    The mask to copy bits should always include at least the compile-time
    bits.  By defining it in terms of the compile-time bits, we make it
    easier to change and understand.

M       op_reg_common.h

commit 864f9b659bc29eb00cfe9a90f55ed089ec33266e
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 17 12:16:12 2014 -0600

    Up regex flags limit for (??{})
    
    Previously the regex pattern compilation flags needed for this construct
    would fit into an 8-bit byte.  This conveniently fits into the flags
    structure element of a regnode.  There are changes coming that require
    more than 8 bits, so in preparation, this commit adds an argument to the
    node that implements (??{}) (31-bits usable for flags), and moves the
    storage to that.

M       op_reg_common.h
M       pod/perldebguts.pod
M       regcomp.c
M       regcomp.sym
M       regexec.c
M       regnodes.h

commit 6df1bbfdfc9e92c77801cc091feec69c7dcde523
Author: Karl Williamson <[email protected]>
Date:   Tue Sep 16 17:19:52 2014 -0600

    regcomp.c: Add assertions
    
    This changes from assuming that certain things are constant to using a
    variable instead, and then asserting that the variable matches the
    constant.

M       regcomp.c

commit 5bbc5892def1909f6ebd9d418e4472410ae072ba
Author: Karl Williamson <[email protected]>
Date:   Tue Sep 16 17:16:47 2014 -0600

    regcomp.c: Add a function and use it
    
    This adds a function to allocate a regnode with 2 32-bit arguments, and
    uses it, rather than the ad-hoc code that did the same thing previously.
    This is in preparation for this code being used in a 2nd place in a
    future commit.

M       embed.fnc
M       embed.h
M       proto.h
M       regcomp.c
M       regcomp.h

commit a647ecaaa22e933e1cb1ee4ae7ec5259b0cb6186
Author: Karl Williamson <[email protected]>
Date:   Tue Sep 16 16:26:36 2014 -0600

    regcomp.sym: ANYOF nodes have an argument
    
    Plus a bitmap, but they always have an argument besides, contrary to
    what was specified here.  Future commits rely on this, whereas
    heretofore this error was harmless.

M       pod/perldebguts.pod
M       regcomp.sym
M       regnodes.h

commit 9e876e7ec2a02756dcfe08803dc6f45436fdc29b
Author: Karl Williamson <[email protected]>
Date:   Tue Sep 16 10:00:32 2014 -0600

    regcomp.h: Add comment

M       regcomp.h

commit 6563c074faa89181d2e816fcc87fee1832707921
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 15 12:14:17 2014 -0600

    regcomp.c: Outdent line to align with neighbors

M       regcomp.c

commit e697a6e8156dab07f455fc33c0c12056dafd5640
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 15 11:30:25 2014 -0600

    regcomp.h: Remove obsolete #defines
    
    These internal definitions are no longer used.

M       regcomp.h

commit b82c8ab43f9dc0a8a253b994c45aff1e9f38bc8a
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 15 11:29:43 2014 -0600

    regcomp.h: Use existing macro instead of reinventing

M       regcomp.h

commit 552fd2759b3eae850522c172e7e4bc102ff1c705
Author: Karl Williamson <[email protected]>
Date:   Mon Sep 15 08:46:35 2014 -0600

    regcomp.c: Extract duplicated code to fcn
    
    This causes the nearly-duplicate code of S_reg_node and S_reganode to be
    placed into a single function, S_regnode_guts.
    
    There is one place where it might not be obvious that this doesn't
    change things.  And that is under DEBUGGING, reg_node() called
    
        Set_Node_Offset(RExC_emit, RExC_parse + (op == END));
    
    and reganode called
    
        Set_Cur_Node_Offset;
    
    However Set_Cur_Node_Offset is defined to be
    
        Set_Node_Offset(RExC_emit, RExC_parse)
    
    and since op will never be END for reganode, the two statements are
    equivalent.

M       embed.fnc
M       embed.h
M       proto.h
M       regcomp.c

commit 253775b19df056c2225f6eea0b50066fd848534c
Author: Karl Williamson <[email protected]>
Date:   Sun Sep 14 22:25:47 2014 -0600

    regcomp.c: Move some statements
    
    These statements are moved to after the debugging code so that the two
    functions are essentially identical before them.  This will allow the
    two to be combined in a future commit.  I verified by testing that the
    debugging info was not affected.

M       regcomp.c

commit ad0effe4c594577b7286e3c0d552300114b1d707
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 17 12:11:21 2014 -0600

    op.h: Move flag bits; comment shared-bit scheme
    
    This changes op.h to correspond with regexp.h.  It moves all the used
    bits up in the word so that if a new shared bit is added, the #error
    will be triggered, alerting the person doing it that things need
    adjusting so binary compatibility is preserved.

M       op.h

commit 61a75f18b2f3d835a3f1a3c780a81020a0c5a6ff
Author: Karl Williamson <[email protected]>
Date:   Wed Sep 17 12:08:41 2014 -0600

    regexp.h: Comment shared-pool free bits scheme

M       regexp.h

commit 2a1fb376093b9228e2316c84768b51c6dcca4371
Author: Karl Williamson <[email protected]>
Date:   Fri Sep 12 14:04:12 2014 -0600

    regexp.h:  Make tentative division of free-bit space
    
    This sets a #define to point in the middle of the free-space, so that
    bits at either end can be added without having to adjust many other
    defines.

M       regexp.h

commit 655d5fa96f6eaa10e68e38a41430ff38a9502433
Author: Karl Williamson <[email protected]>
Date:   Fri Sep 12 13:59:13 2014 -0600

    regexp.h: Define flag bit directly, not indirectly
    
    This #defined a symbol then did a compile time check that it was the
    same as another symbol.  This commit simply defines it as the other
    symbol directly, and moves it to above the other definitions, which it
    no longer is part of.  This prepares for the next commit.

M       regexp.h

commit bf4535883599182c1d2c55a831a56e8012e79a6f
Author: Karl Williamson <[email protected]>
Date:   Fri Sep 12 14:40:03 2014 -0600

    regexp.h Remove unused bit placeholders
    
    We do not need a placeholder for unused flag bits.  And removing them
    makes the generated regnodes.h more accurate as to what bits are
    available.

M       regexp.h
M       regnodes.h

commit cf367e54a58cdb42770035cc3dcaef6ebfa78627
Author: Karl Williamson <[email protected]>
Date:   Thu Sep 11 22:45:06 2014 -0600

    regexp.h: Move regex flag bit positions.
    
    This moves three bits to create a block of unused bits at the beginning.
    The first bit had to be moved to make space for other uses that are
    coming in future commits.  This breaks binary compatibility, so might as
    well move the other two bits so that all the unused bits are
    consolidated at the beginning.
    
    This pool of unused bits is the boundary between the bits that are
    common to op.h and regexp.h (and in op_reg_common.h) and those that are
    separate.  It's best to have all the unused bits there, so when we need
    to use one, it can be taken from either side, as needed, without us
    being trapped into having an available bit, but of the wrong kind.

M       regexp.h
M       regnodes.h
-----------------------------------------------------------------------

--
Perl5 Master Repository

Reply via email to