"performSelector may cause a leak because its selector is unknown">,
InGroup<DiagGroup<"arc-performSelector-leaks">>;
def warn_dealloc_in_category : Warning<
-"decalloc is being overridden in category">,
+"-dealloc in a category is being overridden">,
InGroup<DeallocInCategory>;
def err_gc_weak_property_strong_type : Error<
"weak attribute declared on a __strong type property in GC mode">;
}
if (isa<ObjCCategoryImplDecl>(ImpDecl)) {
ObjCMethodFamily family = ObjCMethod->getMethodFamily();
- if (family == OMF_dealloc && IMD && IMD->isOverriding()) {
+ if (family == OMF_dealloc && IMD && IMD->isOverriding())
Diag(ObjCMethod->getLocation(), diag::warn_dealloc_in_category)
<< ObjCMethod->getDeclName();
- Diag(ImpDecl->getLocation(), diag::note_declared_at);
- }
}
} else {
cast<DeclContext>(ClassDecl)->addDecl(ObjCMethod);
- (void)dealloc;
@end
-@implementation Subclass (CAT) // expected-note {{declared here}}
-- (void)dealloc { // expected-warning {{decalloc is being overridden in category}}
+@implementation Subclass (CAT)
+- (void)dealloc { // expected-warning {{-dealloc in a category is being overridden}}
}
@end