隨著 Rust 語言的發(fā)展,經(jīng)常需要改進樣式指南,例如支持新的語言結(jié)構(gòu)(比如 let-chain / let-else 等新語法),像這樣的新結(jié)構(gòu)會被 rustfmt 忽略且不格式化,隨后需要添加格式化。并且 rustfmt 的向后兼容性也阻礙了 Rust 代碼風格的演變。
為了解決這兩個問題,RFC 3309重振了 Rust 風格的團隊,它有三個目標:
確定新 Rust 結(jié)構(gòu)的樣式
發(fā)展現(xiàn)有的 Rust 風格
定義機制以發(fā)展 Rust 風格,同時考慮向后兼容性
注意:風格團隊不打算做出任何“驚天動地”的風格改變。
Cranelift 已經(jīng) merge 了 RISCV 后端
Pre-RFC: unsafe attributes
RalfJ 提出一個 Pre-RFC ,提議為一些可能導致未定義行為的屬性加上 unsafe,比如
rust // SAFETY: there is no other global function of this name #[unsafe(no_mangle)] pub fn my_own_write(...) { ... }
之前有個issue 提出 #[no_mangle] 也是 Unsafe 的,在某些平臺上(至少是 GNU/Linux,但也聽說過 Windows 和其他幾個平臺),將兩個靜態(tài)庫鏈接在一起,而這兩個庫都導出了一個同名的符號,那么哪個符號實際上被鏈接了,這是無法定義的。
審核編輯:劉清
-
GNU
+關(guān)注
關(guān)注
0文章
143瀏覽量
17445 -
RFC
+關(guān)注
關(guān)注
0文章
16瀏覽量
10090 -
rust語言
+關(guān)注
關(guān)注
0文章
57瀏覽量
3001
原文標題:【Rust 日報】2022-09-30 Cranelift 已經(jīng) merge 了 RISCV 后端
文章出處:【微信號:Rust語言中文社區(qū),微信公眾號:Rust語言中文社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論