Lines Matching refs:ptr
1320 PCRE2_SPTR ptr = *ptrptr; in read_number() local
1325 if (allow_sign >= 0 && ptr < ptrend) in read_number()
1327 if (*ptr == CHAR_PLUS) in read_number()
1331 ptr++; in read_number()
1333 else if (*ptr == CHAR_MINUS) in read_number()
1336 ptr++; in read_number()
1340 if (ptr >= ptrend || !IS_DIGIT(*ptr)) return FALSE; in read_number()
1341 while (ptr < ptrend && IS_DIGIT(*ptr)) in read_number()
1343 n = n * 10 + *ptr++ - CHAR_0; in read_number()
1372 *ptrptr = ptr; in read_number()
1505 PCRE2_SPTR ptr = *ptrptr; in PRIV() local
1512 if (ptr >= ptrend) in PRIV()
1518 GETCHARINCTEST(c, ptr); /* Get character value, increment pointer */ in PRIV()
1552 if (escape == ESC_N && ptr < ptrend && *ptr == CHAR_LEFT_CURLY_BRACKET) in PRIV()
1554 PCRE2_SPTR p = ptr + 1; in PRIV()
1570 ptr = p + 1; in PRIV()
1638 if (ptr >= ptrend) break; in PRIV()
1639 if (*ptr == CHAR_LEFT_CURLY_BRACKET && in PRIV()
1642 PCRE2_SPTR hptr = ptr + 1; in PRIV()
1650 ptr = hptr; /* Show where */ in PRIV()
1657 if (hptr == ptr + 1 || /* No hex digits */ in PRIV()
1663 ptr = hptr + 1; in PRIV()
1668 if (ptrend - ptr < 4) break; /* Less than 4 chars */ in PRIV()
1669 if ((cc = XDIGIT(ptr[0])) == 0xff) break; /* Not a hex digit */ in PRIV()
1670 if ((xc = XDIGIT(ptr[1])) == 0xff) break; /* Not a hex digit */ in PRIV()
1672 if ((xc = XDIGIT(ptr[2])) == 0xff) break; /* Not a hex digit */ in PRIV()
1674 if ((xc = XDIGIT(ptr[3])) == 0xff) break; /* Not a hex digit */ in PRIV()
1676 ptr += 4; in PRIV()
1722 if (ptr >= ptrend) in PRIV()
1728 if (*ptr == CHAR_LESS_THAN_SIGN || *ptr == CHAR_APOSTROPHE) in PRIV()
1737 if (*ptr == CHAR_LEFT_CURLY_BRACKET) in PRIV()
1739 PCRE2_SPTR p = ptr + 1; in PRIV()
1751 ptr = p + 1; in PRIV()
1758 if (!read_number(&ptr, ptrend, cb->bracount, MAX_GROUP_NUMBER, ERR61, &s, in PRIV()
1794 oldptr = ptr; in PRIV()
1795 ptr--; /* Back to the digit */ in PRIV()
1805 if (read_number(&ptr, ptrend, -1, INT_MAX/10 - 1, 0, &s, errorcodeptr) && in PRIV()
1813 ptr = oldptr; /* Put the pointer back and fall through */ in PRIV()
1833 while(i++ < 2 && ptr < ptrend && *ptr >= CHAR_0 && *ptr <= CHAR_7) in PRIV()
1834 c = c * 8 + *ptr++ - CHAR_0; in PRIV()
1844 if (ptr >= ptrend || *ptr++ != CHAR_LEFT_CURLY_BRACKET) in PRIV()
1846 ptr--; in PRIV()
1849 else if (ptr >= ptrend || *ptr == CHAR_RIGHT_CURLY_BRACKET) in PRIV()
1855 while (ptr < ptrend && *ptr >= CHAR_0 && *ptr <= CHAR_7) in PRIV()
1857 cc = *ptr++; in PRIV()
1873 while (ptr < ptrend && *ptr >= CHAR_0 && *ptr <= CHAR_7) ptr++; in PRIV()
1876 else if (ptr < ptrend && *ptr++ == CHAR_RIGHT_CURLY_BRACKET) in PRIV()
1881 ptr--; in PRIV()
1887 ptr--; in PRIV()
1900 if (ptrend - ptr < 2) break; /* Less than 2 characters */ in PRIV()
1901 if ((cc = XDIGIT(ptr[0])) == 0xff) break; /* Not a hex digit */ in PRIV()
1902 if ((xc = XDIGIT(ptr[1])) == 0xff) break; /* Not a hex digit */ in PRIV()
1904 ptr += 2; in PRIV()
1916 if (ptr < ptrend && *ptr == CHAR_LEFT_CURLY_BRACKET) in PRIV()
1921 if (++ptr >= ptrend || *ptr == CHAR_RIGHT_CURLY_BRACKET) in PRIV()
1929 while (ptr < ptrend && (cc = XDIGIT(*ptr)) != 0xff) in PRIV()
1931 ptr++; in PRIV()
1946 while (ptr < ptrend && XDIGIT(*ptr) != 0xff) ptr++; in PRIV()
1949 else if (ptr < ptrend && *ptr++ == CHAR_RIGHT_CURLY_BRACKET) in PRIV()
1954 ptr--; in PRIV()
1966 ptr--; in PRIV()
1976 if (ptr >= ptrend || (cc = XDIGIT(*ptr)) == 0xff) break; /* Not a hex digit */ in PRIV()
1977 ptr++; in PRIV()
1979 if (ptr >= ptrend || (cc = XDIGIT(*ptr)) == 0xff) break; /* Not a hex digit */ in PRIV()
1980 ptr++; in PRIV()
2005 if (ptr >= ptrend) in PRIV()
2010 c = *ptr; in PRIV()
2041 ptr++; in PRIV()
2049 *ptrptr = ptr - 1; /* Point to the character at fault */ in PRIV()
2056 *ptrptr = ptr; in PRIV()
2090 PCRE2_SPTR ptr = *ptrptr; in get_ucp() local
2093 if (ptr >= cb->end_pattern) goto ERROR_RETURN; in get_ucp()
2094 c = *ptr++; in get_ucp()
2102 if (ptr >= cb->end_pattern) goto ERROR_RETURN; in get_ucp()
2103 if (*ptr == CHAR_CIRCUMFLEX_ACCENT) in get_ucp()
2106 ptr++; in get_ucp()
2110 if (ptr >= cb->end_pattern) goto ERROR_RETURN; in get_ucp()
2111 c = *ptr++; in get_ucp()
2130 *ptrptr = ptr; in get_ucp()
2155 *ptrptr = ptr; in get_ucp()
2208 check_posix_syntax(PCRE2_SPTR ptr, PCRE2_SPTR ptrend, PCRE2_SPTR *endptr) in check_posix_syntax() argument
2211 terminator = *ptr++; /* compiler warns about "non-constant" initializer. */ in check_posix_syntax()
2213 for (; ptrend - ptr >= 2; ptr++) in check_posix_syntax()
2215 if (*ptr == CHAR_BACKSLASH && in check_posix_syntax()
2216 (ptr[1] == CHAR_RIGHT_SQUARE_BRACKET || ptr[1] == CHAR_BACKSLASH)) in check_posix_syntax()
2217 ptr++; in check_posix_syntax()
2219 else if ((*ptr == CHAR_LEFT_SQUARE_BRACKET && ptr[1] == terminator) || in check_posix_syntax()
2220 *ptr == CHAR_RIGHT_SQUARE_BRACKET) return FALSE; in check_posix_syntax()
2222 else if (*ptr == terminator && ptr[1] == CHAR_RIGHT_SQUARE_BRACKET) in check_posix_syntax()
2224 *endptr = ptr; in check_posix_syntax()
2249 check_posix_name(PCRE2_SPTR ptr, int len) in check_posix_name() argument
2256 PRIV(strncmp_c8)(ptr, pn, (unsigned int)len) == 0) return yield; in check_posix_name()
2298 PCRE2_SPTR ptr = *ptrptr; in read_name() local
2299 BOOL is_group = (*ptr != CHAR_ASTERISK); in read_name()
2301 if (++ptr >= ptrend) /* No characters in name */ in read_name()
2308 *nameptr = ptr; in read_name()
2309 *offsetptr = (PCRE2_SIZE)(ptr - cb->start_pattern); in read_name()
2319 GETCHAR(c, ptr); in read_name()
2332 ptr++; in read_name()
2333 FORWARDCHARTEST(ptr, ptrend); in read_name()
2334 if (ptr >= ptrend) break; in read_name()
2335 GETCHAR(c, ptr); in read_name()
2349 if (is_group && IS_DIGIT(*ptr)) in read_name()
2355 while (ptr < ptrend && MAX_255(*ptr) && (cb->ctypes[*ptr] & ctype_word) != 0) in read_name()
2357 ptr++; in read_name()
2363 if (ptr > *nameptr + MAX_NAME_SIZE) in read_name()
2368 *namelenptr = (uint32_t)(ptr - *nameptr); in read_name()
2375 if (ptr == *nameptr) in read_name()
2380 if (ptr >= ptrend || *ptr != (PCRE2_UCHAR)terminator) in read_name()
2385 ptr++; in read_name()
2388 *ptrptr = ptr; in read_name()
2392 *ptrptr = ptr; in read_name()
2419 manage_callouts(PCRE2_SPTR ptr, uint32_t **pcalloutptr, BOOL auto_callout, in manage_callouts() argument
2424 if (previous_callout != NULL) previous_callout[2] = (uint32_t)(ptr - in manage_callouts()
2439 previous_callout[1] = (uint32_t)(ptr - cb->start_pattern); in manage_callouts()
2513 static int parse_regex(PCRE2_SPTR ptr, uint32_t options, BOOL *has_lookbehind, in parse_regex() argument
2567 while (ptr < ptrend) in parse_regex()
2574 thisptr = ptr; in parse_regex()
2575 GETCHARINCTEST(c, ptr); in parse_regex()
2602 while (ptr < ptrend) in parse_regex()
2627 thisptr = ptr; in parse_regex()
2628 GETCHARINCTEST(c, ptr); in parse_regex()
2635 if (c == CHAR_BACKSLASH && ptr < ptrend && *ptr == CHAR_E) in parse_regex()
2638 ptr++; /* Skip E */ in parse_regex()
2644 ptr--; /* but an empty \Q\E sequence is OK. */ in parse_regex()
2710 if (ptr - verbnamestart - 1 > (int)MAX_MARK) in parse_regex()
2712 ptr--; in parse_regex()
2732 escape = PRIV(check_escape)(&ptr, ptrend, &c, &errorcode, options, in parse_regex()
2767 if (c == CHAR_BACKSLASH && ptr < ptrend) in parse_regex()
2769 if (*ptr == CHAR_Q || *ptr == CHAR_E) in parse_regex()
2771 inescq = *ptr == CHAR_Q; in parse_regex()
2772 ptr++; in parse_regex()
2793 while (ptr < ptrend) in parse_regex()
2795 if (IS_NEWLINE(ptr)) /* For non-fixed-length newline cases, */ in parse_regex()
2797 ptr += cb->nllen; in parse_regex()
2800 ptr++; in parse_regex()
2802 if (utf) FORWARDCHARTEST(ptr, ptrend); in parse_regex()
2811 if (c == CHAR_LEFT_PARENTHESIS && ptrend - ptr >= 2 && in parse_regex()
2812 ptr[0] == CHAR_QUESTION_MARK && ptr[1] == CHAR_NUMBER_SIGN) in parse_regex()
2814 while (++ptr < ptrend && *ptr != CHAR_RIGHT_PARENTHESIS); in parse_regex()
2815 if (ptr >= ptrend) in parse_regex()
2820 ptr++; in parse_regex()
2829 (tempptr = ptr, in parse_regex()
2848 BOOL ok = c == CHAR_LEFT_PARENTHESIS && ptrend - ptr >= 3 && in parse_regex()
2849 (ptr[0] == CHAR_QUESTION_MARK || ptr[0] == CHAR_ASTERISK); in parse_regex()
2852 if (ptr[0] == CHAR_ASTERISK) /* New alpha assertion format, possibly */ in parse_regex()
2854 ok = MAX_255(ptr[1]) && (cb->ctypes[ptr[1]] & ctype_lcletter) != 0; in parse_regex()
2856 else switch(ptr[1]) /* Traditional symbolic format */ in parse_regex()
2867 ok = ptr[2] == CHAR_EQUALS_SIGN || ptr[2] == CHAR_EXCLAMATION_MARK; in parse_regex()
2877 ptr--; /* Adjust error offset */ in parse_regex()
2924 tempptr = ptr; in parse_regex()
2925 escape = PRIV(check_escape)(&ptr, ptrend, &c, &errorcode, options, in parse_regex()
2932 ptr = tempptr; in parse_regex()
2933 if (ptr >= ptrend) c = CHAR_BACKSLASH; else in parse_regex()
2935 GETCHARINCTEST(c, ptr); /* Get character value, increment pointer */ in parse_regex()
2956 offset = (PCRE2_SIZE)(ptr - cb->start_pattern - 1); in parse_regex()
3071 if (!get_ucp(&ptr, &negated, &ptype, &pdata, &errorcode, cb)) in parse_regex()
3092 if (ptr >= ptrend || (*ptr != CHAR_LEFT_CURLY_BRACKET && in parse_regex()
3093 *ptr != CHAR_LESS_THAN_SIGN && *ptr != CHAR_APOSTROPHE)) in parse_regex()
3098 terminator = (*ptr == CHAR_LESS_THAN_SIGN)? in parse_regex()
3099 CHAR_GREATER_THAN_SIGN : (*ptr == CHAR_APOSTROPHE)? in parse_regex()
3106 PCRE2_SPTR p = ptr + 1; in parse_regex()
3116 ptr = p; in parse_regex()
3124 if (!read_name(&ptr, ptrend, utf, terminator, &offset, &name, &namelen, in parse_regex()
3176 if (!read_repeat_counts(&ptr, ptrend, &min_repeat, &max_repeat, in parse_regex()
3238 if (ptrend - ptr >= 6 && in parse_regex()
3239 (PRIV(strncmp_c8)(ptr, STRING_WEIRD_STARTWORD, 6) == 0 || in parse_regex()
3240 PRIV(strncmp_c8)(ptr, STRING_WEIRD_ENDWORD, 6) == 0)) in parse_regex()
3244 if (ptr[2] == CHAR_LESS_THAN_SIGN) in parse_regex()
3267 ptr += 6; in parse_regex()
3274 if (ptr < ptrend && (*ptr == CHAR_COLON || *ptr == CHAR_DOT || in parse_regex()
3275 *ptr == CHAR_EQUALS_SIGN) && in parse_regex()
3276 check_posix_syntax(ptr, ptrend, &tempptr)) in parse_regex()
3278 errorcode = (*ptr-- == CHAR_COLON)? ERR12 : ERR13; in parse_regex()
3288 while (ptr < ptrend) in parse_regex()
3290 GETCHARINCTEST(c, ptr); in parse_regex()
3293 if (ptr < ptrend && *ptr == CHAR_E) ptr++; in parse_regex()
3294 else if (ptrend - ptr >= 3 && in parse_regex()
3295 PRIV(strncmp_c8)(ptr, STR_Q STR_BACKSLASH STR_E, 3) == 0) in parse_regex()
3296 ptr += 3; in parse_regex()
3341 if (c == CHAR_BACKSLASH && ptr < ptrend && *ptr == CHAR_E) in parse_regex()
3344 ptr++; /* Skip the 'E' */ in parse_regex()
3363 ptrend - ptr >= 3 && in parse_regex()
3364 (*ptr == CHAR_COLON || *ptr == CHAR_DOT || in parse_regex()
3365 *ptr == CHAR_EQUALS_SIGN) && in parse_regex()
3366 check_posix_syntax(ptr, ptrend, &tempptr)) in parse_regex()
3382 if (*ptr != CHAR_COLON) in parse_regex()
3388 if (*(++ptr) == CHAR_CIRCUMFLEX_ACCENT) in parse_regex()
3391 ptr++; in parse_regex()
3394 posix_class = check_posix_name(ptr, (int)(tempptr - ptr)); in parse_regex()
3400 ptr = tempptr + 2; in parse_regex()
3408 if (ptr < ptrend - 1 && *ptr == CHAR_MINUS && in parse_regex()
3409 ptr[1] != CHAR_RIGHT_SQUARE_BRACKET) in parse_regex()
3501 tempptr = ptr; in parse_regex()
3502 escape = PRIV(check_escape)(&ptr, ptrend, &c, &errorcode, options, in parse_regex()
3509 ptr = tempptr; in parse_regex()
3510 if (ptr >= ptrend) c = CHAR_BACKSLASH; else in parse_regex()
3512 GETCHARINCTEST(c, ptr); /* Get character value, increment pointer */ in parse_regex()
3539 ptr--; in parse_regex()
3618 if (!get_ucp(&ptr, &negated, &ptype, &pdata, &errorcode, cb)) in parse_regex()
3632 ptr--; in parse_regex()
3639 if (ptr < ptrend - 1 && *ptr == CHAR_MINUS && in parse_regex()
3640 ptr[1] != CHAR_RIGHT_SQUARE_BRACKET) in parse_regex()
3650 if (ptr >= ptrend) in parse_regex()
3655 GETCHARINCTEST(c, ptr); in parse_regex()
3674 if (ptr >= ptrend) goto UNCLOSED_PARENTHESIS; in parse_regex()
3679 if (*ptr != CHAR_QUESTION_MARK) in parse_regex()
3686 if (*ptr != CHAR_ASTERISK) in parse_regex()
3705 else if (ptrend - ptr <= 1 || (c = ptr[1]) == CHAR_RIGHT_PARENTHESIS) in parse_regex()
3719 if (!read_name(&ptr, ptrend, utf, 0, &offset, &name, &namelen, in parse_regex()
3721 if (ptr >= ptrend || *ptr != CHAR_COLON) in parse_regex()
3780 ptr--; in parse_regex()
3793 ptr++; in parse_regex()
3821 if (!read_name(&ptr, ptrend, utf, 0, &offset, &name, &namelen, in parse_regex()
3823 if (ptr >= ptrend || (*ptr != CHAR_COLON && in parse_regex()
3824 *ptr != CHAR_RIGHT_PARENTHESIS)) in parse_regex()
3848 if (*ptr == CHAR_COLON && ptr + 1 < ptrend && in parse_regex()
3849 ptr[1] == CHAR_RIGHT_PARENTHESIS) in parse_regex()
3850 ptr++; /* Advance to the closing parens */ in parse_regex()
3854 if (verbs[i].has_arg > 0 && *ptr != CHAR_COLON) in parse_regex()
3875 if (*ptr++ == CHAR_COLON) /* Skip past : or ) */ in parse_regex()
3897 verbnamestart = ptr; in parse_regex()
3917 if (++ptr >= ptrend) goto UNCLOSED_PARENTHESIS; in parse_regex()
3919 switch(*ptr) in parse_regex()
3922 if (*ptr == CHAR_MINUS && ptrend - ptr > 1 && IS_DIGIT(ptr[1])) in parse_regex()
3942 if (*ptr == CHAR_VERTICAL_LINE) in parse_regex()
3949 ptr++; in parse_regex()
3966 if (ptr < ptrend && *ptr == CHAR_CIRCUMFLEX_ACCENT) in parse_regex()
3971 ptr++; in parse_regex()
3974 while (ptr < ptrend && *ptr != CHAR_RIGHT_PARENTHESIS && in parse_regex()
3975 *ptr != CHAR_COLON) in parse_regex()
3977 switch (*ptr++) in parse_regex()
3983 ptr--; /* Correct the offset */ in parse_regex()
4005 if (ptr < ptrend && *ptr == CHAR_x) in parse_regex()
4008 ptr++; in parse_regex()
4014 ptr--; /* Correct the offset */ in parse_regex()
4036 if (ptr >= ptrend) goto UNCLOSED_PARENTHESIS; in parse_regex()
4037 if (*ptr++ == CHAR_RIGHT_PARENTHESIS) in parse_regex()
4060 if (++ptr >= ptrend) goto UNCLOSED_PARENTHESIS; in parse_regex()
4064 if (*ptr == CHAR_LESS_THAN_SIGN) in parse_regex()
4073 if (*ptr == CHAR_GREATER_THAN_SIGN) goto RECURSE_BY_NAME; in parse_regex()
4078 if (*ptr != CHAR_EQUALS_SIGN) in parse_regex()
4083 if (!read_name(&ptr, ptrend, utf, CHAR_RIGHT_PARENTHESIS, &offset, &name, in parse_regex()
4096 ptr++; in parse_regex()
4097 if (ptr >= ptrend || *ptr != CHAR_RIGHT_PARENTHESIS) in parse_regex()
4108 if (ptrend - ptr < 2 || !IS_DIGIT(ptr[1])) in parse_regex()
4118 if (!read_number(&ptr, ptrend, in parse_regex()
4119 (IS_DIGIT(*ptr))? -1:(int)(cb->bracount), /* + and - are relative */ in parse_regex()
4127 if (ptr >= ptrend || *ptr != CHAR_RIGHT_PARENTHESIS) in parse_regex()
4132 offset = (PCRE2_SIZE)(ptr - cb->start_pattern); in parse_regex()
4133 ptr++; in parse_regex()
4143 if (!read_name(&ptr, ptrend, utf, CHAR_RIGHT_PARENTHESIS, &offset, &name, in parse_regex()
4154 if (++ptr >= ptrend) goto UNCLOSED_PARENTHESIS; in parse_regex()
4185 if (*ptr != CHAR_RIGHT_PARENTHESIS && !IS_DIGIT(*ptr)) in parse_regex()
4188 PCRE2_SPTR startptr = ptr; in parse_regex()
4193 if (*ptr == PRIV(callout_start_delims)[i]) in parse_regex()
4210 if (++ptr >= ptrend) in parse_regex()
4213 ptr = startptr; /* To give a more useful message */ in parse_regex()
4216 if (*ptr == delimiter && (++ptr >= ptrend || *ptr != delimiter)) in parse_regex()
4220 calloutlength = (PCRE2_SIZE)(ptr - startptr); in parse_regex()
4239 while (ptr < ptrend && IS_DIGIT(*ptr)) in parse_regex()
4241 n = n * 10 + *ptr++ - CHAR_0; in parse_regex()
4253 if (ptr >= ptrend || *ptr != CHAR_RIGHT_PARENTHESIS) in parse_regex()
4258 ptr++; in parse_regex()
4263 previous_callout[1] = (uint32_t)(ptr - cb->start_pattern); in parse_regex()
4288 if (++ptr >= ptrend) goto UNCLOSED_PARENTHESIS; in parse_regex()
4299 if (*ptr == CHAR_QUESTION_MARK || *ptr == CHAR_ASTERISK) in parse_regex()
4302 ptr--; /* Pull pointer back to the opening parenthesis. */ in parse_regex()
4309 if (read_number(&ptr, ptrend, cb->bracount, MAX_GROUP_NUMBER, ERR61, &i, in parse_regex()
4318 offset = (PCRE2_SIZE)(ptr - cb->start_pattern - 2); in parse_regex()
4326 else if (ptrend - ptr >= 10 && in parse_regex()
4327 PRIV(strncmp_c8)(ptr, STRING_VERSION, 7) == 0 && in parse_regex()
4328 ptr[7] != CHAR_RIGHT_PARENTHESIS) in parse_regex()
4334 ptr += 7; in parse_regex()
4335 if (*ptr == CHAR_GREATER_THAN_SIGN) in parse_regex()
4338 ptr++; in parse_regex()
4344 if (*ptr != CHAR_EQUALS_SIGN || (ptr++, !IS_DIGIT(*ptr))) in parse_regex()
4347 if (!read_number(&ptr, ptrend, -1, 1000, ERR79, &major, &errorcode)) in parse_regex()
4350 if (ptr >= ptrend) goto BAD_VERSION_CONDITION; in parse_regex()
4351 if (*ptr == CHAR_DOT) in parse_regex()
4353 if (++ptr >= ptrend || !IS_DIGIT(*ptr)) goto BAD_VERSION_CONDITION; in parse_regex()
4354 minor = (*ptr++ - CHAR_0) * 10; in parse_regex()
4355 if (ptr >= ptrend) goto BAD_VERSION_CONDITION; in parse_regex()
4356 if (IS_DIGIT(*ptr)) minor += *ptr++ - CHAR_0; in parse_regex()
4357 if (ptr >= ptrend || *ptr != CHAR_RIGHT_PARENTHESIS) in parse_regex()
4377 if (*ptr == CHAR_R && ptrend - ptr > 1 && ptr[1] == CHAR_AMPERSAND) in parse_regex()
4381 ptr++; in parse_regex()
4383 else if (*ptr == CHAR_LESS_THAN_SIGN) in parse_regex()
4385 else if (*ptr == CHAR_APOSTROPHE) in parse_regex()
4390 ptr--; /* Point to char before name */ in parse_regex()
4392 if (!read_name(&ptr, ptrend, utf, terminator, &offset, &name, &namelen, in parse_regex()
4400 ptr--; /* Back to closing parens */ in parse_regex()
4418 ptr--; /* Back to closing parens */ in parse_regex()
4434 if (ptr >= ptrend || *ptr != CHAR_RIGHT_PARENTHESIS) in parse_regex()
4439 ptr++; in parse_regex()
4449 ptr++; in parse_regex()
4458 ptr++; in parse_regex()
4464 ptr++; in parse_regex()
4470 ptr++; in parse_regex()
4480 if (ptrend - ptr <= 1 || in parse_regex()
4481 (ptr[1] != CHAR_EQUALS_SIGN && in parse_regex()
4482 ptr[1] != CHAR_EXCLAMATION_MARK && in parse_regex()
4483 ptr[1] != CHAR_ASTERISK)) in parse_regex()
4488 *parsed_pattern++ = (ptr[1] == CHAR_EQUALS_SIGN)? in parse_regex()
4489 META_LOOKBEHIND : (ptr[1] == CHAR_EXCLAMATION_MARK)? in parse_regex()
4494 offset = (PCRE2_SIZE)(ptr - cb->start_pattern - 2); in parse_regex()
4496 ptr += 2; in parse_regex()
4535 if (!read_name(&ptr, ptrend, utf, terminator, &offset, &name, &namelen, in parse_regex()
4681 if (inverbname && ptr >= ptrend) in parse_regex()
4690 parsed_pattern = manage_callouts(ptr, &previous_callout, auto_callout, in parse_regex()
4725 cb->erroroffset = (PCRE2_SIZE)(ptr - cb->start_pattern); in parse_regex()
4731 ptr--; in parse_regex()
9683 PCRE2_SPTR ptr; /* Current pointer in pattern */ in pcre2_compile() local
9846 ptr = pattern; in pcre2_compile()
9852 ptr[skipatstart] == CHAR_LEFT_PARENTHESIS && in pcre2_compile()
9853 ptr[skipatstart+1] == CHAR_ASTERISK) in pcre2_compile()
9861 PRIV(strncmp_c8)(ptr + skipatstart + 2, (char *)(p->name), in pcre2_compile()
9890 if (!IS_DIGIT(ptr[pp])) in pcre2_compile()
9893 ptr += pp; in pcre2_compile()
9896 while (IS_DIGIT(ptr[pp])) in pcre2_compile()
9899 c = c*10 + (ptr[pp++] - CHAR_0); in pcre2_compile()
9901 if (ptr[pp++] != CHAR_RIGHT_PARENTHESIS) in pcre2_compile()
9904 ptr += pp; in pcre2_compile()
9922 ptr += skipatstart; in pcre2_compile()
10030 for (p = ptr; p < cb.end_pattern; p++) if (*p >= META_END) big32count++; in pcre2_compile()
10064 errorcode = parse_regex(ptr, cb.external_options, &has_lookbehind, &cb); in pcre2_compile()
10519 ptr = pattern + cb.erroroffset; in pcre2_compile()
10522 *erroroffset = ptr - pattern; in pcre2_compile()