Dealloc no se llama en la aplicación ARC

Tengo un UIViewController que se inserta en un controlador de contenedor y luego se saca, y usando el instrumento de asignación, puedo ver que el controlador de vista se destruye después. Sin embargo, nunca se alcanza un punto de interrupción en el dealloc del controlador. ¿Alguien sabe por qué no se llama a Dealloc? ¿Es posible que ARC destruya un objeto sin llamar a dealloc?

Además, he desactivado NSZombies (algunos han dicho que puede hacer que Dealloc no se active).

Editar

Dealloc no hace mucho, solo imprime en la consola y nunca se llama:

- (void)dealloc { NSLog(@"Deallocating..."); }

No puedo publicar el controlador del contenedor, es propietario y demasiado complicado. Dealloc se llama constantemente en algunos controladores y no en otros. Si puedo encontrar el tiempo, intentaré publicar una versión simplificada que reproduzca el problema.

¿Hay alguna forma de verificar que NSZombies esté deshabilitado?

Edit2

Estoy publicando una captura de pantalla de instrumentos; me parece que está correctamente desasignado.

Respuestas a la pregunta(14)

Su respuesta a la pregunta