estoy recibiendo el siguiente índice de error de falta de límites:NSRangeException: Pila de llamadas no muestra número de línea
*** Terminating app due to uncaught exception 'NSRangeException', reason:
'*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array'
*** First throw call stack:
(0x2263052 0x24c7d0a 0x224fdb8 0x2f4a7 0x2264ec9 0x81e299 0x81e306 0x75aa30
0x75ac56 0x741384 0x734aa9 0x39a9fa9 0x22371c5 0x219c022 0x219a90a 0x2199db4
0x2199ccb 0x39a8879 0x39a893e 0x732a9b 0x1e5b 0x1dc5 0x1)
sé exactamente lo que significa el error, pero me parece que estos errores muy difíciles de solucionar porque por alguna razón la pila de llamadas no me dice la línea de código donde se llamaba la matriz. Aquí está la pila de llamadas a partir de hilos de 1:
#0 0x9706d9c6 in __pthread_kill()
#1 0x93e2cf78 in pthread_kill()
#2 0x93e1dbdd in abort()
#3 0x02859e78 in dyld_stub__Unwind_DeleteException()
#4 0x0285789e in default_terminate()()
#5 0x024c7f4b in _objc_terminate()
#6 0x028578de in safe_handler_caller(void (*)())()
#7 0x02857946 in __cxa_bad_typeid()
#8 0x02858b3e in __cxa_current_exception_type()
#9 0x024c7e49 in objc_exception_rethrow()
#10 0x02199e10 in CFRunLoopRunSpecific()
#11 0x02199ccb in CFRunLoopRunInMode()
#12 0x039a8879 in GSEventRunModal()
#13 0x039a893e in GSEventRun()
#14 0x00732a9b in UIApplicationMain()
#15 0x00001e5b in main
Como se puede ver esta pila de llamadas no es muy útil, ya que no muestra los métodos de mi código. Además, la pila de llamadas que se muestra en el error tiene 22 direcciones de memoria, mientras que la pila del subproceso 1 solo tiene 15, y las direcciones no coinciden en absoluto. Ningún otro subproceso parece contener información útil.
¿Cómo es posible ver el hilo de la "pila de llamadas de primer lanzamiento" del error (el que tiene 22 direcciones), para que pueda encontrar la línea que causa este error? Tal vez tengo algo configurado incorrectamente en mi configuración de compilación que está causando que la pila relevante no se pueda recuperar.
Si alguien pudiera orientarme en la dirección correcta sobre esto, estaría muy agradecido. Tratar de localizar la línea ofensiva manualmente es bastante tedioso.
Gracias!
Gracias Antwan, esto funciona a la perfección! Para cualquiera que intente hacer esto en Xcode 4, estos son los pasos que utilicé: 1. En la esquina inferior izquierda del navegador de puntos de interrupción (segunda pestaña de la derecha), haga clic en el botón Agregar ("+"). 2. Elija Agregar punto de interrupción de excepción. 3.Para "Excepción", seleccione "C++" 4. Junto a "nombrado" escriba "objc_exception_rethrow" 5. Haga clic en Listo. – llama591