Lines Matching refs:pmatch
46 tre_fill_pmatch(size_t nmatch, regmatch_t pmatch[], int cflags,
536 if (pmatch) \
537 xfree(pmatch); \
551 if (pmatch) \
552 xfree(pmatch); \
634 regmatch_t *pmatch = NULL;
663 pmatch = xmalloc(sizeof(*pmatch) * tnfa->num_submatches);
664 if (!pmatch)
779 tre_fill_pmatch(bt + 1, pmatch, tnfa->cflags & ~REG_NOSUB,
781 so = pmatch[bt].rm_so;
782 eo = pmatch[bt].rm_eo;
914 if (pmatch)
915 xfree(pmatch);
930 tre_fill_pmatch(size_t nmatch, regmatch_t pmatch[], int cflags,
945 pmatch[i].rm_so = match_eo;
947 pmatch[i].rm_so = tags[submatch_data[i].so_tag];
950 pmatch[i].rm_eo = match_eo;
952 pmatch[i].rm_eo = tags[submatch_data[i].eo_tag];
956 if (pmatch[i].rm_so == -1 || pmatch[i].rm_eo == -1)
957 pmatch[i].rm_so = pmatch[i].rm_eo = -1;
966 if (pmatch[i].rm_eo == -1)
967 assert(pmatch[i].rm_so == -1);
968 assert(pmatch[i].rm_so <= pmatch[i].rm_eo);
974 if (pmatch[i].rm_so < pmatch[parents[j]].rm_so
975 || pmatch[i].rm_eo > pmatch[parents[j]].rm_eo)
976 pmatch[i].rm_so = pmatch[i].rm_eo = -1;
984 pmatch[i].rm_so = -1;
985 pmatch[i].rm_eo = -1;
997 size_t nmatch, regmatch_t pmatch[restrict], int eflags)
1024 tre_fill_pmatch(nmatch, pmatch, tnfa->cflags, tnfa, tags, eo);