clang表示C++

Yak*_*kov 2 c++ compiler-construction clang dwarf

我想知道clang使用哪些类来表示C++(而不是C)源信息

我需要内部表示,这在DWARF(http://en.wikipedia.org/wiki/DWARF)中很有用.例如,对于类型,相关信息可以是:此类型的字节大小,字节对齐这种类型等

我已经下载了LLVM + Clang.我查看了http://clang.llvm.org/docs/InternalsManual.html,但没有找到我的答案,所以有人指示我也许我错过了一些东西并告诉我在哪些课程中我必须开始寻找这些数据?

gru*_*zip 5

我认为您应该查看AST库,因为AST(抽象语法树)用于表示已解析的信息.如果您想通过示例学习,可能会对Clang Static Analyzer感兴趣,因为它解析C源并执行静态代码检查以查找错误.

  • 对于C和C++,此信息都在AST中.例如Clang :: Type有"Type :: isClassType",对于C++类是正确的.CXX是纯C++事物的前缀. (2认同)