首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >clang的问题--分析

clang的问题--分析
EN

Stack Overflow用户
提问于 2017-10-17 23:34:08
回答 1查看 271关注 0票数 1

日安。

我正在尝试使用clang --analyze运行静态分析。我的Makefile中的CFLAGS非常长。

代码语言:javascript
运行
复制
CFLAGS= -I$(RESOURCES)  -I$(IMPORTED_HEADERS) -I$(EXPORTED_HEADERS)  -isystem$(ATL_MFC_INCLUDE) -isystem$(SDK7INCLUDE) -isystem$(VCINCLUDE) -ferror-limit=0 -std=c++14 -fsyntax-only -Wmicrosoft -fms-extensions -fms-compatibility -Wno-microsoft-extra-qualification -Wno-non-pod-varargs -Wno-microsoft-cast -Wno-invalid-token-paste -Wno-inconsistent-dllimport -D_ATL_NO_HOSTING -DUNICODE -D_UNICODE -DWIN32 -D_DEBUG -DDEBUG

无论我在哪里尝试--分析,在开始或结束时,我都会得到这样的警告:

代码语言:javascript
运行
复制
clang.exe: warning: argument unused during compilation: '--analyze' [-Wunused-command-line-argument]

然而,当编译一个简单的cpp文件时,静态分析就开始起作用了。例如:

代码语言:javascript
运行
复制
#include <string.h>

int main(int, char**)
{
    strcpy(NULL, "Hello");
    return 0;   
}

它是一种带有clang的bug吗?还是我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2017-10-19 01:37:15

这可能是因为您的命令行中有-fsyntax-only

-fsyntax-only指示编译器检查代码中的语法错误,然后退出,而不进行编译。

通过删除该标志,--analyze应该会发挥作用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46793908

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档