Когда мое приложение выбрасывает исключение, оно печатает следующее в выводе отладчика:
First throw call stack:
(0x310f88bf 0x3829d1e5 0x31e76015 0x31e7640d 0x31e764c5 0x9e903 0x9edfb 0x32b15d55 0x32b20e8d 0x310cb2dd 0x3104e4dd 0x3104e3a5 0x33c7cfed 0x330c0743 0x3267 0x3220)
Программный стек:
.
Xcode 4.2 в Lion 10.7.2 (Xcode 4.1 не установлен)
Я склоняюсь к тому, что это ошибка Xcode, но может вы видите что-то очевидное, что я упустил?
Build Settings:
Debug
Strip Debug Symbols During Copy = NO
Strip Linked Product = NO
Уровень оптимизации = -O0 и-Os
Символы, скрытые по умолчанию = ДА и НЕТ
Компилятор = LLVM 3.0 и LLVM GCC 4.2
Схема:
Отладчик = GDB и LLDB
Очистка:
Clean
Очистить папку сборки
Удалить каталог производных данных (удалить из органайзера)
Устройства:
iOS 5 Simulator
iOS 5 iPhone 4
iOS 5 iPhone 3Gs
Случайные:
У меня изначально была эта проблема с установленными Xcode 4.1 и 4.2, поэтому я удалил оба и заново установил только 4.2
Пробовал с разными проектами с теми же результатами.
Когда я возился с точками останова, я увидел следующее в выводе отладчика перед исключением:
Catchpoint 36 (throw)Catchpoint 37 (catch)Pending breakpoint 2 - "__cxa_begin_catch" resolved
warning: Attempting to create USE_BLOCK_IN_FRAME variable with block that isn't in the frame.
warning: Attempting to create USE_BLOCK_IN_FRAME variable with block that isn't in the frame.
Catchpoint 36 (exception thrown).warning: Attempting to create USE_BLOCK_IN_FRAME variable with block that isn't in the frame.
warning: Attempting to create USE_BLOCK_IN_FRAME variable with block that isn't in the frame.