reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
945 VisitRedeclarable(D); 946 VisitDeclaratorDecl(D); 947 Record.push_back(D->getStorageClass()); 948 Record.push_back(D->getTSCSpec()); 949 Record.push_back(D->getInitStyle()); 950 Record.push_back(D->isARCPseudoStrong()); 951 if (!isa<ParmVarDecl>(D)) { 952 Record.push_back(D->isThisDeclarationADemotedDefinition()); 953 Record.push_back(D->isExceptionVariable()); 954 Record.push_back(D->isNRVOVariable()); 955 Record.push_back(D->isCXXForRangeDecl()); 956 Record.push_back(D->isObjCForDecl()); 957 Record.push_back(D->isInline()); 958 Record.push_back(D->isInlineSpecified()); 959 Record.push_back(D->isConstexpr()); 960 Record.push_back(D->isInitCapture()); 961 Record.push_back(D->isPreviousDeclInSameBlockScope()); 962 if (const auto *IPD = dyn_cast<ImplicitParamDecl>(D)) 966 Record.push_back(D->isEscapingByref()); 968 Record.push_back(D->getLinkageInternal()); 970 if (D->getInit()) { 971 if (!D->isInitKnownICE()) 976 (D->isInitICE() ? 1 : 0) | 977 (D->ensureEvaluatedStmt()->HasConstantDestruction ? 4 : 0)); 979 Record.AddStmt(D->getInit()); 984 if (D->hasAttr<BlocksAttr>() && D->getType()->getAsCXXRecordDecl()) { 984 if (D->hasAttr<BlocksAttr>() && D->getType()->getAsCXXRecordDecl()) { 985 ASTContext::BlockVarCopyInit Init = Writer.Context->getBlockVarCopyInit(D); 991 if (D->getStorageDuration() == SD_Static) { 994 !D->getDescribedVarTemplate() && !D->getMemberSpecializationInfo() && 994 !D->getDescribedVarTemplate() && !D->getMemberSpecializationInfo() && 995 !isa<VarTemplateSpecializationDecl>(D)) { 1002 Writer.Context->GetGVALinkageForVariable(D) == GVA_StrongExternal); 1006 Writer.ModularCodegenDecls.push_back(Writer.GetDeclRef(D)); 1012 if (VarTemplateDecl *TemplD = D->getDescribedVarTemplate()) { 1016 = D->getMemberSpecializationInfo()) { 1025 if (D->getDeclContext() == D->getLexicalDeclContext() && 1025 if (D->getDeclContext() == D->getLexicalDeclContext() && 1026 !D->hasAttrs() && 1027 !D->isImplicit() && 1028 !D->isUsed(false) && 1029 !D->isInvalidDecl() && 1030 !D->isReferenced() && 1031 !D->isTopLevelDeclInObjCContainer() && 1032 D->getAccess() == AS_none && 1033 !D->isModulePrivate() && 1034 !needsAnonymousDeclarationNumber(D) && 1035 D->getDeclName().getNameKind() == DeclarationName::Identifier && 1036 !D->hasExtInfo() && 1037 D->getFirstDecl() == D->getMostRecentDecl() && 1037 D->getFirstDecl() == D->getMostRecentDecl() && 1038 D->getKind() == Decl::Var && 1039 !D->isInline() && 1040 !D->isConstexpr() && 1041 !D->isInitCapture() && 1042 !D->isPreviousDeclInSameBlockScope() && 1043 !(D->hasAttr<BlocksAttr>() && D->getType()->getAsCXXRecordDecl()) && 1043 !(D->hasAttr<BlocksAttr>() && D->getType()->getAsCXXRecordDecl()) && 1044 !D->isEscapingByref() && 1045 D->getStorageDuration() != SD_Static && 1046 !D->getMemberSpecializationInfo())