Lines Matching refs:PDecl
519 ObjCPropertyDecl *PDecl = CreatePropertyDecl(S, CDecl, AtLoc, LParenLoc, in HandlePropertyInClassExtension() local
529 ProcessPropertyDecl(PDecl); in HandlePropertyInClassExtension()
530 return PDecl; in HandlePropertyInClassExtension()
533 if (!Context.hasSameType(PIDecl->getType(), PDecl->getType())) { in HandlePropertyInClassExtension()
543 QualType ClassExtPropertyT = Context.getCanonicalType(PDecl->getType()); in HandlePropertyInClassExtension()
550 diag::err_type_mismatch_continuation_class) << PDecl->getType(); in HandlePropertyInClassExtension()
558 checkAtomicPropertyMismatch(*this, PIDecl, PDecl, true); in HandlePropertyInClassExtension()
561 ProcessPropertyDecl(PDecl); in HandlePropertyInClassExtension()
562 return PDecl; in HandlePropertyInClassExtension()
622 ObjCPropertyDecl *PDecl = ObjCPropertyDecl::Create(Context, DC, in CreatePropertyDecl() local
632 Diag(PDecl->getLocation(), diag::err_duplicate_property); in CreatePropertyDecl()
634 PDecl->setInvalidDecl(); in CreatePropertyDecl()
637 DC->addDecl(PDecl); in CreatePropertyDecl()
639 PDecl->setLexicalDeclContext(lexicalDC); in CreatePropertyDecl()
644 PDecl->setInvalidDecl(); in CreatePropertyDecl()
647 ProcessDeclAttributes(S, PDecl, FD.D); in CreatePropertyDecl()
651 PDecl->setGetterName(GetterSel, GetterNameLoc); in CreatePropertyDecl()
652 PDecl->setSetterName(SetterSel, SetterNameLoc); in CreatePropertyDecl()
653 PDecl->setPropertyAttributesAsWritten( in CreatePropertyDecl()
657 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readonly); in CreatePropertyDecl()
660 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_getter); in CreatePropertyDecl()
663 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_setter); in CreatePropertyDecl()
666 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readwrite); in CreatePropertyDecl()
669 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_retain); in CreatePropertyDecl()
672 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in CreatePropertyDecl()
675 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_weak); in CreatePropertyDecl()
678 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_copy); in CreatePropertyDecl()
681 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in CreatePropertyDecl()
684 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign); in CreatePropertyDecl()
688 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nonatomic); in CreatePropertyDecl()
690 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_atomic); in CreatePropertyDecl()
694 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign); in CreatePropertyDecl()
696 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in CreatePropertyDecl()
699 PDecl->setPropertyImplementation(ObjCPropertyDecl::Required); in CreatePropertyDecl()
701 PDecl->setPropertyImplementation(ObjCPropertyDecl::Optional); in CreatePropertyDecl()
704 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nullability); in CreatePropertyDecl()
707 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_null_resettable); in CreatePropertyDecl()
710 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_class); in CreatePropertyDecl()
712 return PDecl; in CreatePropertyDecl()
842 if (const ObjCProtocolDecl *PDecl = PI->getDefinition()) in SelectPropertyForSynthesisFromProtocols() local
843 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet, in SelectPropertyForSynthesisFromProtocols()
849 if (const ObjCProtocolDecl *PDecl = PI->getDefinition()) in SelectPropertyForSynthesisFromProtocols() local
850 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet, in SelectPropertyForSynthesisFromProtocols()
1740 else if (ObjCProtocolDecl *PDecl = dyn_cast<ObjCProtocolDecl>(CDecl)) { in CollectImmediateProperties() local
1741 for (auto *Prop : PDecl->properties()) { in CollectImmediateProperties()
1759 for (auto *PI : PDecl->protocols()) in CollectImmediateProperties()
2011 for (auto *PDecl : IDecl->all_referenced_protocols()) { in DiagnoseUnimplementedProperties() local
2012 if (!PDecl->hasAttr<ObjCExplicitProtocolImplAttr>()) in DiagnoseUnimplementedProperties()
2030 for (auto *PropDecl : PDecl->properties()) { in DiagnoseUnimplementedProperties()
2531 void Sema::CheckObjCPropertyAttributes(Decl *PDecl, in CheckObjCPropertyAttributes() argument
2536 if (!PDecl || PDecl->isInvalidDecl()) in CheckObjCPropertyAttributes()
2544 ObjCPropertyDecl *PropertyDecl = cast<ObjCPropertyDecl>(PDecl); in CheckObjCPropertyAttributes()