Home | History | Annotate | Download | only in Sema

Lines Matching refs:Tok

976     ExprResult Comma = ActOnBinOp(TUScope, E->getLocStart(), tok::comma,
1550 for (const Token &Tok : StringToks)
1551 StringTokLocs.push_back(Tok.getLocation());
3041 ExprResult Sema::ActOnPredefinedExpr(SourceLocation Loc, tok::TokenKind Kind) {
3046 case tok::kw___func__: IT = PredefinedExpr::Func; break; // [C99 6.4.2.2]
3047 case tok::kw___FUNCTION__: IT = PredefinedExpr::Function; break;
3048 case tok::kw___FUNCDNAME__: IT = PredefinedExpr::FuncDName; break; // [MS]
3049 case tok::kw___FUNCSIG__: IT = PredefinedExpr::FuncSig; break; // [MS]
3050 case tok::kw_L__FUNCTION__: IT = PredefinedExpr::LFunction; break;
3051 case tok::kw___PRETTY_FUNCTION__: IT = PredefinedExpr::PrettyFunction; break;
3057 ExprResult Sema::ActOnCharacterConstant(const Token &Tok, Scope *UDLScope) {
3060 StringRef ThisTok = PP.getSpelling(Tok, CharBuffer, &Invalid);
3064 CharLiteralParser Literal(ThisTok.begin(), ThisTok.end(), Tok.getLocation(),
3065 PP, Tok.getKind());
3090 Tok.getLocation());
3098 getUDSuffixLoc(*this, Tok.getLocation(), Literal.getUDSuffixOffset());
3107 Lit, Tok.getLocation());
3176 ExprResult Sema::ActOnNumericConstant(const Token &Tok, Scope *UDLScope) {
3179 if (Tok.getLength() == 1) {
3180 const char Val = PP.getSpellingOfSingleCharacterNumericConstant(Tok);
3181 return ActOnIntegerConstant(Tok.getLocation(), Val-'0');
3189 SpellingBuffer.resize(Tok.getLength() + 1);
3193 StringRef TokSpelling = PP.getSpelling(Tok, SpellingBuffer, &Invalid);
3197 NumericLiteralParser Literal(TokSpelling, Tok.getLocation(), PP);
3205 getUDSuffixLoc(*this, Tok.getLocation(), Literal.getUDSuffixOffset());
3229 SourceLocation TokLoc = Tok.getLocation();
3243 Lit = BuildFloatingLiteral(*this, Literal, CookedTy, Tok.getLocation());
3247 Diag(Tok.getLocation(), diag::err_integer_literal_too_large)
3250 Tok.getLocation());
3303 Res = BuildFloatingLiteral(*this, Literal, Ty, Tok.getLocation());
3311 Diag(Tok.getLocation(), diag::warn_double_const_requires_fp64);
3323 Diag(Tok.getLocation(),
3327 Diag(Tok.getLocation(), diag::ext_c99_longlong);
3336 Diag(Tok.getLocation(), diag::err_integer_literal_too_large)
3395 Diag(Tok.getLocation(),
3431 Diag(Tok.getLocation(), diag::ext_integer_literal_too_large_for_signed);
3439 Res = IntegerLiteral::Create(Context, ResultVal, Ty, Tok.getLocation());
3872 tok::TokenKind Kind, Expr *Input) {
3876 case tok::plusplus: Opc = UO_PostInc; break;
3877 case tok::minusminus: Opc = UO_PostDec; break;
5796 Result = ActOnBinOp(S, E->getExprLoc(), tok::comma, Result.get(),
10104 BinaryOperatorKind Sema::ConvertTokenKindToBinaryOpcode(tok::TokenKind Kind) {
10108 case tok::periodstar: Opc = BO_PtrMemD; break;
10109 case tok::arrowstar: Opc = BO_PtrMemI; break;
10110 case tok::star: Opc = BO_Mul; break;
10111 case tok::slash: Opc = BO_Div; break;
10112 case tok::percent: Opc = BO_Rem; break;
10113 case tok::plus: Opc = BO_Add; break;
10114 case tok::minus: Opc = BO_Sub; break;
10115 case tok::lessless: Opc = BO_Shl; break;
10116 case tok::greatergreater: Opc = BO_Shr; break;
10117 case tok::lessequal: Opc = BO_LE; break;
10118 case tok::less: Opc = BO_LT; break;
10119 case tok::greaterequal: Opc = BO_GE; break;
10120 case tok::greater: Opc = BO_GT; break;
10121 case tok::exclaimequal: Opc = BO_NE; break;
10122 case tok::equalequal: Opc = BO_EQ; break;
10123 case tok::amp: Opc = BO_And; break;
10124 case tok::caret: Opc = BO_Xor; break;
10125 case tok::pipe: Opc = BO_Or; break;
10126 case tok::ampamp: Opc = BO_LAnd; break;
10127 case tok::pipepipe: Opc = BO_LOr; break;
10128 case tok::equal: Opc = BO_Assign; break;
10129 case tok::starequal: Opc = BO_MulAssign; break;
10130 case tok::slashequal: Opc = BO_DivAssign; break;
10131 case tok::percentequal: Opc = BO_RemAssign; break;
10132 case tok::plusequal: Opc = BO_AddAssign; break;
10133 case tok::minusequal: Opc = BO_SubAssign; break;
10134 case tok::lesslessequal: Opc = BO_ShlAssign; break;
10135 case tok::greatergreaterequal: Opc = BO_ShrAssign; break;
10136 case tok::ampequal: Opc = BO_AndAssign; break;
10137 case tok::caretequal: Opc = BO_XorAssign; break;
10138 case tok::pipeequal: Opc = BO_OrAssign; break;
10139 case tok::comma: Opc = BO_Comma; break;
10145 tok::TokenKind Kind) {
10149 case tok::plusplus: Opc = UO_PreInc; break;
10150 case tok::minusminus: Opc = UO_PreDec; break;
10151 case tok::amp: Opc = UO_AddrOf; break;
10152 case tok::star: Opc = UO_Deref; break;
10153 case tok::plus: Opc = UO_Plus; break;
10154 case tok::minus: Opc = UO_Minus; break;
10155 case tok::tilde: Opc = UO_Not; break;
10156 case tok::exclaim: Opc = UO_LNot; break;
10157 case tok::kw___real: Opc = UO_Real; break;
10158 case tok::kw___imag: Opc = UO_Imag; break;
10159 case tok::kw___extension__: Opc = UO_Extension; break;
10663 // Binary Operators. 'Tok' is the token for the operator.
10665 tok::TokenKind Kind,
11039 // Unary Operators. 'Tok' is the token for the operator.
11041 tok::TokenKind Op, Expr *Input) {
14583 Sema::ActOnObjCBoolLiteral(SourceLocation OpLoc, tok::TokenKind Kind) {
14584 assert((Kind == tok::kw___objc_yes || Kind == tok::kw___objc_no) &&
14599 ObjCBoolLiteralExpr(Kind == tok::kw___objc_yes, BoolT, OpLoc);