Linux 铿锵分析器内存泄漏

Linux 铿锵分析器内存泄漏,linux,clang,static-analysis,Linux,Clang,Static Analysis,为什么clang/clang analyzer没有捕捉到我忘记释放a而导致内存泄漏?很明显。我查看了手册页,不确定需要哪些标志 $ scan-build clang++ -std=c++11 a.cpp scan-build: Using '/usr/bin/clang' for static analysis scan-build: Removing directory '/tmp/scan-build-2013-10-02-2' because it contains no reports.

为什么clang/clang analyzer没有捕捉到我忘记释放
a
而导致内存泄漏?很明显。我查看了手册页,不确定需要哪些标志

$ scan-build clang++ -std=c++11 a.cpp
scan-build: Using '/usr/bin/clang' for static analysis
scan-build: Removing directory '/tmp/scan-build-2013-10-02-2' because it contains no reports.
$ cat ./a.cpp

#include <iostream>

int main() {
        int *a = new int;
        *a = 8;
        std::cout<< a << std::endl;
}
$scan build clang++-std=c++11 a.cpp
扫描构建:使用“/usr/bin/clang”进行静态分析
扫描生成:正在删除目录“/tmp/scan-build-2013-10-02-2”,因为它不包含任何报告。
$cat./a.cpp
#包括
int main(){
int*a=新的int;
*a=8;

静态检测内存泄漏是一个无法解决的问题(相当于。您忘记了
-Wall
参数
clang++
@BasileStarynkevitch:根据另一位用户的说法,如果我使用malloc而不是new,分析器会自动获取它。顺便说一句,我的意思是静态可靠地检测所有内存泄漏(这是无法解决的)。