| 301 |
/* 60 */ |
/* 60 */ |
| 302 |
"(*VERB) not recognized\0" |
"(*VERB) not recognized\0" |
| 303 |
"number is too big\0" |
"number is too big\0" |
| 304 |
"subpattern name expected after (?&\0" |
"subpattern name expected\0" |
| 305 |
"digit expected after (?+"; |
"digit expected after (?+"; |
| 306 |
|
|
| 307 |
|
|
| 498 |
|
|
| 499 |
if (c == 0) *errorcodeptr = ERR1; |
if (c == 0) *errorcodeptr = ERR1; |
| 500 |
|
|
| 501 |
/* Non-alphamerics are literals. For digits or letters, do an initial lookup in |
/* Non-alphanumerics are literals. For digits or letters, do an initial lookup |
| 502 |
a table. A non-zero result is something that can be returned immediately. |
in a table. A non-zero result is something that can be returned immediately. |
| 503 |
Otherwise further processing may be required. */ |
Otherwise further processing may be required. */ |
| 504 |
|
|
| 505 |
#ifndef EBCDIC /* ASCII coding */ |
#ifndef EBCDIC /* ASCII coding */ |
| 506 |
else if (c < '0' || c > 'z') {} /* Not alphameric */ |
else if (c < '0' || c > 'z') {} /* Not alphanumeric */ |
| 507 |
else if ((i = escapes[c - '0']) != 0) c = i; |
else if ((i = escapes[c - '0']) != 0) c = i; |
| 508 |
|
|
| 509 |
#else /* EBCDIC coding */ |
#else /* EBCDIC coding */ |
| 510 |
else if (c < 'a' || (ebcdic_chartab[c] & 0x0E) == 0) {} /* Not alphameric */ |
else if (c < 'a' || (ebcdic_chartab[c] & 0x0E) == 0) {} /* Not alphanumeric */ |
| 511 |
else if ((i = escapes[c - 0x48]) != 0) c = i; |
else if ((i = escapes[c - 0x48]) != 0) c = i; |
| 512 |
#endif |
#endif |
| 513 |
|
|
| 724 |
break; |
break; |
| 725 |
|
|
| 726 |
/* PCRE_EXTRA enables extensions to Perl in the matter of escapes. Any |
/* PCRE_EXTRA enables extensions to Perl in the matter of escapes. Any |
| 727 |
other alphameric following \ is an error if PCRE_EXTRA was set; otherwise, |
other alphanumeric following \ is an error if PCRE_EXTRA was set; |
| 728 |
for Perl compatibility, it is a literal. This code looks a bit odd, but |
otherwise, for Perl compatibility, it is a literal. This code looks a bit |
| 729 |
there used to be some cases other than the default, and there may be again |
odd, but there used to be some cases other than the default, and there may |
| 730 |
in future, so I haven't "optimized" it. */ |
be again in future, so I haven't "optimized" it. */ |
| 731 |
|
|
| 732 |
default: |
default: |
| 733 |
if ((options & PCRE_EXTRA) != 0) switch(c) |
if ((options & PCRE_EXTRA) != 0) switch(c) |
| 4523 |
|
|
| 4524 |
/* We come here from the Python syntax above that handles both |
/* We come here from the Python syntax above that handles both |
| 4525 |
references (?P=name) and recursion (?P>name), as well as falling |
references (?P=name) and recursion (?P>name), as well as falling |
| 4526 |
through from the Perl recursion syntax (?&name). */ |
through from the Perl recursion syntax (?&name). We also come here from |
| 4527 |
|
the Perl \k<name> or \k'name' back reference syntax and the \k{name} |
| 4528 |
|
.NET syntax. */ |
| 4529 |
|
|
| 4530 |
NAMED_REF_OR_RECURSE: |
NAMED_REF_OR_RECURSE: |
| 4531 |
name = ++ptr; |
name = ++ptr; |