Lines Matching refs:Sema
72 bool Sema::CanUseDecl(NamedDecl *D, bool TreatUnavailableAsInvalid) { in CanUseDecl()
106 static void DiagnoseUnusedOfDecl(Sema &S, NamedDecl *D, SourceLocation Loc) { in DiagnoseUnusedOfDecl()
120 void Sema::NoteDeletedFunction(FunctionDecl *Decl) { in NoteDeletedFunction()
160 static void diagnoseUseOfInternalDeclInInlineFunction(Sema &S, in diagnoseUseOfInternalDeclInInlineFunction()
204 void Sema::MaybeSuggestAddingStaticToDecl(const FunctionDecl *Cur) { in MaybeSuggestAddingStaticToDecl()
215 bool Sema::DiagnoseUseOfDecl(NamedDecl *D, ArrayRef<SourceLocation> Locs, in DiagnoseUseOfDecl()
407 void Sema::DiagnoseSentinelCalls(const NamedDecl *D, SourceLocation Loc, in DiagnoseSentinelCalls()
502 SourceRange Sema::getExprRange(Expr *E) const { in getExprRange()
511 ExprResult Sema::DefaultFunctionArrayConversion(Expr *E, bool Diagnose) { in DefaultFunctionArrayConversion()
553 static void CheckForNullPointerDereference(Sema &S, Expr *E) { in CheckForNullPointerDereference()
578 static void DiagnoseDirectIsaAccess(Sema &S, const ObjCIvarRefExpr *OIRE, in DiagnoseDirectIsaAccess()
635 ExprResult Sema::DefaultLvalueConversion(Expr *E) { in DefaultLvalueConversion()
747 ExprResult Sema::DefaultFunctionArrayLvalueConversion(Expr *E, bool Diagnose) { in DefaultFunctionArrayLvalueConversion()
757 ExprResult Sema::CallExprUnaryConversions(Expr *E) { in CallExprUnaryConversions()
779 ExprResult Sema::UsualUnaryConversions(Expr *E) { in UsualUnaryConversions()
862 ExprResult Sema::DefaultArgumentPromotion(Expr *E) { in DefaultArgumentPromotion()
924 Sema::VarArgKind Sema::isValidVarArgType(const QualType &Ty) { in isValidVarArgType()
979 void Sema::checkVariadicArgument(const Expr *E, VariadicCallType CT) { in checkVariadicArgument()
1024 ExprResult Sema::DefaultVariadicArgumentPromotion(Expr *E, VariadicCallType CT, in DefaultVariadicArgumentPromotion()
1093 static bool handleComplexIntegerToFloatConversion(Sema &S, ExprResult &IntExpr, in handleComplexIntegerToFloatConversion()
1121 static QualType handleComplexFloatConversion(Sema &S, ExprResult &Shorter, in handleComplexFloatConversion()
1144 static QualType handleComplexConversion(Sema &S, ExprResult &LHS, in handleComplexConversion()
1168 static QualType handleIntToFloatConversion(Sema &S, ExprResult &FloatExpr, in handleIntToFloatConversion()
1199 static QualType handleFloatConversion(Sema &S, ExprResult &LHS, in handleFloatConversion()
1249 static bool unsupportedTypeConversion(const Sema &S, QualType LHSType, in unsupportedTypeConversion()
1274 typedef ExprResult PerformCastFn(Sema &S, Expr *operand, QualType toType);
1279 ExprResult doIntegralCast(Sema &S, Expr *op, QualType toType) { in doIntegralCast()
1283 ExprResult doComplexIntegralCast(Sema &S, Expr *op, QualType toType) { in doComplexIntegralCast()
1292 static QualType handleIntegerConversion(Sema &S, ExprResult &LHS, in handleIntegerConversion()
1342 static QualType handleComplexIntConversion(Sema &S, ExprResult &LHS, in handleComplexIntConversion()
1435 static QualType handleFixedPointConversion(Sema &S, QualType LHSTy, in handleFixedPointConversion()
1474 static void checkEnumArithmeticConversions(Sema &S, Expr *LHS, Expr *RHS, in checkEnumArithmeticConversions()
1476 Sema::ArithConvKind ACK) { in checkEnumArithmeticConversions()
1488 bool IsCompAssign = ACK == Sema::ACK_CompAssign; in checkEnumArithmeticConversions()
1513 } else if (ACK == Sema::ACK_Conditional) { in checkEnumArithmeticConversions()
1519 } else if (ACK == Sema::ACK_Comparison) { in checkEnumArithmeticConversions()
1539 QualType Sema::UsualArithmeticConversions(ExprResult &LHS, ExprResult &RHS, in UsualArithmeticConversions()
1621 ExprResult Sema::ActOnGenericSelectionExpr( in ActOnGenericSelectionExpr()
1653 ExprResult Sema::CreateGenericSelectionExpr( in CreateGenericSelectionExpr()
1669 *this, Sema::ExpressionEvaluationContext::Unevaluated); in CreateGenericSelectionExpr()
1914 static SourceLocation getUDSuffixLoc(Sema &S, SourceLocation TokLoc, in getUDSuffixLoc()
1922 static ExprResult BuildCookedLiteralOperatorCall(Sema &S, Scope *Scope, in BuildCookedLiteralOperatorCall()
1941 LookupResult R(S, OpName, UDSuffixLoc, Sema::LookupOrdinaryName); in BuildCookedLiteralOperatorCall()
1945 /*DiagnoseMissing*/ true) == Sema::LOLR_Error) in BuildCookedLiteralOperatorCall()
1951 ExprResult Sema::ActOnUnevaluatedStringLiteral(ArrayRef<Token> StringToks) { in ActOnUnevaluatedStringLiteral()
1981 Sema::ExpandFunctionLocalPredefinedMacros(ArrayRef<Token> Toks) { in ExpandFunctionLocalPredefinedMacros()
2030 Sema::ActOnStringLiteral(ArrayRef<Token> StringToks, Scope *UDLScope) { in ActOnStringLiteral()
2186 Sema::BuildDeclRefExpr(ValueDecl *D, QualType Ty, ExprValueKind VK, in BuildDeclRefExpr()
2194 Sema::BuildDeclRefExpr(ValueDecl *D, QualType Ty, ExprValueKind VK, in BuildDeclRefExpr()
2207 static bool isCapturingReferenceToHostVarInCUDADeviceLambda(const Sema &S, in isCapturingReferenceToHostVarInCUDADeviceLambda()
2234 NonOdrUseReason Sema::getNonOdrUseReasonInCurrentContext(ValueDecl *D) { in getNonOdrUseReasonInCurrentContext()
2263 Sema::BuildDeclRefExpr(ValueDecl *D, QualType Ty, ExprValueKind VK, in BuildDeclRefExpr()
2320 Sema::DecomposeUnqualifiedId(const UnqualifiedId &Id, in DecomposeUnqualifiedId()
2343 const TypoCorrection &TC, Sema &SemaRef, const CXXScopeSpec &SS, in emitEmptyLookupTypoDiagnostic()
2375 bool Sema::DiagnoseDependentMemberLookup(const LookupResult &R) { in DiagnoseDependentMemberLookup()
2434 bool Sema::DiagnoseEmptyLookup(Scope *S, CXXScopeSpec &SS, LookupResult &R, in DiagnoseEmptyLookup()
2609 recoverFromMSUnqualifiedLookup(Sema &S, ASTContext &Context, in recoverFromMSUnqualifiedLookup()
2650 Sema::ActOnIdExpression(Scope *S, CXXScopeSpec &SS, in ActOnIdExpression()
2870 ExprResult Sema::BuildQualifiedDeclarationNameExpr( in BuildQualifiedDeclarationNameExpr()
2943 Sema::PerformObjectMemberConversion(Expr *From, in PerformObjectMemberConversion()
3075 bool Sema::UseArgumentDependentLookup(const CXXScopeSpec &SS, in UseArgumentDependentLookup()
3131 static bool CheckDeclInExpr(Sema &S, SourceLocation Loc, NamedDecl *D, in CheckDeclInExpr()
3163 ExprResult Sema::BuildDeclarationNameExpr(const CXXScopeSpec &SS, in BuildDeclarationNameExpr()
3196 static void diagnoseUncapturableValueReferenceOrBinding(Sema &S,
3200 ExprResult Sema::BuildDeclarationNameExpr( in BuildDeclarationNameExpr()
3466 ExprResult Sema::BuildPredefinedExpr(SourceLocation Loc, in BuildPredefinedExpr()
3514 ExprResult Sema::ActOnPredefinedExpr(SourceLocation Loc, tok::TokenKind Kind) { in ActOnPredefinedExpr()
3518 ExprResult Sema::ActOnCharacterConstant(const Token &Tok, Scope *UDLScope) { in ActOnCharacterConstant()
3578 ExprResult Sema::ActOnIntegerConstant(SourceLocation Loc, uint64_t Val) { in ActOnIntegerConstant()
3584 static Expr *BuildFloatingLiteral(Sema &S, NumericLiteralParser &Literal, in BuildFloatingLiteral()
3617 bool Sema::CheckLoopHintExpr(Expr *E, SourceLocation Loc, bool AllowZero) { in CheckLoopHintExpr()
3651 ExprResult Sema::ActOnNumericConstant(const Token &Tok, Scope *UDLScope) { in ActOnNumericConstant()
4081 ExprResult Sema::ActOnParenExpr(SourceLocation L, SourceLocation R, Expr *E) { in ActOnParenExpr()
4090 static bool CheckVecStepTraitOperandType(Sema &S, QualType T, in CheckVecStepTraitOperandType()
4108 static bool CheckVectorElementsTraitOperandType(Sema &S, QualType T, in CheckVectorElementsTraitOperandType()
4120 static bool checkPtrAuthTypeDiscriminatorOperandType(Sema &S, QualType T, in checkPtrAuthTypeDiscriminatorOperandType()
4135 static bool CheckExtensionTraitOperandType(Sema &S, QualType T, in CheckExtensionTraitOperandType()
4165 static bool CheckObjCTraitOperandConstraints(Sema &S, QualType T, in CheckObjCTraitOperandConstraints()
4183 static void warnOnSizeofOnArrayDecay(Sema &S, SourceLocation Loc, QualType T, in warnOnSizeofOnArrayDecay()
4199 bool Sema::CheckUnaryExprOrTypeTraitOperand(Expr *E, in CheckUnaryExprOrTypeTraitOperand()
4306 static bool CheckAlignOfExpr(Sema &S, Expr *E, UnaryExprOrTypeTrait ExprKind) { in CheckAlignOfExpr()
4362 bool Sema::CheckVecStepExpr(Expr *E) { in CheckVecStepExpr()
4490 bool Sema::CheckUnaryExprOrTypeTraitOperand(QualType ExprType, in CheckUnaryExprOrTypeTraitOperand()
4588 ExprResult Sema::CreateUnaryExprOrTypeTraitExpr(TypeSourceInfo *TInfo, in CreateUnaryExprOrTypeTraitExpr()
4614 Sema::CreateUnaryExprOrTypeTraitExpr(Expr *E, SourceLocation OpLoc, in CreateUnaryExprOrTypeTraitExpr()
4657 Sema::ActOnUnaryExprOrTypeTraitExpr(SourceLocation OpLoc, in ActOnUnaryExprOrTypeTraitExpr()
4674 bool Sema::CheckAlignasTypeArgument(StringRef KWName, TypeSourceInfo *TInfo, in CheckAlignasTypeArgument()
4682 bool Sema::ActOnAlignasTypeArgument(StringRef KWName, ParsedType Ty, in ActOnAlignasTypeArgument()
4690 static QualType CheckRealImagOperand(Sema &S, ExprResult &V, SourceLocation Loc, in CheckRealImagOperand()
4727 Sema::ActOnPostfixUnaryOp(Scope *S, SourceLocation OpLoc, in ActOnPostfixUnaryOp()
4747 static bool checkArithmeticOnObjCPointer(Sema &S, in checkArithmeticOnObjCPointer()
4761 static bool isMSPropertySubscriptExpr(Sema &S, Expr *Base) { in isMSPropertySubscriptExpr()
4800 ExprResult Sema::ActOnArraySubscriptExpr(Scope *S, Expr *base, in ActOnArraySubscriptExpr()
4967 ExprResult Sema::tryConvertExprToType(Expr *E, QualType Ty) { in tryConvertExprToType()
4975 ExprResult Sema::CreateBuiltinMatrixSubscriptExpr(Expr *Base, Expr *RowIdx, in CreateBuiltinMatrixSubscriptExpr()
5041 void Sema::CheckAddressOfNoDeref(const Expr *E) { in CheckAddressOfNoDeref()
5054 void Sema::CheckSubscriptAccessOfNoDeref(const ArraySubscriptExpr *E) { in CheckSubscriptAccessOfNoDeref()
5090 Sema::CreateBuiltinArraySubscriptExpr(Expr *Base, SourceLocation LLoc, in CreateBuiltinArraySubscriptExpr()
5302 bool Sema::CheckCXXDefaultArgExpr(SourceLocation CallLoc, FunctionDecl *FD, in CheckCXXDefaultArgExpr()
5416 EnsureImmediateInvocationInDefaultArgs(Sema &SemaRef) in EnsureImmediateInvocationInDefaultArgs()
5454 ExprResult Sema::BuildCXXDefaultArgExpr(SourceLocation CallLoc, in BuildCXXDefaultArgExpr()
5528 ExprResult Sema::BuildCXXDefaultInitExpr(SourceLocation Loc, FieldDecl *Field) { in BuildCXXDefaultInitExpr()
5650 Sema::VariadicCallType
5651 Sema::getVariadicCallType(FunctionDecl *FDecl, const FunctionProtoType *Proto, in getVariadicCallType()
5672 FunctionCallCCC(Sema &SemaRef, const IdentifierInfo *FuncName, in FunctionCallCCC()
5695 static TypoCorrection TryTypoCorrectionForCall(Sema &S, Expr *Fn, in TryTypoCorrectionForCall()
5704 DeclarationNameInfo(FuncName, NameLoc), Sema::LookupOrdinaryName, in TryTypoCorrectionForCall()
5706 Sema::CTK_ErrorRecovery)) { in TryTypoCorrectionForCall()
5754 Sema::ConvertArgumentsForCall(CallExpr *Call, Expr *Fn, in ConvertArgumentsForCall()
5894 bool Sema::GatherArgumentsForCall(SourceLocation CallLoc, FunctionDecl *FDecl, in GatherArgumentsForCall()
5998 static void DiagnoseCalleeStaticArrayParam(Sema &S, ParmVarDecl *PVD) { in DiagnoseCalleeStaticArrayParam()
6008 Sema::CheckStaticArrayArgument(SourceLocation CallLoc, in CheckStaticArrayArgument()
6062 static ExprResult rebuildUnknownAnyFunction(Sema &S, Expr *fn);
6131 bool Sema::CheckArgsForPlaceholders(MultiExprArg args) { in CheckArgsForPlaceholders()
6156 static FunctionDecl *rewriteBuiltinFunctionDecl(Sema *Sema, ASTContext &Context, in rewriteBuiltinFunctionDecl() argument
6175 Sema->DefaultFunctionArrayLvalueConversion(ArgExprs[i++]); in rewriteBuiltinFunctionDecl()
6210 /*TInfo=*/nullptr, SC_Extern, Sema->getCurFPFeatures().isFPConstrained(), in rewriteBuiltinFunctionDecl()
6225 Sema->mergeDeclAttributes(OverloadDecl, FDecl); in rewriteBuiltinFunctionDecl()
6229 static void checkDirectCallValidity(Sema &S, const Expr *Fn, in checkDirectCallValidity()
6257 const UnresolvedMemberExpr *const UME, Sema &S) { in enclosingClassIsRelatedToClassInWhichMembersWereFound()
6260 [](Sema &S) -> const CXXRecordDecl * { in enclosingClassIsRelatedToClassInWhichMembersWereFound()
6299 Sema &S, const UnresolvedMemberExpr *const UME, SourceLocation CallLoc) { in tryImplicitlyCaptureThisIfImplicitMemberFunctionAccessWithDependentArgs()
6339 static void DiagnosedUnqualifiedCallsToStdFunctions(Sema &S, in DiagnosedUnqualifiedCallsToStdFunctions()
6369 ExprResult Sema::ActOnCallExpr(Scope *Scope, Expr *Fn, SourceLocation LParenLoc, in ActOnCallExpr()
6407 ExprResult Sema::BuildCallExpr(Scope *Scope, Expr *Fn, SourceLocation LParenLoc, in BuildCallExpr()
6608 Expr *Sema::BuildBuiltinCallExpr(SourceLocation Loc, Builtin::ID Id, in BuildBuiltinCallExpr()
6612 Sema::LookupOrdinaryName); in BuildBuiltinCallExpr()
6629 ExprResult Sema::ActOnAsTypeExpr(Expr *E, ParsedType ParsedDestTy, in ActOnAsTypeExpr()
6636 ExprResult Sema::BuildAsTypeExpr(Expr *E, QualType DestTy, in BuildAsTypeExpr()
6650 ExprResult Sema::ActOnConvertVectorExpr(Expr *E, ParsedType ParsedDestTy, in ActOnConvertVectorExpr()
6658 ExprResult Sema::BuildResolvedCallExpr(Expr *Fn, NamedDecl *NDecl, in BuildResolvedCallExpr()
6966 Sema::ActOnCompoundLiteral(SourceLocation LParenLoc, ParsedType Ty, in ActOnCompoundLiteral()
6980 Sema::BuildCompoundLiteralExpr(SourceLocation LParenLoc, TypeSourceInfo *TInfo, in BuildCompoundLiteralExpr()
7112 Sema::ActOnInitList(SourceLocation LBraceLoc, MultiExprArg InitArgList, in ActOnInitList()
7180 Sema::BuildInitList(SourceLocation LBraceLoc, MultiExprArg InitArgList, in BuildInitList()
7205 void Sema::maybeExtendBlockObject(ExprResult &E) { in maybeExtendBlockObject()
7218 CastKind Sema::PrepareScalarCast(ExprResult &Src, QualType DestTy) { in PrepareScalarCast()
7444 bool Sema::isValidSveBitcast(QualType srcTy, QualType destTy) { in isValidSveBitcast()
7459 bool Sema::areMatrixTypesOfTheSameDimension(QualType srcTy, QualType destTy) { in areMatrixTypesOfTheSameDimension()
7470 bool Sema::areVectorTypesSameSize(QualType SrcTy, QualType DestTy) { in areVectorTypesSameSize()
7489 bool Sema::anyAltivecTypes(QualType SrcTy, QualType DestTy) { in anyAltivecTypes()
7512 bool Sema::areLaxCompatibleVectorTypes(QualType srcTy, QualType destTy) { in areLaxCompatibleVectorTypes()
7526 bool Sema::isLaxVectorConversion(QualType srcTy, QualType destTy) { in isLaxVectorConversion()
7554 bool Sema::CheckMatrixCast(SourceRange R, QualType DestTy, QualType SrcTy, in CheckMatrixCast()
7575 bool Sema::CheckVectorCast(SourceRange R, QualType VectorTy, QualType Ty, in CheckVectorCast()
7595 ExprResult Sema::prepareVectorSplat(QualType VectorTy, Expr *SplattedExpr) { in prepareVectorSplat()
7628 ExprResult Sema::CheckExtVectorCast(SourceRange R, QualType DestTy, in CheckExtVectorCast()
7663 Sema::ActOnCastExpr(Scope *S, SourceLocation LParenLoc, in ActOnCastExpr()
7736 ExprResult Sema::BuildVectorLiteral(SourceLocation LParenLoc, in BuildVectorLiteral()
7819 Sema::MaybeConvertParenListExprToParenExpr(Scope *S, Expr *OrigExpr) { in MaybeConvertParenListExprToParenExpr()
7835 ExprResult Sema::ActOnParenListExpr(SourceLocation L, in ActOnParenListExpr()
7841 bool Sema::DiagnoseConditionalForNull(const Expr *LHSExpr, const Expr *RHSExpr, in DiagnoseConditionalForNull()
7880 static bool checkCondition(Sema &S, const Expr *Cond, in checkCondition()
7901 static bool checkConditionalNullPointer(Sema &S, ExprResult &NullExpr, in checkConditionalNullPointer()
7914 static QualType checkConditionalPointerCompatibility(Sema &S, ExprResult &LHS, in checkConditionalPointerCompatibility()
8045 static QualType checkConditionalBlockPointerCompatibility(Sema &S, in checkConditionalBlockPointerCompatibility()
8071 checkConditionalObjectPointersCompatibility(Sema &S, ExprResult &LHS, in checkConditionalObjectPointersCompatibility()
8110 static bool checkPointerIntegerMismatch(Sema &S, ExprResult &Int, in checkPointerIntegerMismatch()
8140 static QualType OpenCLArithmeticConversions(Sema &S, ExprResult &LHS, in OpenCLArithmeticConversions()
8195 OpenCLConvertScalarsToVectors(Sema &S, ExprResult &LHS, ExprResult &RHS, in OpenCLConvertScalarsToVectors()
8229 static bool checkOpenCLConditionVector(Sema &S, Expr *Cond, in checkOpenCLConditionVector()
8249 static bool checkVectorResult(Sema &S, QualType CondTy, QualType VecResTy, in checkVectorResult()
8277 OpenCLCheckVectorConditional(Sema &S, ExprResult &Cond, in OpenCLCheckVectorConditional()
8315 static bool checkBlockType(Sema &S, const Expr *E) { in checkBlockType()
8329 QualType Sema::CheckConditionalOperands(ExprResult &Cond, ExprResult &LHS, in CheckConditionalOperands()
8521 static void SuggestParentheses(Sema &Self, SourceLocation Loc, in SuggestParentheses()
8617 static void DiagnoseConditionalPrecedence(Sema &Self, SourceLocation OpLoc, in DiagnoseConditionalPrecedence()
8703 ExprResult Sema::ActOnConditionalOp(SourceLocation QuestionLoc, in ActOnConditionalOp()
8806 bool Sema::IsInvalidSMECallConversion(QualType FromType, QualType ToType) { in IsInvalidSMECallConversion()
8823 static bool IsInvalidCmseNSCallConversion(Sema &S, QualType FromType, in IsInvalidCmseNSCallConversion()
8843 static Sema::AssignConvertType
8844 checkPointerTypesForAssignment(Sema &S, QualType LHSType, QualType RHSType, in checkPointerTypesForAssignment()
8857 Sema::AssignConvertType ConvTy = Sema::Compatible; in checkPointerTypesForAssignment()
8874 return Sema::IncompatiblePointerDiscardsQualifiers; in checkPointerTypesForAssignment()
8886 ConvTy = Sema::IncompatiblePointerDiscardsQualifiers; in checkPointerTypesForAssignment()
8890 else ConvTy = Sema::CompatiblePointerDiscardsQualifiers; in checkPointerTypesForAssignment()
8902 return Sema::FunctionVoidPointer; in checkPointerTypesForAssignment()
8911 return Sema::FunctionVoidPointer; in checkPointerTypesForAssignment()
8919 return Sema::IncompatibleFunctionPointerStrict; in checkPointerTypesForAssignment()
8942 if (ConvTy != Sema::Compatible) in checkPointerTypesForAssignment()
8945 return Sema::IncompatiblePointerSign; in checkPointerTypesForAssignment()
8968 return Sema::IncompatibleNestedPointerAddressSpaceMismatch; in checkPointerTypesForAssignment()
8973 return Sema::IncompatibleNestedPointerQualifiers; in checkPointerTypesForAssignment()
8978 return Sema::IncompatibleFunctionPointer; in checkPointerTypesForAssignment()
8979 return Sema::IncompatiblePointer; in checkPointerTypesForAssignment()
8983 return Sema::IncompatibleFunctionPointer; in checkPointerTypesForAssignment()
8985 return Sema::IncompatibleFunctionPointer; in checkPointerTypesForAssignment()
8987 return Sema::IncompatibleFunctionPointer; in checkPointerTypesForAssignment()
8995 static Sema::AssignConvertType
8996 checkBlockPointerTypesForAssignment(Sema &S, QualType LHSType, in checkBlockPointerTypesForAssignment()
9009 return Sema::IncompatibleBlockPointer; in checkBlockPointerTypesForAssignment()
9011 Sema::AssignConvertType ConvTy = Sema::Compatible; in checkBlockPointerTypesForAssignment()
9021 ConvTy = Sema::CompatiblePointerDiscardsQualifiers; in checkBlockPointerTypesForAssignment()
9037 return Sema::IncompatibleBlockPointer; in checkBlockPointerTypesForAssignment()
9039 return Sema::IncompatibleBlockPointer; in checkBlockPointerTypesForAssignment()
9046 static Sema::AssignConvertType
9047 checkObjCPointerTypesForAssignment(Sema &S, QualType LHSType, in checkObjCPointerTypesForAssignment()
9056 return Sema::IncompatiblePointer; in checkObjCPointerTypesForAssignment()
9057 return Sema::Compatible; in checkObjCPointerTypesForAssignment()
9062 return Sema::IncompatiblePointer; in checkObjCPointerTypesForAssignment()
9063 return Sema::Compatible; in checkObjCPointerTypesForAssignment()
9071 return Sema::CompatiblePointerDiscardsQualifiers; in checkObjCPointerTypesForAssignment()
9074 return Sema::Compatible; in checkObjCPointerTypesForAssignment()
9076 return Sema::IncompatibleObjCQualifiedId; in checkObjCPointerTypesForAssignment()
9077 return Sema::IncompatiblePointer; in checkObjCPointerTypesForAssignment()
9080 Sema::AssignConvertType
9081 Sema::CheckAssignmentConstraints(SourceLocation Loc, in CheckAssignmentConstraints()
9119 Sema::AssignConvertType
9120 Sema::CheckAssignmentConstraints(QualType LHSType, ExprResult &RHS, in CheckAssignmentConstraints()
9148 Sema::AssignConvertType result = in CheckAssignmentConstraints()
9376 Sema::AssignConvertType result = in CheckAssignmentConstraints()
9484 static void ConstructTransparentUnion(Sema &S, ASTContext &C, in ConstructTransparentUnion()
9502 Sema::AssignConvertType
9503 Sema::CheckTransparentUnionArgumentConstraints(QualType ArgType, in CheckTransparentUnionArgumentConstraints()
9554 Sema::AssignConvertType
9555 Sema::CheckSingleAssignmentConstraints(QualType LHSType, ExprResult &CallerRHS, in CheckSingleAssignmentConstraints()
9604 Sema::AssignConvertType result = Compatible; in CheckSingleAssignmentConstraints()
9695 Sema::AssignConvertType result = in CheckSingleAssignmentConstraints()
9760 QualType Sema::InvalidOperands(SourceLocation Loc, ExprResult &LHS, in InvalidOperands()
9784 QualType Sema::InvalidLogicalVectorOperands(SourceLocation Loc, ExprResult &LHS, in InvalidLogicalVectorOperands()
9820 static bool tryVectorConvertAndSplat(Sema &S, ExprResult *scalar, in tryVectorConvertAndSplat()
9867 static ExprResult convertVector(Expr *E, QualType ElementType, Sema &S) { in convertVector()
9888 static bool canConvertIntToOtherIntTy(Sema &S, ExprResult *Int, in canConvertIntToOtherIntTy()
9926 static bool canConvertIntTyToFloatTy(Sema &S, ExprResult *Int, in canConvertIntTyToFloatTy()
9970 static bool tryGCCVectorConvertAndSplat(Sema &S, ExprResult *Scalar, in tryGCCVectorConvertAndSplat()
10062 QualType Sema::CheckVectorOperands(ExprResult &LHS, ExprResult &RHS, in CheckVectorOperands()
10312 QualType Sema::CheckSizelessVectorOperands(ExprResult &LHS, ExprResult &RHS, in CheckSizelessVectorOperands()
10390 static void checkArithmeticNull(Sema &S, ExprResult &LHS, ExprResult &RHS, in checkArithmeticNull()
10426 static void DiagnoseDivisionSizeofPointerOrArray(Sema &S, Expr *LHS, Expr *RHS, in DiagnoseDivisionSizeofPointerOrArray()
10474 static void DiagnoseBadDivideOrRemainderValues(Sema& S, ExprResult &LHS, in DiagnoseBadDivideOrRemainderValues()
10487 QualType Sema::CheckMultiplyDivideOperands(ExprResult &LHS, ExprResult &RHS, in CheckMultiplyDivideOperands()
10526 QualType Sema::CheckRemainderOperands( in CheckRemainderOperands()
10564 static void diagnoseArithmeticOnTwoVoidPointers(Sema &S, SourceLocation Loc, in diagnoseArithmeticOnTwoVoidPointers()
10574 static void diagnoseArithmeticOnVoidPointer(Sema &S, SourceLocation Loc, in diagnoseArithmeticOnVoidPointer()
10587 static void diagnoseArithmeticOnNullPointer(Sema &S, SourceLocation Loc, in diagnoseArithmeticOnNullPointer()
10599 static void diagnoseSubtractionOnNullPointer(Sema &S, SourceLocation Loc, in diagnoseSubtractionOnNullPointer()
10616 static void diagnoseArithmeticOnTwoFunctionPointers(Sema &S, SourceLocation Loc, in diagnoseArithmeticOnTwoFunctionPointers()
10632 static void diagnoseArithmeticOnFunctionPointer(Sema &S, SourceLocation Loc, in diagnoseArithmeticOnFunctionPointer()
10646 static bool checkArithmeticIncompletePointerType(Sema &S, SourceLocation Loc, in checkArithmeticIncompletePointerType()
10668 static bool checkArithmeticOpPointerOperand(Sema &S, SourceLocation Loc, in checkArithmeticOpPointerOperand()
10700 static bool checkArithmeticBinOpPointerOperands(Sema &S, SourceLocation Loc, in checkArithmeticBinOpPointerOperands()
10753 static void diagnoseStringPlusInt(Sema &Self, SourceLocation OpLoc, in diagnoseStringPlusInt()
10783 static void diagnoseStringPlusChar(Sema &Self, SourceLocation OpLoc, in diagnoseStringPlusChar()
10834 static void diagnosePointerIncompatibility(Sema &S, SourceLocation Loc, in diagnosePointerIncompatibility()
10844 QualType Sema::CheckAdditionOperands(ExprResult &LHS, ExprResult &RHS, in CheckAdditionOperands()
10967 QualType Sema::CheckSubtractionOperands(ExprResult &LHS, ExprResult &RHS, in CheckSubtractionOperands()
11122 static void DiagnoseBadShiftValues(Sema& S, ExprResult &LHS, ExprResult &RHS, in DiagnoseBadShiftValues()
11223 static QualType checkVectorShift(Sema &S, ExprResult &LHS, ExprResult &RHS, in checkVectorShift()
11317 static QualType checkSizelessVectorShift(Sema &S, ExprResult &LHS, in checkSizelessVectorShift()
11409 QualType Sema::CheckShiftOperands(ExprResult &LHS, ExprResult &RHS, in CheckShiftOperands()
11473 static void diagnoseDistinctPointerComparison(Sema &S, SourceLocation Loc, in diagnoseDistinctPointerComparison()
11484 static bool convertPointersToCompositeType(Sema &S, SourceLocation Loc, in convertPointersToCompositeType()
11513 static void diagnoseFunctionPointerToVoidComparison(Sema &S, SourceLocation Loc, in diagnoseFunctionPointerToVoidComparison()
11536 static bool hasIsEqualMethod(Sema &S, const Expr *LHS, const Expr *RHS) { in hasIsEqualMethod()
11583 static void diagnoseObjCLiteralComparison(Sema &S, SourceLocation Loc, in diagnoseObjCLiteralComparison()
11633 static void diagnoseLogicalNotOnLHSofCheck(Sema &S, ExprResult &LHS, in diagnoseLogicalNotOnLHSofCheck()
11689 static void diagnoseTautologicalComparison(Sema &S, SourceLocation Loc, in diagnoseTautologicalComparison()
11860 static bool checkThreeWayNarrowingConversion(Sema &S, QualType ToType, Expr *E, in checkThreeWayNarrowingConversion()
11903 static QualType checkArithmeticOrEnumeralThreeWayCompare(Sema &S, in checkArithmeticOrEnumeralThreeWayCompare()
11961 S.UsualArithmeticConversions(LHS, RHS, Loc, Sema::ACK_Comparison); in checkArithmeticOrEnumeralThreeWayCompare()
11982 *CCT, Loc, Sema::ComparisonCategoryUsage::OperatorInExpression); in checkArithmeticOrEnumeralThreeWayCompare()
11985 static QualType checkArithmeticOrEnumeralCompare(Sema &S, ExprResult &LHS, in checkArithmeticOrEnumeralCompare()
11994 S.UsualArithmeticConversions(LHS, RHS, Loc, Sema::ACK_Comparison); in checkArithmeticOrEnumeralCompare()
12012 void Sema::CheckPtrComparisonWithNullChar(ExprResult &E, ExprResult &NullE) { in CheckPtrComparisonWithNullChar()
12039 QualType Sema::CheckCompareOperands(ExprResult &LHS, ExprResult &RHS, in CheckCompareOperands()
12527 QualType Sema::GetSignedVectorType(QualType V) { in GetSignedVectorType()
12570 QualType Sema::GetSignedSizelessVectorType(QualType V) { in GetSignedSizelessVectorType()
12582 QualType Sema::CheckVectorCompareOperands(ExprResult &LHS, ExprResult &RHS, in CheckVectorCompareOperands()
12643 QualType Sema::CheckSizelessVectorCompareOperands(ExprResult &LHS, in CheckSizelessVectorCompareOperands()
12684 static void diagnoseXorMisusedAsPow(Sema &S, const ExprResult &XorLHS, in diagnoseXorMisusedAsPow()
12806 QualType Sema::CheckVectorLogicalOperands(ExprResult &LHS, ExprResult &RHS, in CheckVectorLogicalOperands()
12831 QualType Sema::CheckMatrixElementwiseOperands(ExprResult &LHS, ExprResult &RHS, in CheckMatrixElementwiseOperands()
12877 QualType Sema::CheckMatrixMultiplyOperands(ExprResult &LHS, ExprResult &RHS, in CheckMatrixMultiplyOperands()
12928 inline QualType Sema::CheckBitwiseOperands(ExprResult &LHS, ExprResult &RHS, in CheckBitwiseOperands()
12992 inline QualType Sema::CheckLogicalOperands(ExprResult &LHS, ExprResult &RHS, in CheckLogicalOperands()
13105 static bool IsReadonlyMessage(Expr *E, Sema &S) { in IsReadonlyMessage()
13119 static NonConstCaptureKind isReferenceToNonConstCapture(Sema &S, Expr *E) { in isReferenceToNonConstCapture()
13177 static void DiagnoseConstAssignment(Sema &S, const Expr *E, in DiagnoseConstAssignment()
13302 static void DiagnoseRecursiveConstFields(Sema &S, const ValueDecl *VD, in DiagnoseRecursiveConstFields()
13343 static void DiagnoseRecursiveConstFields(Sema &S, const Expr *E, in DiagnoseRecursiveConstFields()
13366 static bool CheckForModifiableLvalue(Expr *E, SourceLocation Loc, Sema &S) { in CheckForModifiableLvalue()
13496 Sema &Sema) { in CheckIdentityFieldAssignment() argument
13497 if (Sema.inTemplateInstantiation()) in CheckIdentityFieldAssignment()
13499 if (Sema.isUnevaluatedContext()) in CheckIdentityFieldAssignment()
13524 Sema.Diag(Loc, diag::warn_identity_field_assign) << 0; in CheckIdentityFieldAssignment()
13534 Sema.Diag(Loc, diag::warn_identity_field_assign) << 1; in CheckIdentityFieldAssignment()
13539 QualType Sema::CheckAssignmentOperands(Expr *LHSExpr, ExprResult &RHS, in CheckAssignmentOperands()
13700 void Sema::DiagnoseCommaOperator(const Expr *LHS, SourceLocation Loc) { in DiagnoseCommaOperator()
13749 static QualType CheckCommaOperands(Sema &S, ExprResult &LHS, ExprResult &RHS, in CheckCommaOperands()
13785 static QualType CheckIncrementDecrementOperand(Sema &S, Expr *Op, in CheckIncrementDecrementOperand()
13947 static void diagnoseAddressOfInvalidType(Sema &S, SourceLocation Loc, in diagnoseAddressOfInvalidType()
13952 bool Sema::CheckUseOfCXXMethodAsAddressOfOperand(SourceLocation OpLoc, in CheckUseOfCXXMethodAsAddressOfOperand()
13980 QualType Sema::CheckAddressOfOperand(ExprResult &OrigOp, SourceLocation OpLoc) { in CheckAddressOfOperand()
14237 static void RecordModifiableNonNullParam(Sema &S, const Expr *Exp) { in RecordModifiableNonNullParam()
14255 static QualType CheckIndirectionOperand(Sema &S, Expr *Op, ExprValueKind &VK, in CheckIndirectionOperand()
14314 BinaryOperatorKind Sema::ConvertTokenKindToBinaryOpcode(tok::TokenKind Kind) { in ConvertTokenKindToBinaryOpcode()
14376 Sema::getSelfAssignmentClassMemberCandidate(const ValueDecl *SelfAssigned) { in getSelfAssignmentClassMemberCandidate()
14411 static void DiagnoseSelfAssignment(Sema &S, Expr *LHSExpr, Expr *RHSExpr, in DiagnoseSelfAssignment()
14453 static void checkObjCPointerIntrospection(Sema &S, ExprResult &L, ExprResult &R, in checkObjCPointerIntrospection()
14509 static ExprResult convertHalfVecBinOp(Sema &S, ExprResult LHS, ExprResult RHS, in convertHalfVecBinOp()
14542 CorrectDelayedTyposInBinOp(Sema &S, BinaryOperatorKind Opc, Expr *LHSExpr, in CorrectDelayedTyposInBinOp()
14589 ExprResult Sema::CreateBuiltinBinOp(SourceLocation OpLoc, in CreateBuiltinBinOp()
14879 static void DiagnoseBitwisePrecedence(Sema &Self, BinaryOperatorKind Opc, in DiagnoseBitwisePrecedence()
14922 EmitDiagnosticForLogicalAndInLogicalOr(Sema &Self, SourceLocation OpLoc, in EmitDiagnosticForLogicalAndInLogicalOr()
14934 static void DiagnoseLogicalAndInLogicalOrLHS(Sema &S, SourceLocation OpLoc, in DiagnoseLogicalAndInLogicalOrLHS()
14955 static void DiagnoseLogicalAndInLogicalOrRHS(Sema &S, SourceLocation OpLoc, in DiagnoseLogicalAndInLogicalOrRHS()
14970 static void DiagnoseBitwiseOpInBitwiseOp(Sema &S, BinaryOperatorKind Opc, in DiagnoseBitwiseOpInBitwiseOp()
14985 static void DiagnoseAdditionInShift(Sema &S, SourceLocation OpLoc, in DiagnoseAdditionInShift()
14999 static void DiagnoseShiftCompare(Sema &S, SourceLocation OpLoc, in DiagnoseShiftCompare()
15027 static void DiagnoseBinOpPrecedence(Sema &Self, BinaryOperatorKind Opc, in DiagnoseBinOpPrecedence()
15061 ExprResult Sema::ActOnBinOp(Scope *S, SourceLocation TokLoc, in ActOnBinOp()
15074 void Sema::LookupBinOp(Scope *S, SourceLocation OpLoc, BinaryOperatorKind Opc, in LookupBinOp()
15088 static ExprResult BuildOverloadedBinOp(Sema &S, Scope *Sc, SourceLocation OpLoc, in BuildOverloadedBinOp()
15124 ExprResult Sema::BuildBinOp(Scope *S, SourceLocation OpLoc, in BuildBinOp()
15277 ExprResult Sema::CreateBuiltinUnaryOp(SourceLocation OpLoc, in CreateBuiltinUnaryOp()
15519 bool Sema::isQualifiedMemberAccess(Expr *E) { in isQualifiedMemberAccess()
15556 ExprResult Sema::BuildUnaryOp(Scope *S, SourceLocation OpLoc, in BuildUnaryOp()
15600 ExprResult Sema::ActOnUnaryOp(Scope *S, SourceLocation OpLoc, tok::TokenKind Op, in ActOnUnaryOp()
15606 ExprResult Sema::ActOnAddrLabel(SourceLocation OpLoc, SourceLocation LabLoc, in ActOnAddrLabel()
15619 void Sema::ActOnStartStmtExpr() { in ActOnStartStmtExpr()
15625 void Sema::ActOnStmtExprError() { in ActOnStmtExprError()
15633 ExprResult Sema::ActOnStmtExpr(Scope *S, SourceLocation LPLoc, Stmt *SubStmt, in ActOnStmtExpr()
15638 ExprResult Sema::BuildStmtExpr(SourceLocation LPLoc, Stmt *SubStmt, in BuildStmtExpr()
15677 ExprResult Sema::ActOnStmtExprResult(ExprResult ER) { in ActOnStmtExprResult()
15708 ExprResult Sema::BuildBuiltinOffsetOf(SourceLocation BuiltinLoc, in BuildBuiltinOffsetOf()
15875 ExprResult Sema::ActOnBuiltinOffsetOf(Scope *S, in ActOnBuiltinOffsetOf()
15894 ExprResult Sema::ActOnChooseExpr(SourceLocation BuiltinLoc, in ActOnChooseExpr()
15932 void Sema::ActOnBlockStart(SourceLocation CaretLoc, Scope *CurScope) { in ActOnBlockStart()
15961 void Sema::ActOnBlockArguments(SourceLocation CaretLoc, Declarator &ParamInfo, in ActOnBlockArguments()
16080 void Sema::ActOnBlockError(SourceLocation CaretLoc, Scope *CurScope) { in ActOnBlockError()
16090 ExprResult Sema::ActOnBlockStmtExpr(SourceLocation CaretLoc, in ActOnBlockStmtExpr()
16279 ExprResult Sema::ActOnVAArg(SourceLocation BuiltinLoc, Expr *E, ParsedType Ty, in ActOnVAArg()
16286 ExprResult Sema::BuildVAArgExpr(SourceLocation BuiltinLoc, in BuildVAArgExpr()
16442 ExprResult Sema::ActOnGNUNullExpr(SourceLocation TokenLoc) { in ActOnGNUNullExpr()
16460 static CXXRecordDecl *LookupStdSourceLocationImpl(Sema &S, SourceLocation Loc) { in LookupStdSourceLocationImpl()
16466 Loc, Sema::LookupOrdinaryName); in LookupStdSourceLocationImpl()
16470 Loc, Sema::LookupOrdinaryName); in LookupStdSourceLocationImpl()
16527 ExprResult Sema::ActOnSourceLocExpr(SourceLocIdentKind Kind, in ActOnSourceLocExpr()
16560 ExprResult Sema::BuildSourceLocExpr(SourceLocIdentKind Kind, QualType ResultTy, in BuildSourceLocExpr()
16568 ExprResult Sema::ActOnEmbedExpr(SourceLocation EmbedKeywordLoc, in ActOnEmbedExpr()
16577 static bool maybeDiagnoseAssignmentToFunction(Sema &S, QualType DstType, in maybeDiagnoseAssignmentToFunction()
16596 bool Sema::DiagnoseAssignmentResult(AssignConvertType ConvTy, in DiagnoseAssignmentResult()
16880 ExprResult Sema::VerifyIntegerConstantExpression(Expr *E, in VerifyIntegerConstantExpression()
16885 SemaDiagnosticBuilder diagnoseNotICEType(Sema &S, SourceLocation Loc, in VerifyIntegerConstantExpression()
16890 SemaDiagnosticBuilder diagnoseNotICE(Sema &S, SourceLocation Loc) override { in VerifyIntegerConstantExpression()
16898 ExprResult Sema::VerifyIntegerConstantExpression(Expr *E, in VerifyIntegerConstantExpression()
16909 SemaDiagnosticBuilder diagnoseNotICE(Sema &S, SourceLocation Loc) override { in VerifyIntegerConstantExpression()
16917 Sema::SemaDiagnosticBuilder
16918 Sema::VerifyICEDiagnoser::diagnoseNotICEType(Sema &S, SourceLocation Loc, in diagnoseNotICEType()
16923 Sema::SemaDiagnosticBuilder
16924 Sema::VerifyICEDiagnoser::diagnoseFold(Sema &S, SourceLocation Loc) { in diagnoseFold()
16929 Sema::VerifyIntegerConstantExpression(Expr *E, llvm::APSInt *Result, in VerifyIntegerConstantExpression()
16949 SemaDiagnosticBuilder diagnoseNotInt(Sema &S, SourceLocation Loc, in VerifyIntegerConstantExpression()
16955 Sema &S, SourceLocation Loc, QualType T) override { in VerifyIntegerConstantExpression()
16960 Sema &S, SourceLocation Loc, QualType T, QualType ConvTy) override { in VerifyIntegerConstantExpression()
16965 Sema &S, CXXConversionDecl *Conv, QualType ConvTy) override { in VerifyIntegerConstantExpression()
16971 Sema &S, SourceLocation Loc, QualType T) override { in VerifyIntegerConstantExpression()
16976 Sema &S, CXXConversionDecl *Conv, QualType ConvTy) override { in VerifyIntegerConstantExpression()
16982 Sema &S, SourceLocation Loc, QualType T, QualType ConvTy) override { in VerifyIntegerConstantExpression()
17110 TransformToPE(Sema &SemaRef) : BaseTransform(SemaRef) { } in TransformToPE()
17151 ExprResult Sema::TransformToPotentiallyEvaluated(Expr *E) { in TransformToPotentiallyEvaluated()
17161 TypeSourceInfo *Sema::TransformToPotentiallyEvaluated(TypeSourceInfo *TInfo) { in TransformToPotentiallyEvaluated()
17171 Sema::PushExpressionEvaluationContext( in PushExpressionEvaluationContext()
17200 Sema::PushExpressionEvaluationContext( in PushExpressionEvaluationContext()
17209 const DeclRefExpr *CheckPossibleDeref(Sema &S, const Expr *PossibleDeref) { in CheckPossibleDeref()
17236 void Sema::WarnOnPendingNoDerefs(ExpressionEvaluationContextRecord &Rec) { in WarnOnPendingNoDerefs()
17252 void Sema::CheckUnusedVolatileAssignment(Expr *E) { in CheckUnusedVolatileAssignment()
17267 void Sema::MarkExpressionAsImmediateEscalating(Expr *E) { in MarkExpressionAsImmediateEscalating()
17288 ExprResult Sema::CheckForImmediateInvocation(ExprResult E, FunctionDecl *Decl) { in CheckForImmediateInvocation()
17365 Sema &SemaRef, Sema::ImmediateInvocationCandidate Candidate) { in EvaluateAndDiagnoseImmediateInvocation()
17407 Sema &SemaRef, Sema::ExpressionEvaluationContextRecord &Rec, in RemoveNestedImmediateInvocation()
17408 SmallVector<Sema::ImmediateInvocationCandidate, 4>::reverse_iterator It) { in RemoveNestedImmediateInvocation()
17412 SmallVector<Sema::ImmediateInvocationCandidate, 4> &IISet; in RemoveNestedImmediateInvocation()
17413 SmallVector<Sema::ImmediateInvocationCandidate, 4>::reverse_iterator in RemoveNestedImmediateInvocation()
17415 ComplexRemove(Sema &SemaRef, llvm::SmallPtrSetImpl<DeclRefExpr *> &DR, in RemoveNestedImmediateInvocation()
17416 SmallVector<Sema::ImmediateInvocationCandidate, 4> &II, in RemoveNestedImmediateInvocation()
17417 SmallVector<Sema::ImmediateInvocationCandidate, in RemoveNestedImmediateInvocation()
17422 [E](Sema::ImmediateInvocationCandidate Elem) { in RemoveNestedImmediateInvocation()
17503 HandleImmediateInvocations(Sema &SemaRef, in HandleImmediateInvocations()
17504 Sema::ExpressionEvaluationContextRecord &Rec) { in HandleImmediateInvocations()
17524 Sema::TentativeAnalysisScope DisableDiag(SemaRef); in HandleImmediateInvocations()
17566 Sema::ExpressionEvaluationContext::PotentiallyEvaluated || in HandleImmediateInvocations()
17568 Sema::ExpressionEvaluationContext::PotentiallyEvaluatedIfUsed; in HandleImmediateInvocations()
17592 void Sema::PopExpressionEvaluationContext() { in PopExpressionEvaluationContext()
17670 void Sema::DiscardCleanupsInEvaluationContext() { in DiscardCleanupsInEvaluationContext()
17678 ExprResult Sema::HandleExprEvaluationContextForTypeof(Expr *E) { in HandleExprEvaluationContextForTypeof()
17690 static bool isPotentiallyConstantEvaluatedContext(Sema &SemaRef) { in isPotentiallyConstantEvaluatedContext()
17694 case Sema::ExpressionEvaluationContext::ConstantEvaluated: in isPotentiallyConstantEvaluatedContext()
17695 case Sema::ExpressionEvaluationContext::ImmediateFunctionContext: in isPotentiallyConstantEvaluatedContext()
17698 case Sema::ExpressionEvaluationContext::PotentiallyEvaluated: in isPotentiallyConstantEvaluatedContext()
17699 case Sema::ExpressionEvaluationContext::PotentiallyEvaluatedIfUsed: in isPotentiallyConstantEvaluatedContext()
17700 case Sema::ExpressionEvaluationContext::DiscardedStatement: in isPotentiallyConstantEvaluatedContext()
17702 case Sema::ExpressionEvaluationContext::UnevaluatedList: in isPotentiallyConstantEvaluatedContext()
17711 case Sema::ExpressionEvaluationContext::Unevaluated: in isPotentiallyConstantEvaluatedContext()
17712 case Sema::ExpressionEvaluationContext::UnevaluatedAbstract: in isPotentiallyConstantEvaluatedContext()
17721 static bool funcHasParameterSizeMangling(Sema &S, FunctionDecl *FD) { in funcHasParameterSizeMangling()
17755 static void CheckCompleteParameterTypesForMangler(Sema &S, FunctionDecl *FD, in CheckCompleteParameterTypesForMangler()
17757 class ParamIncompleteTypeDiagnoser : public Sema::TypeDiagnoser { in CheckCompleteParameterTypesForMangler()
17765 void diagnose(Sema &S, SourceLocation Loc, QualType T) override { in CheckCompleteParameterTypesForMangler()
17809 static OdrUseContext isOdrUseContext(Sema &SemaRef) { in isOdrUseContext()
17813 case Sema::ExpressionEvaluationContext::Unevaluated: in isOdrUseContext()
17814 case Sema::ExpressionEvaluationContext::UnevaluatedList: in isOdrUseContext()
17815 case Sema::ExpressionEvaluationContext::UnevaluatedAbstract: in isOdrUseContext()
17818 case Sema::ExpressionEvaluationContext::ConstantEvaluated: in isOdrUseContext()
17819 case Sema::ExpressionEvaluationContext::ImmediateFunctionContext: in isOdrUseContext()
17820 case Sema::ExpressionEvaluationContext::PotentiallyEvaluated: in isOdrUseContext()
17824 case Sema::ExpressionEvaluationContext::DiscardedStatement: in isOdrUseContext()
17828 case Sema::ExpressionEvaluationContext::PotentiallyEvaluatedIfUsed: in isOdrUseContext()
17851 void Sema::MarkFunctionReferenced(SourceLocation Loc, FunctionDecl *Func, in MarkFunctionReferenced()
18124 MarkVarDeclODRUsed(ValueDecl *V, SourceLocation Loc, Sema &SemaRef, in MarkVarDeclODRUsed()
18142 SemaRef.tryCaptureVariable(V, Loc, Sema::TryCapture_Implicit, in MarkVarDeclODRUsed()
18194 void Sema::MarkCaptureUsedInEnclosingContext(ValueDecl *Capture, in MarkCaptureUsedInEnclosingContext()
18200 void diagnoseUncapturableValueReferenceOrBinding(Sema &S, SourceLocation loc, in diagnoseUncapturableValueReferenceOrBinding()
18278 Sema &S) { in getParentOfCapturingContextOrNull()
18295 Sema &S) { in isVariableCapturable()
18376 const bool Nested, Sema &S, bool Invalid) { in captureInBlock()
18444 const bool RefersToCapturedVariable, Sema::TryCaptureKind Kind, in captureInCapturedRegion()
18445 bool IsTopScope, Sema &S, bool Invalid) { in captureInCapturedRegion()
18448 if (IsTopScope && Kind != Sema::TryCapture_Implicit) { in captureInCapturedRegion()
18449 ByRef = (Kind == Sema::TryCapture_ExplicitByRef); in captureInCapturedRegion()
18485 const Sema::TryCaptureKind Kind, in captureInLambda()
18487 Sema &S, bool Invalid) { in captureInLambda()
18490 if (IsTopScope && Kind != Sema::TryCapture_Implicit) { in captureInLambda()
18491 ByRef = (Kind == Sema::TryCapture_ExplicitByRef); in captureInLambda()
18609 static void buildLambdaCaptureFixit(Sema &Sema, LambdaScopeInfo *LSI, in buildLambdaCaptureFixit() argument
18614 bool ShouldOfferCopyFix = canCaptureVariableByCopy(Var, Sema.getASTContext()); in buildLambdaCaptureFixit()
18625 Sema.Diag(VarInsertLoc, diag::note_lambda_variable_capture_fixit) in buildLambdaCaptureFixit()
18631 Sema.Diag(VarInsertLoc, diag::note_lambda_variable_capture_fixit) in buildLambdaCaptureFixit()
18656 if (LSI->isCXXThisCaptured() && !Sema.getLangOpts().CPlusPlus20) in buildLambdaCaptureFixit()
18657 CanDefaultCopyCapture = Sema.getLangOpts().CPlusPlus17 in buildLambdaCaptureFixit()
18666 Sema.Diag(DefaultInsertLoc, diag::note_lambda_default_capture_fixit) in buildLambdaCaptureFixit()
18679 Sema.Diag(DefaultInsertLoc, diag::note_lambda_default_capture_fixit) in buildLambdaCaptureFixit()
18685 bool Sema::tryCaptureVariable( in tryCaptureVariable()
18984 bool Sema::tryCaptureVariable(ValueDecl *Var, SourceLocation Loc, in tryCaptureVariable()
18993 bool Sema::NeedToCaptureVariable(ValueDecl *Var, SourceLocation Loc) { in NeedToCaptureVariable()
19001 QualType Sema::getCapturedDeclRefType(ValueDecl *Var, SourceLocation Loc) { in getCapturedDeclRefType()
19045 static ExprResult rebuildPotentialResultsAsNonOdrUsed(Sema &S, Expr *E, in rebuildPotentialResultsAsNonOdrUsed()
19367 ExprResult Sema::CheckLValueToRValueConversionOperand(Expr *E) { in CheckLValueToRValueConversionOperand()
19374 Sema::NTCUC_LValueToRValueVolatile, in CheckLValueToRValueConversionOperand()
19390 ExprResult Sema::ActOnConstantExpression(ExprResult Res) { in ActOnConstantExpression()
19403 void Sema::CleanupVarDeclMarking() { in CleanupVarDeclMarking()
19428 static void DoMarkPotentialCapture(Sema &SemaRef, SourceLocation Loc, in DoMarkPotentialCapture()
19461 Sema &SemaRef, SourceLocation Loc, VarDecl *Var, Expr *E, in DoMarkVarDeclReferenced()
19549 I, [Var](const Sema::PendingImplicitInstantiation &P) { in DoMarkVarDeclReferenced()
19631 static void DoMarkBindingDeclReferenced(Sema &SemaRef, SourceLocation Loc, in DoMarkBindingDeclReferenced()
19641 SemaRef.tryCaptureVariable(BD, Loc, Sema::TryCapture_Implicit, in DoMarkBindingDeclReferenced()
19651 void Sema::MarkVariableReferenced(SourceLocation Loc, VarDecl *Var) { in MarkVariableReferenced()
19661 Sema &SemaRef, ValueDecl *D, Expr *E) { in FixDependencyOfIdExpressionsInLambdaWithDependentObjectParameter()
19706 MarkExprReferenced(Sema &SemaRef, SourceLocation Loc, Decl *D, Expr *E, in MarkExprReferenced()
19751 void Sema::MarkDeclRefReferenced(DeclRefExpr *E, const Expr *Base) { in MarkDeclRefReferenced()
19773 void Sema::MarkMemberReferenced(MemberExpr *E) { in MarkMemberReferenced()
19792 void Sema::MarkFunctionParmPackReferenced(FunctionParmPackExpr *E) { in MarkFunctionParmPackReferenced()
19802 void Sema::MarkAnyDeclReferenced(SourceLocation Loc, Decl *D, in MarkAnyDeclReferenced()
19826 Sema &S;
19832 MarkReferencedDecls(Sema &S, SourceLocation Loc) : S(S), Loc(Loc) { } in MarkReferencedDecls()
19843 S, Sema::ExpressionEvaluationContext::ConstantEvaluated); in TraverseTemplateArgument()
19855 void Sema::MarkDeclarationsReferencedInType(SourceLocation Loc, QualType T) { in MarkDeclarationsReferencedInType()
19869 EvaluatedExprMarker(Sema &S, bool SkipLocalVariables, in EvaluatedExprMarker()
19909 void Sema::MarkDeclarationsReferencedInExpr(Expr *E, in MarkDeclarationsReferencedInExpr()
19920 bool Sema::DiagIfReachable(SourceLocation Loc, ArrayRef<const Stmt *> Stmts, in DiagIfReachable()
19963 bool Sema::DiagRuntimeBehavior(SourceLocation Loc, ArrayRef<const Stmt*> Stmts, in DiagRuntimeBehavior()
19990 bool Sema::DiagRuntimeBehavior(SourceLocation Loc, const Stmt *Statement, in DiagRuntimeBehavior()
19996 bool Sema::CheckCallReturnType(QualType ReturnType, SourceLocation Loc, in CheckCallReturnType()
20017 void diagnose(Sema &S, SourceLocation Loc, QualType T) override { in CheckCallReturnType()
20039 void Sema::DiagnoseAssignmentAsCondition(Expr *E) { in DiagnoseAssignmentAsCondition()
20095 void Sema::DiagnoseEqualityWithExtraParens(ParenExpr *ParenE) { in DiagnoseEqualityWithExtraParens()
20122 ExprResult Sema::CheckBooleanCondition(SourceLocation Loc, Expr *E, in CheckBooleanCondition()
20153 Sema::ConditionResult Sema::ActOnCondition(Scope *S, SourceLocation Loc, in ActOnCondition()
20196 Sema &S;
20198 RebuildUnknownAnyFunction(Sema &S) : S(S) {} in RebuildUnknownAnyFunction()
20270 static ExprResult rebuildUnknownAnyFunction(Sema &S, Expr *FunctionExpr) { in rebuildUnknownAnyFunction()
20284 Sema &S;
20289 RebuildUnknownAnyExpr(Sema &S, QualType CastType) in RebuildUnknownAnyExpr()
20616 ExprResult Sema::checkUnknownAnyCast(SourceRange TypeRange, QualType CastType, in checkUnknownAnyCast()
20636 ExprResult Sema::forceUnknownAnyToType(Expr *E, QualType ToType) { in forceUnknownAnyToType()
20640 ExprResult Sema::checkUnknownAnyArg(SourceLocation callLoc, in checkUnknownAnyArg()
20663 static ExprResult diagnoseUnknownAnyExpr(Sema &S, Expr *E) { in diagnoseUnknownAnyExpr()
20706 ExprResult Sema::CheckPlaceholderExpr(Expr *E) { in CheckPlaceholderExpr()
20893 bool Sema::CheckCaseExpression(Expr *E) { in CheckCaseExpression()
20901 ExprResult Sema::CreateRecoveryExpr(SourceLocation Begin, SourceLocation End, in CreateRecoveryExpr()