Lines Matching defs:Overridden
113 const ObjCMethodDecl *Overridden) {
114 if (Overridden->hasRelatedResultType() &&
117 // implies a related result type, and the original (overridden) method has
153 if (ObjCMethodFamily Family = Overridden->getMethodFamily())
154 Diag(Overridden->getLocation(),
156 << /*overridden method*/ 0
159 Diag(Overridden->getLocation(),
164 Overridden->hasAttr<NSReturnsRetainedAttr>())) {
167 Diag(Overridden->getLocation(), diag::note_previous_decl)
171 Overridden->hasAttr<NSReturnsNotRetainedAttr>())) {
174 Diag(Overridden->getLocation(), diag::note_previous_decl)
177 ObjCMethodDecl::param_const_iterator oi = Overridden->param_begin(),
178 oe = Overridden->param_end();
1580 ObjCMethodDecl *Overridden,
1583 CheckMethodOverrideReturn(*this, Method, Overridden,
1588 IF = Overridden->param_begin(), EM = Method->param_end(),
1589 EF = Overridden->param_end();
1591 CheckMethodOverrideParam(*this, Method, Overridden, *IM, *IF,
1595 if (Method->isVariadic() != Overridden->isVariadic()) {
1598 Diag(Overridden->getLocation(), diag::note_previous_declaration);
2801 llvm::SmallPtrSet<ObjCMethodDecl*, 4> Overridden;
2839 iterator begin() const { return Overridden.begin(); }
2840 iterator end() const { return Overridden.end(); }
2929 Overridden.insert(meth);
2934 // would have overridden.
2947 // Search for overridden methods and merge information down from them.
2957 ObjCMethodDecl *overridden = *i;
2960 if (isa<ObjCProtocolDecl>(overridden->getDeclContext()) ||
2961 CurrentClass != overridden->getClassInterface() ||
2962 overridden->isOverriding()) {
2966 // OverrideSearch will return as "overridden" the same method in the
2983 !isa<ObjCCategoryImplDecl>(overridden->getDeclContext())) {
2984 OverrideSearch overrides(*this, overridden);
2991 overridden->setOverriding(true);
3001 // Propagate down the 'related result type' bit from overridden methods.
3002 if (RTC != Sema::RTC_Incompatible && overridden->hasRelatedResultType())
3006 mergeObjCMethodDecls(ObjCMethod, overridden);
3008 if (ObjCMethod->isImplicit() && overridden->isImplicit())
3014 CheckConflictingOverridingMethod(ObjCMethod, overridden,
3015 isa<ObjCProtocolDecl>(overridden->getDeclContext()));
3017 if (CurrentClass && overridden->getDeclContext() != CurrentClass &&
3018 isa<ObjCInterfaceDecl>(overridden->getDeclContext()) &&
3019 !overridden->isImplicit() /* not meant for properties */) {
3022 ObjCMethodDecl::param_iterator PrevI = overridden->param_begin(),
3023 PrevE = overridden->param_end();
3025 assert(PrevI != overridden->param_end() && "Param mismatch");
3033 Diag(overridden->getLocation(), diag::note_previous_declaration);