| 408 |
"different names for subpatterns of the same number are not allowed\0" |
"different names for subpatterns of the same number are not allowed\0" |
| 409 |
"(*MARK) must have an argument\0" |
"(*MARK) must have an argument\0" |
| 410 |
"this version of PCRE is not compiled with PCRE_UCP support\0" |
"this version of PCRE is not compiled with PCRE_UCP support\0" |
| 411 |
|
"\\c must be followed by an ASCII character\0" |
| 412 |
; |
; |
| 413 |
|
|
| 414 |
/* Table to identify digits and hex digits. This is used when compiling |
/* Table to identify digits and hex digits. This is used when compiling |
| 842 |
break; |
break; |
| 843 |
|
|
| 844 |
/* For \c, a following letter is upper-cased; then the 0x40 bit is flipped. |
/* For \c, a following letter is upper-cased; then the 0x40 bit is flipped. |
| 845 |
This coding is ASCII-specific, but then the whole concept of \cx is |
An error is given if the byte following \c is not an ASCII character. This |
| 846 |
|
coding is ASCII-specific, but then the whole concept of \cx is |
| 847 |
ASCII-specific. (However, an EBCDIC equivalent has now been added.) */ |
ASCII-specific. (However, an EBCDIC equivalent has now been added.) */ |
| 848 |
|
|
| 849 |
case CHAR_c: |
case CHAR_c: |
| 853 |
*errorcodeptr = ERR2; |
*errorcodeptr = ERR2; |
| 854 |
break; |
break; |
| 855 |
} |
} |
| 856 |
|
#ifndef EBCDIC /* ASCII/UTF-8 coding */ |
| 857 |
#ifndef EBCDIC /* ASCII/UTF-8 coding */ |
if (c > 127) /* Excludes all non-ASCII in either mode */ |
| 858 |
|
{ |
| 859 |
|
*errorcodeptr = ERR68; |
| 860 |
|
break; |
| 861 |
|
} |
| 862 |
if (c >= CHAR_a && c <= CHAR_z) c -= 32; |
if (c >= CHAR_a && c <= CHAR_z) c -= 32; |
| 863 |
c ^= 0x40; |
c ^= 0x40; |
| 864 |
#else /* EBCDIC coding */ |
#else /* EBCDIC coding */ |
| 865 |
if (c >= CHAR_a && c <= CHAR_z) c += 64; |
if (c >= CHAR_a && c <= CHAR_z) c += 64; |
| 866 |
c ^= 0xC0; |
c ^= 0xC0; |
| 867 |
#endif |
#endif |