[cfe-dev] Missing dealloc analysis
nikita at zhuk.fi
Wed Jul 2 22:35:43 PDT 2008
I noticed the addition of missing dealloc analysis in r53075. It's a
good idea to check that dealloc is implemented and that it always
calls [super dealloc], but there're couple of points I would like to
1. It should be disabled in GC environment, because dealloc methods
are not called under GC
2. In non-GC environment, the primary function of dealloc method is to
update retain counts of variables the object being dealloced is
pointing to. So that usually means that dealloc must be implemented
when an object has some ivars. Dealloc is not always required, and
there're lot of classes which don't need it (e.g. singleton classes).
Currently missing dealloc analysis requires every class to implement
dealloc and it's causing a lot of false positives.
I'm not completely sure if absence of ivars should be the only factor
which disables missing dealloc analysis, but at least in my case it
would suppress a lot of false positives.
More information about the cfe-dev