Lines Matching refs:directive
25 * preprocessor control directive support
250 * process a single directive line
266 int directive;
326 error(1, "# <line> [ \"<file>\" [ <type> ] ]: non-standard directive");
327 directive = INCLUDE;
330 switch (directive = (int)hashref(pp.dirtab, pp.token))
353 if (directive == IFDEF || directive == IFNDEF)
372 error(1, "#%s %s is non-standard -- use #%s", dirname(directive), dirname(n), dirname(ELIF));
373 directive = n;
418 if (directive == IF) goto conditional;
423 if (directive == IFNDEF && pp.control == pp.in->control + 1)
441 *pp.control |= ((sym != 0) == (directive == IFDEF)) ? KEPT : SKIP;
515 error(2, "%s: directive too long", pp.valbuf);
544 error(1, "%s: non-standard directive", p);
572 directive = LINE;
577 if (directive != PRAGMA && (!(*pp.control & SKIP) || !(pp.mode & (HOSTED|RELAX))))
580 error(1, "%s: unknown directive", pptokstr(pp.valbuf, 0));
584 if (!(*pp.control & SKIP) && pp.pragma && !(pp.state & NOTEXT) && (directive == PRAGMA || !(pp.mode & INIT)))
626 switch (directive)
637 error(1, "#%s: non-standard directive", pp.token);
642 if ((c = pplex()) == '#' && directive == DEFINE)
664 if (directive == MACDEF)
1300 error(1, "#%s #%s: assertions are non-standard", dirname(directive), pptokstr(pp.token, 0));
1322 assert(directive, pp.tmpbuf, pp.args);
1325 assert(directive, pp.tmpbuf, NiL);
1391 error(1, "#%s: non-standard directive", pp.token);
1403 p = *pp.tmpbuf ? pp.tmpbuf : ((directive == WARNING) ? "user warning" : "user error");
1404 n = (directive == WARNING) ? 1 : 3;
1410 error(1, "#%s: non-standard directive", pp.token);
1454 directive = INCLUDE;
1464 if (error_info.line == 0 && directive == LINE && (pp.state & STRICT) && !(pp.mode & HOSTED))
1484 if (directive == LINE && (pp.state & STRICT) && !(pp.mode & (HOSTED|RELAX)))
1491 if (directive == LINE) pp.in->flags &= ~IN_ignoreline;
1538 if (directive == LINE && (pp.in->flags & IN_ignoreline))
1553 if (directive == LINE)
1564 directive = LINE;
1585 * #directive pass: option [...]
1602 error(2, "%s: directive too long", pp.valbuf);
1645 error(1, "#%s: non-standard directive", dirname(PRAGMA));
1670 error(1, "#%s: non-standard directive ignored", dirname(PRAGMA));
2014 directive = ENDIF;
2125 error(1, "#%s: non-standard directive", pp.token);
2200 error(PANIC, "#%s: directive recognized but not implemented", pp.token);
2208 error(1, "%s: invalid directive name", pptokstr(pp.token, 0));
2220 error(1, "%s: invalid characters after directive", pptokstr(pp.token, 0));
2231 error(2, "%s in directive", pptokchr(0));
2238 switch (directive)