LLVM3.8 停止了旧 Windows 版本,取消 Autoconf,改进 Clang

阅读数:893 2016 年 3 月 18 日

话题:开源C++语言 & 开发

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 版本。

有关发布版本的完整修改清单,可以查看LLVMClang的发布记录。

查看英文原文:LLVM 3.8 Discontinues Old Windows Versions, Deprecates Autoconf, Improves Clang


感谢张龙对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者(已满),InfoQ 读者交流群(#2)InfoQ 好读者)。