mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 07:14:28 +00:00
Improve the help message + add a help span
This commit is contained in:
parent
419552227f
commit
acf50a7dc6
@ -6,6 +6,7 @@ use rustc_lint::{LateContext, LateLintPass};
|
||||
use rustc_middle::lint::in_external_macro;
|
||||
use rustc_middle::ty::subst::GenericArgKind;
|
||||
use rustc_session::{declare_lint_pass, declare_tool_lint};
|
||||
use rustc_span::{BytePos, Span};
|
||||
|
||||
declare_clippy_lint! {
|
||||
/// ### What it does
|
||||
@ -205,8 +206,13 @@ impl<'tcx> LateLintPass<'tcx> for LetUnderscore {
|
||||
LET_UNDERSCORE_UNTYPED,
|
||||
local.span,
|
||||
"non-binding `let` without a type annotation",
|
||||
None,
|
||||
"consider adding a type annotation or removing the `let` keyword",
|
||||
Some(
|
||||
Span::new(local.pat.span.hi(),
|
||||
local.pat.span.hi() + BytePos(1),
|
||||
local.pat.span.ctxt(),
|
||||
local.pat.span.parent()
|
||||
)),
|
||||
"consider adding a type annotation",
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,11 @@ error: non-binding `let` without a type annotation
|
||||
LL | let _ = a();
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= help: consider adding a type annotation or removing the `let` keyword
|
||||
help: consider adding a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:36:10
|
||||
|
|
||||
LL | let _ = a();
|
||||
| ^
|
||||
= note: `-D clippy::let-underscore-untyped` implied by `-D warnings`
|
||||
|
||||
error: non-binding `let` without a type annotation
|
||||
@ -13,7 +17,11 @@ error: non-binding `let` without a type annotation
|
||||
LL | let _ = b(1);
|
||||
| ^^^^^^^^^^^^^
|
||||
|
|
||||
= help: consider adding a type annotation or removing the `let` keyword
|
||||
help: consider adding a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:37:10
|
||||
|
|
||||
LL | let _ = b(1);
|
||||
| ^
|
||||
|
||||
error: non-binding `let` without a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:39:5
|
||||
@ -21,7 +29,11 @@ error: non-binding `let` without a type annotation
|
||||
LL | let _ = d(&1);
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= help: consider adding a type annotation or removing the `let` keyword
|
||||
help: consider adding a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:39:10
|
||||
|
|
||||
LL | let _ = d(&1);
|
||||
| ^
|
||||
|
||||
error: non-binding `let` without a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:40:5
|
||||
@ -29,7 +41,11 @@ error: non-binding `let` without a type annotation
|
||||
LL | let _ = e();
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= help: consider adding a type annotation or removing the `let` keyword
|
||||
help: consider adding a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:40:10
|
||||
|
|
||||
LL | let _ = e();
|
||||
| ^
|
||||
|
||||
error: non-binding `let` without a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:41:5
|
||||
@ -37,7 +53,11 @@ error: non-binding `let` without a type annotation
|
||||
LL | let _ = f();
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= help: consider adding a type annotation or removing the `let` keyword
|
||||
help: consider adding a type annotation
|
||||
--> $DIR/let_underscore_untyped.rs:41:10
|
||||
|
|
||||
LL | let _ = f();
|
||||
| ^
|
||||
|
||||
error: aborting due to 5 previous errors
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user