Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/149.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
对于带有Clang和Codegen的MSVC 2015,我如何让-ast转储工作? 我安装了Visual C++ 2015的CLAN和CODEGEN。我制作了一个新的控制台应用程序,它打印出“Hello,world!”并将调试x86和发布x86中的平台工具集设置为:_C++_C_Visual Studio_Clang_Abstract Syntax Tree - Fatal编程技术网

对于带有Clang和Codegen的MSVC 2015,我如何让-ast转储工作? 我安装了Visual C++ 2015的CLAN和CODEGEN。我制作了一个新的控制台应用程序,它打印出“Hello,world!”并将调试x86和发布x86中的平台工具集设置为:

对于带有Clang和Codegen的MSVC 2015,我如何让-ast转储工作? 我安装了Visual C++ 2015的CLAN和CODEGEN。我制作了一个新的控制台应用程序,它打印出“Hello,world!”并将调试x86和发布x86中的平台工具集设置为:,c++,c,visual-studio,clang,abstract-syntax-tree,C++,C,Visual Studio,Clang,Abstract Syntax Tree,与Microsoft CodeGen(v140_Clang_3_7)的Clang 3.7 我关闭了预编译头,并在C/C++->命令行下,在Debug x86和Release x86中添加了一个新命令: -ast转储 然后,我在调试模式下构建程序。程序成功构建并给出预期结果;但是,clang.exe中有以下警告: 1> Source.cpp 1> clang.exe:警告:编译期间未使用参数:'-ast dump' 1> tester5.vcxproj->c:\users\erika\docume

与Microsoft CodeGen(v140_Clang_3_7)的Clang 3.7

我关闭了预编译头,并在C/C++->命令行下,在Debug x86和Release x86中添加了一个新命令:

-ast转储

然后,我在调试模式下构建程序。程序成功构建并给出预期结果;但是,clang.exe中有以下警告:

1> Source.cpp

1> clang.exe:警告:编译期间未使用参数:'-ast dump'

1> tester5.vcxproj->c:\users\erika\documents\visual studio 2015\Projects\tester5\Debug\tester5.exe


为什么在编译过程中参数-ast转储未被使用?如何从这里获取Clang以转储AST?

您需要使用
-Xclang-AST dump
(以及您喜欢的任何其他选项)

注意,可以转储AST的二进制Clang检查。谢谢!虽然垃圾堆很长,但还是成功了!该程序所做的只是包含并打印“Hello,world!”是的,
本身相当大。。。由于这是编译的源代码的一部分,clang将为它转储ast。。。除了“用printf替换它并使用
extern int printf(const char*fmt,…);