LLVM团队宣布了 LLVM 的发布版本,其中包含了一些主要的弃用和新的C语言API头文件以及 Clang3.8 。
LLVM在3.8版本中减去了对Windows XP和Vista的支持,因此需要至少Windows7才能支持。并且,它取消了3.9版本中会被移除的autoconf编译系统,并且使 CMake 成为托管的编译系统。
LLVM3.8还介绍了一个新的C语言API头文件的组织,目的是提升编译时间。这次重新组织影响了Type.h和ErrorHandling.h文件,它们现在分别包含了所有类型的特定声明和错误处理程序。既然这两个文件都是在Core.h中引用的,这个C语言API的改变应该不影响大部分依赖关系,但是过渡的依赖关系可能会被影响到。LLVM3.8还包含了一些为了MIPS、ARM、PowerPC和X86目标平台特定的改变。
Clang的C/C++/Objective-C前端Clang3.8,包含在了LLVM3.8中。它既给Clang整体带来了普遍提升,也给它的底层基础设施和特定语言带来了提升。这其中包含诊断学提升、为调试DWARF的新编译标记和更好的对齐实行。从语言的角度来说,新的特性被引进了C语言、Open CL和OpenMP,它们现在都被默认支持。而且,Clang的静态分析器在C++ lambdas、许多Objective C中vfork错用和__nonnull限定符错用的新检查,以及其他领域中,也有所提升。
值得注意的是,LLVM支持的其他受欢迎的语言,例如 Swift 、Emscripten和 Rust ,在它们向分支推送例行的修复和提升的同时,也更新了它们自己的LLVM的forked版本。
有关发布版本的完整修改清单,可以查看 LLVM 和 Clang 的发布记录。
查看英文原文: LLVM 3.8 Discontinues Old Windows Versions, Deprecates Autoconf, Improves Clang
感谢张龙对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群 (已满),InfoQ读者交流群(#2) )。