Clang AST 解释
Clang AST Interpretation
我正在尝试解释您在下图中看到的部分 Clang AST。简而言之,我要做的是检查两个变量在不同的程序点是否相同。检查 AST 后,我注意到 AST 部分之间唯一的共同点是用蓝色圈出的部分。
谁能帮我看看这些十六进制数字在 AST 中对应的是什么?
我知道第一个块对应于变量声明,第二个块对应于表达式。 Stmt 和 Expr 类 上是否有可以调用的方法来获取这些十六进制数?
这些确实是原始指针值。
您很可能需要检查 DeclRefExpr
个节点及其引用的相应声明(即 getDecl
方法)。指向其声明的指针是您要查找的十六进制数。
祝您使用 Clang 愉快!
我正在尝试解释您在下图中看到的部分 Clang AST。简而言之,我要做的是检查两个变量在不同的程序点是否相同。检查 AST 后,我注意到 AST 部分之间唯一的共同点是用蓝色圈出的部分。
谁能帮我看看这些十六进制数字在 AST 中对应的是什么? 我知道第一个块对应于变量声明,第二个块对应于表达式。 Stmt 和 Expr 类 上是否有可以调用的方法来获取这些十六进制数?
这些确实是原始指针值。
您很可能需要检查 DeclRefExpr
个节点及其引用的相应声明(即 getDecl
方法)。指向其声明的指针是您要查找的十六进制数。
祝您使用 Clang 愉快!