Cod*_*key 7 c static-analysis llvm clang clang-static-analyzer
我想尝试一下clang静态分析仪.我在Windows上并使用Visual Studio构建了clang.它似乎工作,但同时它似乎是非常无用的.
我做了一个示例文件
example.c
int main(void)
{
int h = 0;
return 1/h;
}
Run Code Online (Sandbox Code Playgroud)
调用scan-build gcc -c example.c没有发现错误.
example.c
int main(void)
{
int h;
return 1/h;
}
Run Code Online (Sandbox Code Playgroud)
调用scan-build gcc -c example.c没有发现错误.
example.c
int main(void)
{
return 1/0;
}
Run Code Online (Sandbox Code Playgroud)
调用scan-build gcc -c example.c没有发现错误.
如果找不到这些最基本的错误(并且可以通过clang本身找到它们),静态分析仪如何才能使用?
gcc如果重要的话,我是MinGW.我也试过替代,clang但没有发生任何事情.
我在这里做错了吗?
驱动程序scan-build在进行分析时会用“拦截”命令代替编译器,因此您需要确保使用“变量”作为编译器的名称。
例如,在 POSIX shell 中:scan-build sh -c '${CC} "$@"' cc main.c -o main.
PowerShell 可能有类似的语法,但我不确定,DOS 命令行将需要完全不同的东西。