Lines Matching refs:ExprResult

502 ExprResult Sema::DefaultFunctionArrayConversion(Expr *E, bool Diagnose) {  in DefaultFunctionArrayConversion()
505 ExprResult result = CheckPlaceholderExpr(E); in DefaultFunctionArrayConversion()
534 ExprResult Res = ImpCastExprToType(E, Context.getArrayDecayedType(Ty), in DefaultFunctionArrayConversion()
626 ExprResult Sema::DefaultLvalueConversion(Expr *E) { in DefaultLvalueConversion()
629 ExprResult result = CheckPlaceholderExpr(E); in DefaultLvalueConversion()
705 ExprResult Res = CheckLValueToRValueConversionOperand(E); in DefaultLvalueConversion()
736 ExprResult Sema::DefaultFunctionArrayLvalueConversion(Expr *E, bool Diagnose) { in DefaultFunctionArrayLvalueConversion()
737 ExprResult Res = DefaultFunctionArrayConversion(E, Diagnose); in DefaultFunctionArrayLvalueConversion()
748 ExprResult Sema::CallExprUnaryConversions(Expr *E) { in CallExprUnaryConversions()
750 ExprResult Res = E; in CallExprUnaryConversions()
770 ExprResult Sema::UsualUnaryConversions(Expr *E) { in UsualUnaryConversions()
772 ExprResult Res = DefaultFunctionArrayLvalueConversion(E); in UsualUnaryConversions()
853 ExprResult Sema::DefaultArgumentPromotion(Expr *E) { in DefaultArgumentPromotion()
857 ExprResult Res = UsualUnaryConversions(E); in DefaultArgumentPromotion()
904 ExprResult Temp = PerformCopyInitialization( in DefaultArgumentPromotion()
1015 ExprResult Sema::DefaultVariadicArgumentPromotion(Expr *E, VariadicCallType CT, in DefaultVariadicArgumentPromotion()
1026 ExprResult ExprRes = CheckPlaceholderExpr(E); in DefaultVariadicArgumentPromotion()
1033 ExprResult ExprRes = DefaultArgumentPromotion(E); in DefaultVariadicArgumentPromotion()
1052 ExprResult TrapFn = ActOnIdExpression(TUScope, SS, TemplateKWLoc, Name, in DefaultVariadicArgumentPromotion()
1058 ExprResult Call = BuildCallExpr(TUScope, TrapFn.get(), E->getBeginLoc(), in DefaultVariadicArgumentPromotion()
1063 ExprResult Comma = in DefaultVariadicArgumentPromotion()
1083 static bool handleIntegerToComplexFloatConversion(Sema &S, ExprResult &IntExpr, in handleIntegerToComplexFloatConversion()
1084 ExprResult &ComplexExpr, in handleIntegerToComplexFloatConversion()
1105 static QualType handleComplexFloatConversion(Sema &S, ExprResult &LHS, in handleComplexFloatConversion()
1106 ExprResult &RHS, QualType LHSType, in handleComplexFloatConversion()
1161 static QualType handleIntToFloatConversion(Sema &S, ExprResult &FloatExpr, in handleIntToFloatConversion()
1162 ExprResult &IntExpr, in handleIntToFloatConversion()
1192 static QualType handleFloatConversion(Sema &S, ExprResult &LHS, in handleFloatConversion()
1193 ExprResult &RHS, QualType LHSType, in handleFloatConversion()
1267 typedef ExprResult PerformCastFn(Sema &S, Expr *operand, QualType toType);
1272 ExprResult doIntegralCast(Sema &S, Expr *op, QualType toType) { in doIntegralCast()
1276 ExprResult doComplexIntegralCast(Sema &S, Expr *op, QualType toType) { in doComplexIntegralCast()
1285 static QualType handleIntegerConversion(Sema &S, ExprResult &LHS, in handleIntegerConversion()
1286 ExprResult &RHS, QualType LHSType, in handleIntegerConversion()
1335 static QualType handleComplexIntConversion(Sema &S, ExprResult &LHS, in handleComplexIntConversion()
1336 ExprResult &RHS, QualType LHSType, in handleComplexIntConversion()
1525 QualType Sema::UsualArithmeticConversions(ExprResult &LHS, ExprResult &RHS, in UsualArithmeticConversions()
1609 ExprResult
1627 ExprResult ER = CreateGenericSelectionExpr(KeyLoc, DefaultLoc, RParenLoc, in ActOnGenericSelectionExpr()
1635 ExprResult
1650 ExprResult R = DefaultFunctionArrayLvalueConversion(ControllingExpr); in CreateGenericSelectionExpr()
1822 static ExprResult BuildCookedLiteralOperatorCall(Sema &S, Scope *Scope, in BuildCookedLiteralOperatorCall()
1857 ExprResult
2485 ExprResult
2576 ExprResult E(LookupInObjCMethod(R, S, II, true)); in ActOnIdExpression()
2661 ExprResult E(LookupInObjCMethod(R, S, Ivar->getIdentifier())); in ActOnIdExpression()
2738 ExprResult Sema::BuildQualifiedDeclarationNameExpr( in BuildQualifiedDeclarationNameExpr()
2898 ExprResult Sema::BuildIvarRefExpr(Scope *S, SourceLocation Loc, in BuildIvarRefExpr()
2923 ExprResult SelfExpr = in BuildIvarRefExpr()
2961 ExprResult
2976 return ExprResult(false); in LookupInObjCMethod()
2999 ExprResult
3221 ExprResult Sema::BuildDeclarationNameExpr(const CXXScopeSpec &SS, in BuildDeclarationNameExpr()
3259 ExprResult Sema::BuildDeclarationNameExpr( in BuildDeclarationNameExpr()
3526 ExprResult Sema::BuildPredefinedExpr(SourceLocation Loc, in BuildPredefinedExpr()
3579 ExprResult Sema::BuildSYCLUniqueStableNameExpr(SourceLocation OpLoc, in BuildSYCLUniqueStableNameExpr()
3586 ExprResult Sema::ActOnSYCLUniqueStableNameExpr(SourceLocation OpLoc, in ActOnSYCLUniqueStableNameExpr()
3601 ExprResult Sema::ActOnPredefinedExpr(SourceLocation Loc, tok::TokenKind Kind) { in ActOnPredefinedExpr()
3618 ExprResult Sema::ActOnCharacterConstant(const Token &Tok, Scope *UDLScope) { in ActOnCharacterConstant()
3678 ExprResult Sema::ActOnIntegerConstant(SourceLocation Loc, uint64_t Val) { in ActOnIntegerConstant()
3729 ExprResult R = VerifyIntegerConstantExpression(E, &ValueAPS); in CheckLoopHintExpr()
3744 ExprResult Sema::ActOnNumericConstant(const Token &Tok, Scope *UDLScope) { in ActOnNumericConstant()
4161 ExprResult Sema::ActOnParenExpr(SourceLocation L, SourceLocation R, Expr *E) { in ActOnParenExpr()
4268 ExprResult Result = CheckUnevaluatedOperand(E); in CheckUnaryExprOrTypeTraitOperand()
4592 ExprResult
4641 ExprResult
4644 ExprResult PE = CheckPlaceholderExpr(E); in CreateUnaryExprOrTypeTraitExpr()
4685 ExprResult
4699 ExprResult Result = CreateUnaryExprOrTypeTraitExpr(ArgEx, OpLoc, ExprKind); in ActOnUnaryExprOrTypeTraitExpr()
4703 static QualType CheckRealImagOperand(Sema &S, ExprResult &V, SourceLocation Loc, in CheckRealImagOperand()
4724 ExprResult PR = S.CheckPlaceholderExpr(V.get()); in CheckRealImagOperand()
4739 ExprResult
4750 ExprResult Result = MaybeConvertParenListExprToParenExpr(S, Input); in ActOnPostfixUnaryOp()
4815 ExprResult Sema::ActOnArraySubscriptExpr(Scope *S, Expr *base, in ActOnArraySubscriptExpr()
4828 ExprResult result = MaybeConvertParenListExprToParenExpr(S, base); in ActOnArraySubscriptExpr()
4878 ExprResult result = CheckPlaceholderExpr(base); in ActOnArraySubscriptExpr()
4907 ExprResult result = CheckPlaceholderExpr(ArgExprs[0]); in ActOnArraySubscriptExpr()
4957 ExprResult Res = in ActOnArraySubscriptExpr()
4966 ExprResult Sema::tryConvertExprToType(Expr *E, QualType Ty) { in tryConvertExprToType()
4974 ExprResult Sema::CreateBuiltinMatrixSubscriptExpr(Expr *Base, Expr *RowIdx, in CreateBuiltinMatrixSubscriptExpr()
4977 ExprResult BaseR = CheckPlaceholderExpr(Base); in CreateBuiltinMatrixSubscriptExpr()
4982 ExprResult RowR = CheckPlaceholderExpr(RowIdx); in CreateBuiltinMatrixSubscriptExpr()
4997 ExprResult ColumnR = CheckPlaceholderExpr(ColumnIdx); in CreateBuiltinMatrixSubscriptExpr()
5023 ExprResult ConvExpr = in CreateBuiltinMatrixSubscriptExpr()
5088 ExprResult Sema::ActOnOMPArraySectionExpr(Expr *Base, SourceLocation LBLoc, in ActOnOMPArraySectionExpr()
5096 ExprResult Result = CheckPlaceholderExpr(Base); in ActOnOMPArraySectionExpr()
5102 ExprResult Result = CheckPlaceholderExpr(LowerBound); in ActOnOMPArraySectionExpr()
5111 ExprResult Result = CheckPlaceholderExpr(Length); in ActOnOMPArraySectionExpr()
5120 ExprResult Result = CheckPlaceholderExpr(Stride); in ActOnOMPArraySectionExpr()
5182 ExprResult Res = in ActOnOMPArraySectionExpr()
5264 ExprResult Result = DefaultFunctionArrayLvalueConversion(Base); in ActOnOMPArraySectionExpr()
5274 ExprResult Sema::ActOnOMPArrayShapingExpr(Expr *Base, SourceLocation LParenLoc, in ActOnOMPArrayShapingExpr()
5279 ExprResult Result = CheckPlaceholderExpr(Base); in ActOnOMPArrayShapingExpr()
5304 ExprResult Result = CheckPlaceholderExpr(Dim); in ActOnOMPArrayShapingExpr()
5317 ExprResult Result = in ActOnOMPArrayShapingExpr()
5349 ExprResult Sema::ActOnOMPIteratorExpr(Scope *S, SourceLocation IteratorKwLoc, in ActOnOMPIteratorExpr()
5420 ExprResult BeginRes = in ActOnOMPIteratorExpr()
5426 ExprResult EndRes = PerformImplicitConversion(End, DeclTy, AA_Converting); in ActOnOMPIteratorExpr()
5476 ExprResult Res = CreateBuiltinBinOp(D.AssignmentLoc, BO_Sub, D.Range.End, in ActOnOMPIteratorExpr()
5482 ExprResult St, St1; in ActOnOMPIteratorExpr()
5507 ExprResult Res1 = CreateBuiltinBinOp(D.AssignmentLoc, BO_Sub, in ActOnOMPIteratorExpr()
5536 ExprResult CmpRes = in ActOnOMPIteratorExpr()
5563 ExprResult RefRes = in ActOnOMPIteratorExpr()
5568 ExprResult UpdateRes; in ActOnOMPIteratorExpr()
5586 ExprResult VDRes = in ActOnOMPIteratorExpr()
5602 ExprResult CounterUpdateRes = in ActOnOMPIteratorExpr()
5635 ExprResult
5656 ExprResult Result = DefaultFunctionArrayLvalueConversion(LHSExp); in CreateBuiltinArraySubscriptExpr()
5661 ExprResult Result = DefaultFunctionArrayLvalueConversion(RHSExp); in CreateBuiltinArraySubscriptExpr()
5716 ExprResult Materialized = TemporaryMaterializationConversion(LHSExp); in CreateBuiltinArraySubscriptExpr()
5742 ExprResult Materialized = TemporaryMaterializationConversion(LHSExp); in CreateBuiltinArraySubscriptExpr()
5912 ExprResult Sema::BuildCXXDefaultArgExpr(SourceLocation CallLoc, in BuildCXXDefaultArgExpr()
6175 ExprResult ArgE = PerformCopyInitialization( in GatherArgumentsForCall()
6184 ExprResult ArgExpr = BuildCXXDefaultArgExpr(CallLoc, FDecl, Param); in GatherArgumentsForCall()
6210 ExprResult arg = checkUnknownAnyArg(CallLoc, A, paramType); in GatherArgumentsForCall()
6218 ExprResult Arg = DefaultVariadicArgumentPromotion(A, CallType, FDecl); in GatherArgumentsForCall()
6303 static ExprResult rebuildUnknownAnyFunction(Sema &S, Expr *fn);
6375 ExprResult result = S.CheckPlaceholderExpr(args[i]); in checkArgsForPlaceholders()
6412 ExprResult ArgRes = in rewriteBuiltinFunctionDecl()
6606 ExprResult Sema::ActOnCallExpr(Scope *Scope, Expr *Fn, SourceLocation LParenLoc, in ActOnCallExpr()
6609 ExprResult Call = in ActOnCallExpr()
6641 ExprResult Sema::BuildCallExpr(Scope *Scope, Expr *Fn, SourceLocation LParenLoc, in BuildCallExpr()
6646 ExprResult Result = MaybeConvertParenListExprToParenExpr(Scope, Fn); in BuildCallExpr()
6668 ExprResult result = CheckPlaceholderExpr(Fn); in BuildCallExpr()
6698 ExprResult result = rebuildUnknownAnyFunction(*this, Fn); in BuildCallExpr()
6732 ExprResult result = rebuildUnknownAnyFunction(*this, Fn); in BuildCallExpr()
6858 ExprResult DeclRef = in BuildBuiltinCallExpr()
6862 ExprResult Call = in BuildBuiltinCallExpr()
6873 ExprResult Sema::ActOnAsTypeExpr(Expr *E, ParsedType ParsedDestTy, in ActOnAsTypeExpr()
6881 ExprResult Sema::BuildAsTypeExpr(Expr *E, QualType DestTy, in BuildAsTypeExpr()
6900 ExprResult Sema::ActOnConvertVectorExpr(Expr *E, ParsedType ParsedDestTy, in ActOnConvertVectorExpr()
6914 ExprResult Sema::BuildResolvedCallExpr(Expr *Fn, NamedDecl *NDecl, in BuildResolvedCallExpr()
6955 ExprResult Result; in BuildResolvedCallExpr()
6993 ExprResult rewrite = rebuildUnknownAnyFunction(*this, Fn); in BuildResolvedCallExpr()
7032 ExprResult Result = CorrectDelayedTyposInExpr(TheCall); in BuildResolvedCallExpr()
7140 ExprResult ArgE = in BuildResolvedCallExpr()
7148 ExprResult ArgE = DefaultArgumentPromotion(Arg); in BuildResolvedCallExpr()
7206 ExprResult
7220 ExprResult
7250 ExprResult Result = InitSeq.Perform(*this, Entity, Kind, LiteralExpr, in BuildCompoundLiteralExpr()
7332 ExprResult
7400 ExprResult
7410 ExprResult result = CheckPlaceholderExpr(InitArgList[I]); in BuildInitList()
7427 void Sema::maybeExtendBlockObject(ExprResult &E) { in maybeExtendBlockObject()
7442 CastKind Sema::PrepareCastToObjCObjectPointer(ExprResult &E) { in PrepareCastToObjCObjectPointer()
7457 CastKind Sema::PrepareScalarCast(ExprResult &Src, QualType DestTy) { in PrepareScalarCast()
7859 ExprResult Sema::prepareVectorSplat(QualType VectorTy, Expr *SplattedExpr) { in prepareVectorSplat()
7875 ExprResult CastExprRes = ImpCastExprToType(SplattedExpr, Context.IntTy, in prepareVectorSplat()
7883 ExprResult CastExprRes = SplattedExpr; in prepareVectorSplat()
7892 ExprResult Sema::CheckExtVectorCast(SourceRange R, QualType DestTy, in CheckExtVectorCast()
7926 ExprResult
7942 ExprResult Res = CorrectDelayedTyposInExpr(CastExpr); in ActOnCastExpr()
7983 ExprResult Result = MaybeConvertParenListExprToParenExpr(S, CastExpr); in ActOnCastExpr()
8000 ExprResult Sema::BuildVectorLiteral(SourceLocation LParenLoc, in BuildVectorLiteral()
8043 ExprResult Literal = DefaultLvalueConversion(exprs[0]); in BuildVectorLiteral()
8065 ExprResult Literal = DefaultLvalueConversion(exprs[0]); in BuildVectorLiteral()
8085 ExprResult
8091 ExprResult Result(E->getExpr(0)); in MaybeConvertParenListExprToParenExpr()
8102 ExprResult Sema::ActOnParenListExpr(SourceLocation L, in ActOnParenListExpr()
8169 static QualType checkConditionalVoidType(Sema &S, ExprResult &LHS, in checkConditionalVoidType()
8170 ExprResult &RHS) { in checkConditionalVoidType()
8187 static bool checkConditionalNullPointer(Sema &S, ExprResult &NullExpr, in checkConditionalNullPointer()
8200 static QualType checkConditionalPointerCompatibility(Sema &S, ExprResult &LHS, in checkConditionalPointerCompatibility()
8201 ExprResult &RHS, in checkConditionalPointerCompatibility()
8330 ExprResult &LHS, in checkConditionalBlockPointerCompatibility()
8331 ExprResult &RHS, in checkConditionalBlockPointerCompatibility()
8355 checkConditionalObjectPointersCompatibility(Sema &S, ExprResult &LHS, in checkConditionalObjectPointersCompatibility()
8356 ExprResult &RHS, in checkConditionalObjectPointersCompatibility()
8394 static bool checkPointerIntegerMismatch(Sema &S, ExprResult &Int, in checkPointerIntegerMismatch()
8424 static QualType OpenCLArithmeticConversions(Sema &S, ExprResult &LHS, in OpenCLArithmeticConversions()
8425 ExprResult &RHS, in OpenCLArithmeticConversions()
8479 OpenCLConvertScalarsToVectors(Sema &S, ExprResult &LHS, ExprResult &RHS, in OpenCLConvertScalarsToVectors()
8561 OpenCLCheckVectorConditional(Sema &S, ExprResult &Cond, in OpenCLCheckVectorConditional()
8562 ExprResult &LHS, ExprResult &RHS, in OpenCLCheckVectorConditional()
8613 QualType Sema::CheckConditionalOperands(ExprResult &Cond, ExprResult &LHS, in CheckConditionalOperands()
8614 ExprResult &RHS, ExprValueKind &VK, in CheckConditionalOperands()
8618 ExprResult LHSResult = CheckPlaceholderExpr(LHS.get()); in CheckConditionalOperands()
8622 ExprResult RHSResult = CheckPlaceholderExpr(RHS.get()); in CheckConditionalOperands()
8783 QualType Sema::FindCompositeObjCPointerType(ExprResult &LHS, ExprResult &RHS, in FindCompositeObjCPointerType()
9112 ExprResult Sema::ActOnConditionalOp(SourceLocation QuestionLoc, in ActOnConditionalOp()
9120 ExprResult CondResult = CorrectDelayedTyposInExpr(CondExpr); in ActOnConditionalOp()
9121 ExprResult LHSResult = CorrectDelayedTyposInExpr(LHSExpr); in ActOnConditionalOp()
9122 ExprResult RHSResult = CorrectDelayedTyposInExpr(RHSExpr); in ActOnConditionalOp()
9150 ExprResult result = CheckPlaceholderExpr(commonExpr); in ActOnConditionalOp()
9163 ExprResult commonRes = UsualUnaryConversions(commonExpr); in ActOnConditionalOp()
9173 ExprResult MatExpr = TemporaryMaterializationConversion(commonExpr); in ActOnConditionalOp()
9190 ExprResult Cond = CondExpr, LHS = LHSExpr, RHS = RHSExpr; in ActOnConditionalOp()
9473 ExprResult RHSPtr = &RHSExpr; in CheckAssignmentConstraints()
9505 Sema::CheckAssignmentConstraints(QualType LHSType, ExprResult &RHS, in CheckAssignmentConstraints()
9609 ExprResult *VecExpr = &RHS; in CheckAssignmentConstraints()
9846 ExprResult &EResult, QualType UnionType, in ConstructTransparentUnion()
9865 ExprResult &RHS) { in CheckTransparentUnionArgumentConstraints()
9916 Sema::CheckSingleAssignmentConstraints(QualType LHSType, ExprResult &CallerRHS, in CheckSingleAssignmentConstraints()
9927 ExprResult LocalRHS = CallerRHS; in CheckSingleAssignmentConstraints()
9928 ExprResult &RHS = ConvertRHS ? CallerRHS : LocalRHS; in CheckSingleAssignmentConstraints()
10088 QualType Sema::InvalidOperands(SourceLocation Loc, ExprResult &LHS, in InvalidOperands()
10089 ExprResult &RHS) { in InvalidOperands()
10115 QualType Sema::InvalidLogicalVectorOperands(SourceLocation Loc, ExprResult &LHS, in InvalidLogicalVectorOperands()
10116 ExprResult &RHS) { in InvalidLogicalVectorOperands()
10151 static bool tryVectorConvertAndSplat(Sema &S, ExprResult *scalar, in tryVectorConvertAndSplat()
10198 static ExprResult convertVector(Expr *E, QualType ElementType, Sema &S) { in convertVector()
10219 static bool canConvertIntToOtherIntTy(Sema &S, ExprResult *Int, in canConvertIntToOtherIntTy()
10257 static bool canConvertIntTyToFloatTy(Sema &S, ExprResult *Int, in canConvertIntTyToFloatTy()
10301 static bool tryGCCVectorConvertAndSplat(Sema &S, ExprResult *Scalar, in tryGCCVectorConvertAndSplat()
10302 ExprResult *Vector) { in tryGCCVectorConvertAndSplat()
10395 QualType Sema::CheckVectorOperands(ExprResult &LHS, ExprResult &RHS, in CheckVectorOperands()
10545 ExprResult *OtherExpr = LHSVecType ? &RHS : &LHS; in CheckVectorOperands()
10563 ExprResult *RHSExpr = &RHS; in CheckVectorOperands()
10615 QualType Sema::CheckSizelessVectorOperands(ExprResult &LHS, ExprResult &RHS, in CheckSizelessVectorOperands()
10693 static void checkArithmeticNull(Sema &S, ExprResult &LHS, ExprResult &RHS, in checkArithmeticNull()
10777 static void DiagnoseBadDivideOrRemainderValues(Sema& S, ExprResult &LHS, in DiagnoseBadDivideOrRemainderValues()
10778 ExprResult &RHS, in DiagnoseBadDivideOrRemainderValues()
10790 QualType Sema::CheckMultiplyDivideOperands(ExprResult &LHS, ExprResult &RHS, in CheckMultiplyDivideOperands()
10830 ExprResult &LHS, ExprResult &RHS, SourceLocation Loc, bool IsCompAssign) { in CheckRemainderOperands()
11147 QualType Sema::CheckAdditionOperands(ExprResult &LHS, ExprResult &RHS, in CheckAdditionOperands()
11262 QualType Sema::CheckSubtractionOperands(ExprResult &LHS, ExprResult &RHS, in CheckSubtractionOperands()
11408 static void DiagnoseBadShiftValues(Sema& S, ExprResult &LHS, ExprResult &RHS, in DiagnoseBadShiftValues()
11510 static QualType checkVectorShift(Sema &S, ExprResult &LHS, ExprResult &RHS, in checkVectorShift()
11604 static QualType checkSizelessVectorShift(Sema &S, ExprResult &LHS, in checkSizelessVectorShift()
11605 ExprResult &RHS, SourceLocation Loc, in checkSizelessVectorShift()
11696 QualType Sema::CheckShiftOperands(ExprResult &LHS, ExprResult &RHS, in CheckShiftOperands()
11727 ExprResult OldLHS = LHS; in CheckShiftOperands()
11761 ExprResult &LHS, ExprResult &RHS, in diagnoseDistinctPointerComparison()
11772 ExprResult &LHS, ExprResult &RHS) { in convertPointersToCompositeType()
11801 ExprResult &LHS, in diagnoseFunctionPointerToVoidComparison()
11802 ExprResult &RHS, in diagnoseFunctionPointerToVoidComparison()
11810 static bool isObjCObjectLiteral(ExprResult &E) { in isObjCObjectLiteral()
11912 ExprResult &LHS, ExprResult &RHS, in diagnoseObjCLiteralComparison()
11961 static void diagnoseLogicalNotOnLHSofCheck(Sema &S, ExprResult &LHS, in diagnoseLogicalNotOnLHSofCheck()
11962 ExprResult &RHS, SourceLocation Loc, in diagnoseLogicalNotOnLHSofCheck()
12225 ExprResult &LHS, in checkArithmeticOrEnumeralThreeWayCompare()
12226 ExprResult &RHS, in checkArithmeticOrEnumeralThreeWayCompare()
12233 ExprResult LHSStripped = LHS.get()->IgnoreParenImpCasts(); in checkArithmeticOrEnumeralThreeWayCompare()
12234 ExprResult RHSStripped = RHS.get()->IgnoreParenImpCasts(); in checkArithmeticOrEnumeralThreeWayCompare()
12306 static QualType checkArithmeticOrEnumeralCompare(Sema &S, ExprResult &LHS, in checkArithmeticOrEnumeralCompare()
12307 ExprResult &RHS, in checkArithmeticOrEnumeralCompare()
12333 void Sema::CheckPtrComparisonWithNullChar(ExprResult &E, ExprResult &NullE) { in CheckPtrComparisonWithNullChar()
12360 QualType Sema::CheckCompareOperands(ExprResult &LHS, ExprResult &RHS, in CheckCompareOperands()
12366 auto IsAnyPointerType = [](ExprResult E) { in CheckCompareOperands()
12884 QualType Sema::CheckVectorCompareOperands(ExprResult &LHS, ExprResult &RHS, in CheckVectorCompareOperands()
12945 QualType Sema::CheckSizelessVectorCompareOperands(ExprResult &LHS, in CheckSizelessVectorCompareOperands()
12946 ExprResult &RHS, in CheckSizelessVectorCompareOperands()
12986 static void diagnoseXorMisusedAsPow(Sema &S, const ExprResult &XorLHS, in diagnoseXorMisusedAsPow()
12987 const ExprResult &XorRHS, in diagnoseXorMisusedAsPow()
13108 QualType Sema::CheckVectorLogicalOperands(ExprResult &LHS, ExprResult &RHS, in CheckVectorLogicalOperands()
13133 QualType Sema::CheckMatrixElementwiseOperands(ExprResult &LHS, ExprResult &RHS, in CheckMatrixElementwiseOperands()
13159 ExprResult OriginalLHS = LHS; in CheckMatrixElementwiseOperands()
13160 ExprResult OriginalRHS = RHS; in CheckMatrixElementwiseOperands()
13179 QualType Sema::CheckMatrixMultiplyOperands(ExprResult &LHS, ExprResult &RHS, in CheckMatrixMultiplyOperands()
13224 inline QualType Sema::CheckBitwiseOperands(ExprResult &LHS, ExprResult &RHS, in CheckBitwiseOperands()
13271 ExprResult LHSResult = LHS, RHSResult = RHS; in CheckBitwiseOperands()
13288 inline QualType Sema::CheckLogicalOperands(ExprResult &LHS, ExprResult &RHS, in CheckLogicalOperands()
13297 for (const ExprResult &HS : {LHS, RHS}) { in CheckLogicalOperands()
13375 ExprResult LHSRes = PerformContextuallyConvertToBool(LHS.get()); in CheckLogicalOperands()
13380 ExprResult RHSRes = PerformContextuallyConvertToBool(RHS.get()); in CheckLogicalOperands()
13825 QualType Sema::CheckAssignmentOperands(Expr *LHSExpr, ExprResult &RHS, in CheckAssignmentOperands()
14038 static QualType CheckCommaOperands(Sema &S, ExprResult &LHS, ExprResult &RHS, in CheckCommaOperands()
14122 ExprResult PR = S.CheckPlaceholderExpr(Op); in CheckIncrementDecrementOperand()
14251 QualType Sema::CheckAddressOfOperand(ExprResult &OrigOp, SourceLocation OpLoc) { in CheckAddressOfOperand()
14493 ExprResult ConvResult = S.UsualUnaryConversions(Op); in CheckIndirectionOperand()
14514 ExprResult PR = S.CheckPlaceholderExpr(Op); in CheckIndirectionOperand()
14688 static void checkObjCPointerIntrospection(Sema &S, ExprResult &L, ExprResult &R, in checkObjCPointerIntrospection()
14744 static ExprResult convertHalfVecBinOp(Sema &S, ExprResult LHS, ExprResult RHS, in convertHalfVecBinOp()
14776 static std::pair<ExprResult, ExprResult>
14779 ExprResult LHS = LHSExpr, RHS = RHSExpr; in CorrectDelayedTyposInBinOp()
14789 return ExprResult(E); in CorrectDelayedTyposInBinOp()
14827 ExprResult Sema::CreateBuiltinBinOp(SourceLocation OpLoc, in CreateBuiltinBinOp()
14842 ExprResult Init = InitSeq.Perform(*this, Entity, Kind, RHSExpr); in CreateBuiltinBinOp()
14848 ExprResult LHS = LHSExpr, RHS = RHSExpr; in CreateBuiltinBinOp()
15314 ExprResult Sema::ActOnBinOp(Scope *S, SourceLocation TokLoc, in ActOnBinOp()
15341 static ExprResult BuildOverloadedBinOp(Sema &S, Scope *Sc, SourceLocation OpLoc, in BuildOverloadedBinOp()
15368 ExprResult Sema::BuildBinOp(Scope *S, SourceLocation OpLoc, in BuildBinOp()
15371 ExprResult LHS, RHS; in BuildBinOp()
15398 ExprResult resolvedRHS = CheckPlaceholderExpr(RHSExpr); in BuildBinOp()
15429 ExprResult LHS = CheckPlaceholderExpr(LHSExpr); in BuildBinOp()
15452 ExprResult resolvedRHS = CheckPlaceholderExpr(RHSExpr); in BuildBinOp()
15525 ExprResult Sema::CreateBuiltinUnaryOp(SourceLocation OpLoc, in CreateBuiltinUnaryOp()
15528 ExprResult Input = InputExpr; in CreateBuiltinUnaryOp()
15796 ExprResult Sema::BuildUnaryOp(Scope *S, SourceLocation OpLoc, in BuildUnaryOp()
15819 ExprResult Result = CheckPlaceholderExpr(Input); in BuildUnaryOp()
15840 ExprResult Sema::ActOnUnaryOp(Scope *S, SourceLocation OpLoc, in ActOnUnaryOp()
15846 ExprResult Sema::ActOnAddrLabel(SourceLocation OpLoc, SourceLocation LabLoc, in ActOnAddrLabel()
15866 ExprResult Sema::ActOnStmtExpr(Scope *S, SourceLocation LPLoc, Stmt *SubStmt, in ActOnStmtExpr()
15871 ExprResult Sema::BuildStmtExpr(SourceLocation LPLoc, Stmt *SubStmt, in BuildStmtExpr()
15910 ExprResult Sema::ActOnStmtExprResult(ExprResult ER) { in ActOnStmtExprResult()
15941 ExprResult Sema::BuildBuiltinOffsetOf(SourceLocation BuiltinLoc, in BuildBuiltinOffsetOf()
15979 ExprResult IdxRval = DefaultLvalueConversion(static_cast<Expr*>(OC.U.E)); in BuildBuiltinOffsetOf()
16104 ExprResult Sema::ActOnBuiltinOffsetOf(Scope *S, in ActOnBuiltinOffsetOf()
16123 ExprResult Sema::ActOnChooseExpr(SourceLocation BuiltinLoc, in ActOnChooseExpr()
16138 ExprResult CondICE = VerifyIntegerConstantExpression( in ActOnChooseExpr()
16321 ExprResult Sema::ActOnBlockStmtExpr(SourceLocation CaretLoc, in ActOnBlockStmtExpr()
16438 ExprResult Result = BuildDeclarationNameExpr( in ActOnBlockStmtExpr()
16506 ExprResult Sema::ActOnVAArg(SourceLocation BuiltinLoc, Expr *E, ParsedType Ty, in ActOnVAArg()
16513 ExprResult Sema::BuildVAArgExpr(SourceLocation BuiltinLoc, in BuildVAArgExpr()
16555 ExprResult Result = UsualUnaryConversions(E); in BuildVAArgExpr()
16564 ExprResult Init = PerformCopyInitialization(Entity, SourceLocation(), E); in BuildVAArgExpr()
16665 ExprResult Sema::ActOnGNUNullExpr(SourceLocation TokenLoc) { in ActOnGNUNullExpr()
16750 ExprResult Sema::ActOnSourceLocExpr(SourceLocExpr::IdentKind Kind, in ActOnSourceLocExpr()
16781 ExprResult Sema::BuildSourceLocExpr(SourceLocExpr::IdentKind Kind, in BuildSourceLocExpr()
17143 ExprResult Sema::VerifyIntegerConstantExpression(Expr *E, in VerifyIntegerConstantExpression()
17161 ExprResult Sema::VerifyIntegerConstantExpression(Expr *E, in VerifyIntegerConstantExpression()
17191 ExprResult
17203 ExprResult Converted; in VerifyIntegerConstantExpression()
17265 ExprResult RValueExpr = DefaultLvalueConversion(E); in VerifyIntegerConstantExpression()
17352 ExprResult TransformDeclRefExpr(DeclRefExpr *E) { in TransformDeclRefExpr()
17363 ExprResult TransformUnaryOperator(UnaryOperator *E) { in TransformUnaryOperator()
17380 ExprResult Sema::TransformToPotentiallyEvaluated(Expr *E) { in TransformToPotentiallyEvaluated()
17494 ExprResult Sema::CheckForImmediateInvocation(ExprResult E, FunctionDecl *Decl) { in CheckForImmediateInvocation()
17575 ExprResult TransformConstantExpr(ConstantExpr *E) { in RemoveNestedImmediateInvocation()
17583 ExprResult TransformCXXOperatorCallExpr(CXXOperatorCallExpr *E) { in RemoveNestedImmediateInvocation()
17589 ExprResult TransformInitializer(Expr *Init, bool NotCopyInit) { in RemoveNestedImmediateInvocation()
17599 ExprResult TransformDeclRefExpr(DeclRefExpr *E) { in RemoveNestedImmediateInvocation()
17603 ExprResult TransformLambdaExpr(LambdaExpr *E) { in RemoveNestedImmediateInvocation()
17628 ExprResult Res = Transformer.TransformExpr(It->getPointer()->getSubExpr()); in RemoveNestedImmediateInvocation()
17759 ExprResult Sema::HandleExprEvaluationContextForTypeof(Expr *E) { in HandleExprEvaluationContextForTypeof()
17760 ExprResult Result = CheckPlaceholderExpr(E); in HandleExprEvaluationContextForTypeof()
19014 static ExprResult rebuildPotentialResultsAsNonOdrUsed(Sema &S, Expr *E, in rebuildPotentialResultsAsNonOdrUsed()
19128 ExprResult Base = Rebuild(OldBase); in rebuildPotentialResultsAsNonOdrUsed()
19143 ExprResult Base = Rebuild(ME->getBase()); in rebuildPotentialResultsAsNonOdrUsed()
19177 ExprResult Sub = Rebuild(LHS); in rebuildPotentialResultsAsNonOdrUsed()
19183 ExprResult Sub = Rebuild(RHS); in rebuildPotentialResultsAsNonOdrUsed()
19197 ExprResult Sub = Rebuild(PE->getSubExpr()); in rebuildPotentialResultsAsNonOdrUsed()
19207 ExprResult LHS = Rebuild(CO->getLHS()); in rebuildPotentialResultsAsNonOdrUsed()
19210 ExprResult RHS = Rebuild(CO->getRHS()); in rebuildPotentialResultsAsNonOdrUsed()
19229 ExprResult Sub = Rebuild(UO->getSubExpr()); in rebuildPotentialResultsAsNonOdrUsed()
19245 ExprResult AssocExpr = Rebuild(OrigAssocExpr); in rebuildPotentialResultsAsNonOdrUsed()
19270 ExprResult LHS = Rebuild(CE->getLHS()); in rebuildPotentialResultsAsNonOdrUsed()
19274 ExprResult RHS = Rebuild(CE->getLHS()); in rebuildPotentialResultsAsNonOdrUsed()
19292 ExprResult Sub = Rebuild(CE->getSubExpr()); in rebuildPotentialResultsAsNonOdrUsed()
19309 ExprResult Sub = Rebuild(ICE->getSubExpr()); in rebuildPotentialResultsAsNonOdrUsed()
19331 ExprResult Sema::CheckLValueToRValueConversionOperand(Expr *E) { in CheckLValueToRValueConversionOperand()
19347 ExprResult Result = in CheckLValueToRValueConversionOperand()
19354 ExprResult Sema::ActOnConstantExpression(ExprResult Res) { in ActOnConstantExpression()
19990 ExprResult Sema::CheckBooleanCondition(SourceLocation Loc, Expr *E, in CheckBooleanCondition()
19996 ExprResult result = CheckPlaceholderExpr(E); in CheckBooleanCondition()
20004 ExprResult ERes = DefaultFunctionArrayLvalueConversion(E); in CheckBooleanCondition()
20029 ExprResult Cond; in ActOnCondition()
20062 : StmtVisitor<RebuildUnknownAnyFunction, ExprResult> {
20068 ExprResult VisitStmt(Stmt *S) { in VisitStmt()
20072 ExprResult VisitExpr(Expr *E) { in VisitExpr()
20080 template <class T> ExprResult rebuildSugarExpr(T *E) { in rebuildSugarExpr()
20081 ExprResult SubResult = Visit(E->getSubExpr()); in rebuildSugarExpr()
20092 ExprResult VisitParenExpr(ParenExpr *E) { in VisitParenExpr()
20096 ExprResult VisitUnaryExtension(UnaryOperator *E) { in VisitUnaryExtension()
20100 ExprResult VisitUnaryAddrOf(UnaryOperator *E) { in VisitUnaryAddrOf()
20101 ExprResult SubResult = Visit(E->getSubExpr()); in VisitUnaryAddrOf()
20112 ExprResult resolveDecl(Expr *E, ValueDecl *VD) { in resolveDecl()
20126 ExprResult VisitMemberExpr(MemberExpr *E) { in VisitMemberExpr()
20130 ExprResult VisitDeclRefExpr(DeclRefExpr *E) { in VisitDeclRefExpr()
20138 static ExprResult rebuildUnknownAnyFunction(Sema &S, Expr *FunctionExpr) { in rebuildUnknownAnyFunction()
20139 ExprResult Result = RebuildUnknownAnyFunction(S).Visit(FunctionExpr); in rebuildUnknownAnyFunction()
20150 : StmtVisitor<RebuildUnknownAnyExpr, ExprResult> {
20160 ExprResult VisitStmt(Stmt *S) { in VisitStmt()
20164 ExprResult VisitExpr(Expr *E) { in VisitExpr()
20170 ExprResult VisitCallExpr(CallExpr *E);
20171 ExprResult VisitObjCMessageExpr(ObjCMessageExpr *E);
20175 template <class T> ExprResult rebuildSugarExpr(T *E) { in rebuildSugarExpr()
20176 ExprResult SubResult = Visit(E->getSubExpr()); in rebuildSugarExpr()
20186 ExprResult VisitParenExpr(ParenExpr *E) { in VisitParenExpr()
20190 ExprResult VisitUnaryExtension(UnaryOperator *E) { in VisitUnaryExtension()
20194 ExprResult VisitUnaryAddrOf(UnaryOperator *E) { in VisitUnaryAddrOf()
20214 ExprResult SubResult = Visit(E->getSubExpr()); in VisitUnaryAddrOf()
20220 ExprResult VisitImplicitCastExpr(ImplicitCastExpr *E);
20222 ExprResult resolveDecl(Expr *E, ValueDecl *VD);
20224 ExprResult VisitMemberExpr(MemberExpr *E) { in VisitMemberExpr()
20228 ExprResult VisitDeclRefExpr(DeclRefExpr *E) { in VisitDeclRefExpr()
20235 ExprResult RebuildUnknownAnyExpr::VisitCallExpr(CallExpr *E) { in VisitCallExpr()
20329 ExprResult CalleeResult = Visit(CalleeExpr); in VisitCallExpr()
20337 ExprResult RebuildUnknownAnyExpr::VisitObjCMessageExpr(ObjCMessageExpr *E) { in VisitObjCMessageExpr()
20358 ExprResult RebuildUnknownAnyExpr::VisitImplicitCastExpr(ImplicitCastExpr *E) { in VisitImplicitCastExpr()
20369 ExprResult Result = Visit(E->getSubExpr()); in VisitImplicitCastExpr()
20385 ExprResult Result = Visit(E->getSubExpr()); in VisitImplicitCastExpr()
20395 ExprResult RebuildUnknownAnyExpr::resolveDecl(Expr *E, ValueDecl *VD) { in resolveDecl()
20405 ExprResult Result = resolveDecl(E, VD); in resolveDecl()
20486 ExprResult Sema::checkUnknownAnyCast(SourceRange TypeRange, QualType CastType, in checkUnknownAnyCast()
20496 ExprResult result = RebuildUnknownAnyExpr(*this, CastType).Visit(CastExpr); in checkUnknownAnyCast()
20506 ExprResult Sema::forceUnknownAnyToType(Expr *E, QualType ToType) { in forceUnknownAnyToType()
20510 ExprResult Sema::checkUnknownAnyArg(SourceLocation callLoc, in checkUnknownAnyArg()
20516 ExprResult result = DefaultArgumentPromotion(arg); in checkUnknownAnyArg()
20533 static ExprResult diagnoseUnknownAnyExpr(Sema &S, Expr *E) { in diagnoseUnknownAnyExpr()
20578 ExprResult Sema::CheckPlaceholderExpr(Expr *E) { in CheckPlaceholderExpr()
20583 ExprResult Result = CorrectDelayedTyposInExpr(E); in CheckPlaceholderExpr()
20597 ExprResult Result = E; in CheckPlaceholderExpr()
20615 ExprResult result = E; in CheckPlaceholderExpr()
20748 ExprResult
20768 ExprResult Sema::ActOnObjCAvailabilityCheckExpr( in ActOnObjCAvailabilityCheckExpr()
20801 ExprResult Sema::CreateRecoveryExpr(SourceLocation Begin, SourceLocation End, in CreateRecoveryExpr()