Decl - This represents one declaration (or definition), e.g. More...
#include "clang/AST/DeclBase.h"
Decl
represents a declaration for a body of code, such as a function or method definition.
Decl - This represents one declaration (or definition), e.g.
a variable, typedef, function, struct, etc.
Note: There are objects tacked on before the beginning of Decl (and its subclasses) in its Decl::operator new(). Proper alignment of all subclasses (not requiring more than the alignment of Decl) is asserted in DeclBase.cpp.
Definition at line 86 of file DeclBase.h.
◆ attr_iterator ◆ attr_range ◆ redecl_range ◆ FriendObjectKind Enumerator FOK_NoneNot a friend object.
FOK_DeclaredA friend of a previously-declared entity.
FOK_UndeclaredA friend of a previously-undeclared entity.
Definition at line 1209 of file DeclBase.h.
◆ IdentifierNamespaceIdentifierNamespace - The different namespaces in which declarations may appear.
According to C99 6.2.3, there are four namespaces, labels, tags, members and ordinary identifiers. C++ describes lookup completely differently: certain lookups merely "ignore" certain kinds of declarations, usually based on whether the declaration is of a type, etc.
These are meant as bitmasks, so that searches in C++ can look into the "tag" namespace during ordinary lookup.
Decl currently provides 15 bits of IDNS bits.
Enumerator IDNS_LabelLabels, declared with 'x:' and referenced with 'goto x'.
IDNS_TagTags, declared with 'struct foo;' and referenced with 'struct foo'.
All tags are also types. This is what elaborated-type-specifiers look for in C. This also contains names that conflict with tags in the same scope but that are otherwise ordinary names (non-type template parameters and indirect field declarations).
IDNS_TypeTypes, declared with 'struct foo', typedefs, etc.
This is what elaborated-type-specifiers look for in C++, but note that it's ill-formed to find a non-tag.
IDNS_MemberMembers, declared with object declarations within tag definitions.
In C, these can only be found by "qualified" lookup in member expressions. In C++, they're found by normal lookup.
IDNS_NamespaceNamespaces, declared with 'namespace foo {}'.
Lookup for nested-name-specifiers find these.
IDNS_OrdinaryOrdinary names.
In C, everything that's not a label, tag, member, or function-local extern ends up here.
IDNS_ObjCProtocolObjective C @protocol.
IDNS_OrdinaryFriendThis declaration is a friend function.
A friend function declaration is always in this namespace but may also be in IDNS_Ordinary if it was previously declared.
IDNS_TagFriendThis declaration is a friend class.
A friend class declaration is always in this namespace but may also be in IDNS_Tag|IDNS_Type if it was previously declared.
IDNS_UsingThis declaration is a using declaration.
A using declaration introduces a number of other declarations into the current scope, and those declarations use the IDNS of their targets, but the actual using declarations go in this namespace.
IDNS_NonMemberOperatorThis declaration is a C++ operator declared in a non-class context.
All such operators are also in IDNS_Ordinary. C++ lexical operator lookup looks for these.
IDNS_LocalExternThis declaration is a function-local extern declaration of a variable or function.
This may also be IDNS_Ordinary if it has been declared outside any function. These act mostly like invisible friend declarations, but are also visible to unqualified lookup within the scope of the declaring function.
IDNS_OMPReductionThis declaration is an OpenMP user defined reduction construction.
IDNS_OMPMapperThis declaration is an OpenMP user defined mapper.
Definition at line 115 of file DeclBase.h.
◆ KindLists the kind of concrete classes of Decl.
Definition at line 89 of file DeclBase.h.
◆ ModuleOwnershipKindThe kind of ownership a declaration has, for visibility purposes.
This enumeration is designed such that higher values represent higher levels of name hiding.
Enumerator UnownedThis declaration is not owned by a module.
VisibleThis declaration has an owning module, but is globally visible (typically because its owning module is visible and we know that modules cannot later become hidden in this compilation).
After serialization and deserialization, this will be converted to VisibleWhenImported.
VisibleWhenImportedThis declaration has an owning module, and is visible when that module is imported.
ReachableWhenImportedThis declaration has an owning module, and is visible to lookups that occurs within that module.
And it is reachable in other module when the owning module is transitively imported.
ModulePrivateThis declaration has an owning module, but is only visible to lookups that occur within that module.
The discarded declarations in global module fragment belongs to this group too.
Definition at line 216 of file DeclBase.h.
◆ ObjCDeclQualifierObjCDeclQualifier - 'Qualifiers' written next to the return and parameter types in method declarations.
Other than remembering them and mangling them into the method's signature string, these are ignored by the compiler; they are consumed by certain remote-messaging frameworks.
in, inout, and out are mutually exclusive and apply only to method parameters. bycopy and byref are mutually exclusive and apply only to method parameters (?). oneway applies only to results. All of these expect their corresponding parameter to have a particular type. None of this is currently enforced by clang.
This should be kept in sync with ObjCDeclSpec::ObjCDeclQualifier.
Enumerator OBJC_TQ_None OBJC_TQ_In OBJC_TQ_Inout OBJC_TQ_Out OBJC_TQ_Bycopy OBJC_TQ_Byref OBJC_TQ_Oneway OBJC_TQ_CSNullabilityThe nullability qualifier is set when the nullability of the result or parameter was expressed via a context-sensitive keyword.
Definition at line 198 of file DeclBase.h.
◆ Decl() [1/5] ◆ Decl() [2/5] clang::Decl::Decl ( const Decl & ) delete ◆ Decl() [3/5] clang::Decl::Decl ( Decl && ) delete ◆ Decl() [4/5] ◆ Decl() [5/5] ◆ ~Decl() ◆ add() void Decl::add ( Kind k ) static ◆ addAttr() void Decl::addAttr ( Attr * A )Definition at line 1019 of file DeclBase.cpp.
References E, getAttrs(), hasAttrs(), clang::Attr::isInherited(), and setAttrs().
Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFields(), clang::SemaOpenMP::ActOnFinishedFunctionDefinitionInOpenMPAssumeScope(), clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnMethodDeclaration(), clang::SemaOpenMP::ActOnOpenMPDeclareSimdDirective(), clang::SemaOpenMP::ActOnOpenMPDeclareTargetName(), clang::SemaOpenMP::ActOnOpenMPDeclareVariantDirective(), clang::Sema::ActOnPragmaRedefineExtname(), clang::Sema::ActOnPragmaUnused(), clang::Sema::ActOnPragmaWeakID(), clang::Sema::ActOnStartOfLambdaDefinition(), clang::SemaHLSL::ActOnTopLevelFunction(), clang::Sema::ActOnTypedefNameDecl(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::AddAlignedAttr(), clang::Sema::AddAlignmentAttributesForRecord(), clang::Sema::AddAlignValueAttr(), clang::Sema::AddAllocAlignAttr(), clang::Sema::AddAssumeAlignedAttr(), clang::Sema::AddImplicitMSFunctionNoBuiltinAttr(), clang::Sema::AddKnownFunctionAttributes(), clang::Sema::AddKnownFunctionAttributesForReplaceableGlobalAllocationFunction(), clang::Sema::AddLaunchBoundsAttr(), clang::Sema::AddModeAttr(), clang::Sema::AddMsStructLayoutForRecord(), clang::Sema::AddOptnoneAttributeIfNoConflicts(), AddPropertyAttrs(), clang::Sema::AddPushedVisibilityAttribute(), clang::Sema::AddSectionMSAllocText(), applyOMPAllocateAttribute(), assignInheritanceModel(), clang::ASTContext::buildImplicitRecord(), buildVarDecl(), clang::SemaObjC::CheckARCMethodDecl(), clang::Sema::checkClassLevelDLLAttribute(), clang::SemaOpenMP::checkDeclIsAllowedInOpenMPTarget(), checkDLLAttributeRedeclaration(), clang::Sema::CheckFunctionDeclaration(), clang::SemaObjC::checkInitMethod(), clang::Sema::CheckNontrivialField(), clang::SemaOpenMP::CheckOMPThreadPrivateDecl(), clang::Sema::CheckStaticLocalForDllExport(), copyAttrFromTypedefToDecl(), copyAttrIfPresent(), clang::Sema::CreateBuiltin(), createPrivatesRecordDecl(), clang::Sema::DeclApplyPragmaWeak(), clang::Sema::FinalizeDeclaration(), handleAbiTagAttr(), handleAcquireCapabilityAttr(), handleAcquiredAfterAttr(), handleAcquiredBeforeAttr(), handleAcquireHandleAttr(), handleAliasAttr(), handleAlignedAttr(), handleAllocSizeAttr(), handleAlwaysInlineAttr(), handleAnalyzerNoReturnAttr(), handleAnnotateAttr(), handleArgumentWithTypeTagAttr(), handleAssertCapabilityAttr(), handleAssertExclusiveLockAttr(), handleAssertSharedLockAttr(), handleAttrWithMessage(), handleAvailabilityAttr(), handleBTFDeclTagAttr(), handleBuiltinAliasAttr(), handleCallableWhenAttr(), handleCallbackAttr(), handleCallConvAttr(), handleCalledOnceAttr(), handleCapabilityAttr(), handleCFGuardAttr(), handleCleanupAttr(), handleCodeModelAttr(), handleCodeSegAttr(), handleCommonAttr(), handleConstantAttr(), handleConstructorAttr(), handleConsumableAttr(), handleCPUSpecificAttr(), handleDeclspecThreadAttr(), handleDelayedForbiddenType(), handleDependencyAttr(), handleDeprecatedAttr(), handleDestructorAttr(), handleDeviceAttr(), handleDiagnoseAsBuiltinAttr(), handleDiagnoseIfAttr(), handleDLLAttr(), handleEnableIfAttr(), handleEnforceTCBAttr(), handleEnumExtensibilityAttr(), handleErrorAttr(), handleExcludeFromExplicitInstantiationAttr(), handleExclusiveTrylockFunctionAttr(), handleExternalSourceSymbolAttr(), handleFormatArgAttr(), handleFormatAttr(), handleFunctionReturnThunksAttr(), handleGlobalAttr(), handleGNUInlineAttr(), handleGridConstantAttr(), handleGuardedByAttr(), handleHandleAttr(), handleIFuncAttr(), handleInitPriorityAttr(), handleInternalLinkageAttr(), clang::SemaRISCV::handleInterruptAttr(), clang::SemaSYCL::handleKernelEntryPointAttr(), handleLayoutVersion(), handleLifetimeCaptureByAttr(), handleLockReturnedAttr(), handleLocksExcludedAttr(), handleManagedAttr(), handleMinSizeAttr(), handleMinVectorWidthAttr(), handleMSConstexprAttr(), handleMSInheritanceAttr(), handleNakedAttr(), handleNoBuiltinAttr(), handleNoDebugAttr(), handleNoEscapeAttr(), handleNoMergeAttr(), handleNonNullAttr(), handleNonNullAttrParameter(), handleNoRandomizeLayoutAttr(), handleNoReturnAttr(), handleNoSanitizeAttr(), handleNoSanitizeSpecificAttr(), handleNoSpecializations(), handleNoUniqueAddressAttr(), clang::SemaHLSL::handleNumThreadsAttr(), clang::SemaOpenMP::handleOMPAssumeAttr(), handleOptimizeNoneAttr(), handleOwnershipAttr(), handlePackedAttr(), clang::SemaHLSL::handlePackOffsetAttr(), clang::SemaHLSL::handleParamModifierAttr(), handleParamTypestateAttr(), handlePassObjectSizeAttr(), handlePatchableFunctionEntryAttr(), handlePreferredName(), handlePreferredTypeAttr(), handlePtGuardedByAttr(), handlePtGuardedVarAttr(), handleRandomizeLayoutAttr(), handleReleaseCapabilityAttr(), handleRequiresCapabilityAttr(), clang::SemaHLSL::handleResourceBindingAttr(), handleRestrictAttr(), handleReturnsNonNullAttr(), handleReturnTypestateAttr(), handleSectionAttr(), handleSentinelAttr(), handleSetTypestateAttr(), clang::SemaHLSL::handleShaderAttr(), handleSharedAttr(), handleSharedTrylockFunctionAttr(), clang::handleSimpleAttribute(), handleStandardNoReturnAttr(), handleSuppressAttr(), clang::SemaHLSL::handleSV_DispatchThreadIDAttr(), clang::SemaHLSL::handleSV_GroupIDAttr(), clang::SemaHLSL::handleSV_GroupThreadIDAttr(), handleTargetAttr(), handleTargetClonesAttr(), handleTargetVersionAttr(), handleTestTypestateAttr(), handleTLSModelAttr(), handleTransparentUnionAttr(), handleTryAcquireCapabilityAttr(), handleTypeTagForDatatypeAttr(), handleUninitializedAttr(), handleUnsafeBufferUsage(), handleUnusedAttr(), handleUuidAttr(), handleVecReturnAttr(), handleVecTypeHint(), handleVisibilityAttr(), handleVTablePointerAuthentication(), handleWarnUnusedResult(), clang::SemaHLSL::handleWaveSizeAttr(), handleWeakImportAttr(), handleWeakRefAttr(), handleWorkGroupSize(), handleXRayLogArgsAttr(), handleZeroCallUsedRegsAttr(), clang::ASTImporter::Import(), clang::SemaCUDA::inferTargetForImplicitSpecialMember(), InjectAnonymousStructOrUnionMembers(), InsertOCLBuiltinDeclarationsFromTable(), clang::Sema::InstantiateAttrs(), clang::Sema::InstantiateAttrsForDecl(), instantiateDependentAnnotationAttr(), instantiateDependentDiagnoseIfAttr(), instantiateDependentEnableIfAttr(), instantiateDependentSYCLKernelAttr(), clang::Sema::makeUnavailableInSystemHeader(), clang::SemaCUDA::MaybeAddConstantAttr(), clang::SemaCUDA::maybeAddHostDeviceAttrs(), mergeAlignedAttrs(), mergeDeclAttribute(), clang::Sema::mergeDeclAttributes(), clang::Sema::MergeFunctionDecl(), mergeInterfaceMethodToImpl(), mergeObjCDirectMembers(), patchDefaultTargetVersion(), ProcessAPINotes(), clang::SemaObjC::ProcessPropertyDecl(), propagateAttribute(), clang::Sema::propagateDLLAttrToBaseClassTemplate(), clang::RecordDecl::setCapturedRecord(), clang::SemaCUDA::SetLambdaAttrs(), clang::Sema::updateAttrsForLateParsedTemplate(), clang::ASTDeclReader::UpdateDecl(), and GlobalDeclRefChecker::VisitDeclRefExpr().
◆ attr_begin() ◆ attr_end() ◆ attrs()Definition at line 538 of file DeclBase.h.
References attr_begin(), and attr_end().
Referenced by checkNonMultiVersionCompatAttributes(), clang::Sema::checkThisInStaticMemberFunctionAttributes(), DeclHasAttr(), clang::tooling::getAssociatedRange(), getAttrForPlatform(), getAvailability(), getVersionIntroduced(), handleAPINotedRetainCountAttribute(), hasAttribute(), hasUnsupportedSpecifiers(), InjectAnonymousStructOrUnionMembers(), clang::threadSafety::BeforeSet::insertAttrExprs(), clang::Sema::InstantiateAttrs(), clang::Sema::InstantiateAttrsForDecl(), isWeakImported(), ProcessAPINotes(), and clang::Sema::updateAttrsForLateParsedTemplate().
◆ canBeWeakImported() bool Decl::canBeWeakImported ( bool & IsDefinition ) const ◆ castFromDeclContext() ◆ castToDeclContext() ◆ classofKind() ◆ clearIdentifierNamespace() void clang::Decl::clearIdentifierNamespace ( ) inlineClears the namespace of this declaration.
This is useful if we want this declaration to be available for redeclaration lookup but otherwise hidden for ordinary name lookups.
Definition at line 1207 of file DeclBase.h.
Referenced by clang::Sema::getOrCreateStdNamespace().
◆ dropAttr() void clang::Decl::dropAttr ( ) inlineDefinition at line 559 of file DeclBase.h.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnMethodDeclaration(), clang::Sema::ActOnStartOfFunctionDef(), checkDLLAttributeRedeclaration(), clang::Sema::checkIllFormedTrivialABIStruct(), clang::Sema::CheckOverrideControl(), checkSelectAnyAttr(), checkWeakAttr(), clang::Sema::FinalizeDeclaration(), handleCodeSegAttr(), handleConstantAttr(), handleDeviceAttr(), handleEnforceTCBAttr(), handleFunctionReturnThunksAttr(), handleNoBuiltinAttr(), handleZeroCallUsedRegsAttr(), clang::Sema::mergeDLLExportAttr(), mergeEnforceTCBAttrImpl(), clang::Sema::mergeErrorAttr(), clang::Sema::MergeFunctionDecl(), clang::Sema::mergeMSInheritanceAttr(), clang::Sema::mergeOptimizeNoneAttr(), clang::SemaHLSL::mergeParamModifierAttr(), clang::Sema::mergeUuidAttr(), clang::Sema::MergeVarDecl(), mergeVisibilityAttr(), and clang::Sema::ProcessDeclAttributeList().
◆ dropAttrs() [1/2] ◆ dropAttrs() [2/2]template<typename... Ts>
void clang::Decl::dropAttrs ( ) inline ◆ dump() [1/2] LLVM_DUMP_METHOD void Decl::dump ( ) const ◆ dump() [2/2] ◆ dumpColor() LLVM_DUMP_METHOD void Decl::dumpColor ( ) const ◆ EnableStatistics() void Decl::EnableStatistics ( ) static ◆ getAccess()Definition at line 510 of file DeclBase.h.
References Access.
Referenced by clang::Sema::ActOnEnumConstant(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnTag(), clang::Sema::BuildAnonymousStructUnionMemberReference(), clang::Sema::BuildCXXMemberCallExpr(), buildImplicitMap(), clang::Sema::BuildUsingPackDecl(), clang::Sema::BuildUsingShadowDecl(), clang::Sema::BuildVariableInstantiation(), clang::Sema::CheckClassTemplate(), clang::Sema::CheckCompletedCXXClass(), clang::Sema::CheckDestructorAccess(), clang::Sema::CheckFriendAccess(), checkMemberDecomposition(), clang::MemberExpr::Create(), clang::MemberExpr::CreateImplicit(), DiagnoseAccessPath(), diagnoseBadDirectAccess(), EvaluateComparisonBinaryOperator(), clang::Sema::findInheritingConstructor(), clang::CXXRecordDecl::finishedDefaultedOrDeletedMember(), clang::extractapi::DeclarationFragmentsBuilder::getAccessControl(), clang::getConstructorInfo(), hasUnguardedAccess(), clang::TemplateDeclInstantiator::InitMethodInstantiation(), clang::TemplateDeclInstantiator::InstantiateTypeAliasTemplateDecl(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), IsAccessible(), IsMicrosoftUsingDeclarationAccessBug(), clang::SemaOpenMP::isOpenMPCapturedDecl(), IsStructurallyEquivalent(), IsUnusedPrivateField(), clang::Sema::MergeVarDecl(), processImplicitMapsWithDefaultMappers(), clang::SemaCodeCompletion::ProduceCallSignatureHelp(), clang::Sema::SetMemberAccessSpecifier(), clang::TemplateDeclInstantiator::SubstDefaultedFunction(), clang::transformOMPMappableExprListClause(), clang::ASTNodeImporter::VisitAccessSpecDecl(), clang::JSONNodeDumper::VisitAccessSpecDecl(), clang::TextNodeDumper::VisitAccessSpecDecl(), clang::ASTNodeImporter::VisitClassTemplateDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTNodeImporter::VisitEnumConstantDecl(), clang::ASTNodeImporter::VisitEnumDecl(), clang::ASTNodeImporter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFriendDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTNodeImporter::VisitFunctionTemplateDecl(), clang::ASTNodeImporter::VisitIndirectFieldDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTNodeImporter::VisitRecordDecl(), clang::ASTNodeImporter::VisitTypeAliasTemplateDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTNodeImporter::VisitUnresolvedUsingTypenameDecl(), clang::ASTNodeImporter::VisitUnresolvedUsingValueDecl(), clang::ASTNodeImporter::VisitUsingShadowDecl(), clang::ASTNodeImporter::VisitVarDecl(), clang::ASTNodeImporter::VisitVarTemplateDecl(), and clang::ASTNodeImporter::VisitVarTemplateSpecializationDecl().
◆ getAccessUnsafe()Retrieve the access specifier for this declaration, even though it may not yet have been properly set.
Definition at line 517 of file DeclBase.h.
References Access.
◆ getAsFunction() [1/2] ◆ getAsFunction() [2/2]Returns the function itself, or the templated function if this is a function template.
Definition at line 254 of file DeclBase.cpp.
Referenced by clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnReenterFunctionContext(), clang::Sema::ActOnSkippedFunctionBody(), AddResultTypeChunk(), clang::Sema::BuildTemplateIdExpr(), clang::Sema::canSkipFunctionBody(), CheckFallThroughForBody(), clang::Sema::CheckFriendAccess(), clang::Sema::CheckFunctionDeclaration(), CheckMultiVersionAdditionalDecl(), CheckMultiVersionFunction(), clang::Sema::CheckOverload(), clang::SemaCUDA::checkTargetOverload(), clang::Sema::CheckUsingShadowDecl(), clang::Sema::DiagnoseUnguardedAvailabilityViolations(), clang::Sema::FindAssociatedClassesAndNamespaces(), clang::ASTContext::forEachMultiversionedFunctionVersion(), getAsFunction(), GetConversionType(), clang::getDeclUsageType(), clang::CallGraphNode::getDefinition(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForFunctionTemplate(), clang::ASTContext::getFunctionFeatureMap(), clang::CodeGen::CodeGenModule::getLLVMLinkageForDeclarator(), getPrintfFormatArgumentNum(), handleCallbackAttr(), clang::ADLResult::insert(), clang::NamedDecl::isCXXInstanceMember(), clang::Sema::LookupLiteralOperator(), clang::Sema::maybeAddDeclWithEffects(), clang::SemaCUDA::maybeAddHostDeviceAttrs(), clang::Sema::MergeFunctionDecl(), PreviousDeclsHaveMultiVersionAttribute(), clang::ProgramPoint::printJson(), shouldAddReversedEqEq(), SubstituteConstraintExpressionWithoutSatisfaction(), and TryDiagnoseProtectedAccess().
◆ getASTContext()Definition at line 528 of file DeclBase.cpp.
References clang::TranslationUnitDecl::getASTContext(), and getTranslationUnitDecl().
Referenced by clang::DeclContext::addHiddenDecl(), clang::CXXMethodDecl::addOverriddenMethod(), clang::CodeGen::CodeGenTypes::addRecordTypeName(), clang::ODRHash::AddStructuralValue(), annotateConsumedSummaryMismatch(), applyGadgets(), clang::CXXMethodDecl::begin_overridden_methods(), canBeWeakImported(), clang::VarDecl::checkForConstantInitialization(), clang::checkUnsafeBufferUsage(), clang::ObjCInterfaceDecl::ClassImplementsProtocol(), CollectEnclosingNamespace(), clang::RecordDecl::completeDefinition(), clang::CXXRecordDecl::completeDefinition(), clang::ExternalASTMerger::CompleteType(), clang::LinkageComputer::computeLVForDecl(), clang::PredefinedExpr::ComputeName(), clang::ObjCObjectType::computeSuperClassTypeSlow(), clang::CXXRecordDecl::conversion_begin(), clang::CXXRecordDecl::conversion_end(), clang::LifetimeExtendedTemporaryDecl::Create(), clang::NamedDecl::declarationReplaces(), clang::Sema::DeclClonePragmaWeak(), clang::FunctionDecl::doesDeclarationForceExternallyVisibleDefinition(), dropAttrs(), dump(), dumpColor(), clang::ento::SymbolConjured::dumpToStream(), clang::CodeGen::CodeGenModule::EmitTopLevelDecl(), clang::CXXMethodDecl::end_overridden_methods(), clang::VarDecl::ensureEvaluatedStmt(), evaluateCDTSize(), clang::ExternalASTMerger::FindOriginalDecl(), clang::ClassTemplateDecl::findPartialSpecialization(), clang::RedeclarableTemplateDecl::findSpecializationLocally(), clang::StructuralEquivalenceContext::findUntaggedStructOrUnionIndex(), fixUPCAddressofArraySubscriptWithSpan(), formatBlockPlaceholder(), FormatFunctionParameter(), generateDiagnosticsForCallLike(), clang::index::generateUSRForDecl(), clang::ASTNameGenerator::Implementation::getAllManglings(), clang::MSGuidDecl::getAsAPValue(), clang::tooling::getAssociatedRange(), clang::StoredDeclsList::getASTContext(), clang::StmtSequence::getASTContext(), getASTMutationListener(), getAttrs(), getAvailability(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::getBases(), clang::ObjCMethodDecl::getBody(), clang::FunctionDecl::getBody(), clang::FunctionDecl::getBuiltinID(), clang::FunctionDecl::getCallResultType(), clang::AnalysisDeclContext::getCFG(), clang::RedeclarableTemplateDecl::getCommonPtr(), getDeclLanguageLinkage(), clang::LinkageComputer::getDeclLinkageAndVisibility(), clang::VarDecl::getDefinition(), clang::VarDecl::getDescribedVarTemplate(), clang::CXXRecordDecl::getDestructor(), clang::CXXRecordDecl::getDeviceLambdaManglingNumber(), getEnclosingStmtLocation(), DerefSimplePtrArithFixableGadget::getFixits(), UPCPreIncrementGadget::getFixits(), UUCAddAssignGadget::getFixits(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForClassTemplateSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForCXXMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForEnum(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForObjCMethod(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForOverloadedOperator(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForTypedef(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVar(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplate(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplatePartialSpecialization(), clang::extractapi::DeclarationFragmentsBuilder::getFragmentsForVarTemplateSpecialization(), clang::AnalysisDeclContext::getFunctionName(), getID(), clang::ObjCInterfaceDecl::getImplementation(), clang::ObjCCategoryDecl::getImplementation(), clang::FieldDecl::getInClassInitializer(), clang::CXXRecordDecl::getIndirectPrimaryBases(), clang::VarDecl::getInit(), clang::VarDecl::getInitAddress(), clang::ClassTemplateDecl::getInjectedClassNameSpecialization(), getLambdaCallOperatorHelper(), getLambdaStaticInvokers(), getLangOpts(), clang::LinkageComputer::getLVForDecl(), getMaxAlignment(), clang::VarDecl::getMemberSpecializationInfo(), clang::FunctionDecl::getMinRequiredArguments(), clang::CXXRecordDecl::getMSVtorDispMode(), clang::interp::Record::getName(), getNDSWDS(), clang::tooling::getOccurrencesOfUSRs(), clang::LifetimeExtendedTemporaryDecl::getOrCreateValue(), getPosAsWritten(), clang::OMPDeclareReductionDecl::getPrevDeclInScope(), clang::OMPDeclareMapperDecl::getPrevDeclInScope(), clang::getPrimaryMergedDecl(), clang::NamedDecl::getQualifiedNameAsString(), clang::FunctionDecl::getReturnTypeSourceRange(), getSelfInitExpr(), clang::ObjCMethodDecl::getSendResultType(), clang::ObjCObjectPointerType::getSuperClassType(), clang::CastExpr::getTargetFieldForToUnionCast(), clang::CXXMethodDecl::getThisType(), clang::VarDecl::getTLSKind(), clang::AnalysisDeclContext::getUnoptimizedCFG(), clang::EnumDecl::getValueRange(), getVersionIntroduced(), clang::CXXRecordDecl::getVisibleConversionFunctions(), clang::VarDecl::hasConstantInitialization(), clang::VarDecl::hasDefinition(), hasLocalOwningModuleStorage(), hasSameOverloadableAttrs(), clang::Sema::hasStructuralCompatLayout(), clang::ComparisonCategoryInfo::ValueInfo::hasValidIntValue(), clang::CXXConstructorDecl::init_begin(), clang::ObjCImplementationDecl::init_begin(), clang::ento::CheckerContext::isCLibraryFunction(), clang::CXXMethodDecl::isCopyAssignmentOperator(), clang::CXXConstructorDecl::isCopyOrMoveConstructor(), isDeclExternC(), clang::ParmVarDecl::isDestroyedInCallee(), clang::ObjCMethodDecl::isDirectMethod(), clang::ObjCPropertyDecl::isDirectProperty(), IsEquivalentFriend(), isExactClass(), isGRealloc(), isImportedDeclContext(), isInAnotherModuleUnit(), clang::Type::isIncompleteType(), isInCurrentModuleUnit(), clang::FunctionDecl::isInlineBuiltinDeclaration(), clang::FunctionDecl::isInlineDefinitionExternallyVisible(), clang::VarDecl::isKnownToBeDefined(), clang::CXXRecordDecl::isLiteral(), clang::CXXMethodDecl::isMoveAssignmentOperator(), clang::FunctionDecl::isMSExternInline(), isNonViableMultiVersionOverload(), clang::sema::isNormalAssignmentOperator(), clang::Expr::isPotentialConstantExpr(), clang::Expr::isPotentialConstantExprUnevaluated(), clang::FunctionDecl::isReplaceableGlobalAllocationFunction(), clang::CXXConstructorDecl::isSpecializationCopyingObject(), isStandardDelete(), isStandardNew(), isStandardRealloc(), IsStructurallyEquivalent(), isSubclass(), clang::VarDecl::isThisDeclarationADefinition(), clang::CXXMethodDecl::isUsualDeallocationFunction(), isWeakImported(), isZeroSized(), clang::CXXRecordDecl::lambdaIsDefaultConstructibleAndAssignable(), clang::RedeclarableTemplateDecl::loadLazySpecializationsImpl(), clang::CXXRecordDecl::lookupInBases(), clang::RecordDecl::mayInsertExtraPadding(), MultiVersionTypesCompatible(), clang::CXXMethodDecl::overridden_methods(), patchDefaultTargetVersion(), print(), clang::TemplateParamObjectDecl::printAsExpr(), clang::TemplateParamObjectDecl::printAsInit(), clang::NamedDecl::printName(), clang::TagDecl::printName(), clang::NamedDecl::printNestedNameSpecifier(), clang::NamedDecl::printQualifiedName(), clang::printQuotedName(), clang::printQuotedQualifiedName(), clang::ClassTemplateSpecializationDecl::Profile(), clang::ClassTemplatePartialSpecializationDecl::Profile(), clang::VarTemplateSpecializationDecl::Profile(), clang::VarTemplatePartialSpecializationDecl::Profile(), clang::CXXRecordDecl::removeConversion(), saveHash(), clang::ObjCMethodDecl::setAsRedeclaration(), setAttrs(), clang::CXXRecordDecl::setBases(), clang::FieldDecl::setBitWidth(), clang::RecordDecl::setCapturedRecord(), clang::ObjCImplDecl::setClassInterface(), clang::DeclRefExpr::setDecl(), clang::FunctionDecl::setDeletedAsWritten(), clang::VarDecl::setDescribedVarTemplate(), clang::ObjCInterfaceDecl::setExternallyCompleted(), clang::ClassTemplateSpecializationDecl::setExternKeywordLoc(), clang::VarTemplateSpecializationDecl::setExternKeywordLoc(), clang::FunctionDecl::setFunctionTemplateSpecialization(), clang::ObjCCategoryDecl::setImplementation(), clang::ObjCInterfaceDecl::setImplementation(), clang::VarDecl::setInit(), clang::ClassTemplateSpecializationDecl::setInstantiationOf(), clang::VarTemplateSpecializationDecl::setInstantiationOf(), clang::CXXRecordDecl::setInstantiationOfMemberClass(), clang::EnumDecl::setInstantiationOfMemberEnum(), clang::FunctionDecl::setInstantiationOfMemberFunction(), clang::VarDecl::setInstantiationOfStaticDataMember(), clang::CXXRecordDecl::setLambdaNumbering(), setLexicalDeclContext(), clang::TypedefNameDecl::setModedTypeSourceInfo(), clang::LabelDecl::setMSAsmLabel(), clang::FunctionDecl::setParams(), clang::BlockDecl::setParams(), clang::DeclaratorDecl::setQualifierInfo(), clang::TagDecl::setQualifierInfo(), clang::ClassTemplateSpecializationDecl::setTemplateArgsAsWritten(), clang::VarTemplateSpecializationDecl::setTemplateArgsAsWritten(), clang::ClassTemplateSpecializationDecl::setTemplateKeywordLoc(), clang::VarTemplateSpecializationDecl::setTemplateKeywordLoc(), clang::DeclaratorDecl::setTemplateParameterListsInfo(), clang::TagDecl::setTemplateParameterListsInfo(), clang::VarDecl::setTemplateSpecializationKind(), clang::FunctionDecl::setTemplateSpecializationKind(), clang::DeclaratorDecl::setTrailingRequiresClause(), shouldEmitInExternalSource(), shouldOmitDefinition(), shouldRunOnFunctionOrMethod(), clang::shouldSkipCheckingODR(), clang::CXXMethodDecl::size_overridden_methods(), clang::TagDecl::startDefinition(), updateOutOfDate(), useInlineVisibilityHidden(), clang::TextNodeDumper::Visit(), clang::TextNodeDumper::VisitImportDecl(), clang::ASTDeclReader::VisitLifetimeExtendedTemporaryDecl(), clang::ASTNodeImporter::VisitRecordDecl(), clang::TextNodeDumper::VisitUnresolvedUsingTypenameDecl(), clang::TextNodeDumper::VisitUnresolvedUsingValueDecl(), clang::TextNodeDumper::VisitUsingDecl(), clang::JSONNodeDumper::VisitUsingDecl(), clang::TextNodeDumper::VisitVarDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarDecl(), and WarnUndefinedMethod().
◆ getASTMutationListener() ◆ getAttr() T * clang::Decl::getAttr ( ) const inlineDefinition at line 576 of file DeclBase.h.
References getAttrs(), and hasAttrs().
Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnMethodDeclaration(), clang::SemaHLSL::ActOnOutParamExpr(), clang::Sema::ActOnStartNamespaceDef(), clang::Sema::ActOnStartOfFunctionDef(), clang::SemaHLSL::ActOnTopLevelFunction(), clang::Sema::ActOnVariableDeclarator(), AddVariableConstraints(), clang::CodeGen::CGHLSLRuntime::annotateHLSLResource(), clang::SemaSYCL::BuildSYCLKernelCallStmt(), clang::checkAttrMutualExclusion(), clang::Sema::checkCall(), clang::consumed::ConsumedStmtVisitor::checkCallability(), clang::SemaHLSL::CheckCompatibleParameterABI(), CheckDeclarationCausesMultiVersioning(), checkDLLAttributeRedeclaration(), clang::SemaHLSL::CheckEntryPoint(), clang::Sema::CheckFunctionDeclaration(), checkHybridPatchableAttr(), clang::Sema::CheckIfOverriddenFunctionIsMarkedFinal(), clang::Sema::checkIllFormedTrivialABIStruct(), clang::Sema::checkIncorrectVTablePointerAuthenticationAttribute(), clang::Sema::checkLifetimeCaptureBy(), CheckMultiVersionAdditionalDecl(), CheckMultiVersionFirstFunction(), CheckMultiVersionFunction(), CheckMultiVersionValue(), clang::SemaObjC::CheckObjCMethodDirectOverrides(), clang::Sema::CheckOverrideControl(), clang::Sema::CheckOverridingFunctionAttributes(), checkPreviousOMPAllocateAttribute(), checkSelectAnyAttr(), clang::SemaHLSL::CheckSemanticAnnotation(), clang::SemaARM::CheckSMEFunctionDefAttributes(), clang::Sema::CheckStaticLocalForDllExport(), clang::SemaSYCL::CheckSYCLEntryPointFunctionDecl(), checkUndefinedButUsed(), checkWeakAttr(), checkWeakRefAttr(), clang::CodeGen::CodeGenModule::ConstructAttributeList(), copyAttrFromTypedefToDecl(), copyAttrIfPresent(), GlobalDeclRefChecker::declareTargetInitializer(), clang::Sema::DiagnoseSentinelCalls(), DiagnoseUnusedOfDecl(), DoEmitAvailabilityWarning(), EmitGlobalNamedRegister(), emitReadOnlyPlacementAttrWarning(), extractRegisterName(), clang::Sema::FinalizeDeclaration(), clang::index::generateUSRForDecl(), clang::CodeGen::CodeGenModule::GenKernelArgMetadata(), clang::CodeGen::CGOpenMPRuntime::getAddressOfLocalVariable(), clang::CodeGen::CodeGenFunction::OMPBuilderCBHelpers::getAddressOfLocalVariable(), clang::CodeGen::CGOpenMPRuntimeGPU::getAddressOfLocalVariable(), getCallingConventionForDecl(), clang::getDLLAttr(), GetFullTypeForDeclarator(), clang::CFGCleanupFunction::getFunctionDecl(), clang::ASTContext::getFunctionFeatureMap(), GetMatchingCType(), getNonNullAttr(), clang::CodeGen::CodeGenModule::getOMPAllocateAlignment(), clang::getOpenCLArgAccess(), clang::CodeGen::CodeGenModule::GetOrCreateLLVMGlobal(), clang::index::getSymbolInfo(), clang::CallExpr::getUnusedResultAttr(), getVisibilityOf(), clang::CodeGen::CodeGenModule::GetWeakRefReference(), clang::consumed::ConsumedStmtVisitor::handleCall(), handleCodeSegAttr(), handleConstantAttr(), handleCPUSpecificAttr(), handleDeviceAttr(), clang::CodeGen::CGHLSLRuntime::handleGlobalVarDefinition(), clang::SemaRISCV::handleInterruptAttr(), handleLifetimeCategoryAttr(), handleMinVectorWidthAttr(), handleNoBuiltinAttr(), handleTargetClonesAttr(), handleVecReturnAttr(), handleVecTypeHint(), handleVTablePointerAuthentication(), handleWorkGroupSize(), clang::CodeGen::CGOpenMPRuntime::hasAllocateAttributeForGlobalVar(), clang::CodeGen::CGOpenMPRuntimeGPU::hasAllocateAttributeForGlobalVar(), clang::hasArmZAState(), clang::hasArmZT0State(), hasExplicitAttr(), hasIdenticalPassObjectSizeAttrs(), hasImplicitAttr(), clang::SemaCUDA::inferTargetForImplicitSpecialMember(), clang::Sema::InstantiateDefaultCtorDefaultArgs(), isAllocatableDecl(), isBetterMultiversionCandidate(), clang::SemaObjC::isCFError(), isGeneratedDecl(), isKernelDecl(), clang::MangleContext::mangleName(), mangleOverrideDiscrimination(), mapConsumableAttrState(), MaybeAddSentinel(), clang::ASTContext::mayExternalize(), clang::Sema::mergeAlwaysInlineAttr(), clang::Sema::mergeCodeSegAttr(), clang::Sema::mergeDeclAttributes(), clang::Sema::mergeDLLExportAttr(), clang::Sema::mergeErrorAttr(), clang::Sema::MergeFunctionDecl(), clang::Sema::mergeMinSizeAttr(), clang::Sema::mergeMSInheritanceAttr(), clang::SemaHLSL::mergeNumThreadsAttr(), clang::Sema::mergeOptimizeNoneAttr(), mergeParamDeclAttributes(), clang::SemaHLSL::mergeParamModifierAttr(), clang::Sema::mergeSectionAttr(), clang::SemaHLSL::mergeShaderAttr(), clang::Sema::mergeUuidAttr(), clang::Sema::MergeVarDecl(), mergeVisibilityAttr(), clang::SemaHLSL::mergeWaveSizeAttr(), noteOverloads(), clang::Sema::ProcessDeclAttributeList(), clang::SemaObjC::ProcessPropertyDecl(), recordUsesEBO(), clang::ASTContext::registerSYCLEntryPointFunction(), clang::CodeGen::CodeGenModule::setGlobalVisibility(), clang::CodeGen::CGHLSLRuntime::setHLSLEntryAttributes(), clang::CodeGen::CodeGenModule::SetLLVMFunctionAttributesForDefinition(), clang::CodeGen::CodeGenModule::setTLSMode(), testsFor(), clang::CodeGen::CGOpenMPRuntimeGPU::translateParameter(), clang::Sema::UnifySection(), clang::sema::visitFunctionCallArguments(), clang::ASTDeclReader::VisitFunctionDecl(), and clang::consumed::ConsumedStmtVisitor::VisitParmVarDecl().
◆ getAttrs() [1/2] AttrVec & clang::Decl::getAttrs ( ) inlineDefinition at line 527 of file DeclBase.h.
References getAttrs().
Referenced by actOnOMPReductionKindClause(), clang::SemaOpenMP::ActOnOpenMPCopyinClause(), clang::SemaOpenMP::ActOnOpenMPCopyprivateClause(), clang::SemaOpenMP::ActOnOpenMPFirstprivateClause(), clang::SemaOpenMP::ActOnOpenMPLastprivateClause(), clang::SemaOpenMP::ActOnOpenMPLinearClause(), clang::SemaOpenMP::ActOnOpenMPPrivateClause(), clang::SemaOpenMP::ActOnOpenMPUseDevicePtrClause(), addAttr(), addContextSensitiveTypeNullability(), attr_begin(), attr_end(), clang::Sema::BuildReturnStmt(), checkNewAttributesAfterDef(), clang::Sema::checkUnusedDeclAttributes(), createPrivatesRecordDecl(), dropAttrs(), clang::SemaOpenMP::EndOpenMPDSABlock(), getAttr(), getAttrs(), getMaxAlignment(), GetTypeSourceInfoForDeclarator(), HandleSwiftAttr(), hasAttr(), hasAttr(), clang::ASTImporter::Import(), clang::Sema::mergeAvailabilityAttr(), RedeclarePropertyAccessor(), takeDeclAttributes(), and clang::ASTDeclWriter::VisitDecl().
◆ getAttrs() [2/2] const AttrVec & Decl::getAttrs ( ) const ◆ getAvailability() AvailabilityResult Decl::getAvailability ( std::string * Message =nullptr
, VersionTuple EnclosingVersion = VersionTuple()
, StringRef * RealizedPlatform = nullptr
) const
Determine the availability of the given declaration.
This routine will determine the most restrictive availability of the given declaration (e.g., preferring 'unavailable' to 'deprecated').
AR_Available
, will be set to a (possibly empty) message describing why the declaration has not been introduced, is deprecated, or is unavailable. EnclosingVersion The version to compare with. If empty, assume the deployment target version. RealizedPlatform If non-NULL and the availability result is found in an available attribute it will set to the platform which is written in the available attribute.
Definition at line 753 of file DeclBase.cpp.
References clang::AR_Available, clang::AR_Deprecated, clang::AR_Unavailable, attrs(), CheckAvailability(), getASTContext(), and clang::Result.
Referenced by clang::SemaObjC::addMethodToGlobalList(), clang::Sema::CanUseDecl(), clang::Sema::DiagnoseAvailabilityOfDecl(), DiagnoseObjCImplementedDeprecations(), clang::SemaObjC::DiagnoseUnimplementedProperties(), getDeclAvailability(), isDeprecated(), isUnavailable(), ShouldDiagnoseAvailabilityOfDecl(), and shouldWarnUndefinedMethod().
◆ getBeginLoc()Definition at line 434 of file DeclBase.h.
References clang::SourceRange::getBegin(), and getSourceRange().
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExceptionDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaOpenMP::ActOnOMPIteratorExpr(), clang::Sema::ActOnParamDeclarator(), clang::SemaObjC::ActOnPropertyImplDecl(), clang::Sema::ActOnStartConceptDefinition(), clang::SemaOpenMP::ActOnStartOfFunctionDefinitionInOpenMPDeclareVariantScope(), clang::Sema::ActOnVariableDeclarator(), clang::CodeGen::CodeGenModule::AddDeferredUnusedCoverageMapping(), clang::Sema::BuildDeclaratorGroup(), clang::CodeGen::CGOpenMPRuntime::checkAndEmitSharedLastprivateConditional(), clang::Sema::CheckDeductionGuideDeclarator(), checkExportedDecl(), clang::SemaObjC::CheckObjCBridgeRelatedConversions(), checkOpenMPLoop(), clang::ento::PathDiagnosticLocation::createBegin(), CreateNewFunctionDecl(), clang::ODRDiagsEmitter::diagnoseMismatch(), clang::SemaObjC::diagnoseNullResettableSynthesizedSetters(), clang::LocationContext::dumpStack(), clang::CodeGen::CGOpenMPRuntime::emitDoacrossInit(), clang::CodeGen::CGOpenMPRuntimeGPU::emitFunctionProlog(), emitParallelOrTeamsOutlinedFunction(), emitTargetCallFallback(), emitTargetCallKernelLaunch(), clang::CodeGen::CGOpenMPRuntime::emitTargetDataCalls(), clang::CodeGen::CGOpenMPRuntime::emitTargetDataStandAloneCall(), clang::CodeGen::CGOpenMPRuntime::emitTargetOutlinedFunctionHelper(), emitTargetTeamsLoopCodegenStatus(), clang::CodeGen::CGOpenMPRuntime::emitTaskOutlinedFunction(), clang::CodeGen::CGOpenMPRuntimeGPU::emitTeamsOutlinedFunction(), fixLocalVarDeclWithSpan(), fixVarDeclWithArray(), GenerateFixForUnusedDecl(), generateUniqueName(), getDeclLocsForCommentSearch(), GetFullTypeForDeclarator(), clang::interp::SourceInfo::getLoc(), getSourceRangeToTokenEnd(), clang::Sema::HandleDeclarator(), clang::Sema::HandleField(), handleMIGServerRoutineAttr(), clang::Sema::HandleMSProperty(), handlePassObjectSizeAttr(), clang::SemaHLSL::handleResourceBindingAttr(), clang::handleSimpleAttributeOrDiagnose(), clang::TemplateDeclInstantiator::InstantiateTypeAliasTemplateDecl(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), clang::Sema::isDeclaratorFunctionLike(), clang::syntax::TreeBuilder::isResponsibleForCreatingDeclaration(), clang::sema::AnalysisBasedWarnings::IssueWarnings(), MatchTemplateParameterKind(), clang::Sema::ParseTypedefDecl(), clang::InitializationSequence::Perform(), clang::LocationContext::printJson(), clang::Sema::PrintPragmaAttributeInstantiationPoint(), clang::ento::ExprEngine::ProcessTemporaryDtor(), RedeclarePropertyAccessor(), clang::TreeTransform< Derived >::TransformOMPExecutableDirective(), clang::TreeTransform< Derived >::TransformOMPInformationalDirective(), clang::LexicallyOrderedRecursiveASTVisitor< Derived >::TraverseDeclContextHelper(), clang::ASTNodeImporter::VisitClassTemplateSpecializationDecl(), clang::ASTNodeImporter::VisitEnumDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::ASTNodeImporter::VisitLabelDecl(), clang::ASTDeclWriter::VisitLabelDecl(), clang::ASTNodeImporter::VisitNamespaceDecl(), clang::ASTDeclWriter::VisitNamespaceDecl(), clang::ASTNodeImporter::VisitObjCPropertyImplDecl(), clang::ASTDeclWriter::VisitObjCPropertyImplDecl(), clang::ASTDeclWriter::VisitOMPDeclareReductionDecl(), clang::ASTDeclWriter::VisitPragmaCommentDecl(), clang::ASTDeclWriter::VisitPragmaDetectMismatchDecl(), clang::ASTNodeImporter::VisitRecordDecl(), clang::ASTNodeImporter::VisitTemplateTypeParmDecl(), clang::ASTDeclWriter::VisitTypeDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTNodeImporter::VisitVarTemplateSpecializationDecl(), and warnAboutRedundantParens().
◆ getBody() virtual Stmt * clang::Decl::getBody ( ) const inlinevirtualgetBody - If this Decl represents a declaration for a body of code, such as a function or method definition, this method returns the top-level Stmt* of that body.
Otherwise this method returns null.
Reimplemented in clang::FunctionDecl, clang::BlockDecl, clang::OutlinedFunctionDecl, clang::CapturedDecl, and clang::ObjCMethodDecl.
Definition at line 1080 of file DeclBase.h.
Referenced by clang::CloneDetector::analyzeCodeBody(), CheckStringRefAssignedTemporary(), clang::checkUnsafeBufferUsage(), clang::ento::PathDiagnosticLocation::createDeclBegin(), clang::DEF_TRAVERSE_DECL(), emitDiagnostics(), getBodyRBrace(), clang::ento::getWidenedLoopState(), hasBody(), clang::TrivialFunctionAnalysisVisitor::IsFunctionTrivial(), clang::sema::AnalysisBasedWarnings::IssueWarnings(), populateExecutedLinesWithFunctionSignature(), clang::ASTDeclWriter::VisitBlockDecl(), clang::ASTDeclWriter::VisitObjCMethodDecl(), and clang::ASTDeclWriter::VisitOutlinedFunctionDecl().
◆ getBodyRBrace() ◆ getCachedLinkage() Linkage clang::Decl::getCachedLinkage ( ) const inlineprotected ◆ getCanonicalDecl() [1/2] virtual Decl * clang::Decl::getCanonicalDecl ( ) inlinevirtualRetrieves the "canonical" declaration of the given declaration.
Reimplemented in clang::TranslationUnitDecl, clang::NamespaceDecl, clang::VarDecl, clang::FunctionDecl, clang::FieldDecl, clang::EnumConstantDecl, clang::IndirectFieldDecl, clang::TypedefNameDecl, clang::TagDecl, clang::EnumDecl, clang::CXXRecordDecl, clang::CXXMethodDecl, clang::CXXConstructorDecl, clang::CXXDestructorDecl, clang::CXXConversionDecl, clang::NamespaceAliasDecl, clang::UsingShadowDecl, clang::UsingDecl, clang::UsingEnumDecl, clang::UsingPackDecl, clang::UnresolvedUsingValueDecl, clang::UnresolvedUsingTypenameDecl, clang::ObjCMethodDecl, clang::ObjCInterfaceDecl, clang::ObjCIvarDecl, clang::ObjCProtocolDecl, clang::RedeclarableTemplateDecl, clang::FunctionTemplateDecl, clang::ClassTemplateDecl, clang::TypeAliasTemplateDecl, clang::VarTemplateDecl, clang::ConceptDecl, and clang::TemplateParamObjectDecl.
Definition at line 971 of file DeclBase.h.
Referenced by clang::SemaOpenMP::ActOnOpenMPLoopInitialization(), clang::Sema::ActOnPragmaMSAllocText(), clang::ODRHash::AddDecl(), clang::MultiLevelTemplateArgumentList::addOuterTemplateArguments(), AddTemplateParameterChunks(), clang::ASTReader::AssignedLambdaNumbering(), clang::ASTContext::attachCommentsToJustParsedDecls(), clang::Sema::BuildCXXNestedNameSpecifier(), clang::ASTContext::cacheRawCommentForDecl(), CheckIdentityFieldAssignment(), clang::Sema::CheckTemplateArgument(), CheckTemplateArgumentAddressOfObjectOrFunction(), CheckTemplateArgumentPointerToMember(), compareDeclarations(), clang::NamedDecl::declarationReplaces(), clang::Sema::DeclareImplicitDeductionGuides(), clang::declaresSameEntity(), clang::ASTContext::deduplicateMergedDefinitonsFor(), DiagnoseSelfAssignment(), clang::Sema::DiagnoseSelfMove(), clang::Sema::DiagnoseUseOfDecl(), diagnoseUseOfInternalDeclInInlineFunction(), clang::CodeGen::CGDebugInfo::emitFunctionStart(), clang::CodeGen::CGDebugInfo::EmitGlobalVariable(), clang::ClassTemplateDecl::findPartialSpecInstantiatedFromMember(), clang::VarTemplateDecl::findPartialSpecInstantiatedFromMember(), generateUniqueName(), clang::index::generateUSRForDecl(), clang::BodyFarm::getBody(), getCanonicalDecl(), getCanonicalDecl(), getCanonicalParmVarDecl(), clang::ASTContext::getCanonicalTemplateArgument(), clang::ASTContext::getCanonicalTemplateName(), clang::ASTContext::getCommentForDecl(), clang::DeclarationNameTable::getCXXDeductionGuideName(), clang::ObjCInterfaceType::getDecl(), getDeclForLocalLookup(), clang::ASTReader::GetExistingDecl(), clang::ASTWriter::getFirstLocalDecl(), getFirstVirtualDecl(), clang::NamedDecl::getFormalLinkage(), clang::ASTContext::getModulesWithMergedDefinition(), clang::ento::MemRegionManager::getNonParamVarRegion(), clang::Sema::getNormalizedAssociatedConstraints(), clang::CodeGen::CodeGenModule::GetOrCreateLLVMGlobal(), clang::CallGraph::getOrInsertNode(), clang::ASTContext::getRawCommentForAnyRedecl(), clang::ASTContext::getSubstTemplateTypeParmPackType(), clang::VTableContextBase::getThunkInfo(), clang::OMPClauseMappableExprCommon::getUniqueDeclarationsTotalNumber(), clang::ASTContext::getUnresolvedUsingType(), clang::ento::MemRegionManager::getVarRegion(), handleLifetimeCategoryAttr(), hasRecursiveCallInPath(), clang::ASTNodeImporter::ImportAPValue(), clang::ADLResult::insert(), isCanonicalDecl(), clang::ento::isCapturedByReference(), IsEquivalentForUsingDecl(), clang::ento::isFoundInStmt(), clang::OverloadCandidateSet::isNewCandidate(), clang::SemaOpenMP::isOpenMPCapturedByRef(), clang::SemaOpenMP::isOpenMPDeclareMapperVarDeclAllowed(), clang::SemaOpenMP::isOpenMPPrivateDecl(), clang::ento::isPossiblyEscaped(), isSameDeclaration(), IsStructurallyEquivalent(), isUsed(), clang::Sema::LookupQualifiedName(), clang::Sema::LookupTemplateName(), clang::APValue::LValuePathEntry::LValuePathEntry(), MatchesFriend(), clang::ASTContext::mergeDefinitionIntoModule(), clang::ASTDeclMerger::mergeRedeclarableImpl(), clang::ASTDeclReader::mergeRedeclarableTemplate(), clang::ASTDeclWriter::RegisterTemplateSpecialization(), clang::LookupResult::resolveKind(), setIsUsed(), shouldBeHidden(), clang::Sema::tryCaptureVariable(), clang::ASTDeclReader::UpdateDecl(), clang::ASTDeclReader::Visit(), clang::ASTDeclWriter::VisitClassTemplateSpecializationDecl(), clang::ASTDeclReader::VisitCXXDestructorDecl(), clang::ASTDeclReader::VisitCXXMethodDecl(), clang::ASTDeclReader::VisitCXXRecordDeclImpl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTDeclReader::VisitMSGuidDecl(), clang::ASTDeclReader::VisitRedeclarable(), clang::ASTDeclReader::VisitRedeclarableTemplateDecl(), clang::ASTDeclReader::VisitTemplateParamObjectDecl(), clang::ASTDeclReader::VisitUnnamedGlobalConstantDecl(), ForVarDeclFinder::VisitVarDecl(), clang::ASTDeclWriter::VisitVarTemplateSpecializationDecl(), and wasDifferentDeclUsedForInlining().
◆ getCanonicalDecl() [2/2] const Decl * clang::Decl::getCanonicalDecl ( ) const inline ◆ getDeclContext() [1/2]Definition at line 451 of file DeclBase.h.
Referenced by clang::Sema::ActOnConversionDeclarator(), clang::Sema::ActOnCXXEnterDeclInitializer(), clang::Sema::ActOnDeclarator(), clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ActOnEnumConstant(), clang::SemaObjC::ActOnFinishObjCImplementation(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::SemaOpenMP::ActOnOpenMPIdExpression(), clang::Sema::ActOnReenterTemplateScope(), clang::SemaObjC::ActOnStartOfObjCMethodDef(), clang::Sema::ActOnTag(), clang::Sema::ActOnTypedefNameDecl(), clang::Sema::ActOnVariableDeclarator(), clang::ASTImporterLookupTable::add(), addAssociatedClassesAndNamespaces(), clang::TypoCorrectionConsumer::addCorrection(), clang::Sema::AddFunctionCandidates(), clang::Sema::AddKnownFunctionAttributes(), clang::Sema::AddMethodCandidate(), clang::SemaObjC::addMethodToGlobalList(), clang::CodeGen::CodeGenTypes::addRecordTypeName(), addRedeclaredMethods(), AddTopLevelDeclarationToHash(), adjustCVQualifiersForCXXThisWithinLambda(), adjustDeclContextForDeclaratorDecl(), clang::Sema::BuildCallToObjectOfClassType(), clang::SemaObjC::BuildClassMessage(), clang::Sema::BuildCXXConstructExpr(), clang::Sema::BuildExpressionFromDeclTemplateArgument(), buildImplicitMapper(), clang::SemaObjC::BuildInstanceMessage(), clang::Sema::BuildVariableInstantiation(), clang::Sema::BuildVarTemplateInstantiation(), canEmitSpuriousReferenceToVariable(), clang::Sema::CheckAddressOfOperand(), clang::SemaCUDA::checkAllowedInitializer(), checkAtomicPropertyMismatch(), CheckBindingsCount(), clang::Sema::CheckClassTemplate(), clang::Sema::CheckConceptTemplateId(), clang::Sema::CheckCXXDefaultArgExpr(), clang::Sema::CheckDeductionGuideDeclarator(), clang::Sema::CheckDependentFunctionTemplateSpecialization(), CheckExplicitInstantiationScope(), clang::Sema::CheckExplicitlyDefaultedFunction(), clang::Sema::CheckFriendAccess(), clang::Sema::CheckFunctionTemplateSpecialization(), clang::SemaObjC::checkInitMethod(), clang::Sema::CheckLiteralOperatorDeclaration(), clang::Sema::CheckMain(), clang::SemaObjC::CheckMessageArgumentTypes(), CheckMethodOverrideParam(), CheckMethodOverrideReturn(), CheckMultiVersionFunction(), clang::SemaObjC::CheckObjCMethodDirectOverrides(), clang::SemaObjC::CheckObjCMethodOverride(), clang::SemaObjC::CheckObjCMethodOverrides(), checkObjCUnusedIvar(), CheckOperatorNewDeleteDeclarationScope(), clang::Sema::CheckShadow(), clang::Sema::CheckShadowingDeclModification(), CheckSimplerImplicitMovesMSVCWorkaround(), clang::Sema::CheckTemplateArgument(), clang::Sema::CheckTemplateArgumentList(), clang::Sema::CheckTemplatePartialSpecializationArgs(), CheckTemplateSpecializationScope(), checkTupleLikeDecomposition(), checkTypeParamListConsistency(), clang::Sema::CheckUsingShadowDecl(), clang::Sema::checkVarDeclRedefinition(), clang::Sema::CheckVarTemplateId(), ClassifyImplicitMemberAccess(), collectOverriddenMethodsSlow(), collectViableConversionCandidates(), compareOverloads(), clang::ASTReader::CompleteRedeclChain(), ComputeDefaultedComparisonExceptionSpec(), clang::computeDependence(), clang::LinkageComputer::computeLVForDecl(), clang::PredefinedExpr::ComputeName(), constructBufferConceptDecl(), ConvertDeducedTemplateArguments(), clang::LifetimeExtendedTemporaryDecl::Create(), clang::CodeCompletionResult::CreateCodeCompletionString(), clang::CodeCompletionResult::createCodeCompletionStringForDecl(), createFriendTagNNSFixIt(), createHostLayoutStruct(), clang::TypeName::createNestedNameSpecifierForScopeOf(), clang::NamedDecl::declarationReplaces(), clang::Sema::DeclareAggregateDeductionGuideFromInitList(), clang::Sema::DeclareImplicitDeductionGuides(), clang::Sema::DeclClonePragmaWeak(), clang::ASTContext::DeclMustBeEmitted(), clang::Sema::DeduceTemplateSpecializationFromInitializer(), clang::SemaObjC::DefaultSynthesizeProperties(), clang::ObjCMethodDecl::definedInNSObject(), clang::Sema::DiagnoseAmbiguousLookup(), diagnoseBadDirectAccess(), clang::Sema::DiagnoseDependentMemberLookup(), clang::Sema::DiagnoseEmptyLookup(), diagnoseInstanceReference(), DiagnoseInvalidRedeclaration(), DiagnoseLocalRegisterBinding(), diagnoseNoescape(), diagnoseOpenCLTypes(), clang::SemaObjC::DiagnoseOwningPropertyGetterSynthesis(), clang::SemaObjC::DiagnosePropertyMismatch(), clang::Sema::DiagnoseShadowingLambdaDecls(), clang::Sema::DiagnoseUninstantiableTemplate(), clang::Sema::DiagnoseUseOfDecl(), clang::Sema::DiagRedefinedPlaceholderFieldDecl(), DoMarkPotentialCapture(), clang::CodeGen::CGDebugInfo::EmitGlobalVariable(), clang::CodeGen::CGDebugInfo::EmitNamespaceAlias(), emitPrivatesInit(), clang::CodeGen::CGDebugInfo::EmitUsingDirective(), clang::CodeGen::CGDebugInfo::EmitUsingShadowDecl(), evaluateVarDeclInit(), FilterMethodsByTypeBound(), clang::Sema::FinalizeDeclaration(), findBackingIvar(), FindConversionForRefInit(), FindDeclaringClass(), findEnumForBlockReturn(), findExplicitInstancetypeDeclarer(), clang::Sema::FindInstantiatedDecl(), clang::LocalInstantiationScope::findInstantiationOf(), findMetaClassAlloc(), clang::StructuralEquivalenceContext::findUntaggedStructOrUnionIndex(), clang::Sema::FixOverloadedFunctionReference(), clang::ASTContext::forEachMultiversionedFunctionVersion(), FormatFunctionParameter(), getAsDeclContextOrEnclosing(), getAssignmentAction(), clang::BodyFarm::getBody(), clang::ObjCMethodDecl::getCanonicalDecl(), clang::ObjCMethodDecl::getCategory(), getCategoryContext(), clang::ObjCMethodDecl::getClassInterface(), clang::ConstructorUsingShadowDecl::getConstructedBaseClass(), clang::ObjCIvarDecl::getContainingInterface(), getContextForScopeMatching(), getDeclAvailability(), getDeclContext(), clang::Sema::TemplateCompareNewDeclInfo::getDeclContext(), getDeclContextForTemplateInstationPattern(), getDeclForLocalLookup(), getDeclLanguageLinkage(), getDeclLocsForCommentSearch(), clang::TemplateArgument::getDependence(), clang::diff::getEnclosingDeclContext(), getExternalSourceSymbolAttr(), clang::ASTImporter::getFieldIndex(), getHostLayoutStructName(), clang::ASTContext::getMemberPointerPathAdjustment(), getMethodReceiverIfKnownImmutable(), getNonTransparentDeclContext(), clang::ASTContext::getObjContainingInterface(), clang::CodeGen::CodeGenModule::getOrCreateStaticVarDecl(), getOutermostFuncOrBlockContext(), clang::ObjCMethodDecl::getOverriddenMethods(), clang::FieldDecl::getParent(), clang::ConstructorUsingShadowDecl::getParent(), getParentFunctionOrMethod(), getPreviousDeclForInstantiation(), clang::diff::SyntaxTree::Impl::getRelativeName(), clang::ObjCMethodDecl::getSendResultType(), clang::Sema::getShadowedDeclaration(), clang::ParmVarDecl::getSourceRange(), getStackIndexOfNearestEnclosingCaptureReadyLambda(), getStaticDeclName(), clang::LifetimeExtendedTemporaryDecl::getStorageDuration(), clang::extractapi::DeclarationFragmentsBuilder::getSubHeading(), clang::index::getSymbolInfo(), getTemplateDepth(), getTranslationUnitDecl(), clang::ObjCPropertyDecl::getUsageType(), clang::ObjCIvarDecl::getUsageType(), clang::ento::MemRegionManager::getVarRegion(), clang::index::IndexingContext::handleDecl(), clang::Sema::HandleDelayedAccessCheck(), handleExcludeFromExplicitInstantiationAttr(), clang::SemaHLSL::handlePackOffsetAttr(), clang::SemaObjC::HandlePropertyInClassExtension(), handleWeakRefAttr(), hasAcceptableMemberSpecialization(), hasConflictingOverload(), hasCopyOrMoveCtorParam(), clang::dataflow::hasOptionalClassName(), hasWrittenStorageAttribute(), HelperToDiagnoseMismatchedMethodsInGlobalPool(), clang::Sema::HideUsingShadowDecl(), clang::SemaCUDA::IdentifyTarget(), clang::ASTImporter::Import(), clang::ASTNodeImporter::ImportDeclContext(), clang::ASTNodeImporter::ImportDeclParts(), clang::Sema::inferGslPointerAttribute(), InNamespace(), clang::TemplateDeclInstantiator::InstantiateEnumDefinition(), clang::Sema::InstantiateFunctionDefinition(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), clang::Sema::InstantiateVariableDefinition(), clang::Sema::InstantiateVariableInitializer(), isAncestorDeclContextOf(), IsArtificial(), clang::LookupResult::isAvailableForLookup(), clang::isBetterOverloadCandidate(), isCapturingReferenceToHostVarInCUDADeviceLambda(), clang::dataflow::isCheckLikeMethod(), clang::ento::CheckerContext::isCLibraryFunction(), clang::NamedDecl::isCXXClassMember(), isDebuggingContext(), isDeclExternC(), clang::IdentifierResolver::isDeclInScope(), isDeclWithinFunction(), clang::ObjCMethodDecl::isDesignatedInitializerForTheInterface(), isFunctionLocalClass(), clang::FunctionDecl::isGlobal(), isInAnonymousNamespace(), IsInfinityFunction(), clang::RecordDecl::isInjectedClassName(), isInStdNamespace(), clang::AnalysisDeclContext::isInStdNamespace(), clang::CXXRecordDecl::isInterfaceLike(), IsInternalDeclFromFileContext(), clang::CXXRecordDecl::isLocalClass(), clang::FunctionDecl::isMain(), isMainVar(), isMethodContextSameForKindofLookup(), isMethodDeclaredInRootProtocol(), clang::FunctionDecl::isMSVCRTEntryPoint(), isObjCMethodWithTypeParams(), clang::Expr::isObjCSelfExpr(), isOutOfLine(), isOutOfScopePreviousDeclaration(), isParameterOf(), clang::NamedDecl::isPlaceholderVar(), IsRecordContextStructurallyEquivalent(), isReferenceToNonConstCapture(), clang::FunctionDecl::isReplaceableGlobalAllocationFunction(), clang::NamedDecl::isReserved(), clang::FunctionDecl::isReservedGlobalPlacementOperator(), clang::ASTContext::isSameEntity(), isSingleLineLanguageLinkage(), clang::VarDecl::isStaticDataMember(), clang::ento::smartptr::isStdSmartPtr(), IsStructurallyEquivalent(), clang::ODRHash::isSubDeclToBeProcessed(), isTemplated(), clang::index::IndexingContext::isTemplateImplicitInstantiation(), isTrackedVar(), IsUserDefinedConversion(), isUsingDeclNotAtClassScope(), clang::Sema::isUsualDeallocationFunction(), clang::CXXMethodDecl::isUsualDeallocationFunction(), clang::Sema::LazilyCreateBuiltin(), LookupMemberExpr(), clang::Sema::LookupOrCreateLabel(), clang::DeclContext::makeDeclVisibleInContext(), clang::MangleContext::mangleObjCMethodName(), clang::ASTImporter::MapImported(), MatchesFriend(), clang::Sema::MergeCXXFunctionDecl(), clang::Sema::mergeObjCMethodDecls(), mergeParamDeclAttributes(), MightInstantiateTo(), clang::Sema::PrintInstantiationStack(), clang::NamedDecl::printNestedNameSpecifier(), clang::NamedDecl::printQualifiedName(), clang::Sema::ProcessAPINotes(), clang::SemaObjC::ProcessPropertyDecl(), RecordModifiableNonNullParam(), clang::ASTImporterLookupTable::remove(), clang::DeclContext::removeDecl(), clang::tooling::replaceNestedName(), ResolveConstructorOverload(), clang::FunctionDecl::setIsPureVirtual(), setLexicalDeclContext(), shouldConsiderLinkage(), ShouldDiagnoseUnusedDecl(), clang::Sema::shouldLinkDependentDeclWithPrevious(), ShouldWarnAboutMissingPrototype(), clang::Sema::ShouldWarnIfUnusedFileScopedDecl(), clang::Sema::SubstDefaultArgument(), SubstDefaultTemplateArgument(), clang::TreeTransform< Derived >::TransformFunctionTypeParam(), clang::CodeGen::CGOpenMPRuntimeGPU::translateParameter(), clang::IdentifierResolver::tryAddTopLevelDecl(), clang::SemaOpenMP::tryCaptureOpenMPLambdas(), clang::Sema::tryCaptureVariable(), clang::Sema::tryLookupUnambiguousFieldDecl(), TryRefInitWithConversionFunction(), TryUserDefinedConversion(), clang::ASTImporterLookupTable::update(), ValidDuplicateEnum(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::ASTNodeImporter::VisitAccessSpecDecl(), clang::ASTDeclWriter::VisitClassTemplateDecl(), clang::ASTDeclWriter::VisitClassTemplateSpecializationDecl(), clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitCXXRecordDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFieldDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTNodeImporter::VisitFunctionTemplateDecl(), clang::JSONNodeDumper::VisitNamedDecl(), clang::ASTDeclReader::VisitObjCIvarDecl(), clang::ASTDeclWriter::VisitObjCIvarDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTNodeImporter::VisitStaticAssertDecl(), clang::ASTDeclWriter::VisitTemplateTypeParmDecl(), clang::ASTDeclWriter::VisitTypedefDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTDeclWriter::VisitUsingShadowDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarDecl(), clang::ASTDeclWriter::VisitVarDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateDecl(), clang::ASTNodeImporter::VisitVarTemplateDecl(), and clang::ASTNodeImporter::VisitVarTemplateSpecializationDecl().
◆ getDeclContext() [2/2] const DeclContext * clang::Decl::getDeclContext ( ) const inline ◆ getDeclKindName() const char * Decl::getDeclKindName ( ) const ◆ getDefiningAttr() const Attr * Decl::getDefiningAttr ( ) constReturn this declaration's defining attribute if it has one.
Definition at line 620 of file DeclBase.cpp.
◆ getDescribedTemplate() ◆ getDescribedTemplateParams() ◆ getEndLoc()Definition at line 438 of file DeclBase.h.
References clang::SourceRange::getEnd(), and getSourceRange().
Referenced by clang::Sema::ActOnCXXNew(), clang::Sema::ActOnFinishFunctionBody(), clang::TemplateDeclInstantiator::adjustForRewrite(), clang::Sema::checkFinalSuspendNoThrow(), checkTypeParamListConsistency(), ComputeDefaultedComparisonExceptionSpec(), CreateNewFunctionDecl(), clang::Sema::DefineDefaultedComparison(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DefineImplicitMoveAssignment(), clang::CodeGen::CGOpenMPRuntime::emitDoacrossInit(), GenerateFixForUnusedDecl(), clang::tooling::getAssociatedRange(), clang::ExportDecl::getEndLoc(), clang::LinkageSpecDecl::getEndLoc(), clang::CoroutineBodyStmt::getEndLoc(), GetFullTypeForDeclarator(), clang::UsingDecl::getSourceRange(), clang::UnresolvedUsingValueDecl::getSourceRange(), clang::ObjCTypeParamDecl::getSourceRange(), clang::OMPCapturedExprDecl::getSourceRange(), getSourceRangeToTokenEnd(), clang::ento::PathDiagnosticLocation::getValidSourceLocation(), clang::Sema::InstantiateFunctionDefinition(), maybeRecoverWithZeroInitialization(), RedeclarePropertyAccessor(), clang::CodeGen::CodeGenModule::Release(), SuggestInitializationFixit(), clang::TreeTransform< Derived >::TransformOMPExecutableDirective(), clang::TreeTransform< Derived >::TransformOMPInformationalDirective(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::ASTDeclWriter::VisitFunctionDecl(), clang::ASTDeclWriter::VisitImportDecl(), clang::ASTNodeImporter::VisitObjCMethodDecl(), clang::ASTDeclWriter::VisitObjCMethodDecl(), and warnAboutRedundantParens().
◆ getExternalSourceSymbolAttr() ExternalSourceSymbolAttr * Decl::getExternalSourceSymbolAttr ( ) const ◆ getFriendObjectKind()Determines whether this declaration is the object of a friend declaration and, if so, what kind.
There is currently no direct way to find the associated FriendDecl.
Definition at line 1219 of file DeclBase.h.
References FOK_Declared, FOK_None, FOK_Undeclared, IDNS_Ordinary, IDNS_OrdinaryFriend, IDNS_Tag, and IDNS_TagFriend.
Referenced by clang::Sema::ActOnPureSpecifier(), clang::Sema::ArgumentDependentLookup(), clang::Sema::canFullyTypeCheckRedeclaration(), clang::Sema::checkClassLevelDLLAttribute(), clang::Sema::CheckDependentFunctionTemplateSpecialization(), clang::Sema::CheckExplicitlyDefaultedComparison(), clang::Sema::CheckFunctionDeclaration(), clang::Sema::CheckFunctionTemplateSpecialization(), CheckMultiVersionAdditionalDecl(), clang::Sema::CheckOverload(), clang::Sema::CheckRedeclarationModuleOwnership(), ComputeDefaultedComparisonExceptionSpec(), clang::FriendDecl::Create(), DiagnoseInvalidRedeclaration(), clang::Sema::FindInstantiatedDecl(), clang::Sema::FinishTemplateArgumentDeduction(), clang::Sema::FriendConstraintsDependOnEnclosingTemplate(), getTemplateDepth(), clang::Sema::GetTemplateParameterList(), clang::FunctionDecl::getTemplateSpecializationKind(), clang::FunctionDecl::getTemplateSpecializationKindForInstantiation(), clang::Sema::InstantiateClass(), clang::Sema::InstantiateDefaultArgument(), clang::FunctionDecl::isMemberLikeConstrainedFriend(), isTemplated(), clang::FunctionDecl::isThisDeclarationInstantiatedFromAFriendDefinition(), clang::Sema::MergeCXXFunctionDecl(), clang::Sema::MergeFunctionDecl(), clang::serialization::needsAnonymousDeclarationNumber(), shouldBeHidden(), clang::Sema::shouldLinkDependentDeclWithPrevious(), SubstituteConstraintExpressionWithoutSatisfaction(), clang::TextNodeDumper::Visit(), clang::ASTNodeImporter::VisitClassTemplateDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitFunctionDecl(), and clang::TemplateDeclInstantiator::VisitFunctionDecl().
◆ getFunctionType()Looks through the Decl's underlying type to extract a FunctionType when possible.
This includes direct FunctionDecls, along with various function types and typedefs. This includes function pointers/references, member function pointers, and optionally if BlocksToo
is set Objective-C block pointers. Returns nullptr if the type underlying the Decl does not have a FunctionType.
Definition at line 1188 of file DeclBase.cpp.
References clang::Type::castAs(), D, clang::Type::getAs(), getPointeeType(), clang::Type::isBlockPointerType(), clang::Type::isFunctionPointerType(), clang::Type::isFunctionReferenceType(), clang::Type::isMemberFunctionPointerType(), and clang::QualType::isNull().
Referenced by clang::Sema::checkCall(), checkFormatStringExpr(), clang::Sema::FunctionNonObjectParamTypesAreEqual(), clang::getFunctionOrMethodNumParams(), clang::getFunctionOrMethodParamType(), clang::getFunctionOrMethodResultType(), clang::SemaRISCV::handleInterruptAttr(), handleNonNullAttrParameter(), handleSentinelAttr(), handleWarnUnusedResult(), clang::hasFunctionProto(), clang::isFuncOrMethodForAttrSubject(), clang::isFunctionOrMethodVariadic(), and isKernelDecl().
◆ getGlobalID() ◆ getID() int64_t Decl::getID ( ) const ◆ getIdentifierNamespace() unsigned clang::Decl::getIdentifierNamespace ( ) const inlineDefinition at line 882 of file DeclBase.h.
Referenced by clang::Sema::ArgumentDependentLookup(), clang::Sema::FilterUsingLookup(), hasTagIdentifierNamespace(), isInIdentifierNamespace(), setLocalExternDecl(), setObjectOfFriendDecl(), clang::UsingShadowDecl::setTargetDecl(), shouldBeHidden(), clang::ASTDeclWriter::VisitFunctionDecl(), clang::ASTDeclWriter::VisitRedeclarableTemplateDecl(), clang::ASTDeclWriter::VisitTagDecl(), and clang::ASTDeclWriter::VisitUsingShadowDecl().
◆ getIdentifierNamespaceForKind()Definition at line 867 of file DeclBase.cpp.
References clang::Block, clang::Empty, clang::Enum, clang::Friend, clang::Function, IDNS_Label, IDNS_Member, IDNS_Namespace, IDNS_ObjCProtocol, IDNS_OMPMapper, IDNS_OMPReduction, IDNS_Ordinary, IDNS_Tag, IDNS_Type, IDNS_Using, and Label.
◆ getImportedOwningModule() Module * clang::Decl::getImportedOwningModule ( ) const inline ◆ getKind() Kind clang::Decl::getKind ( ) const inlineDefinition at line 445 of file DeclBase.h.
Referenced by clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFields(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnTypedefDeclarator(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::ActOnVarTemplateSpecialization(), clang::ODRHash::AddDecl(), clang::CodeGen::CodeGenModule::AddDeferredUnusedCoverageMapping(), clang::ASTDeclReader::attachLatestDecl(), clang::ASTDeclReader::attachPreviousDecl(), clang::Sema::BuildDeclarationNameExpr(), castToDeclContext(), clang::Sema::CheckFunctionOrTemplateParamDeclarator(), clang::Sema::CheckTemplateArgumentList(), clang::DeclContext::classof(), compareDeclarations(), clang::ASTReader::CompleteRedeclChain(), clang::LinkageComputer::computeLVForDecl(), clang::NamedDecl::declarationReplaces(), DeduceTemplateArgumentsByTypeMatch(), clang::ODRDiagsEmitter::diagnoseMismatch(), diagnoseRedundantReturnTypeQualifiers(), dumpPreviousDecl(), clang::CodeGen::CodeGenModule::EmitDeferredUnusedCoverageMappings(), clang::CodeGen::CodeGenModule::EmitTopLevelDecl(), clang::comments::DeclInfo::fill(), clang::ASTReader::FindExternalLexicalDecls(), clang::ObjCContainerDecl::FindPropertyDeclaration(), clang::getCursorKindForDecl(), GetDeclSpecTypeForDeclarator(), clang::ASTNodeKind::getFromNode(), GetFullTypeForDeclarator(), getKind(), clang::ASTDeclReader::getMostRecentDecl(), clang::Sema::getNamedReturnInfo(), clang::getReplacedTemplateParameterList(), clang::index::getSymbolInfo(), clang::NamedDecl::getUnderlyingDecl(), clang::Sema::HandleDeclarator(), clang::VarDecl::isFileVarDecl(), clang::VarDecl::isFunctionOrMethodVarDecl(), isInstantiationOf(), clang::VarDecl::isLocalVarDecl(), clang::VarDecl::isLocalVarDeclOrParm(), clang::syntax::TreeBuilder::isResponsibleForCreatingDeclaration(), clang::ASTContext::isSameEntity(), clang::ASTContext::isSameTemplateParameter(), clang::VarDecl::isStaticDataMember(), IsStructurallyEquivalent(), clang::ODRHash::isSubDeclToBeProcessed(), isTemplateParameter(), clang::TemplateDecl::isTypeAlias(), MatchTemplateParameterKind(), clang::ento::ExprEngine::ProcessImplicitDtor(), clang::ento::CheckerManager::runCheckersOnASTDecl(), setNonMemberOperator(), clang::RecursiveASTVisitor< Derived >::TraverseDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclReader::VisitRedeclarableTemplateDecl(), and clang::ASTDeclWriter::VisitVarDecl().
◆ getLangOpts()Helper to get the language options from the ASTContext.
Defined out of line to avoid depending on ASTContext.h.
Definition at line 534 of file DeclBase.cpp.
References getASTContext(), and clang::ASTContext::getLangOpts().
Referenced by clang::transformer::after(), canBeWeakImported(), clang::VarDecl::checkForConstantInitialization(), clang::CXXRecordDecl::defaultedDefaultConstructorIsConstexpr(), clang::CXXRecordDecl::defaultedDestructorIsConstexpr(), describeClass(), clang::FunctionDecl::getBuiltinID(), clang::FunctionDecl::getMinRequiredArguments(), clang::VarDecl::getTLSKind(), clang::VarDecl::hasConstantInitialization(), clang::CXXRecordDecl::isLiteral(), clang::FunctionDecl::isMain(), and clang::VarDecl::isUsableInConstantExpressions().
◆ getLexicalDeclContext() [1/2]getLexicalDeclContext - The declaration context where this Decl was lexically declared (LexicalDC).
May be different from getDeclContext() (SemanticDC). e.g.:
namespace A { void f(); // SemanticDC == LexicalDC == 'namespace A' } void A::f(); // SemanticDC == namespace 'A' // LexicalDC == global namespace
Definition at line 911 of file DeclBase.h.
Referenced by clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::ASTUnit::addFileLevelDecl(), clang::DeclContext::addHiddenDecl(), clang::Sema::AddInitializerToDecl(), adjustDeclContextForDeclaratorDecl(), clang::Sema::AreConstraintExpressionsEqual(), clang::Sema::ArgumentDependentLookup(), clang::Sema::BuildVariableInstantiation(), CalculateTemplateDepthForConstraints(), clang::Sema::canFullyTypeCheckRedeclaration(), clang::Sema::CheckExplicitlyDefaultedComparison(), clang::Sema::CheckForFunctionRedefinition(), clang::Sema::CheckFunctionTemplateSpecialization(), clang::Sema::CheckRedeclarationExported(), checkTupleLikeDecomposition(), clang::Sema::CompleteLambdaCallOperator(), clang::ASTReader::CompleteRedeclChain(), ComputeDefaultedComparisonExceptionSpec(), clang::DeclContext::containsDecl(), clang::Sema::DiagnoseDeletedDefaultedFunction(), DiagUninitUse(), clang::exceptionSpecNotKnownYet(), clang::Sema::FindInstantiatedDecl(), clang::Sema::FinishTemplateArgumentDeduction(), clang::CodeGen::CodeGenModule::GetAddrOfGlobalTemporary(), clang::ASTWriter::getAnonymousDeclarationNumber(), getContextForScopeMatching(), getDefiningModule(), getEnclosingExportDecl(), getFriendCountAndPosition(), clang::ASTContext::getInlineVariableDefinitionKind(), getLexicalDeclContext(), clang::Sema::TemplateCompareNewDeclInfo::getLexicalDeclContext(), getParentFunctionOrMethod(), getPreviousDeclForInstantiation(), getTemplateDepth(), clang::Sema::HandleDelayedAccessCheck(), hasAcceptableMemberSpecialization(), clang::ASTNodeImporter::ImportDeclContext(), clang::Sema::InstantiateDefaultArgument(), clang::Sema::InstantiateExceptionSpec(), clang::Sema::InstantiateVariableDefinition(), clang::ClassTemplateSpecializationDecl::isClassScopeExplicitSpecialization(), clang::VarTemplateSpecializationDecl::isClassScopeExplicitSpecialization(), clang::VarDecl::isFileVarDecl(), clang::VarDecl::isFunctionOrMethodVarDecl(), isInExportDeclContext(), clang::VarDecl::isInExternCContext(), clang::FunctionDecl::isInExternCContext(), clang::VarDecl::isInExternCXXContext(), clang::FunctionDecl::isInExternCXXContext(), isInLocalScopeForInstantiation(), clang::VarDecl::isLocalVarDecl(), isOutOfLine(), IsOverloadOrOverrideImpl(), clang::ento::BugSuppression::isSuppressed(), isTemplated(), clang::Sema::MergeCXXFunctionDecl(), clang::Sema::MergeFunctionDecl(), mergeTypeWithPrevious(), clang::Sema::MergeVarDecl(), clang::serialization::needsAnonymousDeclarationNumber(), RedeclForcesDefC99(), clang::Sema::RegisterLocallyScopedExternCDecl(), clang::DeclContext::removeDecl(), clang::Sema::SetDeclDefaulted(), setLexicalDeclContext(), clang::Sema::shouldLinkDependentDeclWithPrevious(), clang::Sema::ShouldWarnIfUnusedFileScopedDecl(), substituteParameterMappings(), clang::Sema::UseArgumentDependentLookup(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::ASTNodeImporter::VisitClassTemplateDecl(), clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::ASTDeclWriter::VisitObjCIvarDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclWriter::VisitTemplateTypeParmDecl(), clang::ASTDeclWriter::VisitTypedefDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTDeclWriter::VisitUsingShadowDecl(), clang::ASTDeclWriter::VisitVarDecl(), and clang::ASTDeclReader::VisitVarDeclImpl().
◆ getLexicalDeclContext() [2/2] const DeclContext * clang::Decl::getLexicalDeclContext ( ) const inline ◆ getLocalOwningModule() Module * clang::Decl::getLocalOwningModule ( ) const inline ◆ getLocation()Definition at line 442 of file DeclBase.h.
References Loc.
Referenced by clang::Sema::ActOnAliasDeclaration(), clang::SemaObjC::ActOnAtEnd(), clang::Sema::ActOnBlockArguments(), clang::Sema::ActOnClassTemplateSpecialization(), clang::SemaObjC::ActOnCompatibilityAlias(), clang::Sema::ActOnCompoundStmt(), clang::Sema::ActOnConversionDeclarator(), clang::Sema::ActOnCXXConditionDeclaration(), clang::Sema::ActOnCXXDelete(), clang::Sema::ActOnCXXForRangeDecl(), clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ActOnEnumBody(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFields(), clang::SemaOpenMP::ActOnFinishedFunctionDefinitionInOpenMPDeclareVariantScope(), clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnForStmt(), clang::SemaObjC::ActOnForwardClassDeclaration(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnInitializerError(), clang::SemaOpenACC::ActOnIntExpr(), clang::SemaObjC::ActOnIvar(), clang::Sema::ActOnLabelStmt(), clang::Sema::ActOnLambdaExpressionAfterIntroducer(), clang::SemaObjC::ActOnMethodDeclaration(), clang::SemaObjC::ActOnMethodParmDeclaration(), clang::Sema::ActOnMSAsmStmt(), clang::Sema::ActOnNamespaceAliasDef(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::SemaObjC::actOnObjCTypeArgsOrProtocolQualifiers(), clang::SemaOpenMP::ActOnOMPIteratorExpr(), actOnOMPReductionKindClause(), clang::SemaOpenMP::ActOnOpenMPAlignedClause(), clang::SemaOpenMP::ActOnOpenMPAllocateDirective(), clang::SemaOpenMP::ActOnOpenMPCopyprivateClause(), clang::SemaOpenMP::ActOnOpenMPDeclareReductionCombinerStart(), clang::SemaOpenMP::ActOnOpenMPDeclareReductionInitializerStart(), clang::SemaOpenMP::ActOnOpenMPDeclareSimdDirective(), clang::SemaOpenMP::ActOnOpenMPFirstprivateClause(), clang::SemaOpenMP::ActOnOpenMPIdExpression(), clang::SemaOpenMP::ActOnOpenMPLastprivateClause(), clang::SemaOpenMP::ActOnOpenMPPrivateClause(), clang::SemaOpenMP::ActOnOpenMPRegionEnd(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnPopScope(), clang::Sema::ActOnPragmaRedefineExtname(), clang::SemaObjC::ActOnPropertyImplDecl(), clang::Sema::ActOnPureSpecifier(), clang::SemaObjC::ActOnStartCategoryImplementation(), clang::SemaObjC::ActOnStartCategoryInterface(), clang::SemaObjC::ActOnStartClassImplementation(), clang::SemaObjC::ActOnStartClassInterface(), clang::Sema::ActOnStartConceptDefinition(), clang::Sema::ActOnStartNamespaceDef(), clang::Sema::ActOnStartOfFunctionDef(), clang::SemaObjC::ActOnStartOfObjCMethodDef(), clang::SemaObjC::ActOnStartProtocolInterface(), clang::SemaObjC::ActOnSuperClassOfClassInterface(), clang::Sema::ActOnTag(), clang::Sema::ActOnTagFinishDefinition(), clang::Sema::ActOnTagTemplateIdType(), clang::Sema::ActOnTemplateTemplateParameter(), clang::Sema::ActOnVariableDeclarator(), clang::SemaHLSL::ActOnVariableDeclarator(), clang::ASTUnit::addFileLevelDecl(), addFunctionPointerConversion(), clang::CodeGen::CodeGenModule::AddGlobalAnnotations(), clang::Sema::addInitCapture(), clang::Sema::AddInitializerToDecl(), clang::Sema::AddKnownFunctionAttributes(), clang::Sema::AddKnownFunctionAttributesForReplaceableGlobalAllocationFunction(), clang::Sema::AddTemplateParametersToLambdaCallOperator(), applyNullability(), clang::applyObjCTypeArgs(), clang::Sema::areMultiversionVariantFunctionsCompatible(), clang::CodeGen::CodeGenPGO::assignRegionCounters(), clang::SemaObjC::AtomicPropertySetterGetterRules(), clang::ASTContext::attachCommentsToJustParsedDecls(), clang::Sema::AttachTypeConstraint(), clang::Sema::BuildBlockForLambdaConversion(), clang::Sema::BuildBuiltinOffsetOf(), clang::Sema::BuildCallToMemberFunction(), clang::SemaObjC::BuildClassMessage(), buildCoawaitCalls(), clang::Sema::BuildCXXForRangeStmt(), clang::Sema::BuildCXXNestedNameSpecifier(), clang::Sema::BuildCXXNew(), clang::Sema::BuildDeclarationNameExpr(), buildImplicitMapper(), clang::SemaObjC::BuildInstanceMessage(), clang::SemaObjC::BuildIvarRefExpr(), clang::Sema::BuildMemberReferenceExpr(), clang::Sema::BuildMemInitializer(), clang::Sema::BuildMicrosoftCAnonymousStruct(), BuildNonArrayForRange(), clang::Sema::BuildResolvedCallExpr(), clang::CodeGen::CGCXXABI::buildThisParam(), clang::Sema::BuildUsingDeclaration(), clang::Sema::BuildUsingEnumDeclaration(), clang::Sema::BuildUsingShadowDecl(), clang::Sema::BuildVariableInstantiation(), clang::Sema::BuiltinEnumUnderlyingType(), clang::ento::ObjCMethodCall::canBeOverridenInSubclass(), clang::canVarDeclThrow(), captureInBlock(), captureInLambda(), checkAddressOfFunctionIsAvailable(), clang::SemaCUDA::checkAllowedInitializer(), CheckAnonMemberRedeclaration(), clang::SemaObjC::CheckARCMethodDecl(), checkARCPropertyImpl(), checkAtomicPropertyMismatch(), clang::threadSafety::BeforeSet::checkBeforeAfter(), CheckBindingsCount(), clang::interp::CheckCallable(), clang::Sema::CheckCallReturnType(), clang::Sema::CheckClassTemplate(), clang::SemaHLSL::CheckCompatibleParameterABI(), clang::Sema::CheckCompletedCoroutineBody(), clang::Sema::CheckCompletedCXXClass(), clang::Sema::CheckCompleteDecompositionDeclaration(), clang::Sema::CheckConceptRedefinition(), clang::Sema::CheckConceptTemplateId(), clang::Sema::CheckConditionVariable(), clang::SemaObjC::CheckConflictingOverridingMethod(), clang::interp::CheckConstant(), CheckConstexprCtorInitializer(), CheckConstexprDestructorSubobjects(), CheckConstexprFunction(), CheckConstexprFunctionBody(), clang::Sema::CheckConstexprFunctionDefinition(), CheckConstexprMissingReturn(), CheckConstexprParameterTypes(), CheckConstexprReturnType(), CheckConstPureAttributesUsage(), clang::Sema::CheckCoroutineWrapper(), clang::Sema::CheckCountedByAttrOnField(), checkCUDADeviceBuiltinSurfaceClassTemplate(), checkCUDADeviceBuiltinTextureClassTemplate(), clang::Sema::CheckCXXDefaultArguments(), clang::interp::CheckDecl(), CheckDeclarationCausesMultiVersioning(), checkDeclInTargetContext(), clang::SemaOpenMP::checkDeclIsAllowedInOpenMPTarget(), CheckDeductionConsistency(), clang::Sema::CheckDeductionGuideTemplate(), clang::Sema::CheckDependentFunctionTemplateSpecialization(), clang::Sema::CheckDestructor(), checkDLLAttributeRedeclaration(), clang::SemaHLSL::CheckEntryPoint(), clang::Sema::CheckEnumRedeclaration(), clang::Sema::CheckEquivalentExceptionSpec(), checkEscapingByref(), CheckEvaluationResult(), CheckExplicitInstantiationScope(), clang::Sema::CheckExplicitlyDefaultedComparison(), clang::Sema::CheckExplicitlyDefaultedSpecialMember(), clang::Sema::CheckExplicitObjectMemberFunction(), clang::Sema::CheckExplicitObjectOverride(), clang::sema::checkExprLifetimeImpl(), clang::Sema::CheckExtraCXXDefaultArguments(), clang::Sema::CheckFieldDecl(), clang::Sema::CheckForFunctionRedefinition(), checkForMultipleExportedDefaultConstructors(), CheckForReference(), clang::Sema::CheckFriendAccess(), clang::Sema::CheckFunctionConstraints(), clang::Sema::CheckFunctionDeclaration(), clang::Sema::CheckFunctionTemplateSpecialization(), checkGlobalOrExternCConflict(), clang::Sema::CheckIfOverriddenFunctionIsMarkedFinal(), clang::Sema::CheckImmediateEscalatingFunctionDefinition(), clang::SemaObjC::CheckImplementationIvars(), clang::Sema::checkIncorrectVTablePointerAuthenticationAttribute(), checkInheritableAttr(), clang::SemaObjC::checkInitMethod(), checkIsValidOpenCLKernelParameter(), clang::Sema::CheckLiteralOperatorDeclaration(), checkLiteralOperatorTemplateParameterList(), CheckLocalVariableDeclaration(), clang::Sema::CheckMain(), checkMemberDecomposition(), clang::Sema::CheckMemberSpecialization(), checkMethodFamilyMismatch(), CheckMethodOverrideParam(), CheckMethodOverrideReturn(), clang::Sema::checkMSInheritanceAttrOnDefinition(), clang::Sema::CheckMSVCRTEntryPoint(), clang::ASTDeclReader::checkMultipleDefinitionInNamedModules(), CheckMultiVersionAdditionalDecl(), CheckMultiVersionAdditionalRules(), CheckMultiVersionFunction(), CheckMultiVersionValue(), checkNewAttributesAfterDef(), checkNonMultiVersionCompatAttributes(), clang::Sema::CheckNontrivialField(), clang::SemaObjC::CheckObjCCircularContainer(), clang::SemaObjC::CheckObjCDeclScope(), checkObjCDirectMethodClashes(), clang::SemaObjC::CheckObjCMethodDirectOverrides(), clang::SemaObjC::CheckObjCMethodOverride(), checkObjCUnusedIvar(), clang::SemaOpenMP::CheckOMPThreadPrivateDecl(), clang::SemaOpenMP::checkOpenMPDeclareVariantFunction(), clang::SemaOpenMP::CheckOpenMPLinearDecl(), CheckOperatorDeleteDeclaration(), CheckOperatorNewDeclaration(), CheckOperatorNewDeleteDeclarationScope(), CheckOperatorNewDeleteTypes(), clang::Sema::CheckOverloadedOperatorDeclaration(), clang::Sema::CheckOverrideControl(), clang::Sema::CheckOverridingFunctionAttributes(), clang::Sema::CheckOverridingFunctionExceptionSpec(), clang::Sema::CheckOverridingFunctionReturnType(), clang::Sema::CheckParameter(), clang::Sema::CheckPlaceholderExpr(), CheckPoppedLabel(), checkPropertyDeclWithOwnership(), CheckProtocolMethodDefs(), clang::interp::CheckPure(), clang::Sema::CheckPureMethod(), clang::Sema::CheckRedeclarationExported(), clang::Sema::CheckRedeclarationModuleOwnership(), clang::SemaObjC::checkRetainCycles(), clang::Sema::CheckShadow(), clang::Sema::CheckShadowingDeclModification(), CheckSimplerImplicitMovesMSVCWorkaround(), clang::SemaARM::CheckSMEFunctionDefAttributes(), clang::Sema::CheckSpecializationInstantiationRedecl(), clang::Sema::CheckSwitchCondition(), clang::SemaSYCL::CheckSYCLEntryPointFunctionDecl(), clang::SemaCUDA::checkTargetOverload(), clang::Sema::CheckTemplateArgument(), CheckTemplateArgumentAddressOfObjectOrFunction(), CheckTemplateArgumentPointerToMember(), clang::Sema::CheckTemplateParameterList(), CheckTemplateSpecializationScope(), clang::Sema::CheckTemplateTemplateArgument(), clang::Sema::CheckThreadLocalForLargeAlignment(), CheckTrivialDefaultConstructor(), checkTrivialSubobjectCall(), checkTupleLikeDecomposition(), clang::Sema::CheckTypedefForVariablyModifiedType(), clang::Sema::CheckTypenameType(), checkTypeParamListConsistency(), clang::Sema::checkTypeSupport(), checkUndefinedButUsed(), clang::Sema::CheckUsingDeclRedeclaration(), clang::Sema::CheckUsingShadowDecl(), checkUsingShadowRedecl(), clang::Sema::checkVarDeclRedefinition(), clang::Sema::CheckVariableDeclarationType(), clang::Sema::CheckVirtualDtorCall(), compare(), ComputeDefaultedComparisonExceptionSpec(), ComputeDefaultedSpecialMemberExceptionSpec(), clang::Sema::ConvertArgumentsForCall(), ConvertDeducedTemplateArgument(), ConvertDeducedTemplateArguments(), clang::Sema::ConvertParamDefaultArgument(), clang::Sema::CreateOverloadedBinOp(), clang::SemaObjC::CreatePropertyDecl(), clang::Sema::DeclareImplicitCopyAssignment(), clang::Sema::DeclareImplicitCopyConstructor(), clang::Sema::DeclareImplicitDefaultConstructor(), clang::Sema::DeclareImplicitDestructor(), clang::Sema::DeclareImplicitMoveAssignment(), clang::Sema::DeclareImplicitMoveConstructor(), clang::Sema::DeduceFunctionTypeFromReturnExpr(), DeduceNullPtrTemplateArgument(), clang::Sema::DeduceReturnType(), clang::Sema::deduceVarTypeFromInitializer(), clang::SemaSYCL::deepTypeCheckForDevice(), clang::SemaObjC::DefaultSynthesizeProperties(), clang::Sema::DefineDefaultedComparison(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DefineImplicitLambdaToBlockPointerConversion(), clang::Sema::DefineImplicitLambdaToFunctionPointerConversion(), clang::Sema::DefineImplicitMoveAssignment(), clang::Sema::DefineInheritingConstructor(), clang::InitializationSequence::Diagnose(), clang::Sema::DiagnoseAbsenceOfOverrideControl(), clang::Sema::DiagnoseAmbiguousLookup(), clang::Sema::DiagnoseAssignmentResult(), clang::Sema::DiagnoseAutoDeductionFailure(), DiagnoseBadDeduction(), diagnoseBadDirectAccess(), DiagnoseCalleeStaticArrayParam(), DiagnoseCategoryDirectMembersProtocolConformance(), clang::SemaObjC::DiagnoseClassExtensionDupMethods(), DiagnoseConstAssignment(), clang::SemaObjC::DiagnoseCStringFormatDirectiveInCFAPI(), DiagnoseCStringFormatDirectiveInObjCAPI(), clang::Sema::DiagnoseDependentMemberLookup(), diagnoseDeprecatedCopyOperation(), DiagnoseDirectIsaAccess(), clang::SemaObjC::DiagnoseDuplicateIvars(), clang::Sema::diagnoseEquivalentInternalLinkageDeclarations(), DiagnoseForRangeConstVariableCopies(), DiagnoseForRangeReferenceVariableCopies(), clang::Sema::DiagnoseHiddenVirtualMethods(), clang::Sema::DiagnoseImmediateEscalatingReason(), clang::Sema::DiagnoseInvalidExplicitObjectParameterInLambda(), DiagnoseInvalidRedeclaration(), diagnoseListInit(), DiagnoseLocalRegisterBinding(), clang::ODRDiagsEmitter::diagnoseMismatch(), diagnoseMissingConstinit(), clang::SemaObjC::DiagnoseMissingDesignatedInitOverrides(), clang::Sema::diagnoseMissingImport(), diagnoseMissingInitializer(), DiagnoseNamespaceInlineMismatch(), diagnoseNoescape(), diagnoseNonConstVariable(), clang::Sema::DiagnoseNontrivial(), DiagnoseObjCImplementedDeprecations(), diagnoseOpenCLTypes(), clang::SemaObjC::DiagnoseOwningPropertyGetterSynthesis(), clang::SemaObjC::DiagnosePropertyAccessorMismatch(), clang::SemaObjC::DiagnosePropertyMismatch(), clang::Sema::DiagnoseSentinelCalls(), clang::Sema::DiagnoseShadowingLambdaDecls(), clang::Sema::DiagnoseSizeOfParametersAndReturnValue(), DiagnoseUnimplementedAccessor(), clang::interp::DiagnoseUninitializedSubobject(), DiagnoseUninitializedUse(), clang::Sema::DiagnoseUninstantiableTemplate(), diagnoseUnknownDecl(), clang::SemaObjC::DiagnoseUnusedBackingIvarInAccessor(), clang::Sema::DiagnoseUnusedButSetDecl(), clang::Sema::DiagnoseUnusedDecl(), clang::Sema::DiagnoseUseOfDecl(), diagnoseUseOfInternalDeclInInlineFunction(), diagnoseVarDeclTypeMismatch(), DiagnoseVariableSizedIvars(), clang::Sema::DiagPlaceholderFieldDeclDefinitions(), clang::Sema::DiagRedefinedPlaceholderFieldDecl(), diagReturnOnAllocFailure(), DiagUninitUse(), DoEmitAvailabilityWarning(), clang::CodeGen::CGDebugInfo::EmitDeclareOfBlockDeclRefVariable(), EmitDiagForCXXThrowInNonThrowingFunc(), clang::CodeGen::CGDebugInfo::EmitExternalVariable(), clang::CodeGen::CGDebugInfo::EmitFuncDeclForCallSite(), clang::CodeGen::CGDebugInfo::EmitGlobalAlias(), clang::CodeGen::CGDebugInfo::EmitGlobalVariable(), emitInitWithReductionInitializer(), clang::CodeGen::CGDebugInfo::EmitLabel(), emitMappingInformation(), clang::CodeGen::CGDebugInfo::EmitNamespaceAlias(), emitOutlinedFunctionPrologue(), emitPreserveStructAccess(), emitReadOnlyPlacementAttrWarning(), clang::SemaObjC::EmitRelatedResultTypeNote(), clang::SemaObjC::EmitRelatedResultTypeNoteForReturn(), clang::CodeGen::CGOpenMPRuntime::emitThreadPrivateVarDefinition(), clang::CodeGen::CGDebugInfo::EmitUsingDirective(), clang::CodeGen::CGDebugInfo::EmitUsingShadowDecl(), clang::CodeGen::CodeGenModule::ErrorUnsupported(), clang::CodeGen::CGCXXABI::ErrorUnsupportedABI(), clang::Expr::EvaluateAsInitializer(), clang::Sema::FinalizeDeclaration(), clang::Sema::FinalizeDeclaratorGroup(), clang::Sema::FinalizeVarWithDestructor(), FindBaseInitializer(), findCompleteObject(), clang::Sema::FindDeallocationFunction(), clang::Sema::findInheritingConstructor(), clang::Sema::FindInstantiatedDecl(), clang::SemaObjC::FindProtocolDeclaration(), findSubobject(), clang::AccessSpecDecl::getAccessSpecifierLoc(), clang::CodeGen::CGOpenMPRuntime::getAddressOfLocalVariable(), clang::NamespaceAliasDecl::getAliasLoc(), clang::FileScopeAsmDecl::getAsmLoc(), clang::ObjCMethodDecl::getBeginLoc(), clang::BackendConsumer::getBestLocationFromDebugLoc(), clang::BlockDecl::getCaretLocation(), getDeclLocsForCommentSearch(), GetDeclSpecTypeForDeclarator(), clang::Sema::getDestructorName(), clang::ExportDecl::getEndLoc(), clang::LinkageSpecDecl::getEndLoc(), GetEndLoc(), clang::ObjCInterfaceDecl::getEndOfDefinitionLoc(), clang::ExportDecl::getExportLoc(), GetFullTypeForDeclarator(), clang::AnalysisDeclContext::getFunctionName(), clang::UsingDirectiveDecl::getIdentLocation(), getInitializationLoc(), getIssueHash(), clang::Sema::TemplateCompareNewDeclInfo::getLocation(), clang::interp::Descriptor::getLocation(), GetLocationForCandidate(), clang::FunctionDecl::getNameInfo(), clang::UsingDecl::getNameInfo(), clang::UnresolvedUsingValueDecl::getNameInfo(), clang::UnresolvedUsingTypenameDecl::getNameInfo(), clang::CodeGen::CodeGenModule::GetOrCreateLLVMGlobal(), getPosAsWritten(), getQualifiedNameStart(), clang::CXXCtorInitializer::getSourceLocation(), clang::ASTReader::getSourceLocationForDeclID(), getSourceRange(), clang::LabelDecl::getSourceRange(), clang::DeclaratorDecl::getSourceRange(), clang::VarDecl::getSourceRange(), clang::ParmVarDecl::getSourceRange(), clang::EnumConstantDecl::getSourceRange(), clang::TypeDecl::getSourceRange(), clang::TypedefDecl::getSourceRange(), clang::TagDecl::getSourceRange(), clang::TopLevelStmtDecl::getSourceRange(), clang::BlockDecl::getSourceRange(), clang::ImportDecl::getSourceRange(), clang::ExportDecl::getSourceRange(), clang::UsingDirectiveDecl::getSourceRange(), clang::StaticAssertDecl::getSourceRange(), clang::FriendDecl::getSourceRange(), clang::ObjCMethodDecl::getSourceRange(), clang::ObjCTypeParamDecl::getSourceRange(), clang::ObjCPropertyDecl::getSourceRange(), clang::ObjCInterfaceDecl::getSourceRange(), clang::ObjCProtocolDecl::getSourceRange(), clang::ObjCPropertyImplDecl::getSourceRange(), clang::TemplateTemplateParmDecl::getSourceRange(), clang::Sema::getTopMostPointOfInstantiation(), getTupleLikeElementType(), clang::Sema::getTypeName(), getVarDeclIdentifierLoc(), clang::ento::MemRegionManager::getVarRegion(), clang::SemaSwift::handleAsyncAttr(), handleCleanupAttr(), clang::index::IndexingContext::handleDecl(), handleDestroyAttr(), clang::SemaObjC::HandleExprPropertyRefExpr(), handleFormatAttr(), HandleImmediateInvocations(), clang::SemaRISCV::handleInterruptAttr(), clang::SemaSYCL::handleKernelAttr(), handleNoBuiltinAttr(), handleNoSanitizeAttr(), handleNoSanitizeSpecificAttr(), clang::ento::PathDiagnosticConsumer::HandlePathDiagnostic(), clang::SemaObjC::HandlePropertyInClassExtension(), handleTargetClonesAttr(), handleTransparentUnionAttr(), HelperToDiagnoseMismatchedMethodsInGlobalPool(), clang::Sema::ImplicitlyDefineFunction(), clang::ASTNodeImporter::ImportDeclParts(), clang::ASTNodeImporter::ImportDefinition(), clang::index::IndexingContext::importedModule(), clang::index::IndexingContext::indexTopLevelDecl(), clang::Sema::inferLifetimeBoundAttribute(), clang::SemaCUDA::inferTargetForImplicitSpecialMember(), clang::Sema::InheritedConstructorInfo::InheritedConstructorInfo(), clang::InitializationSequence::InitializeFrom(), InjectAnonymousStructOrUnionMembers(), clang::Sema::InstantiateClass(), clang::TemplateDeclInstantiator::InstantiateClassTemplatePartialSpecialization(), clang::TemplateDeclInstantiator::InstantiateEnumDefinition(), clang::Sema::InstantiateFunctionDefinition(), instantiateOMPDeclareVariantAttr(), clang::TemplateDeclInstantiator::InstantiateTypeAliasTemplateDecl(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), clang::Sema::InstantiateVariableDefinition(), clang::TemplateDeclInstantiator::InstantiateVarTemplatePartialSpecialization(), clang::Sema::isAcceptableTagRedeclaration(), clang::TagTypeLoc::isDefinition(), isForbiddenTypeAllowed(), isFromSystemHeader(), clang::LabelDecl::isGnuLocal(), clang::Sema::isIncompatibleTypedef(), isInMainFile(), clang::ObjCPropertyImplDecl::isIvarNameSpecified(), clang::Expr::isPotentialConstantExpr(), isStandardDelete(), isStandardNew(), IsStructurallyEquivalent(), clang::sema::AnalysisBasedWarnings::IssueWarnings(), clang::Sema::isTemplateTemplateParameterAtLeastAsSpecializedAs(), isVariableCapturable(), lookupPromiseType(), clang::Sema::LookupSpecialMember(), LookupStdInitializerList(), clang::Sema::LookupTemplateName(), MarkVarDeclODRUsed(), clang::Sema::MarkVirtualBaseDestructorsReferenced(), MatchTemplateParameterKind(), clang::Sema::maybeAddDeclWithEffects(), clang::SemaCUDA::maybeAddHostDeviceAttrs(), clang::RecordDecl::mayInsertExtraPadding(), mergeAlignedAttrs(), clang::Sema::MergeCXXFunctionDecl(), clang::Sema::mergeDeclAttributes(), clang::Sema::MergeFunctionDecl(), mergeInterfaceMethodToImpl(), mergeObjCDirectMembers(), mergeParamDeclAttributes(), mergeParamDeclTypes(), clang::Sema::MergeTypedefNameDecl(), clang::Sema::MergeVarDecl(), clang::Sema::MergeVarDeclExceptionSpecs(), clang::transformer::name(), clang::Sema::NoteDeletedFunction(), clang::Sema::NoteDeletedInheritingConstructor(), clang::Sema::NoteHiddenVirtualMethods(), noteLocation(), NoteLValueLocation(), noteNonDeducibleParameters(), clang::Sema::notePreviousDefinition(), NoteSurrogateCandidate(), clang::Sema::NoteTemplateLocation(), clang::SemaObjC::ParseObjCProtocolExpression(), clang::SemaObjC::ParseObjCSelectorExpression(), clang::Sema::ParseTypedefDecl(), PerformConstructorInitialization(), clang::Sema::PerformImplicitObjectArgumentInitialization(), clang::SemaOpenMP::PerformOpenMPImplicitIntegerConversion(), clang::index::FileIndexRecord::print(), clang::PrettyStackTraceDecl::print(), clang::PrettyDeclStackTraceEntry::print(), clang::CodeGen::CodeGenModule::printPostfixForExternalizedDecl(), clang::Sema::ProcessAPINotes(), ProcessAPINotes(), ProcessDeclAttribute(), clang::Sema::ProcessDeclAttributeList(), clang::SemaObjC::ProcessPropertyDecl(), clang::Sema::propagateDLLAttrToBaseClassTemplate(), clang::TreeTransform< Derived >::RebuildDependentNameType(), clang::TreeTransform< Derived >::RebuildObjCExceptionDecl(), clang::Sema::RebuildTemplateParamsInCurrentInstantiation(), rejectConstNotMutableType(), clang::CodeGen::SanitizerMetadata::reportGlobal(), reportOriginalDsa(), ReportOverrides(), clang::Sema::RequireCompleteEnumDecl(), clang::Sema::RequireLiteralType(), resolveBuiltinNewDeleteOverload(), rewriteBuiltinFunctionDecl(), clang::consumed::ConsumedAnalyzer::run(), selectBestPath(), clang::CodeGen::CodeGenModule::setGlobalVisibility(), clang::SemaObjC::SetIvarInitializers(), clang::CodeGen::CodeGenModule::SetLLVMFunctionAttributes(), clang::Sema::SetMemberAccessSpecifier(), clang::Sema::setTagNameForLinkagePurposes(), clang::Sema::ShouldDeleteSpecialMember(), shouldIgnoreDueToReservedName(), clang::Sema::SpecialMemberIsTrivial(), clang::Sema::SubstDecl(), clang::Sema::SubstDefaultArgument(), clang::TemplateDeclInstantiator::SubstDefaultedFunction(), clang::TemplateDeclInstantiator::SubstFunctionType(), clang::Sema::SubstParmVarDecl(), SuggestInitializationFixit(), clang::TreeTransform< Derived >::TransformCondition(), clang::TreeTransform< Derived >::TransformFunctionTypeParam(), clang::TreeTransform< Derived >::TransformOverloadExprDecls(), clang::CodeGen::CGOpenMPRuntimeGPU::translateParameter(), clang::Sema::tryCaptureVariable(), TryDiagnoseProtectedAccess(), TryOrBuildParenListInitialization(), clang::Sema::UnifySection(), UnwindTagContext(), validateBoxingMethod(), validateDeclsInsideHLSLBuffer(), ValidateMultipleRegisterAnnotations(), ValidateObjCLiteralInterfaceDecl(), validatePackoffset(), clang::Sema::VerifyIntegerConstantExpression(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::ASTNodeImporter::VisitAccessSpecDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitClassTemplatePartialSpecializationDecl(), clang::ASTNodeImporter::VisitClassTemplateSpecializationDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitClassTemplateSpecializationDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitConceptDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConstructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXDestructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXRecordDecl(), clang::ASTNodeImporter::VisitDecl(), clang::ASTNodeImporter::VisitEmptyDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitEnumDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFieldDecl(), clang::ASTNodeImporter::VisitFriendDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionDecl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTDeclReader::VisitFunctionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionTemplateDecl(), clang::ASTNodeImporter::VisitImplicitParamDecl(), clang::ASTNodeImporter::VisitImportDecl(), clang::ASTNodeImporter::VisitLinkageSpecDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitNamespaceDecl(), clang::ASTNodeImporter::VisitNonTypeTemplateParmDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCCategoryDecl(), clang::ASTNodeImporter::VisitObjCCategoryImplDecl(), clang::ASTNodeImporter::VisitObjCImplementationDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCInterfaceDecl(), clang::ASTDeclReader::VisitObjCIvarDecl(), clang::ASTNodeImporter::VisitObjCPropertyImplDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCProtocolDecl(), clang::ASTNodeImporter::VisitObjCTypeParamDecl(), clang::ASTNodeImporter::VisitParmVarDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitRecordDecl(), clang::ASTNodeImporter::VisitStaticAssertDecl(), clang::ASTNodeImporter::VisitTemplateTemplateParmDecl(), clang::ASTNodeImporter::VisitTemplateTypeParmDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl(), clang::ASTNodeImporter::VisitUsingEnumDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplatePartialSpecializationDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateSpecializationDecl(), clang::TemplateDeclInstantiator::VisitVarTemplateSpecializationDecl(), clang::ASTNodeImporter::VisitVarTemplateSpecializationDecl(), clang::SemaObjC::WarnConflictingTypedMethods(), clang::SemaObjC::WarnExactTypedMethods(), clang::Sema::WarnOnPendingNoDerefs(), clang::Sema::warnOnReservedIdentifier(), and WarnUndefinedMethod().
◆ getMaxAlignment() unsigned Decl::getMaxAlignment ( ) const ◆ getModuleOwnershipKind()Get the kind of module ownership for this declaration.
Definition at line 869 of file DeclBase.h.
References NextInContextAndBits.
Referenced by hasOwningModule(), isExportedFromModuleInterfaceUnit(), isInvisibleOutsideTheOwningModule(), isModulePrivate(), isReachable(), isUnconditionallyVisible(), clang::StoredDeclsList::replaceExternalDecls(), setLexicalDeclContext(), setModuleOwnershipKind(), setModulePrivate(), and clang::ASTDeclWriter::VisitDecl().
◆ getMostRecentDecl() [1/2] Decl * clang::Decl::getMostRecentDecl ( ) inlineRetrieve the most recent declaration that declares the same entity as this declaration (which may be this declaration).
Definition at line 1069 of file DeclBase.h.
References getMostRecentDeclImpl().
Referenced by clang::Sema::ArgumentDependentLookup(), clang::ASTDeclWriter::CollectFirstDeclFromEachModule(), forAllLaterRedecls(), clang::ASTContext::getASTRecordLayout(), clang::ASTContext::getTranslationUnitDecl(), clang::APValue::LValueBase::getType(), isUsed(), isWeakImported(), clang::Sema::mergeDeclAttributes(), ShouldRemoveFromUnused(), clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTDeclWriter::VisitNamespaceDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclWriter::VisitRedeclarable(), clang::ASTDeclWriter::VisitTypedefDecl(), clang::ASTDeclWriter::VisitUsingShadowDecl(), and clang::ASTDeclWriter::VisitVarDecl().
◆ getMostRecentDecl() [2/2] const Decl * clang::Decl::getMostRecentDecl ( ) const inlineRetrieve the most recent declaration that declares the same entity as this declaration (which may be this declaration).
Definition at line 1073 of file DeclBase.h.
References getMostRecentDeclImpl().
◆ getMostRecentDeclImpl() virtual Decl * clang::Decl::getMostRecentDeclImpl ( ) inlineprotectedvirtual ◆ getNextDeclInContext() [1/2] Decl * clang::Decl::getNextDeclInContext ( ) inline ◆ getNextDeclInContext() [2/2] const Decl * clang::Decl::getNextDeclInContext ( ) const inline ◆ getNextRedeclarationImpl() virtual Decl * clang::Decl::getNextRedeclarationImpl ( ) inlineprotectedvirtual ◆ getNonClosureContext() [1/2] Decl * Decl::getNonClosureContext ( ) ◆ getNonClosureContext() [2/2] const Decl * clang::Decl::getNonClosureContext ( ) const inline ◆ getNonTransparentDeclContext() [1/2] ◆ getNonTransparentDeclContext() [2/2] const DeclContext * clang::Decl::getNonTransparentDeclContext ( ) const inline ◆ getOwningModule() Module * clang::Decl::getOwningModule ( ) const inlineGet the module that owns this declaration (for visibility purposes).
Definition at line 835 of file DeclBase.h.
References getImportedOwningModule(), getLocalOwningModule(), and isFromASTFile().
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnTag(), clang::Sema::ArgumentDependentLookup(), clang::ASTDeclReader::checkMultipleDefinitionInNamedModules(), clang::Sema::CheckRedeclarationExported(), clang::Sema::CheckRedeclarationModuleOwnership(), clang::Sema::CheckTemplateParameterList(), CollectEnclosingNamespace(), clang::ASTWriter::GetDeclRef(), getLambdaCallOperatorHelper(), clang::Sema::getOwningModule(), getOwningModuleForLinkage(), getTopLevelOwningNamedModule(), isFromExplicitGlobalModule(), isFromGlobalModule(), isFromHeaderUnit(), isInAnotherModuleUnit(), isInCurrentModuleUnit(), isInNamedModule(), clang::Sema::IsRedefinitionInModule(), clang::Sema::notePreviousDefinition(), setLexicalDeclContext(), clang::TextNodeDumper::Visit(), clang::ASTDeclWriter::VisitDecl(), and clang::ASTWriter::wasDeclEmitted().
◆ getOwningModuleForLinkage() Module * Decl::getOwningModuleForLinkage ( ) constGet the module that owns this declaration for linkage purposes.
There only ever is such a standard C++ module.
Definition at line 1624 of file Decl.cpp.
References clang::Module::ExplicitGlobalModuleFragment, getOwningModule(), clang::Module::ImplicitGlobalModuleFragment, clang::Module::Kind, clang::Module::ModuleHeaderUnit, clang::Module::ModuleImplementationUnit, clang::Module::ModuleInterfaceUnit, clang::Module::ModuleMapModule, clang::Module::ModulePartitionImplementation, clang::Module::ModulePartitionInterface, clang::Module::Parent, and clang::Module::PrivateModuleFragment.
Referenced by clang::Sema::CheckRedeclarationModuleOwnership(), clang::NamedDecl::isExternallyDeclarable(), and clang::MangleContext::shouldMangleDeclName().
◆ getOwningModuleID() unsigned Decl::getOwningModuleID ( ) const ◆ getParentFunctionOrMethod() [1/2] ◆ getParentFunctionOrMethod() [2/2] ◆ getPreviousDecl() [1/2] Decl * clang::Decl::getPreviousDecl ( ) inlineRetrieve the previous declaration that declares the same entity as this declaration, or NULL if there is no previous declaration.
Definition at line 1054 of file DeclBase.h.
References getPreviousDeclImpl().
Referenced by clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ArgumentDependentLookup(), clang::Sema::checkClassLevelDLLAttribute(), clang::Sema::CheckSpecializationInstantiationRedecl(), collectAllContextsImpl(), clang::ASTDeclWriter::CollectFirstDeclFromEachModule(), clang::ExternalSource::completeVisibleDeclsMap(), diagnoseBadDirectAccess(), DoEmitAvailabilityWarning(), clang::ASTDumper::dumpLookups(), dumpPreviousDeclImpl(), forAllLaterRedecls(), clang::VarDecl::getActingDefinition(), getDeclForLocalLookup(), clang::ASTContext::getEnumType(), clang::ASTWriter::getFirstLocalDecl(), clang::interp::Program::getGlobal(), clang::ASTContext::getInjectedClassNameType(), getPreviousDeclForInstantiation(), clang::ASTContext::getRecordType(), clang::Sema::GetTemplateParameterList(), clang::Sema::InstantiateFunctionDefinition(), isFirstDecl(), isPreferredLookupResult(), clang::Sema::MergeVarDecl(), PreviousDeclsHaveMultiVersionAttribute(), setLocalExternDecl(), setObjectOfFriendDecl(), clang::ASTDeclWriter::VisitClassTemplatePartialSpecializationDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTDeclWriter::VisitRedeclarable(), clang::ASTDeclWriter::VisitVarTemplatePartialSpecializationDecl(), and clang::Sema::warnOnReservedIdentifier().
◆ getPreviousDecl() [2/2] const Decl * clang::Decl::getPreviousDecl ( ) const inlineRetrieve the previous declaration that declares the same entity as this declaration, or NULL if there is no previous declaration.
Definition at line 1058 of file DeclBase.h.
References getPreviousDeclImpl().
◆ getPreviousDeclImpl() virtual Decl * clang::Decl::getPreviousDeclImpl ( ) inlineprotectedvirtual ◆ getSourceRange() virtual SourceRange clang::Decl::getSourceRange ( ) const inlinevirtualSource range that this declaration covers.
Reimplemented in clang::LabelDecl, clang::NamespaceDecl, clang::DeclaratorDecl, clang::VarDecl, clang::ParmVarDecl, clang::FunctionDecl, clang::FieldDecl, clang::EnumConstantDecl, clang::TypeDecl, clang::TypedefDecl, clang::TypeAliasDecl, clang::TagDecl, clang::EnumDecl, clang::FileScopeAsmDecl, clang::TopLevelStmtDecl, clang::BlockDecl, clang::ImportDecl, clang::ExportDecl, clang::HLSLBufferDecl, clang::AccessSpecDecl, clang::LinkageSpecDecl, clang::UsingDirectiveDecl, clang::NamespaceAliasDecl, clang::UsingDecl, clang::UsingEnumDecl, clang::UsingPackDecl, clang::UnresolvedUsingValueDecl, clang::StaticAssertDecl, clang::FriendDecl, clang::ObjCMethodDecl, clang::ObjCTypeParamDecl, clang::ObjCPropertyDecl, clang::ObjCContainerDecl, clang::ObjCInterfaceDecl, clang::ObjCProtocolDecl, clang::ObjCPropertyImplDecl, clang::OMPCapturedExprDecl, clang::TemplateDecl, clang::TemplateTypeParmDecl, clang::NonTypeTemplateParmDecl, clang::TemplateTemplateParmDecl, clang::BuiltinTemplateDecl, clang::ClassTemplateSpecializationDecl, clang::ClassTemplatePartialSpecializationDecl, clang::VarTemplateSpecializationDecl, clang::VarTemplatePartialSpecializationDecl, and clang::ConceptDecl.
Definition at line 430 of file DeclBase.h.
References getLocation().
Referenced by clang::Sema::ActOnCXXConditionDeclaration(), clang::Sema::ActOnCXXNew(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::SemaOpenMP::ActOnOpenMPUsesAllocatorClause(), clang::Sema::ActOnTypedefDeclarator(), clang::Sema::AddAlignValueAttr(), clang::Sema::BuildDeclaratorGroup(), clang::Sema::CheckConversionDeclarator(), clang::SemaOpenMP::checkDeclIsAllowedInOpenMPTarget(), clang::Sema::CheckDeductionGuideDeclarator(), clang::Sema::CheckExplicitObjectMemberFunction(), ConvertDeducedTemplateArgument(), clang::Sema::DiagnoseMisalignedMembers(), clang::ODRDiagsEmitter::diagnoseMismatch(), diagnoseMissingInitializer(), diagnoseSubMismatchMethodParameters(), diagnoseUnknownDecl(), clang::SemaOpenMP::EndOpenMPDSABlock(), fixVarDeclWithArray(), clang::tooling::getAssociatedRange(), getBeginLoc(), clang::syntax::TreeBuilder::getDeclarationRange(), GetDeclSpecTypeForDeclarator(), getEndLoc(), GetFullTypeForDeclarator(), getNonCLikeKindForAnonymousStruct(), clang::interp::SourceInfo::getRange(), clang::DynTypedNode::getSourceRange(), clang::TemplateDecl::getSourceRange(), clang::syntax::TreeBuilder::getTemplateRange(), clang::Sema::HandleDeclarator(), handleNonNullAttrParameter(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::JSONNodeDumper::VisitTemplateTemplateParmDecl(), and warnAboutAmbiguousFunction().
◆ getTemplateDepth() unsigned Decl::getTemplateDepth ( ) const ◆ getTopLevelOwningNamedModule() Module * Decl::getTopLevelOwningNamedModule ( ) const ◆ getTranslationUnitDecl() [1/2] ◆ getTranslationUnitDecl() [2/2] ◆ getVersionIntroduced() VersionTuple Decl::getVersionIntroduced ( ) const ◆ hasAttr() bool clang::Decl::hasAttr ( ) const inlineDefinition at line 580 of file DeclBase.h.
References getAttrs(), and hasAttrs().
Referenced by clang::Sema::ActOnBlockStmtExpr(), clang::Sema::ActOnExplicitInstantiation(), clang::Sema::ActOnFields(), clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnFinishNamespaceDef(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnLambdaExpr(), clang::SemaObjC::ActOnMethodParmDeclaration(), clang::SemaObjC::ActOnObjCExceptionDecl(), actOnOMPReductionKindClause(), clang::SemaOpenMP::ActOnOpenMPAllocateDirective(), clang::SemaOpenMP::ActOnOpenMPCall(), clang::SemaOpenMP::ActOnOpenMPDeclareTargetName(), clang::SemaOpenMP::ActOnOpenMPLastprivateClause(), clang::SemaOpenMP::ActOnOpenMPLinearClause(), clang::SemaHLSL::ActOnOutParamExpr(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnPragmaWeakAlias(), clang::SemaObjC::ActOnStartCategoryImplementation(), clang::SemaObjC::ActOnStartClassImplementation(), clang::Sema::ActOnStartOfFunctionDef(), clang::SemaObjC::ActOnStartOfObjCMethodDef(), clang::Sema::ActOnTagFinishDefinition(), clang::Sema::ActOnUninitializedDecl(), clang::Sema::ActOnVariableDeclarator(), clang::ASTRecordWriter::AddFunctionDefinition(), clang::CodeGen::CodeGenModule::AddGlobalAnnotations(), clang::Sema::AddInitializerToDecl(), clang::Sema::AddKnownFunctionAttributes(), clang::Sema::AddKnownFunctionAttributesForReplaceableGlobalAllocationFunction(), clang::Sema::AddOptnoneAttributeIfNoConflicts(), clang::Sema::AddSectionMSAllocText(), addX86InterruptAttrs(), adjustGVALinkageForAttributes(), AllowOverloadingOfFunction(), clang::CodeGen::CodeGenModule::AlwaysHasLTOVisibilityPublic(), annotateConsumedSummaryMismatch(), clang::Sema::applyFunctionAttributesBeforeParsingBody(), applyOMPAllocateAttribute(), clang::SemaObjC::AreMultipleMethodsInGlobalPool(), clang::CodeGen::CodeGenTypes::arrangeObjCMessageSendSignature(), assignInheritanceModel(), clang::CodeGen::CodeGenPGO::assignRegionCounters(), clang::Sema::AttachBaseSpecifiers(), basicGVALinkageForFunction(), clang::SemaObjC::BuildInstanceMessage(), clang::Sema::BuildResolvedCallExpr(), clang::Sema::BuildReturnStmt(), clang::Sema::ImplicitExceptionSpecification::CalledDecl(), canRedefineFunction(), captureInBlock(), clang::CFGCleanupFunction::CFGCleanupFunction(), clang::SemaCUDA::checkAllowedInitializer(), clang::SemaObjC::CheckARCMethodDecl(), clang::Sema::CheckAssignmentOperands(), clang::Sema::checkCall(), clang::interp::CheckCallable(), clang::Sema::CheckCompletedCoroutineBody(), CheckConstPureAttributesUsage(), clang::Sema::CheckCoroutineWrapper(), clang::SemaHLSL::CheckEntryPoint(), checkForIBOutlets(), clang::Sema::CheckFunctionDeclaration(), clang::SemaCUDA::CheckLambdaCapture(), clang::Sema::CheckMain(), clang::SemaObjC::CheckMessageArgumentTypes(), CheckMoveOnConstruction(), CheckMultiVersionAdditionalDecl(), CheckNonNullArguments(), CheckNonNullExpr(), clang::Sema::CheckNontrivialField(), clang::SemaObjC::CheckObjCMethodOverride(), clang::SemaObjC::CheckObjCPropertyAttributes(), clang::SemaOpenMP::CheckOMPThreadPrivateDecl(), clang::SemaOpenMP::checkOpenMPDeclareVariantFunction(), clang::Sema::CheckOverrideControl(), checkPreviousOMPAllocateAttribute(), CheckProtocolMethodDefs(), checkRecordDeclForAttr(), clang::SemaARM::CheckSMEFunctionDefAttributes(), clang::Sema::CheckStaticLocalForDllExport(), clang::Sema::CheckTCBEnforcement(), clang::Sema::CheckTransparentUnionArgumentConstraints(), checkTypedefTypeForCapability(), clang::Sema::CheckVariableDeclarationType(), clang::Sema::CheckVirtualDtorCall(), compareEnableIfAttrs(), clang::interp::ByteCodeEmitter::compileFunc(), computeKeyFunction(), clang::LinkageComputer::computeLVForDecl(), configureBlocksRuntimeObject(), clang::CodeGen::CodeGenModule::ConstructAttributeList(), clang::SemaObjC::CreatePropertyDecl(), CXXRecordNonInlineHasAttr(), clang::Sema::DeclareImplicitCopyConstructor(), clang::Sema::DeclareImplicitDestructor(), clang::Sema::DeclareImplicitMoveConstructor(), GlobalDeclRefChecker::declareTargetInitializer(), clang::DeclAttrsMatchCUDAMode(), clang::ASTContext::DeclMustBeEmitted(), clang::Sema::DeduceFunctionTypeFromReturnExpr(), clang::Sema::DefaultVariadicArgumentPromotion(), clang::CodeGen::CGObjCRuntime::destroyCalleeDestroyedArguments(), clang::Sema::DiagnoseAbsenceOfOverrideControl(), clang::Sema::DiagnoseAssignmentEnum(), DiagnoseLocalRegisterBinding(), diagnoseNoescape(), clang::SemaObjC::DiagnoseOwningPropertyGetterSynthesis(), DiagnoseUninitializedUse(), clang::Sema::DiagnoseUnusedButSetDecl(), DiagnoseUnusedOfDecl(), clang::Sema::DiagnoseUseOfDecl(), diagnoseUseOfInternalDeclInInlineFunction(), emitCheckHandlerCall(), clang::CodeGen::CGDebugInfo::EmitDeclareOfBlockDeclRefVariable(), EmitDirectCallee(), clang::CodeGen::CGDebugInfo::EmitExternalVariable(), clang::CodeGen::CGDebugInfo::EmitFuncDeclForCallSite(), clang::CodeGen::CGDebugInfo::emitFunctionStart(), clang::CodeGen::CodeGenModule::EmitGlobal(), clang::CodeGen::CGDebugInfo::EmitGlobalAlias(), EmitGlobalVarDeclLValue(), clang::CodeGen::CGDebugInfo::EmitGlobalVariable(), clang::CodeGen::CGHLSLRuntime::emitInputSemantic(), clang::CodeGen::CGDebugInfo::EmitLabel(), EvaluateUnaryTypeTrait(), clang::Sema::FinalizeDeclaration(), clang::Sema::FinalizeVarWithDestructor(), findProtocolsWithExplicitImpls(), clang::Sema::GatherArgumentsForCall(), clang::CodeGen::CGOpenMPRuntime::getAddressOfLocalVariable(), clang::CodeGen::CGOpenMPRuntimeGPU::getAddressOfLocalVariable(), clang::CodeGen::CodeGenModule::GetAddrOfConstantCFString(), clang::getArmStreamingFnType(), clang::ASTContext::getBlockVarCopyInit(), clang::CodeGen::CodeGenModule::getBuiltinLibFunction(), getCallingConventionForDecl(), getDeclAlignIfRequired(), clang::CXXMethodDecl::getDevirtualizedMethod(), clang::getDLLAttr(), clang::Sema::getEmissionStatus(), clang::ento::retaincountchecker::RefLeakReportVisitor::getEndPath(), GetFullTypeForDeclarator(), clang::CodeGen::CodeGenModule::GetGlobalVarAddressSpace(), clang::Sema::getImplicitCodeSegOrSectionAttrForFunction(), clang::CodeGen::CodeGenModule::getLLVMLinkageForDeclarator(), clang::LinkageComputer::getLVForDecl(), clang::Sema::getNamedReturnInfo(), clang::CodeGen::CodeGenModule::GetOrCreateLLVMGlobal(), clang::CodeGen::CodeGenModule::getOrCreateStaticVarDecl(), clang::CodeGen::CodeGenModule::getRawFunctionPointer(), clang::index::getSymbolInfo(), getTypeAlignIfRequired(), getTypeInfoLinkage(), clang::Sema::getUndefinedButUsed(), clang::CodeGen::CodeGenModule::getVTableLinkage(), handleCallbackAttr(), clang::CodeGen::CodeGenModule::HandleCXXStaticMemberVarInstantiation(), handleDelayedForbiddenType(), handleLifetimeCaptureByAttr(), handleManagedAttr(), handleNoBuiltinAttr(), handleNoRandomizeLayoutAttr(), handlePassObjectSizeAttr(), handleRandomizeLayoutAttr(), clang::CodeGen::CGOpenMPRuntime::hasAllocateAttributeForGlobalVar(), clang::CodeGen::CGOpenMPRuntimeGPU::hasAllocateAttributeForGlobalVar(), clang::hasArmZAState(), clang::hasArmZT0State(), hasBPFPreserveStaticOffset(), hasDirectVisibilityAttribute(), clang::interp::Function::hasNonNullAttr(), hasObjCExceptionAttribute(), clang::Expr::HasSideEffects(), clang::SemaCUDA::IdentifyTarget(), clang::Sema::inferNullableClassAttribute(), clang::SemaCUDA::inferTargetForImplicitSpecialMember(), clang::InitializedEntity::InitializeParameter(), clang::Sema::InstantiateAttrs(), clang::Sema::InstantiateClassMembers(), clang::Sema::InstantiateVariableInitializer(), isAllocatableDecl(), IsArgumentMaybeUndef(), clang::IsArmStreamingFunction(), clang::sema::isAssignmentOperatorLifetimeBound(), isAttributedCoroAwaitElidable(), isBetterMultiversionCandidate(), isClassOrMethodDLLImport(), clang::CodeGen::CGCXXABI::isEmittedWithConstantInitializer(), clang::CodeGen::isEmptyField(), isFunctionDefinitionDiscarded(), clang::Type::isIncompleteType(), isInMIGCall(), isKernelDecl(), isLayoutCompatible(), isNoexcept(), clang::SemaOpenMP::isOpenMPCapturedByRef(), IsPreserveAIArrayBase(), isTestingFunction(), isTransparentUnion(), IsTransparentUnionStandardConversion(), IsUnusedPrivateField(), isVarDeclStrongDefinition(), isVariableCapturable(), isVirtualCall(), clang::Sema::makeUnavailableInSystemHeader(), markEscapingByrefs(), MarkVarDeclODRUsed(), clang::SemaObjC::MatchTwoMethodDeclarations(), clang::SemaCUDA::MaybeAddConstantAttr(), clang::SemaCUDA::maybeAddHostDeviceAttrs(), maybeAttachUnversionedSwiftName(), clang::Sema::MaybeBindToTemporary(), clang::ASTContext::mayExternalize(), clang::Sema::mergeAlwaysInlineAttr(), clang::Sema::mergeDeclAttributes(), clang::Sema::mergeDLLExportAttr(), clang::Sema::mergeDLLImportAttr(), clang::Sema::MergeFunctionDecl(), mergeInterfaceMethodToImpl(), clang::Sema::mergeMinSizeAttr(), mergeObjCDirectMembers(), clang::Sema::mergeOptimizeNoneAttr(), mergeParamDeclAttributes(), clang::ASTContext::mergeTransparentUnionType(), clang::Sema::MergeVarDecl(), noteOverloads(), clang::ASTContext::ObjCMethodsAreEqual(), clang::InitializationSequence::Perform(), PerformConstructorInitialization(), clang::Sema::ProcessDeclAttributeDelayed(), clang::Sema::ProcessDeclAttributeList(), clang::SemaObjC::ProcessPropertyDecl(), pushTemporaryCleanup(), RecordModifiableNonNullParam(), recordUsesEBO(), clang::Sema::RefersToMemberWithReducedAlignment(), clang::CodeGen::SanitizerMetadata::reportGlobal(), requiresAMDGPUProtectedVisibility(), clang::Sema::SelectBestMethod(), clang::ASTContext::setBlockVarCopyInit(), clang::CodeGen::CodeGenModule::SetCommonAttributes(), setCUDAKernelCallingConvention(), clang::CodeGen::CodeGenModule::setDLLImportDLLExport(), clang::CodeGen::CodeGenModule::setGlobalVisibility(), clang::SemaCUDA::SetLambdaAttrs(), setLinkageForGV(), clang::CodeGen::CodeGenModule::SetLLVMFunctionAttributesForDefinition(), setVTableSelectiveDLLImportExport(), setWindowsItaniumDLLImport(), clang::OverloadCandidateSet::OperatorRewriteInfo::shouldAddReversed(), shouldBeInCOMDAT(), shouldConsiderTemplateVisibility(), ShouldDiagnoseSwitchCaseNotInEnum(), ShouldDiagnoseUnusedDecl(), shouldEscapeRegion(), shouldExtendLifetime(), clang::ASTContext::shouldExternalize(), clang::MangleContext::shouldMangleDeclName(), clang::CXXNewExpr::shouldNullCheckAllocation(), shouldOmitDefinition(), ShouldUseExternalRTTIDescriptor(), ShouldWarnAboutMissingPrototype(), clang::Sema::ShouldWarnIfUnusedFileScopedDecl(), SuggestInitializationFixit(), clang::CodeGen::CodeGenModule::TryEmitBaseDestructorAsAlias(), TryOrBuildParenListInitialization(), clang::Sema::updateAttrsForLateParsedTemplate(), clang::CodeGen::useFirstFieldIfTransparentUnion(), useInlineVisibilityHidden(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::sema::visitFunctionCallArguments(), clang::ASTDeclReader::VisitFunctionDecl(), clang::ento::SValExplainer::VisitNonParamVarRegion(), clang::ASTDeclWriter::VisitVarDecl(), clang::ASTDeclReader::VisitVarDeclImpl(), and clang::SemaObjC::WarnExactTypedMethods().
◆ hasAttrs() bool clang::Decl::hasAttrs ( ) const inlineDefinition at line 521 of file DeclBase.h.
Referenced by actOnOMPReductionKindClause(), clang::SemaOpenMP::ActOnOpenMPCopyinClause(), clang::SemaOpenMP::ActOnOpenMPCopyprivateClause(), clang::SemaOpenMP::ActOnOpenMPFirstprivateClause(), clang::SemaOpenMP::ActOnOpenMPLastprivateClause(), clang::SemaOpenMP::ActOnOpenMPLinearClause(), clang::SemaOpenMP::ActOnOpenMPPrivateClause(), clang::SemaOpenMP::ActOnOpenMPUseDevicePtrClause(), addAttr(), attr_begin(), attr_end(), clang::Sema::BuildReturnStmt(), clang::Sema::CheckAlignasUnderalignment(), clang::Sema::CheckFieldDecl(), checkNewAttributesAfterDef(), clang::Sema::CheckVariableDeclarationType(), createPrivatesRecordDecl(), clang::CodeGen::CGHLSLRuntime::emitInputSemantic(), clang::SemaOpenMP::EndOpenMPDSABlock(), clang::CodeGen::CGOpenMPRuntimeGPU::getAddressOfLocalVariable(), getAttr(), getMaxAlignment(), hasAttr(), hasAttr(), clang::ASTImporter::Import(), clang::Sema::mergeAvailabilityAttr(), clang::Sema::mergeDeclAttributes(), propagateAttributes(), RedeclarePropertyAccessor(), clang::MangleContext::shouldMangleDeclName(), clang::ASTDeclReader::UpdateDecl(), clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::ASTDeclWriter::VisitObjCIvarDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclWriter::VisitTemplateTypeParmDecl(), clang::ASTDeclWriter::VisitTypedefDecl(), clang::ASTDeclWriter::VisitUsingShadowDecl(), and clang::ASTDeclWriter::VisitVarDecl().
◆ hasBody() virtual bool clang::Decl::hasBody ( ) const inlinevirtualReturns true if this Decl
represents a declaration for a body of code, such as a function or method definition.
Note that hasBody
can also return true if any redeclaration of this Decl
represents a declaration for a body of code.
Reimplemented in clang::FunctionDecl, and clang::ObjCMethodDecl.
Definition at line 1086 of file DeclBase.h.
References getBody().
Referenced by clang::CloneDetector::analyzeCodeBody(), clang::CodeGen::CodeGenPGO::assignRegionCounters(), emitDiagnostics(), emitOutlinedFunctionPrologue(), hasImplicitBody(), clang::CallGraph::includeInGraph(), clang::CodeGen::CGOpenMPRuntime::markAsGlobalTarget(), clang::Sema::maybeAddDeclWithEffects(), clang::ento::CheckerManager::runCheckersOnASTBody(), and clang::TemplateDeclInstantiator::VisitFunctionDecl().
◆ hasCachedLinkage() bool clang::Decl::hasCachedLinkage ( ) const inlineprotected ◆ hasDefiningAttr() bool Decl::hasDefiningAttr ( ) const ◆ hasLocalOwningModuleStorage() bool Decl::hasLocalOwningModuleStorage ( ) const protected ◆ hasOwningModule() bool clang::Decl::hasOwningModule ( ) const inline ◆ hasTagIdentifierNamespace() bool clang::Decl::hasTagIdentifierNamespace ( ) const inline ◆ isCanonicalDecl() bool clang::Decl::isCanonicalDecl ( ) const inlineWhether this particular Decl is a canonical one.
Definition at line 977 of file DeclBase.h.
References getCanonicalDecl().
Referenced by clang::index::FileIndexRecord::addDeclOccurence(), clang::CXXMethodDecl::addOverriddenMethod(), clang::ASTContext::addOverriddenMethod(), clang::ClassTemplateDecl::AddPartialSpecialization(), clang::VarTemplateDecl::AddPartialSpecialization(), clang::RedeclarableTemplateDecl::addSpecializationImpl(), clang::ASTDeclWriter::AddTemplateSpecializations(), clang::NamedDecl::declarationReplaces(), clang::ASTDumper::dumpTemplateDecl(), clang::CodeGen::CGOpenMPRuntimeGPU::emitFunctionProlog(), getCanonicalDecl(), clang::ASTReader::getLoadedSpecializationsLookupTables(), clang::ASTContext::getSubstTemplateTypeParmPackType(), clang::ASTReader::haveUnloadedSpecializations(), clang::ASTDeclWriter::VisitClassTemplateSpecializationDecl(), clang::ASTDeclReader::VisitClassTemplateSpecializationDeclImpl(), clang::ASTDeclReader::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitFunctionDecl(), clang::ASTDeclReader::VisitFunctionDecl(), clang::ASTDeclWriter::VisitVarTemplateSpecializationDecl(), and clang::ASTDeclReader::VisitVarTemplateSpecializationDeclImpl().
◆ isDefinedOutsideFunctionOrMethod() bool clang::Decl::isDefinedOutsideFunctionOrMethod ( ) const inline ◆ isDeprecated() bool clang::Decl::isDeprecated ( std::string * Message =nullptr
) const inline ◆ isFileContextDecl() bool Decl::isFileContextDecl ( ) const ◆ isFirstDecl() bool clang::Decl::isFirstDecl ( ) const inline ◆ isFlexibleArrayMemberLike()
Whether it resembles a flexible array member.
This is a static member because we want to be able to call it with a nullptr. That allows us to perform non-Decl specific checks based on the object's type and strict flex array level.
Definition at line 440 of file DeclBase.cpp.
References D, clang::TypeLoc::getAs(), clang::TypeLoc::getAsAdjusted(), clang::ASTContext::getAsConstantArrayType(), clang::ASTContext::getAsIncompleteArrayType(), clang::Expr::getExprLoc(), clang::TypeSourceInfo::getTypeLoc(), clang::TypedefNameDecl::getTypeSourceInfo(), and clang::SourceLocation::isMacroID().
Referenced by clang::Sema::CheckCountedByAttrOnField(), FindFlexibleArrayMemberField(), and clang::Expr::isFlexibleArrayMemberLike().
◆ isFromASTFile() bool clang::Decl::isFromASTFile ( ) const inlineDetermine whether this declaration came from an AST file (such as a precompiled header or module) rather than having been parsed.
Definition at line 786 of file DeclBase.h.
References FromASTFile.
Referenced by clang::ASTUnit::addFileLevelDecl(), clang::DeclContext::addHiddenDecl(), compareDeclarations(), clang::NamedDecl::declarationReplaces(), getDeclForLocalLookup(), clang::ASTWriter::getDeclID(), clang::ASTWriter::GetDeclRef(), getGlobalID(), getImportedOwningModule(), getLocalOwningModule(), getOwningModule(), clang::ASTReader::getOwningModuleFile(), getOwningModuleID(), clang::Sema::InstantiateFunctionDefinition(), isDefinedInClangModule(), isImportedDeclContext(), clang::ASTDeclWriter::RegisterTemplateSpecialization(), clang::StoredDeclsList::removeExternalDecls(), clang::StoredDeclsList::replaceExternalDecls(), setLexicalDeclContext(), setLocalOwningModule(), setModuleOwnershipKind(), setOwningModuleID(), clang::TextNodeDumper::Visit(), clang::ASTDeclReader::VisitEnumDecl(), clang::ASTDeclReader::VisitRecordDecl(), and clang::ASTWriter::wasDeclEmitted().
◆ isFromExplicitGlobalModule() bool Decl::isFromExplicitGlobalModule ( ) const ◆ isFromGlobalModule() bool Decl::isFromGlobalModule ( ) const ◆ isFromHeaderUnit() bool Decl::isFromHeaderUnit ( ) const ◆ isFunctionOrFunctionTemplate() bool clang::Decl::isFunctionOrFunctionTemplate ( ) const inline ◆ isFunctionPointerType() bool Decl::isFunctionPointerType ( ) const ◆ isImplicit() bool clang::Decl::isImplicit ( ) const inlineisImplicit - Indicates whether the declaration was implicitly generated by the implementation.
If false, this declaration was written explicitly in the source code.
Definition at line 596 of file DeclBase.h.
Referenced by clang::Sema::ActOnBlockArguments(), clang::Sema::ActOnFinishFunctionBody(), clang::CXXRecordDecl::addedEligibleSpecialMemberFunction(), clang::Sema::AddOverloadCandidate(), clang::CodeGen::CodeGenPGO::assignRegionCounters(), clang::Sema::buildOverloadedCallSet(), clang::Sema::BuildResolvedCallExpr(), CheckAbstractClassUsage(), checkDLLAttributeRedeclaration(), clang::Sema::CheckExplicitlyDefaultedComparison(), clang::sema::checkExprLifetimeImpl(), clang::SemaObjC::CheckObjCMethodOverrides(), createOverloadsForFixedParams(), clang::Sema::DeclareImplicitDeductionGuides(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DiagnoseAbsenceOfOverrideControl(), DiagnoseBadTarget(), diagnoseDeprecatedCopyOperation(), clang::CodeGen::CGDebugInfo::EmitFunctionDecl(), clang::CodeGen::CGDebugInfo::emitFunctionStart(), FindFlexibleArrayMemberField(), clang::CXXRecordDecl::finishedDefaultedOrDeletedMember(), funcHasUsableBody(), clang::BodyFarm::getBody(), clang::ASTContext::getBuiltinVaListDecl(), getDeclLocsForCommentSearch(), GetFieldOffset(), clang::CXXRecordDecl::getLambdaExplicitTemplateParameters(), getNonCLikeKindForAnonymousStruct(), clang::ObjCMethodDecl::getNumSelectorLocs(), clang::ObjCMethodDecl::getSelectorStartLoc(), clang::SemaObjC::HandleExprPropertyRefExpr(), hasImplicitAttr(), hasImplicitBody(), clang::SemaCUDA::IdentifyTarget(), clang::Sema::ImplicitlyDefineFunction(), clang::index::IndexingContext::importedModule(), clang::index::IndexingContext::indexDecl(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), clang::FunctionTemplateDecl::isAbbreviated(), clang::FieldDecl::isAnonymousStructOrUnion(), IsArtificial(), clang::ObjCInterfaceDecl::isImplicitInterfaceDecl(), clang::RecordDecl::isInjectedClassName(), clang::CXXConversionDecl::isLambdaToBlockPointerConversion(), clang::diff::isSpecializedNodeExcluded(), clang::ODRHash::isSubDeclToBeProcessed(), isTrackedVar(), IsUnusedPrivateField(), LeastDerivedClassWithSameLayout(), clang::ObjCInterfaceDecl::lookupMethod(), mergeDeclAttribute(), clang::Sema::MergeFunctionDecl(), clang::Sema::MergeTypedefNameDecl(), clang::Sema::NoteDeletedFunction(), RedeclarePropertyAccessor(), RedeclForcesDefC99(), clang::ObjCMethodDecl::setMethodParams(), clang::Sema::ShouldDeleteSpecialMember(), shouldExtendLifetime(), clang::RecursiveASTVisitor< Derived >::TraverseDecl(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConstructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXDestructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXRecordDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTNodeImporter::VisitFieldDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::ASTDeclWriter::VisitObjCIvarDecl(), clang::ASTNodeImporter::VisitObjCMethodDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclWriter::VisitTemplateTypeParmDecl(), clang::ASTDeclWriter::VisitTypedefDecl(), and clang::Sema::warnOnReservedIdentifier().
◆ isInAnonymousNamespace() bool Decl::isInAnonymousNamespace ( ) const ◆ isInAnotherModuleUnit() bool Decl::isInAnotherModuleUnit ( ) const ◆ isInCurrentModuleUnit() bool Decl::isInCurrentModuleUnit ( ) const ◆ isInExportDeclContext() bool Decl::isInExportDeclContext ( ) const ◆ isInIdentifierNamespace() bool clang::Decl::isInIdentifierNamespace ( unsigned NS ) const inlineDefinition at line 886 of file DeclBase.h.
References getIdentifierNamespace().
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::DiagnoseAmbiguousLookup(), isOrdinaryMember(), clang::Sema::LookupQualifiedName(), clang::ASTNodeImporter::VisitClassTemplateDecl(), clang::ASTNodeImporter::VisitEnumConstantDecl(), clang::ASTNodeImporter::VisitEnumDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTNodeImporter::VisitFunctionTemplateDecl(), clang::ASTNodeImporter::VisitNamespaceDecl(), clang::ASTNodeImporter::VisitObjCInterfaceDecl(), clang::ASTNodeImporter::VisitObjCProtocolDecl(), clang::ASTNodeImporter::VisitRecordDecl(), clang::ASTNodeImporter::VisitTypeAliasTemplateDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTNodeImporter::VisitVarDecl(), and clang::ASTNodeImporter::VisitVarTemplateDecl().
◆ isInLocalScopeForInstantiation() bool Decl::isInLocalScopeForInstantiation ( ) const ◆ isInNamedModule() bool Decl::isInNamedModule ( ) constWhether this declaration comes from a named module.
Definition at line 1173 of file DeclBase.cpp.
References getOwningModule(), and clang::Module::isNamedModule().
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::ASTRecordWriter::AddCXXDefinitionData(), clang::Sema::CheckRedeclarationExported(), CollectEnclosingNamespace(), clang::NamedDecl::getFormalLinkage(), clang::CodeGen::CodeGenModule::getVTableLinkage(), clang::ASTWriter::handleVTable(), isExportedFromModuleInterfaceUnit(), clang::CodeGen::CodeGenVTables::isVTableExternal(), and clang::ASTDeclWriter::VisitCXXRecordDecl().
◆ isInStdNamespace() bool Decl::isInStdNamespace ( ) constDefinition at line 430 of file DeclBase.cpp.
References getDeclContext(), clang::DeclContext::getNonTransparentContext(), and clang::DeclContext::isStdNamespace().
Referenced by clang::Sema::ActOnFunctionDeclarator(), getInnerPointerType(), clang::FunctionDecl::getMemoryFunctionKind(), clang::Sema::inferNullableClassAttribute(), IsDeclSourceLocationCurrent(), clang::FunctionDecl::isDestroyingOperatorDelete(), isFromStdNamespace(), clang::Type::isNothrowT(), clang::ast_matchers::libc_func_matchers::isNullTermPointer(), IsStdFunction(), IsStdString(), clang::ento::tagged_union_modeling::isStdType(), and clang::sema::shouldTrackFirstArgument().
◆ isInvalidDecl() bool clang::Decl::isInvalidDecl ( ) const inlineDefinition at line 591 of file DeclBase.h.
Referenced by clang::Sema::ActOnAliasDeclaration(), clang::Sema::ActOnBlockArguments(), clang::Sema::ActOnBlockStmtExpr(), clang::Sema::ActOnCapScopeReturnStmt(), clang::Sema::ActOnCXXEnterDeclInitializer(), clang::Sema::ActOnCXXForRangeStmt(), clang::Sema::ActOnCXXTryBlock(), clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ActOnFields(), clang::Sema::ActOnFinishDelayedCXXMethodDeclaration(), clang::SemaOpenMP::ActOnFinishedFunctionDefinitionInOpenMPAssumeScope(), clang::Sema::ActOnFinishExportDecl(), clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnInitializerError(), clang::SemaObjC::ActOnIvar(), clang::Sema::ActOnLambdaExpressionAfterIntroducer(), clang::SemaObjC::ActOnObjCAtCatchStmt(), actOnOMPReductionKindClause(), clang::SemaOpenMP::ActOnOpenMPFirstprivateClause(), clang::SemaOpenMP::ActOnOpenMPPrivateClause(), clang::Sema::ActOnStartOfFunctionDef(), clang::SemaObjC::ActOnStartOfObjCMethodDef(), clang::Sema::ActOnTag(), clang::Sema::ActOnTypedefNameDecl(), clang::Sema::ActOnVariableDeclarator(), clang::Sema::AddInitializerToDecl(), clang::Sema::AddKnownFunctionAttributes(), clang::Sema::AddKnownFunctionAttributesForReplaceableGlobalAllocationFunction(), adjustDeclContextForDeclaratorDecl(), allLookupResultsAreTheSame(), AnalyzeBitFieldAssignment(), clang::Sema::applyFunctionAttributesBeforeParsingBody(), clang::ASTContext::attachCommentsToJustParsedDecls(), clang::Sema::BuildCallToObjectOfClassType(), clang::Sema::BuildCaptureField(), clang::Sema::BuildCXXForRangeStmt(), clang::Sema::BuildDeclaratorGroup(), buildDeclareReductionRef(), clang::SemaObjC::BuildIvarRefExpr(), clang::Sema::BuildLambdaExpr(), clang::Sema::BuildMemberReferenceExpr(), clang::Sema::BuildReturnStmt(), clang::SemaSYCL::BuildSYCLKernelCallStmt(), buildUserDefinedMapperRef(), clang::Sema::BuildUsingShadowDecl(), clang::Sema::BuildVariableInstantiation(), clang::Sema::BuildVarTemplateInstantiation(), canPassInRegisters(), CastToDerivedClass(), clang::SemaCUDA::checkAllowedInitializer(), checkARCPropertyImpl(), clang::interp::CheckCallable(), clang::Sema::CheckCompletedCoroutineBody(), clang::Sema::CheckCompletedCXXClass(), clang::Sema::CheckConceptTemplateId(), clang::Sema::CheckConditionVariable(), clang::Sema::CheckConstraintSatisfaction(), clang::Sema::CheckCXXDefaultArguments(), CheckDeclInExpr(), clang::SemaOpenMP::checkDeclIsAllowedInOpenMPTarget(), checkDLLAttributeRedeclaration(), clang::Sema::CheckFieldDecl(), clang::Sema::CheckIfFunctionSpecializationIsImmediate(), clang::SemaObjC::checkInitMethod(), clang::Sema::CheckMain(), clang::SemaObjC::CheckMessageArgumentTypes(), checkMethodFamilyMismatch(), clang::Sema::CheckMSVCRTEntryPoint(), CheckMultiVersionAdditionalDecl(), clang::Sema::CheckNontrivialField(), clang::SemaObjC::CheckObjCPropertyAttributes(), clang::Sema::CheckOverrideControl(), checkPropertyDeclWithOwnership(), clang::Sema::CheckPureMethod(), clang::SemaSYCL::CheckSYCLEntryPointFunctionDecl(), clang::Sema::CheckTemplateIdType(), clang::Sema::CheckVariableDeclaration(), clang::Sema::CheckVariableDeclarationType(), clang::RecordDecl::completeDefinition(), ComputeDefaultedComparisonExceptionSpec(), ComputeDefaultedSpecialMemberExceptionSpec(), clang::Sema::CreateOverloadedBinOp(), clang::Sema::DeclareImplicitDeductionGuides(), clang::Sema::DeduceFunctionTypeFromReturnExpr(), clang::Sema::DeduceReturnType(), clang::Sema::DeduceTemplateArguments(), DeduceTemplateArgumentsByTypeMatch(), clang::Sema::DeduceTemplateArgumentsFromType(), clang::Sema::DeduceTemplateSpecializationFromInitializer(), clang::Sema::DeduceVariableDeclarationType(), clang::SemaObjC::DefaultSynthesizeProperties(), clang::Sema::DefineDefaultedComparison(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DefineImplicitDefaultConstructor(), clang::Sema::DefineImplicitLambdaToFunctionPointerConversion(), clang::Sema::DefineImplicitMoveAssignment(), DelegatingCycleHelper(), clang::Sema::DiagnoseAbsenceOfOverrideControl(), clang::Sema::DiagnoseHiddenVirtualMethods(), diagnoseOpenCLTypes(), DiagnoseReinterpretUpDownCast(), clang::SemaObjC::DiagnoseUnimplementedProperties(), clang::Sema::DiagnoseUninstantiableTemplate(), DoMarkBindingDeclReferenced(), DoMarkVarDeclReferenced(), clang::SemaOpenMP::EndOpenMPDSABlock(), EvaluateAndDiagnoseImmediateInvocation(), EvaluateVarDecl(), clang::Sema::FinalizeVarWithDestructor(), findCompleteObject(), clang::Sema::findInheritingConstructor(), clang::Sema::FindInstantiatedDecl(), clang::ASTContext::getASTRecordLayout(), clang::ASTContext::getCommentForDecl(), clang::Sema::getConstructorName(), getContainedDynamicClass(), getNonCLikeKindForAnonymousStruct(), clang::ASTContext::getPreferredTypeAlign(), clang::ASTContext::getTypeInfoDataSizeInChars(), clang::Sema::getUndefinedButUsed(), HandleClassZeroInitialization(), HandleConstructorCall(), clang::Sema::HandleField(), handleGridConstantAttr(), HandleLValueBase(), HandleLValueDirectBase(), HandleLValueMember(), clang::Sema::HandleMSProperty(), handleNoEscapeAttr(), hasUserDefinedMapper(), clang::index::IndexingContext::importedModule(), clang::Sema::InheritedConstructorInfo::InheritedConstructorInfo(), clang::Sema::InstantiateClass(), clang::Sema::InstantiateClassTemplateSpecialization(), clang::Sema::InstantiateEnum(), clang::Sema::InstantiateMemInitializers(), clang::Sema::InstantiateVariableDefinition(), clang::interp::InterpretOffsetOf(), isBetterMultiversionCandidate(), clang::Sema::IsDerivedFrom(), clang::FunctionDecl::isImplicitlyInstantiable(), clang::FieldDecl::isZeroSize(), clang::Sema::LookupLiteralOperator(), LookupMemberExpr(), clang::Sema::MarkBaseAndMemberDestructorsReferenced(), clang::Sema::MarkVirtualBaseDestructorsReferenced(), MatchesFriend(), clang::CXXRecordDecl::mayBeAbstract(), clang::Sema::MaybeBindToTemporary(), clang::Sema::MergeFunctionDecl(), clang::Sema::MergeTypedefNameDecl(), clang::Sema::MergeVarDecl(), clang::Sema::MergeVarDeclTypes(), clang::Sema::ParsedFreeStandingDeclSpec(), clang::Sema::PerformPendingInstantiations(), clang::SemaObjC::ProcessPropertyDecl(), clang::TreeTransform< Derived >::RebuildUnresolvedUsingType(), clang::Sema::RefersToMemberWithReducedAlignment(), clang::ASTContext::registerSYCLEntryPointFunction(), clang::LookupResult::resolveKind(), clang::Sema::SetDeclDefaulted(), clang::Sema::setTagNameForLinkagePurposes(), shouldBeHidden(), clang::Sema::ShouldDeleteSpecialMember(), ShouldDiagnoseUnusedDecl(), ShouldWarnAboutMissingPrototype(), clang::Sema::ShouldWarnIfUnusedFileScopedDecl(), clang::TreeTransform< Derived >::SkipLambdaBody(), clang::Sema::SubstDecl(), clang::TemplateDeclInstantiator::SubstTemplateParams(), clang::TreeTransform< Derived >::TransformNestedNameSpecifierLoc(), TryOrBuildParenListInitialization(), TryRefInitWithConversionFunction(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::interp::Compiler< Emitter >::VisitImplicitValueInitExpr(), clang::ASTDeclReader::VisitObjCIvarDecl(), clang::ASTDeclWriter::VisitObjCIvarDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclWriter::VisitTemplateTypeParmDecl(), and clang::ASTDeclWriter::VisitTypedefDecl().
◆ isInvisibleOutsideTheOwningModule() bool clang::Decl::isInvisibleOutsideTheOwningModule ( ) const inline ◆ isLocalExternDecl() bool clang::Decl::isLocalExternDecl ( ) const inlineDetermine whether this is a block-scope declaration with linkage.
This will either be a local variable declaration declared 'extern', or a local function declaration.
Definition at line 1162 of file DeclBase.h.
References IDNS_LocalExtern.
Referenced by clang::Sema::BuildVariableInstantiation(), clang::Sema::canFullyTypeCheckRedeclaration(), checkDLLAttributeRedeclaration(), clang::Sema::FilterUsingLookup(), clang::Sema::HandleDelayedAccessCheck(), isInitializationOfVar(), isTemplated(), clang::Sema::MergeCXXFunctionDecl(), shouldBeHidden(), and clang::TemplateDeclInstantiator::VisitFunctionDecl().
◆ isModulePrivate() bool clang::Decl::isModulePrivate ( ) const inlineWhether this declaration was marked as being private to the module in which it was defined.
Definition at line 645 of file DeclBase.h.
References getModuleOwnershipKind(), and ModulePrivate.
Referenced by clang::Sema::hasAcceptableDefinition(), clang::TextNodeDumper::VisitEnumDecl(), clang::TextNodeDumper::VisitFieldDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::TextNodeDumper::VisitFunctionDecl(), clang::ASTDeclWriter::VisitObjCIvarDecl(), clang::TextNodeDumper::VisitRecordDecl(), clang::TextNodeDumper::VisitTypedefDecl(), clang::ASTDeclWriter::VisitTypedefDecl(), and clang::TextNodeDumper::VisitVarDecl().
◆ isOutOfLine() bool Decl::isOutOfLine ( ) const virtualDetermine whether this declaration is declared out of line (outside its semantic context).
Reimplemented in clang::VarDecl, and clang::FunctionDecl.
Definition at line 99 of file Decl.cpp.
References clang::DeclContext::Equals(), getDeclContext(), and getLexicalDeclContext().
Referenced by clang::Sema::ActOnCXXEnterDeclInitializer(), clang::Sema::ActOnCXXExitDeclInitializer(), diagnoseBadDirectAccess(), clang::VarDecl::isOutOfLine(), clang::FunctionDecl::isOutOfLine(), clang::Sema::PushOnScopeChains(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitDecl(), and clang::TemplateDeclInstantiator::VisitFunctionDecl().
◆ isParameterPack() bool Decl::isParameterPack ( ) constWhether this declaration is a parameter pack.
Definition at line 247 of file DeclBase.cpp.
References isTemplateParameterPack().
Referenced by clang::Sema::ActOnSizeofParameterPackExpr(), clang::Sema::ActOnStartConceptDefinition(), clang::computeDependence(), ConvertDeducedTemplateArguments(), CXXNameMangler::TemplateArgManglingInfo::getArgInfo(), isSameAsPrimaryTemplate(), MatchTemplateParameterKind(), clang::JSONNodeDumper::VisitNonTypeTemplateParmDecl(), clang::TextNodeDumper::VisitNonTypeTemplateParmDecl(), clang::ASTNodeImporter::VisitNonTypeTemplateParmDecl(), clang::ASTDeclWriter::VisitNonTypeTemplateParmDecl(), clang::JSONNodeDumper::VisitTemplateTemplateParmDecl(), clang::TextNodeDumper::VisitTemplateTemplateParmDecl(), clang::ASTNodeImporter::VisitTemplateTemplateParmDecl(), clang::ASTDeclWriter::VisitTemplateTemplateParmDecl(), clang::JSONNodeDumper::VisitTemplateTypeParmDecl(), clang::TextNodeDumper::VisitTemplateTypeParmDecl(), clang::ASTNodeImporter::VisitTemplateTypeParmDecl(), and clang::TextNodeDumper::VisitVarDecl().
◆ isReachable() bool clang::Decl::isReachable ( ) const inline ◆ isReferenced() bool Decl::isReferenced ( ) const ◆ isTagIdentifierNamespace() static bool clang::Decl::isTagIdentifierNamespace ( unsigned NS ) inlinestatic ◆ isTemplated() bool Decl::isTemplated ( ) constDetermine whether this declaration is a templated entity (whether it is.
Definition at line 289 of file DeclBase.cpp.
References getDeclContext(), getDescribedTemplateParams(), getFriendObjectKind(), getLexicalDeclContext(), isLocalExternDecl(), and isTemplateDecl().
Referenced by clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnStartOfFunctionDef(), clang::Sema::ActOnStartOfLambdaDefinition(), clang::Sema::AddInitializerToDecl(), clang::SemaSYCL::BuildSYCLKernelCallStmt(), clang::SemaSYCL::CheckSYCLEntryPointFunctionDecl(), clang::CodeGen::CodeGenModule::EmitTopLevelDecl(), clang::ASTContext::registerSYCLEntryPointFunction(), and clang::JSONNodeDumper::VisitNamedDecl().
◆ isTemplateDecl() bool Decl::isTemplateDecl ( ) const ◆ isTemplateParameter() bool clang::Decl::isTemplateParameter ( ) const inlineisTemplateParameter - Determines whether this declaration is a template parameter.
Definition at line 2787 of file DeclBase.h.
References getKind().
Referenced by clang::Sema::ActOnEnumConstant(), clang::Sema::ActOnNamespaceAliasDef(), clang::Sema::ActOnParamDeclarator(), clang::Sema::CheckClassTemplate(), clang::Sema::DiagnoseTemplateParameterShadow(), clang::Sema::HandleDeclarator(), clang::Sema::HandleField(), clang::Sema::HandleMSProperty(), clang::NamedDecl::isReserved(), maybeDiagnoseTemplateParameterShadow(), shouldBeHidden(), and clang::ASTDeclReader::VisitDecl().
◆ isTemplateParameterPack() bool Decl::isTemplateParameterPack ( ) const ◆ isThisDeclarationReferenced() bool clang::Decl::isThisDeclarationReferenced ( ) const inline ◆ isTopLevelDeclInObjCContainer() bool clang::Decl::isTopLevelDeclInObjCContainer ( ) const inlineWhether this declaration is a top-level declaration (function, global variable, etc.) that is lexically inside an objc container definition.
Definition at line 631 of file DeclBase.h.
Referenced by clang::ASTDeclWriter::VisitCXXMethodDecl(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitEnumDecl(), clang::ASTDeclWriter::VisitFieldDecl(), clang::ASTDeclWriter::VisitParmVarDecl(), clang::ASTDeclWriter::VisitRecordDecl(), clang::ASTDeclWriter::VisitTemplateTypeParmDecl(), clang::ASTDeclWriter::VisitTypedefDecl(), and clang::ASTDeclWriter::VisitVarDecl().
◆ isUnavailable() bool clang::Decl::isUnavailable ( std::string * Message =nullptr
) const inline ◆ isUnconditionallyVisible() bool clang::Decl::isUnconditionallyVisible ( ) const inline
Determine whether this declaration is definitely visible to name lookup, independent of whether the owning module is visible.
Note: The declaration may be visible even if this returns false
if the owning module is visible within the query context. This is a low-level helper function; most code should be calling Sema::isVisible() instead.
Definition at line 852 of file DeclBase.h.
References getModuleOwnershipKind(), int, and Visible.
Referenced by clang::LookupResult::isReachable(), clang::LookupResult::isVisible(), clang::ObjCProtocolDecl::lookupMethod(), clang::ASTReader::makeNamesVisible(), clang::SemaObjC::MatchTwoMethodDeclarations(), clang::ASTReader::mergeDefinitionVisibility(), NestedProtocolHasNoDefinition(), and setVisibleDespiteOwningModule().
◆ isUsed()Whether any (re-)declaration of the entity was used, meaning that a definition is required.
setUsed()
) when determining whether the function is used.
Definition at line 557 of file DeclBase.cpp.
References getCanonicalDecl(), and getMostRecentDecl().
Referenced by clang::Sema::ActOnEndOfTranslationUnit(), clang::SemaOpenMP::ActOnOpenMPDeclareTargetName(), clang::SemaOpenMP::ActOnOpenMPIdExpression(), clang::Sema::ActOnPragmaUnused(), clang::Sema::BuildVariableInstantiation(), checkDLLAttributeRedeclaration(), CheckMultiVersionAdditionalRules(), CheckMultiVersionFunction(), clang::SemaOpenMP::checkOpenMPDeclareVariantFunction(), clang::CodeGen::CodeGenModule::EmitOMPDeclareMapper(), clang::CodeGen::CodeGenModule::EmitOMPDeclareReduction(), clang::Sema::MarkBaseAndMemberDestructorsReferenced(), markUsed(), clang::Sema::MergeCompatibleFunctionDecls(), clang::Sema::mergeDeclAttributes(), clang::Sema::MergeFunctionDecl(), clang::Sema::MergeVarDecl(), ShouldDiagnoseUnusedDecl(), ShouldRemoveFromUnused(), clang::Sema::ShouldWarnIfUnusedFileScopedDecl(), clang::updateFlags(), clang::JSONNodeDumper::Visit(), clang::TextNodeDumper::Visit(), clang::ASTDeclWriter::VisitDecl(), clang::ASTDeclWriter::VisitFieldDecl(), and clang::ASTDeclWriter::VisitObjCIvarDecl().
◆ isWeakImported() bool Decl::isWeakImported ( ) const ◆ markUsed()Mark the declaration used, in the sense of odr-use.
This notifies any mutation listeners in addition to setting a bit indicating the declaration is used.
Definition at line 572 of file DeclBase.cpp.
References clang::C, isUsed(), and setIsUsed().
Referenced by clang::Sema::ActOnAddrLabel(), clang::Sema::ActOnGotoStmt(), clang::Sema::BuildBlockForLambdaConversion(), clang::Sema::BuildCXXForRangeStmt(), buildDeclRefExpr(), clang::SemaOpenMP::CheckOMPThreadPrivateDecl(), clang::Sema::createLambdaInitCaptureVarDecl(), clang::Sema::DefineDefaultedComparison(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DefineImplicitLambdaToBlockPointerConversion(), clang::Sema::DefineImplicitLambdaToFunctionPointerConversion(), clang::Sema::DefineImplicitMoveAssignment(), and clang::ASTDeclReader::UpdateDecl().
◆ operator new() [1/2] void * Decl::operator new ( std::size_t Size, const ASTContext & Ctx, DeclContext * Parent, std::size_t Extra =0
) protected ◆ operator new() [2/2] void * Decl::operator new ( std::size_t Size, const ASTContext & Ctx, GlobalDeclID ID, std::size_t Extra = 0
) protected
Allocate memory for a deserialized declaration.
This routine must be used to allocate memory for any declaration that is deserialized from a module file.
Definition at line 70 of file DeclBase.cpp.
References clang::ASTContext::Allocate(), and clang::Result.
◆ operator=() [1/2] Decl & clang::Decl::operator= ( const Decl & ) delete ◆ operator=() [2/2] Decl & clang::Decl::operator= ( Decl && ) delete ◆ print() [1/2] ◆ print() [2/2] void Decl::print ( raw_ostream & Out, unsigned Indentation =0
, bool PrintInstantiation = false
) const
Definition at line 130 of file DeclPrinter.cpp.
References getASTContext(), and print().
Referenced by clang::ento::CallEvent::dump(), clang::BackendConsumer::EmitOptimizationMessage(), formatTemplateParameterPlaceholder(), NoteImplicitDeductionGuide(), noteLocation(), clang::DynTypedNode::print(), clang::TemplateName::print(), print(), printMemFnName(), clang::BackendConsumer::SrcMgrDiagHandler(), clang::BackendConsumer::UnsupportedDiagHandler(), clang::TextNodeDumper::VisitUnresolvedUsingTypenameDecl(), clang::TextNodeDumper::VisitUnresolvedUsingValueDecl(), and clang::TextNodeDumper::VisitUsingDecl().
◆ printGroup() ◆ PrintStats() void Decl::PrintStats ( ) static ◆ redecls()Returns an iterator range for all the redeclarations of the same decl.
It will iterate at least once (when this decl is the only one).
Definition at line 1042 of file DeclBase.h.
References redecls_begin(), and redecls_end().
Referenced by addGslOwnerPointerAttributeIfNotExisting(), compareDeclarations(), clang::NamedDecl::declarationReplaces(), clang::SemaObjC::DiagnoseOwningPropertyGetterSynthesis(), clang::ASTDumper::dumpTemplateDeclSpecialization(), findAcceptableDecl(), findDefiningRedecl(), clang::getCanonicalForwardRedeclChain(), getLambdaCallOperatorHelper(), clang::LinkageComputer::getLVForDecl(), clang::ASTContext::getRawCommentForAnyRedecl(), handleLifetimeCategoryAttr(), hasAcceptableDeclarationImpl(), hasAnyExplicitStorageClass(), and isReferenced().
◆ redecls_begin() ◆ redecls_end() ◆ setAccess()Definition at line 505 of file DeclBase.h.
References Access.
Referenced by clang::Sema::ActOnAliasDeclaration(), clang::Sema::ActOnCXXMemberDeclarator(), clang::Sema::ActOnEnumConstant(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFriendTypeDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaOpenMP::ActOnOpenMPAllocateDirective(), clang::Sema::ActOnStartCXXMemberDeclarations(), clang::Sema::ActOnTag(), clang::Sema::ActOnTemplateTemplateParameter(), clang::Sema::ActOnTypeParameter(), addBlockPointerConversion(), addFunctionPointerConversion(), clang::Sema::AddTemplateParametersToLambdaCallOperator(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::BuildUsingDeclaration(), clang::Sema::BuildUsingEnumDeclaration(), clang::Sema::BuildUsingShadowDecl(), clang::Sema::BuildVariableInstantiation(), clang::Sema::CheckClassTemplate(), clang::Sema::CheckFieldDecl(), clang::Sema::CheckFunctionDeclaration(), clang::SemaOpenMP::CheckOMPThreadPrivateDecl(), clang::Sema::CreateLambdaCallOperator(), clang::Sema::DeclareImplicitDefaultConstructor(), clang::Sema::findInheritingConstructor(), clang::Sema::HandleMSProperty(), clang::TemplateDeclInstantiator::InitMethodInstantiation(), InjectAnonymousStructOrUnionMembers(), clang::TemplateDeclInstantiator::InstantiateEnumDefinition(), clang::TemplateDeclInstantiator::InstantiateTypeAliasTemplateDecl(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), clang::Sema::MergeVarDecl(), clang::UnresolvedSetImpl::setAccess(), setInvalidDecl(), clang::Sema::SetMemberAccessSpecifier(), clang::Sema::SubstSpaceshipAsEqualEqual(), clang::ASTNodeImporter::VisitClassTemplateDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTDeclReader::VisitDecl(), clang::ASTNodeImporter::VisitEnumConstantDecl(), clang::ASTNodeImporter::VisitEnumDecl(), clang::ASTNodeImporter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFriendDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::ASTNodeImporter::VisitIndirectFieldDecl(), clang::ASTNodeImporter::VisitRecordDecl(), clang::ASTNodeImporter::VisitTypeAliasTemplateDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTNodeImporter::VisitUnresolvedUsingTypenameDecl(), clang::ASTNodeImporter::VisitUnresolvedUsingValueDecl(), clang::ASTNodeImporter::VisitUsingShadowDecl(), clang::ASTNodeImporter::VisitVarDecl(), clang::ASTNodeImporter::VisitVarTemplateDecl(), and clang::ASTNodeImporter::VisitVarTemplateSpecializationDecl().
◆ setAttrs() void clang::Decl::setAttrs ( const AttrVec & Attrs ) inline ◆ setCachedLinkage() void clang::Decl::setCachedLinkage ( Linkage L ) const inlineprotected ◆ setDeclContext()setDeclContext - Set both the semantic and lexical DeclContext to DC.
Definition at line 363 of file DeclBase.cpp.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::SemaObjC::ActOnMethodDeclaration(), clang::SemaOpenMP::ActOnOpenMPDeclareMapperDirective(), adjustDeclContextForDeclaratorDecl(), buildImplicitMapper(), CreateAAPCSABIBuiltinVaListDecl(), CreateAArch64ABIBuiltinVaListDecl(), clang::Sema::DeclApplyPragmaWeak(), clang::ParmVarDecl::setOwningFunction(), clang::Sema::SubstParmVarDecl(), clang::ASTDeclReader::VisitDecl(), and clang::ASTNodeImporter::VisitTypedefNameDecl().
◆ setFromASTFile() void clang::Decl::setFromASTFile ( ) inlineSet the FromASTFile flag.
This indicates that this declaration was deserialized and not parsed from source code and enables features such as module ownership information.
Definition at line 711 of file DeclBase.h.
References FromASTFile.
◆ setImplicit() void clang::Decl::setImplicit ( bool I =true
) inline
Definition at line 597 of file DeclBase.h.
Referenced by clang::SemaOpenMP::ActOnOMPIteratorExpr(), clang::SemaObjC::ActOnStartCategoryImplementation(), clang::Sema::ActOnStartCXXMemberDeclarations(), clang::Sema::ActOnStartNamespaceDef(), clang::SemaOpenMP::ActOnStartOfFunctionDefinitionInOpenMPDeclareVariantScope(), addBlockPointerConversion(), addFunctionPointerConversion(), clang::Sema::BuildAnonymousStructOrUnion(), clang::ASTContext::buildImplicitRecord(), clang::ASTContext::buildImplicitTypedef(), clang::Sema::BuildMicrosoftCAnonymousStruct(), clang::Sema::BuildParmVarDeclForTypedef(), buildVarDecl(), CreateAAPCSABIBuiltinVaListDecl(), clang::Sema::CreateBuiltin(), clang::Sema::CreateCapturedStmtRecordDecl(), createHostLayoutStruct(), createHostLayoutStructForBuffer(), clang::Sema::DeclareGlobalNewDelete(), clang::Sema::findInheritingConstructor(), clang::Sema::getOrCreateStdNamespace(), clang::Sema::ImplicitlyDefineFunction(), clang::ImplicitParamDecl::ImplicitParamDecl(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), clang::HLSLExternalSemaSource::InitializeSema(), InjectAnonymousStructOrUnionMembers(), InsertOCLBuiltinDeclarationsFromTable(), InventTemplateParameter(), clang::Sema::MergeFunctionDecl(), clang::UsingShadowDecl::UsingShadowDecl(), clang::ASTDeclReader::VisitDecl(), and clang::ASTNodeImporter::VisitFieldDecl().
◆ setInvalidDecl() void Decl::setInvalidDecl ( bool Invalid =true
)
setInvalidDecl - Indicates the Decl had a semantic error.
This allows for graceful error recovery.
Definition at line 159 of file DeclBase.cpp.
References clang::AS_public, clang::Invalid, and setAccess().
Referenced by clang::Sema::ActOnAliasDeclaration(), clang::SemaObjC::ActOnAtEnd(), clang::Sema::ActOnBlockArguments(), clang::Sema::ActOnCapScopeReturnStmt(), clang::Sema::ActOnCapturedRegionError(), clang::Sema::ActOnCXXForRangeDecl(), clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ActOnExceptionDeclarator(), clang::Sema::ActOnFields(), clang::Sema::ActOnFinishCXXInClassMemberInitializer(), clang::Sema::ActOnFinishFunctionBody(), clang::Sema::ActOnFriendFunctionDecl(), clang::Sema::ActOnFriendTypeDecl(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnInitializerError(), clang::SemaObjC::ActOnIvar(), clang::Sema::ActOnLambdaExpressionAfterIntroducer(), clang::SemaObjC::ActOnMethodDeclaration(), clang::SemaObjC::ActOnMethodParmDeclaration(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::SemaObjC::ActOnObjCExceptionDecl(), clang::SemaOpenMP::ActOnOpenMPDeclareReductionDirectiveEnd(), clang::SemaOpenMP::ActOnOpenMPFirstprivateClause(), clang::Sema::ActOnParamDeclarator(), clang::Sema::ActOnParamDefaultArgumentError(), clang::SemaObjC::ActOnPropertyImplDecl(), clang::SemaObjC::ActOnStartCategoryImplementation(), clang::SemaObjC::ActOnStartCategoryInterface(), clang::SemaObjC::ActOnStartClassImplementation(), clang::SemaObjC::ActOnStartClassInterface(), clang::Sema::ActOnStartConceptDefinition(), clang::Sema::ActOnStartExportDecl(), clang::Sema::ActOnStartNamespaceDef(), clang::Sema::ActOnStartOfFunctionDef(), clang::SemaObjC::ActOnStartOfObjCMethodDef(), clang::Sema::ActOnTag(), clang::Sema::ActOnTemplateTemplateParameter(), clang::SemaHLSL::ActOnTopLevelFunction(), clang::Sema::ActOnTypeParameter(), clang::Sema::ActOnVariableDeclarator(), clang::SemaHLSL::ActOnVariableDeclarator(), clang::Sema::AddInitializerToDecl(), clang::Sema::BuildAnonymousStructOrUnion(), clang::Sema::BuildCaptureField(), clang::Sema::BuildDeclaratorGroup(), clang::Sema::BuildExceptionDeclaration(), clang::Sema::BuildMicrosoftCAnonymousStruct(), clang::SemaObjC::BuildObjCExceptionDecl(), clang::Sema::BuildReturnStmt(), clang::Sema::BuildUsingDeclaration(), clang::Sema::BuildUsingEnumDeclaration(), clang::Sema::BuildUsingShadowDecl(), clang::SemaCUDA::checkAllowedInitializer(), clang::Sema::CheckClassTemplate(), clang::Sema::CheckCompletedCoroutineBody(), clang::Sema::CheckCompleteDecompositionDeclaration(), clang::Sema::CheckCXXDefaultArgExpr(), clang::Sema::CheckCXXThisCapture(), CheckDeclarationCausesMultiVersioning(), checkDLLAttributeRedeclaration(), clang::SemaHLSL::CheckEntryPoint(), clang::Sema::CheckEquivalentExceptionSpec(), clang::Sema::CheckExplicitlyDefaultedFunction(), clang::Sema::CheckExplicitObjectOverride(), checkExportedDecl(), clang::Sema::CheckFieldDecl(), clang::Sema::CheckForFunctionRedefinition(), clang::Sema::CheckFunctionDeclaration(), checkInheritableAttr(), clang::Sema::CheckInheritingConstructorUsingDecl(), clang::SemaObjC::checkInitMethod(), clang::Sema::CheckMain(), clang::Sema::CheckMSVCRTEntryPoint(), CheckMultiVersionAdditionalDecl(), CheckMultiVersionFirstFunction(), CheckMultiVersionFunction(), checkNewAttributesAfterDef(), clang::SemaObjC::CheckObjCDeclScope(), clang::SemaObjC::CheckObjCPropertyAttributes(), clang::Sema::CheckOverload(), clang::Sema::CheckOverrideControl(), clang::Sema::CheckParameter(), clang::Sema::CheckRedeclarationModuleOwnership(), clang::SemaCUDA::checkTargetOverload(), clang::Sema::CheckTypedefForVariablyModifiedType(), clang::Sema::checkTypeSupport(), clang::Sema::CheckUsingShadowDecl(), clang::Sema::checkVarDeclRedefinition(), clang::Sema::CheckVariableDeclarationType(), clang::Sema::CheckVarTemplateId(), clang::ConceptDecl::Create(), clang::FunctionTemplateDecl::Create(), clang::ClassTemplateDecl::Create(), clang::TypeAliasTemplateDecl::Create(), clang::VarTemplateDecl::Create(), CreateNewFunctionDecl(), clang::SemaObjC::CreatePropertyDecl(), clang::Sema::DeduceVariableDeclarationType(), clang::Sema::DefineDefaultedComparison(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DefineImplicitLambdaToBlockPointerConversion(), clang::Sema::DefineImplicitMoveAssignment(), DiagnoseInvalidRedeclaration(), diagnoseOpenCLTypes(), clang::Sema::DiagnoseUninstantiableTemplate(), diagnoseVarDeclTypeMismatch(), clang::Sema::FinalizeDeclaration(), clang::Sema::findInheritingConstructor(), FinishForRangeVarDecl(), GetFullTypeForDeclarator(), getPatternForClassTemplateSpecialization(), clang::Sema::InheritedConstructorInfo::InheritedConstructorInfo(), clang::Sema::InstantiateClass(), clang::TemplateDeclInstantiator::InstantiateEnumDefinition(), clang::Sema::InstantiateInClassInitializer(), clang::Sema::InstantiateMemInitializers(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), clang::Sema::InstantiateVariableInitializer(), clang::Sema::isIncompatibleTypedef(), clang::Sema::MergeTypedefNameDecl(), clang::Sema::MergeVarDecl(), clang::Sema::MergeVarDeclExceptionSpecs(), clang::Sema::ParseTypedefDecl(), clang::Sema::ProcessDeclAttributeList(), clang::Sema::SetDeclDefaulted(), clang::Sema::SubstBaseSpecifiers(), clang::Sema::SubstDefaultArgument(), and clang::TemplateDeclInstantiator::VisitCXXMethodDecl().
◆ setIsUsed() void clang::Decl::setIsUsed ( ) inline ◆ setLexicalDeclContext()Definition at line 367 of file DeclBase.cpp.
References getASTContext(), getDeclContext(), getLexicalDeclContext(), getModuleOwnershipKind(), getOwningModule(), hasOwningModule(), isFromASTFile(), setLocalOwningModule(), setModuleOwnershipKind(), and VisibleWhenImported.
Referenced by clang::Sema::ActOnFields(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnLambdaExpressionAfterIntroducer(), clang::SemaOpenMP::ActOnOpenMPDeclareMapperDirective(), clang::SemaObjC::ActOnProperty(), clang::Sema::ActOnTag(), clang::Sema::ActOnVariableDeclarator(), clang::ObjCImplDecl::addClassMethod(), clang::ObjCImplDecl::addInstanceMethod(), adjustDeclContextForDeclaratorDecl(), buildImplicitMapper(), clang::Sema::BuildLambdaExpr(), clang::Sema::BuildVariableInstantiation(), clang::Sema::CheckClassTemplate(), clang::SemaObjC::CheckImplementationIvars(), clang::Sema::CheckTemplateIdType(), clang::Sema::CompleteLambdaCallOperator(), clang::SemaObjC::CreatePropertyDecl(), clang::Sema::DeclApplyPragmaWeak(), RedeclarePropertyAccessor(), clang::ASTNodeImporter::VisitAccessSpecDecl(), clang::ASTNodeImporter::VisitClassTemplateDecl(), clang::ASTNodeImporter::VisitClassTemplateSpecializationDecl(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), clang::ASTNodeImporter::VisitEmptyDecl(), clang::ASTNodeImporter::VisitEnumConstantDecl(), clang::ASTNodeImporter::VisitEnumDecl(), clang::ASTNodeImporter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFriendDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTNodeImporter::VisitIndirectFieldDecl(), clang::ASTNodeImporter::VisitLabelDecl(), clang::ASTNodeImporter::VisitLifetimeExtendedTemporaryDecl(), clang::ASTNodeImporter::VisitLinkageSpecDecl(), clang::ASTNodeImporter::VisitNamespaceAliasDecl(), clang::ASTNodeImporter::VisitNamespaceDecl(), clang::ASTNodeImporter::VisitObjCCategoryDecl(), clang::ASTNodeImporter::VisitObjCCategoryImplDecl(), clang::ASTNodeImporter::VisitObjCImplementationDecl(), clang::ASTNodeImporter::VisitObjCInterfaceDecl(), clang::ASTNodeImporter::VisitObjCIvarDecl(), clang::ASTNodeImporter::VisitObjCMethodDecl(), clang::ASTNodeImporter::VisitObjCPropertyDecl(), clang::ASTNodeImporter::VisitObjCPropertyImplDecl(), clang::ASTNodeImporter::VisitObjCProtocolDecl(), clang::ASTNodeImporter::VisitRecordDecl(), clang::ASTNodeImporter::VisitStaticAssertDecl(), clang::ASTNodeImporter::VisitTypeAliasTemplateDecl(), clang::ASTNodeImporter::VisitTypedefNameDecl(), clang::ASTNodeImporter::VisitUnresolvedUsingTypenameDecl(), clang::ASTNodeImporter::VisitUnresolvedUsingValueDecl(), clang::ASTNodeImporter::VisitUsingDecl(), clang::ASTNodeImporter::VisitUsingDirectiveDecl(), clang::ASTNodeImporter::VisitUsingEnumDecl(), clang::ASTNodeImporter::VisitUsingShadowDecl(), clang::ASTNodeImporter::VisitVarDecl(), and clang::ASTNodeImporter::VisitVarTemplateDecl().
◆ setLocalExternDecl() void clang::Decl::setLocalExternDecl ( ) inline ◆ setLocalOwningModule() void clang::Decl::setLocalOwningModule ( Module * M ) inline ◆ setLocation() ◆ setModuleOwnershipKind()Set whether this declaration is hidden from name lookup.
Definition at line 874 of file DeclBase.h.
References getModuleOwnershipKind(), hasLocalOwningModuleStorage(), isFromASTFile(), NextInContextAndBits, and Unowned.
Referenced by clang::Sema::ActOnFinishNamespaceDef(), clang::Sema::ActOnGlobalModuleFragmentDecl(), clang::Sema::ActOnModuleDecl(), clang::Sema::ActOnPrivateModuleFragmentDecl(), clang::Sema::ActOnStartExportDecl(), clang::Sema::DeclareGlobalNewDelete(), setLexicalDeclContext(), setModulePrivate(), setVisibleDespiteOwningModule(), and clang::ASTDeclReader::VisitDecl().
◆ setModulePrivate() void clang::Decl::setModulePrivate ( ) inlineprotected ◆ setNonMemberOperator() void clang::Decl::setNonMemberOperator ( ) inline ◆ setObjectOfFriendDecl() void clang::Decl::setObjectOfFriendDecl ( bool PerformFriendInjection =false
) inline
Changes the namespace of this declaration to reflect that it's the object of a friend declaration.
These declarations appear in the lexical context of the friending class, but in the semantic context of the actual entity. This property applies only to a specific decl object; other redeclarations of the same entity may not (and probably don't) share this property.
Definition at line 1173 of file DeclBase.h.
References getIdentifierNamespace(), getPreviousDecl(), IDNS_LocalExtern, IDNS_NonMemberOperator, IDNS_Ordinary, IDNS_OrdinaryFriend, IDNS_Tag, IDNS_TagFriend, and IDNS_Type.
Referenced by clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnTag(), clang::Sema::CheckClassTemplate(), clang::TemplateDeclInstantiator::VisitCXXMethodDecl(), and clang::ASTNodeImporter::VisitFriendDecl().
◆ setOwningModuleID() void Decl::setOwningModuleID ( unsigned ID ) ◆ setReferenced() void clang::Decl::setReferenced ( bool R =true
) inline
Definition at line 626 of file DeclBase.h.
Referenced by clang::Sema::BuildBlockForLambdaConversion(), buildDeclRefExpr(), clang::Sema::BuildVariableInstantiation(), clang::SemaOpenMP::CheckOMPThreadPrivateDecl(), clang::Sema::createLambdaInitCaptureVarDecl(), clang::Sema::DefineImplicitLambdaToFunctionPointerConversion(), DoMarkBindingDeclReferenced(), DoMarkVarDeclReferenced(), clang::TemplateDeclInstantiator::InstantiateTypedefNameDecl(), clang::Sema::MarkAnyDeclReferenced(), and clang::ASTDeclReader::VisitDecl().
◆ setTopLevelDeclInObjCContainer() void clang::Decl::setTopLevelDeclInObjCContainer ( bool V =true
) inline ◆ setVisibleDespiteOwningModule() void clang::Decl::setVisibleDespiteOwningModule ( ) inline
Set that this declaration is globally visible, even if it came from a module that is not visible.
Definition at line 863 of file DeclBase.h.
References isUnconditionallyVisible(), setModuleOwnershipKind(), and Visible.
Referenced by clang::Sema::hasAcceptableDefinition(), clang::Sema::InstantiateClass(), clang::Sema::InstantiateEnum(), clang::Sema::InstantiateVariableDefinition(), clang::Sema::makeMergedDefinitionVisible(), clang::ASTReader::makeNamesVisible(), clang::ASTReader::mergeDefinitionVisibility(), and clang::ASTDeclReader::VisitDecl().
◆ shouldEmitInExternalSource() bool Decl::shouldEmitInExternalSource ( ) const ◆ specific_attr_begin() ◆ specific_attr_end() ◆ specific_attrs()Definition at line 562 of file DeclBase.h.
Referenced by clang::SemaOpenMP::ActOnOpenMPCall(), clang::CodeGen::CodeGenModule::AddGlobalAnnotations(), AttrFilter(), clang::Sema::CheckAlignasUnderalignment(), clang::Sema::checkCall(), checkFormatStringExpr(), CheckNonNullArguments(), clang::SemaSYCL::CheckSYCLEntryPointFunctionDecl(), clang::Sema::CheckTCBEnforcement(), clang::interp::collectNonNullArgs(), compareEnableIfAttrs(), compareOverloads(), clang::computeDependence(), clang::CodeCompletionResult::createCodeCompletionStringForDecl(), clang::Sema::DiagnoseAlwaysNonNullPointer(), clang::SemaObjC::DiagnoseCStringFormatDirectiveInCFAPI(), DiagnoseCStringFormatDirectiveInObjCAPI(), diagnoseDiagnoseIfAttrsWith(), clang::CodeGen::CGOpenMPRuntime::emitDeclareSimdFunction(), clang::Sema::FinalizeDeclaration(), findEnforceTCBAttrByName(), getNonNullAttr(), getPrintfFormatArgumentNum(), handleOwnershipAttr(), hasBTFDeclTagAttr(), hasRCAnnotation(), hasSameOverloadableAttrs(), isFunctionAlwaysEnabled(), isRelevantAttr(), mergeAlignedAttrs(), clang::Sema::mergeDeclAttributes(), clang::Sema::mergeFormatAttr(), printOwnershipTakesList(), propagateAttribute(), and clang::CodeGen::SanitizerMetadata::reportGlobal().
◆ updateOutOfDate() ◆ ASTDeclMerger ◆ ASTDeclReader ◆ ASTDeclWriter ◆ ASTNodeImporter ◆ ASTReader ◆ CXXClassMemberWrapper friend class CXXClassMemberWrapper friendDefinition at line 328 of file DeclBase.h.
◆ DeclContext ◆ LinkageComputer ◆ RecordDecl ◆ Redeclarabletemplate<typename decl_type >
Definition at line 331 of file DeclBase.h.
◆ Access ◆ CacheValidAndLinkage unsigned clang::Decl::CacheValidAndLinkage mutableprotected ◆ FromASTFile ◆ IdentifierNamespaceIdentifierNamespace - This specifies what IDNS_* namespace this lives in.
Definition at line 344 of file DeclBase.h.
◆ NextInContextAndBitsThe documentation for this class was generated from the following files:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4