- return node(plex, TSTAR, n, nil);
+ n = node(plex, TSTAR, n, nil);
+ break;
- return node(plex, TPLUS, n, nil);
+ n = node(plex, TPLUS, n, nil);
+ break;
- return node(plex, TQUES, n, nil);
+ n = node(plex, TQUES, n, nil);
+ break;
parsetr = node(&plex, TSUB, e0(&plex), nil);
parsetr = node(&plex, TSUB, e0(&plex), nil);
reprog->len = plex.instrs;
reprog->nthr = maxthr;
reprog->startinst = compile(parsetr, reprog, nl);
reprog->threads = (Rethread*)(reprog->startinst + reprog->len);
reprog->len = plex.instrs;
reprog->nthr = maxthr;
reprog->startinst = compile(parsetr, reprog, nl);
reprog->threads = (Rethread*)(reprog->startinst + reprog->len);
- compile1(parsetr, reinst, &sub, nl);
+ end = compile1(parsetr, reinst, &sub, nl);
+ assert(reinst + reprog->len == end);