Lines Matching refs:pp
66 if ((sym->flags & SYM_PREDICATE) && (pp.state & (CONDITIONAL|WARN)) == (CONDITIONAL|WARN))
70 if ((pp.state & (COMPATIBILITY|TRANSITION)) != COMPATIBILITY || !mac->arity)
73 pp.mode |= MARKMACRO;
75 if ((pp.state & (COMPATIBILITY|STRICT)) == (COMPATIBILITY|STRICT))
80 if ((sym->flags & SYM_PREDEFINED) && !(pp.mode & (HOSTED|INACTIVE)))
83 if (*sym->name != '_' && !(pp.state & COMPATIBILITY))
88 if (pp.state & STRICT)
93 error(1, "%s: obsolete predefined symbol expanded%s", sym->name, (pp.state & DIRECTIVE) ? "" : " outside of directive");
95 else if (!(pp.state & DIRECTIVE) && mac->value && (ppisdig(*mac->value) || *mac->value == '#'))
99 if (pp.macref)
100 (*pp.macref)(sym, error_info.file, error_info.line, (pp.state & CONDITIONAL) ? REF_IF : REF_NORMAL, 0L);
103 old_state = pp.state;
104 pp.state |= DEFINITION|NOSPACE;
105 old_token = pp.token;
107 pp.token = p = oldof(0, char, 0, n);
109 *pp.token++ = ' ';
110 old_hidden = pp.hidden;
115 pp.hidden++;
116 pp.state |= HIDDEN|NEWLINE;
129 if (streq(pp.token, tp->token))
136 pp.state = old_state;
137 pp.token = old_token;
148 pp.token = pp.toknxt;
152 if ((pp.token = pp.toknxt) > q)
154 c = pp.token - p;
157 pp.token = p + c;
159 *pp.token++ = ' ';
161 if (pp.token > p && *(pp.token - 1) == ' ')
162 pp.token--;
163 if (pp.hidden != old_hidden)
164 *pp.token++ = '\n';
166 *pp.token++ = ' ';
167 *pp.token = 0;
168 pp.state = old_state;
169 pp.token = old_token;
184 for (p = pp.in->nextchr; isspace(*p); p++);
187 old_next = (c == MARK) ? pp.in->nextchr : NiL;
188 old_token = pp.token;
189 mp = pp.macp->next;
190 if ((pp.token = (char*)&mp->arg[mac->arity + 1]) > pp.maxmac)
192 old_hidden = pp.hidden;
193 old_state = pp.state;
194 pp.state |= DEFINITION|FILEPOP|NOSPACE;
197 pp.hidden++;
198 pp.state |= HIDDEN|NEWLINE;
204 pp.state = old_state;
206 pp.in->nextchr = old_next;
211 p = pp.toknxt;
212 while (p > pp.token)
215 if ((pp.state & (COMPATIBILITY|STRICT)) == (COMPATIBILITY|STRICT))
218 if (c == T_ID && !(pp.state & HIDDEN))
221 if (pp.hidden != old_hidden)
225 if (pp.hidden && !--pp.hidden)
226 pp.state &= ~HIDDEN;
229 pp.token = old_token;
232 pp.state = old_state;
244 mp = pp.macp->next;
245 p = pp.token = (char*)&mp->arg[mac->arity + 1];
246 pp.state |= COLLECTING|NOEXPAND;
247 pp.state &= ~FILEPOP;
249 old_in = pp.in;
254 if (pp.option & KEYARGS)
268 if (pp.option & KEYARGS)
270 pp.state |= NOSPACE;
276 if (!(pp.state & NOEXPAND))
277 pp.state |= NOEXPAND;
283 error(3, "%s: invalid keyword macro argument", pp.token);
287 if (streq(pp.token, mac->args.key[c].name)) break;
289 error(2, "%s: invalid macro argument keyword", pp.token);
292 pp.state &= ~NOSPACE;
295 pp.token = mp->arg[c] = ++p;
300 if ((pp.mactop = pp.token = p) >= pp.maxmac)
333 if (!(pp.state & NOEXPAND))
334 pp.state |= NOEXPAND;
338 if (pp.option & KEYARGS)
340 pp.token = p + 1;
345 if ((pp.state & STRICT) && p == mp->arg[c])
351 pp.toknxt = mp->arg[c] = p;
355 if (pp.in == old_in)
358 for (kp = pp.in; kp && kp != old_in; kp = kp->prev);
363 (pp.state & COMPATIBILITY) ? 3 :
370 pp.state |= HIDDEN;
372 pp.hidden++;
378 p = pp.toknxt;
391 if (pp.state & NOEXPAND)
393 pp.token = old_token;
394 if (pp.in != old_in)
396 for (kp = pp.in; kp && kp != old_in; kp = kp->prev);
400 pp.state &= ~(COLLECTING|FILEPOP|NOEXPAND);
403 if (!(pp.option & KEYARGS))
415 if (!c && (pp.state & (COMPATIBILITY|STRICT)) == (COMPATIBILITY|STRICT))
435 else if (!(pp.state & HEADER) || (pp.option & HEADEREXPANDALL) || pp.in->type != IN_COPY)
445 if (ret < 0 && sym->hidden && !(pp.mode & EXPOSE) && !(pp.state & HEADER) && (pp.in->type == IN_FILE || pp.in->type == IN_MACRO || pp.in->type == IN_EXPAND))
449 for (inp = pp.in; inp->type != IN_FILE && inp->prev; inp = inp->prev);
450 sfsprintf(pp.hidebuf, MAXTOKEN, "_%d_%s_hIDe", inp->index, sym->name);
451 PUSH_STRING(pp.hidebuf);
454 pp.state &= ~NEWLINE;
455 pp.in->flags |= IN_tokens;