Lines Matching refs:ObjCPropertyDecl

40                                ObjCPropertyDecl::PropertyAttributeKind attrs,  in getImpliedARCOwnership()
44 if (attrs & (ObjCPropertyDecl::OBJC_PR_retain | in getImpliedARCOwnership()
45 ObjCPropertyDecl::OBJC_PR_strong | in getImpliedARCOwnership()
46 ObjCPropertyDecl::OBJC_PR_copy)) { in getImpliedARCOwnership()
48 } else if (attrs & ObjCPropertyDecl::OBJC_PR_weak) { in getImpliedARCOwnership()
50 } else if (attrs & ObjCPropertyDecl::OBJC_PR_unsafe_unretained) { in getImpliedARCOwnership()
56 if (attrs & ObjCPropertyDecl::OBJC_PR_assign && in getImpliedARCOwnership()
65 static void checkARCPropertyDecl(Sema &S, ObjCPropertyDecl *property) { in checkARCPropertyDecl()
68 ObjCPropertyDecl::PropertyAttributeKind propertyKind in checkARCPropertyDecl()
83 ObjCPropertyDecl::PropertyAttributeKind attr; in checkARCPropertyDecl()
85 attr = ObjCPropertyDecl::OBJC_PR_strong; in checkARCPropertyDecl()
87 attr = ObjCPropertyDecl::OBJC_PR_weak; in checkARCPropertyDecl()
90 attr = ObjCPropertyDecl::OBJC_PR_unsafe_unretained; in checkARCPropertyDecl()
109 CheckPropertyAgainstProtocol(Sema &S, ObjCPropertyDecl *Prop, in CheckPropertyAgainstProtocol()
119 if (ObjCPropertyDecl *ProtoProp = dyn_cast<ObjCPropertyDecl>(R[I])) { in CheckPropertyAgainstProtocol()
159 ObjCPropertyDecl *Res = nullptr; in ActOnProperty()
199 if (ObjCPropertyDecl *SuperProp = dyn_cast<ObjCPropertyDecl>(R[I])) { in ActOnProperty()
235 static ObjCPropertyDecl::PropertyAttributeKind
239 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_readonly; in makePropertyAttributesAsWritten()
241 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_readwrite; in makePropertyAttributesAsWritten()
243 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_getter; in makePropertyAttributesAsWritten()
245 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_setter; in makePropertyAttributesAsWritten()
247 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_assign; in makePropertyAttributesAsWritten()
249 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_retain; in makePropertyAttributesAsWritten()
251 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_strong; in makePropertyAttributesAsWritten()
253 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_weak; in makePropertyAttributesAsWritten()
255 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_copy; in makePropertyAttributesAsWritten()
257 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_unsafe_unretained; in makePropertyAttributesAsWritten()
259 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_nonatomic; in makePropertyAttributesAsWritten()
261 attributesAsWritten |= ObjCPropertyDecl::OBJC_PR_atomic; in makePropertyAttributesAsWritten()
263 return (ObjCPropertyDecl::PropertyAttributeKind)attributesAsWritten; in makePropertyAttributesAsWritten()
297 return attr & (ObjCPropertyDecl::OBJC_PR_assign | in getOwnershipRule()
298 ObjCPropertyDecl::OBJC_PR_retain | in getOwnershipRule()
299 ObjCPropertyDecl::OBJC_PR_copy | in getOwnershipRule()
300 ObjCPropertyDecl::OBJC_PR_weak | in getOwnershipRule()
301 ObjCPropertyDecl::OBJC_PR_strong | in getOwnershipRule()
302 ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in getOwnershipRule()
305 ObjCPropertyDecl *
329 if (ObjCPropertyDecl *prevDecl in HandlePropertyInClassExtension()
330 = ObjCPropertyDecl::findPropertyDecl(Ext, PropertyId)) { in HandlePropertyInClassExtension()
341 ObjCPropertyDecl *PDecl = in HandlePropertyInClassExtension()
342 ObjCPropertyDecl::Create(Context, DC, FD.D.getIdentifierLoc(), in HandlePropertyInClassExtension()
347 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readonly); in HandlePropertyInClassExtension()
349 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readwrite); in HandlePropertyInClassExtension()
351 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nonatomic); in HandlePropertyInClassExtension()
353 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_atomic); in HandlePropertyInClassExtension()
355 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nullability); in HandlePropertyInClassExtension()
357 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_null_resettable); in HandlePropertyInClassExtension()
374 ObjCPropertyDecl *PIDecl = in HandlePropertyInClassExtension()
380 ObjCPropertyDecl *PrimaryPDecl = in HandlePropertyInClassExtension()
425 if (isReadWrite && (PIkind & ObjCPropertyDecl::OBJC_PR_readonly)) { in HandlePropertyInClassExtension()
426 PIkind &= ~ObjCPropertyDecl::OBJC_PR_readonly; in HandlePropertyInClassExtension()
427 PIkind |= ObjCPropertyDecl::OBJC_PR_readwrite; in HandlePropertyInClassExtension()
440 bool PropertyIsWeak = ((PIkind & ObjCPropertyDecl::OBJC_PR_weak) != 0); in HandlePropertyInClassExtension()
453 if (!ObjCPropertyDecl::findPropertyDecl(DC, in HandlePropertyInClassExtension()
464 PIkind |= ObjCPropertyDecl::OBJC_PR_assign; in HandlePropertyInClassExtension()
486 PIDecl = cast<ObjCPropertyDecl>(ProtocolPtrTy); in HandlePropertyInClassExtension()
490 PIDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_retain); in HandlePropertyInClassExtension()
492 PIDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in HandlePropertyInClassExtension()
494 PIDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_copy); in HandlePropertyInClassExtension()
503 (PIkind & ObjCPropertyDecl::OBJC_PR_readwrite) in HandlePropertyInClassExtension()
521 ObjCPropertyDecl *Sema::CreatePropertyDecl(Scope *S, in CreatePropertyDecl()
563 ObjCPropertyDecl *PDecl = ObjCPropertyDecl::Create(Context, DC, in CreatePropertyDecl()
568 if (ObjCPropertyDecl *prevDecl = in CreatePropertyDecl()
569 ObjCPropertyDecl::findPropertyDecl(DC, PropertyId)) { in CreatePropertyDecl()
595 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readonly); in CreatePropertyDecl()
598 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_getter); in CreatePropertyDecl()
601 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_setter); in CreatePropertyDecl()
604 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_readwrite); in CreatePropertyDecl()
607 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_retain); in CreatePropertyDecl()
610 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in CreatePropertyDecl()
613 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_weak); in CreatePropertyDecl()
616 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_copy); in CreatePropertyDecl()
619 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in CreatePropertyDecl()
622 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign); in CreatePropertyDecl()
626 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nonatomic); in CreatePropertyDecl()
628 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_atomic); in CreatePropertyDecl()
632 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_assign); in CreatePropertyDecl()
634 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_unsafe_unretained); in CreatePropertyDecl()
637 PDecl->setPropertyImplementation(ObjCPropertyDecl::Required); in CreatePropertyDecl()
639 PDecl->setPropertyImplementation(ObjCPropertyDecl::Optional); in CreatePropertyDecl()
642 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_nullability); in CreatePropertyDecl()
645 PDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_null_resettable); in CreatePropertyDecl()
651 ObjCPropertyDecl *property, in checkARCPropertyImpl()
707 & ObjCPropertyDecl::OBJC_PR_assign) != 0); in checkARCPropertyImpl()
729 ObjCPropertyDecl *property, ObjCIvarDecl *ivar) { in setImpliedPropertyAttributeForReadOnlyProperty()
738 property->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in setImpliedPropertyAttributeForReadOnlyProperty()
745 property->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in setImpliedPropertyAttributeForReadOnlyProperty()
747 property->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_weak); in setImpliedPropertyAttributeForReadOnlyProperty()
757 ObjCPropertyDecl *Property) { in DiagnosePropertyMismatchDeclInProtocols()
779 ObjCPropertyDecl *Prop = I->second; in DiagnosePropertyMismatchDeclInProtocols()
823 ObjCPropertyDecl *property = nullptr; in ActOnPropertyImplDecl()
843 if ((PIkind & (ObjCPropertyDecl::OBJC_PR_atomic | in ActOnPropertyImplDecl()
844 ObjCPropertyDecl::OBJC_PR_nonatomic) ) == 0) { in ActOnPropertyImplDecl()
861 (PIkind & ObjCPropertyDecl::OBJC_PR_readonly) && in ActOnPropertyImplDecl()
870 if (ObjCPropertyDecl *ExtProp = dyn_cast<ObjCPropertyDecl>(R[0])) { in ActOnPropertyImplDecl()
872 if (PIkind & ObjCPropertyDecl::OBJC_PR_readwrite) { in ActOnPropertyImplDecl()
948 ObjCPropertyDecl::OBJC_PR_readonly) && in ActOnPropertyImplDecl()
953 ObjCPropertyDecl::PropertyAttributeKind kind in ActOnPropertyImplDecl()
957 if ((kind & ObjCPropertyDecl::OBJC_PR_weak) && in ActOnPropertyImplDecl()
997 !(kind & ObjCPropertyDecl::OBJC_PR_strong)) { in ActOnPropertyImplDecl()
1030 if (kind & ObjCPropertyDecl::OBJC_PR_weak && in ActOnPropertyImplDecl()
1226 ObjCPropertyDecl::OBJC_PR_atomic) { in ActOnPropertyImplDecl()
1313 Sema::DiagnosePropertyMismatch(ObjCPropertyDecl *Property, in DiagnosePropertyMismatch()
1314 ObjCPropertyDecl *SuperProperty, in DiagnosePropertyMismatch()
1317 ObjCPropertyDecl::PropertyAttributeKind CAttr = in DiagnosePropertyMismatch()
1319 ObjCPropertyDecl::PropertyAttributeKind SAttr = in DiagnosePropertyMismatch()
1329 if ((CAttr & ObjCPropertyDecl::OBJC_PR_readonly) in DiagnosePropertyMismatch()
1330 && (SAttr & ObjCPropertyDecl::OBJC_PR_readwrite)) in DiagnosePropertyMismatch()
1333 if ((CAttr & ObjCPropertyDecl::OBJC_PR_copy) in DiagnosePropertyMismatch()
1334 != (SAttr & ObjCPropertyDecl::OBJC_PR_copy)) in DiagnosePropertyMismatch()
1337 else if (!(SAttr & ObjCPropertyDecl::OBJC_PR_readonly)){ in DiagnosePropertyMismatch()
1340 (ObjCPropertyDecl::OBJC_PR_retain | ObjCPropertyDecl::OBJC_PR_strong)); in DiagnosePropertyMismatch()
1343 (ObjCPropertyDecl::OBJC_PR_retain | ObjCPropertyDecl::OBJC_PR_strong)); in DiagnosePropertyMismatch()
1352 if ((CAttr & ObjCPropertyDecl::OBJC_PR_nonatomic) in DiagnosePropertyMismatch()
1353 != (SAttr & ObjCPropertyDecl::OBJC_PR_nonatomic)) { in DiagnosePropertyMismatch()
1389 bool Sema::DiagnosePropertyAccessorMismatch(ObjCPropertyDecl *property, in DiagnosePropertyAccessorMismatch()
1459 ObjCPropertyDecl *PropertyFromSuper = SuperPropMap[Prop->getIdentifier()]; in CollectImmediateProperties()
1464 ObjCPropertyDecl *&PropEntry = PropMap[Prop->getIdentifier()]; in CollectImmediateProperties()
1514 ObjCPropertyDecl *Prop) { in SuperClassImplementsProperty()
1517 if (Prop->getPropertyAttributes() & ObjCPropertyDecl::OBJC_PR_readonly) in SuperClassImplementsProperty()
1548 ObjCPropertyDecl *Prop = PropertyOrder[i]; in DefaultSynthesizeProperties()
1551 Prop->getPropertyImplementation() == ObjCPropertyDecl::Optional) in DefaultSynthesizeProperties()
1557 if (Prop->getPropertyAttributes() & ObjCPropertyDecl::OBJC_PR_readonly) in DefaultSynthesizeProperties()
1570 ObjCPropertyDecl *PropInSuperClass = SuperPropMap[Prop->getIdentifier()]; in DefaultSynthesizeProperties()
1587 if ((Prop->getPropertyAttributes() & ObjCPropertyDecl::OBJC_PR_readwrite) && in DefaultSynthesizeProperties()
1589 ObjCPropertyDecl::OBJC_PR_readonly) && in DefaultSynthesizeProperties()
1638 ObjCPropertyDecl *Prop, in DiagnoseUnimplementedAccessor()
1723 llvm::DenseSet<ObjCPropertyDecl *> PropImplMap; in DiagnoseUnimplementedProperties()
1747 ObjCPropertyDecl *Prop = P->second; in DiagnoseUnimplementedProperties()
1750 Prop->getPropertyImplementation() == ObjCPropertyDecl::Optional || in DiagnoseUnimplementedProperties()
1774 ObjCPropertyDecl::OBJC_PR_null_resettable) && in diagnoseNullResettableSynthesizedSetters()
1806 if (!(AttributesAsWritten & ObjCPropertyDecl::OBJC_PR_atomic) && in AtomicPropertySetterGetterRules()
1807 !(AttributesAsWritten & ObjCPropertyDecl::OBJC_PR_nonatomic)) { in AtomicPropertySetterGetterRules()
1826 if ((Attributes & ObjCPropertyDecl::OBJC_PR_nonatomic) || in AtomicPropertySetterGetterRules()
1827 !(Attributes & ObjCPropertyDecl::OBJC_PR_readwrite)) in AtomicPropertySetterGetterRules()
1863 else if (!(AttributesAsWritten & ObjCPropertyDecl::OBJC_PR_atomic)) { in AtomicPropertySetterGetterRules()
1883 const ObjCPropertyDecl *PD = PID->getPropertyDecl(); in DiagnoseOwningPropertyGetterSynthesis()
1964 ObjCPropertyDecl *Property) { in AddPropertyAttrs()
1979 void Sema::ProcessPropertyDecl(ObjCPropertyDecl *property, in ProcessPropertyDecl()
1981 ObjCPropertyDecl *redeclaredProperty, in ProcessPropertyDecl()
1995 ObjCPropertyDecl::PropertyAttributeKind CAttr = in ProcessPropertyDecl()
1997 if ((!(CAttr & ObjCPropertyDecl::OBJC_PR_readonly)) && in ProcessPropertyDecl()
2030 ObjCPropertyDecl::OBJC_PR_null_resettable) { in ProcessPropertyDecl()
2046 ObjCPropertyDecl::Optional) ? in ProcessPropertyDecl()
2098 ObjCPropertyDecl::Optional) ? in ProcessPropertyDecl()
2106 ObjCPropertyDecl::OBJC_PR_null_resettable) { in ProcessPropertyDecl()
2190 ObjCPropertyDecl *PropertyDecl = cast<ObjCPropertyDecl>(PDecl); in CheckObjCPropertyAttributes()
2325 PropertyDecl->setPropertyAttributes(ObjCPropertyDecl::OBJC_PR_strong); in CheckObjCPropertyAttributes()