Lines Matching defs:Property

360   auto isImplicitlyReadonlyAtomic = [](ObjCPropertyDecl *Property) -> bool {
362 auto Attrs = Property->getPropertyAttributes();
369 if (Property->getPropertyAttributesAsWritten() &
584 // Property defaults to 'assign' if it is readwrite, unless this is ARC
849 ObjCPropertyDecl *Property) {
850 assert(isa<ObjCProtocolDecl>(Property->getDeclContext()) &&
856 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet,
863 PDecl->collectInheritedProtocolProperties(Property, ProtocolSet,
871 return Property;
873 ObjCPropertyDecl *OriginalProperty = Property;
877 if (Property->isReadOnly() && !Prop.value()->isReadOnly()) {
878 Property = Prop.value();
882 if (Property != OriginalProperty) {
887 QualType RHSType = S.Context.getCanonicalType(Property->getType());
888 unsigned OriginalAttributes = Property->getPropertyAttributesAsWritten();
942 if (Property->getGetterName() != Prop->getGetterName()) {
946 if (!Property->isReadOnly() && !Prop->isReadOnly() &&
947 Property->getSetterName() != Prop->getSetterName()) {
964 return Property;
974 auto Diag = S.Diag(Property->getLocation(),
975 Property != OriginalProperty || HasIncompatibleAttributes
981 Diag << Property->getType();
988 Diag << Property->getGetterName();
991 Diag << Property->getSetterName();
1018 return Property;
1641 Sema::DiagnosePropertyMismatch(ObjCPropertyDecl *Property,
1646 Property->getPropertyAttributes();
1659 Diag(Property->getLocation(), diag::warn_readonly_property)
1660 << Property->getDeclName() << inheritedName;
1663 Diag(Property->getLocation(), diag::warn_property_attribute)
1664 << Property->getDeclName() << "copy" << inheritedName;
1675 Diag(Property->getLocation(), diag::warn_property_attribute)
1676 << Property->getDeclName() << "retain (or strong)" << inheritedName;
1683 checkAtomicPropertyMismatch(*this, SuperProperty, Property, false);
1686 if (Property->getSetterName() != SuperProperty->getSetterName() &&
1689 Diag(Property->getLocation(), diag::warn_property_attribute)
1690 << Property->getDeclName() << "setter" << inheritedName;
1693 if (Property->getGetterName() != SuperProperty->getGetterName()) {
1694 Diag(Property->getLocation(), diag::warn_property_attribute)
1695 << Property->getDeclName() << "getter" << inheritedName;
1702 Context.getCanonicalType(Property->getType());
1712 Diag(Property->getLocation(), diag::warn_property_types_are_incompatible)
1713 << Property->getType() << SuperProperty->getType() << inheritedName;
1858 for (const auto *Property : IFace->instance_properties()) {
1859 if ((Property->getGetterName() == IMD->getSelector() ||
1860 Property->getSetterName() == IMD->getSelector()) &&
1861 (Property->getPropertyIvarDecl() == IV))
1867 for (const auto *Property : Ext->instance_properties())
1868 if ((Property->getGetterName() == IMD->getSelector() ||
1869 Property->getSetterName() == IMD->getSelector()) &&
1870 (Property->getPropertyIvarDecl() == IV))
1916 // Property may have been synthesized by user.
2191 const ObjCPropertyDecl *Property = I->second;
2195 unsigned Attributes = Property->getPropertyAttributes();
2196 unsigned AttributesAsWritten = Property->getPropertyAttributesAsWritten();
2200 GetterMethod = Property->isClassProperty() ?
2201 IMPDecl->getClassMethod(Property->getGetterName()) :
2202 IMPDecl->getInstanceMethod(Property->getGetterName());
2203 SetterMethod = Property->isClassProperty() ?
2204 IMPDecl->getClassMethod(Property->getSetterName()) :
2205 IMPDecl->getInstanceMethod(Property->getSetterName());
2213 << Property->getIdentifier() << 0;
2214 Diag(Property->getLocation(), diag::note_property_declare);
2219 << Property->getIdentifier() << 1;
2220 Diag(Property->getLocation(), diag::note_property_declare);
2229 Property->getIdentifier(), Property->getQueryKind())) {
2243 << Property->getIdentifier() << (GetterMethod != nullptr)
2246 if (Property->getLParenLoc().isValid() &&
2250 getLocForEndOfToken(Property->getLParenLoc());
2253 Diag(Property->getLocation(),
2256 } else if (Property->getLParenLoc().isInvalid()) {
2259 Property->getTypeSourceInfo()->getTypeLoc().getBeginLoc();
2260 Diag(Property->getLocation(),
2266 Diag(Property->getLocation(), diag::note_property_declare);
2376 ObjCPropertyDecl *Property) {
2378 for (const auto *A : Property->attrs()) {