Change 29420 by [EMAIL PROTECTED] on 2006/11/29 15:26:00

        Subject: Re: Fix \k<foo> preceded by literal
        From: demerphq <[EMAIL PROTECTED]>
        Date: Wed, 29 Nov 2006 16:18:34 +0100
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

... //depot/perl/regcomp.c#517 edit
... //depot/perl/regcomp.h#103 edit
... //depot/perl/t/op/re_tests#110 edit

Differences ...

==== //depot/perl/regcomp.c#517 (text) ====
Index: perl/regcomp.c
--- perl/regcomp.c#516~29413~   2006-11-29 01:30:02.000000000 -0800
+++ perl/regcomp.c      2006-11-29 07:26:00.000000000 -0800
@@ -6472,6 +6472,7 @@
                    case 'P':
                     case 'N':
                     case 'R':
+                    case 'k':
                        --p;
                        goto loopdone;
                    case 'n':

==== //depot/perl/regcomp.h#103 (text) ====
Index: perl/regcomp.h
--- perl/regcomp.h#102~29394~   2006-11-27 00:02:35.000000000 -0800
+++ perl/regcomp.h      2006-11-29 07:26:00.000000000 -0800
@@ -376,7 +376,9 @@
 #else
 EXTCONST U8 PL_varies[] = {
     BRANCH, BACK, STAR, PLUS, CURLY, CURLYX, REF, REFF, REFFL,
-    WHILEM, CURLYM, CURLYN, BRANCHJ, IFTHEN, SUSPEND, CLUMP, 0
+    WHILEM, CURLYM, CURLYN, BRANCHJ, IFTHEN, SUSPEND, CLUMP,
+    NREF, NREFF, NREFFL,
+    0
 };
 #endif
 
@@ -751,3 +753,4 @@
 
 #endif /* DEBUG RELATED DEFINES */
 
+

==== //depot/perl/t/op/re_tests#110 (text) ====
Index: perl/t/op/re_tests
--- perl/t/op/re_tests#109~29413~       2006-11-29 01:30:02.000000000 -0800
+++ perl/t/op/re_tests  2006-11-29 07:26:00.000000000 -0800
@@ -1193,3 +1193,9 @@
 (foo)(\R2)     foofoo  y       $1-$2   foo-foo
 (foo)(\R2)(foo)(\R2)   foofoofoofoo    y       $1-$2-$3-$4     foo-foo-foo-foo
 (([abc]+) \R1)(([abc]+) \R1)   abc abccba cba  y       $2-$4   abc-cba
+
+/(?'n'foo) \k<n>/      ..foo foo..     y       $1      foo
+/(?'n'foo) \k<n>/      ..foo foo..     y       $+{n}   foo
+/(?<n>foo) \k'n'/      ..foo foo..     y       $1      foo
+/(?<n>foo) \k'n'/      ..foo foo..     y       $+{n}   foo
+/(?<as>as) (\w+) \k<as> (\w+)/ as easy as pie  y       $1-$2-$3        
as-easy-pie
End of Patch.

Reply via email to