Clang AST файлы могут использоваться вместо исходных файлов, поэтому работает следующий код:
// main.cpp
#include <iostream>
int main() {
std::cout << "Hello, world!" << std::endl;
return 0;
}
> clang++ -emit-ast main.cpp -o a.ast
> clang++ a.ast -o a.out
> ./a.out
Hello, world!
Отвечая на ваш вопрос:
> clang -emit-llvm -c aa.ast