Lines Matching refs:Sema

63   Sema &S;
67 CheckDefaultArgumentVisitor(Sema &S, const Expr *DefaultArg) in CheckDefaultArgumentVisitor()
161 Sema::ImplicitExceptionSpecification::CalledDecl(SourceLocation CallLoc, in CalledDecl()
229 void Sema::ImplicitExceptionSpecification::CalledStmt(Stmt *S) { in CalledStmt()
258 ExprResult Sema::ConvertParamDefaultArgument(ParmVarDecl *Param, Expr *Arg, in ConvertParamDefaultArgument()
286 void Sema::SetParamDefaultArgument(ParmVarDecl *Param, Expr *Arg, in SetParamDefaultArgument()
308 Sema::ActOnParamDefaultArgument(Decl *param, SourceLocation EqualLoc, in ActOnParamDefaultArgument()
363 void Sema::ActOnParamUnparsedDefaultArgument(Decl *param, in ActOnParamUnparsedDefaultArgument()
376 void Sema::ActOnParamDefaultArgumentError(Decl *param, in ActOnParamDefaultArgumentError()
393 void Sema::CheckExtraCXXDefaultArguments(Declarator &D) { in CheckExtraCXXDefaultArguments()
448 bool Sema::MergeCXXFunctionDecl(FunctionDecl *New, FunctionDecl *Old, in MergeCXXFunctionDecl()
711 Sema::ActOnDecompositionDeclarator(Scope *S, Declarator &D, in ActOnDecompositionDeclarator()
906 Sema &S, ArrayRef<BindingDecl *> Bindings, ValueDecl *Src, in checkSimpleDecomposition()
932 static bool checkArrayLikeDecomposition(Sema &S, in checkArrayLikeDecomposition()
947 static bool checkArrayDecomposition(Sema &S, ArrayRef<BindingDecl*> Bindings, in checkArrayDecomposition()
955 static bool checkVectorDecomposition(Sema &S, ArrayRef<BindingDecl*> Bindings, in checkVectorDecomposition()
964 static bool checkComplexDecomposition(Sema &S, in checkComplexDecomposition()
996 static bool lookupStdTypeTraitMember(Sema &S, LookupResult &TraitMemberLookup, in lookupStdTypeTraitMember()
1018 Loc, Sema::LookupOrdinaryName); in lookupStdTypeTraitMember()
1055 getTrivialIntegralTemplateArgument(Sema &S, SourceLocation Loc, QualType T, in getTrivialIntegralTemplateArgument()
1062 getTrivialTypeTemplateArgument(Sema &S, SourceLocation Loc, QualType T) { in getTrivialTypeTemplateArgument()
1068 static IsTupleLike isTupleLike(Sema &S, SourceLocation Loc, QualType T, in isTupleLike()
1071 S, Sema::ExpressionEvaluationContext::ConstantEvaluated); in isTupleLike()
1074 LookupResult R(S, Value, Loc, Sema::LookupOrdinaryName); in isTupleLike()
1089 struct ICEDiagnoser : Sema::VerifyICEDiagnoser { in isTupleLike()
1094 Sema::SemaDiagnosticBuilder diagnoseNotICE(Sema &S, in isTupleLike()
1115 static QualType getTupleLikeElementType(Sema &S, SourceLocation Loc, in getTupleLikeElementType()
1124 LookupResult R(S, TypeDN, Loc, Sema::LookupOrdinaryName); in getTupleLikeElementType()
1146 Sema &S;
1147 InitializingBinding(Sema &S, BindingDecl *BD) : S(S) { in InitializingBinding()
1148 Sema::CodeSynthesisContext Ctx; in InitializingBinding()
1149 Ctx.Kind = Sema::CodeSynthesisContext::InitializingStructuredBinding; in InitializingBinding()
1160 static bool checkTupleLikeDecomposition(Sema &S, in checkTupleLikeDecomposition()
1180 LookupResult MemberGet(S, GetDN, Src->getLocation(), Sema::LookupMemberName); in checkTupleLikeDecomposition()
1299 static DeclAccessPair findDecomposableBaseClass(Sema &S, SourceLocation Loc, in findDecomposableBaseClass()
1370 static bool checkMemberDecomposition(Sema &S, ArrayRef<BindingDecl*> Bindings, in checkMemberDecomposition()
1470 void Sema::CheckCompleteDecompositionDeclaration(DecompositionDecl *DD) { in CheckCompleteDecompositionDeclaration()
1544 void Sema::MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old) { in MergeVarDeclExceptionSpecs()
1584 void Sema::CheckCXXDefaultArguments(FunctionDecl *FD) { in CheckCXXDefaultArguments()
1631 static bool CheckLiteralType(Sema &SemaRef, Sema::CheckConstexprKind Kind, in CheckLiteralType()
1638 case Sema::CheckConstexprKind::Diagnose: in CheckLiteralType()
1642 case Sema::CheckConstexprKind::CheckValid: in CheckLiteralType()
1650 static bool CheckConstexprDestructorSubobjects(Sema &SemaRef, in CheckConstexprDestructorSubobjects()
1652 Sema::CheckConstexprKind Kind) { in CheckConstexprDestructorSubobjects()
1659 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDestructorSubobjects()
1681 static bool CheckConstexprParameterTypes(Sema &SemaRef, in CheckConstexprParameterTypes()
1683 Sema::CheckConstexprKind Kind) { in CheckConstexprParameterTypes()
1702 static bool CheckConstexprReturnType(Sema &SemaRef, const FunctionDecl *FD, in CheckConstexprReturnType()
1703 Sema::CheckConstexprKind Kind) { in CheckConstexprReturnType()
1725 static bool CheckConstexprFunctionBody(Sema &SemaRef, const FunctionDecl *Dcl,
1727 Sema::CheckConstexprKind Kind);
1735 bool Sema::CheckConstexprFunctionDefinition(const FunctionDecl *NewFD, in CheckConstexprFunctionDefinition()
1822 static bool CheckConstexprDeclStmt(Sema &SemaRef, const FunctionDecl *Dcl, in CheckConstexprDeclStmt()
1824 Sema::CheckConstexprKind Kind) { in CheckConstexprDeclStmt()
1850 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDeclStmt()
1865 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDeclStmt()
1893 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDeclStmt()
1917 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDeclStmt()
1930 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDeclStmt()
1951 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprDeclStmt()
1975 static bool CheckConstexprCtorInitializer(Sema &SemaRef, in CheckConstexprCtorInitializer()
1980 Sema::CheckConstexprKind Kind) { in CheckConstexprCtorInitializer()
1982 if (Kind == Sema::CheckConstexprKind::CheckValid && in CheckConstexprCtorInitializer()
2002 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprCtorInitializer()
2031 CheckConstexprFunctionStmt(Sema &SemaRef, const FunctionDecl *Dcl, Stmt *S, in CheckConstexprFunctionStmt()
2035 Sema::CheckConstexprKind Kind) { in CheckConstexprFunctionStmt()
2181 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprFunctionStmt()
2193 static bool CheckConstexprFunctionBody(Sema &SemaRef, const FunctionDecl *Dcl, in CheckConstexprFunctionBody()
2195 Sema::CheckConstexprKind Kind) { in CheckConstexprFunctionBody()
2212 case Sema::CheckConstexprKind::CheckValid: in CheckConstexprFunctionBody()
2217 case Sema::CheckConstexprKind::Diagnose: in CheckConstexprFunctionBody()
2240 if (Kind == Sema::CheckConstexprKind::CheckValid) { in CheckConstexprFunctionBody()
2279 if (Kind == Sema::CheckConstexprKind::Diagnose) { in CheckConstexprFunctionBody()
2338 case Sema::CheckConstexprKind::Diagnose: in CheckConstexprFunctionBody()
2347 case Sema::CheckConstexprKind::CheckValid: in CheckConstexprFunctionBody()
2357 case Sema::CheckConstexprKind::Diagnose: in CheckConstexprFunctionBody()
2368 case Sema::CheckConstexprKind::CheckValid: in CheckConstexprFunctionBody()
2390 if (Kind == Sema::CheckConstexprKind::Diagnose && in CheckConstexprFunctionBody()
2412 CXXRecordDecl *Sema::getCurrentClass(Scope *, const CXXScopeSpec *SS) { in getCurrentClass()
2430 bool Sema::isCurrentClassName(const IdentifierInfo &II, Scope *S, in isCurrentClassName()
2439 bool Sema::isCurrentClassNameTypo(IdentifierInfo *&II, const CXXScopeSpec *SS) { in isCurrentClassNameTypo()
2499 Sema::CheckBaseSpecifier(CXXRecordDecl *Class, in CheckBaseSpecifier()
2655 BaseResult Sema::ActOnBaseSpecifier(Decl *classdecl, SourceRange SpecifierRange, in ActOnBaseSpecifier()
2727 bool Sema::AttachBaseSpecifiers(CXXRecordDecl *Class, in AttachBaseSpecifiers()
2835 void Sema::ActOnBaseSpecifiers(Decl *ClassDecl, in ActOnBaseSpecifiers()
2846 bool Sema::IsDerivedFrom(SourceLocation Loc, QualType Derived, QualType Base) { in IsDerivedFrom()
2873 bool Sema::IsDerivedFrom(SourceLocation Loc, QualType Derived, QualType Base, in IsDerivedFrom()
2911 void Sema::BuildBasePathArray(const CXXBasePaths &Paths, in BuildBasePathArray()
2930 Sema::CheckDerivedToBaseConversion(QualType Derived, QualType Base, in CheckDerivedToBaseConversion()
3012 Sema::CheckDerivedToBaseConversion(QualType Derived, QualType Base, in CheckDerivedToBaseConversion()
3035 std::string Sema::getAmbiguousPathsDisplayString(CXXBasePaths &Paths) { in getAmbiguousPathsDisplayString()
3059 bool Sema::ActOnAccessSpecifier(AccessSpecifier Access, SourceLocation ASLoc, in ActOnAccessSpecifier()
3070 void Sema::CheckOverrideControl(NamedDecl *D) { in CheckOverrideControl()
3138 void Sema::DiagnoseAbsenceOfOverrideControl(NamedDecl *D, bool Inconsistent) { in DiagnoseAbsenceOfOverrideControl()
3176 bool Sema::CheckIfOverriddenFunctionIsMarkedFinal(const CXXMethodDecl *New, in CheckIfOverriddenFunctionIsMarkedFinal()
3210 void Sema::CheckShadowInheritedFields(const SourceLocation &Loc, in CheckShadowInheritedFields()
3266 Sema::ActOnCXXMemberDeclarator(Scope *S, AccessSpecifier AS, Declarator &D, in ActOnCXXMemberDeclarator()
3583 Sema &S;
3604 UninitializedFieldVisitor(Sema &S, in UninitializedFieldVisitor()
3920 Sema &SemaRef, const CXXConstructorDecl *Constructor) { in DiagnoseUninitializedFields()
3987 void Sema::ActOnStartCXXInClassMemberInitializer() { in ActOnStartCXXInClassMemberInitializer()
3993 void Sema::ActOnStartTrailingRequiresClause(Scope *S, Declarator &D) { in ActOnStartTrailingRequiresClause()
4007 ExprResult Sema::ActOnFinishTrailingRequiresClause(ExprResult ConstraintExpr) { in ActOnFinishTrailingRequiresClause()
4011 ExprResult Sema::ActOnRequiresClause(ExprResult ConstraintExpr) { in ActOnRequiresClause()
4029 void Sema::ActOnFinishCXXInClassMemberInitializer(Decl *D, in ActOnFinishCXXInClassMemberInitializer()
4087 static bool FindBaseInitializer(Sema &SemaRef, in FindBaseInitializer()
4130 Sema::ActOnMemInitializer(Decl *ConstructorD, in ActOnMemInitializer()
4146 Sema::ActOnMemInitializer(Decl *ConstructorD, in ActOnMemInitializer()
4190 ValueDecl *Sema::tryLookupCtorInitMemberDecl(CXXRecordDecl *ClassDecl, in tryLookupCtorInitMemberDecl()
4204 Sema::BuildMemInitializer(Decl *ConstructorD, in BuildMemInitializer()
4386 Sema::BuildMemberInitializer(ValueDecl *Member, Expr *Init, in BuildMemberInitializer()
4469 Sema::BuildDelegatingInitializer(TypeSourceInfo *TInfo, Expr *Init, in BuildDelegatingInitializer()
4532 Sema::BuildBaseInitializer(QualType BaseType, TypeSourceInfo *BaseTInfo, in BuildBaseInitializer()
4673 static Expr *CastForMoving(Sema &SemaRef, Expr *E, QualType T = QualType()) { in CastForMoving()
4696 BuildImplicitBaseInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor, in BuildImplicitBaseInitializer()
4779 BuildImplicitMemberInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor, in BuildImplicitMemberInitializer()
4811 Sema::LookupMemberName); in BuildImplicitMemberInitializer()
4939 Sema &S;
4947 BaseAndFieldInfo(Sema &S, CXXConstructorDecl *Ctor, bool ErrorsInInits) in BaseAndFieldInfo()
5043 static bool CollectFieldInitializer(Sema &SemaRef, BaseAndFieldInfo &Info, in CollectFieldInitializer()
5112 Sema::SetDelegatingInitializer(CXXConstructorDecl *Constructor, in SetDelegatingInitializer()
5133 bool Sema::SetCtorInitializers(CXXConstructorDecl *Constructor, bool AnyErrors, in SetCtorInitializers()
5333 static void AddInitializerToDiag(const Sema::SemaDiagnosticBuilder &Diag, in AddInitializerToDiag()
5348 Sema &SemaRef, const CXXConstructorDecl *Constructor, in DiagnoseBaseOrMemInitializerOrder()
5438 Sema::SemaDiagnosticBuilder D = SemaRef.Diag( in DiagnoseBaseOrMemInitializerOrder()
5477 bool CheckRedundantInit(Sema &S, in CheckRedundantInit()
5507 bool CheckRedundantUnionInit(Sema &S, in CheckRedundantUnionInit()
5543 void Sema::ActOnMemInitializers(Decl *ConstructorDecl, in ActOnMemInitializers()
5610 Sema::MarkBaseAndMemberDestructorsReferenced(SourceLocation Location, in MarkBaseAndMemberDestructorsReferenced()
5710 void Sema::MarkVirtualBaseDestructorsReferenced( in MarkVirtualBaseDestructorsReferenced()
5748 void Sema::ActOnDefaultCtorInitializers(Decl *CDtorDecl) { in ActOnDefaultCtorInitializers()
5759 bool Sema::isAbstractType(SourceLocation Loc, QualType T) { in isAbstractType()
5780 bool Sema::RequireNonAbstractType(SourceLocation Loc, QualType T, in RequireNonAbstractType()
5791 void Sema::DiagnoseAbstractType(const CXXRecordDecl *RD) { in DiagnoseAbstractType()
5845 Sema &S;
5850 AbstractUsageInfo(Sema &S, CXXRecordDecl *Record) in AbstractUsageInfo()
5862 void CheckType(const NamedDecl *D, TypeLoc TL, Sema::AbstractDiagSelID Sel);
5872 void Visit(TypeLoc TL, Sema::AbstractDiagSelID Sel) { in Visit()
5881 void Check(FunctionProtoTypeLoc TL, Sema::AbstractDiagSelID Sel) { in Check()
5882 Visit(TL.getReturnLoc(), Sema::AbstractReturnType); in Check()
5888 if (TSI) Visit(TSI->getTypeLoc(), Sema::AbstractParamType); in Check()
5892 void Check(ArrayTypeLoc TL, Sema::AbstractDiagSelID Sel) { in Check()
5893 Visit(TL.getElementLoc(), Sema::AbstractArrayType); in Check()
5896 void Check(TemplateSpecializationTypeLoc TL, Sema::AbstractDiagSelID Sel) { in Check()
5902 Visit(TSI->getTypeLoc(), Sema::AbstractNone); in Check()
5909 void Check(Type TL, Sema::AbstractDiagSelID Sel) { \
5910 Visit(TL.getNextTypeLoc(), Sema::AbstractNone); \
5920 void Check(TypeLoc TL, Sema::AbstractDiagSelID Sel) { in CheckPolymorphic()
5929 if (Sel == Sema::AbstractNone) return; in CheckPolymorphic()
5934 Sel = Sema::AbstractArrayType; in CheckPolymorphic()
5942 if (Sel == Sema::AbstractArrayType) { in CheckPolymorphic()
5954 Sema::AbstractDiagSelID Sel) { in CheckType()
5972 Info.CheckType(FD, TSI->getTypeLoc(), Sema::AbstractNone); in CheckAbstractClassUsage()
5984 Sema::AbstractVariableType); in CheckAbstractClassUsage()
6008 Info.CheckType(FD, TSI->getTypeLoc(), Sema::AbstractFieldType); in CheckAbstractClassUsage()
6023 static void ReferenceDllExportedMembers(Sema &S, CXXRecordDecl *Class) { in ReferenceDllExportedMembers()
6039 Sema &S; in ReferenceDllExportedMembers()
6040 MarkingClassDllexported(Sema &S, CXXRecordDecl *Class, in ReferenceDllExportedMembers()
6043 Sema::CodeSynthesisContext Ctx; in ReferenceDllExportedMembers()
6044 Ctx.Kind = Sema::CodeSynthesisContext::MarkingClassDllexported; in ReferenceDllExportedMembers()
6118 static void checkForMultipleExportedDefaultConstructors(Sema &S, in checkForMultipleExportedDefaultConstructors()
6156 static void checkCUDADeviceBuiltinSurfaceClassTemplate(Sema &S, in checkCUDADeviceBuiltinSurfaceClassTemplate()
6159 auto reportIllegalClassTemplate = [&ErrorReported](Sema &S, in checkCUDADeviceBuiltinSurfaceClassTemplate()
6210 static void checkCUDADeviceBuiltinTextureClassTemplate(Sema &S, in checkCUDADeviceBuiltinTextureClassTemplate()
6213 auto reportIllegalClassTemplate = [&ErrorReported](Sema &S, in checkCUDADeviceBuiltinTextureClassTemplate()
6273 void Sema::checkClassLevelCodeSegAttribute(CXXRecordDecl *Class) { in checkClassLevelCodeSegAttribute()
6284 void Sema::checkClassLevelDLLAttribute(CXXRecordDecl *Class) { in checkClassLevelDLLAttribute()
6448 void Sema::propagateDLLAttrToBaseClassTemplate( in propagateDLLAttrToBaseClassTemplate()
6513 Sema::DefaultedFunctionKind
6514 Sema::getDefaultedFunctionKind(const FunctionDecl *FD) { in getDefaultedFunctionKind()
6518 return Sema::CXXDefaultConstructor; in getDefaultedFunctionKind()
6521 return Sema::CXXCopyConstructor; in getDefaultedFunctionKind()
6524 return Sema::CXXMoveConstructor; in getDefaultedFunctionKind()
6528 return Sema::CXXCopyAssignment; in getDefaultedFunctionKind()
6531 return Sema::CXXMoveAssignment; in getDefaultedFunctionKind()
6534 return Sema::CXXDestructor; in getDefaultedFunctionKind()
6567 static void DefineDefaultedFunction(Sema &S, FunctionDecl *FD, in DefineDefaultedFunction()
6569 Sema::DefaultedFunctionKind DFK = S.getDefaultedFunctionKind(FD); in DefineDefaultedFunction()
6574 case Sema::CXXDefaultConstructor: in DefineDefaultedFunction()
6578 case Sema::CXXCopyConstructor: in DefineDefaultedFunction()
6581 case Sema::CXXCopyAssignment: in DefineDefaultedFunction()
6584 case Sema::CXXDestructor: in DefineDefaultedFunction()
6587 case Sema::CXXMoveConstructor: in DefineDefaultedFunction()
6590 case Sema::CXXMoveAssignment: in DefineDefaultedFunction()
6593 case Sema::CXXInvalid: in DefineDefaultedFunction()
6600 static bool canPassInRegisters(Sema &S, CXXRecordDecl *D, in canPassInRegisters()
6718 ReportOverrides(Sema &S, unsigned DiagID, const CXXMethodDecl *MD, in ReportOverrides()
6740 void Sema::CheckCompletedCXXClass(Scope *S, CXXRecordDecl *Record) { in CheckCompletedCXXClass()
7071 static Sema::SpecialMemberOverloadResult lookupCallFromSpecialMember( in lookupCallFromSpecialMember()
7072 Sema &S, CXXRecordDecl *Class, Sema::CXXSpecialMember CSM, in lookupCallFromSpecialMember()
7075 if (CSM == Sema::CXXCopyAssignment || CSM == Sema::CXXMoveAssignment) in lookupCallFromSpecialMember()
7079 if (CSM == Sema::CXXDefaultConstructor || CSM == Sema::CXXDestructor) in lookupCallFromSpecialMember()
7092 class Sema::InheritedConstructorInfo {
7093 Sema &S;
7103 InheritedConstructorInfo(Sema &S, SourceLocation UseLoc, in InheritedConstructorInfo()
7176 specialMemberIsConstexpr(Sema &S, CXXRecordDecl *ClassDecl, in specialMemberIsConstexpr()
7177 Sema::CXXSpecialMember CSM, unsigned Quals, in specialMemberIsConstexpr()
7180 Sema::InheritedConstructorInfo *Inherited = nullptr) { in specialMemberIsConstexpr()
7184 assert(CSM == Sema::CXXDefaultConstructor); in specialMemberIsConstexpr()
7191 if (CSM == Sema::CXXDefaultConstructor) in specialMemberIsConstexpr()
7193 if (CSM == Sema::CXXDestructor) in specialMemberIsConstexpr()
7196 Sema::SpecialMemberOverloadResult SMOR = in specialMemberIsConstexpr()
7208 Sema &S, CXXRecordDecl *ClassDecl, Sema::CXXSpecialMember CSM, in defaultedSpecialMemberIsConstexpr()
7210 Sema::InheritedConstructorInfo *Inherited = nullptr) { in defaultedSpecialMemberIsConstexpr()
7218 case Sema::CXXDefaultConstructor: in defaultedSpecialMemberIsConstexpr()
7229 case Sema::CXXCopyConstructor: in defaultedSpecialMemberIsConstexpr()
7230 case Sema::CXXMoveConstructor: in defaultedSpecialMemberIsConstexpr()
7234 case Sema::CXXCopyAssignment: in defaultedSpecialMemberIsConstexpr()
7235 case Sema::CXXMoveAssignment: in defaultedSpecialMemberIsConstexpr()
7242 case Sema::CXXDestructor: in defaultedSpecialMemberIsConstexpr()
7245 case Sema::CXXInvalid: in defaultedSpecialMemberIsConstexpr()
7257 return CSM == Sema::CXXDefaultConstructor in defaultedSpecialMemberIsConstexpr()
7295 if (CSM == Sema::CXXDefaultConstructor && F->hasInClassInitializer()) in defaultedSpecialMemberIsConstexpr()
7304 } else if (CSM == Sema::CXXDefaultConstructor) { in defaultedSpecialMemberIsConstexpr()
7317 Sema &S;
7319 ComputingExceptionSpec(Sema &S, FunctionDecl *FD, SourceLocation Loc) in ComputingExceptionSpec()
7321 Sema::CodeSynthesisContext Ctx; in ComputingExceptionSpec()
7322 Ctx.Kind = Sema::CodeSynthesisContext::ExceptionSpecEvaluation; in ComputingExceptionSpec()
7333 static Sema::ImplicitExceptionSpecification
7335 Sema &S, SourceLocation Loc, CXXMethodDecl *MD, Sema::CXXSpecialMember CSM,
7336 Sema::InheritedConstructorInfo *ICI);
7338 static Sema::ImplicitExceptionSpecification
7339 ComputeDefaultedComparisonExceptionSpec(Sema &S, SourceLocation Loc,
7341 Sema::DefaultedComparisonKind DCK);
7343 static Sema::ImplicitExceptionSpecification
7344 computeImplicitExceptionSpec(Sema &S, SourceLocation Loc, FunctionDecl *FD) { in computeImplicitExceptionSpec()
7357 Sema::InheritedConstructorInfo ICI( in computeImplicitExceptionSpec()
7360 S, Loc, CD, Sema::CXXDefaultConstructor, &ICI); in computeImplicitExceptionSpec()
7363 static FunctionProtoType::ExtProtoInfo getImplicitMethodEPI(Sema &S, in getImplicitMethodEPI()
7378 void Sema::EvaluateImplicitExceptionSpec(SourceLocation Loc, FunctionDecl *FD) { in EvaluateImplicitExceptionSpec()
7391 void Sema::CheckExplicitlyDefaultedFunction(Scope *S, FunctionDecl *FD) { in CheckExplicitlyDefaultedFunction()
7410 bool Sema::CheckExplicitlyDefaultedSpecialMember(CXXMethodDecl *MD, in CheckExplicitlyDefaultedSpecialMember()
7631 using DefaultedComparisonKind = Sema::DefaultedComparisonKind;
7633 DefaultedComparisonVisitor(Sema &S, CXXRecordDecl *RD, FunctionDecl *FD, in DefaultedComparisonVisitor()
7727 Sema &S;
7783 DefaultedComparisonAnalyzer(Sema &S, CXXRecordDecl *RD, FunctionDecl *FD, in DefaultedComparisonAnalyzer()
8105 DefaultedComparisonSynthesizer(Sema &S, CXXRecordDecl *RD, FunctionDecl *FD, in DefaultedComparisonSynthesizer()
8112 Sema::CompoundScopeRAII CompoundScope(S); in build()
8179 Sema::ComparisonCategoryUsage::DefaultedOperator); in build()
8279 Sema::ConditionKind::Boolean), in buildIfNotCondReturnFalse()
8353 Sema::ConditionKind::Boolean), in visitSubobjectArray()
8418 Sema::ConditionResult Cond = S.ActOnCondition( in visitExpandedSubobject()
8419 nullptr, Loc, Comp.get(), Sema::ConditionKind::Boolean); in visitExpandedSubobject()
8463 static void lookupOperatorsForDefaultedComparison(Sema &Self, Scope *S, in lookupOperatorsForDefaultedComparison()
8487 bool Sema::CheckExplicitlyDefaultedComparison(Scope *S, FunctionDecl *FD, in CheckExplicitlyDefaultedComparison()
8758 void Sema::DeclareImplicitEqualityComparison(CXXRecordDecl *RD, in DeclareImplicitEqualityComparison()
8760 Sema::CodeSynthesisContext Ctx; in DeclareImplicitEqualityComparison()
8761 Ctx.Kind = Sema::CodeSynthesisContext::DeclaringImplicitEqualityComparison; in DeclareImplicitEqualityComparison()
8772 void Sema::DefineDefaultedComparison(SourceLocation UseLoc, FunctionDecl *FD, in DefineDefaultedComparison()
8810 static Sema::ImplicitExceptionSpecification
8811 ComputeDefaultedComparisonExceptionSpec(Sema &S, SourceLocation Loc, in ComputeDefaultedComparisonExceptionSpec()
8813 Sema::DefaultedComparisonKind DCK) { in ComputeDefaultedComparisonExceptionSpec()
8815 Sema::ImplicitExceptionSpecification ExceptSpec(S); in ComputeDefaultedComparisonExceptionSpec()
8833 Sema::SynthesizedFunctionScope Scope(S, FD); in ComputeDefaultedComparisonExceptionSpec()
8835 S, Sema::ExpressionEvaluationContext::Unevaluated); in ComputeDefaultedComparisonExceptionSpec()
8854 void Sema::CheckDelayedMemberExceptionSpecs() { in CheckDelayedMemberExceptionSpecs()
8877 Sema &S;
8879 Sema::CXXSpecialMember CSM;
8880 Sema::InheritedConstructorInfo *ICI;
8885 SpecialMemberVisitor(Sema &S, CXXMethodDecl *MD, Sema::CXXSpecialMember CSM, in SpecialMemberVisitor()
8886 Sema::InheritedConstructorInfo *ICI) in SpecialMemberVisitor()
8889 case Sema::CXXDefaultConstructor: in SpecialMemberVisitor()
8890 case Sema::CXXCopyConstructor: in SpecialMemberVisitor()
8891 case Sema::CXXMoveConstructor: in SpecialMemberVisitor()
8894 case Sema::CXXCopyAssignment: in SpecialMemberVisitor()
8895 case Sema::CXXMoveAssignment: in SpecialMemberVisitor()
8898 case Sema::CXXDestructor: in SpecialMemberVisitor()
8900 case Sema::CXXInvalid: in SpecialMemberVisitor()
8915 return CSM == Sema::CXXMoveConstructor || CSM == Sema::CXXMoveAssignment; in isMove()
8919 Sema::SpecialMemberOverloadResult lookupIn(CXXRecordDecl *Class, in lookupIn()
8927 Sema::SpecialMemberOverloadResult lookupInheritedCtor(CXXRecordDecl *Class) { in lookupInheritedCtor()
8930 assert(CSM == Sema::CXXDefaultConstructor); in lookupInheritedCtor()
8999 SpecialMemberDeletionInfo(Sema &S, CXXMethodDecl *MD, in SpecialMemberDeletionInfo()
9000 Sema::CXXSpecialMember CSM, in SpecialMemberDeletionInfo()
9001 Sema::InheritedConstructorInfo *ICI, bool Diagnose) in SpecialMemberDeletionInfo()
9007 Sema::CXXSpecialMember getEffectiveCSM() { in getEffectiveCSM()
9008 return ICI ? Sema::CXXInvalid : CSM; in getEffectiveCSM()
9023 Sema::SpecialMemberOverloadResult SMOR,
9054 Subobject Subobj, Sema::SpecialMemberOverloadResult SMOR, in shouldDeleteForSubobjectCall()
9061 if (SMOR.getKind() == Sema::SpecialMemberOverloadResult::NoMemberOrDeleted) in shouldDeleteForSubobjectCall()
9063 else if (SMOR.getKind() == Sema::SpecialMemberOverloadResult::Ambiguous) in shouldDeleteForSubobjectCall()
9124 if (!(CSM == Sema::CXXDefaultConstructor && in shouldDeleteForClassSubobject()
9134 Sema::SpecialMemberOverloadResult SMOR = in shouldDeleteForClassSubobject()
9135 S.LookupSpecialMember(Class, Sema::CXXDestructor, in shouldDeleteForClassSubobject()
9154 if (CSM == Sema::CXXDefaultConstructor && FD->hasInClassInitializer()) in shouldDeleteForVariantObjCPtrMember()
9178 Sema::SpecialMemberOverloadResult SMOR = lookupInheritedCtor(BaseClass); in shouldDeleteForBase()
9206 if (CSM == Sema::CXXDefaultConstructor) { in shouldDeleteForField()
9229 } else if (CSM == Sema::CXXCopyConstructor) { in shouldDeleteForField()
9280 if (CSM == Sema::CXXDefaultConstructor && AllVariantFieldsAreConst && in shouldDeleteForField()
9309 if (CSM == Sema::CXXDefaultConstructor && inUnion() && AllFieldsAreConst) { in shouldDeleteForAllConstMembers()
9328 bool Sema::ShouldDeleteSpecialMember(CXXMethodDecl *MD, CXXSpecialMember CSM, in ShouldDeleteSpecialMember()
9459 void Sema::DiagnoseDeletedDefaultedFunction(FunctionDecl *FD) { in DiagnoseDeletedDefaultedFunction()
9486 static bool findTrivialSpecialMember(Sema &S, CXXRecordDecl *RD, in findTrivialSpecialMember()
9487 Sema::CXXSpecialMember CSM, unsigned Quals, in findTrivialSpecialMember()
9489 Sema::TrivialABIHandling TAH, in findTrivialSpecialMember()
9495 case Sema::CXXInvalid: in findTrivialSpecialMember()
9498 case Sema::CXXDefaultConstructor: in findTrivialSpecialMember()
9527 case Sema::CXXDestructor: in findTrivialSpecialMember()
9532 (TAH == Sema::TAH_ConsiderTrivialABI && in findTrivialSpecialMember()
9544 case Sema::CXXCopyConstructor: in findTrivialSpecialMember()
9549 (TAH == Sema::TAH_ConsiderTrivialABI && in findTrivialSpecialMember()
9565 case Sema::CXXCopyAssignment: in findTrivialSpecialMember()
9580 case Sema::CXXMoveConstructor: in findTrivialSpecialMember()
9581 case Sema::CXXMoveAssignment: in findTrivialSpecialMember()
9583 Sema::SpecialMemberOverloadResult SMOR = in findTrivialSpecialMember()
9590 if (SMOR.getKind() == Sema::SpecialMemberOverloadResult::Ambiguous) in findTrivialSpecialMember()
9595 Sema::SpecialMemberOverloadResult::NoMemberOrDeleted); in findTrivialSpecialMember()
9604 if (TAH == Sema::TAH_ConsiderTrivialABI && in findTrivialSpecialMember()
9605 (CSM == Sema::CXXCopyConstructor || CSM == Sema::CXXMoveConstructor)) in findTrivialSpecialMember()
9641 static bool checkTrivialSubobjectCall(Sema &S, SourceLocation SubobjLoc, in checkTrivialSubobjectCall()
9643 Sema::CXXSpecialMember CSM, in checkTrivialSubobjectCall()
9645 Sema::TrivialABIHandling TAH, bool Diagnose) { in checkTrivialSubobjectCall()
9659 if (!Selected && CSM == Sema::CXXDefaultConstructor) { in checkTrivialSubobjectCall()
9682 S.SpecialMemberIsTrivial(Selected, CSM, Sema::TAH_IgnoreTrivialABI, in checkTrivialSubobjectCall()
9692 static bool checkTrivialClassMembers(Sema &S, CXXRecordDecl *RD, in checkTrivialClassMembers()
9693 Sema::CXXSpecialMember CSM, in checkTrivialClassMembers()
9695 Sema::TrivialABIHandling TAH, in checkTrivialClassMembers()
9715 if (CSM == Sema::CXXDefaultConstructor && FI->hasInClassInitializer()) { in checkTrivialClassMembers()
9744 void Sema::DiagnoseNontrivial(const CXXRecordDecl *RD, CXXSpecialMember CSM) { in DiagnoseNontrivial()
9756 bool Sema::SpecialMemberIsTrivial(CXXMethodDecl *MD, CXXSpecialMember CSM, in SpecialMemberIsTrivial()
9908 Sema *S;
9986 void Sema::FindHiddenVirtualMethods(CXXMethodDecl *MD, in FindHiddenVirtualMethods()
10014 void Sema::NoteHiddenVirtualMethods(CXXMethodDecl *MD, in NoteHiddenVirtualMethods()
10027 void Sema::DiagnoseHiddenVirtualMethods(CXXMethodDecl *MD) { in DiagnoseHiddenVirtualMethods()
10044 void Sema::checkIllFormedTrivialABIStruct(CXXRecordDecl &RD) { in checkIllFormedTrivialABIStruct()
10118 void Sema::ActOnFinishCXXMemberSpecification( in ActOnFinishCXXMemberSpecification()
10184 void Sema::AddImplicitlyDeclaredMembersToClass(CXXRecordDecl *ClassDecl) { in AddImplicitlyDeclaredMembersToClass()
10282 Sema::ActOnReenterTemplateScope(Decl *D, in ActOnReenterTemplateScope()
10348 void Sema::ActOnStartDelayedMemberDeclarations(Scope *S, Decl *RecordD) { in ActOnStartDelayedMemberDeclarations()
10355 void Sema::ActOnFinishDelayedMemberDeclarations(Scope *S, Decl *RecordD) { in ActOnFinishDelayedMemberDeclarations()
10363 void Sema::ActOnReenterCXXMethodParameter(Scope *S, ParmVarDecl *Param) { in ActOnReenterCXXMethodParameter()
10380 void Sema::ActOnStartDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) { in ActOnStartDelayedCXXMethodDeclaration()
10388 void Sema::ActOnDelayedCXXMethodParameter(Scope *S, Decl *ParamD) { in ActOnDelayedCXXMethodParameter()
10405 void Sema::ActOnFinishDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) { in ActOnFinishDelayedCXXMethodDeclaration()
10427 static void checkMethodTypeQualifiers(Sema &S, Declarator &D, unsigned DiagID) { in checkMethodTypeQualifiers()
10452 QualType Sema::CheckConstructorDeclarator(Declarator &D, QualType R, in CheckConstructorDeclarator()
10515 void Sema::CheckConstructor(CXXConstructorDecl *Constructor) { in CheckConstructor()
10550 bool Sema::CheckDestructor(CXXDestructorDecl *Destructor) { in CheckDestructor()
10605 QualType Sema::CheckDestructorDeclarator(Declarator &D, QualType R, in CheckDestructorDeclarator()
10727 void Sema::CheckConversionDeclarator(Declarator &D, QualType &R, in CheckConversionDeclarator()
10893 Decl *Sema::ActOnConversionDeclarator(CXXConversionDecl *Conversion) { in ActOnConversionDeclarator()
10939 BadSpecifierDiagnoser(Sema &S, SourceLocation Loc, unsigned DiagID) in BadSpecifierDiagnoser()
10959 Sema &S;
10960 Sema::SemaDiagnosticBuilder Diagnostic;
10969 void Sema::CheckDeductionGuideDeclarator(Declarator &D, QualType &R, in CheckDeductionGuideDeclarator()
11089 static void DiagnoseNamespaceInlineMismatch(Sema &S, SourceLocation KeywordLoc, in DiagnoseNamespaceInlineMismatch()
11114 Decl *Sema::ActOnStartNamespaceDef( in ActOnStartNamespaceDef()
11267 void Sema::ActOnFinishNamespaceDef(Decl *Dcl, SourceLocation RBrace) { in ActOnFinishNamespaceDef()
11279 CXXRecordDecl *Sema::getStdBadAlloc() const { in getStdBadAlloc()
11284 EnumDecl *Sema::getStdAlignValT() const { in getStdAlignValT()
11288 NamespaceDecl *Sema::getStdNamespace() const { in getStdNamespace()
11293 NamespaceDecl *Sema::lookupStdExperimentalNamespace() { in lookupStdExperimentalNamespace()
11317 Sema &S;
11340 QualType Sema::CheckComparisonCategoryType(ComparisonCategoryType Kind, in CheckComparisonCategoryType()
11446 NamespaceDecl *Sema::getOrCreateStdNamespace() { in getOrCreateStdNamespace()
11461 bool Sema::isStdInitializerList(QualType Ty, QualType *Element) { in isStdInitializerList()
11521 static ClassTemplateDecl *LookupStdInitializerList(Sema &S, SourceLocation Loc){ in LookupStdInitializerList()
11529 Loc, Sema::LookupOrdinaryName); in LookupStdInitializerList()
11555 QualType Sema::BuildStdInitializerList(QualType Element, SourceLocation Loc) { in BuildStdInitializerList()
11570 bool Sema::isInitListConstructor(const FunctionDecl *Ctor) { in isInitListConstructor()
11617 static bool TryNamespaceTypoCorrection(Sema &S, LookupResult &R, Scope *Sc, in TryNamespaceTypoCorrection()
11625 Sema::CTK_ErrorRecovery)) { in TryNamespaceTypoCorrection()
11645 Decl *Sema::ActOnUsingDirective(Scope *S, SourceLocation UsingLoc, in ActOnUsingDirective()
11728 void Sema::PushUsingDirective(Scope *S, UsingDirectiveDecl *UDir) { in PushUsingDirective()
11741 Decl *Sema::ActOnUsingDeclaration(Scope *S, AccessSpecifier AS, in ActOnUsingDeclaration()
11825 Decl *Sema::ActOnUsingEnumDeclaration(Scope *S, AccessSpecifier AS, in ActOnUsingEnumDeclaration()
11883 bool Sema::CheckUsingShadowDecl(BaseUsingDecl *BUD, NamedDecl *Orig, in CheckUsingShadowDecl()
12066 UsingShadowDecl *Sema::BuildUsingShadowDecl(Scope *S, BaseUsingDecl *BUD, in BuildUsingShadowDecl()
12136 void Sema::HideUsingShadowDecl(Scope *S, UsingShadowDecl *Shadow) { in HideUsingShadowDecl()
12262 void Sema::FilterUsingLookup(Scope *S, LookupResult &Previous) { in FilterUsingLookup()
12285 NamedDecl *Sema::BuildUsingDeclaration( in BuildUsingDeclaration()
12539 NamedDecl *Sema::BuildUsingEnumDeclaration(Scope *S, AccessSpecifier AS, in BuildUsingEnumDeclaration()
12594 NamedDecl *Sema::BuildUsingPackDecl(NamedDecl *InstantiatedFrom, in BuildUsingPackDecl()
12608 bool Sema::CheckInheritingConstructorUsingDecl(UsingDecl *UD) { in CheckInheritingConstructorUsingDecl()
12638 bool Sema::CheckUsingDeclRedeclaration(SourceLocation UsingLoc, in CheckUsingDeclRedeclaration()
12720 bool Sema::CheckUsingDeclQualifier(SourceLocation UsingLoc, bool HasTypename, in CheckUsingDeclQualifier()
12949 Decl *Sema::ActOnAliasDeclaration(Scope *S, AccessSpecifier AS, in ActOnAliasDeclaration()
13105 Decl *Sema::ActOnNamespaceAliasDef(Scope *S, SourceLocation NamespaceLoc, in ActOnNamespaceAliasDef()
13186 Sema::ImplicitExceptionSpecification ExceptSpec;
13188 SpecialMemberExceptionSpecInfo(Sema &S, CXXMethodDecl *MD, in SpecialMemberExceptionSpecInfo()
13189 Sema::CXXSpecialMember CSM, in SpecialMemberExceptionSpecInfo()
13190 Sema::InheritedConstructorInfo *ICI, in SpecialMemberExceptionSpecInfo()
13201 Sema::SpecialMemberOverloadResult SMOR);
13211 Sema::SpecialMemberOverloadResult SMOR = lookupInheritedCtor(BaseClass); in visitBase()
13222 if (CSM == Sema::CXXDefaultConstructor && FD->hasInClassInitializer()) { in visitField()
13250 Subobject Subobj, Sema::SpecialMemberOverloadResult SMOR) { in visitSubobjectCall()
13257 bool Sema::tryResolveExplicitSpecifier(ExplicitSpecifier &ExplicitSpec) { in tryResolveExplicitSpecifier()
13272 ExplicitSpecifier Sema::ActOnExplicitBoolSpecifier(Expr *ExplicitExpr) { in ActOnExplicitBoolSpecifier()
13279 static Sema::ImplicitExceptionSpecification
13281 Sema &S, SourceLocation Loc, CXXMethodDecl *MD, Sema::CXXSpecialMember CSM, in ComputeDefaultedSpecialMemberExceptionSpec()
13282 Sema::InheritedConstructorInfo *ICI) { in ComputeDefaultedSpecialMemberExceptionSpec()
13326 Sema &S;
13327 Sema::SpecialMemberDecl D;
13328 Sema::ContextRAII SavedContext;
13331 DeclaringSpecialMember(Sema &S, CXXRecordDecl *RD, Sema::CXXSpecialMember CSM) in DeclaringSpecialMember()
13341 Sema::CodeSynthesisContext Ctx; in DeclaringSpecialMember()
13342 Ctx.Kind = Sema::CodeSynthesisContext::DeclaringSpecialMember; in DeclaringSpecialMember()
13369 void Sema::CheckImplicitSpecialMemberDeclaration(Scope *S, FunctionDecl *FD) { in CheckImplicitSpecialMemberDeclaration()
13385 void Sema::setupImplicitSpecialMemberType(CXXMethodDecl *SpecialMem, in setupImplicitSpecialMemberType()
13410 CXXConstructorDecl *Sema::DeclareImplicitDefaultConstructor( in DeclareImplicitDefaultConstructor()
13474 void Sema::DefineImplicitDefaultConstructor(SourceLocation CurrentLocation, in DefineImplicitDefaultConstructor()
13515 void Sema::ActOnFinishDelayedMemberInitializers(Decl *D) { in ActOnFinishDelayedMemberInitializers()
13523 Sema::findInheritingConstructor(SourceLocation Loc, in findInheritingConstructor()
13606 void Sema::NoteDeletedInheritingConstructor(CXXConstructorDecl *Ctor) { in NoteDeletedInheritingConstructor()
13613 void Sema::DefineInheritingConstructor(SourceLocation CurrentLocation, in DefineInheritingConstructor()
13694 CXXDestructorDecl *Sema::DeclareImplicitDestructor(CXXRecordDecl *ClassDecl) { in DeclareImplicitDestructor()
13761 void Sema::DefineImplicitDestructor(SourceLocation CurrentLocation, in DefineImplicitDestructor()
13803 void Sema::CheckCompleteDestructorVariant(SourceLocation CurrentLocation, in CheckCompleteDestructorVariant()
13824 void Sema::ActOnFinishCXXMemberDecls() { in ActOnFinishCXXMemberDecls()
13836 void Sema::ActOnFinishCXXNonNestedClass() { in ActOnFinishCXXNonNestedClass()
13855 void Sema::referenceDLLExportedClassMethods() { in referenceDLLExportedClassMethods()
13866 void Sema::AdjustDestructorExceptionSpec(CXXDestructorDecl *Destructor) { in AdjustDestructorExceptionSpec()
13914 virtual Expr *build(Sema &S, SourceLocation Loc) const = 0;
13922 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
13932 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
13944 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
13959 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
13975 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
13991 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
14002 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
14015 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
14031 buildMemcpyForAssignmentOp(Sema &S, SourceLocation Loc, QualType T, in buildMemcpyForAssignmentOp()
14060 Sema::LookupOrdinaryName); in buildMemcpyForAssignmentOp()
14111 buildSingleCopyAssignRecursively(Sema &S, SourceLocation Loc, QualType T, in buildSingleCopyAssignRecursively()
14135 LookupResult OpLookup(S, Name, Loc, Sema::LookupOrdinaryName); in buildSingleCopyAssignRecursively()
14298 S.ActOnCondition(nullptr, Loc, Comparison, Sema::ConditionKind::Boolean), in buildSingleCopyAssignRecursively()
14303 buildSingleCopyAssign(Sema &S, SourceLocation Loc, QualType T, in buildSingleCopyAssign()
14323 CXXMethodDecl *Sema::DeclareImplicitCopyAssignment(CXXRecordDecl *ClassDecl) { in DeclareImplicitCopyAssignment()
14407 static void diagnoseDeprecatedCopyOperation(Sema &S, CXXMethodDecl *CopyOp) { in diagnoseDeprecatedCopyOperation()
14458 void Sema::DefineImplicitCopyAssignment(SourceLocation CurrentLocation, in DefineImplicitCopyAssignment()
14662 CXXMethodDecl *Sema::DeclareImplicitMoveAssignment(CXXRecordDecl *ClassDecl) { in DeclareImplicitMoveAssignment()
14741 static void checkMoveAssignmentForRepeatedMove(Sema &S, CXXRecordDecl *Class, in checkMoveAssignmentForRepeatedMove()
14774 Sema::SpecialMemberOverloadResult SMOR = in checkMoveAssignmentForRepeatedMove()
14775 S.LookupSpecialMember(Base, Sema::CXXMoveAssignment, in checkMoveAssignmentForRepeatedMove()
14821 void Sema::DefineImplicitMoveAssignment(SourceLocation CurrentLocation, in DefineImplicitMoveAssignment()
15032 CXXConstructorDecl *Sema::DeclareImplicitCopyConstructor( in DeclareImplicitCopyConstructor()
15129 void Sema::DefineImplicitCopyConstructor(SourceLocation CurrentLocation, in DefineImplicitCopyConstructor()
15166 Sema::CompoundScopeRAII CompoundScope(*this); in DefineImplicitCopyConstructor()
15177 CXXConstructorDecl *Sema::DeclareImplicitMoveConstructor( in DeclareImplicitMoveConstructor()
15262 void Sema::DefineImplicitMoveConstructor(SourceLocation CurrentLocation, in DefineImplicitMoveConstructor()
15292 Sema::CompoundScopeRAII CompoundScope(*this); in DefineImplicitMoveConstructor()
15303 bool Sema::isImplicitlyDeleted(FunctionDecl *FD) { in isImplicitlyDeleted()
15307 void Sema::DefineImplicitLambdaToFunctionPointerConversion( in DefineImplicitLambdaToFunctionPointerConversion()
15369 void Sema::DefineImplicitLambdaToBlockPointerConversion( in DefineImplicitLambdaToBlockPointerConversion()
15441 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType, in BuildCXXConstructExpr()
15488 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType, in BuildCXXConstructExpr()
15514 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType, in BuildCXXConstructExpr()
15545 ExprResult Sema::BuildCXXDefaultInitExpr(SourceLocation Loc, FieldDecl *Field) { in BuildCXXDefaultInitExpr()
15609 void Sema::FinalizeVarWithDestructor(VarDecl *VD, const RecordType *Record) { in FinalizeVarWithDestructor()
15671 bool Sema::CompleteConstructorCall(CXXConstructorDecl *Constructor, in CompleteConstructorCall()
15711 CheckOperatorNewDeleteDeclarationScope(Sema &SemaRef, in CheckOperatorNewDeleteDeclarationScope()
15730 static CanQualType RemoveAddressSpaceFromPtr(Sema &SemaRef, in RemoveAddressSpaceFromPtr()
15740 CheckOperatorNewDeleteTypes(Sema &SemaRef, const FunctionDecl *FnDecl, in CheckOperatorNewDeleteTypes()
15811 CheckOperatorNewDeclaration(Sema &SemaRef, const FunctionDecl *FnDecl) { in CheckOperatorNewDeclaration()
15842 CheckOperatorDeleteDeclaration(Sema &SemaRef, FunctionDecl *FnDecl) { in CheckOperatorDeleteDeclaration()
15886 bool Sema::CheckOverloadedOperatorDeclaration(FunctionDecl *FnDecl) { in CheckOverloadedOperatorDeclaration()
16043 checkLiteralOperatorTemplateParameterList(Sema &SemaRef, in checkLiteralOperatorTemplateParameterList()
16100 bool Sema::CheckLiteralOperatorDeclaration(FunctionDecl *FnDecl) { in CheckLiteralOperatorDeclaration()
16273 Decl *Sema::ActOnStartLinkageSpecification(Scope *S, SourceLocation ExternLoc, in ActOnStartLinkageSpecification()
16331 Decl *Sema::ActOnFinishLinkageSpecification(Scope *S, in ActOnFinishLinkageSpecification()
16350 Decl *Sema::ActOnEmptyDeclaration(Scope *S, in ActOnEmptyDeclaration()
16365 VarDecl *Sema::BuildExceptionDeclaration(Scope *S, in BuildExceptionDeclaration()
16497 Decl *Sema::ActOnExceptionDeclarator(Scope *S, Declarator &D) { in ActOnExceptionDeclarator()
16548 Decl *Sema::ActOnStaticAssertDeclaration(SourceLocation StaticAssertLoc, in ActOnStaticAssertDeclaration()
16562 Decl *Sema::BuildStaticAssertDeclaration(SourceLocation StaticAssertLoc, in BuildStaticAssertDeclaration()
16647 FriendDecl *Sema::CheckFriendTypeDecl(SourceLocation LocStart, in CheckFriendTypeDecl()
16719 Decl *Sema::ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc, in ActOnTemplatedFriendTag()
16853 Decl *Sema::ActOnFriendTypeDecl(Scope *S, const DeclSpec &DS, in ActOnFriendTypeDecl()
16945 NamedDecl *Sema::ActOnFriendFunctionDecl(Scope *S, Declarator &D, in ActOnFriendFunctionDecl()
17261 void Sema::SetDeclDeleted(Decl *Dcl, SourceLocation DelLoc) { in SetDeclDeleted()
17313 void Sema::SetDeclDefaulted(Decl *Dcl, SourceLocation DefaultLoc) { in SetDeclDefaulted()
17402 static void SearchForReturnInStmt(Sema &Self, Stmt *S) { in SearchForReturnInStmt()
17414 void Sema::DiagnoseReturnInConstructorExceptionHandler(CXXTryStmt *TryBlock) { in DiagnoseReturnInConstructorExceptionHandler()
17421 void Sema::SetFunctionBodyKind(Decl *D, SourceLocation Loc, in SetFunctionBodyKind()
17436 bool Sema::CheckOverridingFunctionAttributes(const CXXMethodDecl *New, in CheckOverridingFunctionAttributes()
17484 bool Sema::CheckOverridingFunctionReturnType(const CXXMethodDecl *New, in CheckOverridingFunctionReturnType()
17595 bool Sema::CheckPureMethod(CXXMethodDecl *Method, SourceRange InitRange) { in CheckPureMethod()
17611 void Sema::ActOnPureSpecifier(Decl *D, SourceLocation ZeroLoc) { in ActOnPureSpecifier()
17636 void Sema::ActOnCXXEnterDeclInitializer(Scope *S, Decl *D) { in ActOnCXXEnterDeclInitializer()
17657 void Sema::ActOnCXXExitDeclInitializer(Scope *S, Decl *D) { in ActOnCXXExitDeclInitializer()
17672 DeclResult Sema::ActOnCXXConditionDeclaration(Scope *S, Declarator &D) { in ActOnCXXConditionDeclaration()
17693 void Sema::LoadExternalVTableUses() { in LoadExternalVTableUses()
17717 void Sema::MarkVTableUsed(SourceLocation Loc, CXXRecordDecl *Class, in MarkVTableUsed()
17779 bool Sema::DefineUsedVTables() { in DefineUsedVTables()
17869 void Sema::MarkVirtualMemberExceptionSpecsNeeded(SourceLocation Loc, in MarkVirtualMemberExceptionSpecsNeeded()
17876 void Sema::MarkVirtualMembersReferenced(SourceLocation Loc, in MarkVirtualMembersReferenced()
17913 void Sema::SetIvarInitializers(ObjCImplementationDecl *ObjCImplementation) { in SetIvarInitializers()
17971 Sema &S) { in DelegatingCycleHelper()
18031 void Sema::CheckDelegatingCtorCycles() { in CheckDelegatingCtorCycles()
18047 Sema &S;
18050 explicit FindCXXThisExpr(Sema &S) : S(S) { } in FindCXXThisExpr()
18060 bool Sema::checkThisInStaticMemberFunctionType(CXXMethodDecl *Method) { in checkThisInStaticMemberFunctionType()
18097 bool Sema::checkThisInStaticMemberFunctionExceptionSpec(CXXMethodDecl *Method) { in checkThisInStaticMemberFunctionExceptionSpec()
18139 bool Sema::checkThisInStaticMemberFunctionAttributes(CXXMethodDecl *Method) { in checkThisInStaticMemberFunctionAttributes()
18186 void Sema::checkExceptionSpecification( in checkExceptionSpecification()
18235 void Sema::actOnDelayedExceptionSpecification(Decl *MethodD, in actOnDelayedExceptionSpecification()
18274 MSPropertyDecl *Sema::HandleMSProperty(Scope *S, RecordDecl *Record, in HandleMSProperty()
18366 void Sema::ActOnStartFunctionDeclarationDeclarator( in ActOnStartFunctionDeclarationDeclarator()
18390 void Sema::ActOnFinishFunctionDeclarationDeclarator(Declarator &Declarator) { in ActOnFinishFunctionDeclarationDeclarator()