Подтвердить что ты не робот

Как посмотреть clang AST?

Я пытаюсь схватиться за Клэнга. Итак, я хотел бы просмотреть AST, созданный Clang после разбора данной программы. Можно ли сбросить AST в формате .dot или .viz? Есть ли там какой-нибудь инструмент?

4b9b3361

Ответ 1

Поддержка Clang, показывающая AST с Graphviz dotty - вы можете захватить временный файл .dot, сгенерированный (имя распечатывается), чтобы получить источник графика.

clang -cc1 -ast-view your_file.c

Вы также можете распечатать в командной строке:

clang -cc1 -ast-dump your_file.c

или

clang -cc1 -ast-print your_file.c

или в 3.3:

clang -cc1 -ast-dump-xml your_file.c

но этот был удален позже, как указал Лукас Кубанек в комментарии.

Ответ 3

Для просмотра AST

clang-check -ast-dump filename.c

Для просмотра определенных функций в программе

clang-check -ast-dump -ast-dump-filter=function_name filename.c

Ответ 4

Я использую следующее:

clang my_file.h -I. -Xclang -ast-dump -fsyntax-only -fno-color-diagnostics -Wno-visibility

ИМХО Это больше подходит для машинного анализа.