clang相关内容

如何建立与铛铛?

我媒体链接建立与MSVC和MinGW成功地铛(3.2)。但我认为这不是“纯粹的”铛。因此,能不能有人给我如何使用铛建立铛(在Windows / Linux)的某些指令或材料?而且我们可以使用铛自主承担(不depent海合会或MSVC)。谢谢大家! 解决方案 好吧得到像3.1的旧版本铛的。 (您可以pretty多安装自带pcompiled您的操作系统$ P $任何版本) 获取较新版本的来源 ..
发布时间:2016-08-21 19:58:32 C/C++开发

如何找出一个成员函数是const或volatile与libclang?

我有种 CXCursor 的实例 CXCursor_CXXMethod 。我想了解该功能是否适用常量或挥发性,例如: 类Foo { 上市: 空巴()const的; 无效巴兹()挥发; 无效qux()const的挥发; }; 我找不到任何libclang的文档中非常有用。我试图 clang_isConstQualifiedType 和 clang_isVolatileQ ..
发布时间:2016-08-21 19:51:28 C/C++开发

原子读取用C

根据是C ++读取和int原子的写入,由于处理器缓存的问题,读取的整数(正是如此三分球 - 还是让我承担)不是原子在C。所以,我的问题是有一些组件,我可以使用,使原子读,或者我需要用一个锁?我看了几套原子操作库,并作为然而,我无法找到一个原子的读取功能。 编辑:编译:锵2.9 编辑:平台:的x86(64位) 感谢。 解决方案 在一般情况下,一个简单的原子取不受原子操作库提供,因为它很少使 ..
发布时间:2016-08-19 16:25:46 C/C++

GCC -g VS -g3 GDB标志:有什么区别?

在编译的C源$ C ​​$ c。与海湾合作委员会要么铛或者,我总是用 -g 标记生成GDB调试信息。 的gcc -o -g的HelloWorld helloworld.c 我注意到,有些人建议 -g3 来代替。是什么 -g 和 -g3 标记之间的区别?也有之间的差异 -g 和 -ggdb ? 解决方案 从文档 -g 产生操作系统的本地格式(刺,COFF,XCOFF,或DWA ..
发布时间:2016-08-19 15:35:59 C/C++

锵VS GCC为我的Linux开发项目

我在大学,一个项目,我们正在使用C.我们已经探索GCC和锵,锵,并似乎是更方便用户比GCC友好。其结果是,我不知道有什么优点还是缺点是使用铛,而不是海湾合作委员会,在C和C ++在Linux上开发? 在我的情况下,这将用于学生层面的方案,而不是生产。 如果我用铛,我应该与调试GDB和使用GNU制作,或使用其他调试器和make实用程序? 解决方案 编辑: gcc的家伙还真改善GCC诊断 ..
发布时间:2016-08-19 15:33:34 服务器开发

包括在每一个源文件的头文件

假设你有源文件(.c和的.cpp)文件100年代,你想加入一些定义,函数/变量在他们每个人的声明。通常,在C / C ++,您可以使用头文件用于这一目的。但在这种情况下,你需要把#包括“header.h”在每一个源文件。 现在我的问题是,是否有办法包括不把的#include“header.h”在每一个文件的所有文件的一个头,因为这将是很烦人写的#include“header.h”源文件的100S ..
发布时间:2016-08-19 14:45:00 C/C++开发

花车是不精确

我百思不得其解。我也没有解释为什么本次测试使用双击数据类型时通过,但使用浮动数据类型时失败。考虑code的片断。 浮法总= 0.00;的for(int i = 0; I< 100;我++)总+ = 0.01; 照理总为1.00,但它是等于0.99。为什么会出现这样的情况?我用GCC和铿锵编译,编译器都具有相同的结果。 解决方案 在十进制0.01的值是pssed作为该系列的前$ P ..
发布时间:2016-08-19 14:31:01 C/C++

为什么锵警告:''和;&放大器;'内部'||'`?

我的理解是括号没有什么区别,因此没有任何理由认为锵提醒这是一个默认值(不是“改善”code-清晰度等)?我preFER不添加,因为我不喜欢加入code为code的缘故括号。 的src / websocket.c:420:43:警告:'和;&放大器;'内部'||' [-Wlogical-OP-括号] 如果(RV == 0安培;&安培; N = 0 || RV == -1放大器;!& ..
发布时间:2016-08-19 13:32:09 C/C++

是否有任何类型的C或C ++链接器检查?

我是说错交联剂作任何函数参数的检查。他们不检查函数调用的数量和种类也没有检查全局数据引用的类型。这是适用于所有的接头? 我使用锵在x86-64的目标Linux操作系统。是否连接检查引用是正确的段?或者是在效果只是一个空隙外部基准*至于接头而言 我现在是高级语言的背景C#和Scala的到来,因此这似乎是显而易见的,以那些沉浸在自己水平低的世界。我已经写了几个我在汇编功能(系统调用),我发现没有参 ..
发布时间:2016-08-19 00:18:41 C/C++开发

如何获得使用锵一个C / C ++程序的所有全局声明的列表?

我想编写一个程序,通过使用锵列出了所有的C或C ++程序的公开导出变量和函数。 我跟着本教程的一部分05,但它并不适用于当前的工作版本铛的。上面说,我得到了一些提示中的 CompilerInstance 可以使code短,但我不完全知道如何使用它。 您将如何实现这个功能?你能不能给我任何指针到正确的方向?例如:是否有全局声明变量的大哈希表或做我必须遍历AST ? 解决方案 的公开导出的 ..
发布时间:2016-08-19 00:08:30 C/C++开发

在我的LLVM IR code添加一个函数调用

您可以给我一个例子,如何添加功能的一个简单的通话 富(X); 在我的IR code。与我的LLVM通? 解决方案 一个简单的方法就是学会是使用 ELLCC 与输出选项的为 LLVM C ++ API code 两个重要注意事项: 确认富的定义可用;否则,你需要 首先定义它。通常情况下,你需要通过使用来获取原型 getOrInsertFunction ,然后用 IRBuilde ..
发布时间:2016-08-18 23:46:34 C/C++开发

铛连接问题

我刚刚尝试了最新的LLVM和铿锵主干版本。他们没有一个单一的警告编译开箱即用,但我在链接一个Hello World例子麻烦。我的code是 的#include<&stdio.h中GT; 诠释主(){ 的printf(“你好\\ n”); } 如果我编译使用铛test.c的 我收到以下错误的/ usr / bin中/ LD:crt1.o:没有这样的文件:没有这样的文件或目录 铿锵 ..
发布时间:2016-08-18 23:21:44 C/C++

通过不断的使用SSE Mutiplying矢量

我有四维向量操作一些code和我目前正试图将其转换为使用SSE。我使用这两个铛和gcc 64B上的Linux。结果 仅在矢量操作的所有细-grasped这一点。但现在来这里,我由一个常数乘以整个向量的一部分 - 事情是这样的: 浮法Y [4]; 浮A1 = 25.0 / 216.0;为(J = 0; J&下; 4; J ++){ Y [J] = A1 * X [J]。 } 要这样的 ..
发布时间:2016-08-18 23:11:04 C/C++

例如code触发锵的静态分析器

我想看到code,这将导致锵的静态分析器抱怨的一个小而完整的片段。我的动机主要是我想要得到它在我的PIC32 code工作,我需要一种方法之间的“所有code是精”,“它实际上没有做任何事情”来区别。这也部分好奇,因为我似乎无法拿出一个简单的例子,我自己。 C89 / ANSI C99或细,最好我想看看它拿起一个简单的内存泄漏。我的用法是 铛--analyze test.c的 解决方案 ..
发布时间:2016-08-18 22:40:06 C/C++

替代铿锵-pg?

我要分析CPU(样品如果可能的话),以尽可能小的性能产生影响(因此类似于GCC的 -pg ),铿锵编译的二进制文件。有没有使用code的仪器,或产生类似于gprof的输出选择? 解决方案 我收到的在锵邮件列表 >。总之,使用 ..
发布时间:2016-08-18 22:37:59 C/C++

返回void类型在C和C ++

这编译没有任何警告。 这是合法的C和C ++或者它只是在海湾合作委员会的工作,并铛? 如果它是合法的,是经过C99一些新的东西吗? 无效F(){}无效F2(){ 返回f()的; } 更新 为“拉德凌志”建议我尝试这样做: $ GCC -Wall -Wpedantic -c x.c x.c:在函数'F2': x.c:7:9:警告:ISO C不允许“回归​​”与前pression ..
发布时间:2016-08-18 22:15:37 C/C++开发

整合锵NetBeans中?

什么是参与在NetBeans中集成锵步骤?我想也是从NetBeans中看到锵错误和警告消息。这将主要用于在C开发。 解决方案 NetBeans的7.2已经支持本地锵 只需打开选项窗口,切换到C / C ++部分,并添加新的工具集合。类型:的/ usr / bin中在基本目录,并在组合框中选择“铛” 我一直在使用Clang的建立我的项目,和NetBeans适用于锵完美。 ..
发布时间:2016-08-18 22:12:58 C/C++开发

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

问题是很清楚,我认为。我试图写一个编译器检测头能够在应用程序的信息,包括在其上使用的编译器和哪个版本。 这是code,我使用的一部分: / * GNU C编译器检测* / #elif指令定义__GNUC__ #IFDEF __MINGW32__ #定义编译器“MinGW的GCC%d个,%d个%D” #其他 #定义编译器“GCC%d个,%d个%D ..
发布时间:2016-08-18 22:11:47 C/C++