问题标签 [clang]

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 投票
3 回答
1596 浏览

iphone - CLANG 给出错误,抱怨有缺陷的头文件 UILocalizedIndexedCollat​​ion.h

我在使用 CLANG 构建代码时遇到了这个错误:

我最终不得不从 UIKit.h 中排除 UILocalizedIndexedCollat​​ion.h 并且一切正常。知道是什么导致了这个问题吗?我无法想象 Apple 会发送有缺陷的头文件。

0 投票
2 回答
1290 浏览

iphone - 配置clang静态分析器的问题

我按照以下步骤安装和配置 clang 静态分析器。但是我仍然无法在项目目录中运行 scan-build 命令任何人都可以提供正确的教程来设置路径并运行 scan-build command.terminal 显示“scan-build command未找到”我遵循的步骤:

安装:导航到http://clang.llvm.org/StaticAnalysis.html下载链接的检查器 tarbell(它说 tar.bz2,但实际上是 tar.bz2.tar)。提取它并将其复制到您设备上的目录中。我选择了 ~/Developer/clang 打开终端并输入 sudo nano /etc/paths 进入你保存 clang 东西的目录。按“Ctrl + X”退出,按“Y”保存。

您现在已完成安装。退出并重新启动终端。

要使用它,首先确保在执行任何操作之前进入 Xcode 并“全部清除”。完成后,打开终端并导航到您要构建的应用程序的目录。输入以下命令。确保将 sdk 的名称替换为您当前要构建的名称。scan-build -k -V xcodebuild -configuration Debug -sdk iphonesimulator3.0

0 投票
7 回答
8973 浏览

c - 确定架构是 32 位还是 64 位的优雅且安全的方法

正如标题所说,是否有任何优雅且安全的方法来确定架构是 32 位还是 64 位。通过优雅,您可以想到精确、正确、简短、干净和聪明的方式。所谓安全,就是从标准、C89/C99、操作系统独立性的角度来考虑安全。

0 投票
5 回答
5523 浏览

xcode - Xcode 3.2 + LLVM = 调试时没有本地符号

我有一个使用 Xcode 3.2 在 10.6 上构建的 Mac OS X 10.5 项目。当我使用 GCC 4.2 进行调试构建并命中断点时,Xcode 调试器正常显示局部变量信息。如果我选择 LLVM GCC 4.2 或 Clang LLVM,当我遇到断点时,本地符号不可用,如果我尝试打印self或任何其他本地符号,GDB会在当前上下文中显示 No symbol 'self' 。在所有情况下,设置了生成调试信息选项。Debug 配置设置为10.5 SDK, Build active architecture only选项设置。当 GDB 启动时,我可以看到它被配置为 x86_64-apple-darwin。我一定遗漏了一些明显的东西。使用 LLVM 编译器时如何让 GDB 显示本地符号?$(NATIVE_ARCH)

0 投票
1 回答
441 浏览

iphone - 如何让这个 Apple Script for Clang Static Analyzer 与 Xcode 一起工作?

这是一个很多人说它很好的脚本:

http://allancraig.net/blog/?p=381

但我无法让它工作。我必须使用 Xcode 脚本编辑器执行哪些步骤才能运行该脚本?

我已将其粘贴到 Mac OSx 的脚本编辑器应用程序“Script Editor.app”中,并将其保存为clang.scpt

然后,我打开 Xcode 并打开脚本编辑器,使用以下设置创建了一个新脚本:

输入 = 选择 (??) 目录 = 选择 (??)

脚本代码:

一定要这样吗??我的脚本是我的应用程序目录,在一个名为“Clang 静态分析器”的子目录中。我刚刚在终端上删除了 clang.scpt 以获取路径。

输出 = 选择后插入 (??)

错误 = 与脚本输出合并 (??)

然后,当我执行该脚本时,会发生这种情况:

/var/folders/QD/QDPLhhOJyvoyecmZQk+++TI/-Tmp-/965ABD-3FF7-46A3-8131-AA9CD1553D26-92280-0401D25AC142AE31:第2行:/Applications/Clang Static Analyzer/clang.scpt:权限被拒绝

任何想法?

0 投票
1 回答
202 浏览

iphone - Clang 静态分析器无法启动。为什么?

收到此错误:

当我从 xcode 中执行此脚本时会发生这种情况:

一切正常,但在重新启动 xcode 后突然停止工作。Clang 仍然安装并且仍然在那个指定的路径。知道那条消息是什么意思吗?

0 投票
2 回答
317 浏览

objective-c - -forwardInvocation 适用于 Clang - LLVM 但不适用于 GCC

下面的代码实现了一个 NSProxy 子类,它将方法转发到一个 NSNumber 实例。

但是,当调用 [nsproxy floatValue] 时,我在 GCC 4.2 下得到 0.0。

在 LLVM-Clang 下,我得到正确答案 42.0。

知道发生了什么吗?

(顺便说一下,这是在垃圾收集下运行的)

0 投票
3 回答
1436 浏览

xcode - 使用 Clang 开始是否明智?

我刚开始使用 xcode 并学习 Objective-C 和 Cocoa,将 Xcode 3.2 中的编译器交换为 Clang 以增强错误检查和静态分析器是否会有所帮助。我只是好奇提供的额外内容是否会有所帮助,或者我的学习是否会更好地坚持默认设置?

非常感谢

加里

0 投票
4 回答
7149 浏览

objective-c - Clang:什么是“方法返回具有 +0 保留计数的 Objective-C 对象”试图告诉我?

在 XCode 3.2 和Nikita Zhuk 的分析工具中使用 clang 运行静态分析我经常遇到这对警告:

方法返回一个具有 +0 保留计数的 Objective-C 对象(非拥有引用)

调用者此时不拥有对象引用计数的不正确递减

可能引发此警告的代码示例:

我假设以这种方式创建的按钮是自动释放的,就像使用便利工厂方法创建的任何其他 NSObject 一样。所以我返回它,调用者可以决定是否保留它。那有什么问题?

我有义务在返回之前保留并自动释放对象吗?最重要的是,这个警告所警告的东西是否会成为可怕的发布相关崩溃的原因?

我现在意识到这似乎只发生在 UIButtons 上。是因为它是一个类集群吗?

编辑:下面的片段显示了clang发出这些警告的最小情况(警告以粗体显示)。buttonWithType:这两个警告都在创建对象(消息)的语句上标记。

1 方法返回一个具有 +0 保留计数的 Objective-C 对象(非拥有引用)

2 调用者此时不拥有对象的引用计数的错误递减

0 投票
1 回答
987 浏览

iphone - XCode:如果项目中使用了 C/C++-Code,则静态分析器不起作用

借助 XCode 3.2.1,Apple 提供了内置的 Clang 静态分析器。我正在开发一个使用一些 C 代码(一个.h.c文件)的 iPhone 项目。运行Build and Analyze时,Clang 拒绝工作。构建结果窗口只是显示Build Succeeded

任何想法如何让它使用 C/C++ 代码运行?

问候,诺伯特