Lines Matching full:overridden
117 /// Issue a warning if the parameter of the overridden method is non-escaping
142 const ObjCMethodDecl *Overridden) { in CheckObjCMethodOverride() argument
144 if (Overridden->hasRelatedResultType() && in CheckObjCMethodOverride()
147 // implies a related result type, and the original (overridden) method has in CheckObjCMethodOverride()
180 if (ObjCMethodFamily Family = Overridden->getMethodFamily()) in CheckObjCMethodOverride()
181 Diag(Overridden->getLocation(), in CheckObjCMethodOverride()
183 << /*overridden method*/ 0 in CheckObjCMethodOverride()
186 Diag(Overridden->getLocation(), in CheckObjCMethodOverride()
191 Overridden->hasAttr<NSReturnsRetainedAttr>())) { in CheckObjCMethodOverride()
197 Diag(Overridden->getLocation(), diag::note_previous_decl) << "method"; in CheckObjCMethodOverride()
200 Overridden->hasAttr<NSReturnsNotRetainedAttr>())) { in CheckObjCMethodOverride()
206 Diag(Overridden->getLocation(), diag::note_previous_decl) << "method"; in CheckObjCMethodOverride()
209 ObjCMethodDecl::param_const_iterator oi = Overridden->param_begin(), in CheckObjCMethodOverride()
210 oe = Overridden->param_end(); in CheckObjCMethodOverride()
2612 ObjCMethodDecl *Overridden, in CheckConflictingOverridingMethod() argument
2615 CheckMethodOverrideReturn(SemaRef, Method, Overridden, IsProtocolMethodDecl, in CheckConflictingOverridingMethod()
2619 IF = Overridden->param_begin(), EM = Method->param_end(), in CheckConflictingOverridingMethod()
2620 EF = Overridden->param_end(); in CheckConflictingOverridingMethod()
2622 CheckMethodOverrideParam(SemaRef, Method, Overridden, *IM, *IF, in CheckConflictingOverridingMethod()
2626 if (Method->isVariadic() != Overridden->isVariadic()) { in CheckConflictingOverridingMethod()
2629 Diag(Overridden->getLocation(), diag::note_previous_declaration); in CheckConflictingOverridingMethod()
4002 // they are overridden by an explicit method that is encountered in ActOnAtEnd()
4287 llvm::SmallSetVector<ObjCMethodDecl*, 4> Overridden; member in __anondc01098b0711::OverrideSearch
4326 typedef decltype(Overridden)::iterator iterator;
4327 iterator begin() const { return Overridden.begin(); } in begin()
4328 iterator end() const { return Overridden.end(); } in end()
4415 Overridden.insert(meth); in search()
4420 // would have overridden. in search()
4431 ObjCMethodDecl *overridden) { in CheckObjCMethodDirectOverrides() argument
4432 if (overridden->isDirectMethod()) { in CheckObjCMethodDirectOverrides()
4433 const auto *attr = overridden->getAttr<ObjCDirectAttr>(); in CheckObjCMethodDirectOverrides()
4439 << isa<ObjCProtocolDecl>(overridden->getDeclContext()); in CheckObjCMethodDirectOverrides()
4440 Diag(overridden->getLocation(), diag::note_previous_declaration); in CheckObjCMethodDirectOverrides()
4455 // Search for overridden methods and merge information down from them. in CheckObjCMethodOverrides()
4463 for (ObjCMethodDecl *overridden : overrides) { in CheckObjCMethodOverrides()
4465 if (isa<ObjCProtocolDecl>(overridden->getDeclContext()) || in CheckObjCMethodOverrides()
4466 !IsMethodInCurrentClass(overridden) || overridden->isOverriding()) { in CheckObjCMethodOverrides()
4467 CheckObjCMethodDirectOverrides(ObjCMethod, overridden); in CheckObjCMethodOverrides()
4470 // OverrideSearch will return as "overridden" the same method in the in CheckObjCMethodOverrides()
4487 !isa<ObjCCategoryImplDecl>(overridden->getDeclContext())) { in CheckObjCMethodOverrides()
4488 OverrideSearch overrides(SemaRef, overridden); in CheckObjCMethodOverrides()
4494 overridden->setOverriding(true); in CheckObjCMethodOverrides()
4504 // Propagate down the 'related result type' bit from overridden methods. in CheckObjCMethodOverrides()
4505 if (RTC != SemaObjC::RTC_Incompatible && overridden->hasRelatedResultType()) in CheckObjCMethodOverrides()
4509 SemaRef.mergeObjCMethodDecls(ObjCMethod, overridden); in CheckObjCMethodOverrides()
4511 if (ObjCMethod->isImplicit() && overridden->isImplicit()) in CheckObjCMethodOverrides()
4517 CheckConflictingOverridingMethod(ObjCMethod, overridden, in CheckObjCMethodOverrides()
4518 isa<ObjCProtocolDecl>(overridden->getDeclContext())); in CheckObjCMethodOverrides()
4520 if (CurrentClass && overridden->getDeclContext() != CurrentClass && in CheckObjCMethodOverrides()
4521 isa<ObjCInterfaceDecl>(overridden->getDeclContext()) && in CheckObjCMethodOverrides()
4522 !overridden->isImplicit() /* not meant for properties */) { in CheckObjCMethodOverrides()
4525 ObjCMethodDecl::param_iterator PrevI = overridden->param_begin(), in CheckObjCMethodOverrides()
4526 PrevE = overridden->param_end(); in CheckObjCMethodOverrides()
4528 assert(PrevI != overridden->param_end() && "Param mismatch"); in CheckObjCMethodOverrides()
4536 Diag(overridden->getLocation(), diag::note_previous_declaration); in CheckObjCMethodOverrides()
4868 // made visible yet, so it can be overridden by a later in ActOnMethodDeclaration()