static void gethere(void) { struct ioword **p; for (p = heres; p < herep; p++) readhere(*p); herep = heres; }
static void gethere(void) { struct ioword **p; for (p = heres; p < herep; p++) if (!((*p)->ioflag & IOHERESTR)) readhere(*p); herep = heres; }
static void gethere(bool iseof) { struct ioword **p; for (p = heres; p < herep; p++) if (iseof && !((*p)->flag & IOHERESTR)) /* only here strings at EOF */ return; else readhere(*p); herep = heres; }
int compile(tree *t) { ncode = 100; codebuf = (code *)emalloc(ncode*sizeof codebuf[0]); codep = 0; emiti(0); /* reference count */ outcode(t, flag['e']?1:0); if(nerror){ efree((char *)codebuf); return 0; } readhere(); emitf(Xreturn); emitf(0); return 1; }