Lines Matching refs:PDecl
520 ObjCPropertyDecl *PDecl = CreatePropertyDecl(S, CDecl, AtLoc, LParenLoc, in HandlePropertyInClassExtension() local
530 ProcessPropertyDecl(PDecl); in HandlePropertyInClassExtension()
531 return PDecl; in HandlePropertyInClassExtension()
534 if (!Context.hasSameType(PIDecl->getType(), PDecl->getType())) { in HandlePropertyInClassExtension()
544 QualType ClassExtPropertyT = Context.getCanonicalType(PDecl->getType()); in HandlePropertyInClassExtension()
551 diag::err_type_mismatch_continuation_class) << PDecl->getType(); in HandlePropertyInClassExtension()
559 checkAtomicPropertyMismatch(*this, PIDecl, PDecl, true); in HandlePropertyInClassExtension()
562 ProcessPropertyDecl(PDecl); in HandlePropertyInClassExtension()
563 return PDecl; in HandlePropertyInClassExtension()
623 ObjCPropertyDecl *PDecl = ObjCPropertyDecl::Create(Context, DC, in CreatePropertyDecl() local
633 Diag(PDecl->getLocation(), diag::err_duplicate_property); in CreatePropertyDecl()
635 PDecl->setInvalidDecl(); in CreatePropertyDecl()
638 DC->addDecl(PDecl); in CreatePropertyDecl()
640 PDecl->setLexicalDeclContext(lexicalDC); in CreatePropertyDecl()
645 PDecl->setInvalidDecl(); in CreatePropertyDecl()
648 ProcessDeclAttributes(S, PDecl, FD.D); in CreatePropertyDecl()
652 PDecl->setGetterName(GetterSel, GetterNameLoc); in CreatePropertyDecl()
653 PDecl->setSetterName(SetterSel, SetterNameLoc); in CreatePropertyDecl()
654 PDecl->setPropertyAttributesAsWritten( in CreatePropertyDecl()
658 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readonly); in CreatePropertyDecl()
661 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_getter); in CreatePropertyDecl()
664 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_setter); in CreatePropertyDecl()
667 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readwrite); in CreatePropertyDecl()
670 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_retain); in CreatePropertyDecl()
673 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in CreatePropertyDecl()
676 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_weak); in CreatePropertyDecl()
679 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_copy); in CreatePropertyDecl()
682 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in CreatePropertyDecl()
685 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign); in CreatePropertyDecl()
689 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nonatomic); in CreatePropertyDecl()
691 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_atomic); in CreatePropertyDecl()
695 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign); in CreatePropertyDecl()
697 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in CreatePropertyDecl()
700 PDecl->setPropertyImplementation(ObjCPropertyDecl::Required); in CreatePropertyDecl()
702 PDecl->setPropertyImplementation(ObjCPropertyDecl::Optional); in CreatePropertyDecl()
705 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nullability); in CreatePropertyDecl()
708 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_null_resettable); in CreatePropertyDecl()
711 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_class); in CreatePropertyDecl()
716 Diag(PDecl->getLocation(), diag::err_objc_direct_on_protocol) << true; in CreatePropertyDecl()
718 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_direct); in CreatePropertyDecl()
720 Diag(PDecl->getLocation(), diag::warn_objc_direct_property_ignored) in CreatePropertyDecl()
721 << PDecl->getDeclName(); in CreatePropertyDecl()
725 return PDecl; in CreatePropertyDecl()
855 if (const ObjCProtocolDecl *PDecl = PI->getDefinition()) in SelectPropertyForSynthesisFromProtocols() local
856 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet, in SelectPropertyForSynthesisFromProtocols()
862 if (const ObjCProtocolDecl *PDecl = PI->getDefinition()) in SelectPropertyForSynthesisFromProtocols() local
863 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet, in SelectPropertyForSynthesisFromProtocols()
1804 else if (ObjCProtocolDecl *PDecl = dyn_cast<ObjCProtocolDecl>(CDecl)) { in CollectImmediateProperties() local
1805 for (auto *Prop : PDecl->properties()) { in CollectImmediateProperties()
1823 for (auto *PI : PDecl->protocols()) in CollectImmediateProperties()
2076 for (auto *PDecl : IDecl->all_referenced_protocols()) { in DiagnoseUnimplementedProperties() local
2077 if (!PDecl->hasAttr<ObjCExplicitProtocolImplAttr>()) in DiagnoseUnimplementedProperties()
2095 for (auto *PropDecl : PDecl->properties()) { in DiagnoseUnimplementedProperties()
2617 void Sema::CheckObjCPropertyAttributes(Decl *PDecl, in CheckObjCPropertyAttributes() argument
2622 if (!PDecl || PDecl->isInvalidDecl()) in CheckObjCPropertyAttributes()
2630 ObjCPropertyDecl *PropertyDecl = cast<ObjCPropertyDecl>(PDecl); in CheckObjCPropertyAttributes()