我希望利用Clang的AST来进行C代码分析。 对于如何开始、获取Clang的AST、教程或任何相关内容的指针,会非常有帮助!!!
我一直在尝试寻找这方面的教程,我找到了这个链接(link),但由于某些原因,它对我不起作用。 教程中的示例代码给我太多的错误信息。 因此,我不确定是否正确构建了代码或者教程有问题。 但我也很乐意从其他页面开始学习。
我希望利用Clang的AST来进行C代码分析。 对于如何开始、获取Clang的AST、教程或任何相关内容的指针,会非常有帮助!!!
我一直在尝试寻找这方面的教程,我找到了这个链接(link),但由于某些原因,它对我不起作用。 教程中的示例代码给我太多的错误信息。 因此,我不确定是否正确构建了代码或者教程有问题。 但我也很乐意从其他页面开始学习。
首先看一下sharth提供的教程链接,然后仔细阅读Clang的Doxygen文档。从SemaConsumer开始。
多阅读源代码。Clang是一个不断发展的目标。如果您正在基于Clang编写工具,那么您需要认识到Clang每天都在添加和修复功能,所以您应该准备阅读大量的代码!
我认为ASTUnit::LoadFromCompilerInvocation()函数是构建AST最简单的方法。
这个链接可能会给你一些想法http://comments.gmane.org/gmane.comp.compilers.clang.devel/12471