Lines Matching full:identifier
38 assert(II->hadMacroDefinition() && "Identifier has not been not a macro!");
41 assert(Pos != Macros.end() && "Identifier macro info is missing!");
52 // Setup the identifier as having associated macro history.
69 // Setup the identifier as having associated macro history.
75 /// RegisterBuiltinMacro - Register the specified identifier in the identifier
78 // Get the identifier.
90 /// identifier table.
149 // If the token isn't an identifier, it's always literally expanded.
152 // If the information about this identifier is out of date, update it from
157 // If the identifier is a macro, and if that macro is enabled, it may be
169 // as long as the identifier is not a macro argument.
173 return false; // Identifier is a macro argument.
222 /// HandleMacroExpandedIdentifier - If an identifier token is read that is to be
223 /// expanded as a macro, handle it and return the next token as 'Identifier'.
224 bool Preprocessor::HandleMacroExpandedIdentifier(Token &Identifier,
237 if (Callbacks) Callbacks->MacroExpands(Identifier, MD,
238 Identifier.getLocation(),
240 ExpandBuiltinMacro(Identifier);
250 // macro, this is the identifier. For a function-like macro, this is the ')'.
251 SourceLocation ExpansionEnd = Identifier.getLocation();
259 Args = ReadFunctionLikeMacroArgs(Identifier, MI, ExpansionEnd);
276 SourceLocation ExpandLoc = Identifier.getLocation();
286 MacroExpandsInfo(Identifier, MD, ExpansionRange));
288 Callbacks->MacroExpands(Identifier, MD, ExpansionRange, Args);
303 Diag(Identifier, diag::warn_pp_ambiguous_macro)
304 << Identifier.getIdentifierInfo();
306 << Identifier.getIdentifierInfo();
312 << Identifier.getIdentifierInfo();
328 Identifier.setFlag(Token::LeadingEmptyMacro);
329 PropagateLineStartLeadingSpaceInfo(Identifier);
333 isTrivialSingleTokenExpansion(MI, Identifier.getIdentifierInfo(),
343 // identifier to the expanded token.
344 bool isAtStartOfLine = Identifier.isAtStartOfLine();
345 bool hasLeadingSpace = Identifier.hasLeadingSpace();
348 Identifier = MI->getReplacementToken(0);
351 Identifier.setFlagValue(Token::StartOfLine , isAtStartOfLine);
352 Identifier.setFlagValue(Token::LeadingSpace, hasLeadingSpace);
357 SourceMgr.createExpansionLoc(Identifier.getLocation(), ExpandLoc,
358 ExpansionEnd,Identifier.getLength());
359 Identifier.setLocation(Loc);
363 if (IdentifierInfo *NewII = Identifier.getIdentifierInfo()) {
366 Identifier.setFlag(Token::DisableExpand);
370 Diag(Identifier, diag::pp_disabled_macro_expansion);
374 // Since this is not an identifier token, it can't be macro expanded, so
381 EnterMacro(Identifier, ExpansionEnd, MI, Args);
822 /// the identifier tokens inserted.
857 /// specified by the identifier as a standard language feature.
1014 /// specified by the identifier, either as an extension or a standard language
1076 // Return a valid identifier token.
1077 assert(Tok.is(tok::identifier));
1210 /// \brief Process __building_module(identifier) expression.
1230 // Ensure that we have an identifier.
1231 if (Tok.isNot(tok::identifier)) {
1253 /// ExpandBuiltinMacro - If an identifier token is read that is to be expanded
1393 // The argument to these builtins should be a parenthesized identifier.
1403 // Read the identifier
1433 Value = FeatureII->getTokenID() == tok::identifier;
1474 // The argument to these builtins should be a parenthesized identifier.
1527 // The argument to this builtin should be an identifier. The
1528 // builtin evaluates to 1 when that identifier names the module we are
1533 // The current module as an identifier.
1541 // We're expecting '__identifier' '(' identifier ')'. Try to recover
1550 Tok.setKind(tok::identifier);
1558 Tok.setKind(tok::identifier);
1577 llvm_unreachable("Unknown identifier!");