|
reference, declaration → definition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
|
Declarations
tools/clang/include/clang/Parse/Parser.h 35 class Scope;
tools/clang/include/clang/Sema/ExternalSemaSource.h 34 class Scope;
tools/clang/include/clang/Sema/IdentifierResolver.h 33 class Scope;
tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h 28 class Scope;
tools/clang/include/clang/Sema/ScopeInfo.h 56 class Scope;
References
tools/clang/include/clang/Parse/Parser.h 93 Scope *ScopeCache[ScopeCacheSize];
410 Scope *getCurScope() const { return Actions.getCurScope(); }
1055 Scope *CurScope;
tools/clang/include/clang/Sema/ExternalSemaSource.h 97 virtual bool LookupUnqualified(LookupResult &R, Scope *S) { return false; }
203 int LookupKind, Scope *S, CXXScopeSpec *SS,
tools/clang/include/clang/Sema/IdentifierResolver.h 155 bool isDeclInScope(Decl *D, DeclContext *Ctx, Scope *S = nullptr,
tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h 237 bool LookupUnqualified(LookupResult &R, Scope *S) override;
336 int LookupKind, Scope *S, CXXScopeSpec *SS,
tools/clang/include/clang/Sema/Scope.h 142 Scope *AnyParent;
168 Scope *FnParent;
169 Scope *MSLastManglingParent;
175 Scope *BreakParent, *ContinueParent;
179 Scope *BlockParent;
185 Scope *TemplateParamParent;
211 void setFlags(Scope *Parent, unsigned F);
214 Scope(Scope *Parent, unsigned ScopeFlags, DiagnosticsEngine &Diag)
228 const Scope *getParent() const { return AnyParent; }
229 Scope *getParent() { return AnyParent; }
232 const Scope *getFnParent() const { return FnParent; }
233 Scope *getFnParent() { return FnParent; }
235 const Scope *getMSLastManglingParent() const {
238 Scope *getMSLastManglingParent() { return MSLastManglingParent; }
242 Scope *getContinueParent() {
246 const Scope *getContinueParent() const {
252 Scope *getBreakParent() {
255 const Scope *getBreakParent() const {
259 Scope *getBlockParent() { return BlockParent; }
260 const Scope *getBlockParent() const { return BlockParent; }
262 Scope *getTemplateParamParent() { return TemplateParamParent; }
263 const Scope *getTemplateParamParent() const { return TemplateParamParent; }
298 if (Scope *MSLMP = getMSLastManglingParent()) {
305 if (Scope *MSLMP = getMSLastManglingParent()) {
312 if (const Scope *MSLMP = getMSLastManglingParent())
337 bool isFunctionScope() const { return (getFlags() & Scope::FnScope); }
341 return (getFlags() & Scope::ClassScope);
347 if (const Scope *FnS = getFnParent()) {
357 for (const Scope *S = this; S; S = S->getParent()) {
368 if (const Scope *S = this) {
379 return getFlags() & Scope::TemplateParamScope;
385 return getFlags() & Scope::FunctionPrototypeScope;
390 return getFlags() & Scope::AtCatchScope;
395 for (const Scope *S = this; S; S = S->getParent()) {
396 if (S->getFlags() & Scope::SwitchScope)
398 else if (S->getFlags() & (Scope::FnScope | Scope::ClassScope |
398 else if (S->getFlags() & (Scope::FnScope | Scope::ClassScope |
399 Scope::BlockScope | Scope::TemplateParamScope |
399 Scope::BlockScope | Scope::TemplateParamScope |
400 Scope::FunctionPrototypeScope |
401 Scope::AtCatchScope | Scope::ObjCMethodScope))
401 Scope::AtCatchScope | Scope::ObjCMethodScope))
409 return (getFlags() & Scope::OpenMPDirectiveScope);
415 if (getFlags() & Scope::OpenMPLoopDirectiveScope) {
426 return getFlags() & Scope::OpenMPSimdDirectiveScope;
432 const Scope *P = getParent();
437 bool isTryScope() const { return getFlags() & Scope::TryScope; }
440 bool isSEHTryScope() const { return getFlags() & Scope::SEHTryScope; }
443 bool isSEHExceptScope() const { return getFlags() & Scope::SEHExceptScope; }
447 return getFlags() & Scope::CompoundStmtScope;
454 bool Contains(const Scope& rhs) const { return Depth < rhs.Depth; }
491 void Init(Scope *parent, unsigned flags);
tools/clang/include/clang/Sema/ScopeInfo.h 721 Scope *TheScope;
727 BlockScopeInfo(DiagnosticsEngine &Diag, Scope *BlockScope, BlockDecl *Block)
750 Scope *TheScope;
761 CapturedRegionScopeInfo(DiagnosticsEngine &Diag, Scope *S, CapturedDecl *CD,
tools/clang/include/clang/Sema/Sema.h 406 SmallVector<Scope*, 2> CurrentSEHFinally;
888 Scope *TUScope;
1437 Scope *getScopeForContext(DeclContext *Ctx);
1440 void PushBlockScope(Scope *BlockScope, BlockDecl *Block);
1448 void PushCapturedRegionScope(Scope *RegionScope, CapturedDecl *CD,
1586 TypeSourceInfo *GetTypeForDeclarator(Declarator &D, Scope *S);
1626 TypeResult ActOnTypeName(Scope *S, Declarator &D);
1853 Scope *S, CXXScopeSpec *SS = nullptr,
1860 TypeSpecifierType isTagName(IdentifierInfo &II, Scope *S);
1861 bool isMicrosoftMissingTypename(const CXXScopeSpec *SS, Scope *S);
1864 Scope *S,
2041 NameClassification ClassifyName(Scope *S, CXXScopeSpec &SS,
2058 ExprResult ActOnNameClassifiedAsNonType(Scope *S, const CXXScopeSpec &SS,
2095 void diagnoseExprIntendedAsTemplateName(Scope *S, ExprResult TemplateName,
2099 Decl *ActOnDeclarator(Scope *S, Declarator &D);
2101 NamedDecl *HandleDeclarator(Scope *S, Declarator &D,
2103 void RegisterLocallyScopedExternCDecl(NamedDecl *ND, Scope *S);
2124 void CheckShadow(Scope *S, VarDecl *D);
2139 void handleTagNumbering(const TagDecl *Tag, Scope *TagScope);
2142 void CheckTypedefForVariablyModifiedType(Scope *S, TypedefNameDecl *D);
2143 NamedDecl* ActOnTypedefDeclarator(Scope* S, Declarator& D, DeclContext* DC,
2146 NamedDecl* ActOnTypedefNameDecl(Scope* S, DeclContext* DC, TypedefNameDecl *D,
2148 NamedDecl *ActOnVariableDeclarator(Scope *S, Declarator &D, DeclContext *DC,
2155 ActOnDecompositionDeclarator(Scope *S, Declarator &D,
2166 NamedDecl* ActOnFunctionDeclarator(Scope* S, Declarator& D, DeclContext* DC,
2190 bool CheckFunctionDeclaration(Scope *S,
2200 void CheckFunctionOrTemplateParamDeclarator(Scope *S, Declarator &D);
2201 Decl *ActOnParamDeclarator(Scope *S, Declarator &D);
2267 StmtResult ActOnCXXForRangeIdentifier(Scope *S, SourceLocation IdentLoc,
2275 DeclGroupPtrTy FinalizeDeclaratorGroup(Scope *S, const DeclSpec &DS,
2284 void ActOnFinishKNRParamDeclarations(Scope *S, Declarator &D,
2289 Decl *ActOnStartOfFunctionDef(Scope *S, Declarator &D,
2292 Decl *ActOnStartOfFunctionDef(Scope *S, Decl *D,
2294 void ActOnStartOfObjCMethodDef(Scope *S, Decl *D);
2326 void ActOnFinishDelayedAttribute(Scope *S, Decl *D, ParsedAttributes &Attrs);
2345 Decl *ActOnEmptyDeclaration(Scope *S, const ParsedAttributesView &AttrList,
2423 Decl *ActOnStartExportDecl(Scope *S, SourceLocation ExportLoc,
2425 Decl *ActOnFinishExportDecl(Scope *S, Decl *ExportDecl,
2449 void ActOnPopScope(SourceLocation Loc, Scope *S);
2450 void ActOnTranslationUnitScope(Scope *S);
2452 Decl *ParsedFreeStandingDeclSpec(Scope *S, AccessSpecifier AS, DeclSpec &DS,
2454 Decl *ParsedFreeStandingDeclSpec(Scope *S, AccessSpecifier AS, DeclSpec &DS,
2459 Decl *BuildAnonymousStructOrUnion(Scope *S, DeclSpec &DS,
2464 Decl *BuildMicrosoftCAnonymousStruct(Scope *S, DeclSpec &DS,
2497 Decl *ActOnTag(Scope *S, unsigned TagSpec, TagUseKind TUK,
2507 Decl *ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc,
2514 TypeResult ActOnDependentTag(Scope *S,
2522 void ActOnDefs(Scope *S, Decl *TagD, SourceLocation DeclStart,
2525 Decl *ActOnField(Scope *S, Decl *TagD, SourceLocation DeclStart,
2528 FieldDecl *HandleField(Scope *S, RecordDecl *TagD, SourceLocation DeclStart,
2532 MSPropertyDecl *HandleMSProperty(Scope *S, RecordDecl *TagD,
2610 Decl *ActOnIvar(Scope *S, SourceLocation DeclStart,
2615 void ActOnFields(Scope *S, SourceLocation RecLoc, Decl *TagDecl,
2622 void ActOnTagStartDefinition(Scope *S, Decl *TagDecl);
2633 SkippedDefinitionContext ActOnTagStartSkippedDefinition(Scope *S, Decl *TD);
2640 void ActOnStartCXXMemberDeclarations(Scope *S, Decl *TagDecl,
2647 void ActOnTagFinishDefinition(Scope *S, Decl *TagDecl,
2663 void ActOnTagDefinitionError(Scope *S, Decl *TagDecl);
2677 SkipBodyInfo shouldSkipAnonEnumBody(Scope *S, IdentifierInfo *II,
2680 Decl *ActOnEnumConstant(Scope *S, Decl *EnumDecl, Decl *LastEnumConstant,
2685 Decl *EnumDecl, ArrayRef<Decl *> Elements, Scope *S,
2691 void PushDeclContext(Scope *S, DeclContext *DC);
2696 void EnterDeclaratorContext(Scope *S, DeclContext *DC);
2697 void ExitDeclaratorContext(Scope *S);
2700 void ActOnReenterFunctionContext(Scope* S, Decl* D);
2721 void PushOnScopeChains(NamedDecl *D, Scope *S, bool AddToContext = true);
2730 bool isDeclInScope(NamedDecl *D, DeclContext *Ctx, Scope *S = nullptr,
2735 static Scope *getScopeForDeclContext(Scope *S, DeclContext *DC);
2735 static Scope *getScopeForDeclContext(Scope *S, DeclContext *DC);
2738 TypedefDecl *ParseTypedefDecl(Scope *S, Declarator &D, QualType T,
2830 void MergeTypedefNameDecl(Scope *S, TypedefNameDecl *New,
2832 bool MergeFunctionDecl(FunctionDecl *New, NamedDecl *&Old, Scope *S,
2835 Scope *S, bool MergeTypeWithOld);
2842 bool MergeCXXFunctionDecl(FunctionDecl *New, FunctionDecl *Old, Scope *S);
2871 OverloadKind CheckOverload(Scope *S,
3289 ExprResult BuildOverloadedCallExpr(Scope *S, Expr *Fn,
3298 bool buildOverloadedCallSet(Scope *S, Expr *Fn, UnresolvedLookupExpr *ULE,
3320 BuildCallToMemberFunction(Scope *S, Expr *MemExpr,
3325 BuildCallToObjectOfClassType(Scope *S, Expr *Object, SourceLocation LParenLoc,
3329 ExprResult BuildOverloadedArrowExpr(Scope *S, Expr *Base,
3344 Scope *getNonFieldDeclScope(Scope *S);
3344 Scope *getNonFieldDeclScope(Scope *S);
3484 bool CppLookupName(LookupResult &R, Scope *S);
3518 Sema::LookupNameKind LookupKind, Scope *S,
3536 NamedDecl *LookupSingleName(Scope *S, DeclarationName Name,
3542 bool LookupName(LookupResult &R, Scope *S,
3548 bool LookupParsedName(LookupResult &R, Scope *S, CXXScopeSpec *SS,
3556 void LookupOverloadedOperatorName(OverloadedOperatorKind Op, Scope *S,
3576 LiteralOperatorLookupResult LookupLiteralOperator(Scope *S, LookupResult &R,
3600 void LookupVisibleDecls(Scope *S, LookupNameKind Kind,
3617 Scope *S, CXXScopeSpec *SS,
3626 Sema::LookupNameKind LookupKind, Scope *S,
3689 void FilterLookupForScope(LookupResult &R, DeclContext *Ctx, Scope *S,
3701 Scope *S, bool ForRedeclaration,
3704 Scope *S);
3709 void ProcessPragmaWeak(Scope *S, Decl *D);
3711 void ProcessDeclAttributes(Scope *S, Decl *D, const Declarator &PD);
3715 void ProcessDeclAttributeList(Scope *S, Decl *D, const ParsedAttributesView &AL,
3788 void ImplMethodsVsClassMethods(Scope *S, ObjCImplDecl* IMPDecl,
3794 void DiagnoseUnimplementedProperties(Scope *S, ObjCImplDecl* IMPDecl,
3803 void DefaultSynthesizeProperties(Scope *S, ObjCImplDecl *IMPDecl,
3806 void DefaultSynthesizeProperties(Scope *S, Decl *D, SourceLocation AtEnd);
3816 void DiagnoseUnusedBackingIvarInAccessor(Scope *S,
3827 ObjCPropertyDecl *HandlePropertyInClassExtension(Scope *S,
3844 ObjCPropertyDecl *CreatePropertyDecl(Scope *S,
4093 Stmt *SubStmt, Scope *CurScope);
4146 StmtResult ActOnCXXForRangeStmt(Scope *S, SourceLocation ForLoc,
4170 StmtResult ActOnContinueStmt(SourceLocation ContinueLoc, Scope *CurScope);
4171 StmtResult ActOnBreakStmt(SourceLocation BreakLoc, Scope *CurScope);
4173 void ActOnCapturedRegionStart(SourceLocation Loc, Scope *CurScope,
4176 void ActOnCapturedRegionStart(SourceLocation Loc, Scope *CurScope,
4203 Scope *CurScope);
4242 Decl *ActOnObjCExceptionDecl(Scope *S, Declarator &D);
4254 Scope *CurScope);
4263 VarDecl *BuildExceptionDeclaration(Scope *S, TypeSourceInfo *TInfo,
4268 Decl *ActOnExceptionDeclarator(Scope *S, Declarator &D);
4284 StmtResult ActOnSEHLeaveStmt(SourceLocation Loc, Scope *CurScope);
4508 Scope *S, CXXScopeSpec &SS, SourceLocation TemplateKWLoc,
4519 DiagnoseEmptyLookup(Scope *S, CXXScopeSpec &SS, LookupResult &R,
4524 DeclResult LookupIvarInObjCMethod(LookupResult &Lookup, Scope *S,
4526 ExprResult BuildIvarRefExpr(Scope *S, SourceLocation Loc, ObjCIvarDecl *IV);
4528 ExprResult LookupInObjCMethod(LookupResult &LookUp, Scope *S,
4573 const Scope *S);
4579 const Scope *S);
4587 bool IsAddressOfOperand, const Scope *S,
4618 ExprResult ActOnNumericConstant(const Token &Tok, Scope *UDLScope = nullptr);
4620 Scope *UDLScope = nullptr);
4629 Scope *UDLScope = nullptr);
4647 ExprResult BuildUnaryOp(Scope *S, SourceLocation OpLoc,
4649 ExprResult ActOnUnaryOp(Scope *S, SourceLocation OpLoc,
4674 ExprResult ActOnSizeofParameterPackExpr(Scope *S,
4679 ExprResult ActOnPostfixUnaryOp(Scope *S, SourceLocation OpLoc,
4682 ExprResult ActOnArraySubscriptExpr(Scope *S, Expr *Base, SourceLocation LLoc,
4696 Scope *S;
4706 const Scope *S,
4715 const Scope *S,
4739 ExprResult ActOnMemberAccessExpr(Scope *S, Expr *Base,
4778 ExprResult ActOnCallExpr(Scope *S, Expr *Fn, SourceLocation LParenLoc,
4781 ExprResult BuildCallExpr(Scope *S, Expr *Fn, SourceLocation LParenLoc,
4797 ExprResult ActOnCUDAExecConfigExpr(Scope *S, SourceLocation LLLLoc,
4801 ExprResult ActOnCastExpr(Scope *S, SourceLocation LParenLoc,
4815 ExprResult MaybeConvertParenListExprToParenExpr(Scope *S, Expr *ME);
4844 ExprResult ActOnBinOp(Scope *S, SourceLocation TokLoc,
4846 ExprResult BuildBinOp(Scope *S, SourceLocation OpLoc,
4885 ExprResult ActOnBuiltinOffsetOf(Scope *S,
4936 CheckMicrosoftIfExistsSymbol(Scope *S, CXXScopeSpec &SS,
4940 CheckMicrosoftIfExistsSymbol(Scope *S, SourceLocation KeywordLoc,
4958 void ActOnBlockStart(SourceLocation CaretLoc, Scope *CurScope);
4963 Scope *CurScope);
4967 void ActOnBlockError(SourceLocation CaretLoc, Scope *CurScope);
4972 Scope *CurScope);
4991 Decl *ActOnStartNamespaceDef(Scope *S, SourceLocation InlineLoc,
5042 Decl *ActOnUsingDirective(Scope *CurScope, SourceLocation UsingLoc,
5048 void PushUsingDirective(Scope *S, UsingDirectiveDecl *UDir);
5050 Decl *ActOnNamespaceAliasDef(Scope *CurScope,
5058 void HideUsingShadowDecl(Scope *S, UsingShadowDecl *Shadow);
5062 UsingShadowDecl *BuildUsingShadowDecl(Scope *S, UsingDecl *UD,
5078 Scope *S, AccessSpecifier AS, SourceLocation UsingLoc,
5094 Decl *ActOnUsingDeclaration(Scope *CurScope, AccessSpecifier AS,
5099 Decl *ActOnAliasDeclaration(Scope *CurScope, AccessSpecifier AS,
5397 void CheckImplicitSpecialMemberDeclaration(Scope *S, FunctionDecl *FD);
5436 Scope *S, CXXScopeSpec &SS,
5440 Scope *S, CXXScopeSpec &SS,
5593 ExprResult ActOnCXXThrow(Scope *S, SourceLocation OpLoc, Expr *expr);
5728 ExprResult ActOnStartCXXMemberReference(Scope *S,
5744 ExprResult ActOnPseudoDestructorExpr(Scope *S, Expr *Base,
5753 ExprResult ActOnPseudoDestructorExpr(Scope *S, Expr *Base,
5812 NamedDecl *FindFirstQualifierInScope(Scope *S, NestedNameSpecifier *NNS);
5844 bool isNonTypeNestedNameSpecifier(Scope *S, CXXScopeSpec &SS,
5847 bool BuildCXXNestedNameSpecifier(Scope *S,
5881 bool ActOnCXXNestedNameSpecifier(Scope *S,
5895 bool IsInvalidUnlessNestedName(Scope *S, CXXScopeSpec &SS,
5922 bool ActOnCXXNestedNameSpecifier(Scope *S,
5957 bool ShouldEnterDeclaratorScope(Scope *S, const CXXScopeSpec &SS);
5965 bool ActOnCXXEnterDeclaratorScope(Scope *S, CXXScopeSpec &SS);
5972 void ActOnCXXExitDeclaratorScope(Scope *S, const CXXScopeSpec &SS);
5979 void ActOnCXXEnterDeclInitializer(Scope *S, Decl *Dcl);
5983 void ActOnCXXExitDeclInitializer(Scope *S, Decl *Dcl);
6056 CXXMethodDecl *CallOperator, Scope *CurScope);
6067 Declarator &ParamInfo, Scope *CurScope);
6071 void ActOnLambdaError(SourceLocation StartLoc, Scope *CurScope,
6077 Scope *CurScope);
6206 Decl *ActOnStartLinkageSpecification(Scope *S,
6210 Decl *ActOnFinishLinkageSpecification(Scope *S,
6218 CXXRecordDecl *getCurrentClass(Scope *S, const CXXScopeSpec *SS);
6219 bool isCurrentClassName(const IdentifierInfo &II, Scope *S,
6227 NamedDecl *ActOnCXXMemberDeclarator(Scope *S, AccessSpecifier AS,
6239 Scope *S,
6251 Scope *S,
6261 Scope *S,
6376 void ActOnFinishCXXMemberSpecification(Scope *S, SourceLocation RLoc,
6383 void ActOnReenterCXXMethodParameter(Scope *S, ParmVarDecl *Param);
6384 unsigned ActOnReenterTemplateScope(Scope *S, Decl *Template);
6385 void ActOnStartDelayedMemberDeclarations(Scope *S, Decl *Record);
6386 void ActOnStartDelayedCXXMethodDeclaration(Scope *S, Decl *Method);
6387 void ActOnDelayedCXXMethodParameter(Scope *S, Decl *Param);
6388 void ActOnFinishDelayedMemberDeclarations(Scope *S, Decl *Record);
6389 void ActOnFinishDelayedCXXMethodDeclaration(Scope *S, Decl *Method);
6409 Decl *ActOnFriendTypeDecl(Scope *S, const DeclSpec &DS,
6411 NamedDecl *ActOnFriendFunctionDecl(Scope *S, Declarator &D,
6647 bool LookupTemplateName(LookupResult &R, Scope *S, CXXScopeSpec &SS,
6653 TemplateNameKind isTemplateName(Scope *S,
6667 void ActOnUndeclaredTypeTemplateName(Scope *S, TemplateTy &Name,
6672 bool resolveAssumedTemplateNameAsType(Scope *S, TemplateName &Name,
6678 bool isDeductionGuideName(Scope *S, const IdentifierInfo &Name,
6684 Scope *S,
6700 NamedDecl *ActOnTypeParameter(Scope *S, bool Typename,
6713 NamedDecl *ActOnNonTypeTemplateParameter(Scope *S, Declarator &D,
6718 NamedDecl *ActOnTemplateTemplateParameter(Scope *S,
6761 Scope *S, unsigned TagSpec, TagUseKind TUK, SourceLocation KWLoc,
6785 ActOnTemplateIdType(Scope *S, CXXScopeSpec &SS, SourceLocation TemplateKWLoc,
6805 Scope *S, Declarator &D, TypeSourceInfo *DI,
6841 Scope *S, CXXScopeSpec &SS, SourceLocation TemplateKWLoc,
6846 Scope *S, unsigned TagSpec, TagUseKind TUK, SourceLocation KWLoc,
6861 Decl *ActOnTemplateDeclarator(Scope *S,
6884 Scope *S, SourceLocation ExternLoc, SourceLocation TemplateLoc,
6890 DeclResult ActOnExplicitInstantiation(Scope *S, SourceLocation ExternLoc,
6897 DeclResult ActOnExplicitInstantiation(Scope *S,
7030 bool CheckTemplateDeclScope(Scope *S, TemplateParameterList *TemplateParams);
7041 ActOnTypenameType(Scope *S, SourceLocation TypenameLoc,
7060 ActOnTypenameType(Scope *S, SourceLocation TypenameLoc,
7096 Scope *S, MultiTemplateParamsArg TemplateParameterLists,
8515 DeclResult actOnObjCTypeParam(Scope *S,
8524 ObjCTypeParamList *actOnObjCTypeParamList(Scope *S, SourceLocation lAngleLoc,
8527 void popObjCTypeParamList(Scope *S, ObjCTypeParamList *typeParamList);
8530 Scope *S, SourceLocation AtInterfaceLoc, IdentifierInfo *ClassName,
8538 void ActOnSuperClassOfClassInterface(Scope *S,
8619 Scope *S,
8643 Scope *S,
8696 Decl *ActOnAtEnd(Scope *S, SourceRange AtEnd,
8700 Decl *ActOnProperty(Scope *S, SourceLocation AtLoc,
8707 Decl *ActOnPropertyImplDecl(Scope *S,
8738 Scope *S,
8788 ObjCMessageKind getObjCMessageKind(Scope *S,
8795 ExprResult ActOnSuperMessage(Scope *S, SourceLocation SuperLoc,
8820 ExprResult ActOnClassMessage(Scope *S,
8846 ExprResult ActOnInstanceMessage(Scope *S,
8860 ExprResult ActOnObjCBridgedCast(Scope *S,
8989 void ActOnPragmaDump(Scope *S, SourceLocation Loc, IdentifierInfo *II);
8997 Scope *curScope,
9006 void DeclApplyPragmaWeak(Scope *S, NamedDecl *ND, WeakInfo &W);
9080 void AddPragmaAttributes(Scope *S, Decl *D);
9154 bool ActOnCoroutineBodyStart(Scope *S, SourceLocation KwLoc,
9156 ExprResult ActOnCoawaitExpr(Scope *S, SourceLocation KwLoc, Expr *E);
9157 ExprResult ActOnCoyieldExpr(Scope *S, SourceLocation KwLoc, Expr *E);
9158 StmtResult ActOnCoreturnStmt(Scope *S, SourceLocation KwLoc, Expr *E);
9382 const DeclarationNameInfo &DirName, Scope *CurScope,
9400 ExprResult ActOnOpenMPIdExpression(Scope *CurScope, CXXScopeSpec &ScopeSpec,
9427 Scope *S, DeclContext *DC, DeclarationName Name,
9431 void ActOnOpenMPDeclareReductionCombinerStart(Scope *S, Decl *D);
9436 VarDecl *ActOnOpenMPDeclareReductionInitializerStart(Scope *S, Decl *D);
9442 Scope *S, DeclGroupPtrTy DeclReductions, bool IsValid);
9445 TypeResult ActOnOpenMPDeclareMapperVarDecl(Scope *S, Declarator &D);
9452 Scope *S, DeclContext *DC, DeclarationName Name, QualType MapperType,
9457 Scope *S, QualType MapperType,
9462 ActOnOpenMPDeclareMapperDirectiveEnd(OMPDeclareMapperDecl *D, Scope *S,
9472 lookupOpenMPDeclareTargetName(Scope *CurScope, CXXScopeSpec &ScopeSpec,
9494 void ActOnOpenMPRegionStart(OpenMPDirectiveKind DKind, Scope *CurScope);
10420 ExprResult checkPseudoObjectIncDec(Scope *S, SourceLocation OpLoc,
10422 ExprResult checkPseudoObjectAssignment(Scope *S, SourceLocation OpLoc,
10634 ConditionResult ActOnCondition(Scope *S, SourceLocation Loc,
10641 DeclResult ActOnCXXConditionDeclaration(Scope *S, Declarator &D);
11102 void CodeCompleteOrdinaryName(Scope *S,
11104 void CodeCompleteDeclSpec(Scope *S, DeclSpec &DS,
11109 void CodeCompleteExpression(Scope *S,
11111 void CodeCompleteExpression(Scope *S, QualType PreferredType,
11113 void CodeCompleteMemberReferenceExpr(Scope *S, Expr *Base, Expr *OtherOpBase,
11117 void CodeCompletePostfixExpression(Scope *S, ExprResult LHS,
11119 void CodeCompleteTag(Scope *S, unsigned TagSpec);
11123 void CodeCompleteBracketDeclarator(Scope *S);
11124 void CodeCompleteCase(Scope *S);
11127 QualType ProduceCallSignatureHelp(Scope *S, Expr *Fn, ArrayRef<Expr *> Args,
11129 QualType ProduceConstructorSignatureHelp(Scope *S, QualType Type,
11133 QualType ProduceCtorInitMemberSignatureHelp(Scope *S, Decl *ConstructorDecl,
11139 void CodeCompleteInitializer(Scope *S, Decl *D);
11140 void CodeCompleteAfterIf(Scope *S);
11142 void CodeCompleteQualifiedId(Scope *S, CXXScopeSpec &SS, bool EnteringContext,
11145 void CodeCompleteUsing(Scope *S);
11146 void CodeCompleteUsingDirective(Scope *S);
11147 void CodeCompleteNamespaceDecl(Scope *S);
11148 void CodeCompleteNamespaceAliasDecl(Scope *S);
11149 void CodeCompleteOperatorName(Scope *S);
11154 void CodeCompleteLambdaIntroducer(Scope *S, LambdaIntroducer &Intro,
11157 void CodeCompleteObjCAtDirective(Scope *S);
11158 void CodeCompleteObjCAtVisibility(Scope *S);
11159 void CodeCompleteObjCAtStatement(Scope *S);
11160 void CodeCompleteObjCAtExpression(Scope *S);
11161 void CodeCompleteObjCPropertyFlags(Scope *S, ObjCDeclSpec &ODS);
11162 void CodeCompleteObjCPropertyGetter(Scope *S);
11163 void CodeCompleteObjCPropertySetter(Scope *S);
11164 void CodeCompleteObjCPassingType(Scope *S, ObjCDeclSpec &DS,
11166 void CodeCompleteObjCMessageReceiver(Scope *S);
11167 void CodeCompleteObjCSuperMessage(Scope *S, SourceLocation SuperLoc,
11170 void CodeCompleteObjCClassMessage(Scope *S, ParsedType Receiver,
11174 void CodeCompleteObjCInstanceMessage(Scope *S, Expr *Receiver,
11178 void CodeCompleteObjCForCollection(Scope *S,
11180 void CodeCompleteObjCSelector(Scope *S,
11184 void CodeCompleteObjCProtocolDecl(Scope *S);
11185 void CodeCompleteObjCInterfaceDecl(Scope *S);
11186 void CodeCompleteObjCSuperclass(Scope *S,
11189 void CodeCompleteObjCImplementationDecl(Scope *S);
11190 void CodeCompleteObjCInterfaceCategory(Scope *S,
11193 void CodeCompleteObjCImplementationCategory(Scope *S,
11196 void CodeCompleteObjCPropertyDefinition(Scope *S);
11197 void CodeCompleteObjCPropertySynthesizeIvar(Scope *S,
11199 void CodeCompleteObjCMethodDecl(Scope *S, Optional<bool> IsInstanceMethod,
11201 void CodeCompleteObjCMethodDeclSelector(Scope *S,
11206 void CodeCompleteObjCClassPropertyRefExpr(Scope *S, IdentifierInfo &ClassName,
11210 void CodeCompleteInPreprocessorConditionalExclusion(Scope *S);
11213 void CodeCompletePreprocessorMacroArgument(Scope *S,
11461 Scope *CurScope;
11504 Scope *getCurScope() const { return CurScope; }
tools/clang/include/clang/Sema/SemaInternal.h 94 Scope *S, CXXScopeSpec *SS,
201 Scope *getScope() const { return S; }
305 Scope *S;
tools/clang/lib/Parse/ParseCXXInlineMethods.cpp 264 ParseScope ClassTemplateScope(this, Scope::TemplateParamScope,
275 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope,
275 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope,
292 ParseScope TemplateScope(this, Scope::TemplateParamScope, LM.TemplateScope);
303 ParseScope PrototypeScope(this, Scope::FunctionPrototypeScope |
304 Scope::FunctionDeclarationScope | Scope::DeclScope);
304 Scope::FunctionDeclarationScope | Scope::DeclScope);
469 ParseScope ClassTemplateScope(this, Scope::TemplateParamScope, HasTemplateScope);
476 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope,
476 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope,
486 ParseScope TemplateScope(this, Scope::TemplateParamScope, LM.TemplateScope);
515 ParseScope FnScope(this, Scope::FnScope | Scope::DeclScope |
515 ParseScope FnScope(this, Scope::FnScope | Scope::DeclScope |
516 Scope::CompoundStmtScope);
573 ParseScope ClassTemplateScope(this, Scope::TemplateParamScope,
582 unsigned ScopeFlags = Scope::ClassScope|Scope::DeclScope;
582 unsigned ScopeFlags = Scope::ClassScope|Scope::DeclScope;
tools/clang/lib/Parse/ParseDecl.cpp 471 PrototypeScope.emplace(this, Scope::FunctionPrototypeScope |
472 Scope::FunctionDeclarationScope |
473 Scope::DeclScope);
1431 ParseScope ClassTemplateScope(this, Scope::TemplateParamScope,
1438 unsigned ScopeFlags = Scope::ClassScope|Scope::DeclScope;
1438 unsigned ScopeFlags = Scope::ClassScope|Scope::DeclScope;
1509 ParseScope TempScope(this, Scope::TemplateParamScope, HasTemplateScope);
1516 this, Scope::FnScope | Scope::DeclScope | Scope::CompoundStmtScope,
1516 this, Scope::FnScope | Scope::DeclScope | Scope::CompoundStmtScope,
1516 this, Scope::FnScope | Scope::DeclScope | Scope::CompoundStmtScope,
2255 Scope *S = nullptr;
2266 Scope *S = nullptr;
3103 = (getCurScope()->getFlags() & (Scope::ControlScope |
3104 Scope::BlockScope |
3105 Scope::TemplateParamScope |
3106 Scope::FunctionPrototypeScope |
3107 Scope::AtCatchScope)) == 0;
4135 ParseScope StructScope(this, Scope::ClassScope|Scope::DeclScope);
4135 ParseScope StructScope(this, Scope::ClassScope|Scope::DeclScope);
4385 bool CanBeBitfield = getCurScope()->getFlags() & Scope::ClassScope;
4639 ParseScope EnumScope(this, Scope::DeclScope | Scope::EnumScope);
4639 ParseScope EnumScope(this, Scope::DeclScope | Scope::EnumScope);
4764 bool CanBeBitfield = getCurScope()->getFlags() & Scope::ClassScope;
6006 Scope::FunctionPrototypeScope|Scope::DeclScope|
6006 Scope::FunctionPrototypeScope|Scope::DeclScope|
6008 ? Scope::FunctionDeclarationScope : 0));
6203 Scope::FunctionPrototypeScope | Scope::DeclScope |
6203 Scope::FunctionPrototypeScope | Scope::DeclScope |
6205 ? Scope::FunctionDeclarationScope : 0));
6411 if (getCurScope()->getFlags() & Scope::FunctionDeclarationScope &&
tools/clang/lib/Parse/ParseDeclCXX.cpp 212 ParseScope NamespaceScope(this, Scope::DeclScope);
259 ParseScope NamespaceScope(this, Scope::DeclScope);
337 ParseScope LinkageScope(this, Scope::DeclScope);
420 ParseScope ExportScope(this, Scope::DeclScope);
3021 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope);
3021 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope);
3182 for (const Scope *S = getCurScope(); S; S = S->getParent()) {
3198 if ((S->getFlags() & Scope::FnScope))
3206 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope);
3206 ParseScope ClassScope(this, Scope::ClassScope|Scope::DeclScope);
3263 Scope::ClassInheritanceScope);
tools/clang/lib/Parse/ParseExpr.cpp 3019 ParseScope BlockScope(this, Scope::BlockScope | Scope::FnScope |
3019 ParseScope BlockScope(this, Scope::BlockScope | Scope::FnScope |
3020 Scope::CompoundStmtScope | Scope::DeclScope);
3020 Scope::CompoundStmtScope | Scope::DeclScope);
tools/clang/lib/Parse/ParseExprCXX.cpp 1258 ParseScope TemplateParamScope(this, Scope::TemplateParamScope,
1286 Scope::FunctionPrototypeScope |
1287 Scope::FunctionDeclarationScope |
1288 Scope::DeclScope);
1455 unsigned ScopeFlags = Scope::BlockScope | Scope::FnScope | Scope::DeclScope |
1455 unsigned ScopeFlags = Scope::BlockScope | Scope::FnScope | Scope::DeclScope |
1455 unsigned ScopeFlags = Scope::BlockScope | Scope::FnScope | Scope::DeclScope |
1456 Scope::CompoundStmtScope;
tools/clang/lib/Parse/ParseObjc.cpp 99 Scope *S;
103 ObjCTypeParamListScope(Sema &Actions, Scope *S)
1392 ParseScope PrototypeScope(this, Scope::FunctionPrototypeScope |
1393 Scope::FunctionDeclarationScope | Scope::DeclScope);
1393 Scope::FunctionDeclarationScope | Scope::DeclScope);
1906 ParseScope ClassScope(this, Scope::DeclScope|Scope::ClassScope);
1906 ParseScope ClassScope(this, Scope::DeclScope|Scope::ClassScope);
2472 ParseScope bodyScope(this, Scope::DeclScope | Scope::CompoundStmtScope);
2472 ParseScope bodyScope(this, Scope::DeclScope | Scope::CompoundStmtScope);
2508 ParseScope TryScope(this, Scope::DeclScope | Scope::CompoundStmtScope);
2508 ParseScope TryScope(this, Scope::DeclScope | Scope::CompoundStmtScope);
2529 ParseScope CatchScope(this, Scope::DeclScope |
2530 Scope::CompoundStmtScope |
2531 Scope::AtCatchScope);
2576 Scope::DeclScope | Scope::CompoundStmtScope);
2576 Scope::DeclScope | Scope::CompoundStmtScope);
2626 ParseScope BodyScope(this, Scope::DeclScope | Scope::CompoundStmtScope);
2626 ParseScope BodyScope(this, Scope::DeclScope | Scope::CompoundStmtScope);
3661 ParseScope BodyScope(this, (parseMethod ? Scope::ObjCMethodScope : 0) |
3662 Scope::FnScope | Scope::DeclScope |
3662 Scope::FnScope | Scope::DeclScope |
3663 Scope::CompoundStmtScope);
tools/clang/lib/Parse/ParseOpenMP.cpp 323 ParseScope OMPDRScope(this, Scope::FnScope | Scope::DeclScope |
323 ParseScope OMPDRScope(this, Scope::FnScope | Scope::DeclScope |
324 Scope::CompoundStmtScope |
325 Scope::OpenMPDirectiveScope);
359 ParseScope OMPDRScope(this, Scope::FnScope | Scope::DeclScope |
359 ParseScope OMPDRScope(this, Scope::FnScope | Scope::DeclScope |
360 Scope::CompoundStmtScope |
361 Scope::OpenMPDirectiveScope);
553 unsigned ScopeFlags = Scope::FnScope | Scope::DeclScope |
553 unsigned ScopeFlags = Scope::FnScope | Scope::DeclScope |
554 Scope::CompoundStmtScope | Scope::OpenMPDirectiveScope;
554 Scope::CompoundStmtScope | Scope::OpenMPDirectiveScope;
650 new Parser::ParseScope(&P, Scope::TemplateParamScope, HasTemplateScope);
657 &P, Scope::FnScope | Scope::DeclScope | Scope::CompoundStmtScope,
657 &P, Scope::FnScope | Scope::DeclScope | Scope::CompoundStmtScope,
657 &P, Scope::FnScope | Scope::DeclScope | Scope::CompoundStmtScope,
1587 unsigned ScopeFlags = Scope::FnScope | Scope::DeclScope |
1587 unsigned ScopeFlags = Scope::FnScope | Scope::DeclScope |
1588 Scope::CompoundStmtScope | Scope::OpenMPDirectiveScope;
1588 Scope::CompoundStmtScope | Scope::OpenMPDirectiveScope;
1793 ScopeFlags |= Scope::OpenMPLoopDirectiveScope;
1795 ScopeFlags |= Scope::OpenMPSimdDirectiveScope;
tools/clang/lib/Parse/ParsePragma.cpp 661 ParseScope CapturedRegionScope(this, Scope::FnScope | Scope::DeclScope |
661 ParseScope CapturedRegionScope(this, Scope::FnScope | Scope::DeclScope |
662 Scope::CompoundStmtScope);
tools/clang/lib/Parse/ParseStmt.cpp 478 Scope::DeclScope | Scope::CompoundStmtScope | Scope::SEHTryScope));
478 Scope::DeclScope | Scope::CompoundStmtScope | Scope::SEHTryScope));
478 Scope::DeclScope | Scope::CompoundStmtScope | Scope::SEHTryScope));
516 ParseScope ExpectScope(this, Scope::DeclScope | Scope::ControlScope |
516 ParseScope ExpectScope(this, Scope::DeclScope | Scope::ControlScope |
517 Scope::SEHExceptScope);
528 Scope::SEHFilterScope);
862 Scope::DeclScope | Scope::CompoundStmtScope);
862 Scope::DeclScope | Scope::CompoundStmtScope);
1234 ParseScope IfScope(this, Scope::DeclScope | Scope::ControlScope, C99orCXX);
1234 ParseScope IfScope(this, Scope::DeclScope | Scope::ControlScope, C99orCXX);
1266 ParseScope InnerScope(this, Scope::DeclScope, C99orCXX, Tok.is(tok::l_brace));
1305 ParseScope InnerScope(this, Scope::DeclScope, C99orCXX,
1374 unsigned ScopeFlags = Scope::SwitchScope;
1376 ScopeFlags |= Scope::DeclScope | Scope::ControlScope;
1376 ScopeFlags |= Scope::DeclScope | Scope::ControlScope;
1413 getCurScope()->AddFlags(Scope::BreakScope);
1414 ParseScope InnerScope(this, Scope::DeclScope, C99orCXX, Tok.is(tok::l_brace));
1462 ScopeFlags = Scope::BreakScope | Scope::ContinueScope |
1462 ScopeFlags = Scope::BreakScope | Scope::ContinueScope |
1463 Scope::DeclScope | Scope::ControlScope;
1463 Scope::DeclScope | Scope::ControlScope;
1465 ScopeFlags = Scope::BreakScope | Scope::ContinueScope;
1465 ScopeFlags = Scope::BreakScope | Scope::ContinueScope;
1485 ParseScope InnerScope(this, Scope::DeclScope, C99orCXX, Tok.is(tok::l_brace));
1512 ScopeFlags = Scope::BreakScope | Scope::ContinueScope | Scope::DeclScope;
1512 ScopeFlags = Scope::BreakScope | Scope::ContinueScope | Scope::DeclScope;
1512 ScopeFlags = Scope::BreakScope | Scope::ContinueScope | Scope::DeclScope;
1514 ScopeFlags = Scope::BreakScope | Scope::ContinueScope;
1514 ScopeFlags = Scope::BreakScope | Scope::ContinueScope;
1527 ParseScope InnerScope(this, Scope::DeclScope, C99orCXX, Tok.is(tok::l_brace));
1647 ScopeFlags = Scope::DeclScope | Scope::ControlScope;
1647 ScopeFlags = Scope::DeclScope | Scope::ControlScope;
1796 getCurScope()->AddFlags(Scope::BreakScope | Scope::ContinueScope);
1796 getCurScope()->AddFlags(Scope::BreakScope | Scope::ContinueScope);
1911 ParseScope InnerScope(this, Scope::DeclScope, C99orCXXorObjC,
2214 /*isStmtExpr=*/false, Scope::DeclScope | Scope::TryScope |
2214 /*isStmtExpr=*/false, Scope::DeclScope | Scope::TryScope |
2215 Scope::CompoundStmtScope |
2216 (FnTry ? Scope::FnTryCatchScope : 0)));
2288 ParseScope CatchScope(this, Scope::DeclScope | Scope::ControlScope |
2288 ParseScope CatchScope(this, Scope::DeclScope | Scope::ControlScope |
2289 Scope::CatchScope |
2290 (FnCatch ? Scope::FnTryCatchScope : 0));
tools/clang/lib/Parse/ParseTemplate.cpp 70 ParseScope TemplateParmScope(this, Scope::TemplateParamScope);
150 unsigned NewFlags = getCurScope()->getFlags() & ~Scope::TemplateParamScope;
686 ParseScope TemplateParmScope(this, Scope::TemplateParamScope);
1484 new ParseScope(this, Scope::TemplateParamScope));
1489 TemplateParamScopeStack.push_back(new ParseScope(this, Scope::DeclScope));
1508 ParseScope FnScope(this, Scope::FnScope | Scope::DeclScope |
1508 ParseScope FnScope(this, Scope::FnScope | Scope::DeclScope |
1509 Scope::CompoundStmtScope);
tools/clang/lib/Parse/Parser.cpp 368 Scope *N = ScopeCache[--NumCachedScopes];
372 Actions.CurScope = new Scope(getCurScope(), ScopeFlags, Diags);
384 Scope *OldScope = getCurScope();
448 EnterScope(Scope::DeclScope);
1187 ParseScope BodyScope(this, Scope::FnScope | Scope::DeclScope |
1187 ParseScope BodyScope(this, Scope::FnScope | Scope::DeclScope |
1188 Scope::CompoundStmtScope);
1189 Scope *ParentScope = getCurScope()->getParent();
1218 ParseScope BodyScope(this, Scope::FnScope | Scope::DeclScope |
1218 ParseScope BodyScope(this, Scope::FnScope | Scope::DeclScope |
1219 Scope::CompoundStmtScope);
1220 Scope *ParentScope = getCurScope()->getParent();
1237 ParseScope BodyScope(this, Scope::FnScope | Scope::DeclScope |
1237 ParseScope BodyScope(this, Scope::FnScope | Scope::DeclScope |
1238 Scope::CompoundStmtScope);
1358 ParseScope PrototypeScope(this, Scope::FunctionPrototypeScope |
1359 Scope::FunctionDeclarationScope | Scope::DeclScope);
1359 Scope::FunctionDeclarationScope | Scope::DeclScope);
2043 for (Scope *S = getCurScope(); S; S = S->getParent()) {
2044 if (S->getFlags() & Scope::FnScope) {
2051 if (S->getFlags() & Scope::ClassScope) {
tools/clang/lib/Sema/IdentifierResolver.cpp 99 bool IdentifierResolver::isDeclInScope(Decl *D, DeclContext *Ctx, Scope *S,
124 if (S->getParent()->getFlags() & Scope::ControlScope) {
129 if (S->getFlags() & Scope::FnTryCatchScope)
tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp 245 bool MultiplexExternalSemaSource::LookupUnqualified(LookupResult &R, Scope *S){
316 int LookupKind, Scope *S, CXXScopeSpec *SS,
tools/clang/lib/Sema/Scope.cpp 20 void Scope::setFlags(Scope *parent, unsigned flags) {
87 void Scope::Init(Scope *parent, unsigned flags) {
98 const Scope *S = this;
187 if (const Scope *Parent = getParent())
tools/clang/lib/Sema/Sema.cpp 72 void Sema::ActOnTranslationUnitScope(Scope *S) {
1613 Scope *Sema::getScopeForContext(DeclContext *Ctx) {
1619 for (Scope *S = getCurScope(); S; S = S->getParent()) {
1622 if (S->getFlags() & (Scope::DeclScope | Scope::TemplateParamScope))
1622 if (S->getFlags() & (Scope::DeclScope | Scope::TemplateParamScope))
1644 void Sema::PushBlockScope(Scope *BlockScope, BlockDecl *Block) {
2163 void Sema::PushCapturedRegionScope(Scope *S, CapturedDecl *CD, RecordDecl *RD,
tools/clang/lib/Sema/SemaAttr.cpp 553 void Sema::ActOnPragmaUnused(const Token &IdTok, Scope *curScope,
807 void Sema::AddPragmaAttributes(Scope *S, Decl *D) {
tools/clang/lib/Sema/SemaCUDA.cpp 40 ExprResult Sema::ActOnCUDAExecConfigExpr(Scope *S, SourceLocation LLLLoc,
tools/clang/lib/Sema/SemaCXXScopeSpec.cpp 282 for (Scope *S = getCurScope(); S; S = S->getParent()) {
358 NamedDecl *Sema::FindFirstQualifierInScope(Scope *S, NestedNameSpecifier *NNS) {
383 bool Sema::isNonTypeNestedNameSpecifier(Scope *S, CXXScopeSpec &SS,
483 bool Sema::BuildCXXNestedNameSpecifier(Scope *S, NestedNameSpecInfo &IdInfo,
833 bool Sema::ActOnCXXNestedNameSpecifier(Scope *S, NestedNameSpecInfo &IdInfo,
878 bool Sema::IsInvalidUnlessNestedName(Scope *S, CXXScopeSpec &SS,
888 bool Sema::ActOnCXXNestedNameSpecifier(Scope *S,
1020 bool Sema::ShouldEnterDeclaratorScope(Scope *S, const CXXScopeSpec &SS) {
1069 bool Sema::ActOnCXXEnterDeclaratorScope(Scope *S, CXXScopeSpec &SS) {
1096 void Sema::ActOnCXXExitDeclaratorScope(Scope *S, const CXXScopeSpec &SS) {
tools/clang/lib/Sema/SemaChecking.cpp 456 Scope::ScopeFlags NeededScopeFlags,
464 Scope *S = SemaRef.getCurScope();
1438 if (SemaBuiltinSEHScopeCheck(*this, TheCall, Scope::SEHExceptScope,
1444 if (SemaBuiltinSEHScopeCheck(*this, TheCall, Scope::SEHFilterScope,
tools/clang/lib/Sema/SemaCodeComplete.cpp 1991 static void AddOrdinaryNameResults(Sema::ParserCompletionContext CCC, Scope *S,
2082 !(S->getFlags() & Scope::ClassInheritanceScope);
4056 void Sema::CodeCompleteOrdinaryName(Scope *S,
4143 static void AddClassMessageCompletions(Sema &SemaRef, Scope *S,
4149 void Sema::CodeCompleteDeclSpec(Scope *S, DeclSpec &DS,
4202 (S->getFlags() & Scope::DeclScope) != 0 &&
4203 (S->getFlags() & (Scope::ClassScope | Scope::TemplateParamScope |
4203 (S->getFlags() & (Scope::ClassScope | Scope::TemplateParamScope |
4204 Scope::FunctionPrototypeScope | Scope::AtCatchScope)) ==
4204 Scope::FunctionPrototypeScope | Scope::AtCatchScope)) ==
4331 void Sema::CodeCompleteExpression(Scope *S,
4402 void Sema::CodeCompleteExpression(Scope *S, QualType PreferredType,
4408 void Sema::CodeCompletePostfixExpression(Scope *S, ExprResult E,
4658 Sema &SemaRef, ResultBuilder &Results, Scope *S, QualType BaseType,
4682 for (Scope *DepScope = S; DepScope; DepScope = DepScope->getParent())
4695 void Sema::CodeCompleteMemberReferenceExpr(Scope *S, Expr *Base,
4836 void Sema::CodeCompleteObjCClassPropertyRefExpr(Scope *S,
4860 void Sema::CodeCompleteTag(Scope *S, unsigned TagSpec) {
4958 void Sema::CodeCompleteBracketDeclarator(Scope *S) {
4962 void Sema::CodeCompleteCase(Scope *S) {
5094 ProduceSignatureHelp(Sema &SemaRef, Scope *S,
5104 QualType Sema::ProduceCallSignatureHelp(Scope *S, Expr *Fn,
5200 QualType Sema::ProduceConstructorSignatureHelp(Scope *S, QualType Type,
5240 Scope *S, Decl *ConstructorDecl, CXXScopeSpec SS, ParsedType TemplateTypeTy,
5258 void Sema::CodeCompleteInitializer(Scope *S, Decl *D) {
5273 void Sema::CodeCompleteAfterIf(Scope *S) {
5332 void Sema::CodeCompleteQualifiedId(Scope *S, CXXScopeSpec &SS,
5411 void Sema::CodeCompleteUsing(Scope *S) {
5441 void Sema::CodeCompleteUsingDirective(Scope *S) {
5461 void Sema::CodeCompleteNamespaceDecl(Scope *S) {
5509 void Sema::CodeCompleteNamespaceAliasDecl(Scope *S) {
5526 void Sema::CodeCompleteOperatorName(Scope *S) {
5711 static bool isNamespaceScope(Scope *S) {
5719 void Sema::CodeCompleteLambdaIntroducer(Scope *S, LambdaIntroducer &Intro,
5858 void Sema::CodeCompleteObjCAtDirective(Scope *S) {
5995 void Sema::CodeCompleteObjCAtVisibility(Scope *S) {
6006 void Sema::CodeCompleteObjCAtStatement(Scope *S) {
6018 void Sema::CodeCompleteObjCAtExpression(Scope *S) {
6060 void Sema::CodeCompleteObjCPropertyFlags(Scope *S, ObjCDeclSpec &ODS) {
6278 void Sema::CodeCompleteObjCPropertyGetter(Scope *S) {
6304 void Sema::CodeCompleteObjCPropertySetter(Scope *S) {
6331 void Sema::CodeCompleteObjCPassingType(Scope *S, ObjCDeclSpec &DS,
6596 void Sema::CodeCompleteObjCMessageReceiver(Scope *S) {
6633 void Sema::CodeCompleteObjCSuperMessage(Scope *S, SourceLocation SuperLoc,
6728 static void AddClassMessageCompletions(Sema &SemaRef, Scope *S,
6803 void Sema::CodeCompleteObjCClassMessage(Scope *S, ParsedType Receiver,
6838 void Sema::CodeCompleteObjCInstanceMessage(Scope *S, Expr *Receiver,
6995 void Sema::CodeCompleteObjCForCollection(Scope *S,
7011 void Sema::CodeCompleteObjCSelector(Scope *S,
7113 void Sema::CodeCompleteObjCProtocolDecl(Scope *) {
7151 void Sema::CodeCompleteObjCInterfaceDecl(Scope *S) {
7169 void Sema::CodeCompleteObjCSuperclass(Scope *S, IdentifierInfo *ClassName,
7194 void Sema::CodeCompleteObjCImplementationDecl(Scope *S) {
7212 void Sema::CodeCompleteObjCInterfaceCategory(Scope *S,
7247 void Sema::CodeCompleteObjCImplementationCategory(Scope *S,
7288 void Sema::CodeCompleteObjCPropertyDefinition(Scope *S) {
7326 Scope *S, IdentifierInfo *PropertyName) {
8153 void Sema::CodeCompleteObjCMethodDecl(Scope *S, Optional<bool> IsInstanceMethod,
8327 Scope *S, bool IsInstanceMethod, bool AtParameterName, ParsedType ReturnTy,
8569 void Sema::CodeCompleteInPreprocessorConditionalExclusion(Scope *S) {
8626 void Sema::CodeCompletePreprocessorMacroArgument(Scope *S,
tools/clang/lib/Sema/SemaCoroutine.cpp 252 static ExprResult buildOperatorCoawaitLookupExpr(Sema &SemaRef, Scope *S,
283 static ExprResult buildOperatorCoawaitCall(Sema &SemaRef, Scope *S,
599 bool Sema::ActOnCoroutineBodyStart(Scope *SC, SourceLocation KWLoc,
651 static bool isWithinCatchScope(Scope *S) {
666 while (S && !(S->getFlags() & Scope::FnScope)) {
667 if (S->getFlags() & Scope::CatchScope)
692 ExprResult Sema::ActOnCoawaitExpr(Scope *S, SourceLocation Loc, Expr *E) {
791 ExprResult Sema::ActOnCoyieldExpr(Scope *S, SourceLocation Loc, Expr *E) {
846 StmtResult Sema::ActOnCoreturnStmt(Scope *S, SourceLocation Loc, Expr *E) {
tools/clang/lib/Sema/SemaDecl.cpp 282 Scope *S, CXXScopeSpec *SS,
608 DeclSpec::TST Sema::isTagName(IdentifierInfo &II, Scope *S) {
641 bool Sema::isMicrosoftMissingTypename(const CXXScopeSpec *SS, Scope *S) {
659 Scope *S,
785 Scope *S, CXXScopeSpec &SS,
848 Sema::NameClassification Sema::ClassifyName(Scope *S, CXXScopeSpec &SS,
1213 ExprResult Sema::ActOnNameClassifiedAsNonType(Scope *S, const CXXScopeSpec &SS,
1289 void Sema::PushDeclContext(Scope *S, DeclContext *DC) {
1303 Sema::SkippedDefinitionContext Sema::ActOnTagStartSkippedDefinition(Scope *S,
1324 void Sema::EnterDeclaratorContext(Scope *S, DeclContext *DC) {
1344 Scope *Ancestor = S->getParent();
1353 void Sema::ExitDeclaratorContext(Scope *S) {
1358 Scope *Ancestor = S->getParent();
1366 void Sema::ActOnReenterFunctionContext(Scope* S, Decl *D) {
1422 void Sema::PushOnScopeChains(NamedDecl *D, Scope *S, bool AddToContext) {
1482 bool Sema::isDeclInScope(NamedDecl *D, DeclContext *Ctx, Scope *S,
1487 Scope *Sema::getScopeForDeclContext(Scope *S, DeclContext *DC) {
1487 Scope *Sema::getScopeForDeclContext(Scope *S, DeclContext *DC) {
1504 void Sema::FilterLookupForScope(LookupResult &R, DeclContext *Ctx, Scope *S,
1881 void Sema::ActOnPopScope(SourceLocation Loc, Scope *S) {
1984 Scope *Sema::getNonFieldDeclScope(Scope *S) {
1984 Scope *Sema::getNonFieldDeclScope(Scope *S) {
1985 while (((S->getFlags() & Scope::DeclScope) == 0) ||
1996 static void LookupPredefedObjCSuperType(Sema &ThisSema, Scope *S,
2032 Scope *S, bool ForRedeclaration,
2207 void Sema::MergeTypedefNameDecl(Scope *S, TypedefNameDecl *New,
2293 Scope *EnumScope = getNonFieldDeclScope(S);
3158 Scope *S, bool MergeTypeWithOld) {
3759 Scope *S, bool MergeTypeWithOld) {
4281 Sema::ParsedFreeStandingDeclSpec(Scope *S, AccessSpecifier AS, DeclSpec &DS,
4293 static unsigned getMSManglingNumber(const LangOptions &LO, Scope *S) {
4299 void Sema::handleTagNumbering(const TagDecl *Tag, Scope *TagScope) {
4393 Sema::ParsedFreeStandingDeclSpec(Scope *S, AccessSpecifier AS, DeclSpec &DS,
4653 Scope *S,
4693 InjectAnonymousStructOrUnionMembers(Sema &SemaRef, Scope *S, DeclContext *Owner,
4811 Decl *Sema::BuildAnonymousStructOrUnion(Scope *S, DeclSpec &DS,
5089 Decl *Sema::BuildMicrosoftCAnonymousStruct(Scope *S, DeclSpec &DS,
5379 Decl *Sema::ActOnDeclarator(Scope *S, Declarator &D) {
5514 NamedDecl *Sema::HandleDeclarator(Scope *S, Declarator &D,
5534 while ((S->getFlags() & Scope::DeclScope) == 0 ||
5535 (S->getFlags() & Scope::TemplateParamScope) != 0)
5852 Sema::RegisterLocallyScopedExternCDecl(NamedDecl *ND, Scope *S) {
5887 Sema::ActOnTypedefDeclarator(Scope* S, Declarator& D, DeclContext* DC,
5934 Sema::CheckTypedefForVariablyModifiedType(Scope *S, TypedefNameDecl *NewTD) {
5974 Sema::ActOnTypedefNameDecl(Scope *S, DeclContext *DC, TypedefNameDecl *NewTD,
6427 static bool hasParsedAttr(Scope *S, const Declarator &PD,
6479 Scope *S, Declarator &D, DeclContext *DC, TypeSourceInfo *TInfo,
7382 void Sema::CheckShadow(Scope *S, VarDecl *D) {
7896 Scope *S;
7966 ActOnFDArgs &ExtraArgs, bool IsLocalFriend, Scope *S) {
8553 static Scope *getTagInjectionScope(Scope *S, const LangOptions &LangOpts) {
8553 static Scope *getTagInjectionScope(Scope *S, const LangOptions &LangOpts) {
8557 ((S->getFlags() & Scope::DeclScope) == 0) ||
8564 Sema::ActOnFunctionDeclarator(Scope *S, Declarator &D, DeclContext *DC,
10235 bool Sema::CheckFunctionDeclaration(Scope *S, FunctionDecl *NewFD,
12310 Sema::ActOnCXXForRangeIdentifier(Scope *S, SourceLocation IdentLoc,
12800 Sema::DeclGroupPtrTy Sema::FinalizeDeclaratorGroup(Scope *S, const DeclSpec &DS,
12946 void Sema::CheckFunctionOrTemplateParamDeclarator(Scope *S, Declarator &D) {
12985 Decl *Sema::ActOnParamDeclarator(Scope *S, Declarator &D) {
13227 void Sema::ActOnFinishKNRParamDeclarations(Scope *S, Declarator &D,
13264 Sema::ActOnStartOfFunctionDef(Scope *FnBodyScope, Declarator &D,
13269 Scope *ParentScope = FnBodyScope->getParent();
13483 Decl *Sema::ActOnStartOfFunctionDef(Scope *FnBodyScope, Decl *D,
14079 void Sema::ActOnFinishDelayedAttribute(Scope *S, Decl *D,
14094 IdentifierInfo &II, Scope *S) {
14100 Scope *BlockScope = S;
14104 Scope *ContextScope = BlockScope;
14347 TypedefDecl *Sema::ParseTypedefDecl(Scope *S, Declarator &D, QualType T,
14633 static FixItHint createFriendTagNNSFixIt(Sema &SemaRef, NamedDecl *ND, Scope *S,
14697 Decl *Sema::ActOnTag(Scope *S, unsigned TagSpec, TagUseKind TUK,
15589 if (Scope *EnclosingScope = getScopeForDeclContext(S, DC))
15633 void Sema::ActOnTagStartDefinition(Scope *S, Decl *TagD) {
15667 void Sema::ActOnStartCXXMemberDeclarations(Scope *S, Decl *TagD,
15704 void Sema::ActOnTagFinishDefinition(Scope *S, Decl *TagD,
15749 void Sema::ActOnTagDefinitionError(Scope *S, Decl *TagD) {
15861 Decl *Sema::ActOnField(Scope *S, Decl *TagD, SourceLocation DeclStart,
15871 FieldDecl *Sema::HandleField(Scope *S, RecordDecl *Record,
16252 Decl *Sema::ActOnIvar(Scope *S,
16400 void Sema::ActOnFields(Scope *S, SourceLocation RecLoc, Decl *EnclosingDecl,
17070 Sema::SkipBodyInfo Sema::shouldSkipAnonEnumBody(Scope *S, IdentifierInfo *II,
17096 Decl *Sema::ActOnEnumConstant(Scope *S, Decl *theEnumDecl, Decl *lastEnumConst,
17348 Decl *EnumDeclX, ArrayRef<Decl *> Elements, Scope *S,
tools/clang/lib/Sema/SemaDeclAttr.cpp 2073 static void handleDependencyAttr(Sema &S, Scope *Scope, Decl *D,
2078 if (!(Scope->getFlags() & clang::Scope::FunctionDeclarationScope)) {
6446 static void ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D,
7202 void Sema::ProcessDeclAttributeList(Scope *S, Decl *D,
7376 void Sema::DeclApplyPragmaWeak(Scope *S, NamedDecl *ND, WeakInfo &W) {
7401 void Sema::ProcessPragmaWeak(Scope *S, Decl *D) {
7429 void Sema::ProcessDeclAttributes(Scope *S, Decl *D, const Declarator &PD) {
tools/clang/lib/Sema/SemaDeclCXX.cpp 437 Scope *S) {
687 Sema::ActOnDecompositionDeclarator(Scope *S, Declarator &D,
2320 CXXRecordDecl *Sema::getCurrentClass(Scope *, const CXXScopeSpec *SS) {
2338 bool Sema::isCurrentClassName(const IdentifierInfo &II, Scope *S,
3147 Sema::ActOnCXXMemberDeclarator(Scope *S, AccessSpecifier AS, Declarator &D,
3969 Scope *S,
3985 Scope *S,
4047 Scope *S,
8366 Scope *S, SourceLocation RLoc, Decl *TagDecl, SourceLocation LBrac,
8467 unsigned Sema::ActOnReenterTemplateScope(Scope *S, Decl *D) {
8518 void Sema::ActOnStartDelayedMemberDeclarations(Scope *S, Decl *RecordD) {
8525 void Sema::ActOnFinishDelayedMemberDeclarations(Scope *S, Decl *RecordD) {
8533 void Sema::ActOnReenterCXXMethodParameter(Scope *S, ParmVarDecl *Param) {
8550 void Sema::ActOnStartDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) {
8558 void Sema::ActOnDelayedCXXMethodParameter(Scope *S, Decl *ParamD) {
8580 void Sema::ActOnFinishDelayedCXXMethodDeclaration(Scope *S, Decl *MethodD) {
9306 Scope *NamespcScope, SourceLocation InlineLoc, SourceLocation NamespaceLoc,
9316 Scope *DeclRegionScope = NamespcScope->getParent();
9802 static bool TryNamespaceTypoCorrection(Sema &S, LookupResult &R, Scope *Sc,
9830 Decl *Sema::ActOnUsingDirective(Scope *S, SourceLocation UsingLoc,
9913 void Sema::PushUsingDirective(Scope *S, UsingDirectiveDecl *UDir) {
9926 Decl *Sema::ActOnUsingDeclaration(Scope *S, AccessSpecifier AS,
10196 UsingShadowDecl *Sema::BuildUsingShadowDecl(Scope *S,
10266 void Sema::HideUsingShadowDecl(Scope *S, UsingShadowDecl *Shadow) {
10393 Scope *S, AccessSpecifier AS, SourceLocation UsingLoc,
10960 Decl *Sema::ActOnAliasDeclaration(Scope *S, AccessSpecifier AS,
11116 Decl *Sema::ActOnNamespaceAliasDef(Scope *S, SourceLocation NamespaceLoc,
11399 void Sema::CheckImplicitSpecialMemberDeclaration(Scope *S, FunctionDecl *FD) {
11480 Scope *S = getScopeForContext(ClassDecl);
11759 Scope *S = getScopeForContext(ClassDecl);
12385 Scope *S = getScopeForContext(ClassDecl);
12709 Scope *S = getScopeForContext(ClassDecl);
13094 Scope *S = getScopeForContext(ClassDecl);
13226 Scope *S = getScopeForContext(ClassDecl);
14192 Decl *Sema::ActOnStartLinkageSpecification(Scope *S, SourceLocation ExternLoc,
14232 Decl *Sema::ActOnFinishLinkageSpecification(Scope *S,
14243 Decl *Sema::ActOnEmptyDeclaration(Scope *S,
14258 VarDecl *Sema::BuildExceptionDeclaration(Scope *S,
14385 Decl *Sema::ActOnExceptionDeclarator(Scope *S, Declarator &D) {
14593 Decl *Sema::ActOnTemplatedFriendTag(Scope *S, SourceLocation FriendLoc,
14727 Decl *Sema::ActOnFriendTypeDecl(Scope *S, const DeclSpec &DS,
14818 NamedDecl *Sema::ActOnFriendFunctionDecl(Scope *S, Declarator &D,
14874 Scope *DCScope = S;
15060 Scope FakeDCScope(S, Scope::DeclScope, Diags);
15060 Scope FakeDCScope(S, Scope::DeclScope, Diags);
15086 if (Scope *EnclosingScope = getScopeForDeclContext(S, DC))
15507 void Sema::ActOnCXXEnterDeclInitializer(Scope *S, Decl *D) {
15528 void Sema::ActOnCXXExitDeclInitializer(Scope *S, Decl *D) {
15543 DeclResult Sema::ActOnCXXConditionDeclaration(Scope *S, Declarator &D) {
16144 MSPropertyDecl *Sema::HandleMSProperty(Scope *S, RecordDecl *Record,
tools/clang/lib/Sema/SemaDeclObjC.cpp 361 void Sema::ActOnStartOfObjCMethodDef(Scope *FnBodyScope, Decl *D) {
541 ActOnSuperClassOfClassInterface(Scope *S,
665 DeclResult Sema::actOnObjCTypeParam(Scope *S,
769 ObjCTypeParamList *Sema::actOnObjCTypeParamList(Scope *S,
804 void Sema::popObjCTypeParamList(Scope *S, ObjCTypeParamList *typeParamList) {
976 Scope *S, SourceLocation AtInterfaceLoc, IdentifierInfo *ClassName,
1406 Scope *S,
2950 void Sema::ImplMethodsVsClassMethods(Scope *S, ObjCImplDecl* IMPDecl,
3891 Decl *Sema::ActOnAtEnd(Scope *S, SourceRange AtEnd, ArrayRef<Decl *> allMethods,
4540 Scope *S, SourceLocation MethodLoc, SourceLocation EndLoc,
4810 void Sema::ActOnDefs(Scope *S, Decl *TagD, SourceLocation DeclStart,
4897 Decl *Sema::ActOnObjCExceptionDecl(Scope *S, Declarator &D) {
5050 void Sema::DiagnoseUnusedBackingIvarInAccessor(Scope *S,
tools/clang/lib/Sema/SemaExpr.cpp 1920 bool Sema::DiagnoseEmptyLookup(Scope *S, CXXScopeSpec &SS, LookupResult &R,
2491 DeclResult Sema::LookupIvarInObjCMethod(LookupResult &Lookup, Scope *S,
12047 ? Scope::ControlScope | Scope::ContinueScope | Scope::BreakScope
12047 ? Scope::ControlScope | Scope::ContinueScope | Scope::BreakScope
12047 ? Scope::ControlScope | Scope::ContinueScope | Scope::BreakScope
12048 : Scope::ContinueScope | Scope::BreakScope;
12048 : Scope::ContinueScope | Scope::BreakScope;
12049 const unsigned ForInitFlags = Scope::ControlScope | Scope::DeclScope;
12049 const unsigned ForInitFlags = Scope::ControlScope | Scope::DeclScope;
14081 void Sema::ActOnBlockStart(SourceLocation CaretLoc, Scope *CurScope) {
14111 Scope *CurScope) {
14227 void Sema::ActOnBlockError(SourceLocation CaretLoc, Scope *CurScope) {
17299 Sema::ConditionResult Sema::ActOnCondition(Scope *S, SourceLocation Loc,
tools/clang/lib/Sema/SemaExprCXX.cpp 84 Scope *S, CXXScopeSpec &SS,
135 Scope *S, CXXScopeSpec &SS,
745 (Scope::FnScope | Scope::ClassScope | Scope::BlockScope |
745 (Scope::FnScope | Scope::ClassScope | Scope::BlockScope |
745 (Scope::FnScope | Scope::ClassScope | Scope::BlockScope |
746 Scope::FunctionPrototypeScope | Scope::ObjCMethodScope |
746 Scope::FunctionPrototypeScope | Scope::ObjCMethodScope |
747 Scope::TryScope))
8046 Sema::CheckMicrosoftIfExistsSymbol(Scope *S,
8081 Sema::CheckMicrosoftIfExistsSymbol(Scope *S, SourceLocation KeywordLoc,
tools/clang/lib/Sema/SemaExprMember.cpp 239 const Scope *S) {
751 const Scope *S,
926 static bool IsInFnTryBlockHandler(const Scope *S) {
931 if (S->getFlags() & Scope::FnTryCatchScope)
932 return (S->getFlags() & Scope::TryScope) != Scope::TryScope;
932 return (S->getFlags() & Scope::TryScope) != Scope::TryScope;
967 const Scope *S,
1685 ExprResult Sema::ActOnMemberAccessExpr(Scope *S, Expr *Base,
1838 bool IsKnownInstance, const Scope *S) {
tools/clang/lib/Sema/SemaExprObjC.cpp 2124 Sema::ObjCMessageKind Sema::getObjCMessageKind(Scope *S,
2222 ExprResult Sema::ActOnSuperMessage(Scope *S,
2591 ExprResult Sema::ActOnClassMessage(Scope *S,
3211 ExprResult Sema::ActOnInstanceMessage(Scope *S,
4544 ExprResult Sema::ActOnObjCBridgedCast(Scope *S,
tools/clang/lib/Sema/SemaLambda.cpp 539 CXXMethodDecl *CallOperator, Scope *CurScope) {
886 Scope *CurScope) {
894 auto *TemplateParamScope = CurScope->getTemplateParamParent();
1233 void Sema::ActOnLambdaError(SourceLocation StartLoc, Scope *CurScope,
1532 Scope *CurScope) {
tools/clang/lib/Sema/SemaLookup.cpp 103 void visitScopeChain(Scope *S, Scope *InnermostFileScope) {
103 void visitScopeChain(Scope *S, Scope *InnermostFileScope) {
1120 static bool isNamespaceOrTranslationUnitScope(Scope *S) {
1133 static std::pair<DeclContext *, bool> findOuterContext(Scope *S) {
1136 for (Scope *OuterS = S->getParent(); OuterS;
1173 Scope *OutermostTemplateScope = S->getParent();
1216 bool Sema::CppLookupName(LookupResult &R, Scope *S) {
1225 for (Scope *PreS = S; PreS; PreS = PreS->getParent())
1233 Scope *Initial = S;
1376 Scope *InnermostFileScope = S;
1914 bool Sema::LookupName(LookupResult &R, Scope *S, bool AllowBuiltinCreation) {
1925 while (!(S->getFlags() & Scope::DeclScope) ||
2459 bool Sema::LookupParsedName(LookupResult &R, Scope *S, CXXScopeSpec *SS,
3021 NamedDecl *Sema::LookupSingleName(Scope *S, DeclarationName Name,
3039 void Sema::LookupOverloadedOperatorName(OverloadedOperatorKind Op, Scope *S,
3378 Sema::LookupLiteralOperator(Scope *S, LookupResult &R,
3719 void lookupVisibleDecls(Sema &SemaRef, Scope *S, Sema::LookupNameKind Kind,
3723 Scope *Initial = S;
3938 void lookupInScope(Scope *S, LookupResult &Result,
4038 void Sema::LookupVisibleDecls(Scope *S, LookupNameKind Kind,
4066 Scope *S = CurScope;
4080 Scope *S = CurScope->getFnParent();
4100 Scope *S, CXXScopeSpec *SS,
4595 Scope *S, CXXScopeSpec *SS,
4648 Scope *S, CorrectionCandidateCallback &CCC,
4799 Scope *S, CXXScopeSpec *SS, CorrectionCandidateCallback &CCC,
4974 Scope *S, CXXScopeSpec *SS,
5109 Scope *S, CXXScopeSpec *SS, CorrectionCandidateCallback &CCC,
5501 void Sema::ActOnPragmaDump(Scope *S, SourceLocation IILoc, IdentifierInfo *II) {
tools/clang/lib/Sema/SemaModule.cpp 525 Decl *Sema::ActOnStartExportDecl(Scope *S, SourceLocation ExportLoc,
691 Decl *Sema::ActOnFinishExportDecl(Scope *S, Decl *D, SourceLocation RBraceLoc) {
tools/clang/lib/Sema/SemaObjCProperty.cpp 177 Decl *Sema::ActOnProperty(Scope *S, SourceLocation AtLoc,
412 Sema::HandlePropertyInClassExtension(Scope *S,
564 ObjCPropertyDecl *Sema::CreatePropertyDecl(Scope *S,
1044 Decl *Sema::ActOnPropertyImplDecl(Scope *S,
1833 void Sema::DefaultSynthesizeProperties(Scope *S, ObjCImplDecl *IMPDecl,
1926 void Sema::DefaultSynthesizeProperties(Scope *S, Decl *D,
1975 void Sema::DiagnoseUnimplementedProperties(Scope *S, ObjCImplDecl* IMPDecl,
tools/clang/lib/Sema/SemaOpenMP.cpp 131 Scope *CurScope = nullptr;
156 Scope *CurScope, SourceLocation Loc)
309 Scope *CurScope, SourceLocation Loc) {
719 Scope *getCurScope() const {
1232 Scope *TopScope = I->CurScope ? I->CurScope->getParent() : nullptr;
1233 Scope *CurScope = getCurScope();
2132 Scope *CurScope, SourceLocation Loc) {
2206 Scope *S, DSAStackTy *Stack);
3091 void Sema::ActOnOpenMPRegionStart(OpenMPDirectiveKind DKind, Scope *CurScope) {
5369 Scope *S, ArrayRef<LoopIterationSpace> ResultIterSpaces, bool LimitedType,
5373 buildPreCond(Scope *S, Expr *Cond,
5389 buildOrderedLoopData(Scope *S, Expr *Counter,
5395 Scope *S, llvm::MapVector<const Expr *, DeclRefExpr *> &Captures) const;
5397 Expr *buildFinalCondition(Scope *S) const;
5946 Scope *S, ArrayRef<LoopIterationSpace> ResultIterSpaces, bool LimitedType,
6204 Scope *S, llvm::MapVector<const Expr *, DeclRefExpr *> &Captures) const {
6318 Expr *OpenMPIterationSpaceChecker::buildFinalCondition(Scope *S) const {
6325 Scope *S, Expr *Cond,
6406 Scope *S, Expr *Counter,
7051 Scope *CurScope = DSA.getCurScope();
13930 Scope *S, DSAStackTy *Stack) {
15579 Scope *S, DeclContext *DC, DeclarationName Name,
15660 void Sema::ActOnOpenMPDeclareReductionCombinerStart(Scope *S, Decl *D) {
15721 VarDecl *Sema::ActOnOpenMPDeclareReductionInitializerStart(Scope *S, Decl *D) {
15790 Scope *S, DeclGroupPtrTy DeclReductions, bool IsValid) {
15803 TypeResult Sema::ActOnOpenMPDeclareMapperVarDecl(Scope *S, Declarator &D) {
15834 Scope *S, DeclContext *DC, DeclarationName Name, QualType MapperType,
15912 Scope *S,
15926 Sema::ActOnOpenMPDeclareMapperDirectiveEnd(OMPDeclareMapperDecl *D, Scope *S,
16175 Sema::lookupOpenMPDeclareTargetName(Scope *CurScope, CXXScopeSpec &ScopeSpec,
tools/clang/lib/Sema/SemaOverload.cpp 994 Sema::CheckOverload(Scope *S, FunctionDecl *New, const LookupResult &Old,
12226 BuildRecoveryCallExpr(Sema &SemaRef, Scope *S, Expr *Fn,
12307 bool Sema::buildOverloadedCallSet(Scope *S, Expr *Fn,
12374 static ExprResult FinishOverloadedCallExpr(Sema &SemaRef, Scope *S, Expr *Fn,
12481 ExprResult Sema::BuildOverloadedCallExpr(Scope *S, Expr *Fn,
13304 Sema::BuildCallToMemberFunction(Scope *S, Expr *MemExprE,
13586 Sema::BuildCallToObjectOfClassType(Scope *S, Expr *Obj,
13868 Sema::BuildOverloadedArrowExpr(Scope *S, Expr *Base, SourceLocation OpLoc,
14074 Scope *S = nullptr;
tools/clang/lib/Sema/SemaPseudoObject.cpp 216 ExprResult buildAssignmentOperation(Scope *Sc,
220 ExprResult buildIncDecOperation(Scope *Sc, SourceLocation opLoc,
289 ExprResult buildAssignmentOperation(Scope *Sc,
293 ExprResult buildIncDecOperation(Scope *Sc, SourceLocation opLoc,
328 ExprResult buildAssignmentOperation(Scope *Sc,
431 PseudoOpBuilder::buildAssignmentOperation(Scope *Sc, SourceLocation opcLoc,
496 PseudoOpBuilder::buildIncDecOperation(Scope *Sc, SourceLocation opcLoc,
892 ObjCPropertyOpBuilder::buildAssignmentOperation(Scope *Sc,
939 ObjCPropertyOpBuilder::buildIncDecOperation(Scope *Sc, SourceLocation opcLoc,
1000 ObjCSubscriptOpBuilder::buildAssignmentOperation(Scope *Sc,
1560 ExprResult Sema::checkPseudoObjectIncDec(Scope *Sc, SourceLocation opcLoc,
1589 ExprResult Sema::checkPseudoObjectAssignment(Scope *S, SourceLocation opcLoc,
tools/clang/lib/Sema/SemaStmt.cpp 505 Stmt *SubStmt, Scope *CurScope) {
1749 Scope *BreakParent = CurScope->getBreakParent();
1751 if (BreakParent->getFlags() & Scope::SwitchScope) {
2093 StmtResult Sema::ActOnCXXForRangeStmt(Scope *S, SourceLocation ForLoc,
2303 static StmtResult RebuildForRangeWithDereference(Sema &SemaRef, Scope *S,
2372 Scope *S = getCurScope();
2912 const Scope &DestScope) {
2920 Sema::ActOnContinueStmt(SourceLocation ContinueLoc, Scope *CurScope) {
2921 Scope *S = CurScope->getContinueParent();
2932 Sema::ActOnBreakStmt(SourceLocation BreakLoc, Scope *CurScope) {
2933 Scope *S = CurScope->getBreakParent();
3555 Scope *CurScope) {
3874 Scope *CurScope) {
3881 Scope *AtCatchParent = CurScope;
4217 Sema::ActOnSEHLeaveStmt(SourceLocation Loc, Scope *CurScope) {
4218 Scope *SEHTryParent = CurScope;
4318 void Sema::ActOnCapturedRegionStart(SourceLocation Loc, Scope *CurScope,
4347 void Sema::ActOnCapturedRegionStart(SourceLocation Loc, Scope *CurScope,
tools/clang/lib/Sema/SemaTemplate.cpp 128 TemplateNameKind Sema::isTemplateName(Scope *S,
268 bool Sema::isDeductionGuideName(Scope *S, const IdentifierInfo &Name,
303 Scope *S,
327 Scope *S, CXXScopeSpec &SS,
565 void Sema::diagnoseExprIntendedAsTemplateName(Scope *S, ExprResult TemplateName,
910 static void maybeDiagnoseTemplateParameterShadow(Sema &SemaRef, Scope *S,
978 NamedDecl *Sema::ActOnTypeParameter(Scope *S, bool Typename,
1113 NamedDecl *Sema::ActOnNonTypeTemplateParameter(Scope *S, Declarator &D,
1248 NamedDecl *Sema::ActOnTemplateTemplateParameter(Scope* S,
1352 Scope *S, unsigned TagSpec, TagUseKind TUK, SourceLocation KWLoc,
1677 Scope *Outer = S;
1678 while ((Outer->getFlags() & Scope::TemplateParamScope) != 0)
1693 if (Scope *EnclosingScope = getScopeForDeclContext(S, DC))
3390 void Sema::ActOnUndeclaredTypeTemplateName(Scope *S, TemplateTy &ParsedName,
3408 bool Sema::resolveAssumedTemplateNameAsType(Scope *S, TemplateName &Name,
3444 Scope *S, CXXScopeSpec &SS, SourceLocation TemplateKWLoc,
3833 Scope *S, Declarator &D, TypeSourceInfo *DI, SourceLocation TemplateKWLoc,
4375 TemplateNameKind Sema::ActOnDependentTemplateName(Scope *S,
7373 Sema::CheckTemplateDeclScope(Scope *S, TemplateParameterList *TemplateParams) {
7378 while ((S->getFlags() & Scope::DeclScope) == 0 ||
7379 (S->getFlags() & Scope::TemplateParamScope) != 0)
7674 Scope *S, unsigned TagSpec, TagUseKind TUK, SourceLocation KWLoc,
8040 Decl *Sema::ActOnTemplateDeclarator(Scope *S,
8048 Decl *Sema::ActOnConceptDefinition(Scope *S,
8949 Scope *S, SourceLocation ExternLoc, SourceLocation TemplateLoc,
9247 Sema::ActOnExplicitInstantiation(Scope *S, SourceLocation ExternLoc,
9361 DeclResult Sema::ActOnExplicitInstantiation(Scope *S,
9380 while ((S->getFlags() & Scope::DeclScope) == 0 ||
9381 (S->getFlags() & Scope::TemplateParamScope) != 0)
9764 Sema::ActOnDependentTag(Scope *S, unsigned TagSpec, TagUseKind TUK,
9796 Sema::ActOnTypenameType(Scope *S, SourceLocation TypenameLoc,
9832 Sema::ActOnTypenameType(Scope *S,
tools/clang/lib/Sema/SemaTemplateVariadic.cpp 974 ExprResult Sema::ActOnSizeofParameterPackExpr(Scope *S,
tools/clang/lib/Sema/SemaType.cpp 1137 Scope *S,
5285 TypeSourceInfo *Sema::GetTypeForDeclarator(Declarator &D, Scope *S) {
5850 TypeResult Sema::ActOnTypeName(Scope *S, Declarator &D) {
tools/clang/tools/extra/clang-include-fixer/IncludeFixer.cpp 185 const DeclarationNameInfo &Typo, int LookupKind, Scope *S, CXXScopeSpec *SS,
tools/clang/tools/extra/clang-include-fixer/IncludeFixer.h 105 int LookupKind, Scope *S, CXXScopeSpec *SS,
tools/clang/tools/extra/clangd/IncludeFixer.cpp 306 collectAccessibleScopes(Sema &Sem, const DeclarationNameInfo &Typo, Scope *S,
332 Scope *S, CXXScopeSpec *SS,
tools/clang/unittests/Frontend/FrontendActionTest.cpp 204 Scope *S, CXXScopeSpec *SS,
tools/clang/unittests/Sema/ExternalSemaSourceTest.cpp 108 Scope *S, CXXScopeSpec *SS,
150 Scope *S, CXXScopeSpec *SS,
tools/lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h 477 bool LookupUnqualified(clang::LookupResult &R, clang::Scope *S) override {
555 clang::Scope *S, clang::CXXScopeSpec *SS,
tools/lldb/source/Symbol/CxxModuleHandler.cpp 48 std::vector<Scope *> &result) {
55 Scope *scope =
56 new Scope(result.back(), Scope::DeclScope, sema.getDiagnostics());
56 new Scope(result.back(), Scope::DeclScope, sema.getDiagnostics());
76 std::vector<Scope *> scopes;
84 for (Scope *s : scopes)
usr/include/c++/7.4.0/type_traits 1558 { typedef _Tp type; };