Lines Matching refs:ObjCMethod
2780 void Sema::CheckObjCMethodOverrides(ObjCMethodDecl *ObjCMethod, in CheckObjCMethodOverrides() argument
2784 OverrideSearch overrides(*this, ObjCMethod); in CheckObjCMethodOverrides()
2802 ObjCMethod->SetRelatedResultType(); in CheckObjCMethodOverrides()
2805 mergeObjCMethodDecls(ObjCMethod, overridden); in CheckObjCMethodOverrides()
2807 if (ObjCMethod->isImplicit() && overridden->isImplicit()) in CheckObjCMethodOverrides()
2811 if (isa<ObjCInterfaceDecl>(ObjCMethod->getDeclContext()) || in CheckObjCMethodOverrides()
2812 isa<ObjCImplementationDecl>(ObjCMethod->getDeclContext())) in CheckObjCMethodOverrides()
2813 CheckConflictingOverridingMethod(ObjCMethod, overridden, in CheckObjCMethodOverrides()
2819 ObjCMethodDecl::param_iterator ParamI = ObjCMethod->param_begin(), in CheckObjCMethodOverrides()
2820 E = ObjCMethod->param_end(); in CheckObjCMethodOverrides()
2839 ObjCMethod->setOverriding(hasOverriddenMethodsInBaseOrProtocol); in CheckObjCMethodOverrides()
2884 ObjCMethodDecl* ObjCMethod = in ActOnMethodDeclaration() local
2929 ParmVarDecl* Param = CheckParameter(ObjCMethod, StartLoc, in ActOnMethodDeclaration()
2965 Param->setDeclContext(ObjCMethod); in ActOnMethodDeclaration()
2970 ObjCMethod->setMethodParams(Context, Params, SelectorLocs); in ActOnMethodDeclaration()
2971 ObjCMethod->setObjCDeclQualifier( in ActOnMethodDeclaration()
2975 ProcessDeclAttributeList(TUScope, ObjCMethod, AttrList); in ActOnMethodDeclaration()
2982 ImpDecl->addInstanceMethod(ObjCMethod); in ActOnMethodDeclaration()
2985 ImpDecl->addClassMethod(ObjCMethod); in ActOnMethodDeclaration()
2990 IMD = IDecl->lookupMethod(ObjCMethod->getSelector(), in ActOnMethodDeclaration()
2991 ObjCMethod->isInstanceMethod()); in ActOnMethodDeclaration()
2992 if (ObjCMethod->hasAttrs() && in ActOnMethodDeclaration()
2993 containsInvalidMethodImplAttribute(IMD, ObjCMethod->getAttrs())) { in ActOnMethodDeclaration()
2998 << ObjCMethod->getDeclName(); in ActOnMethodDeclaration()
3002 cast<DeclContext>(ClassDecl)->addDecl(ObjCMethod); in ActOnMethodDeclaration()
3007 Diag(ObjCMethod->getLocation(), diag::err_duplicate_method_decl) in ActOnMethodDeclaration()
3008 << ObjCMethod->getDeclName(); in ActOnMethodDeclaration()
3027 = CheckRelatedResultTypeCompatibility(*this, ObjCMethod, CurrentClass); in ActOnMethodDeclaration()
3029 CheckObjCMethodOverrides(ObjCMethod, CurrentClass, RTC); in ActOnMethodDeclaration()
3033 ARCError = CheckARCMethodDecl(*this, ObjCMethod); in ActOnMethodDeclaration()
3037 !ObjCMethod->hasRelatedResultType() && in ActOnMethodDeclaration()
3040 switch (ObjCMethod->getMethodFamily()) { in ActOnMethodDeclaration()
3053 InferRelatedResultType = ObjCMethod->isClassMethod(); in ActOnMethodDeclaration()
3060 InferRelatedResultType = ObjCMethod->isInstanceMethod(); in ActOnMethodDeclaration()
3065 ObjCMethod->SetRelatedResultType(); in ActOnMethodDeclaration()
3068 ActOnDocumentableDecl(ObjCMethod); in ActOnMethodDeclaration()
3070 return ObjCMethod; in ActOnMethodDeclaration()