The following code should crash under "Manual reference count" since the objects inside the array are getting released twice. Why does it not crash?
NSMutableArray *array = [NSMutableArray array];
[array addObject:@"1"];
[array addObject:@"2"];
[array addObject:@"3"];
for (int i=array.count-1 ; i>= 0 ; i--)
{
id object = [array objectAtIndex:i];
[object release];
[array removeObject:object];
}