HERE
sopno ret = HERE();
sn = HERE();
assert(HERE() == sn+1);
(HERE()-pos-1)*sizeof(sop));
#define INSERT(op, pos) doinsert(p, (sop)(op), HERE()-(pos)+1, pos)
#define AHEAD(pos) dofwd(p, pos, HERE()-(pos))
#define ASTERN(sop, pos) EMIT(sop, HERE()-pos)
conc = HERE();
REQUIRE(HERE() != conc, REG_EMPTY); /* require nonempty */
prevfwd = HERE();
pos = HERE();
p->pbegin[subno] = HERE();
p->pend[subno] = HERE();
sopno start = HERE();
REQUIRE(HERE() != start, REG_EMPTY); /* require nonempty */
pos = HERE(); /* repetition op, if any, covers from here */
p->pbegin[subno] = HERE();
p->pend[subno] = HERE();
sopno finish = HERE();