Rust 1.34.0 發布

2021-01-07 開源中國

Rust 1.34.0 發布了,更新內容如下:

Language 現在可以使用 #[deprecated = "reason"] 作為 #[deprecated(note = "reason")] 的簡寫。 現在可以在 #[attr()]、#[attr[]] 和 #[attr{}] 過程宏中接收 token 流。 現在可以用 extern crate self as foo; 引入 crate 根到外部 prelude。Compiler 現在可以編譯成 riscv64imac-unknown-none-elf 與 riscv64gc-unknown-none-elf。 現在可以使用 -C linker-plugin-lto 啟用連結器插件LTO優化,這允許 rustc 將 Rust 代碼編譯為 LLVM bitcode,從而允許 LLVM 跨 C/C++ FFI 邊界執行 LTO 優化。 可以編譯成 powerpc64-unknown-freebsd。Libraries 在 HashMap <K, V, S> 和 HashSet <T, S> 的一些基本方法中刪除了 trait bound,直觀體現是不再需要 Hash trait 來創建迭代器。 在 BinaryHeap <T> 的一些基本方法中刪除了 Ord trait bound。 overflowing_neg 和 wrapping_neg 方法現在是所有數字類型的 const 函數。 索引 str 現在通用於實現SliceIndex <str> 的所有類型。 str::trim、str::trim_matches、str::trim_ {start, end} 和 str::trim_ {start, end} _matches 現在是 #[must_use],如果它們的返回類型未使用,將產生警告。 check_pow、saturating_pow、wrapping_pow 和 overflowing_pow 方法可用於所有數字類型。

此外還有 API 與其它雜項的更新,詳細內容查看更新說明。

相關焦點