reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/include/clang/AST/CXXRecordDeclDefinitionBits.def
   36 FIELD(UserDeclaredConstructor, 1, NO_MERGE)
   39 FIELD(UserDeclaredSpecialMembers, 6, NO_MERGE)
   42 FIELD(Aggregate, 1, NO_MERGE)
   45 FIELD(PlainOldData, 1, NO_MERGE)
   53 FIELD(Empty, 1, NO_MERGE)
   57 FIELD(Polymorphic, 1, NO_MERGE)
   61 FIELD(Abstract, 1, NO_MERGE)
   65 FIELD(IsStandardLayout, 1, NO_MERGE)
   82 FIELD(IsCXX11StandardLayout, 1, NO_MERGE)
   88 FIELD(HasBasesWithFields, 1, NO_MERGE)
   94 FIELD(HasBasesWithNonStaticDataMembers, 1, NO_MERGE)
   97 FIELD(HasPrivateFields, 1, NO_MERGE)
  100 FIELD(HasProtectedFields, 1, NO_MERGE)
  103 FIELD(HasPublicFields, 1, NO_MERGE)
  106 FIELD(HasMutableFields, 1, NO_MERGE)
  110 FIELD(HasVariantMembers, 1, NO_MERGE)
  113 FIELD(HasOnlyCMembers, 1, NO_MERGE)
  117 FIELD(HasInClassInitializer, 1, NO_MERGE)
  124 FIELD(HasUninitializedReferenceMember, 1, NO_MERGE)
  128 FIELD(HasUninitializedFields, 1, NO_MERGE)
  132 FIELD(HasInheritedConstructor, 1, NO_MERGE)
  136 FIELD(HasInheritedAssignment, 1, NO_MERGE)
  141 FIELD(NeedOverloadResolutionForCopyConstructor, 1, NO_MERGE)
  142 FIELD(NeedOverloadResolutionForMoveConstructor, 1, NO_MERGE)
  143 FIELD(NeedOverloadResolutionForMoveAssignment, 1, NO_MERGE)
  144 FIELD(NeedOverloadResolutionForDestructor, 1, NO_MERGE)
  150 FIELD(DefaultedCopyConstructorIsDeleted, 1, NO_MERGE)
  151 FIELD(DefaultedMoveConstructorIsDeleted, 1, NO_MERGE)
  152 FIELD(DefaultedMoveAssignmentIsDeleted, 1, NO_MERGE)
  153 FIELD(DefaultedDestructorIsDeleted, 1, NO_MERGE)
  162 FIELD(HasTrivialSpecialMembers, 6, MERGE_OR)
  167 FIELD(HasTrivialSpecialMembersForCall, 6, MERGE_OR)
  175 FIELD(DeclaredNonTrivialSpecialMembers, 6, MERGE_OR)
  181 FIELD(DeclaredNonTrivialSpecialMembersForCall, 6, MERGE_OR)
  184 FIELD(HasIrrelevantDestructor, 1, NO_MERGE)
  188 FIELD(HasConstexprNonCopyMoveConstructor, 1, MERGE_OR)
  192 FIELD(HasDefaultedDefaultConstructor, 1, MERGE_OR)
  196 FIELD(DefaultedDefaultConstructorIsConstexpr, 1, NO_MERGE)
  202 FIELD(HasConstexprDefaultConstructor, 1, MERGE_OR)
  205 FIELD(DefaultedDestructorIsConstexpr, 1, NO_MERGE)
  209 FIELD(HasNonLiteralTypeFieldsOrBases, 1, NO_MERGE)
  213 FIELD(UserProvidedDefaultConstructor, 1, NO_MERGE)
  217 FIELD(DeclaredSpecialMembers, 6, MERGE_OR)
  221 FIELD(ImplicitCopyConstructorCanHaveConstParamForVBase, 1, NO_MERGE)
  222 FIELD(ImplicitCopyConstructorCanHaveConstParamForNonVBase, 1, NO_MERGE)
  226 FIELD(ImplicitCopyAssignmentHasConstParam, 1, NO_MERGE)
  230 FIELD(HasDeclaredCopyConstructorWithConstParam, 1, MERGE_OR)
  234 FIELD(HasDeclaredCopyAssignmentWithConstParam, 1, MERGE_OR)
tools/clang/lib/Serialization/ASTReaderDecl.cpp
  104       uint64_t LocalOffset = Record.readInt();
  111       return Local ? Record.getGlobalBitOffset(Local) : 0;
  115       return Record.readSourceLocation();
  119       return Record.readSourceRange();
  123       return Record.getTypeSourceInfo();
  127       return Record.readDeclID();
  131       return Record.readString();
  135       for (unsigned I = 0, Size = Record.readInt(); I != Size; ++I)
  140       return Record.readDecl();
  145       return Record.readDeclAs<T>();
  149       Record.readQualifierInfo(Info);
  153       Record.readDeclarationNameLoc(DNLoc, Name);
  157       if (Record.getIdx() == Record.size())
  157       if (Record.getIdx() == Record.size())
  160       return Record.getGlobalSubmoduleID(Record.readInt());
  160       return Record.getGlobalSubmoduleID(Record.readInt());
  164       return Record.getSubmodule(readSubmoduleID());
  509   if (Record.readInt())
  512     CD->setNumCtorInitializers(Record.readInt());
  531       Record.readTypeLoc(TInfo->getTypeLoc());
  551     if (Record.readInt())
  585   D->setInvalidDecl(Record.readInt());
  586   if (Record.readInt()) { // hasAttrs
  588     Record.readAttributes(Attrs);
  593   D->setImplicit(Record.readInt());
  594   D->Used = Record.readInt();
  596   D->setReferenced(Record.readInt());
  597   D->setTopLevelDeclInObjCContainer(Record.readInt());
  598   D->setAccess((AccessSpecifier)Record.readInt());
  600   bool ModulePrivate = Record.readInt();
  632   D->CommentKind = (PragmaMSCommentKind)Record.readInt();
  658   ND->setDeclName(Record.readDeclarationName());
  659   AnonymousDeclNumber = Record.readInt();
  666   DeferredTypeID = Record.getGlobalTypeID(Record.readInt());
  666   DeferredTypeID = Record.getGlobalTypeID(Record.readInt());
  674   if (Record.readInt()) { // isModed
  675     QualType modedT = Record.readType();
  705   TD->IdentifierNamespace = Record.readInt();
  706   TD->setTagKind((TagDecl::TagKind)Record.readInt());
  708     TD->setCompleteDefinition(Record.readInt());
  709   TD->setEmbeddedInDeclarator(Record.readInt());
  710   TD->setFreeStanding(Record.readInt());
  711   TD->setCompleteDefinitionRequired(Record.readInt());
  714   switch (Record.readInt()) {
  725     TypedefNameForLinkage = Record.getIdentifierInfo();
  741     ED->setIntegerType(Record.readType());
  742   ED->setPromotionType(Record.readType());
  743   ED->setNumPositiveBits(Record.readInt());
  744   ED->setNumNegativeBits(Record.readInt());
  745   ED->setScoped(Record.readInt());
  746   ED->setScopedUsingClassTag(Record.readInt());
  747   ED->setFixed(Record.readInt());
  750   ED->ODRHash = Record.readInt();
  780     auto TSK = (TemplateSpecializationKind)Record.readInt();
  790   RD->setHasFlexibleArrayMember(Record.readInt());
  791   RD->setAnonymousStructOrUnion(Record.readInt());
  792   RD->setHasObjectMember(Record.readInt());
  793   RD->setHasVolatileMember(Record.readInt());
  794   RD->setNonTrivialToPrimitiveDefaultInitialize(Record.readInt());
  795   RD->setNonTrivialToPrimitiveCopy(Record.readInt());
  796   RD->setNonTrivialToPrimitiveDestroy(Record.readInt());
  797   RD->setHasNonTrivialToPrimitiveDefaultInitializeCUnion(Record.readInt());
  798   RD->setHasNonTrivialToPrimitiveDestructCUnion(Record.readInt());
  799   RD->setHasNonTrivialToPrimitiveCopyCUnion(Record.readInt());
  800   RD->setParamDestroyedInCallee(Record.readInt());
  801   RD->setArgPassingRestrictions((RecordDecl::ArgPassingKind)Record.readInt());
  811     DeferredTypeID = Record.getGlobalTypeID(Record.readInt());
  811     DeferredTypeID = Record.getGlobalTypeID(Record.readInt());
  813     VD->setType(Record.readType());
  818   if (Record.readInt())
  819     ECD->setInitExpr(Record.readExpr());
  820   ECD->setInitVal(Record.readAPSInt());
  827   if (Record.readInt()) { // hasExtInfo
  832   QualType TSIType = Record.readType();
  857   FD->IdentifierNamespace = Record.readInt();
  862   FD->setStorageClass(static_cast<StorageClass>(Record.readInt()));
  863   FD->setInlineSpecified(Record.readInt());
  864   FD->setImplicitlyInline(Record.readInt());
  865   FD->setVirtualAsWritten(Record.readInt());
  866   FD->setPure(Record.readInt());
  867   FD->setHasInheritedPrototype(Record.readInt());
  868   FD->setHasWrittenPrototype(Record.readInt());
  869   FD->setDeletedAsWritten(Record.readInt());
  870   FD->setTrivial(Record.readInt());
  871   FD->setTrivialForCall(Record.readInt());
  872   FD->setDefaulted(Record.readInt());
  873   FD->setExplicitlyDefaulted(Record.readInt());
  874   FD->setHasImplicitReturnZero(Record.readInt());
  875   FD->setConstexprKind(static_cast<ConstexprSpecKind>(Record.readInt()));
  876   FD->setUsesSEHTry(Record.readInt());
  877   FD->setHasSkippedBody(Record.readInt());
  878   FD->setIsMultiVersion(Record.readInt());
  879   FD->setLateTemplateParsed(Record.readInt());
  881   FD->setCachedLinkage(static_cast<Linkage>(Record.readInt()));
  884   FD->ODRHash = Record.readInt();
  887   switch ((FunctionDecl::TemplatedKind)Record.readInt()) {
  897     auto TSK = (TemplateSpecializationKind)Record.readInt();
  906     auto TSK = (TemplateSpecializationKind)Record.readInt();
  910     Record.readTemplateArgumentList(TemplArgs, /*Canonicalize*/ true);
  915     bool HasTemplateArgumentsAsWritten = Record.readInt();
  917       unsigned NumTemplateArgLocs = Record.readInt();
  920         TemplArgLocs.push_back(Record.readTemplateArgumentLoc());
  936     if (Record.readInt()) {
  938       auto TSK = (TemplateSpecializationKind)Record.readInt();
  980     unsigned NumTemplates = Record.readInt();
  986     unsigned NumArgs = Record.readInt();
  988       TemplArgs.addArgument(Record.readTemplateArgumentLoc());
 1001   unsigned NumParams = Record.readInt();
 1011   if (Record.readInt()) {
 1019   MD->setInstanceMethod(Record.readInt());
 1020   MD->setVariadic(Record.readInt());
 1021   MD->setPropertyAccessor(Record.readInt());
 1022   MD->setDefined(Record.readInt());
 1023   MD->setOverriding(Record.readInt());
 1024   MD->setHasSkippedBody(Record.readInt());
 1026   MD->setIsRedeclaration(Record.readInt());
 1027   MD->setHasRedeclaration(Record.readInt());
 1032   MD->setDeclImplementation((ObjCMethodDecl::ImplementationControl)Record.readInt());
 1033   MD->setObjCDeclQualifier((Decl::ObjCDeclQualifier)Record.readInt());
 1034   MD->setRelatedResultType(Record.readInt());
 1035   MD->setReturnType(Record.readType());
 1038   unsigned NumParams = Record.readInt();
 1044   MD->setSelLocsKind((SelectorLocationsKind)Record.readInt());
 1045   unsigned NumStoredSelLocs = Record.readInt();
 1057   D->Variance = Record.readInt();
 1058   D->Index = Record.readInt();
 1070   unsigned numParams = Record.readInt();
 1097   Data.HasDesignatedInitializers = Record.readInt();
 1100   unsigned NumProtocols = Record.readInt();
 1113   NumProtocols = Record.readInt();
 1130   DeferredTypeID = Record.getGlobalTypeID(Record.readInt());
 1130   DeferredTypeID = Record.getGlobalTypeID(Record.readInt());
 1134   if (Record.readInt()) {
 1166   IVD->setAccessControl((ObjCIvarDecl::AccessControl)Record.readInt());
 1169   bool synth = Record.readInt();
 1175     unsigned NumProtoRefs = Record.readInt();
 1198   if (Record.readInt()) {
 1239   unsigned NumProtoRefs = Record.readInt();
 1267   QualType T = Record.readType();
 1271       (ObjCPropertyDecl::PropertyAttributeKind)Record.readInt());
 1273       (ObjCPropertyDecl::PropertyAttributeKind)Record.readInt());
 1275       (ObjCPropertyDecl::PropertyControl)Record.readInt());
 1276   DeclarationName GetterName = Record.readDeclarationName();
 1279   DeclarationName SetterName = Record.readDeclarationName();
 1303   D->setHasNonZeroConstructors(Record.readInt());
 1304   D->setHasDestructors(Record.readInt());
 1305   D->NumIvarInitializers = Record.readInt();
 1316   D->setGetterCXXConstructor(Record.readExpr());
 1317   D->setSetterCXXAssignment(Record.readExpr());
 1322   FD->Mutable = Record.readInt();
 1324   if (auto ISK = static_cast<FieldDecl::InitStorageKind>(Record.readInt())) {
 1327                                    ? Record.readType().getAsOpaquePtr()
 1328                                    : Record.readExpr());
 1331   if (auto *BW = Record.readExpr())
 1343   PD->GetterId = Record.getIdentifierInfo();
 1344   PD->SetterId = Record.getIdentifierInfo();
 1350   FD->ChainingSize = Record.readInt();
 1364   VD->VarDeclBits.SClass = (StorageClass)Record.readInt();
 1365   VD->VarDeclBits.TSCSpec = Record.readInt();
 1366   VD->VarDeclBits.InitStyle = Record.readInt();
 1367   VD->VarDeclBits.ARCPseudoStrong = Record.readInt();
 1370         Record.readInt();
 1371     VD->NonParmVarDeclBits.ExceptionVar = Record.readInt();
 1372     VD->NonParmVarDeclBits.NRVOVariable = Record.readInt();
 1373     VD->NonParmVarDeclBits.CXXForRangeDecl = Record.readInt();
 1374     VD->NonParmVarDeclBits.ObjCForDecl = Record.readInt();
 1375     VD->NonParmVarDeclBits.IsInline = Record.readInt();
 1376     VD->NonParmVarDeclBits.IsInlineSpecified = Record.readInt();
 1377     VD->NonParmVarDeclBits.IsConstexpr = Record.readInt();
 1378     VD->NonParmVarDeclBits.IsInitCapture = Record.readInt();
 1379     VD->NonParmVarDeclBits.PreviousDeclInSameBlockScope = Record.readInt();
 1380     VD->NonParmVarDeclBits.ImplicitParamKind = Record.readInt();
 1381     VD->NonParmVarDeclBits.EscapingByref = Record.readInt();
 1383   auto VarLinkage = Linkage(Record.readInt());
 1391   if (uint64_t Val = Record.readInt()) {
 1392     VD->setInit(Record.readExpr());
 1402     Expr *CopyExpr = Record.readExpr();
 1404       Reader.getContext().setBlockVarCopyInit(VD, CopyExpr, Record.readInt());
 1407   if (VD->getStorageDuration() == SD_Static && Record.readInt())
 1413   switch ((VarKind)Record.readInt()) {
 1427     auto TSK = (TemplateSpecializationKind)Record.readInt();
 1444   unsigned isObjCMethodParam = Record.readInt();
 1445   unsigned scopeDepth = Record.readInt();
 1446   unsigned scopeIndex = Record.readInt();
 1447   unsigned declQualifier = Record.readInt();
 1455   PD->ParmVarDeclBits.IsKNRPromoted = Record.readInt();
 1456   PD->ParmVarDeclBits.HasInheritedDefaultArg = Record.readInt();
 1457   if (Record.readInt()) // hasUninstantiatedDefaultArg.
 1458     PD->setUninstantiatedDefaultArg(Record.readExpr());
 1475   BD->Binding = Record.readExpr();
 1480   AD->setAsmString(cast<StringLiteral>(Record.readExpr()));
 1486   BD->setBody(cast_or_null<CompoundStmt>(Record.readStmt()));
 1488   unsigned NumParams = Record.readInt();
 1495   BD->setIsVariadic(Record.readInt());
 1496   BD->setBlockMissingReturnType(Record.readInt());
 1497   BD->setIsConversionFromLambda(Record.readInt());
 1498   BD->setDoesNotEscape(Record.readInt());
 1499   BD->setCanAvoidCopyToHeap(Record.readInt());
 1501   bool capturesCXXThis = Record.readInt();
 1502   unsigned numCaptures = Record.readInt();
 1507     unsigned flags = Record.readInt();
 1510     Expr *copyExpr = ((flags & 4) ? Record.readExpr() : nullptr);
 1519   unsigned ContextParamPos = Record.readInt();
 1520   CD->setNothrow(Record.readInt() != 0);
 1532   D->setLanguage((LinkageSpecDecl::LanguageIDs)Record.readInt());
 1550   D->setInline(Record.readInt());
 1574     if (!Record.isModule())
 1584   D->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1592   D->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1595   D->setTypename(Record.readInt());
 1614   D->IdentifierNamespace = Record.readInt();
 1627   D->IsVirtual = Record.readInt();
 1634   D->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1642   D->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1652   D->QualifierLoc = Record.readNestedNameSpecifierLoc();
 1664   Data.ODRHash = Record.readInt();
 1667   if (Record.readInt())
 1670   Data.NumBases = Record.readInt();
 1673   Data.NumVBases = Record.readInt();
 1677   Record.readUnresolvedSet(Data.Conversions);
 1678   Data.ComputedVisibleConversions = Record.readInt();
 1680     Record.readUnresolvedSet(Data.VisibleConversions);
 1688     Lambda.Dependent = Record.readInt();
 1689     Lambda.IsGenericLambda = Record.readInt();
 1690     Lambda.CaptureDefault = Record.readInt();
 1691     Lambda.NumCaptures = Record.readInt();
 1692     Lambda.NumExplicitCaptures = Record.readInt();
 1693     Lambda.HasKnownInternalLinkage = Record.readInt();
 1694     Lambda.ManglingNumber = Record.readInt();
 1702       bool IsImplicit = Record.readInt();
 1703       auto Kind = static_cast<LambdaCaptureKind>(Record.readInt());
 1801   bool IsLambda = Record.readInt();
 1844   switch ((CXXRecKind)Record.readInt()) {
 1867     auto TSK = (TemplateSpecializationKind)Record.readInt();
 1877   bool WasDefinition = Record.readInt();
 1899   D->setExplicitSpecifier(Record.readExplicitSpec());
 1901   D->setIsCopyDeductionCandidate(Record.readInt());
 1907   unsigned NumOverridenMethods = Record.readInt();
 1918     Record.skipInts(NumOverridenMethods);
 1925   D->setExplicitSpecifier(Record.readExplicitSpec());
 1941     auto *ThisArg = Record.readExpr();
 1951   D->setExplicitSpecifier(Record.readExplicitSpec());
 1958   D->ImportedAndComplete.setInt(Record.readInt());
 1960   for (unsigned I = 0, N = Record.back(); I != N; ++I)
 1962   Record.skipInts(1); // The number of stored source locations.
 1972   if (Record.readInt()) // hasFriendDecl
 1978         Record.readTemplateParameterList();
 1980   D->UnsupportedFriend = (Record.readInt() != 0);
 1986   unsigned NumParams = Record.readInt();
 1990     D->Params[i] = Record.readTemplateParameterList();
 1991   if (Record.readInt()) // HasFriendDecl
 2003   TemplateParameterList *TemplateParams = Record.readTemplateParameterList();
 2011   D->ConstraintExpr = Record.readExpr();
 2035       if (Record.readInt())
 2041   D->IdentifierNamespace = Record.readInt();
 2103       Record.readTemplateArgumentList(TemplArgs);
 2117   Record.readTemplateArgumentList(TemplArgs, /*Canonicalize*/ true);
 2120   D->SpecializationKind = (TemplateSpecializationKind)Record.readInt();
 2122   bool writtenAsCanonicalDecl = Record.readInt();
 2169   TemplateParameterList *Params = Record.readTemplateParameterList();
 2171   D->ArgsAsWritten = Record.readASTTemplateArgumentListInfo();
 2177     D->InstantiatedFromMember.setInt(Record.readInt());
 2185   if (Record.readInt())
 2186     D->TemplateArgs = Record.readASTTemplateArgumentListInfo();
 2216       Record.readTemplateArgumentList(TemplArgs);
 2240   Record.readTemplateArgumentList(TemplArgs, /*Canonicalize*/ true);
 2243   D->SpecializationKind = (TemplateSpecializationKind)Record.readInt();
 2244   D->IsCompleteDefinition = Record.readInt();
 2246   bool writtenAsCanonicalDecl = Record.readInt();
 2272   TemplateParameterList *Params = Record.readTemplateParameterList();
 2274   D->ArgsAsWritten = Record.readASTTemplateArgumentListInfo();
 2280     D->InstantiatedFromMember.setInt(Record.readInt());
 2287   D->setDeclaredWithTypename(Record.readInt());
 2290   if (Record.readInt())
 2297   D->setDepth(Record.readInt());
 2298   D->setPosition(Record.readInt());
 2303       new (&TypesAndInfos[I].first) QualType(Record.readType());
 2308     D->ParameterPack = Record.readInt();
 2309     if (Record.readInt())
 2310       D->setDefaultArgument(Record.readExpr());
 2317   D->setDepth(Record.readInt());
 2318   D->setPosition(Record.readInt());
 2323       Data[I] = Record.readTemplateParameterList();
 2326     D->ParameterPack = Record.readInt();
 2327     if (Record.readInt())
 2329                             Record.readTemplateArgumentLoc());
 2339   D->AssertExprAndFailed.setPointer(Record.readExpr());
 2340   D->AssertExprAndFailed.setInt(Record.readInt());
 2341   D->Message = cast_or_null<StringLiteral>(Record.readExpr());
 2373   } else if (unsigned N = Record.readInt()) {
 2574     Vars.push_back(Record.readExpr());
 2586     Vars.push_back(Record.readExpr());
 2591   OMPClauseReader ClauseReader(Record);
 2602   OMPClauseReader ClauseReader(Record);
 2611   Expr *In = Record.readExpr();
 2612   Expr *Out = Record.readExpr();
 2614   Expr *Combiner = Record.readExpr();
 2616   Expr *Orig = Record.readExpr();
 2617   Expr *Priv = Record.readExpr();
 2619   Expr *Init = Record.readExpr();
 2620   auto IK = static_cast<OMPDeclareReductionDecl::InitKind>(Record.readInt());
 2628   Expr *MapperVarRefE = Record.readExpr();
 2630   D->VarName = Record.readDeclarationName();
 2635   OMPClauseReader ClauseReader(Record);
 4241   while (Record.getIdx() < Record.size()) {
 4241   while (Record.getIdx() < Record.size()) {
 4242     switch ((DeclUpdateKind)Record.readInt()) {
 4247       Decl *MD = Record.readDecl();
 4266       if (!Record.isModule()) {
 4277       VD->NonParmVarDeclBits.IsInline = Record.readInt();
 4278       VD->NonParmVarDeclBits.IsInlineSpecified = Record.readInt();
 4279       uint64_t Val = Record.readInt();
 4281         VD->setInit(Record.readExpr());
 4292       SourceLocation POI = Record.readSourceLocation();
 4315       auto *DefaultArg = Record.readExpr();
 4326       auto *DefaultInit = Record.readExpr();
 4349       if (Record.readInt()) {
 4359       assert(Record.getIdx() == Record.size() && "lazy body must be last");
 4359       assert(Record.getIdx() == Record.size() && "lazy body must be last");
 4369       RD->setParamDestroyedInCallee(Record.readInt());
 4371           (RecordDecl::ArgPassingKind)Record.readInt());
 4377         Record.readLexicalDeclContextStorage(LexicalOffset, RD);
 4381       auto TSK = (TemplateSpecializationKind)Record.readInt();
 4392         if (Record.readInt()) {
 4396           Record.readTemplateArgumentList(TemplArgs);
 4408       RD->setTagKind((TagTypeKind)Record.readInt());
 4413       if (Record.readInt()) {
 4415         Record.readAttributes(Attrs);
 4429       auto *ThisArg = Record.readExpr();
 4441       Record.readExceptionSpec(ExceptionStorage, ESI);
 4463       QualType DeducedResultType = Record.readType();
 4476                                             Record.readInt());
 4481                                                Record.readInt());
 4492           static_cast<OMPAllocateDeclAttr::AllocatorTypeTy>(Record.readInt());
 4493       Expr *Allocator = Record.readExpr();
 4512           static_cast<OMPDeclareTargetDeclAttr::MapTypeTy>(Record.readInt());
 4514           static_cast<OMPDeclareTargetDeclAttr::DevTypeTy>(Record.readInt());
 4523       Record.readAttributes(Attrs);