diff options
author | Karl Williamson <public@khwilliamson.com> | 2011-03-20 10:20:14 -0600 |
---|---|---|
committer | Karl Williamson <public@khwilliamson.com> | 2011-03-20 12:16:12 -0600 |
commit | 9d64099bb0a1ca98620e6124baa4038dd20cf89e (patch) | |
tree | 11f55f82f3097d74b34cf7bb9132c7256c1fbcee /regcomp.c | |
parent | bb3f3ed29b0f43dce867b7564d9573e5222f0366 (diff) | |
download | perl-9d64099bb0a1ca98620e6124baa4038dd20cf89e.tar.gz |
Add depth parameter to reg_namedseq
Diffstat (limited to 'regcomp.c')
-rw-r--r-- | regcomp.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -7632,7 +7632,7 @@ S_regpiece(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth) } -/* reg_namedseq(pRExC_state,UVp) +/* reg_namedseq(pRExC_state,UVp, UV depth) This is expected to be called by a parser routine that has recognized '\N' and needs to handle the rest. RExC_parse is @@ -7675,7 +7675,7 @@ S_regpiece(pTHX_ RExC_state_t *pRExC_state, I32 *flagp, U32 depth) Parsing failures will generate a fatal error via vFAIL(...) */ STATIC regnode * -S_reg_namedseq(pTHX_ RExC_state_t *pRExC_state, UV *valuep, I32 *flagp) +S_reg_namedseq(pTHX_ RExC_state_t *pRExC_state, UV *valuep, I32 *flagp, U32 depth) { char * endbrace; /* '}' following the name */ regnode *ret = NULL; @@ -8439,7 +8439,7 @@ tryagain: Also this makes sure that things like /\N{BLAH}+/ and \N{BLAH} being multi char Just Happen. dmq*/ ++RExC_parse; - ret= reg_namedseq(pRExC_state, NULL, flagp); + ret= reg_namedseq(pRExC_state, NULL, flagp, depth); break; case 'k': /* Handle \k<NAME> and \k'NAME' */ parse_named_seq: @@ -9640,7 +9640,7 @@ parseit: from earlier versions, OTOH that behaviour was broken as well. */ UV v; /* value is register so we cant & it /grrr */ - if (reg_namedseq(pRExC_state, &v, NULL)) { + if (reg_namedseq(pRExC_state, &v, NULL, depth)) { goto parseit; } value= v; |