Rust 团队发布了 Rust 的新补丁版本 1.99.1。Rust 是一门编程语言,它赋能每个人构建可靠且高效的软件。
如果你已通过 rustup 安装了旧版本的 Rust,获取 Rust 1.99.1 非常简单:
rustup update stable
如果你还没有安装,可以从我们网站上的相应页面获取 rustup。
Rust 1.99.1 修复了此前版本中的以下回归问题:
缺失符号 wcslen:部分 Rust 目标平台因缺少 wcslen 而出现链接错误,现在该函数已作为回退方案存在于 Rust 的 compiler-builtins 库中。LLVM 的 loop-idiom-wcslen 优化遍可能会引入对 wcslen 的调用作为优化,而部分 Rust 目标平台的 libc 或其他位置并未直接提供该函数。尤其是 UEFI 目标平台,任何使用 std 的项目都会因此损坏,因为其中一些调用被引入到了预编译的标准库中,但该问题在类似的用户代码模式中也可复现。
x86_64 上 FFI bool 返回值的错误编译:通过 FFI 返回 bool 的 Rust 函数可能会使返回寄存器的第 1-7 位处于未指定状态,导致调用方观察到除 0 或 1 之外的原始值。现在该返回类型再次被标记为需要零扩展,符合 ABI 的要求。
rust-lld 在 macOS 上加载 libLLVM 失败:如果在未使用 rustup 代理的情况下调用编译器,该链接器可能无法运行,因为没有为相应的库搜索路径提供直接设置。现在 rust-lld 在构建时加入了指向包含 libLLVM.dylib 目录的 rpath 条目。
如果你想通过测试未来版本来帮助我们,可以考虑在本地和 CI 中使用 beta(rustup default beta)和 nightly(rustup default nightly)通道。请报告你遇到的任何 bug!
许多人共同努力创造了 Rust 1.99.1。没有你们所有人,我们无法做到。谢谢!
转载声明:本文为转载整理,原文版权归原作者及原站点所有。
原文来源:Rust Blog
原文作者:The Rust Release Team;如有侵权,请联系管理员删除。