У меня есть проект Xcode 4.3.2 iOS 5.1, который компилируется и работает отлично, когда моя конфигурация сборки использует GCC_OPTIMIZATION_LEVEL of None [-O0], но с ошибкой EXC_BAD_ACCESS при использовании любого другого уровня оптимизации с ошибкой EXC_BAD_ACCESS. Мой проект имеет GCC_VERSION, установленный для Apple LLVM 3.1 (по умолчанию). Это указывает на проблему с моим кодом?Xcode LLVM 3.1 и GCC_OPTIMIZATION_LEVEL
ответ
Чаще всего это указывает на проблему с вашим кодом. Как:
- Доступ к уже высвобождены памяти
- чтение или запись памяти вне границ выделенного массива
- с использованием не инициализированы переменные или члены класса
- и многие, многие другие ...
В редких случаях бывает так, что такая авария оказывается ошибкой компилятора. Но это редко. Чаще всего это проблема с вашим кодом.
Попробуйте определить код, который сбой, и попытайтесь увидеть, как переменные используются рядом с этим кодом. Проверьте, правильно ли используется/выделено/инициализировано/освобождено.
Да, в моем коде была проблема. Я сохранил блок в словаре для последующего использования (после уничтожения области, в которой он был создан), не копируя его в первую очередь. Оглядываясь назад, я удивлен, что он работал даже без оптимизаций. – Erik
- 1. Apple Error LLVM 3.1
- 2. Apple LLVM compiler 3.1 error
- 3. Apple LLVM compiler 3.1 error
- 4. XCode IOS Apple LLVM 3.1 - Eigen NEON breaks
- 5. Snow Leopard и XCode 3.1
- 6. OCUnit, NSLog и XCode 3.1
- 7. Ошибка Xcode LLVM 6.0
- 8. Xcode 3.1: где скачать?
- 9. Яблоко LLVM компилятор 3.1 ошибка, не могу построить мое приложение
- 10. Xcode 3.2.1 НКУ Clang и LLVM демистификация
- 11. Xcode 3.2.2 и LLVM версии 1.0.2 сбой
- 12. Проект Xcode между 3.2 и 3.1
- 13. Xcode LLVM выражения равнины C
- 14. Xcode 4.6 разработать iOS 3.1
- 15. Тестирование модулей в Xcode 3.1
- 16. Настройка gcov в Xcode 3.1
- 17. Почему действительные объекты отображаются как Nil, используя lldb? (Apple LLVM Compiler 3.1, Xcode 4.3.1)
- 18. Как интегрировать исходный скомпилированный LLVM с Xcode?
- 19. Установка библиотек LLVM вместе с Xcode
- 20. выборочная библиотека, связывающая Xcode 6/LLVM 6
- 21. Xcode 4.3: Clang LLVM 1.0 Ошибка
- 22. Сбой виртуальной таблицы C++ LLVM/XCode
- 23. Использование LLVM Clang 2.6 с Xcode 3.2
- 24. Xcode/LLVM раздел улова, не соответствующие производные типы
- 25. Новый компилятор языка, LLVM Backend и Xcode 7.x
- 26. Какие версии gcc, llvm и clang находятся в XCode 4?
- 27. Файл AppDelegate отсутствует в Xcode 3.1?
- 28. Clang 3.1 на xcode 4.2 (Snow Leopard)
- 29. clang ++ 3.1, но не `cxx_lambdas` на Lion Xcode 4.3.3
- 30. Статус поддержки Clang 3.1 и C++ 11
С помощью обеих символов оптимизации * и * можно скомпилировать символы, чтобы вы могли отлаживать программу и получать представление о том, где находится проблема. – trojanfoe
Проблема заключается в прямом разделе кода при доступе к (неатомическому, сильному) свойству, которому ранее присвоено значение в коде. Это похоже на то, что ARC не сохраняет свойство - но только при включении оптимизации. – Erik