@ [John Calsbeek]
Luego se queja de símbolos que faltan.
(gdb) p (NSUInteger)[(NSObject*)$esi retainCount]
No symbol table is loaded. Use the "file" command.
(gdb) p [(NSArray *)$esi count]
No symbol "NSArray" in current context.
Me trataron de cargar los símbolos de la Fundación:
(gdb) add-symbol-file /System/Library/Frameworks/Foundation.framework/Foundation
add symbol table from file "/System/Library/Frameworks/Foundation.framework/Foundation"? (y or n) y
Reading symbols from /System/Library/Frameworks/Foundation.framework/Foundation...done.
pero sigue sin suerte:
(gdb) p [(NSArray *)$esi count]
No symbol "NSArray" in current context.
De todos modos, no creo que la fundición es la solución a este problema, no debería tener que saber qué tipo de objeto es, para poder enviarle mensajes. Lo extraño es que he encontrado un NSCFArray no tengo problemas para enviar mensajes a:
(gdb) p $eax
$11 = 367589056
(gdb) po $eax
<NSCFArray 0x15e8f6c0>(
file://localhost/Users/ask/Documents/composing-fractals.pdf
)
(gdb) p (int)[$eax retainCount]
$12 = 1
así que supongo que había un problema con el objeto estaba investigando ... o algo así.
Gracias por su ayuda!
Nota: La etiqueta [inverso] no se debe usar para describir temas de ingeniería inversa; use [ingeniería inversa] en su lugar – user1354557