У меня есть несколько методов, которые генерируются макросом. Я вижу код в компаньоне «preprocess», он компилируется и работает нормально. Я могу пройти через разборку, но это не весело. Также кажется, что аналогичная проблема существует для нескольких операторов, которые написаны на одной строке. Любые решения?Как отлаживать макросгенерированные методы в Xcode/LLDB?
3
A
ответ
1
Макросы трудно отлаживать, как вы переживаете.
Это потому, что они расширены до начала компиляции (препроцессором), поэтому к тому времени, когда clang/gcc/icc/все видит ваш код, а затем генерирует для него информацию об отладке, включая строки строк, нет следа слева от макроса.
Проблема не связана с LLDB и в большей степени связана с характером модели компиляции C/C++/ObjC с препроцессором, а затем отдельным компилятором, где только последний способствует генерации информации об отладке и только предыдущей видит макросы.
Смежные вопросы
- 1. Как отлаживать базовые методы Ruby в Netbeans?
- 2. Как эффективно отлаживать методы прикованных аргументов функции?
- 3. Как отлаживать методы из справочных классов?
- 4. Быстро отлаживать вспомогательные методы в скрипте \ console
- 5. как отлаживать xslt в umbraco
- 6. Как отлаживать StackOverflowException в .NET
- 7. Как отлаживать модули узлов?
- 8. Как отлаживать Android inEclipse
- 9. Как отлаживать код JavaScript?
- 10. Как отлаживать печатный CSS?
- 11. Как отлаживать живой сервер?
- 12. как отлаживать в iOS5
- 13. Как отлаживать в meteor.js
- 14. Как отлаживать в Erlang?
- 15. Как отлаживать в Jcreator?
- 16. Как отлаживать в qStudio?
- 17. Как отлаживать в Pycharm
- 18. как отлаживать в C++
- 19. Как отлаживать в VI
- 20. Как отлаживать исключения
- 21. Как отлаживать подключаемый резольвер bower?
- 22. Можно ли также отлаживать методы библиотеки классов .NET?
- 23. Как отлаживать библиотеку JNI/C?
- 24. Как отлаживать проблемы макета Qt
- 25. Как отлаживать ошибки повреждения кучи?
- 26. Как отлаживать вопросы синхронизации в Javascript?
- 27. Как отлаживать хроны - CodeIgniter 3
- 28. Как отлаживать move_uploaded_file() в PHP
- 29. Как отлаживать в режиме выпуска
- 30. Как отлаживать Protocol.dataReceived в Twisted
Я это понимаю, но у Xcode есть вкладка сопутствующего кода для кода препроцессора-вывода. Я ожидаю, что вы сможете отлаживать * это *, по крайней мере. –
В принципе, правило состоит в том, что вы сможете отлаживать любой исходный код, который компилятор видит и испускает информацию об отладке. В присутствии макросов я ожидал бы, что строки таблицы не могут точно соответствовать вашему исходному коду, esp с многострочными макросами. Я не уверен, что представляет собой пользовательский интерфейс с предварительным кодом вывода. Если вы чувствуете, что Xcode может сделать лучше, вы можете обязательно подать такой запрос на bugreport.apple.com –
Я предполагаю, что я это сделаю. Следующий вопрос: может ли LLDB отлаживать несколько операторов, которые живут в одной строке? Потому что это тоже то, что я не мог заставить Xcode делать. –