Rust: #![allow(unknown_lints)]は、毎晩同じレベルの不明なlintがある場合は機能しません-2017-08-11-x86_64-unknown-linux-gnu

作成日 2017年08月11日  ·  3コメント  ·  ソース: rust-lang/rust

次のスニペットは、 nightly-2017-08-11-x86_64-unknown-linux-gnu前に正常に機能します

#![allow(unknown_lints)]
#![allow(clippy)]

しかし今それは警告を報告します:

warning: unknown lint: `clippy`
 --> /home/poc/src/../a/b.rs:2:10
  |
2 | #![allow(clippy)]
  |          ^^^^^^
  |
  = note: #[warn(unknown_lints)] on by default

再現する手順:

  1. クローンhttps://github.com/overvenus/poc.git
  2. rustupオーバーライドセット毎晩-2017-08-11
  3. 貨物テスト

これは予想される動作ですか、それともバグですか? ありがとうございました!

C-bug T-compiler regression-from-stable-to-nightly

最も参考になるコメント

https://github.com/rust-lang/rust/pull/43841でこのPRを開きました

全てのコメント3件

cc @ alexcrichton-おそらく新しいlintの実装に関連しています

はい、これはhttps://github.com/rust-lang/rust/pull/43522が原因このコード行にありますallow_lintsがスコープ内にあるかどうかのチェックは、リントされている属性の現在のセットをチェックしていません。

たとえば、これは警告しません:

#![allow(unknown_lints)]

#[allow(clippy)]
fn main() {}

しかし、これは警告します:

#![allow(unknown_lints)]
#![allow(clippy)]

fn main() {}

(お気づきのように)

修正は、その時点までのlint属性のセットが収集されているローカル変数specsを考慮に入れることです。

https://github.com/rust-lang/rust/pull/43841でこのPRを開きました

このページは役に立ちましたか?
0 / 5 - 0 評価