Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何识别clang中函数体中声明的变量_C++_Clang_Abstract Syntax Tree_Llvm Clang - Fatal编程技术网

C++ 如何识别clang中函数体中声明的变量

C++ 如何识别clang中函数体中声明的变量,c++,clang,abstract-syntax-tree,llvm-clang,C++,Clang,Abstract Syntax Tree,Llvm Clang,我已经用clang实现了一个AST Resursion访问者,我想区分变量声明。我想知道变量声明是否是全局的,或者变量声明是否包含函数体。两个人都能帮我完成任务。 有什么想法吗 谢谢。您可以在AST访问者中访问VarDecl,然后您可能需要使用诸如、、或VarDecl Api中的函数。函数hasLocalStorage()可以识别在本地作用域中声明的变量。另一方面,函数hasGlobalStorage()可以标识在全局范围上声明的变量。谢谢你的回答。这也是我的想法,但因为我自己从未使用过它们,所

我已经用clang实现了一个AST Resursion访问者,我想区分变量声明。我想知道变量声明是否是全局的,或者变量声明是否包含函数体。两个人都能帮我完成任务。 有什么想法吗


谢谢。

您可以在AST访问者中访问VarDecl,然后您可能需要使用诸如、、或VarDecl Api中的函数。

函数hasLocalStorage()可以识别在本地作用域中声明的变量。另一方面,函数hasGlobalStorage()可以标识在全局范围上声明的变量。谢谢你的回答。这也是我的想法,但因为我自己从未使用过它们,所以我也添加了其他可能的选项。欢迎光临。