Lines Matching refs:PDecl
683 if (ObjCProtocolDecl *PDecl = LookupProtocol((*I)->getIdentifier(),
685 if (PDecl->getIdentifier() == PName) {
691 if (!PDecl->hasDefinition())
695 PDecl->getLocation(), PDecl->getReferencedProtocols()))
716 ObjCProtocolDecl *PDecl = nullptr;
726 PDecl = ObjCProtocolDecl::Create(Context, CurContext, ProtocolName,
729 PDecl->startDefinition();
741 PDecl = ObjCProtocolDecl::Create(Context, CurContext, ProtocolName,
745 PushOnScopeChains(PDecl, TUScope);
746 PDecl->startDefinition();
750 ProcessDeclAttributeList(TUScope, PDecl, AttrList);
754 mergeDeclAttributes(PDecl, PrevDecl);
758 PDecl->setProtocolList((ObjCProtocolDecl*const*)ProtoRefs, NumProtoRefs,
762 CheckObjCDeclScope(PDecl);
763 return ActOnObjCContainerStartDefinition(PDecl);
766 static bool NestedProtocolHasNoDefinition(ObjCProtocolDecl *PDecl,
768 if (!PDecl->hasDefinition() || PDecl->getDefinition()->isHidden()) {
769 UndefinedProtocol = PDecl;
773 for (auto *PI : PDecl->protocols())
790 ObjCProtocolDecl *PDecl = LookupProtocol(ProtocolId[i].first,
792 if (!PDecl) {
798 if ((PDecl = Corrected.getCorrectionDeclAs<ObjCProtocolDecl>()))
803 if (!PDecl) {
809 if (!PDecl->isThisDeclarationADefinition() && PDecl->getDefinition())
810 PDecl = PDecl->getDefinition();
812 (void)DiagnoseUseOfDecl(PDecl, ProtocolId[i].second);
820 NestedProtocolHasNoDefinition(PDecl, UndefinedProtocol)) {
826 Protocols.push_back(PDecl);
867 ObjCProtocolDecl *PDecl
872 PushOnScopeChains(PDecl, TUScope);
873 CheckObjCDeclScope(PDecl);
876 ProcessDeclAttributeList(TUScope, PDecl, attrList);
879 mergeDeclAttributes(PDecl, PrevDecl);
881 DeclsInGroup.push_back(PDecl);
1654 static void findProtocolsWithExplicitImpls(const ObjCProtocolDecl *PDecl,
1656 if (PDecl->hasAttr<ObjCExplicitProtocolImplAttr>())
1657 PNS.insert(PDecl->getIdentifier());
1658 for (const auto *PI : PDecl->protocols())
1680 ObjCProtocolDecl *PDecl,
1705 if (PDecl->hasAttr<ObjCExplicitProtocolImplAttr>()) {
1710 if (ProtocolsExplictImpl->find(PDecl->getIdentifier()) !=
1736 if (!PDecl->isThisDeclarationADefinition() &&
1737 PDecl->getDefinition())
1738 PDecl = PDecl->getDefinition();
1747 for (auto *method : PDecl->instance_methods()) {
1775 PDecl);
1780 for (auto *method : PDecl->class_methods()) {
1797 WarnUndefinedMethod(S, ImpLoc, method, IncompleteImpl, DIAG, PDecl);
1802 for (auto *PI : PDecl->protocols())
3458 const ObjCPropertyDecl *&PDecl) const {
3469 if ((PDecl = Method->findPropertyDecl()))
3470 if (ObjCIvarDecl *IV = PDecl->getPropertyIvarDecl()) {
3529 const ObjCPropertyDecl *PDecl;
3530 const ObjCIvarDecl *IV = GetIvarBackingPropertyAccessor(CurMethod, PDecl);
3545 Diag(PDecl->getLocation(), diag::note_property_declare);