Могу ли я получить дамп XML AST кода C / C ++ с clang без использования компилятора?

Поместите это в свой ~/.zshrc:

autoload -Uz compinit
compinit

существует также проект с zsh функциями/конфигурациями для Mac OS X на http://code.google.com/p/zsh-templates-osx/ . Лично я думаю, что это - излишество для использования целого пакета. Но найденный этим полезный, чтобы избирательно подойти к выбору некоторых приемов, функций, завершения и т.д. и создать мой собственный .zshrc

23
задан durron597 20 July 2015 в 17:07
поделиться

2 ответа

Для вашей информации, принтер XML был удален из версии 2.9 Дугласом Грегором (ответственным за CLang FrontEnd).

Проблема заключалась в том, что отсутствовал принтер XML. Ряд узлов AST никогда не был реализован в принтере, а также ряд свойств некоторых узлов, что приводило к неточному представлению исходного кода.

Еще один момент, поднятый Дугласом, заключался в том, что выходные данные должны быть пригодны не для отладки самого CLang (о чем говорит -emit-ast), а для потребления внешними инструментами. Это требует стабильности вывода от одной версии к другой. Примечательно, что это не должно быть внутреннее отображение CLang 1-на-1, а скорее перевод исходного кода на стандартный язык.

Если над принтером не проделана значительная работа (требуются добровольцы), он не будет интегрирован обратно ...

20
ответ дан 29 November 2019 в 02:50
поделиться

Использование пользовательского ASTDumper сделало бы эту работу без компиляции какого-либо исходного файла. (остановите лязг в передней части). но вы должны иметь дело со всеми источниками кода на C и C ++ для llvm, чтобы сделать это.

1
ответ дан 29 November 2019 в 02:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: