編譯器檢查 (Lint) 和 Clippy

Rust 編譯器會產生高品質的錯誤訊息,以及實用的內建 Lint。Clippy 則提供更多 Lint,且會整理成可供每個專案啟用的群組。

#[deny(clippy::cast_possible_truncation)]
fn main() {
    let x = 3;
    while (x < 70000) {
        x *= 2;
    }
    println!("X probably fits in a u16, right? {}", x as u16);
}
This slide should take about 3 minutes.

請執行程式碼範例並查看錯誤訊息。雖然這裡也能看到 Lint,但程式碼開始編譯後,Lint 就不會再顯示。因此若要查看這些 Lint,請改用 Playground 網站。

解析 Lint 後,請在 Playground 網站上執行 clippy,顯示 clippy 警告。Clippy 提供大量 Lint 說明文件,且會一直添加新的 Lint (包括預設拒絕的 Lint)。

請注意,您可以使用 cargo fix 或編輯器,修正含有 help: ... 的錯誤或警告。