Lines Matching refs:ptr

781 const pcre_uchar *ptr = *ptrptr + 1;  in check_escape()  local
786 GETCHARINCTEST(c, ptr); /* Get character value, increment pointer */ in check_escape()
787 ptr--; /* Set pointer back to the last byte */ in check_escape()
831 if (MAX_255(ptr[1]) && (digitab[ptr[1]] & ctype_xdigit) != 0 in check_escape()
832 && MAX_255(ptr[2]) && (digitab[ptr[2]] & ctype_xdigit) != 0 in check_escape()
833 && MAX_255(ptr[3]) && (digitab[ptr[3]] & ctype_xdigit) != 0 in check_escape()
834 && MAX_255(ptr[4]) && (digitab[ptr[4]] & ctype_xdigit) != 0) in check_escape()
839 register pcre_uint32 cc = *(++ptr); in check_escape()
890 if (ptr[1] == CHAR_LESS_THAN_SIGN || ptr[1] == CHAR_APOSTROPHE) in check_escape()
898 if (ptr[1] == CHAR_LEFT_CURLY_BRACKET) in check_escape()
901 for (p = ptr+2; *p != CHAR_NULL && *p != CHAR_RIGHT_CURLY_BRACKET; p++) in check_escape()
909 ptr++; in check_escape()
913 if (ptr[1] == CHAR_MINUS) in check_escape()
916 ptr++; in check_escape()
923 while (IS_DIGIT(ptr[1])) in check_escape()
930 s = s * 10 + (int)(*(++ptr) - CHAR_0); in check_escape()
934 while (IS_DIGIT(ptr[1])) in check_escape()
935 ptr++; in check_escape()
940 if (braced && *(++ptr) != CHAR_RIGHT_CURLY_BRACKET) in check_escape()
982 oldptr = ptr; in check_escape()
986 while (IS_DIGIT(ptr[1])) in check_escape()
993 s = s * 10 + (int)(*(++ptr) - CHAR_0); in check_escape()
997 while (IS_DIGIT(ptr[1])) in check_escape()
998 ptr++; in check_escape()
1007 ptr = oldptr; /* Put the pointer back and fall through */ in check_escape()
1014 if ((c = *ptr) >= CHAR_8) in check_escape()
1016 ptr--; in check_escape()
1029 while(i++ < 2 && ptr[1] >= CHAR_0 && ptr[1] <= CHAR_7) in check_escape()
1030 c = c * 8 + *(++ptr) - CHAR_0; in check_escape()
1045 if (MAX_255(ptr[1]) && (digitab[ptr[1]] & ctype_xdigit) != 0 in check_escape()
1046 && MAX_255(ptr[2]) && (digitab[ptr[2]] & ctype_xdigit) != 0) in check_escape()
1051 register pcre_uint32 cc = *(++ptr); in check_escape()
1064 if (ptr[1] == CHAR_LEFT_CURLY_BRACKET) in check_escape()
1066 const pcre_uchar *pt = ptr + 2; in check_escape()
1105 ptr = pt; in check_escape()
1116 while (i++ < 2 && MAX_255(ptr[1]) && (digitab[ptr[1]] & ctype_xdigit) != 0) in check_escape()
1119 cc = *(++ptr); /* ++ in initializers */ in check_escape()
1136 c = *(++ptr); in check_escape()
1177 if (escape == ESC_N && ptr[1] == CHAR_LEFT_CURLY_BRACKET && in check_escape()
1178 !is_counted_repeat(ptr+2)) in check_escape()
1188 *ptrptr = ptr; in check_escape()
1219 const pcre_uchar *ptr = *ptrptr; in get_ucp() local
1222 c = *(++ptr); in get_ucp()
1232 if (ptr[1] == CHAR_CIRCUMFLEX_ACCENT) in get_ucp()
1235 ptr++; in get_ucp()
1239 c = *(++ptr); in get_ucp()
1256 *ptrptr = ptr; in get_ucp()
1278 *ptrptr = ptr; in get_ucp()
1283 *ptrptr = ptr; in get_ucp()
1399 pcre_uchar *ptr = *ptrptr; in find_parens_sub() local
1407 if (ptr[0] == CHAR_LEFT_PARENTHESIS) in find_parens_sub()
1411 if (ptr[1] == CHAR_ASTERISK) ptr += 2; in find_parens_sub()
1415 else if (ptr[1] != CHAR_QUESTION_MARK) in find_parens_sub()
1419 ptr++; in find_parens_sub()
1425 else if (ptr[2] == CHAR_VERTICAL_LINE) in find_parens_sub()
1427 ptr += 3; in find_parens_sub()
1433 else if (ptr[2] == CHAR_NUMBER_SIGN) in find_parens_sub()
1435 for (ptr += 3; *ptr != CHAR_NULL; ptr++) in find_parens_sub()
1436 if (*ptr == CHAR_RIGHT_PARENTHESIS) break; in find_parens_sub()
1444 else if (ptr[2] == CHAR_LEFT_PARENTHESIS) in find_parens_sub()
1446 ptr += 2; in find_parens_sub()
1447 if (ptr[1] != CHAR_QUESTION_MARK) in find_parens_sub()
1449 while (*ptr != CHAR_NULL && *ptr != CHAR_RIGHT_PARENTHESIS) ptr++; in find_parens_sub()
1450 if (*ptr != CHAR_NULL) ptr++; in find_parens_sub()
1458 ptr += 2; in find_parens_sub()
1459 if (*ptr == CHAR_P) ptr++; /* Allow optional P */ in find_parens_sub()
1463 if ((*ptr == CHAR_LESS_THAN_SIGN && ptr[1] != CHAR_EXCLAMATION_MARK && in find_parens_sub()
1464 ptr[1] != CHAR_EQUALS_SIGN) || *ptr == CHAR_APOSTROPHE) in find_parens_sub()
1470 term = *ptr++; in find_parens_sub()
1472 thisname = ptr; in find_parens_sub()
1473 while (*ptr != term) ptr++; in find_parens_sub()
1474 if (name != NULL && lorn == (int)(ptr - thisname) && in find_parens_sub()
1487 for (; ptr < cd->end_pattern; ptr++) in find_parens_sub()
1491 if (*ptr == CHAR_BACKSLASH) in find_parens_sub()
1493 if (*(++ptr) == CHAR_NULL) goto FAIL_EXIT; in find_parens_sub()
1494 if (*ptr == CHAR_Q) for (;;) in find_parens_sub()
1496 while (*(++ptr) != CHAR_NULL && *ptr != CHAR_BACKSLASH) {}; in find_parens_sub()
1497 if (*ptr == CHAR_NULL) goto FAIL_EXIT; in find_parens_sub()
1498 if (*(++ptr) == CHAR_E) break; in find_parens_sub()
1509 if (*ptr == CHAR_LEFT_SQUARE_BRACKET) in find_parens_sub()
1514 if (ptr[1] == CHAR_BACKSLASH) in find_parens_sub()
1516 if (ptr[2] == CHAR_E) in find_parens_sub()
1517 ptr+= 2; in find_parens_sub()
1518 else if (STRNCMP_UC_C8(ptr + 2, in find_parens_sub()
1520 ptr += 4; in find_parens_sub()
1524 else if (!negate_class && ptr[1] == CHAR_CIRCUMFLEX_ACCENT) in find_parens_sub()
1527 ptr++; in find_parens_sub()
1535 if (ptr[1] == CHAR_RIGHT_SQUARE_BRACKET && in find_parens_sub()
1537 ptr++; in find_parens_sub()
1539 while (*(++ptr) != CHAR_RIGHT_SQUARE_BRACKET) in find_parens_sub()
1541 if (*ptr == CHAR_NULL) return -1; in find_parens_sub()
1542 if (*ptr == CHAR_BACKSLASH) in find_parens_sub()
1544 if (*(++ptr) == CHAR_NULL) goto FAIL_EXIT; in find_parens_sub()
1545 if (*ptr == CHAR_Q) for (;;) in find_parens_sub()
1547 while (*(++ptr) != CHAR_NULL && *ptr != CHAR_BACKSLASH) {}; in find_parens_sub()
1548 if (*ptr == CHAR_NULL) goto FAIL_EXIT; in find_parens_sub()
1549 if (*(++ptr) == CHAR_E) break; in find_parens_sub()
1559 if (xmode && *ptr == CHAR_NUMBER_SIGN) in find_parens_sub()
1561 ptr++; in find_parens_sub()
1562 while (*ptr != CHAR_NULL) in find_parens_sub()
1564 if (IS_NEWLINE(ptr)) { ptr += cd->nllen - 1; break; } in find_parens_sub()
1565 ptr++; in find_parens_sub()
1567 if (utf) FORWARDCHAR(ptr); in find_parens_sub()
1570 if (*ptr == CHAR_NULL) goto FAIL_EXIT; in find_parens_sub()
1576 if (*ptr == CHAR_LEFT_PARENTHESIS) in find_parens_sub()
1578 int rc = find_parens_sub(&ptr, cd, name, lorn, xmode, utf, count); in find_parens_sub()
1580 if (*ptr == CHAR_NULL) goto FAIL_EXIT; in find_parens_sub()
1583 else if (*ptr == CHAR_RIGHT_PARENTHESIS) in find_parens_sub()
1589 else if (*ptr == CHAR_VERTICAL_LINE && dup_parens) in find_parens_sub()
1597 *ptrptr = ptr; in find_parens_sub()
1633 pcre_uchar *ptr = (pcre_uchar *)cd->start_pattern; in find_parens() local
1644 rc = find_parens_sub(&ptr, cd, name, lorn, xmode, utf, &count); in find_parens()
1645 if (rc > 0 || *ptr++ == CHAR_NULL) break; in find_parens()
2717 check_posix_syntax(const pcre_uchar *ptr, const pcre_uchar **endptr) in check_posix_syntax() argument
2720 terminator = *(++ptr); /* compiler warns about "non-constant" initializer. */ in check_posix_syntax()
2721 for (++ptr; *ptr != CHAR_NULL; ptr++) in check_posix_syntax()
2723 if (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET) in check_posix_syntax()
2724 ptr++; in check_posix_syntax()
2725 else if (*ptr == CHAR_RIGHT_SQUARE_BRACKET) return FALSE; in check_posix_syntax()
2728 if (*ptr == terminator && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET) in check_posix_syntax()
2730 *endptr = ptr; in check_posix_syntax()
2733 if (*ptr == CHAR_LEFT_SQUARE_BRACKET && in check_posix_syntax()
2734 (ptr[1] == CHAR_COLON || ptr[1] == CHAR_DOT || in check_posix_syntax()
2735 ptr[1] == CHAR_EQUALS_SIGN) && in check_posix_syntax()
2736 check_posix_syntax(ptr, endptr)) in check_posix_syntax()
2761 check_posix_name(const pcre_uchar *ptr, int len) in check_posix_name() argument
2768 STRNCMP_UC_C8(ptr, pn, (unsigned int)len) == 0) return yield; in check_posix_name()
2811 pcre_uchar *ptr = group; in adjust_recurse() local
2813 while ((ptr = (pcre_uchar *)find_recurse(ptr, utf)) != NULL) in adjust_recurse()
2824 if (cd->start_code + offset == ptr + 1) in adjust_recurse()
2836 offset = (int)GET(ptr, 1); in adjust_recurse()
2837 if (cd->start_code + offset >= group) PUT(ptr, 1, offset + adjust); in adjust_recurse()
2840 ptr += 1 + LINK_SIZE; in adjust_recurse()
2862 auto_callout(pcre_uchar *code, const pcre_uchar *ptr, compile_data *cd) in auto_callout() argument
2866 PUT(code, 0, (int)(ptr - cd->start_pattern)); /* Pattern offset */ in auto_callout()
2890 complete_callout(pcre_uchar *previous_callout, const pcre_uchar *ptr, compile_data *cd) in complete_callout() argument
2892 int length = (int)(ptr - cd->start_pattern - GET(previous_callout, 2)); in complete_callout()
3061 const pcre_uchar *ptr, int options, compile_data *cd) in check_auto_possessive() argument
3074 while (MAX_255(*ptr) && (cd->ctypes[*ptr] & ctype_space) != 0) ptr++; in check_auto_possessive()
3075 if (*ptr == CHAR_NUMBER_SIGN) in check_auto_possessive()
3077 ptr++; in check_auto_possessive()
3078 while (*ptr != CHAR_NULL) in check_auto_possessive()
3080 if (IS_NEWLINE(ptr)) { ptr += cd->nllen; break; } in check_auto_possessive()
3081 ptr++; in check_auto_possessive()
3083 if (utf) FORWARDCHAR(ptr); in check_auto_possessive()
3094 if (*ptr == CHAR_BACKSLASH) in check_auto_possessive()
3097 escape = check_escape(&ptr, &next, &temperrorcode, cd->bracount, options, FALSE); in check_auto_possessive()
3099 ptr++; /* Point after the escape sequence */ in check_auto_possessive()
3101 else if (!MAX_255(*ptr) || (cd->ctypes[*ptr] & ctype_meta) == 0) in check_auto_possessive()
3105 if (utf) { GETCHARINC(next, ptr); } else in check_auto_possessive()
3107 next = *ptr++; in check_auto_possessive()
3117 while (MAX_255(*ptr) && (cd->ctypes[*ptr] & ctype_space) != 0) ptr++; in check_auto_possessive()
3118 if (*ptr == CHAR_NUMBER_SIGN) in check_auto_possessive()
3120 ptr++; in check_auto_possessive()
3121 while (*ptr != CHAR_NULL) in check_auto_possessive()
3123 if (IS_NEWLINE(ptr)) { ptr += cd->nllen; break; } in check_auto_possessive()
3124 ptr++; in check_auto_possessive()
3126 if (utf) FORWARDCHAR(ptr); in check_auto_possessive()
3136 if (*ptr == CHAR_ASTERISK || *ptr == CHAR_QUESTION_MARK || in check_auto_possessive()
3137 STRNCMP_UC_C8(ptr, STR_LEFT_CURLY_BRACKET STR_0 STR_COMMA, 3) == 0) in check_auto_possessive()
3339 ptr = substitutes[escape - ESC_DU]; in check_auto_possessive()
3340 escape = check_escape(&ptr, &next, &temperrorcode, 0, options, FALSE); in check_auto_possessive()
3342 ptr++; /* For compatibility */ in check_auto_possessive()
3353 ptr--; /* Make ptr point at the p or P */ in check_auto_possessive()
3354 if (!get_ucp(&ptr, &negated, &ptype, &pdata, &errorcodeptr)) in check_auto_possessive()
3356 ptr++; /* Point past the final curly ket */ in check_auto_possessive()
3362 if (*ptr == CHAR_ASTERISK || *ptr == CHAR_QUESTION_MARK || in check_auto_possessive()
3363 STRNCMP_UC_C8(ptr, STR_LEFT_CURLY_BRACKET STR_0 STR_COMMA, 3) == 0) in check_auto_possessive()
3721 const pcre_uchar *ptr = *ptrptr; in compile_branch() local
3786 for (;; ptr++) in compile_branch()
3810 c = *ptr; in compile_branch()
3817 ptr = nestptr; in compile_branch()
3819 c = *ptr; in compile_branch()
3892 if (c == CHAR_BACKSLASH && ptr[1] == CHAR_E) in compile_branch()
3895 ptr++; in compile_branch()
3903 complete_callout(previous_callout, ptr, cd); in compile_branch()
3909 code = auto_callout(code, ptr, cd); in compile_branch()
3920 (c == CHAR_LEFT_CURLY_BRACKET && is_counted_repeat(ptr+1)); in compile_branch()
3926 complete_callout(previous_callout, ptr, cd); in compile_branch()
3934 if (MAX_255(*ptr) && (cd->ctypes[c] & ctype_space) != 0) continue; in compile_branch()
3937 ptr++; in compile_branch()
3938 while (*ptr != CHAR_NULL) in compile_branch()
3940 if (IS_NEWLINE(ptr)) { ptr += cd->nllen - 1; break; } in compile_branch()
3941 ptr++; in compile_branch()
3943 if (utf) FORWARDCHAR(ptr); in compile_branch()
3946 if (*ptr != CHAR_NULL) continue; in compile_branch()
3958 code = auto_callout(code, ptr, cd); in compile_branch()
3972 *ptrptr = ptr; in compile_branch()
4048 if ((ptr[1] == CHAR_COLON || ptr[1] == CHAR_DOT || in compile_branch()
4049 ptr[1] == CHAR_EQUALS_SIGN) && in compile_branch()
4050 check_posix_syntax(ptr, &tempptr)) in compile_branch()
4052 *errorcodeptr = (ptr[1] == CHAR_COLON)? ERR13 : ERR31; in compile_branch()
4063 c = *(++ptr); in compile_branch()
4066 if (ptr[1] == CHAR_E) in compile_branch()
4067 ptr++; in compile_branch()
4068 else if (STRNCMP_UC_C8(ptr + 1, STR_Q STR_BACKSLASH STR_E, 3) == 0) in compile_branch()
4069 ptr += 3; in compile_branch()
4131 GETCHARLEN(c, ptr, ptr); /* macro generates multiple statements */ in compile_branch()
4154 if (c == CHAR_BACKSLASH && ptr[1] == CHAR_E) /* If we are at \E */ in compile_branch()
4157 ptr++; /* Skip the 'E' */ in compile_branch()
4170 (ptr[1] == CHAR_COLON || ptr[1] == CHAR_DOT || in compile_branch()
4171 ptr[1] == CHAR_EQUALS_SIGN) && check_posix_syntax(ptr, &tempptr)) in compile_branch()
4178 if (ptr[1] != CHAR_COLON) in compile_branch()
4184 ptr += 2; in compile_branch()
4185 if (*ptr == CHAR_CIRCUMFLEX_ACCENT) in compile_branch()
4189 ptr++; in compile_branch()
4192 posix_class = check_posix_name(ptr, (int)(tempptr - ptr)); in compile_branch()
4216 ptr = posix_substitutes[pc] - 1; in compile_branch()
4261 ptr = tempptr + 1; in compile_branch()
4280 escape = check_escape(&ptr, &ec, errorcodeptr, cd->bracount, options, TRUE); in compile_branch()
4294 if (ptr[1] == CHAR_BACKSLASH && ptr[2] == CHAR_E) in compile_branch()
4296 ptr += 2; /* avoid empty string */ in compile_branch()
4320 nestptr = ptr; in compile_branch()
4321 ptr = substitutes[escape - ESC_DU] - 1; /* Just before substitute */ in compile_branch()
4388 if (!get_ucp(&ptr, &negated, &ptype, &pdata, errorcodeptr)) in compile_branch()
4410 c = *ptr; /* Get the final character and fall through */ in compile_branch()
4428 while (ptr[1] == CHAR_BACKSLASH && ptr[2] == CHAR_E) in compile_branch()
4431 ptr += 2; in compile_branch()
4433 oldptr = ptr; in compile_branch()
4441 if (!inescq && ptr[1] == CHAR_MINUS) in compile_branch()
4444 ptr += 2; in compile_branch()
4445 while (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_E) ptr += 2; in compile_branch()
4450 while (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_Q) in compile_branch()
4452 ptr += 2; in compile_branch()
4453 if (*ptr == CHAR_BACKSLASH && ptr[1] == CHAR_E) in compile_branch()
4454 { ptr += 2; continue; } in compile_branch()
4462 if (*ptr == CHAR_NULL || (!inescq && *ptr == CHAR_RIGHT_SQUARE_BRACKET)) in compile_branch()
4464 ptr = oldptr; in compile_branch()
4473 GETCHARLEN(d, ptr, ptr); /* macro generates multiple statements */ in compile_branch()
4477 d = *ptr; /* Not UTF-8 mode */ in compile_branch()
4486 descape = check_escape(&ptr, &d, errorcodeptr, cd->bracount, options, TRUE); in compile_branch()
4495 ptr = oldptr; in compile_branch()
4545 if (class_one_char == 1 && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET) in compile_branch()
4547 ptr++; in compile_branch()
4617 while (((c = *(++ptr)) != CHAR_NULL || in compile_branch()
4619 (ptr = nestptr, nestptr = NULL, c = *(++ptr)) != CHAR_NULL)) && in compile_branch()
4717 ptr = read_repeat_counts(ptr+1, &repeat_min, &repeat_max, errorcodeptr); in compile_branch()
4768 if (ptr[1] == CHAR_PLUS) in compile_branch()
4772 ptr++; in compile_branch()
4774 else if (ptr[1] == CHAR_QUESTION_MARK) in compile_branch()
4777 ptr++; in compile_branch()
4863 check_auto_possessive(previous, utf, ptr + 1, options, cd)) in compile_branch()
4888 check_auto_possessive(previous, utf, ptr + 1, options, cd)) in compile_branch()
5593 ptr++; in compile_branch()
5594 if (ptr[0] == CHAR_ASTERISK && (ptr[1] == ':' in compile_branch()
5595 || (MAX_255(ptr[1]) && ((cd->ctypes[ptr[1]] & ctype_letter) != 0)))) in compile_branch()
5600 const pcre_uchar *name = ptr + 1; in compile_branch()
5603 ptr++; in compile_branch()
5604 while (MAX_255(*ptr) && (cd->ctypes[*ptr] & ctype_letter) != 0) ptr++; in compile_branch()
5605 namelen = (int)(ptr - name); in compile_branch()
5611 if (*ptr == CHAR_COLON) in compile_branch()
5613 arg = ++ptr; in compile_branch()
5614 while (*ptr != CHAR_NULL && *ptr != CHAR_RIGHT_PARENTHESIS) ptr++; in compile_branch()
5615 arglen = (int)(ptr - arg); in compile_branch()
5623 if (*ptr != CHAR_RIGHT_PARENTHESIS) in compile_branch()
5717 else if (*ptr == CHAR_QUESTION_MARK) in compile_branch()
5724 switch (*(++ptr)) in compile_branch()
5727 ptr++; in compile_branch()
5728 while (*ptr != CHAR_NULL && *ptr != CHAR_RIGHT_PARENTHESIS) ptr++; in compile_branch()
5729 if (*ptr == CHAR_NULL) in compile_branch()
5745 ptr++; in compile_branch()
5770 if (ptr[1] == CHAR_QUESTION_MARK && (ptr[2] == CHAR_EQUALS_SIGN || in compile_branch()
5771 ptr[2] == CHAR_EXCLAMATION_MARK || ptr[2] == CHAR_LESS_THAN_SIGN)) in compile_branch()
5783 if (ptr[1] == CHAR_R && ptr[2] == CHAR_AMPERSAND) in compile_branch()
5786 ptr += 2; in compile_branch()
5793 else if (ptr[1] == CHAR_LESS_THAN_SIGN) in compile_branch()
5796 ptr++; in compile_branch()
5798 else if (ptr[1] == CHAR_APOSTROPHE) in compile_branch()
5801 ptr++; in compile_branch()
5806 if (ptr[1] == CHAR_MINUS || ptr[1] == CHAR_PLUS) refsign = *(++ptr); in compile_branch()
5811 if (!MAX_255(ptr[1]) || (cd->ctypes[ptr[1]] & ctype_word) == 0) in compile_branch()
5813 ptr += 1; /* To get the right offset */ in compile_branch()
5821 name = ++ptr; in compile_branch()
5822 while (MAX_255(*ptr) && (cd->ctypes[*ptr] & ctype_word) != 0) in compile_branch()
5825 recno = (IS_DIGIT(*ptr))? recno * 10 + (int)(*ptr - CHAR_0) : -1; in compile_branch()
5826 ptr++; in compile_branch()
5828 namelen = (int)(ptr - name); in compile_branch()
5830 if ((terminator > 0 && *ptr++ != (pcre_uchar)terminator) || in compile_branch()
5831 *ptr++ != CHAR_RIGHT_PARENTHESIS) in compile_branch()
5833 ptr--; /* Error offset */ in compile_branch()
5958 ptr++; in compile_branch()
5964 ptr++; in compile_branch()
5965 if (*ptr == CHAR_RIGHT_PARENTHESIS) /* Optimize (?!) */ in compile_branch()
5978 switch (ptr[1]) in compile_branch()
5983 ptr += 2; in compile_branch()
5989 ptr += 2; in compile_branch()
5993 if (MAX_255(ptr[1]) && (cd->ctypes[ptr[1]] & ctype_word) != 0) in compile_branch()
5995 ptr++; /* Correct offset for error */ in compile_branch()
6005 ptr++; in compile_branch()
6016 ptr++; in compile_branch()
6017 while(IS_DIGIT(*ptr)) in compile_branch()
6018 n = n * 10 + *ptr++ - CHAR_0; in compile_branch()
6019 if (*ptr != CHAR_RIGHT_PARENTHESIS) in compile_branch()
6030 PUT(code, 0, (int)(ptr - cd->start_pattern + 1)); /* Pattern offset */ in compile_branch()
6040 if (*(++ptr) == CHAR_EQUALS_SIGN || in compile_branch()
6041 *ptr == CHAR_GREATER_THAN_SIGN) /* Reference or recursion */ in compile_branch()
6043 is_recurse = *ptr == CHAR_GREATER_THAN_SIGN; in compile_branch()
6047 else if (*ptr != CHAR_LESS_THAN_SIGN) /* Test for Python-style defn */ in compile_branch()
6059 terminator = (*ptr == CHAR_LESS_THAN_SIGN)? in compile_branch()
6061 name = ++ptr; in compile_branch()
6063 while (MAX_255(*ptr) && (cd->ctypes[*ptr] & ctype_word) != 0) ptr++; in compile_branch()
6064 namelen = (int)(ptr - name); in compile_branch()
6070 if (*ptr != (pcre_uchar)terminator) in compile_branch()
6175 ptr++; /* Move past > or ' */ in compile_branch()
6192 name = ++ptr; in compile_branch()
6193 while (MAX_255(*ptr) && (cd->ctypes[*ptr] & ctype_word) != 0) ptr++; in compile_branch()
6194 namelen = (int)(ptr - name); in compile_branch()
6212 if (*ptr != (pcre_uchar)terminator) in compile_branch()
6233 cd->end_pattern = ptr; in compile_branch()
6278 ptr++; /* Same as (?0) */ in compile_branch()
6298 if ((refsign = *ptr) == CHAR_PLUS) in compile_branch()
6300 ptr++; in compile_branch()
6301 if (!IS_DIGIT(*ptr)) in compile_branch()
6309 if (!IS_DIGIT(ptr[1])) in compile_branch()
6311 ptr++; in compile_branch()
6315 while(IS_DIGIT(*ptr)) in compile_branch()
6316 recno = recno * 10 + *ptr++ - CHAR_0; in compile_branch()
6318 if (*ptr != (pcre_uchar)terminator) in compile_branch()
6432 while (*ptr != CHAR_RIGHT_PARENTHESIS && *ptr != CHAR_COLON) in compile_branch()
6434 switch (*ptr++) in compile_branch()
6451 ptr--; /* Correct the offset */ in compile_branch()
6481 if (*ptr == CHAR_RIGHT_PARENTHESIS) in compile_branch()
6509 ptr++; in compile_branch()
6547 &ptr, /* Input pointer (updated) */ in compile_branch()
6625 if (*ptr != CHAR_RIGHT_PARENTHESIS) in compile_branch()
6739 tempptr = ptr; in compile_branch()
6740 escape = check_escape(&ptr, &ec, errorcodeptr, cd->bracount, options, FALSE); in compile_branch()
6750 if (ptr[1] == CHAR_BACKSLASH && ptr[2] == CHAR_E) in compile_branch()
6751 ptr += 2; /* avoid empty string */ in compile_branch()
6782 terminator = (*(++ptr) == CHAR_LESS_THAN_SIGN)? in compile_branch()
6795 if (ptr[1] != CHAR_PLUS && ptr[1] != CHAR_MINUS) in compile_branch()
6798 for (p = ptr + 1; *p != CHAR_NULL && *p != (pcre_uchar)terminator; p++) in compile_branch()
6811 ptr++; in compile_branch()
6820 p = ptr + 2; in compile_branch()
6827 ptr++; in compile_branch()
6836 if ((ptr[1] != CHAR_LESS_THAN_SIGN && in compile_branch()
6837 ptr[1] != CHAR_APOSTROPHE && ptr[1] != CHAR_LEFT_CURLY_BRACKET)) in compile_branch()
6843 terminator = (*(++ptr) == CHAR_LESS_THAN_SIGN)? in compile_branch()
6844 CHAR_GREATER_THAN_SIGN : (*ptr == CHAR_APOSTROPHE)? in compile_branch()
6887 if (!get_ucp(&ptr, &negated, &ptype, &pdata, errorcodeptr)) in compile_branch()
6919 nestptr = ptr + 1; /* Where to resume */ in compile_branch()
6920 ptr = substitutes[escape - ESC_DU] - 1; /* Just before substitute */ in compile_branch()
6964 ACROSSCHAR(TRUE, ptr[1], mcbuffer[mclength++] = *(++ptr)); in compile_branch()
7057 *ptrptr = ptr; in compile_branch()
7103 const pcre_uchar *ptr = *ptrptr; in compile_regex() local
7182 if (!compile_branch(&options, &code, &ptr, errorcodeptr, &branchfirstchar, in compile_regex()
7186 *ptrptr = ptr; in compile_regex()
7276 *ptrptr = ptr; in compile_regex()
7295 if (*ptr != CHAR_VERTICAL_LINE) in compile_regex()
7344 *ptrptr = ptr; in compile_regex()
7383 ptr++; in compile_regex()
7787 const pcre_uchar *ptr; in pcre_compile2() local
7802 ptr = (const pcre_uchar *)pattern; in pcre_compile2()
7846 while (ptr[skipatstart] == CHAR_LEFT_PARENTHESIS && in pcre_compile2()
7847 ptr[skipatstart+1] == CHAR_ASTERISK) in pcre_compile2()
7857 if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_UTF8_RIGHTPAR, 5) == 0) in pcre_compile2()
7861 if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_UTF16_RIGHTPAR, 6) == 0) in pcre_compile2()
7865 if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_UTF32_RIGHTPAR, 6) == 0) in pcre_compile2()
7869 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_UTF_RIGHTPAR, 4) == 0) in pcre_compile2()
7871 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_UCP_RIGHTPAR, 4) == 0) in pcre_compile2()
7873 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_NO_START_OPT_RIGHTPAR, 13) == 0) in pcre_compile2()
7876 if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_CR_RIGHTPAR, 3) == 0) in pcre_compile2()
7878 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_LF_RIGHTPAR, 3) == 0) in pcre_compile2()
7880 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_CRLF_RIGHTPAR, 5) == 0) in pcre_compile2()
7882 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_ANY_RIGHTPAR, 4) == 0) in pcre_compile2()
7884 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_ANYCRLF_RIGHTPAR, 8) == 0) in pcre_compile2()
7887 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_BSR_ANYCRLF_RIGHTPAR, 12) == 0) in pcre_compile2()
7889 else if (STRNCMP_UC_C8(ptr+skipatstart+2, STRING_BSR_UNICODE_RIGHTPAR, 12) == 0) in pcre_compile2()
8032 ptr += skipatstart; in pcre_compile2()
8035 (void)compile_regex(cd->external_options, &code, &ptr, &errorcode, FALSE, in pcre_compile2()
8111 ptr = (const pcre_uchar *)pattern + skipatstart; in pcre_compile2()
8114 (void)compile_regex(re->options, &code, &ptr, &errorcode, FALSE, FALSE, 0, 0, in pcre_compile2()
8129 if (errorcode == 0 && *ptr != CHAR_NULL) errorcode = ERR22; in pcre_compile2()
8230 *erroroffset = (int)(ptr - (const pcre_uchar *)pattern); in pcre_compile2()
8371 *erroroffset = ptr - (pcre_uchar *)pattern; in pcre_compile2()