ARC relies on naming conventions to work correctly. However...
If you used ObjC objects, then it will usually "work" if you only have ARC code. For example, if you have a method like:
- (id)something { return [[Something alloc] init]; }
This is incorrect (in code other than ARC), but ARC will balance it by adding an extra autorelease . In fact, the above is the correct ARC code, so this is normal.
My suggestion, if this is almost all of ObjC code, is to automatically convert to ARC and then run a static analyzer. The problem can be much less than what you fear if it is a fairly simple code that just has bad names.
If this is a very shortened Core Foundation code, things are a little more complicated. Then I would recommend that you first run the static analyzer and get the right to naming right before converting. Fortunately, naming conventions are something that a static parser is very good at.
source share