我最近在Windows上编译了Clang和LLVM。我的目标是使用它从C ++翻译成另一种语言,但我不确定最好的方法。例如,如果我使用-ast-print“pretty print”选项调用clang,看起来Clang可以从其内部AST中忠实地表示原始代码。我是否需要以某种方式模仿该代码,以便在我的新语言中得到漂亮的印刷品?或者我应该走AST树吗?谢谢你的帮助!
答案 0 :(得分:1)
首先解决方案是使用libclang
库将C / C ++源代码转换为您想要的任何内容。
第二 - 编写一个LLVM后端,它将LLVM IR转换为您的语言(如C后端)。这更灵活(IMO),但需要你的工作水平远低于C ++源。