Lines Matching defs:SetterMethod
2160 ObjCMethodDecl *SetterMethod = nullptr;
2170 SetterMethod = Property->isClassProperty() ?
2175 if (SetterMethod && SetterMethod->isSynthesizedAccessorStub())
2176 SetterMethod = nullptr;
2183 if (SetterMethod) {
2184 Diag(SetterMethod->getLocation(),
2200 SetterMethod = PIDecl->getSetterMethodDecl();
2203 if (SetterMethod && SetterMethod->isSynthesizedAccessorStub())
2204 SetterMethod = nullptr;
2205 if ((bool)GetterMethod ^ (bool)SetterMethod) {
2208 : SetterMethod->getLocation());
2211 << (SetterMethod != nullptr);
2358 ObjCMethodDecl *GetterMethod, *SetterMethod;
2378 SetterMethod = IsClassProperty ?
2381 if (!SetterMethod)
2384 SetterMethod = IsClassProperty ? CatDecl->getClassInterface()->
2409 if (!property->isReadOnly() && !SetterMethod) {
2425 if (!property->isReadOnly() && SetterMethod) {
2426 if (Context.getCanonicalType(SetterMethod->getReturnType()) !=
2428 Diag(SetterMethod->getLocation(), diag::err_setter_type_void);
2429 if (SetterMethod->param_size() != 1 ||
2431 (*SetterMethod->param_begin())->getType().getNonReferenceType(),
2436 << SetterMethod->getSelector();
2437 Diag(SetterMethod->getLocation(), diag::note_declared_at);
2511 if (!SetterMethod) {
2518 SetterMethod = ObjCMethodDecl::Create(
2548 ParmVarDecl *Argument = ParmVarDecl::Create(Context, SetterMethod,
2555 SetterMethod->setMethodParams(Context, Argument, std::nullopt);
2557 AddPropertyAttrs(SemaRef, SetterMethod, property);
2560 SetterMethod->addAttr(ObjCDirectAttr::CreateImplicit(Context, Loc));
2562 CD->addDecl(SetterMethod);
2564 SetterMethod->addAttr(SectionAttr::CreateImplicit(
2567 SemaRef.ProcessAPINotes(SetterMethod);
2572 CheckARCMethodDecl(SetterMethod);
2576 SetterMethod->setPropertyAccessor(true);
2578 SetterMethod->createImplicitParams(Context,
2579 SetterMethod->getClassInterface());
2580 property->setSetterMethodDecl(SetterMethod);
2597 if (SetterMethod)
2598 AddInstanceMethodToGlobalPool(SetterMethod);
2602 if (SetterMethod)
2603 AddFactoryMethodToGlobalPool(SetterMethod);
2615 if (SetterMethod)
2616 CheckObjCMethodOverrides(SetterMethod, CurrentClass, SemaObjC::RTC_Unknown);