clang-static-analyzer相关内容
我以前在命令行中使用过 Clang 静态分析器.我想通过 Build & 尝试 Xcode 的内置版本分析.即使我专门为我的代码准备了 Clang 总是能够指出的非常明显的问题,我也从未得到任何负面结果: //过度释放一个对象:【标签发布】;【标签发布】;//未初始化的变量,分配但不释放对象NSString* 字符串;整数;CCLabel* newLabel = [[CCLabel alloc]
..
我在 NSDictionary 类别中有以下方法来进行深度复制,效果很好. 我刚刚从 Xcode 4.1 升级到 4.2,分析函数针对这段代码给出了两个分析器警告,如下所示: - (id)deepCopy;{id dict = [[NSMutableDictionary alloc] init];身份证复印件;for (id key in self){id object = [self o
..
我正在尝试使用 Sourcetrail (https://www.sourcetrail.com/) 来快速进入 pic18 系列微控制器的一些旧的嵌入式 c/c++ 源代码. 我在导入硬件包含文件时遇到错误,该文件使用一种奇特的方法来定义位可寻址硬件寄存器的硬件地址,例如 pic18f26k22.h 中的以下内容. typedef union {结构{无符号 ANSA0 :1;无符号 A
..
我使用 Xcode 3.2.4 并设置了 Clang 静态分析器功能以使用二进制文件的较新版本,详情如下:http://clang-analyzer.llvm.org/xcode.html (基本上使用 set-xcode-analyzer 命令行实用程序来更改 Xcode 用于构建和分析的静态分析器副本.) 我不知道如何设置该二进制文件以使用其他检查,例如通过 Xcode 使用二进制
..
我启用了静态分析器,但它告诉我在执行路径的末尾该对象没有被释放,因此可能导致内存泄漏.然而,我将对创建的对象的引用传递给另一个将释放它的类.想知道有没有方法或者关键字告诉编译后我会释放这个对象. 我正在寻找类似自动发布的东西. 顺便说一下,我正在使用 ARC. 我像这样创建对象: CGMutablePathRef pathRef = CGPathCreateMutable();
..
我已经在计算机(ubuntu)中安装了Clang,以便在我的C代码中查找内存泄漏.我编写了一个示例代码来检查其工作情况,如下所示: /*文件:hello.c用于泄漏检测*/#include#include无效* x;int main(){x = malloc(2);x = 0;//内存泄漏返回0;} 我在互联网上找到了一些可以像这样编译的选项 $
..
我正在尝试使用Sourcetrail( https://www.sourcetrail.com/)来迅速进入pic18系列微控制器的一些旧的嵌入式c/c ++源代码. 导入硬件包含文件时出现错误,该文件使用奇异的方法定义可位寻址的硬件寄存器的硬件地址,例如 pic18f26k22.h 中的以下内容. typedef union {结构{未签名的ANSA0:1;未签名的ANSA1:1;未签
..
我正在尝试使用 clang-tidy 与 cmake ,我想通过 -check 参数。我尝试在调用cmake时添加 -DCMAKE_CXX_CLANG_TIDY =“ / usr / local / opt / llvm38 / bin / clang-tidy-3.8; -checks = *” makefile命令最终看起来像这样: /usr/local/Cellar/cmake/3.6
..
我使用QtCreator作为IDE和CMake用C编写我的项目,以进行构建。 QtCreator版本> = 4.0.0包括我尝试使用的Clang静态分析器。 在我的CMakeLists.txt中设置: set(CMAKE_C_FLAGS“ -std = gnu99 $ {CMAKE_C_FLAGS}”) 当我在控制台获取错误: 错误:无效的参数'-std = gnu ++
..
我刚刚安装了 ClangOnWin ,我正尝试获取 clang -tidy 的“现代化”检查工作。不幸的是, clang-tidy 似乎并不了解它们: clang-tidy -list-checks foo.cpp-| grep modernize 不产生任何输出。 列出了“ modernize”检查此处,但是该页面似乎记录了Clang 3.8,而我安装的版本是3.7。但是,版本3.7是 L
..
tldr;>如何在clang-tidy中隐藏系统标题中的警告? 我有以下最小示例源文件,会在系统标题中触发叮叮当当的警告: #include int main(){ std :: promise ; p.set_value(3); } 在Ubuntu上使用clang-tidy 4.0.0在libstdc ++ 7.0.1
..
我有一个非常简单的C程序,使用strcpy可能导致缓冲区溢出: #include #include void buffer_overflow(char* dst, const char* src) { strcpy(dst, src); } int main(int argc, char** argv) { if(
..
我有一个模板类SafeInt(由Microsoft提供). 从理论上讲,此类可以用于代替POD整数类型,并且可以在算术运算期间检测任何整数溢出. 对于该类,我编写了一些自定义的模板化重载算术运算符(+,-,*,/)函数,其两个参数均为SafeInt的对象. 我将所有整数类型都定义为SafeInt类类型. 我想在我的代码库中搜索所述二进制运算符的实例,其中两个操作
..
在某些cpp文件上的android服务上运行clang时出现问题. 我正在通过从中调用对象实例来创建故意的内存泄漏 另一个类而不删除它,以查看clang是否创建了内存泄漏警告 是否,但在某些情况下,它不是在创建内存泄漏警告. 1-如果将类声明与要创建内存泄漏的类放在同一头文件中,则clang会按以下方式捕获内存泄漏: Example.h class Ad { publ
..
TL; DR; 如何从callExpr-> arg_0-> DeclRefExpr中获取用于恒定大小数组声明的宏名称. 详细的问题说明: 最近,我开始应对一项挑战,该挑战需要使用源到源转换工具进行修改 带有附加参数的特定函数调用.对我可以达到的方法的研究介绍了我 这个惊人的工具集Clang.我一直在学习如何使用libtooling中提供的不同工具来 实现我的目标.但是现在我遇到了
..
我想尝试一下clang静态分析器.我在Windows上,并使用Visual Studio构建了clang.它似乎可行,但同时似乎也毫无用处. 我制作了一个示例文件 示例.c int main(void) { int h = 0; return 1/h; } 呼叫scan-build gcc -c example.c没有发现错误. 示例.c int
..
我正在Ubuntu 12.10上运行Clang 3.4(来自 http://llvm.org/apt/ ).我对某些代码运行了分析器(clang --analyze),发现了两个问题: Blah.C:429:9: warning: Declared variable-length array (VLA) has zero size unsigned char separate
..
我继续在以下类型的代码上得到Clang错误,我不知道为什么他们错误或如何解决他们Clang的满意: +(NSString *)checkForLength:(NSString *)theString error:(NSError **)error { BOOL hasLength =([TheString length]> 0); if(hasLength)return theStr
..
我刚刚从Xcode 4.1升级到4.2,并且分析函数为此代码提供两个分析器警告,如下所示: - (id)deepCopy; { id dict = [[NSMutableDictionary alloc] init]; id copy; for(id key in self) { id object = [self objectForKey:key]; if
..
我在.m文件上生成目标C代码的AST 该命令大致类似于 clang-check -ast-dump /source/file.m& /output/file.txt 它有一个错误,说 尝试加载编译数据库时出错:无法自动检测文件'/source/file.m'的编译数据库 在/ source中找不到编译数据库或任何父目录 json-compilation-database:打
..