7

In ARC I'm aware that you do not call [super dealloc] in any overrides of -dealloc, so typically I remove observers and timers in there without doing so. However, if I were to subclass a view that I made that releases observation info in -dealloc without calling [super dealloc] in the subclass' implementation of the method, would the super implementation be called automatically to release the observation info handled by the superclass, or would it leak?

1 Answer 1

24

The superclass' implementation of dealloc is automatically called (as far as I know, the compiler inserts the statement [super dealloc] for you).

External link to LLVM docs

Update

Here is the reference:

Custom dealloc methods in ARC do not require a call to [super dealloc] (it actually results in a compiler error). The chaining to super is automated and enforced by the compiler. Transitioning to ARC Release Notes

enter image description here

1
  • Yes, I confirm that. It first called child's dealloc and then parent dealloc. Commented Aug 19, 2014 at 7:26

Not the answer you're looking for? Browse other questions tagged or ask your own question.