Lines Matching refs:Sema
60 Sema *S;
63 CheckDefaultArgumentVisitor(Expr *defarg, Sema *s) in CheckDefaultArgumentVisitor()
151 Sema::ImplicitExceptionSpecification::CalledDecl(SourceLocation CallLoc, in CalledDecl()
218 void Sema::ImplicitExceptionSpecification::CalledExpr(Expr *E) { in CalledExpr()
248 Sema::SetParamDefaultArgument(ParmVarDecl *Param, Expr *Arg, in SetParamDefaultArgument()
297 Sema::ActOnParamDefaultArgument(Decl *param, SourceLocation EqualLoc, in ActOnParamDefaultArgument()
342 void Sema::ActOnParamUnparsedDefaultArgument(Decl *param, in ActOnParamUnparsedDefaultArgument()
355 void Sema::ActOnParamDefaultArgumentError(Decl *param, in ActOnParamDefaultArgumentError()
374 void Sema::CheckExtraCXXDefaultArguments(Declarator &D) { in CheckExtraCXXDefaultArguments()
435 bool Sema::MergeCXXFunctionDecl(FunctionDecl *New, FunctionDecl *Old, in MergeCXXFunctionDecl()
672 void Sema::MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old) { in MergeVarDeclExceptionSpecs()
712 void Sema::CheckCXXDefaultArguments(FunctionDecl *FD) { in CheckCXXDefaultArguments()
764 static bool CheckConstexprParameterTypes(Sema &SemaRef, in CheckConstexprParameterTypes()
803 bool Sema::CheckConstexprFunctionDecl(const FunctionDecl *NewFD) { in CheckConstexprFunctionDecl()
863 static bool CheckConstexprDeclStmt(Sema &SemaRef, const FunctionDecl *Dcl, in CheckConstexprDeclStmt()
976 static void CheckConstexprCtorInitializer(Sema &SemaRef, in CheckConstexprCtorInitializer()
1015 CheckConstexprFunctionStmt(Sema &SemaRef, const FunctionDecl *Dcl, Stmt *S, in CheckConstexprFunctionStmt()
1133 bool Sema::CheckConstexprFunctionBody(const FunctionDecl *Dcl, Stmt *Body) { in CheckConstexprFunctionBody()
1272 bool Sema::isCurrentClassName(const IdentifierInfo &II, Scope *, in isCurrentClassName()
1291 bool Sema::isCurrentClassNameTypo(IdentifierInfo *&II, const CXXScopeSpec *SS) { in isCurrentClassNameTypo()
1351 Sema::CheckBaseSpecifier(CXXRecordDecl *Class, in CheckBaseSpecifier()
1479 Sema::ActOnBaseSpecifier(Decl *classdecl, SourceRange SpecifierRange, in ActOnBaseSpecifier()
1556 bool Sema::AttachBaseSpecifiers(CXXRecordDecl *Class, in AttachBaseSpecifiers()
1657 void Sema::ActOnBaseSpecifiers(Decl *ClassDecl, in ActOnBaseSpecifiers()
1668 bool Sema::IsDerivedFrom(SourceLocation Loc, QualType Derived, QualType Base) { in IsDerivedFrom()
1695 bool Sema::IsDerivedFrom(SourceLocation Loc, QualType Derived, QualType Base, in IsDerivedFrom()
1714 void Sema::BuildBasePathArray(const CXXBasePaths &Paths, in BuildBasePathArray()
1750 Sema::CheckDerivedToBaseConversion(QualType Derived, QualType Base, in CheckDerivedToBaseConversion()
1814 Sema::CheckDerivedToBaseConversion(QualType Derived, QualType Base, in CheckDerivedToBaseConversion()
1837 std::string Sema::getAmbiguousPathsDisplayString(CXXBasePaths &Paths) { in getAmbiguousPathsDisplayString()
1861 bool Sema::ActOnAccessSpecifier(AccessSpecifier Access, in ActOnAccessSpecifier()
1873 void Sema::CheckOverrideControl(NamedDecl *D) { in CheckOverrideControl()
1942 void Sema::DiagnoseAbsenceOfOverrideControl(NamedDecl *D) { in DiagnoseAbsenceOfOverrideControl()
1969 bool Sema::CheckIfOverriddenFunctionIsMarkedFinal(const CXXMethodDecl *New, in CheckIfOverriddenFunctionIsMarkedFinal()
2005 Sema::ActOnCXXMemberDeclarator(Scope *S, AccessSpecifier AS, Declarator &D, in ActOnCXXMemberDeclarator()
2275 Sema &S;
2296 UninitializedFieldVisitor(Sema &S, in UninitializedFieldVisitor()
2616 Sema &SemaRef, const CXXConstructorDecl *Constructor) { in DiagnoseUninitializedFields()
2683 void Sema::ActOnStartCXXInClassMemberInitializer() { in ActOnStartCXXInClassMemberInitializer()
2692 void Sema::ActOnFinishCXXInClassMemberInitializer(Decl *D, in ActOnFinishCXXInClassMemberInitializer()
2746 static bool FindBaseInitializer(Sema &SemaRef, in FindBaseInitializer()
2789 Sema::ActOnMemInitializer(Decl *ConstructorD, in ActOnMemInitializer()
2805 Sema::ActOnMemInitializer(Decl *ConstructorD, in ActOnMemInitializer()
2848 Sema::BuildMemInitializer(Decl *ConstructorD, in BuildMemInitializer()
3015 static void CheckForDanglingReferenceOrPointer(Sema &S, ValueDecl *Member, in CheckForDanglingReferenceOrPointer()
3061 Sema::BuildMemberInitializer(ValueDecl *Member, Expr *Init, in BuildMemberInitializer()
3137 Sema::BuildDelegatingInitializer(TypeSourceInfo *TInfo, Expr *Init, in BuildDelegatingInitializer()
3193 Sema::BuildBaseInitializer(QualType BaseType, TypeSourceInfo *BaseTInfo, in BuildBaseInitializer()
3324 static Expr *CastForMoving(Sema &SemaRef, Expr *E, QualType T = QualType()) { in CastForMoving()
3347 BuildImplicitBaseInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor, in BuildImplicitBaseInitializer()
3430 BuildImplicitMemberInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor, in BuildImplicitMemberInitializer()
3462 Sema::LookupMemberName); in BuildImplicitMemberInitializer()
3659 Sema &S;
3667 BaseAndFieldInfo(Sema &S, CXXConstructorDecl *Ctor, bool ErrorsInInits) in BaseAndFieldInfo()
3763 static bool CollectFieldInitializer(Sema &SemaRef, BaseAndFieldInfo &Info, in CollectFieldInitializer()
3828 Sema::SetDelegatingInitializer(CXXConstructorDecl *Constructor, in SetDelegatingInitializer()
3849 bool Sema::SetCtorInitializers(CXXConstructorDecl *Constructor, bool AnyErrors, in SetCtorInitializers()
4050 Sema &SemaRef, const CXXConstructorDecl *Constructor, in DiagnoseBaseOrMemInitializerOrder()
4113 Sema::SemaDiagnosticBuilder D = in DiagnoseBaseOrMemInitializerOrder()
4141 bool CheckRedundantInit(Sema &S, in CheckRedundantInit()
4171 bool CheckRedundantUnionInit(Sema &S, in CheckRedundantUnionInit()
4207 void Sema::ActOnMemInitializers(Decl *ConstructorDecl, in ActOnMemInitializers()
4274 Sema::MarkBaseAndMemberDestructorsReferenced(SourceLocation Location, in MarkBaseAndMemberDestructorsReferenced()
4388 void Sema::ActOnDefaultCtorInitializers(Decl *CDtorDecl) { in ActOnDefaultCtorInitializers()
4399 bool Sema::isAbstractType(SourceLocation Loc, QualType T) { in isAbstractType()
4420 bool Sema::RequireNonAbstractType(SourceLocation Loc, QualType T, in RequireNonAbstractType()
4431 void Sema::DiagnoseAbstractType(const CXXRecordDecl *RD) { in DiagnoseAbstractType()
4485 Sema &S;
4490 AbstractUsageInfo(Sema &S, CXXRecordDecl *Record) in AbstractUsageInfo()
4502 void CheckType(const NamedDecl *D, TypeLoc TL, Sema::AbstractDiagSelID Sel);
4512 void Visit(TypeLoc TL, Sema::AbstractDiagSelID Sel) { in Visit()
4521 void Check(FunctionProtoTypeLoc TL, Sema::AbstractDiagSelID Sel) { in Check()
4522 Visit(TL.getReturnLoc(), Sema::AbstractReturnType); in Check()
4528 if (TSI) Visit(TSI->getTypeLoc(), Sema::AbstractParamType); in Check()
4532 void Check(ArrayTypeLoc TL, Sema::AbstractDiagSelID Sel) { in Check()
4533 Visit(TL.getElementLoc(), Sema::AbstractArrayType); in Check()
4536 void Check(TemplateSpecializationTypeLoc TL, Sema::AbstractDiagSelID Sel) { in Check()
4542 Visit(TSI->getTypeLoc(), Sema::AbstractNone); in Check()
4549 void Check(Type TL, Sema::AbstractDiagSelID Sel) { \
4550 Visit(TL.getNextTypeLoc(), Sema::AbstractNone); \
4560 void Check(TypeLoc TL, Sema::AbstractDiagSelID Sel) { in CheckPolymorphic()
4569 if (Sel == Sema::AbstractNone) return; in CheckPolymorphic()
4574 Sel = Sema::AbstractArrayType; in CheckPolymorphic()
4581 if (Sel == Sema::AbstractArrayType) { in CheckPolymorphic()
4593 Sema::AbstractDiagSelID Sel) { in CheckType()
4611 Info.CheckType(MD, TSI->getTypeLoc(), Sema::AbstractNone); in CheckAbstractClassUsage()
4631 Info.CheckType(FD, TSI->getTypeLoc(), Sema::AbstractFieldType); in CheckAbstractClassUsage()
4635 Info.CheckType(VD, TSI->getTypeLoc(), Sema::AbstractVariableType); in CheckAbstractClassUsage()
4647 static void ReferenceDllExportedMethods(Sema &S, CXXRecordDecl *Class) { in ReferenceDllExportedMethods()
4702 void Sema::checkClassLevelDLLAttribute(CXXRecordDecl *Class) { in checkClassLevelDLLAttribute()
4818 void Sema::propagateDLLAttrToBaseClassTemplate( in propagateDLLAttrToBaseClassTemplate()
4871 static void DefineImplicitSpecialMember(Sema &S, CXXMethodDecl *MD, in DefineImplicitSpecialMember()
4874 case Sema::CXXDefaultConstructor: in DefineImplicitSpecialMember()
4878 case Sema::CXXCopyConstructor: in DefineImplicitSpecialMember()
4881 case Sema::CXXCopyAssignment: in DefineImplicitSpecialMember()
4884 case Sema::CXXDestructor: in DefineImplicitSpecialMember()
4887 case Sema::CXXMoveConstructor: in DefineImplicitSpecialMember()
4890 case Sema::CXXMoveAssignment: in DefineImplicitSpecialMember()
4893 case Sema::CXXInvalid: in DefineImplicitSpecialMember()
4901 void Sema::CheckCompletedCXXClass(CXXRecordDecl *Record) { in CheckCompletedCXXClass()
5053 static Sema::SpecialMemberOverloadResult *lookupCallFromSpecialMember( in lookupCallFromSpecialMember()
5054 Sema &S, CXXRecordDecl *Class, Sema::CXXSpecialMember CSM, in lookupCallFromSpecialMember()
5057 if (CSM == Sema::CXXCopyAssignment || CSM == Sema::CXXMoveAssignment) in lookupCallFromSpecialMember()
5061 if (CSM == Sema::CXXDefaultConstructor || CSM == Sema::CXXDestructor) in lookupCallFromSpecialMember()
5074 class Sema::InheritedConstructorInfo {
5075 Sema &S;
5085 InheritedConstructorInfo(Sema &S, SourceLocation UseLoc, in InheritedConstructorInfo()
5158 specialMemberIsConstexpr(Sema &S, CXXRecordDecl *ClassDecl, in specialMemberIsConstexpr()
5159 Sema::CXXSpecialMember CSM, unsigned Quals, in specialMemberIsConstexpr()
5162 Sema::InheritedConstructorInfo *Inherited = nullptr) { in specialMemberIsConstexpr()
5166 assert(CSM == Sema::CXXDefaultConstructor); in specialMemberIsConstexpr()
5173 if (CSM == Sema::CXXDefaultConstructor) in specialMemberIsConstexpr()
5176 Sema::SpecialMemberOverloadResult *SMOR = in specialMemberIsConstexpr()
5188 Sema &S, CXXRecordDecl *ClassDecl, Sema::CXXSpecialMember CSM, in defaultedSpecialMemberIsConstexpr()
5190 Sema::InheritedConstructorInfo *Inherited = nullptr) { in defaultedSpecialMemberIsConstexpr()
5198 case Sema::CXXDefaultConstructor: in defaultedSpecialMemberIsConstexpr()
5209 case Sema::CXXCopyConstructor: in defaultedSpecialMemberIsConstexpr()
5210 case Sema::CXXMoveConstructor: in defaultedSpecialMemberIsConstexpr()
5214 case Sema::CXXCopyAssignment: in defaultedSpecialMemberIsConstexpr()
5215 case Sema::CXXMoveAssignment: in defaultedSpecialMemberIsConstexpr()
5222 case Sema::CXXDestructor: in defaultedSpecialMemberIsConstexpr()
5223 case Sema::CXXInvalid: in defaultedSpecialMemberIsConstexpr()
5235 return CSM == Sema::CXXDefaultConstructor in defaultedSpecialMemberIsConstexpr()
5273 if (CSM == Sema::CXXDefaultConstructor && F->hasInClassInitializer()) in defaultedSpecialMemberIsConstexpr()
5282 } else if (CSM == Sema::CXXDefaultConstructor) { in defaultedSpecialMemberIsConstexpr()
5291 static Sema::ImplicitExceptionSpecification
5292 computeImplicitExceptionSpec(Sema &S, SourceLocation Loc, CXXMethodDecl *MD) { in computeImplicitExceptionSpec()
5294 case Sema::CXXDefaultConstructor: in computeImplicitExceptionSpec()
5296 case Sema::CXXCopyConstructor: in computeImplicitExceptionSpec()
5298 case Sema::CXXCopyAssignment: in computeImplicitExceptionSpec()
5300 case Sema::CXXMoveConstructor: in computeImplicitExceptionSpec()
5302 case Sema::CXXMoveAssignment: in computeImplicitExceptionSpec()
5304 case Sema::CXXDestructor: in computeImplicitExceptionSpec()
5306 case Sema::CXXInvalid: in computeImplicitExceptionSpec()
5315 static FunctionProtoType::ExtProtoInfo getImplicitMethodEPI(Sema &S, in getImplicitMethodEPI()
5330 void Sema::EvaluateImplicitExceptionSpec(SourceLocation Loc, CXXMethodDecl *MD) { in EvaluateImplicitExceptionSpec()
5350 void Sema::CheckExplicitlyDefaultedSpecialMember(CXXMethodDecl *MD) { in CheckExplicitlyDefaultedSpecialMember()
5522 void Sema::CheckExplicitlyDefaultedMemberExceptionSpec( in CheckExplicitlyDefaultedMemberExceptionSpec()
5547 void Sema::CheckDelayedMemberExceptionSpecs() { in CheckDelayedMemberExceptionSpecs()
5567 Sema &S;
5569 Sema::CXXSpecialMember CSM;
5570 Sema::InheritedConstructorInfo *ICI;
5579 SpecialMemberDeletionInfo(Sema &S, CXXMethodDecl *MD, in SpecialMemberDeletionInfo()
5580 Sema::CXXSpecialMember CSM, in SpecialMemberDeletionInfo()
5581 Sema::InheritedConstructorInfo *ICI, bool Diagnose) in SpecialMemberDeletionInfo()
5586 case Sema::CXXDefaultConstructor: in SpecialMemberDeletionInfo()
5587 case Sema::CXXCopyConstructor: in SpecialMemberDeletionInfo()
5590 case Sema::CXXMoveConstructor: in SpecialMemberDeletionInfo()
5594 case Sema::CXXCopyAssignment: in SpecialMemberDeletionInfo()
5597 case Sema::CXXMoveAssignment: in SpecialMemberDeletionInfo()
5601 case Sema::CXXDestructor: in SpecialMemberDeletionInfo()
5603 case Sema::CXXInvalid: in SpecialMemberDeletionInfo()
5616 Sema::CXXSpecialMember getEffectiveCSM() { in getEffectiveCSM()
5617 return ICI ? Sema::CXXInvalid : CSM; in getEffectiveCSM()
5621 Sema::SpecialMemberOverloadResult *lookupIn(CXXRecordDecl *Class, in lookupIn()
5636 Sema::SpecialMemberOverloadResult *SMOR,
5666 Subobject Subobj, Sema::SpecialMemberOverloadResult *SMOR, in shouldDeleteForSubobjectCall()
5673 if (SMOR->getKind() == Sema::SpecialMemberOverloadResult::NoMemberOrDeleted) in shouldDeleteForSubobjectCall()
5675 else if (SMOR->getKind() == Sema::SpecialMemberOverloadResult::Ambiguous) in shouldDeleteForSubobjectCall()
5735 if (!(CSM == Sema::CXXDefaultConstructor && in shouldDeleteForClassSubobject()
5745 Sema::SpecialMemberOverloadResult *SMOR = in shouldDeleteForClassSubobject()
5746 S.LookupSpecialMember(Class, Sema::CXXDestructor, in shouldDeleteForClassSubobject()
5766 assert(CSM == Sema::CXXDefaultConstructor); in shouldDeleteForBase()
5792 if (CSM == Sema::CXXDefaultConstructor) { in shouldDeleteForField()
5816 } else if (CSM == Sema::CXXCopyConstructor) { in shouldDeleteForField()
5864 if (CSM == Sema::CXXDefaultConstructor && AllVariantFieldsAreConst && in shouldDeleteForField()
5892 if (CSM == Sema::CXXDefaultConstructor && inUnion() && AllFieldsAreConst && in shouldDeleteForAllConstMembers()
5906 bool Sema::ShouldDeleteSpecialMember(CXXMethodDecl *MD, CXXSpecialMember CSM, in ShouldDeleteSpecialMember()
6038 static bool findTrivialSpecialMember(Sema &S, CXXRecordDecl *RD, in findTrivialSpecialMember()
6039 Sema::CXXSpecialMember CSM, unsigned Quals, in findTrivialSpecialMember()
6045 case Sema::CXXInvalid: in findTrivialSpecialMember()
6048 case Sema::CXXDefaultConstructor: in findTrivialSpecialMember()
6077 case Sema::CXXDestructor: in findTrivialSpecialMember()
6092 case Sema::CXXCopyConstructor: in findTrivialSpecialMember()
6111 case Sema::CXXCopyAssignment: in findTrivialSpecialMember()
6126 case Sema::CXXMoveConstructor: in findTrivialSpecialMember()
6127 case Sema::CXXMoveAssignment: in findTrivialSpecialMember()
6129 Sema::SpecialMemberOverloadResult *SMOR = in findTrivialSpecialMember()
6136 if (SMOR->getKind() == Sema::SpecialMemberOverloadResult::Ambiguous) in findTrivialSpecialMember()
6141 Sema::SpecialMemberOverloadResult::NoMemberOrDeleted); in findTrivialSpecialMember()
6183 static bool checkTrivialSubobjectCall(Sema &S, SourceLocation SubobjLoc, in checkTrivialSubobjectCall()
6185 Sema::CXXSpecialMember CSM, in checkTrivialSubobjectCall()
6201 if (!Selected && CSM == Sema::CXXDefaultConstructor) { in checkTrivialSubobjectCall()
6233 static bool checkTrivialClassMembers(Sema &S, CXXRecordDecl *RD, in checkTrivialClassMembers()
6234 Sema::CXXSpecialMember CSM, in checkTrivialClassMembers()
6254 if (CSM == Sema::CXXDefaultConstructor && FI->hasInClassInitializer()) { in checkTrivialClassMembers()
6283 void Sema::DiagnoseNontrivial(const CXXRecordDecl *RD, CXXSpecialMember CSM) { in DiagnoseNontrivial()
6294 bool Sema::SpecialMemberIsTrivial(CXXMethodDecl *MD, CXXSpecialMember CSM, in SpecialMemberIsTrivial()
6433 Sema *S;
6514 void Sema::FindHiddenVirtualMethods(CXXMethodDecl *MD, in FindHiddenVirtualMethods()
6542 void Sema::NoteHiddenVirtualMethods(CXXMethodDecl *MD, in NoteHiddenVirtualMethods()
6555 void Sema::DiagnoseHiddenVirtualMethods(CXXMethodDecl *MD) { in DiagnoseHiddenVirtualMethods()
6572 void Sema::ActOnFinishCXXMemberSpecification(Scope* S, SourceLocation RLoc, in ActOnFinishCXXMemberSpecification()
6604 void Sema::AddImplicitlyDeclaredMembersToClass(CXXRecordDecl *ClassDecl) { in AddImplicitlyDeclaredMembersToClass()
6667 unsigned Sema::ActOnReenterTemplateScope(Scope *S, Decl *D) { in ActOnReenterTemplateScope()
6718 void Sema::ActOnStartDelayedMemberDeclarations(Scope *S, Decl *RecordD) { in ActOnStartDelayedMemberDeclarations()
6725 void Sema::ActOnFinishDelayedMemberDeclarations(Scope *S, Decl *RecordD) { in ActOnFinishDelayedMemberDeclarations()
6733 void Sema::ActOnReenterCXXMethodParameter(Scope *S, ParmVarDecl *Param) { in ActOnReenterCXXMethodParameter()
6750 void Sema::ActOnStartDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) { in ActOnStartDelayedCXXMethodDeclaration()
6758 void Sema::ActOnDelayedCXXMethodParameter(Scope *S, Decl *ParamD) { in ActOnDelayedCXXMethodParameter()
6780 void Sema::ActOnFinishDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) { in ActOnFinishDelayedCXXMethodDeclaration()
6806 QualType Sema::CheckConstructorDeclarator(Declarator &D, QualType R, in CheckConstructorDeclarator()
6880 void Sema::CheckConstructor(CXXConstructorDecl *Constructor) { in CheckConstructor()
6917 bool Sema::CheckDestructor(CXXDestructorDecl *Destructor) { in CheckDestructor()
6953 QualType Sema::CheckDestructorDeclarator(Declarator &D, QualType R, in CheckDestructorDeclarator()
7086 void Sema::CheckConversionDeclarator(Declarator &D, QualType &R, in CheckConversionDeclarator()
7242 Decl *Sema::ActOnConversionDeclarator(CXXConversionDecl *Conversion) { in ActOnConversionDeclarator()
7291 static void DiagnoseNamespaceInlineMismatch(Sema &S, SourceLocation KeywordLoc, in DiagnoseNamespaceInlineMismatch()
7331 Decl *Sema::ActOnStartNamespaceDef(Scope *NamespcScope, in ActOnStartNamespaceDef()
7486 void Sema::ActOnFinishNamespaceDef(Decl *Dcl, SourceLocation RBrace) { in ActOnFinishNamespaceDef()
7495 CXXRecordDecl *Sema::getStdBadAlloc() const { in getStdBadAlloc()
7500 NamespaceDecl *Sema::getStdNamespace() const { in getStdNamespace()
7507 NamespaceDecl *Sema::getOrCreateStdNamespace() { in getOrCreateStdNamespace()
7522 bool Sema::isStdInitializerList(QualType Ty, QualType *Element) { in isStdInitializerList()
7582 static ClassTemplateDecl *LookupStdInitializerList(Sema &S, SourceLocation Loc){ in LookupStdInitializerList()
7590 Loc, Sema::LookupOrdinaryName); in LookupStdInitializerList()
7616 QualType Sema::BuildStdInitializerList(QualType Element, SourceLocation Loc) { in BuildStdInitializerList()
7631 bool Sema::isInitListConstructor(const CXXConstructorDecl* Ctor) { in isInitListConstructor()
7675 static bool TryNamespaceTypoCorrection(Sema &S, LookupResult &R, Scope *Sc, in TryNamespaceTypoCorrection()
7683 Sema::CTK_ErrorRecovery)) { in TryNamespaceTypoCorrection()
7703 Decl *Sema::ActOnUsingDirective(Scope *S, in ActOnUsingDirective()
7788 void Sema::PushUsingDirective(Scope *S, UsingDirectiveDecl *UDir) { in PushUsingDirective()
7802 Decl *Sema::ActOnUsingDeclaration(Scope *S, in ActOnUsingDeclaration()
7891 bool Sema::CheckUsingShadowDecl(UsingDecl *Using, NamedDecl *Orig, in CheckUsingShadowDecl()
8041 UsingShadowDecl *Sema::BuildUsingShadowDecl(Scope *S, in BuildUsingShadowDecl()
8111 void Sema::HideUsingShadowDecl(Scope *S, UsingShadowDecl *Shadow) { in HideUsingShadowDecl()
8232 NamedDecl *Sema::BuildUsingDeclaration(Scope *S, AccessSpecifier AS, in BuildUsingDeclaration()
8470 bool Sema::CheckInheritingConstructorUsingDecl(UsingDecl *UD) { in CheckInheritingConstructorUsingDecl()
8500 bool Sema::CheckUsingDeclRedeclaration(SourceLocation UsingLoc, in CheckUsingDeclRedeclaration()
8558 bool Sema::CheckUsingDeclQualifier(SourceLocation UsingLoc, in CheckUsingDeclQualifier()
8741 Decl *Sema::ActOnAliasDeclaration(Scope *S, in ActOnAliasDeclaration()
8895 Decl *Sema::ActOnNamespaceAliasDef(Scope *S, SourceLocation NamespaceLoc, in ActOnNamespaceAliasDef()
8972 Sema::ImplicitExceptionSpecification
8973 Sema::ComputeDefaultedDefaultCtorExceptionSpec(SourceLocation Loc, in ComputeDefaultedDefaultCtorExceptionSpec()
9033 Sema::ImplicitExceptionSpecification
9034 Sema::ComputeInheritingCtorExceptionSpec(SourceLocation Loc, in ComputeInheritingCtorExceptionSpec()
9089 Sema &S;
9090 Sema::SpecialMemberDecl D;
9091 Sema::ContextRAII SavedContext;
9094 DeclaringSpecialMember(Sema &S, CXXRecordDecl *RD, Sema::CXXSpecialMember CSM) in DeclaringSpecialMember()
9117 void Sema::CheckImplicitSpecialMemberDeclaration(Scope *S, FunctionDecl *FD) { in CheckImplicitSpecialMemberDeclaration()
9132 CXXConstructorDecl *Sema::DeclareImplicitDefaultConstructor( in DeclareImplicitDefaultConstructor()
9196 void Sema::DefineImplicitDefaultConstructor(SourceLocation CurrentLocation, in DefineImplicitDefaultConstructor()
9236 void Sema::ActOnFinishDelayedMemberInitializers(Decl *D) { in ActOnFinishDelayedMemberInitializers()
9244 Sema::findInheritingConstructor(SourceLocation Loc, in findInheritingConstructor()
9324 void Sema::NoteDeletedInheritingConstructor(CXXConstructorDecl *Ctor) { in NoteDeletedInheritingConstructor()
9331 void Sema::DefineInheritingConstructor(SourceLocation CurrentLocation, in DefineInheritingConstructor()
9413 Sema::ImplicitExceptionSpecification
9414 Sema::ComputeDefaultedDtorExceptionSpec(CXXMethodDecl *MD) { in ComputeDefaultedDtorExceptionSpec()
9452 CXXDestructorDecl *Sema::DeclareImplicitDestructor(CXXRecordDecl *ClassDecl) { in DeclareImplicitDestructor()
9509 void Sema::DefineImplicitDestructor(SourceLocation CurrentLocation, in DefineImplicitDestructor()
9554 void Sema::ActOnFinishCXXMemberDecls() { in ActOnFinishCXXMemberDecls()
9565 static void getDefaultArgExprsForConstructors(Sema &S, CXXRecordDecl *Class) { in getDefaultArgExprsForConstructors()
9616 void Sema::ActOnFinishCXXNonNestedClass(Decl *D) { in ActOnFinishCXXNonNestedClass()
9628 void Sema::referenceDLLExportedClassMethods() { in referenceDLLExportedClassMethods()
9639 void Sema::AdjustDestructorExceptionSpec(CXXRecordDecl *ClassDecl, in AdjustDestructorExceptionSpec()
9686 virtual Expr *build(Sema &S, SourceLocation Loc) const = 0;
9694 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9704 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9716 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9731 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9747 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9763 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9774 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9787 Expr *build(Sema &S, SourceLocation Loc) const override { in build()
9803 buildMemcpyForAssignmentOp(Sema &S, SourceLocation Loc, QualType T, in buildMemcpyForAssignmentOp()
9831 Sema::LookupOrdinaryName); in buildMemcpyForAssignmentOp()
9882 buildSingleCopyAssignRecursively(Sema &S, SourceLocation Loc, QualType T, in buildSingleCopyAssignRecursively()
9906 LookupResult OpLookup(S, Name, Loc, Sema::LookupOrdinaryName); in buildSingleCopyAssignRecursively()
10067 S.ActOnCondition(nullptr, Loc, Comparison, Sema::ConditionKind::Boolean), in buildSingleCopyAssignRecursively()
10072 buildSingleCopyAssign(Sema &S, SourceLocation Loc, QualType T, in buildSingleCopyAssign()
10092 Sema::ImplicitExceptionSpecification
10093 Sema::ComputeDefaultedCopyAssignmentExceptionSpec(CXXMethodDecl *MD) { in ComputeDefaultedCopyAssignmentExceptionSpec()
10148 CXXMethodDecl *Sema::DeclareImplicitCopyAssignment(CXXRecordDecl *ClassDecl) { in DeclareImplicitCopyAssignment()
10227 static void diagnoseDeprecatedCopyOperation(Sema &S, CXXMethodDecl *CopyOp, in diagnoseDeprecatedCopyOperation()
10268 << (isa<CXXConstructorDecl>(CopyOp) ? Sema::CXXCopyConstructor in diagnoseDeprecatedCopyOperation()
10269 : Sema::CXXCopyAssignment) in diagnoseDeprecatedCopyOperation()
10274 void Sema::DefineImplicitCopyAssignment(SourceLocation CurrentLocation, in DefineImplicitCopyAssignment()
10491 Sema::ImplicitExceptionSpecification
10492 Sema::ComputeDefaultedMoveAssignmentExceptionSpec(CXXMethodDecl *MD) { in ComputeDefaultedMoveAssignmentExceptionSpec()
10544 CXXMethodDecl *Sema::DeclareImplicitMoveAssignment(CXXRecordDecl *ClassDecl) { in DeclareImplicitMoveAssignment()
10621 static void checkMoveAssignmentForRepeatedMove(Sema &S, CXXRecordDecl *Class, in checkMoveAssignmentForRepeatedMove()
10654 Sema::SpecialMemberOverloadResult *SMOR = in checkMoveAssignmentForRepeatedMove()
10655 S.LookupSpecialMember(Base, Sema::CXXMoveAssignment, in checkMoveAssignmentForRepeatedMove()
10702 void Sema::DefineImplicitMoveAssignment(SourceLocation CurrentLocation, in DefineImplicitMoveAssignment()
10928 Sema::ImplicitExceptionSpecification
10929 Sema::ComputeDefaultedCopyCtorExceptionSpec(CXXMethodDecl *MD) { in ComputeDefaultedCopyCtorExceptionSpec()
10974 CXXConstructorDecl *Sema::DeclareImplicitCopyConstructor( in DeclareImplicitCopyConstructor()
11053 void Sema::DefineImplicitCopyConstructor(SourceLocation CurrentLocation, in DefineImplicitCopyConstructor()
11083 Sema::CompoundScopeRAII CompoundScope(*this); in DefineImplicitCopyConstructor()
11101 Sema::ImplicitExceptionSpecification
11102 Sema::ComputeDefaultedMoveCtorExceptionSpec(CXXMethodDecl *MD) { in ComputeDefaultedMoveCtorExceptionSpec()
11160 CXXConstructorDecl *Sema::DeclareImplicitMoveConstructor( in DeclareImplicitMoveConstructor()
11235 void Sema::DefineImplicitMoveConstructor(SourceLocation CurrentLocation, in DefineImplicitMoveConstructor()
11258 Sema::CompoundScopeRAII CompoundScope(*this); in DefineImplicitMoveConstructor()
11276 bool Sema::isImplicitlyDeleted(FunctionDecl *FD) { in isImplicitlyDeleted()
11280 void Sema::DefineImplicitLambdaToFunctionPointerConversion( in DefineImplicitLambdaToFunctionPointerConversion()
11357 void Sema::DefineImplicitLambdaToBlockPointerConversion( in DefineImplicitLambdaToBlockPointerConversion()
11432 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType, in BuildCXXConstructExpr()
11470 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType, in BuildCXXConstructExpr()
11496 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType, in BuildCXXConstructExpr()
11520 ExprResult Sema::BuildCXXDefaultInitExpr(SourceLocation Loc, FieldDecl *Field) { in BuildCXXDefaultInitExpr()
11581 void Sema::FinalizeVarWithDestructor(VarDecl *VD, const RecordType *Record) { in FinalizeVarWithDestructor()
11615 Sema::CompleteConstructorCall(CXXConstructorDecl *Constructor, in CompleteConstructorCall()
11657 CheckOperatorNewDeleteDeclarationScope(Sema &SemaRef, in CheckOperatorNewDeleteDeclarationScope()
11677 CheckOperatorNewDeleteTypes(Sema &SemaRef, const FunctionDecl *FnDecl, in CheckOperatorNewDeleteTypes()
11725 CheckOperatorNewDeclaration(Sema &SemaRef, const FunctionDecl *FnDecl) { in CheckOperatorNewDeclaration()
11756 CheckOperatorDeleteDeclaration(Sema &SemaRef, FunctionDecl *FnDecl) { in CheckOperatorDeleteDeclaration()
11779 bool Sema::CheckOverloadedOperatorDeclaration(FunctionDecl *FnDecl) { in CheckOverloadedOperatorDeclaration()
11914 checkLiteralOperatorTemplateParameterList(Sema &SemaRef, in checkLiteralOperatorTemplateParameterList()
11959 bool Sema::CheckLiteralOperatorDeclaration(FunctionDecl *FnDecl) { in CheckLiteralOperatorDeclaration()
12123 Decl *Sema::ActOnStartLinkageSpecification(Scope *S, SourceLocation ExternLoc, in ActOnStartLinkageSpecification()
12159 Decl *Sema::ActOnFinishLinkageSpecification(Scope *S, in ActOnFinishLinkageSpecification()
12170 Decl *Sema::ActOnEmptyDeclaration(Scope *S, in ActOnEmptyDeclaration()
12186 VarDecl *Sema::BuildExceptionDeclaration(Scope *S, in BuildExceptionDeclaration()
12312 Decl *Sema::ActOnExceptionDeclarator(Scope *S, Declarator &D) { in ActOnExceptionDeclarator()
12365 Decl *Sema::ActOnStaticAssertDeclaration(SourceLocation StaticAssertLoc, in ActOnStaticAssertDeclaration()
12379 Decl *Sema::BuildStaticAssertDeclaration(SourceLocation StaticAssertLoc, in BuildStaticAssertDeclaration()
12421 FriendDecl *Sema::CheckFriendTypeDecl(SourceLocation LocStart, in CheckFriendTypeDecl()
12493 Decl *Sema::ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc, in ActOnTemplatedFriendTag()
12628 Decl *Sema::ActOnFriendTypeDecl(Scope *S, const DeclSpec &DS, in ActOnFriendTypeDecl()
12696 NamedDecl *Sema::ActOnFriendFunctionDecl(Scope *S, Declarator &D, in ActOnFriendFunctionDecl()
13021 void Sema::SetDeclDeleted(Decl *Dcl, SourceLocation DelLoc) { in SetDeclDeleted()
13080 void Sema::SetDeclDefaulted(Decl *Dcl, SourceLocation DefaultLoc) { in SetDeclDefaulted()
13123 static void SearchForReturnInStmt(Sema &Self, Stmt *S) { in SearchForReturnInStmt()
13135 void Sema::DiagnoseReturnInConstructorExceptionHandler(CXXTryStmt *TryBlock) { in DiagnoseReturnInConstructorExceptionHandler()
13142 bool Sema::CheckOverridingFunctionAttributes(const CXXMethodDecl *New, in CheckOverridingFunctionAttributes()
13167 bool Sema::CheckOverridingFunctionReturnType(const CXXMethodDecl *New, in CheckOverridingFunctionReturnType()
13278 bool Sema::CheckPureMethod(CXXMethodDecl *Method, SourceRange InitRange) { in CheckPureMethod()
13294 void Sema::ActOnPureSpecifier(Decl *D, SourceLocation ZeroLoc) { in ActOnPureSpecifier()
13318 void Sema::ActOnCXXEnterDeclInitializer(Scope *S, Decl *D) { in ActOnCXXEnterDeclInitializer()
13339 void Sema::ActOnCXXExitDeclInitializer(Scope *S, Decl *D) { in ActOnCXXExitDeclInitializer()
13354 DeclResult Sema::ActOnCXXConditionDeclaration(Scope *S, Declarator &D) { in ActOnCXXConditionDeclaration()
13375 void Sema::LoadExternalVTableUses() { in LoadExternalVTableUses()
13399 void Sema::MarkVTableUsed(SourceLocation Loc, CXXRecordDecl *Class, in MarkVTableUsed()
13452 bool Sema::DefineUsedVTables() { in DefineUsedVTables()
13542 void Sema::MarkVirtualMemberExceptionSpecsNeeded(SourceLocation Loc, in MarkVirtualMemberExceptionSpecsNeeded()
13549 void Sema::MarkVirtualMembersReferenced(SourceLocation Loc, in MarkVirtualMembersReferenced()
13585 void Sema::SetIvarInitializers(ObjCImplementationDecl *ObjCImplementation) { in SetIvarInitializers()
13643 Sema &S) { in DelegatingCycleHelper()
13703 void Sema::CheckDelegatingCtorCycles() { in CheckDelegatingCtorCycles()
13721 Sema &S;
13724 explicit FindCXXThisExpr(Sema &S) : S(S) { } in FindCXXThisExpr()
13734 bool Sema::checkThisInStaticMemberFunctionType(CXXMethodDecl *Method) { in checkThisInStaticMemberFunctionType()
13766 bool Sema::checkThisInStaticMemberFunctionExceptionSpec(CXXMethodDecl *Method) { in checkThisInStaticMemberFunctionExceptionSpec()
13804 bool Sema::checkThisInStaticMemberFunctionAttributes(CXXMethodDecl *Method) { in checkThisInStaticMemberFunctionAttributes()
13851 void Sema::checkExceptionSpecification( in checkExceptionSpecification()
13908 void Sema::actOnDelayedExceptionSpecification(Decl *MethodD, in actOnDelayedExceptionSpecification()
13949 MSPropertyDecl *Sema::HandleMSProperty(Scope *S, RecordDecl *Record, in HandleMSProperty()