Home | History | Annotate | Download | only in Sema

Lines Matching refs:Sema

14 #include "clang/Sema/SemaInternal.h"
31 #include "clang/Sema/CXXFieldCollector.h"
32 #include "clang/Sema/DeclSpec.h"
33 #include "clang/Sema/Initialization.h"
34 #include "clang/Sema/Lookup.h"
35 #include "clang/Sema/ParsedTemplate.h"
36 #include "clang/Sema/Scope.h"
37 #include "clang/Sema/ScopeInfo.h"
58 Sema *S;
61 CheckDefaultArgumentVisitor(Expr *defarg, Sema *s)
130 void Sema::ImplicitExceptionSpecification::CalledDecl(SourceLocation CallLoc,
201 void Sema::ImplicitExceptionSpecification::CalledExpr(Expr *E) {
231 Sema::SetParamDefaultArgument(ParmVarDecl *Param, Expr *Arg,
280 Sema::ActOnParamDefaultArgument(Decl *param, SourceLocation EqualLoc,
316 void Sema::ActOnParamUnparsedDefaultArgument(Decl *param,
331 void Sema::ActOnParamDefaultArgumentError(Decl *param) {
347 void Sema::CheckExtraCXXDefaultArguments(Declarator &D) {
392 bool Sema::MergeCXXFunctionDecl(FunctionDecl *New, FunctionDecl *Old,
573 void Sema::MergeVarDeclExceptionSpecs(VarDecl *New, VarDecl *Old) {
613 void Sema::CheckCXXDefaultArguments(FunctionDecl *FD) {
679 static bool CheckConstexprParameterTypes(Sema &SemaRef,
717 bool Sema::CheckConstexprFunctionDecl(const FunctionDecl *NewFD) {
776 static bool CheckConstexprDeclStmt(Sema &SemaRef, const FunctionDecl *Dcl,
845 static void CheckConstexprCtorInitializer(Sema &SemaRef,
878 bool Sema::CheckConstexprFunctionBody(const FunctionDecl *Dcl, Stmt *Body) {
1024 bool Sema::isCurrentClassName(const IdentifierInfo &II, Scope *,
1081 Sema::CheckBaseSpecifier(CXXRecordDecl *Class,
1185 Sema::ActOnBaseSpecifier(Decl *classdecl, SourceRange SpecifierRange,
1234 bool Sema::AttachBaseSpecifiers(CXXRecordDecl *Class, CXXBaseSpecifier **Bases,
1304 void Sema::ActOnBaseSpecifiers(Decl *ClassDecl, CXXBaseSpecifier **Bases,
1325 bool Sema::IsDerivedFrom(QualType Derived, QualType Base) {
1343 bool Sema::IsDerivedFrom(QualType Derived, QualType Base, CXXBasePaths &Paths) {
1358 void Sema::BuildBasePathArray(const CXXBasePaths &Paths,
1383 bool Sema::BasePathInvolvesVirtualBase(const CXXCastPath &BasePath) {
1402 Sema::CheckDerivedToBaseConversion(QualType Derived, QualType Base,
1463 Sema::CheckDerivedToBaseConversion(QualType Derived, QualType Base,
1488 std::string Sema::getAmbiguousPathsDisplayString(CXXBasePaths &Paths) {
1512 bool Sema::ActOnAccessSpecifier(AccessSpecifier Access,
1524 void Sema::CheckOverrideControl(Decl *D) {
1570 bool Sema::CheckIfOverriddenFunctionIsMarkedFinal(const CXXMethodDecl *New,
1597 Sema::ActOnCXXMemberDeclarator(Scope *S, AccessSpecifier AS, Declarator &D,
1859 Sema &S;
1863 UninitializedFieldVisitor(Sema &S, ValueDecl *VD) : Inherited(S.Context),
1957 static void CheckInitExprContainsUninitializedFields(Sema &S, Expr *E,
1968 Sema::ActOnCXXInClassMemberInitializer(Decl *D, SourceLocation InitLoc,
2028 static bool FindBaseInitializer(Sema &SemaRef,
2072 Sema::ActOnMemInitializer(Decl *ConstructorD,
2088 Sema::ActOnMemInitializer(Decl *ConstructorD,
2133 Sema::BuildMemInitializer(Decl *ConstructorD,
2296 static void CheckForDanglingReferenceOrPointer(Sema &S, ValueDecl *Member,
2350 Sema::BuildMemberInitializer(ValueDecl *Member, Expr *Init,
2452 Sema::BuildDelegatingInitializer(TypeSourceInfo *TInfo, Expr *Init,
2511 Sema::BuildBaseInitializer(QualType BaseType, TypeSourceInfo *BaseTInfo,
2645 static Expr *CastForMoving(Sema &SemaRef, Expr *E, QualType T = QualType()) {
2668 BuildImplicitBaseInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor,
2781 BuildImplicitMemberInitializer(Sema &SemaRef, CXXConstructorDecl *Constructor,
2813 Sema::LookupMemberName);
3009 Sema &S;
3016 BaseAndFieldInfo(Sema &S, CXXConstructorDecl *Ctor, bool ErrorsInInits)
3084 static bool CollectFieldInitializer(Sema &SemaRef, BaseAndFieldInfo &Info,
3138 Sema::SetDelegatingInitializer(CXXConstructorDecl *Constructor,
3157 bool Sema::SetCtorInitializers(CXXConstructorDecl *Constructor, bool AnyErrors,
3335 Sema &SemaRef, const CXXConstructorDecl *Constructor,
3403 Sema::SemaDiagnosticBuilder D =
3431 bool CheckRedundantInit(Sema &S,
3461 bool CheckRedundantUnionInit(Sema &S,
3497 void Sema::ActOnMemInitializers(Decl *ConstructorDecl,
3562 Sema::MarkBaseAndMemberDestructorsReferenced(SourceLocation Location,
3674 void Sema::ActOnDefaultCtorInitializers(Decl *CDtorDecl) {
3683 bool Sema::RequireNonAbstractType(SourceLocation Loc, QualType T,
3693 virtual void diagnose(Sema &S, SourceLocation Loc, QualType T) {
3705 bool Sema::RequireNonAbstractType(SourceLocation Loc, QualType T,
3744 void Sema::DiagnoseAbstractType(const CXXRecordDecl *RD) {
3792 Sema &S;
3797 AbstractUsageInfo(Sema &S, CXXRecordDecl *Record)
3809 void CheckType(const NamedDecl *D, TypeLoc TL, Sema::AbstractDiagSelID Sel);
3819 void Visit(TypeLoc TL, Sema::AbstractDiagSelID Sel) {
3828 void Check(FunctionProtoTypeLoc TL, Sema::AbstractDiagSelID Sel) {
3829 Visit(TL.getResultLoc(), Sema::AbstractReturnType);
3835 if (TSI) Visit(TSI->getTypeLoc(), Sema::AbstractParamType);
3839 void Check(ArrayTypeLoc TL, Sema::AbstractDiagSelID Sel) {
3840 Visit(TL.getElementLoc(), Sema::AbstractArrayType);
3843 void Check(TemplateSpecializationTypeLoc TL, Sema::AbstractDiagSelID Sel) {
3849 Visit(TSI->getTypeLoc(), Sema::AbstractNone);
3856 void Check(Type TL, Sema::AbstractDiagSelID Sel) { \
3857 Visit(TL.getNextTypeLoc(), Sema::AbstractNone); \
3867 void Check(TypeLoc TL, Sema::AbstractDiagSelID Sel) {
3876 if (Sel == Sema::AbstractNone) return;
3881 Sel = Sema::AbstractArrayType;
3888 if (Sel == Sema::AbstractArrayType) {
3900 Sema::AbstractDiagSelID Sel) {
3918 Info.CheckType(MD, TSI->getTypeLoc(), Sema::AbstractNone);
3940 Info.CheckType(FD, TSI->getTypeLoc(), Sema::AbstractFieldType);
3944 Info.CheckType(VD, TSI->getTypeLoc(), Sema::AbstractVariableType);
3959 void Sema::CheckCompletedCXXClass(CXXRecordDecl *Record) {
4112 static bool specialMemberIsConstexpr(Sema &S, CXXRecordDecl *ClassDecl,
4113 Sema::CXXSpecialMember CSM,
4115 Sema::SpecialMemberOverloadResult *SMOR =
4127 static bool defaultedSpecialMemberIsConstexpr(Sema &S, CXXRecordDecl *ClassDecl,
4128 Sema::CXXSpecialMember CSM,
4136 case Sema::CXXDefaultConstructor:
4145 case Sema::CXXCopyConstructor:
4146 case Sema::CXXMoveConstructor:
4150 case Sema::CXXCopyAssignment:
4151 case Sema::CXXMoveAssignment:
4152 case Sema::CXXDestructor:
4153 case Sema::CXXInvalid:
4205 static Sema::ImplicitExceptionSpecification
4206 computeImplicitExceptionSpec(Sema &S, SourceLocation Loc, CXXMethodDecl *MD) {
4208 case Sema::CXXDefaultConstructor:
4210 case Sema::CXXCopyConstructor:
4212 case Sema::CXXCopyAssignment:
4214 case Sema::CXXMoveConstructor:
4216 case Sema::CXXMoveAssignment:
4218 case Sema::CXXDestructor:
4220 case Sema::CXXInvalid:
4229 updateExceptionSpec(Sema &S, FunctionDecl *FD, const FunctionProtoType *FPT,
4230 const Sema::ImplicitExceptionSpecification &ExceptSpec) {
4238 void Sema::EvaluateImplicitExceptionSpec(SourceLocation Loc, CXXMethodDecl *MD) {
4260 void Sema::CheckExplicitlyDefaultedSpecialMember(CXXMethodDecl *MD) {
4422 void Sema::CheckExplicitlyDefaultedMemberExceptionSpec(
4438 void Sema::CheckDelayedExplicitlyDefaultedMemberExceptionSpecs() {
4450 Sema &S;
4452 Sema::CXXSpecialMember CSM;
4461 SpecialMemberDeletionInfo(Sema &S, CXXMethodDecl *MD,
4462 Sema::CXXSpecialMember CSM, bool Diagnose)
4468 case Sema::CXXDefaultConstructor:
4469 case Sema::CXXCopyConstructor:
4472 case Sema::CXXMoveConstructor:
4476 case Sema::CXXCopyAssignment:
4479 case Sema::CXXMoveAssignment:
4483 case Sema::CXXDestructor:
4485 case Sema::CXXInvalid:
4498 Sema::SpecialMemberOverloadResult *lookupIn(CXXRecordDecl *Class,
4502 if (CSM == Sema::CXXDefaultConstructor || CSM == Sema::CXXDestructor)
4521 Sema::SpecialMemberOverloadResult *SMOR,
4551 Subobject Subobj, Sema::SpecialMemberOverloadResult *SMOR,
4558 if (SMOR->getKind() == Sema::SpecialMemberOverloadResult::NoMemberOrDeleted)
4560 else if (SMOR->getKind() == Sema::SpecialMemberOverloadResult::Ambiguous)
4619 if (!(CSM == Sema::CXXDefaultConstructor &&
4628 Sema::SpecialMemberOverloadResult *SMOR =
4629 S.LookupSpecialMember(Class, Sema::CXXDestructor,
4651 if (CSM == Sema::CXXDefaultConstructor) {
4675 } else if (CSM == Sema::CXXCopyConstructor) {
4725 if (CSM == Sema::CXXDefaultConstructor && AllVariantFieldsAreConst &&
4753 if (CSM == Sema::CXXDefaultConstructor && inUnion() && AllFieldsAreConst &&
4767 bool Sema::ShouldDeleteSpecialMember(CXXMethodDecl *MD, CXXSpecialMember CSM,
4892 static bool findTrivialSpecialMember(Sema &S, CXXRecordDecl *RD,
4893 Sema::CXXSpecialMember CSM, unsigned Quals,
4899 case Sema::CXXInvalid:
4902 case Sema::CXXDefaultConstructor:
4932 case Sema::CXXDestructor:
4947 case Sema::CXXCopyConstructor:
4966 case Sema::CXXCopyAssignment:
4981 case Sema::CXXMoveConstructor:
4982 case Sema::CXXMoveAssignment:
4984 Sema::SpecialMemberOverloadResult *SMOR =
4995 if (SMOR->getKind() == Sema::SpecialMemberOverloadResult::Ambiguous)
5000 Sema::SpecialMemberOverloadResult::NoMemberOrDeleted);
5043 static bool checkTrivialSubobjectCall(Sema &S, SourceLocation SubobjLoc,
5045 Sema::CXXSpecialMember CSM,
5058 if (!Selected && CSM == Sema::CXXDefaultConstructor) {
5090 static bool checkTrivialClassMembers(Sema &S, CXXRecordDecl *RD,
5091 Sema::CXXSpecialMember CSM,
5112 if (CSM == Sema::CXXDefaultConstructor && FI->hasInClassInitializer()) {
5142 void Sema::DiagnoseNontrivial(const CXXRecordDecl *RD, CXXSpecialMember CSM) {
5154 bool Sema::SpecialMemberIsTrivial(CXXMethodDecl *MD, CXXSpecialMember CSM,
5303 Sema *S;
5378 void Sema::DiagnoseHiddenVirtualMethods(CXXRecordDecl *DC, CXXMethodDecl *MD) {
5416 void Sema::ActOnFinishCXXMemberSpecification(Scope* S, SourceLocation RLoc,
5448 void Sema::AddImplicitlyDeclaredMembersToClass(CXXRecordDecl *ClassDecl) {
5503 void Sema::ActOnReenterDeclaratorTemplateScope(Scope *S, DeclaratorDecl *D) {
5522 void Sema::ActOnReenterTemplateScope(Scope *S, Decl *D) {
5546 void Sema::ActOnStartDelayedMemberDeclarations(Scope *S, Decl *RecordD) {
5553 void Sema::ActOnFinishDelayedMemberDeclarations(Scope *S, Decl *RecordD) {
5566 void Sema::ActOnStartDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) {
5574 void Sema::ActOnDelayedCXXMethodParameter(Scope *S, Decl *ParamD) {
5596 void Sema::ActOnFinishDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) {
5622 QualType Sema::CheckConstructorDeclarator(Declarator &D, QualType R,
5687 void Sema::CheckConstructor(CXXConstructorDecl *Constructor) {
5724 bool Sema::CheckDestructor(CXXDestructorDecl *Destructor) {
5763 QualType Sema::CheckDestructorDeclarator(Declarator &D, QualType R,
5870 void Sema::CheckConversionDeclarator(Declarator &D, QualType &R,
5958 Decl *Sema::ActOnConversionDeclarator(CXXConversionDecl *Conversion) {
6007 static void DiagnoseNamespaceInlineMismatch(Sema &S, SourceLocation KeywordLoc,
6049 Decl *Sema::ActOnStartNamespaceDef(Scope *NamespcScope,
6213 void Sema::ActOnFinishNamespaceDef(Decl *Dcl, SourceLocation RBrace) {
6222 CXXRecordDecl *Sema::getStdBadAlloc() const {
6227 NamespaceDecl *Sema::getStdNamespace() const {
6234 NamespaceDecl *Sema::getOrCreateStdNamespace() {
6249 bool Sema::isStdInitializerList(QualType Ty, QualType *Element) {
6309 static ClassTemplateDecl *LookupStdInitializerList(Sema &S, SourceLocation Loc){
6317 Loc, Sema::LookupOrdinaryName);
6343 QualType Sema::BuildStdInitializerList(QualType Element, SourceLocation Loc) {
6358 bool Sema::isInitListConstructor(const CXXConstructorDecl* Ctor) {
6403 static bool TryNamespaceTypoCorrection(Sema &S, LookupResult &R, Scope *Sc,
6433 Decl *Sema::ActOnUsingDirective(Scope *S,
6515 void Sema::PushUsingDirective(Scope *S, UsingDirectiveDecl *UDir) {
6529 Decl *Sema::ActOnUsingDeclaration(Scope *S,
6626 bool Sema::CheckUsingShadowDecl(UsingDecl *Using, NamedDecl *Orig,
6753 UsingShadowDecl *Sema::BuildUsingShadowDecl(Scope *S,
6809 void Sema::HideUsingShadowDecl(Scope *S, UsingShadowDecl *Shadow) {
6835 NamedDecl *Sema::BuildUsingDeclaration(Scope *S, AccessSpecifier AS,
6991 bool Sema::CheckInheritingConstructorUsingDecl(UsingDecl *UD) {
7029 bool Sema::CheckUsingDeclRedeclaration(SourceLocation UsingLoc,
7088 bool Sema::CheckUsingDeclQualifier(SourceLocation UsingLoc,
7220 Decl *Sema::ActOnAliasDeclaration(Scope *S,
7364 Decl *Sema::ActOnNamespaceAliasDef(Scope *S,
7420 Sema::ImplicitExceptionSpecification
7421 Sema::ComputeDefaultedDefaultCtorExceptionSpec(SourceLocation Loc,
7503 Sema::ImplicitExceptionSpecification
7504 Sema::ComputeInheritingCtorExceptionSpec(CXXMethodDecl *MD) {
7513 Sema &S;
7514 Sema::SpecialMemberDecl D;
7517 DeclaringSpecialMember(Sema &S, CXXRecordDecl *RD, Sema::CXXSpecialMember CSM)
7540 CXXConstructorDecl *Sema::DeclareImplicitDefaultConstructor(
7599 void Sema::DefineImplicitDefaultConstructor(SourceLocation CurrentLocation,
7630 void Sema::ActOnFinishDelayedMemberInitializers(Decl *D) {
7636 void Sema::DeclareInheritingConstructors(CXXRecordDecl *ClassDecl) {
7840 void Sema::DefineInheritingConstructor(SourceLocation CurrentLocation,
7869 Sema::ImplicitExceptionSpecification
7870 Sema::ComputeDefaultedDtorExceptionSpec(CXXMethodDecl *MD) {
7914 CXXDestructorDecl *Sema::DeclareImplicitDestructor(CXXRecordDecl *ClassDecl) {
7968 void Sema::DefineImplicitDestructor(SourceLocation CurrentLocation,
8007 void Sema::ActOnFinishCXXMemberDecls() {
8030 void Sema::AdjustDestructorExceptionSpec(CXXRecordDecl *ClassDecl,
8066 buildMemcpyForAssignmentOp(Sema &S, SourceLocation Loc, QualType T,
8092 Sema::LookupOrdinaryName);
8122 /// \param S The Sema object used for type-checking.
8143 buildSingleCopyAssignRecursively(Sema &S, SourceLocation Loc, QualType T,
8167 LookupResult OpLookup(S, Name, Loc, Sema::LookupOrdinaryName);
8334 buildSingleCopyAssign(Sema &S, SourceLocation Loc, QualType T,
8354 Sema::ImplicitExceptionSpecification
8355 Sema::ComputeDefaultedCopyAssignmentExceptionSpec(CXXMethodDecl *MD) {
8416 CXXMethodDecl *Sema::DeclareImplicitCopyAssignment(CXXRecordDecl *ClassDecl) {
8487 void Sema::DefineImplicitCopyAssignment(SourceLocation CurrentLocation,
8701 Sema::ImplicitExceptionSpecification
8702 Sema::ComputeDefaultedMoveAssignmentExceptionSpec(CXXMethodDecl *MD) {
8764 hasVirtualBaseWithNonTrivialMoveAssignment(Sema &S, CXXRecordDecl *ClassDecl) {
8786 hasMoveOrIsTriviallyCopyable(Sema &S, QualType Type, bool IsConstructor) {
8817 static bool subobjectsHaveMoveOrTrivialCopy(Sema &S, CXXRecordDecl *ClassDecl,
8846 CXXMethodDecl *Sema::DeclareImplicitMoveAssignment(CXXRecordDecl *ClassDecl) {
8943 void Sema::DefineImplicitMoveAssignment(SourceLocation CurrentLocation,
9159 Sema::ImplicitExceptionSpecification
9160 Sema::ComputeDefaultedCopyCtorExceptionSpec(CXXMethodDecl *MD) {
9214 CXXConstructorDecl *Sema::DeclareImplicitCopyConstructor(
9290 void Sema::DefineImplicitCopyConstructor(SourceLocation CurrentLocation,
9310 Sema::CompoundScopeRAII CompoundScope(*this);
9325 Sema::ImplicitExceptionSpecification
9326 Sema::ComputeDefaultedMoveCtorExceptionSpec(CXXMethodDecl *MD) {
9390 CXXConstructorDecl *Sema::DeclareImplicitMoveConstructor(
9481 void Sema::DefineImplicitMoveConstructor(SourceLocation CurrentLocation,
9501 Sema::CompoundScopeRAII CompoundScope(*this);
9517 bool Sema::isImplicitlyDeleted(FunctionDecl *FD) {
9524 static void markLambdaCallOperatorUsed(Sema &S, CXXRecordDecl *Lambda) {
9533 void Sema::DefineImplicitLambdaToFunctionPointerConversion(
9571 void Sema::DefineImplicitLambdaToBlockPointerConversion(
9644 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType,
9679 Sema::BuildCXXConstructExpr(SourceLocation ConstructLoc, QualType DeclInitType,
9696 void Sema::FinalizeVarWithDestructor(VarDecl *VD, const RecordType *Record) {
9729 Sema::CompleteConstructorCall(CXXConstructorDecl *Constructor,
9735 // FIXME: This duplicates a lot of code from Sema::ConvertArgumentsForCall.
9770 CheckOperatorNewDeleteDeclarationScope(Sema &SemaRef,
9790 CheckOperatorNewDeleteTypes(Sema &SemaRef, const FunctionDecl *FnDecl,
9838 CheckOperatorNewDeclaration(Sema &SemaRef, const FunctionDecl *FnDecl) {
9869 CheckOperatorDeleteDeclaration(Sema &SemaRef, FunctionDecl *FnDecl) {
9892 bool Sema::CheckOverloadedOperatorDeclaration(FunctionDecl *FnDecl) {
10033 bool Sema::CheckLiteralOperatorDeclaration(FunctionDecl *FnDecl) {
10162 Decl *Sema::ActOnStartLinkageSpecification(Scope *S, SourceLocation ExternLoc,
10189 Decl *Sema::ActOnFinishLinkageSpecification(Scope *S,
10202 Decl *Sema::ActOnEmptyDeclaration(Scope *S,
10218 VarDecl *Sema::BuildExceptionDeclaration(Scope *S,
10337 Decl *Sema::ActOnExceptionDeclarator(Scope *S, Declarator &D) {
10386 Decl *Sema::ActOnStaticAssertDeclaration(SourceLocation StaticAssertLoc,
10399 Decl *Sema::BuildStaticAssertDeclaration(SourceLocation StaticAssertLoc,
10439 FriendDecl *Sema::CheckFriendTypeDecl(SourceLocation LocStart,
10508 Decl *Sema::ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc,
10644 Decl *Sema::ActOnFriendTypeDecl(Scope *S, const DeclSpec &DS,
10713 NamedDecl *Sema::ActOnFriendFunctionDecl(Scope *S, Declarator &D,
10984 void Sema::SetDeclDeleted(Decl *Dcl, SourceLocation DelLoc) {
11006 void Sema::SetDeclDefaulted(Decl *Dcl, SourceLocation DefaultLoc) {
11092 static void SearchForReturnInStmt(Sema &Self, Stmt *S) {
11105 void Sema::DiagnoseReturnInConstructorExceptionHandler(CXXTryStmt *TryBlock) {
11112 bool Sema::CheckOverridingFunctionAttributes(const CXXMethodDecl *New,
11146 bool Sema::CheckOverridingFunctionReturnType(const CXXMethodDecl *New,
11247 bool Sema::CheckPureMethod(CXXMethodDecl *Method, SourceRange InitRange) {
11278 void Sema::ActOnCXXEnterDeclInitializer(Scope *S, Decl *D) {
11296 void Sema::ActOnCXXExitDeclInitializer(Scope *S, Decl *D) {
11310 DeclResult Sema::ActOnCXXConditionDeclaration(Scope *S, Declarator &D) {
11331 void Sema::LoadExternalVTableUses() {
11355 void Sema::MarkVTableUsed(SourceLocation Loc, CXXRecordDecl *Class,
11390 bool Sema::DefineUsedVTables() {
11486 void Sema::MarkVirtualMemberExceptionSpecsNeeded(SourceLocation Loc,
11494 void Sema::MarkVirtualMembersReferenced(SourceLocation Loc,
11531 void Sema::SetIvarInitializers(ObjCImplementationDecl *ObjCImplementation) {
11589 Sema &S) {
11653 void Sema::CheckDelegatingCtorCycles() {
11672 Sema &S;
11675 explicit FindCXXThisExpr(Sema &S) : S(S) { }
11685 bool Sema::checkThisInStaticMemberFunctionType(CXXMethodDecl *Method) {
11717 bool Sema::checkThisInStaticMemberFunctionExceptionSpec(CXXMethodDecl *Method) {
11756 bool Sema::checkThisInStaticMemberFunctionAttributes(CXXMethodDecl *Method) {
11813 Sema::checkExceptionSpecification(ExceptionSpecificationType EST,
11869 Sema::CUDAFunctionTarget Sema::IdentifyCUDATarget(const FunctionDecl *D) {
11888 bool Sema::CheckCUDATarget(CUDAFunctionTarget CallerTarget,