I'm using iPod Touch 2G as a developement device with Xcode 3.1.3. When I try to trace the execution on the device from a breakpoint in the debugger I get EXC_BAD_INSTRUCTION, EXC_BAD_ACCESS or some error with debugger not being able do disassemble something. The same thing will work properly on iPhone Simulator. Previously I've been able to trace the execution from a breakpoint on some other iPod Touch 2G and iPhone 3G devices.

If not interrupted with a breakpoint the app will work properly. Also before any "stepping" I can investigate variables currently on the stack and their values seem to be correct.

Is it possible that the device is somehow flawed or should I look into my project configuration more closely (and what should I look for)?

EDIT: After playing with project configuration I've found that debugger starts to act normally after disabling "Compile for Thumb" option. The question now is why is it so?


This post saved me hours. It should be all you need to dig deep enough to see just what the root issue is.

Good Luck!