1.40.0」公開を発表した。1.39」に続く最新版。マクロと属性を強化し、手続きマクロがマクロを生成できるようになった。ブロックでも使えるようになった。新しいtodo!()マクロも導入した。新しい属性として、#[non_exhaustive]が加わった。フィールドや他の変更が将来加わる可能性があることを示す型を宣言できるもので、他のコードが定義を上書きするのを防ぐことができる。借用のチェックをしてくれるborrow-checkerが出す警告が、ハードエラーとなった。2015に加わったことを受けてのもので、1.39ではborrow-checkerの警告はエラーになっていた。7)など新しいコンパイラターゲットも加わっている。