Lines Matching refs:Reader
84 ASTReader &Reader; member in clang::ASTDeclReader
179 static NamedDecl *getAnonymousDeclForMerging(ASTReader &Reader,
182 static void setAnonymousDeclForMerging(ASTReader &Reader, DeclContext *DC,
189 static CXXRecordDecl *getOrFakePrimaryClassDefinition(ASTReader &Reader,
219 ASTReader &Reader; member in clang::ASTDeclReader::FindExistingResult
227 FindExistingResult(ASTReader &Reader) : Reader(Reader) {} in FindExistingResult() argument
229 FindExistingResult(ASTReader &Reader, NamedDecl *New, NamedDecl *Existing, in FindExistingResult() argument
232 : Reader(Reader), New(New), Existing(Existing), AddResult(true), in FindExistingResult()
237 : Reader(Other.Reader), New(Other.New), Existing(Other.Existing), in FindExistingResult()
257 static DeclContext *getPrimaryContextForMerging(ASTReader &Reader,
262 ASTDeclReader(ASTReader &Reader, ASTRecordReader &Record, in ASTDeclReader() argument
265 : Reader(Reader), Record(Record), Loc(Loc), ThisDeclID(thisDeclID), in ASTDeclReader()
297 static void mergeInheritableAttributes(ASTReader &Reader, Decl *D,
301 static void attachPreviousDeclImpl(ASTReader &Reader,
304 static void attachPreviousDeclImpl(ASTReader &Reader, ...);
305 static void attachPreviousDecl(ASTReader &Reader, Decl *D, Decl *Previous,
533 Reader.DefinitionSource[FD] = in ReadFunctionDefinition()
535 Reader.getContext().getLangOpts().BuildingPCHWithObjectFile; in ReadFunctionDefinition()
543 Reader.PendingBodies[FD] = GetCurrentCursorOffset(); in ReadFunctionDefinition()
562 TD->setTypeForDecl(Reader.GetType(DeferredTypeID).getTypePtrOrNull()); in Visit()
568 cast<TypedefNameDecl>(Reader.GetDecl(NamedDeclForTagDecl)); in Visit()
571 ID->TypeForDecl = Reader.GetType(DeferredTypeID).getTypePtrOrNull(); in Visit()
613 Reader.addPendingDeclContextInfo(D, in VisitDecl()
616 D->setDeclContext(Reader.getContext().getTranslationUnitDecl()); in VisitDecl()
627 MergedSemaDC = getOrFakePrimaryClassDefinition(Reader, RD); in VisitDecl()
629 MergedSemaDC = Reader.MergedDeclContexts.lookup(SemaDC); in VisitDecl()
633 Reader.getContext()); in VisitDecl()
642 D->setAttrsImpl(Attrs, Reader.getContext()); in VisitDecl()
668 } else if (Reader.getContext().getLangOpts().ModulesLocalVisibility) { in VisitDecl()
671 } else if (Module *Owner = Reader.getSubmodule(SubmoduleID)) { in VisitDecl()
676 Reader.HiddenNamesMap[Owner].push_back(D); in VisitDecl()
774 auto *Info = new (Reader.getContext()) TagDecl::ExtInfo(); in VisitTagDecl()
816 Reader.getContext().getLangOpts().Modules && in VisitEnumDecl()
817 Reader.getContext().getLangOpts().CPlusPlus) { in VisitEnumDecl()
818 EnumDecl *&OldDef = Reader.EnumDefinitions[ED->getCanonicalDecl()]; in VisitEnumDecl()
830 Reader.MergedDeclContexts.insert(std::make_pair(ED, OldDef)); in VisitEnumDecl()
832 Reader.mergeDefinitionVisibility(OldDef, ED); in VisitEnumDecl()
837 Reader.PendingEnumOdrMergeFailures[OldDef].push_back(ED); in VisitEnumDecl()
846 ED->setInstantiationOfMemberEnum(Reader.getContext(), InstED, TSK); in VisitEnumDecl()
884 RecordDecl *&OldDef = Reader.RecordDefinitions[Canon]; in VisitRecordDecl()
896 Reader.MergedDeclContexts.insert(std::make_pair(RD, OldDef)); in VisitRecordDecl()
898 Reader.mergeDefinitionVisibility(OldDef, RD); in VisitRecordDecl()
900 Reader.PendingRecordOdrMergeFailures[OldDef].push_back(RD); in VisitRecordDecl()
922 ECD->setInitVal(Reader.getContext(), Record.readAPSInt()); in VisitEnumConstantDecl()
930 auto *Info = new (Reader.getContext()) DeclaratorDecl::ExtInfo(); in VisitDeclaratorDecl()
938 : Reader.getContext().CreateTypeSourceInfo(TSIType)); in VisitDeclaratorDecl()
962 FD->setInstantiationOfMemberFunction(Reader.getContext(), InstFD, TSK); in VisitFunctionDecl()
982 ASTContext &C = Reader.getContext(); in VisitFunctionDecl()
1021 assert(Reader.getContext().getLangOpts().Modules && in VisitFunctionDecl()
1042 Reader.getContext(), Candidates, in VisitFunctionDecl()
1062 Reader.PendingDeducedFunctionTypes.push_back({FD, DeferredTypeID}); in VisitFunctionDecl()
1064 FD->setType(Reader.GetType(DeferredTypeID)); in VisitFunctionDecl()
1121 Reader.getContext(), Lookups)); in VisitFunctionDecl()
1158 FD->setParams(Reader.getContext(), Params); in VisitFunctionDecl()
1166 Reader.PendingBodies[MD] = GetCurrentCursorOffset(); in VisitObjCMethodDecl()
1182 Reader.getContext().setObjCMethodRedeclaration(MD, in VisitObjCMethodDecl()
1205 MD->setParamsAndSelLocs(Reader.getContext(), Params, SelLocs); in VisitObjCMethodDecl()
1241 return ObjCTypeParamList::create(Reader.getContext(), lAngleLoc, in ReadObjCTypeParamList()
1266 Reader.getContext()); in ReadObjCDefinitionData()
1275 Reader.getContext()); in ReadObjCDefinitionData()
1284 Reader.MergedDeclContexts.insert( in MergeDefinitionData()
1286 Reader.mergeDefinitionVisibility(DD.Definition, NewDD.Definition); in MergeDefinitionData()
1289 Reader.PendingObjCInterfaceOdrMergeFailures[DD.Definition].push_back( in MergeDefinitionData()
1321 Reader.PendingDefinitions.insert(ID); in VisitObjCInterfaceDecl()
1324 Reader.ObjCClassesLoaded.push_back(ID); in VisitObjCInterfaceDecl()
1357 Reader in VisitObjCIvarDecl()
1365 Reader.Diag(IVD->getLocation(), diag::err_duplicate_ivar_declaration) in VisitObjCIvarDecl()
1367 Reader.Diag(PrevIvar->getLocation(), diag::note_previous_definition); in VisitObjCIvarDecl()
1384 ProtoLocs.data(), Reader.getContext()); in ReadObjCDefinitionData()
1395 Reader.MergedDeclContexts.insert( in MergeDefinitionData()
1397 Reader.mergeDefinitionVisibility(DD.Definition, NewDD.Definition); in MergeDefinitionData()
1400 Reader.PendingObjCProtocolOdrMergeFailures[DD.Definition].push_back( in MergeDefinitionData()
1427 Reader.PendingDefinitions.insert(PD); in VisitObjCProtocolDecl()
1446 Reader.CategoriesDeserialized.insert(CD); in VisitObjCCategoryDecl()
1460 Reader.getContext()); in VisitObjCCategoryDecl()
1466 Reader.getContext()); in VisitObjCCategoryDecl()
1546 Reader.getContext().setInstantiatedFromUnnamedFieldDecl(FD, Tmpl); in VisitFieldDecl()
1566 if (MSGuidDecl *Existing = Reader.getContext().MSGuidDecls.GetOrInsertNode(D)) in VisitMSGuidDecl()
1567 Reader.getContext().setPrimaryMergedDecl(D, Existing->getCanonicalDecl()); in VisitMSGuidDecl()
1577 Reader.getContext().UnnamedGlobalConstantDecls.GetOrInsertNode(D)) in VisitUnnamedGlobalConstantDecl()
1578 Reader.getContext().setPrimaryMergedDecl(D, Existing->getCanonicalDecl()); in VisitUnnamedGlobalConstantDecl()
1588 Reader.getContext().TemplateParamObjectDecls.GetOrInsertNode(D)) in VisitTemplateParamObjectDecl()
1589 Reader.getContext().setPrimaryMergedDecl(D, Existing->getCanonicalDecl()); in VisitTemplateParamObjectDecl()
1597 FD->Chaining = new (Reader.getContext())NamedDecl*[FD->ChainingSize]; in VisitIndirectFieldDecl()
1643 Reader.PendingDeducedVarTypes.push_back({VD, DeferredTypeID}); in VisitVarDeclImpl()
1645 VD->setType(Reader.GetType(DeferredTypeID)); in VisitVarDeclImpl()
1656 Reader.DefinitionSource[VD] = in VisitVarDeclImpl()
1658 Reader.getContext().getLangOpts().BuildingPCHWithObjectFile; in VisitVarDeclImpl()
1664 Reader.getContext().setBlockVarCopyInit(VD, CopyExpr, Record.readInt()); in VisitVarDeclImpl()
1686 Reader.getContext().setInstantiatedFromStaticDataMember(VD, Tmpl, TSK,POI); in VisitVarDeclImpl()
1704 Reader.getContext().addDestruction(&Eval->Evaluated); in ReadVarDeclInit()
1801 BD->setCaptures(Reader.getContext(), captures, capturesCXXThis); in VisitBlockDecl()
1863 auto *Anon = cast<NamespaceDecl>(Reader.GetDecl(AnonNamespace)); in VisitNamespaceDecl()
1896 Reader.getContext().setInstantiatedFromUsingDecl(D, Pattern); in VisitUsingDecl()
1907 Reader.getContext().setInstantiatedFromUsingEnumDecl(D, Pattern); in VisitUsingEnumDecl()
1928 Reader.getContext().setInstantiatedFromUsingShadowDecl(D, Pattern); in VisitUsingShadowDecl()
1996 Reader.DefinitionSource[D] = in ReadCXXDefinitionData()
1998 Reader.getContext().getLangOpts().BuildingPCHWithObjectFile; in ReadCXXDefinitionData()
2035 Reader.getContext().DeviceLambdaManglingNumbers[D] = DeviceManglingNumber; in ReadCXXDefinitionData()
2040 ToCapture = (Capture *)Reader.getContext().Allocate(sizeof(Capture) * in ReadCXXDefinitionData()
2042 Lambda.AddCaptureList(Reader.getContext(), ToCapture); in ReadCXXDefinitionData()
2079 Reader.MergedDeclContexts.insert(std::make_pair(MergeDD.Definition, in MergeDefinitionData()
2081 Reader.PendingDefinitions.erase(MergeDD.Definition); in MergeDefinitionData()
2083 Reader.mergeDefinitionVisibility(DD.Definition, MergeDD.Definition); in MergeDefinitionData()
2084 assert(!Reader.Lookups.contains(MergeDD.Definition) && in MergeDefinitionData()
2088 auto PFDI = Reader.PendingFakeDefinitionData.find(&DD); in MergeDefinitionData()
2089 if (PFDI != Reader.PendingFakeDefinitionData.end() && in MergeDefinitionData()
2150 Lambda1.AddCaptureList(Reader.getContext(), Lambda2.Captures.front()); in MergeDefinitionData()
2163 Reader.PendingOdrMergeFailures[DD.Definition].push_back( in MergeDefinitionData()
2171 ASTContext &C = Reader.getContext(); in ReadCXXRecordDefinition()
2208 Reader.PendingDefinitions.insert(D); in ReadCXXRecordDefinition()
2215 ASTContext &C = Reader.getContext(); in VisitCXXRecordDeclImpl()
2306 Reader.getContext().addOverriddenMethod(D, MD->getCanonicalDecl()); in VisitCXXMethodDecl()
2381 D->Params = new (Reader.getContext()) TemplateParameterList *[NumParams]; in VisitFriendTemplateDecl()
2427 CanonD->Common = CanonD->newCommon(Reader.getContext()); in VisitRedeclarableTemplateDecl()
2428 Reader.PendingDefinitions.insert(CanonD); in VisitRedeclarableTemplateDecl()
2466 Reader.getContext().getInjectedClassNameType( in VisitClassTemplateDecl()
2496 ASTContext &C = Reader.getContext(); in VisitClassTemplateSpecializationDeclImpl()
2601 ASTContext &C = Reader.getContext(); in VisitVarTemplateSpecializationDeclImpl()
2737 D->setDefaultArgument(Reader.getContext(), in VisitTemplateTemplateParmDecl()
2817 auto *FirstDecl = cast_or_null<T>(Reader.GetDecl(FirstDeclID)); in VisitRedeclarable()
2834 Reader.PendingDeclChains.push_back(std::make_pair(DAsT, RedeclOffset)); in VisitRedeclarable()
2845 if (!Reader.getContext().getLangOpts().Modules) in mergeRedeclarable()
2876 if (!Reader.getContext().getLangOpts().Modules) in mergeLambda()
2889 NamedDecl *&Slot = Reader.LambdaDeclarationsForMerging[{ in mergeLambda()
2937 Reader.PendingDefinitions.insert(DClass); in mergeTemplatePattern()
2988 Reader.KeyDecls[ExistingCanon].push_back(Redecl.getFirstID()); in mergeRedeclarable()
3010 if (!Reader.getContext().getLangOpts().Modules) in mergeMergeable()
3016 Reader.LETemporaryForMerging[std::make_pair( in mergeMergeable()
3019 Reader.getContext().setPrimaryMergedDecl(LETDecl, in mergeMergeable()
3032 if (!Reader.getContext().getLangOpts().Modules) in mergeMergeable()
3039 if (!Reader.getContext().getLangOpts().CPlusPlus && in mergeMergeable()
3045 Reader.getContext().setPrimaryMergedDecl(static_cast<T *>(D), in mergeMergeable()
3098 ASTRecordReader &Reader; member in __anonf03d97f00511::AttrReader
3101 AttrReader(ASTRecordReader &Reader) : Reader(Reader) {} in AttrReader() argument
3104 return Reader.readInt(); in readInt()
3107 bool readBool() { return Reader.readBool(); } in readBool()
3110 return Reader.readSourceRange(); in readSourceRange()
3114 return Reader.readSourceLocation(); in readSourceLocation()
3117 Expr *readExpr() { return Reader.readExpr(); } in readExpr()
3119 Attr *readAttr() { return Reader.readAttr(); } in readAttr()
3122 return Reader.readString(); in readString()
3126 return Reader.readTypeSourceInfo(); in readTypeSourceInfo()
3130 return Reader.readIdentifier(); in readIdentifier()
3134 return Reader.readVersionTuple(); in readVersionTuple()
3137 OMPTraitInfo *readOMPTraitInfo() { return Reader.readOMPTraitInfo(); } in readOMPTraitInfo()
3140 return Reader.GetLocalDeclAs<T>(LocalID); in GetLocalDeclAs()
3265 ASTDeclReader::getOrFakePrimaryClassDefinition(ASTReader &Reader, in getOrFakePrimaryClassDefinition() argument
3277 DD = new (Reader.getContext()) struct CXXRecordDecl::DefinitionData(RD); in getOrFakePrimaryClassDefinition()
3283 Reader.PendingFakeDefinitionData.insert( in getOrFakePrimaryClassDefinition()
3292 DeclContext *ASTDeclReader::getPrimaryContextForMerging(ASTReader &Reader, in getPrimaryContextForMerging() argument
3298 return getOrFakePrimaryClassDefinition(Reader, RD); in getPrimaryContextForMerging()
3323 Reader.ImportedTypedefNamesForLinkage.insert( in ~FindExistingResult()
3334 setAnonymousDeclForMerging(Reader, New->getLexicalDeclContext(), in ~FindExistingResult()
3337 !Reader.getContext().getLangOpts().CPlusPlus) { in ~FindExistingResult()
3338 if (Reader.getIdResolver().tryAddTopLevelDecl(New, Name)) in ~FindExistingResult()
3339 Reader.PendingFakeLookupResults[Name.getAsIdentifierInfo()] in ~FindExistingResult()
3341 } else if (DeclContext *MergeDC = getPrimaryContextForMerging(Reader, DC)) { in ~FindExistingResult()
3400 NamedDecl *ASTDeclReader::getAnonymousDeclForMerging(ASTReader &Reader, in getAnonymousDeclForMerging() argument
3408 auto &Previous = Reader.AnonymousDeclarationsForMerging[CanonDC]; in getAnonymousDeclForMerging()
3427 void ASTDeclReader::setAnonymousDeclForMerging(ASTReader &Reader, in setAnonymousDeclForMerging() argument
3432 auto &Previous = Reader.AnonymousDeclarationsForMerging[CanonDC]; in setAnonymousDeclForMerging()
3446 FindExistingResult Result(Reader, D, /*Existing=*/nullptr, in findExisting()
3452 ASTContext &C = Reader.getContext(); in findExisting()
3455 auto It = Reader.ImportedTypedefNamesForLinkage.find( in findExisting()
3457 if (It != Reader.ImportedTypedefNamesForLinkage.end()) in findExisting()
3459 return FindExistingResult(Reader, D, It->second, AnonymousDeclNumber, in findExisting()
3469 Reader, D->getLexicalDeclContext(), AnonymousDeclNumber)) in findExisting()
3471 return FindExistingResult(Reader, D, Existing, AnonymousDeclNumber, in findExisting()
3474 !Reader.getContext().getLangOpts().CPlusPlus) { in findExisting()
3475 IdentifierResolver &IdResolver = Reader.getIdResolver(); in findExisting()
3503 return FindExistingResult(Reader, D, Existing, AnonymousDeclNumber, in findExisting()
3506 } else if (DeclContext *MergeDC = getPrimaryContextForMerging(Reader, DC)) { in findExisting()
3511 return FindExistingResult(Reader, D, Existing, AnonymousDeclNumber, in findExisting()
3516 return FindExistingResult(Reader); in findExisting()
3527 auto MergedDCIt = Reader.MergedDeclContexts.find(D->getLexicalDeclContext()); in findExisting()
3528 if (MergedDCIt != Reader.MergedDeclContexts.end() && in findExisting()
3530 Reader.PendingOdrMergeChecks.push_back(D); in findExisting()
3532 return FindExistingResult(Reader, D, /*Existing=*/nullptr, in findExisting()
3562 void ASTDeclReader::mergeInheritableAttributes(ASTReader &Reader, Decl *D, in mergeInheritableAttributes() argument
3565 ASTContext &Context = Reader.getContext(); in mergeInheritableAttributes()
3583 void ASTDeclReader::attachPreviousDeclImpl(ASTReader &Reader, in attachPreviousDeclImpl() argument
3593 void ASTDeclReader::attachPreviousDeclImpl(ASTReader &Reader, in attachPreviousDeclImpl() argument
3607 Reader.mergeDefinitionVisibility(CurD, VD); in attachPreviousDeclImpl()
3621 void ASTDeclReader::attachPreviousDeclImpl(ASTReader &Reader, in attachPreviousDeclImpl() argument
3660 Reader.PendingExceptionSpecUpdates.insert( in attachPreviousDeclImpl()
3668 Reader.PendingDeducedTypeUpdates.insert( in attachPreviousDeclImpl()
3676 void ASTDeclReader::attachPreviousDeclImpl(ASTReader &Reader, ...) { in attachPreviousDeclImpl() argument
3713 void ASTDeclReader::attachPreviousDecl(ASTReader &Reader, Decl *D, in attachPreviousDecl() argument
3721 attachPreviousDeclImpl(Reader, cast<TYPE##Decl>(D), Previous, Canon); \ in attachPreviousDecl()
3738 inheritDefaultTemplateArguments(Reader.getContext(), in attachPreviousDecl()
3745 mergeInheritableAttributes(Reader, D, Previous); in attachPreviousDecl()
3813 ASTDeclReader Reader(*this, Record, Loc, ID, DeclLoc); in ReadDeclRecord() local
4128 Reader.Visit(D); in ReadDeclRecord()
4133 std::pair<uint64_t, uint64_t> Offsets = Reader.VisitDeclContext(DC); in ReadDeclRecord()
4160 InterestingDecl(D, Reader.hasPendingBody())); in ReadDeclRecord()
4235 ASTDeclReader Reader(*this, Record, RecordLocation(F, Offset), ID, in loadDeclUpdateRecords() local
4237 Reader.UpdateDecl(D, PendingLazySpecializationIDs); in loadDeclUpdateRecords()
4242 isConsumerInterestedIn(getContext(), D, Reader.hasPendingBody())) { in loadDeclUpdateRecords()
4244 InterestingDecl(D, Reader.hasPendingBody())); in loadDeclUpdateRecords()
4333 ASTReader &Reader; member in __anonf03d97f00811::ObjCCategoriesVisitor
4349 if (Existing && Reader.getOwningModuleFile(Existing) != in add()
4350 Reader.getOwningModuleFile(Cat)) { in add()
4360 Reader.Diag(Cat->getLocation(), diag::warn_dup_category_def) in add()
4362 Reader.Diag(Existing->getLocation(), in add()
4380 ObjCCategoriesVisitor(ASTReader &Reader, in ObjCCategoriesVisitor() argument
4385 : Reader(Reader), Interface(Interface), Deserialized(Deserialized), in ObjCCategoriesVisitor()
4406 DeclID LocalID = Reader.mapGlobalIDToModuleFileGlobalID(M, InterfaceID); in operator ()()
4422 return Reader.isDeclIDFromModule(InterfaceID, M); in operator ()()
4431 Reader.GetLocalDecl(M, M.ObjCCategories[Offset++]))); in operator ()()
4475 Reader.PendingAddedClassMembers.push_back({RD, MD}); in UpdateDecl()
4561 if (Reader.PendingBodies[FD]) { in UpdateDecl()
4586 !Reader.PendingFakeDefinitionData.count(OldDD)); in UpdateDecl()
4596 Reader.PendingFakeDefinitionData.erase(OldDD); in UpdateDecl()
4616 Reader.getContext(), TemplArgs); in UpdateDecl()
4637 D->setAttrsImpl(Attrs, Reader.getContext()); in UpdateDecl()
4666 FD->setType(Reader.getContext().getFunctionType( in UpdateDecl()
4672 Reader.PendingExceptionSpecUpdates.insert( in UpdateDecl()
4681 Reader.PendingDeducedTypeUpdates.insert( in UpdateDecl()
4688 D->markUsed(Reader.getContext()); in UpdateDecl()
4692 Reader.getContext().setManglingNumber(cast<NamedDecl>(D), in UpdateDecl()
4697 Reader.getContext().setStaticLocalNumber(cast<VarDecl>(D), in UpdateDecl()
4702 D->addAttr(OMPThreadPrivateDeclAttr::CreateImplicit(Reader.getContext(), in UpdateDecl()
4713 Reader.getContext(), AllocatorKind, Allocator, Alignment, SR)); in UpdateDecl()
4720 Module *Owner = SubmoduleID ? Reader.getSubmodule(SubmoduleID) : nullptr; in UpdateDecl()
4721 Reader.getContext().mergeDefinitionIntoModule(Exported, Owner); in UpdateDecl()
4722 Reader.PendingMergedDefinitionsToDeduplicate.insert(Exported); in UpdateDecl()
4733 Reader.getContext(), MapType, DevType, IndirectE, Indirect, Level, in UpdateDecl()