Lines Matching refs:Tok

26 void TokenLexer::Init(Token &Tok, SourceLocation ELEnd, MacroInfo *MI,
36 ExpandLocStart = Tok.getLocation();
38 AtStartOfLine = Tok.isAtStartOfLine();
39 HasLeadingSpace = Tok.hasLeadingSpace();
291 Token &Tok = ResultToks[i];
292 if (Tok.is(tok::hashhash))
293 Tok.setKind(tok::unknown);
335 Token &Tok = ResultToks[i];
336 if (Tok.is(tok::hashhash))
337 Tok.setKind(tok::unknown);
410 bool TokenLexer::Lex(Token &Tok) {
417 Tok.startToken();
418 Tok.setFlagValue(Token::StartOfLine , AtStartOfLine);
419 Tok.setFlagValue(Token::LeadingSpace, HasLeadingSpace || NextTokGetsSpace);
421 Tok.setFlag(Token::LeadingEmptyMacro);
422 return PP.HandleEndOfTokenLexer(Tok);
432 Tok = Tokens[CurToken++];
441 if (PasteTokens(Tok))
454 SM.isBeforeInSLocAddrSpace(Tok.getLocation(), MacroStartSLocOffset)) {
456 if (Tok.is(tok::comment)) {
457 instLoc = SM.createExpansionLoc(Tok.getLocation(),
460 Tok.getLength());
462 instLoc = getExpansionLocForMacroDefLoc(Tok.getLocation());
465 Tok.setLocation(instLoc);
471 Tok.setFlagValue(Token::StartOfLine , AtStartOfLine);
472 Tok.setFlagValue(Token::LeadingSpace, HasLeadingSpace);
476 if (AtStartOfLine) Tok.setFlag(Token::StartOfLine);
477 if (HasLeadingSpace) Tok.setFlag(Token::LeadingSpace);
483 if (!Tok.isAnnotation() && Tok.getIdentifierInfo() != nullptr) {
486 IdentifierInfo *II = Tok.getIdentifierInfo();
487 Tok.setKind(II->getTokenID());
493 PP.HandlePoisonedIdentifier(Tok);
497 return PP.HandleIdentifier(Tok);
504 /// PasteTokens - Tok is the LHS of a ## operator, and CurToken is the ##
506 /// are more ## after it, chomp them iteratively. Return the result as Tok.
508 bool TokenLexer::PasteTokens(Token &Tok) {
511 SourceLocation StartLoc = Tok.getLocation();
524 Buffer.resize(Tok.getLength() + RHS.getLength());
529 unsigned LHSLen = PP.getSpelling(Tok, BufPtr, &Invalid);
560 if (Tok.isAnyIdentifier() && RHS.isAnyIdentifier()) {
600 // error. This occurs with "x ## +" and other stuff. Return with Tok
605 if (PP.getLangOpts().MicrosoftExt && Tok.is(tok::slash) &&
607 HandleMicrosoftCommentPaste(Tok);
637 Result.setFlagValue(Token::StartOfLine , Tok.isAtStartOfLine());
638 Result.setFlagValue(Token::LeadingSpace, Tok.hasLeadingSpace());
642 Tok = Result;
663 Tok.setLocation(SM.createExpansionLoc(Tok.getLocation(), StartLoc, EndLoc,
664 Tok.getLength()));
669 if (Tok.is(tok::raw_identifier)) {
672 PP.LookUpIdentifierInfo(Tok);
698 void TokenLexer::HandleMicrosoftCommentPaste(Token &Tok) {
707 PP.HandleMicrosoftCommentPaste(Tok);
788 Token &Tok = *begin_tokens;
790 SM.isInSameSLocAddrSpace(FirstLoc, Tok.getLocation(), &RelOffs);
791 Tok.setLocation(Expansion.getLocWithOffset(RelOffs));
812 Token &Tok = *begin_tokens;
813 Tok.setLocation(SM.createMacroArgExpansionLoc(Tok.getLocation(),
815 Tok.getLength()));