diff options
author | Hugo van der Sanden <hv@crypt.org> | 2001-04-27 00:33:38 +0100 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2001-04-26 22:35:03 +0000 |
commit | 4f66b38db5464959528af7812bbc138af1cb39d6 (patch) | |
tree | be79900b9ea12450167ba985428d59cf6baa6e4a /regcomp.c | |
parent | 33235a50d090f47e8c1345f546ef4a97abb985d9 (diff) | |
download | perl-4f66b38db5464959528af7812bbc138af1cb39d6.tar.gz |
Re: [PATCH @9846] dumping ANYOF
Message-Id: <200104262233.XAA22352@crypt.compulink.co.uk>
p4raw-id: //depot/perl@9873
Diffstat (limited to 'regcomp.c')
-rw-r--r-- | regcomp.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -3888,6 +3888,7 @@ S_regclass(pTHX_ RExC_state_t *pRExC_state) } if (need_class) { + ANYOF_FLAGS(ret) |= ANYOF_LARGE; if (SIZE_ONLY) RExC_size += ANYOF_CLASS_ADD_SKIP; else @@ -4218,7 +4219,10 @@ S_dumpuntil(pTHX_ regnode *start, regnode *node, regnode *last, SV* sv, I32 l) node = dumpuntil(start, NEXTOPER(node), NEXTOPER(node) + 1, sv, l + 1); } else if (op == ANYOF) { - node = next; + /* arglen 1 + class block */ + node += 1 + ((ANYOF_FLAGS(node) & ANYOF_LARGE) + ? ANYOF_CLASS_SKIP : ANYOF_SKIP); + node = NEXTOPER(node); } else if (PL_regkind[(U8)op] == EXACT) { /* Literal string, where present. */ |