Lines Matching refs:sop
68 sop *strip; /* malloced strip */
108 static void doemit(struct parse *, sop, size_t);
109 static void doinsert(struct parse *, sop, size_t, sopno);
110 static void dofwd(struct parse *, sopno, sop);
139 #define EMIT(op, sopnd) doemit(p, (sop)(op), (size_t)(sopnd))
140 #define INSERT(op, pos) doinsert(p, (sop)(op), HERE()-(pos)+1, pos)
142 #define ASTERN(sop, pos) EMIT(sop, HERE()-pos)
195 p->strip = (sop *)calloc(p->ssize, sizeof(sop));
1334 (char *)(p->strip + start), (size_t)len*sizeof(sop));
1347 doemit(struct parse *p, sop op, size_t opnd)
1362 p->strip[p->slen++] = SOP(op, opnd);
1366 - doinsert - insert a sop into the strip
1369 doinsert(struct parse *p, sop op, size_t opnd, sopno pos)
1372 sop s;
1396 (HERE()-pos-1)*sizeof(sop));
1404 dofwd(struct parse *p, sopno pos, sop value)
1420 sop *sp;
1425 if ((uintptr_t)size > SIZE_MAX / sizeof(sop)) {
1430 sp = (sop *)realloc(p->strip, size*sizeof(sop));
1446 if ((uintptr_t)p->slen > SIZE_MAX / sizeof(sop)) {
1452 g->strip = (sop *)realloc((char *)p->strip, p->slen * sizeof(sop));
1471 sop *scan;
1472 sop *start = 0; /* start initialized in the default case, after that */
1473 sop *newstart = 0; /* newstart was initialized in the OCHAR case */
1475 sop s;
1549 sop *scan;
1550 sop s;