Lines Matching refs:PDecl
1198 if (ObjCProtocolDecl *PDecl = LookupProtocol((*I)->getIdentifier(), Ploc)) { in CheckForwardProtocolDeclarationForCircularDependency() local
1199 if (PDecl->getIdentifier() == PName) { in CheckForwardProtocolDeclarationForCircularDependency()
1205 if (!PDecl->hasDefinition()) in CheckForwardProtocolDeclarationForCircularDependency()
1209 PDecl->getLocation(), PDecl->getReferencedProtocols())) in CheckForwardProtocolDeclarationForCircularDependency()
1227 ObjCProtocolDecl *PDecl = nullptr; in ActOnStartProtocolInterface() local
1233 PDecl = ObjCProtocolDecl::Create(Context, SemaRef.CurContext, ProtocolName, in ActOnStartProtocolInterface()
1239 SkipBody->New = PDecl; in ActOnStartProtocolInterface()
1250 SemaRef.PushOnScopeChains(PDecl, SemaRef.TUScope); in ActOnStartProtocolInterface()
1251 PDecl->startDuplicateDefinitionForComparison(); in ActOnStartProtocolInterface()
1263 PDecl = ObjCProtocolDecl::Create(Context, SemaRef.CurContext, ProtocolName, in ActOnStartProtocolInterface()
1267 SemaRef.PushOnScopeChains(PDecl, SemaRef.TUScope); in ActOnStartProtocolInterface()
1268 PDecl->startDefinition(); in ActOnStartProtocolInterface()
1271 SemaRef.ProcessDeclAttributeList(SemaRef.TUScope, PDecl, AttrList); in ActOnStartProtocolInterface()
1272 SemaRef.AddPragmaAttributes(SemaRef.TUScope, PDecl); in ActOnStartProtocolInterface()
1273 SemaRef.ProcessAPINotes(PDecl); in ActOnStartProtocolInterface()
1277 SemaRef.mergeDeclAttributes(PDecl, PrevDecl); in ActOnStartProtocolInterface()
1281 diagnoseUseOfProtocols(SemaRef, PDecl, (ObjCProtocolDecl *const *)ProtoRefs, in ActOnStartProtocolInterface()
1283 PDecl->setProtocolList((ObjCProtocolDecl*const*)ProtoRefs, NumProtoRefs, in ActOnStartProtocolInterface()
1287 CheckObjCDeclScope(PDecl); in ActOnStartProtocolInterface()
1288 ActOnObjCContainerStartDefinition(PDecl); in ActOnStartProtocolInterface()
1289 return PDecl; in ActOnStartProtocolInterface()
1292 static bool NestedProtocolHasNoDefinition(ObjCProtocolDecl *PDecl, in NestedProtocolHasNoDefinition() argument
1294 if (!PDecl->hasDefinition() || in NestedProtocolHasNoDefinition()
1295 !PDecl->getDefinition()->isUnconditionallyVisible()) { in NestedProtocolHasNoDefinition()
1296 UndefinedProtocol = PDecl; in NestedProtocolHasNoDefinition()
1300 for (auto *PI : PDecl->protocols()) in NestedProtocolHasNoDefinition()
1316 ObjCProtocolDecl *PDecl = LookupProtocol(Pair.first, Pair.second); in FindProtocolDeclaration() local
1317 if (!PDecl) { in FindProtocolDeclaration()
1323 if ((PDecl = Corrected.getCorrectionDeclAs<ObjCProtocolDecl>())) in FindProtocolDeclaration()
1329 if (!PDecl) { in FindProtocolDeclaration()
1334 if (!PDecl->isThisDeclarationADefinition() && PDecl->getDefinition()) in FindProtocolDeclaration()
1335 PDecl = PDecl->getDefinition(); in FindProtocolDeclaration()
1340 (void)SemaRef.DiagnoseUseOfDecl(PDecl, Pair.second); in FindProtocolDeclaration()
1349 NestedProtocolHasNoDefinition(PDecl, UndefinedProtocol)) { in FindProtocolDeclaration()
1354 Protocols.push_back(PDecl); in FindProtocolDeclaration()
1795 ObjCProtocolDecl *PDecl = in ActOnForwardProtocolDeclaration() local
1799 SemaRef.PushOnScopeChains(PDecl, SemaRef.TUScope); in ActOnForwardProtocolDeclaration()
1800 CheckObjCDeclScope(PDecl); in ActOnForwardProtocolDeclaration()
1802 SemaRef.ProcessDeclAttributeList(SemaRef.TUScope, PDecl, attrList); in ActOnForwardProtocolDeclaration()
1803 SemaRef.AddPragmaAttributes(SemaRef.TUScope, PDecl); in ActOnForwardProtocolDeclaration()
1806 SemaRef.mergeDeclAttributes(PDecl, PrevDecl); in ActOnForwardProtocolDeclaration()
1808 DeclsInGroup.push_back(PDecl); in ActOnForwardProtocolDeclaration()
2686 static void findProtocolsWithExplicitImpls(const ObjCProtocolDecl *PDecl, in findProtocolsWithExplicitImpls() argument
2688 if (PDecl->hasAttr<ObjCExplicitProtocolImplAttr>()) in findProtocolsWithExplicitImpls()
2689 PNS.insert(PDecl->getIdentifier()); in findProtocolsWithExplicitImpls()
2690 for (const auto *PI : PDecl->protocols()) in findProtocolsWithExplicitImpls()
2711 Sema &S, ObjCImplDecl *Impl, ObjCProtocolDecl *PDecl, bool &IncompleteImpl, in CheckProtocolMethodDefs() argument
2733 if (PDecl->hasAttr<ObjCExplicitProtocolImplAttr>()) { in CheckProtocolMethodDefs()
2738 if (ProtocolsExplictImpl->contains(PDecl->getIdentifier())) in CheckProtocolMethodDefs()
2763 if (!PDecl->isThisDeclarationADefinition() && in CheckProtocolMethodDefs()
2764 PDecl->getDefinition()) in CheckProtocolMethodDefs()
2765 PDecl = PDecl->getDefinition(); in CheckProtocolMethodDefs()
2774 for (auto *method : PDecl->instance_methods()) { in CheckProtocolMethodDefs()
2799 WarnUndefinedMethod(S, Impl, method, IncompleteImpl, DIAG, PDecl); in CheckProtocolMethodDefs()
2804 for (auto *method : PDecl->class_methods()) { in CheckProtocolMethodDefs()
2821 WarnUndefinedMethod(S, Impl, method, IncompleteImpl, DIAG, PDecl); in CheckProtocolMethodDefs()
2826 for (auto *PI : PDecl->protocols()) in CheckProtocolMethodDefs()
3934 Sema &S, ObjCProtocolDecl *PDecl, ObjCCategoryDecl *CDecl);
3944 Sema &S, ObjCProtocolDecl *PDecl, ObjCCategoryDecl *CDecl) { in DiagnoseCategoryDirectMembersProtocolConformance() argument
3945 if (!PDecl->isThisDeclarationADefinition() && PDecl->getDefinition()) in DiagnoseCategoryDirectMembersProtocolConformance()
3946 PDecl = PDecl->getDefinition(); in DiagnoseCategoryDirectMembersProtocolConformance()
3950 for (auto *MD : PDecl->methods()) { in DiagnoseCategoryDirectMembersProtocolConformance()
3959 for (auto *PD : PDecl->properties()) { in DiagnoseCategoryDirectMembersProtocolConformance()
3971 << CDecl->IsClassExtension() << CDecl << PDecl << IDecl; in DiagnoseCategoryDirectMembersProtocolConformance()
3979 PDecl->protocols()); in DiagnoseCategoryDirectMembersProtocolConformance()
5297 const ObjCPropertyDecl *&PDecl) const { in GetIvarBackingPropertyAccessor()
5308 if ((PDecl = Method->findPropertyDecl())) in GetIvarBackingPropertyAccessor()
5309 if (ObjCIvarDecl *IV = PDecl->getPropertyIvarDecl()) { in GetIvarBackingPropertyAccessor()
5368 const ObjCPropertyDecl *PDecl; in DiagnoseUnusedBackingIvarInAccessor() local
5369 const ObjCIvarDecl *IV = GetIvarBackingPropertyAccessor(CurMethod, PDecl); in DiagnoseUnusedBackingIvarInAccessor()
5387 Diag(PDecl->getLocation(), diag::note_property_declare); in DiagnoseUnusedBackingIvarInAccessor()