- switch (pp_token.kind) {
- case TP_define:
- parse_define_directive();
- break;
- case TP_undef:
- parse_undef_directive();
- break;
- case TP_ifdef:
- case TP_ifndef:
- parse_ifdef_ifndef_directive();
- break;
- case TP_else:
- parse_else_directive();
- break;
- case TP_endif:
- parse_endif_directive();
- break;
- case TP_include:
- parse_include_directive();
- break;
- default:
- if (info.at_line_begin) {
- /* the nop directive "#" */
- break;
- }
- errorf(&pp_token.base.source_position,
- "invalid preprocessing directive #%t", &pp_token);
- eat_pp_directive();
- break;