Lines Matching refs:ObjCMethod
3947 void Sema::CheckObjCMethodOverrides(ObjCMethodDecl *ObjCMethod, in CheckObjCMethodOverrides() argument
3951 OverrideSearch overrides(*this, ObjCMethod); in CheckObjCMethodOverrides()
3968 } else if (isa<ObjCImplDecl>(ObjCMethod->getDeclContext())) { in CheckObjCMethodOverrides()
3977 MethodPool.find(ObjCMethod->getSelector()); in CheckObjCMethodOverrides()
3980 ObjCMethod->isInstanceMethod()? It->second.first: It->second.second; in CheckObjCMethodOverrides()
4006 ObjCMethod->SetRelatedResultType(); in CheckObjCMethodOverrides()
4009 mergeObjCMethodDecls(ObjCMethod, overridden); in CheckObjCMethodOverrides()
4011 if (ObjCMethod->isImplicit() && overridden->isImplicit()) in CheckObjCMethodOverrides()
4015 if (isa<ObjCInterfaceDecl>(ObjCMethod->getDeclContext()) || in CheckObjCMethodOverrides()
4016 isa<ObjCImplementationDecl>(ObjCMethod->getDeclContext())) in CheckObjCMethodOverrides()
4017 CheckConflictingOverridingMethod(ObjCMethod, overridden, in CheckObjCMethodOverrides()
4023 ObjCMethodDecl::param_iterator ParamI = ObjCMethod->param_begin(), in CheckObjCMethodOverrides()
4024 E = ObjCMethod->param_end(); in CheckObjCMethodOverrides()
4043 ObjCMethod->setOverriding(hasOverriddenMethodsInBaseOrProtocol); in CheckObjCMethodOverrides()
4168 ObjCMethodDecl *ObjCMethod = ObjCMethodDecl::Create( in ActOnMethodDeclaration() local
4209 ParmVarDecl* Param = CheckParameter(ObjCMethod, StartLoc, in ActOnMethodDeclaration()
4240 Param->setDeclContext(ObjCMethod); in ActOnMethodDeclaration()
4244 ObjCMethod->setMethodParams(Context, Params, SelectorLocs); in ActOnMethodDeclaration()
4245 ObjCMethod->setObjCDeclQualifier( in ActOnMethodDeclaration()
4249 ProcessDeclAttributeList(TUScope, ObjCMethod, AttrList); in ActOnMethodDeclaration()
4256 ImpDecl->addInstanceMethod(ObjCMethod); in ActOnMethodDeclaration()
4259 ImpDecl->addClassMethod(ObjCMethod); in ActOnMethodDeclaration()
4265 if (auto *IMD = IDecl->lookupMethod(ObjCMethod->getSelector(), in ActOnMethodDeclaration()
4266 ObjCMethod->isInstanceMethod())) { in ActOnMethodDeclaration()
4267 mergeInterfaceMethodToImpl(*this, ObjCMethod, IMD); in ActOnMethodDeclaration()
4271 ObjCMethod->getSelector().getMethodFamily() == OMF_dealloc) { in ActOnMethodDeclaration()
4272 Diag(ObjCMethod->getLocation(), diag::warn_dealloc_in_category) in ActOnMethodDeclaration()
4273 << ObjCMethod->getDeclName(); in ActOnMethodDeclaration()
4278 cast<DeclContext>(ClassDecl)->addDecl(ObjCMethod); in ActOnMethodDeclaration()
4283 Diag(ObjCMethod->getLocation(), diag::err_duplicate_method_decl) in ActOnMethodDeclaration()
4284 << ObjCMethod->getDeclName(); in ActOnMethodDeclaration()
4286 ObjCMethod->setInvalidDecl(); in ActOnMethodDeclaration()
4287 return ObjCMethod; in ActOnMethodDeclaration()
4305 = CheckRelatedResultTypeCompatibility(*this, ObjCMethod, CurrentClass); in ActOnMethodDeclaration()
4307 CheckObjCMethodOverrides(ObjCMethod, CurrentClass, RTC); in ActOnMethodDeclaration()
4311 ARCError = CheckARCMethodDecl(ObjCMethod); in ActOnMethodDeclaration()
4315 !ObjCMethod->hasRelatedResultType() && in ActOnMethodDeclaration()
4318 switch (ObjCMethod->getMethodFamily()) { in ActOnMethodDeclaration()
4332 InferRelatedResultType = ObjCMethod->isClassMethod(); in ActOnMethodDeclaration()
4339 InferRelatedResultType = ObjCMethod->isInstanceMethod(); in ActOnMethodDeclaration()
4344 !ObjCMethod->getReturnType()->isObjCIndependentClassType()) in ActOnMethodDeclaration()
4345 ObjCMethod->SetRelatedResultType(); in ActOnMethodDeclaration()
4348 ActOnDocumentableDecl(ObjCMethod); in ActOnMethodDeclaration()
4350 return ObjCMethod; in ActOnMethodDeclaration()