Lines Matching refs:Property
349 auto isImplicitlyReadonlyAtomic = [](ObjCPropertyDecl *Property) -> bool { in checkAtomicPropertyMismatch() argument
351 auto Attrs = Property->getPropertyAttributes(); in checkAtomicPropertyMismatch()
360 if (Property->getPropertyAttributesAsWritten() & in checkAtomicPropertyMismatch()
825 ObjCPropertyDecl *Property) { in SelectPropertyForSynthesisFromProtocols() argument
826 assert(isa<ObjCProtocolDecl>(Property->getDeclContext()) && in SelectPropertyForSynthesisFromProtocols()
832 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet, in SelectPropertyForSynthesisFromProtocols()
839 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet, in SelectPropertyForSynthesisFromProtocols()
847 return Property; in SelectPropertyForSynthesisFromProtocols()
849 ObjCPropertyDecl *OriginalProperty = Property; in SelectPropertyForSynthesisFromProtocols()
853 if (Property->isReadOnly() && !Prop.value()->isReadOnly()) { in SelectPropertyForSynthesisFromProtocols()
854 Property = Prop.value(); in SelectPropertyForSynthesisFromProtocols()
858 if (Property != OriginalProperty) { in SelectPropertyForSynthesisFromProtocols()
863 QualType RHSType = S.Context.getCanonicalType(Property->getType()); in SelectPropertyForSynthesisFromProtocols()
864 unsigned OriginalAttributes = Property->getPropertyAttributesAsWritten(); in SelectPropertyForSynthesisFromProtocols()
919 if (Property->getGetterName() != Prop->getGetterName()) { in SelectPropertyForSynthesisFromProtocols()
923 if (!Property->isReadOnly() && !Prop->isReadOnly() && in SelectPropertyForSynthesisFromProtocols()
924 Property->getSetterName() != Prop->getSetterName()) { in SelectPropertyForSynthesisFromProtocols()
941 return Property; in SelectPropertyForSynthesisFromProtocols()
951 auto Diag = S.Diag(Property->getLocation(), in SelectPropertyForSynthesisFromProtocols()
952 Property != OriginalProperty || HasIncompatibleAttributes in SelectPropertyForSynthesisFromProtocols()
958 Diag << Property->getType(); in SelectPropertyForSynthesisFromProtocols()
965 Diag << Property->getGetterName(); in SelectPropertyForSynthesisFromProtocols()
968 Diag << Property->getSetterName(); in SelectPropertyForSynthesisFromProtocols()
995 return Property; in SelectPropertyForSynthesisFromProtocols()
1612 void SemaObjC::DiagnosePropertyMismatch(ObjCPropertyDecl *Property, in DiagnosePropertyMismatch() argument
1617 ObjCPropertyAttribute::Kind CAttr = Property->getPropertyAttributes(); in DiagnosePropertyMismatch()
1629 Diag(Property->getLocation(), diag::warn_readonly_property) in DiagnosePropertyMismatch()
1630 << Property->getDeclName() << inheritedName; in DiagnosePropertyMismatch()
1633 Diag(Property->getLocation(), diag::warn_property_attribute) in DiagnosePropertyMismatch()
1634 << Property->getDeclName() << "copy" << inheritedName; in DiagnosePropertyMismatch()
1643 Diag(Property->getLocation(), diag::warn_property_attribute) in DiagnosePropertyMismatch()
1644 << Property->getDeclName() << "retain (or strong)" << inheritedName; in DiagnosePropertyMismatch()
1651 checkAtomicPropertyMismatch(SemaRef, SuperProperty, Property, false); in DiagnosePropertyMismatch()
1654 if (Property->getSetterName() != SuperProperty->getSetterName() && in DiagnosePropertyMismatch()
1657 Diag(Property->getLocation(), diag::warn_property_attribute) in DiagnosePropertyMismatch()
1658 << Property->getDeclName() << "setter" << inheritedName; in DiagnosePropertyMismatch()
1661 if (Property->getGetterName() != SuperProperty->getGetterName()) { in DiagnosePropertyMismatch()
1662 Diag(Property->getLocation(), diag::warn_property_attribute) in DiagnosePropertyMismatch()
1663 << Property->getDeclName() << "getter" << inheritedName; in DiagnosePropertyMismatch()
1670 Context.getCanonicalType(Property->getType()); in DiagnosePropertyMismatch()
1680 Diag(Property->getLocation(), diag::warn_property_types_are_incompatible) in DiagnosePropertyMismatch()
1681 << Property->getType() << SuperProperty->getType() << inheritedName; in DiagnosePropertyMismatch()
1826 for (const auto *Property : IFace->instance_properties()) { in IvarBacksCurrentMethodAccessor() local
1827 if ((Property->getGetterName() == IMD->getSelector() || in IvarBacksCurrentMethodAccessor()
1828 Property->getSetterName() == IMD->getSelector()) && in IvarBacksCurrentMethodAccessor()
1829 (Property->getPropertyIvarDecl() == IV)) in IvarBacksCurrentMethodAccessor()
1835 for (const auto *Property : Ext->instance_properties()) in IvarBacksCurrentMethodAccessor() local
1836 if ((Property->getGetterName() == IMD->getSelector() || in IvarBacksCurrentMethodAccessor()
1837 Property->getSetterName() == IMD->getSelector()) && in IvarBacksCurrentMethodAccessor()
1838 (Property->getPropertyIvarDecl() == IV)) in IvarBacksCurrentMethodAccessor()
2158 const ObjCPropertyDecl *Property = I->second; in AtomicPropertySetterGetterRules() local
2162 unsigned Attributes = Property->getPropertyAttributes(); in AtomicPropertySetterGetterRules()
2163 unsigned AttributesAsWritten = Property->getPropertyAttributesAsWritten(); in AtomicPropertySetterGetterRules()
2167 GetterMethod = Property->isClassProperty() ? in AtomicPropertySetterGetterRules()
2168 IMPDecl->getClassMethod(Property->getGetterName()) : in AtomicPropertySetterGetterRules()
2169 IMPDecl->getInstanceMethod(Property->getGetterName()); in AtomicPropertySetterGetterRules()
2170 SetterMethod = Property->isClassProperty() ? in AtomicPropertySetterGetterRules()
2171 IMPDecl->getClassMethod(Property->getSetterName()) : in AtomicPropertySetterGetterRules()
2172 IMPDecl->getInstanceMethod(Property->getSetterName()); in AtomicPropertySetterGetterRules()
2180 << Property->getIdentifier() << 0; in AtomicPropertySetterGetterRules()
2181 Diag(Property->getLocation(), diag::note_property_declare); in AtomicPropertySetterGetterRules()
2186 << Property->getIdentifier() << 1; in AtomicPropertySetterGetterRules()
2187 Diag(Property->getLocation(), diag::note_property_declare); in AtomicPropertySetterGetterRules()
2196 Property->getIdentifier(), Property->getQueryKind())) { in AtomicPropertySetterGetterRules()
2210 << Property->getIdentifier() << (GetterMethod != nullptr) in AtomicPropertySetterGetterRules()
2213 if (Property->getLParenLoc().isValid() && in AtomicPropertySetterGetterRules()
2217 SemaRef.getLocForEndOfToken(Property->getLParenLoc()); in AtomicPropertySetterGetterRules()
2220 Diag(Property->getLocation(), in AtomicPropertySetterGetterRules()
2223 } else if (Property->getLParenLoc().isInvalid()) { in AtomicPropertySetterGetterRules()
2226 Property->getTypeSourceInfo()->getTypeLoc().getBeginLoc(); in AtomicPropertySetterGetterRules()
2227 Diag(Property->getLocation(), in AtomicPropertySetterGetterRules()
2232 Diag(Property->getLocation(), diag::note_property_declare); in AtomicPropertySetterGetterRules()
2342 ObjCPropertyDecl *Property) { in AddPropertyAttrs() argument
2344 for (const auto *A : Property->attrs()) { in AddPropertyAttrs()