问题标签 [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 投票
1 回答
7571 浏览

iphone - Xcode 3.2.1 GCC CLANG 和 LLVM 揭秘

本周新的 Xcode 3.2.1 中包含的自述文件如下:

  • 静态代码分析通过 Build 菜单下的 Build and Analyze 选项或自定义构建设置完全集成在 Xcode IDE 中
  • GCC 4.2 是 10.6 SDK 的默认系统编译器
  • 可选的 LLVM 编译器包含使用两个不同的前端 - Clang 编译器是一个领先的解析器,可提供显着改进的编译时间。为了获得最大的兼容性,GCC LLVM 编译器将 LLVM 后端与 GCC 4.2 解析器一起使用。
  • 新的可选 Clang-LLVM 1.0 编译器使用速度更快的 Clang 前端解析器与 LLVM 后端编译器相结合,以实现快速编译和快速可执行代码。许多项目将从这种编译器组合中受益,尽管 GCC 4.2 仍然是系统默认值。Clang-LLVM 1.0 编译器在遇到 C++ 代码时将回退到使用 LLVM-GCC 4.2。

我们公司现有的项目是用于桌面和 iphone 的纯 C、Objective-C 和 Objective-C++。有人可以概括一下 LLVM、GCC、CLANG、CLANG-LLVM、WordFoo 等之间的区别吗?人。并解释它们是什么以及我们应该何时使用它们以及用于什么目的?有更详细解释的链接会很好,但我真的只是在寻找高级概述。

0 投票
8 回答
41059 浏览

c - 如何通过#define 指令检测 LLVM 及其版本?

我认为这个问题很清楚。我正在尝试编写一个编译器检测标头,以便能够在应用程序中包含有关使用哪个编译器和哪个版本的信息。

这是我正在使用的代码的一部分:

可以这样使用:

有什么方法可以检测 LLVM 及其版本吗?还有叮当声?

0 投票
2 回答
3953 浏览

xcode - 将 LLVM Clang 2.6 与 Xcode 3.2 一起使用

所以,我刚刚下载了 LLVM Clang (2.6) 二进制文件。
Mac OS X 10.6 带有 Clang 1.0。

你知道如何将更高版本的 Clang 与 Xcode 3.2.x IDE 集成吗?


只是覆盖文件似乎有点冒险。

0 投票
4 回答
3890 浏览

visual-studio - -isystem 用于 MS Visual Studio C++ 编译器

我通常喜欢在编程时启用很多警告。但是,某些库包含容易引起警告的代码(..、python、Qt、..)。使用 gcc 编译时,我可以使用 -isystem 而不是 -I 来使其静音。如何使用 MS 编译器做同样的事情?我知道警告#pragma,但我想要一个不涉及编译器特定代码的解决方案。我也知道我可以关闭特定的警告,但这也不是我想要的。

顺便说一句:isystem 应该是这个问题的标签,但我不被允许这样做..

摘要:我想查看我的代码中的所有警告,并且没有来自外部代码的警告。

0 投票
1 回答
4512 浏览

visual-studio-2008 - Windows 上的 Clang 静态分析器

有人在 Windows 上成功运行 clang 静态分析器吗?

我已经成功构建了 llvm 和 clang(使用 VS 2008)。运行 scan-build 会导致以下错误:

一些研究表明,Windows 平台不支持getpwuid 。

0 投票
5 回答
21827 浏览

objective-c - 使用 respondsToSelector 时抑制“'...' is deprecated”

我通过在运行时选择最新的 API 来支持 10.4+:

在这种情况下,10.5 及更高版本将使用removeItemAtPath:error:,10.4 将使用removeFileAtPath:handler:. 太好了,但我仍然收到旧方法的编译器警告:

是否有if([… respondsToSelector:@selector(…)]){ … } else { … }提示编译器(Clang)不在该行发出警告的语法?

如果没有,有没有办法标记该行被忽略-Wdeprecated-declarations


在看到一些答案后,让我澄清一下,将编译器混淆为不知道我在做什么并不是一个有效的解决方案。

0 投票
3 回答
2269 浏览

xcode - 如何在 Xcode 中查看 llvm 中间表示

我在 Xcode 3.2.1 上使用 clang-llvm 1.0 进行编译

我想看看 LLVM 的中间表示。我该怎么做呢 ?

0 投票
1 回答
186 浏览

iphone - 为什么构建和分析命令没有发现明显的内存管理错误?

出于某种原因,我的 Xcode 中的 Clang 静态分析器不会抱怨任何事情。我在尝试它时犯了很大的内存管理错误(分配并且没有释放),但它永远不会找到它们并且不会抱怨它们。即使在清理所有目标并再次构建和分析之后。

我正在为 Simulator 3.1 构建

我必须专门设置吗?一个特殊的编译器设置?如何?

0 投票
2 回答
2532 浏览

parsing - llvm-clang:增量或在线解析器?

无论如何以增量/在线方式使用llvm-clang解析器?

假设我正在编写一个编辑器,并且我希望能够解析我面前的 C++ 代码。

我不想编写自己的破解解析器。

我想使用功能齐全的东西,比如 llvm-clang。

有没有一种简单的方法来劫持 llvm-clang 解析器?(并且它是否足够快以在后台连续运行它)?

谢谢!

0 投票
3 回答
3202 浏览

ubuntu - 对于使用块的 clang 程序,您需要链接哪些库

我发现(如下)在编译使用块的代码时需要使用 -fblocks。

我需要链接什么库才能让链接器解析_NSConcreteStackBlock?(在 Ubuntu 9.10 AMD64 上。)