D 语言/DLang 2.096.0 发布,增强跨平台能力!
DMD 2.096.0 正式发布更新,DMD 是 D语言官方推出的编译器,此版本包含了 17 项主要变更,同时修复 81 个已知bug。相信过几天 LDC 也会跟进到本次大更新!这个版本有 54 个开发者进行参与,非常感谢他们为 DLang 的发展做出的贡献。 编译器变更 x86_64 Posix 平台下的 D ABI 有所更改 新增类型:__c_complex_float、__c_complex_double 和 __c_complex_real 不再支持构造函数复制和块复制(postblit) DMD 的 JSON 输出现在会包含保护级成员 DMD 的 JSON 输出现在会区分处理模块的构造方法和析构方法(包含有无shared的情形) 局部模板不再支持接收通过别名(alias)传入的局部符号 增强了 C++ 头文件的生成功能 新增编译器开关:-gdwarf=<version> 新增 __traits(getVisibility, Sym) 来替代 getProtection 无参的 synchronized 语句现在会使用运行时分配的互斥量 允许使用更短形式的函数实现(单一表达式函数) 运行时变更 移除了 druntime 里的参数选项 callStructDtorsDuringGC 在 mount 模块里,移除了与 FreeBSD 相关的 statvfs 声明 新增体验功能:基于 backtrace 输出的 llvm-libunwind 库变更 弃用 std.math 模块里的 approxEqual 方法 Dub变更 支持更多 DMD 的连接器参数 VisualD 的工程里允许使用 copyFiles 更多参考 DMD 2.096.0 – Changelog