reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
4615 ParmVarDecl* Param = CheckParameter(ObjCMethod, StartLoc, 4647 Param->setDeclContext(ObjCMethod); 4651 ObjCMethod->setMethodParams(Context, Params, SelectorLocs); 4652 ObjCMethod->setObjCDeclQualifier( 4655 ProcessDeclAttributeList(TUScope, ObjCMethod, AttrList); 4656 AddPragmaAttributes(TUScope, ObjCMethod); 4663 ImpDecl->addInstanceMethod(ObjCMethod); 4666 ImpDecl->addClassMethod(ObjCMethod); 4672 if (auto *IMD = IDecl->lookupMethod(ObjCMethod->getSelector(), 4673 ObjCMethod->isInstanceMethod())) { 4674 mergeInterfaceMethodToImpl(*this, ObjCMethod, IMD); 4678 ObjCMethod->getSelector().getMethodFamily() == OMF_dealloc) { 4679 Diag(ObjCMethod->getLocation(), diag::warn_dealloc_in_category) 4680 << ObjCMethod->getDeclName(); 4689 if (auto *IMD = P->lookupMethod(ObjCMethod->getSelector(), 4690 ObjCMethod->isInstanceMethod())) { 4691 assert(ObjCMethod->parameters().size() == 4695 auto NI = ObjCMethod->param_begin(); 4701 cast<DeclContext>(ClassDecl)->addDecl(ObjCMethod); 4706 Diag(ObjCMethod->getLocation(), diag::err_duplicate_method_decl) 4707 << ObjCMethod->getDeclName(); 4709 ObjCMethod->setInvalidDecl(); 4710 return ObjCMethod; 4728 = CheckRelatedResultTypeCompatibility(*this, ObjCMethod, CurrentClass); 4730 CheckObjCMethodOverrides(ObjCMethod, CurrentClass, RTC); 4734 ARCError = CheckARCMethodDecl(ObjCMethod); 4738 !ObjCMethod->hasRelatedResultType() && 4741 switch (ObjCMethod->getMethodFamily()) { 4755 InferRelatedResultType = ObjCMethod->isClassMethod(); 4762 InferRelatedResultType = ObjCMethod->isInstanceMethod(); 4767 !ObjCMethod->getReturnType()->isObjCIndependentClassType()) 4768 ObjCMethod->setRelatedResultType(); 4773 checkObjCMethodX86VectorTypes(*this, ObjCMethod); 4777 if (const auto *attr = ObjCMethod->getAttr<AvailabilityAttr>()) { 4778 if (ObjCMethod->isClassMethod() && 4779 ObjCMethod->getSelector().getAsString() == "load") { 4782 ObjCMethod->dropAttr<AvailabilityAttr>(); 4786 ActOnDocumentableDecl(ObjCMethod); 4788 return ObjCMethod;