问题标签 [clang-static-analyzer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
320 浏览

iphone - 在没有 Clang 的情况下找出内存泄漏

我正在尝试查看是否可以在 Apple 的 TopSongs 应用程序中自己找到一些漏洞。有人可以帮我解决至少一个问题,以及如何识别泄漏报告中的内容以及我如何获得找到它们的想法吗?

即:我有一个这样的:

据我所知,方法 xmlNewParserCtxt 是问题所在,它没有释放对象,因此是 Malloc。负责的库告诉我这是有问题的 libxml2.2.dylib 库,我无法对其进行编辑。

我是否朝着正确的方向前进?如果是这样,那么一半的泄漏都在那个库中,而且我无法编辑它。

'

更新:

查看这个问题的答案。

0 投票
3 回答
1981 浏览

xcode - Clang Static Analyzer for xcode for dummy

有人可以帮我让 Clang 启动并运行吗?(我没有3.2)

我已经学习了许多教程(基本上这个页面上的每个链接都在 XCode 中使用 Clang 静态分析器),但我就是无法让它工作!

到目前为止,我唯一成功的就是下载 clang!Grrrr ....配音粉碎!

请记住,我以前从未编写过苹果脚本。

我的桌面上有叮当声

0 投票
2 回答
7361 浏览

objective-c - CLang 错误(目标 C):从不读取初始化期间存储的值

这就是我被教导在 Objective C 中编程的方式,但 CLang 错误检查器抱怨从未读取过初始值。但是 oFoo 是一个具有属性的对象。oFoo 本身没有单一值。属性值很重要。

我应该忽略这个吗?这值得修复吗?看到“初始值”在我的上下文中没有意义,解决方法是什么?

0 投票
3 回答
1521 浏览

xcode - Xcode 3.2:构建和分析从未发现任何问题

我以前在命令行中使用过 Clang 静态分析器。我想通过 Build & Analyze 尝试 Xcode 的内置版本。即使我专门为我的代码准备了 Clang 总是能够指出的非常明显的问题,我也从未得到任何负面结果:

结果总是一样的:一个绿色的复选框,没有问题。我读到 C++ 代码可能会导致问题。我正在使用包含 box2d 的 cocos2d 运行它。这可能是一个原因吗?有人用 cocos2d 引擎从 Build & Analyze 得到结果吗?还能是什么?

我也尝试启用静态分析器构建设置,然后构建,但结果是一样的。我重新启动了 Xcode,清理了所有目标并清空了 Xcode 缓存,但无济于事。


更新:我的问题可能是由于将 cocos2d 添加为对我的项目的跨项目引用引起的。单独分析 cocos2d 项目本身会显示一些分析器结果。

此外,我发现我从我的 RELEASE 构建配置中获得了分析器结果,而不是从 DEBUG 构建中获得。

0 投票
1 回答
450 浏览

objective-c - Xcode 的“构建和分析”将作为泄漏捕获的范围是否应该是有限的?

它不关心这个:

我认为检查是否有任何代码路径可以在不释放其返回值的情况下调用该函数会足够聪明(我通常不会这样编码,我只是在测试分析器)。

它将此报告为泄漏:

但不是这个:

这对我来说似乎特别弱。它只在本地范围内分析吗?如果该工具无法识别这样的事情,我怎么能期望它能够识别我可能犯的实际错误?

0 投票
5 回答
3719 浏览

objective-c - 如何解决此 clang 警告:“返回 +0 保留计数的对象返回给预期 +1(拥有)保留计数的调用者”?

我有一段 Objective-C 代码,如下所示:

代码从如下所示的初始化程序调用:

运行 clang 静态分析器时,我收到以下path变量警告:

在第 41 行分配并存储到“路径”中的对象的潜在泄漏

具有 +0 保留计数的对象返回给调用者,其中预期 +1(拥有)保留计数

我很困惑。我的理解是stringByAppendingPathComponent应该返回一个自动释放的字符串,所以它的净保留计数应该是 0。(显然我不想保留它。)

我尝试更改copyData:以返回以下内容,但并没有消除警告:

那么这个警告是怎么回事呢?

0 投票
1 回答
379 浏览

iphone - 在便捷方法和 NSClassFromString(...) alloc/release 中发现 LLVM/Clang 错误

我正在使用 LLVM/Clang 静态分析器分析 Objective-C iPhone 项目。我不断收到两个报告的错误,但我很确定代码是正确的。

1) 方便法。

2) [NSClassFromString(...) alloc] 返回retainCount + 1。我说的对吗?

这些是一些 Clang 问题还是我在这两种情况下都完全错了?

0 投票
2 回答
752 浏览

objective-c - XCode/Static Analyzer:抑制保留计数/泄漏警告

我有一个创建变量但不释放它的函数。它通过消息将此对象传递给另一个处理内存管理的函数。

我的问题是如何抑制 XCode 认为是过度保留变量的静态分析器警告?我以为我可以将 NS_RETURNS_RETAINED 用于创建它的函数,但这不起作用。我想知道这是否与变量通过消息传递的事实有关?

0 投票
1 回答
254 浏览

iphone - 不懂内存分析

我已将我的 XCode 升级到 3.2.3 版,以在我的 iphone 项目上支持 iOS4。使用我检查内存管理问题的静态分析器。

在我的一个例程中,我遇到了以下问题:在将事件添加到日历以向他提供状态后,我生成了用户警报。

这运行良好,但内存分析器不喜欢我定义警报的方式。我看不到编码问题,是吗?(我用“<<<<”表示内存分析器提示)

谢谢

0 投票
2 回答
2982 浏览

xcode - 使用外部 Xcode Clang 静态分析器二进制文件,并进行额外检查

我正在使用 Xcode 3.2.4 并设置了 Clang 静态分析器功能以使用较新的二进制版本,详情如下:http: //clang-analyzer.llvm.org/xcode.html

(基本上使用set-xcode-analyzer命令行实用程序来更改 Xcode 用于构建和分析的静态分析器副本。)

我想不通的是如何设置该二进制文件以使用额外的检查,例如通过 Xcode 使用二进制文件时的 -analyzer-check-objc-missing-dealloc,详见此处: http: //loufranco.com/blog/文件/scan-build-better-than-build-analyze.html和 scan-build --help。

通过 Xcode 使用时,如何将额外的选项传递给二进制文件?