diff options
| author | Dylan DPC <99973273+Dylan-DPC@users.noreply.github.com> | 2022-03-31 13:09:53 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-31 13:09:53 +0200 |
| commit | 4388ac58a2a1fc5d223563ea0c1fbf484d8f939f (patch) | |
| tree | e5629a30df7ba5ecf35addabaa309aba703ec409 | |
| parent | c6764c982d71dd63ad43f9e70c5b7d5bdca7617c (diff) | |
| parent | d65b9a19db62d18895f329a1ab6d5c0ff96fa960 (diff) | |
| download | rust-4388ac58a2a1fc5d223563ea0c1fbf484d8f939f.tar.gz rust-4388ac58a2a1fc5d223563ea0c1fbf484d8f939f.zip | |
Rollup merge of #95478 - InfRandomness:infrandomness/lint_largemove_note, r=compiler-errors
Add note to the move size diagnostic context: https://github.com/rust-lang/rust/issues/83518
| -rw-r--r-- | compiler/rustc_monomorphize/src/collector.rs | 1 | ||||
| -rw-r--r-- | src/test/ui/async-await/large_moves.attribute.stderr | 7 | ||||
| -rw-r--r-- | src/test/ui/async-await/large_moves.option.stderr | 7 |
3 files changed, 15 insertions, 0 deletions
diff --git a/compiler/rustc_monomorphize/src/collector.rs b/compiler/rustc_monomorphize/src/collector.rs index 66941e49a9a..2a659a97db5 100644 --- a/compiler/rustc_monomorphize/src/collector.rs +++ b/compiler/rustc_monomorphize/src/collector.rs @@ -859,6 +859,7 @@ impl<'a, 'tcx> MirVisitor<'tcx> for MirNeighborCollector<'a, 'tcx> { |lint| { let mut err = lint.build(&format!("moving {} bytes", layout.size.bytes())); err.span_label(source_info.span, "value moved from here"); + err.note(&format!(r#"The current maximum size is {}, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]`"#, limit.bytes())); err.emit(); }, ); diff --git a/src/test/ui/async-await/large_moves.attribute.stderr b/src/test/ui/async-await/large_moves.attribute.stderr index 39b7e7cb345..8d3f0b77f43 100644 --- a/src/test/ui/async-await/large_moves.attribute.stderr +++ b/src/test/ui/async-await/large_moves.attribute.stderr @@ -15,24 +15,31 @@ note: the lint level is defined here | LL | #![deny(large_assignments)] | ^^^^^^^^^^^^^^^^^ + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: moving 10024 bytes --> $DIR/large_moves.rs:18:14 | LL | let z = (x, 42); | ^ value moved from here + | + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: moving 10024 bytes --> $DIR/large_moves.rs:18:13 | LL | let z = (x, 42); | ^^^^^^^ value moved from here + | + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: moving 10024 bytes --> $DIR/large_moves.rs:20:13 | LL | let a = z.0; | ^^^ value moved from here + | + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: aborting due to 4 previous errors diff --git a/src/test/ui/async-await/large_moves.option.stderr b/src/test/ui/async-await/large_moves.option.stderr index 39b7e7cb345..8d3f0b77f43 100644 --- a/src/test/ui/async-await/large_moves.option.stderr +++ b/src/test/ui/async-await/large_moves.option.stderr @@ -15,24 +15,31 @@ note: the lint level is defined here | LL | #![deny(large_assignments)] | ^^^^^^^^^^^^^^^^^ + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: moving 10024 bytes --> $DIR/large_moves.rs:18:14 | LL | let z = (x, 42); | ^ value moved from here + | + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: moving 10024 bytes --> $DIR/large_moves.rs:18:13 | LL | let z = (x, 42); | ^^^^^^^ value moved from here + | + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: moving 10024 bytes --> $DIR/large_moves.rs:20:13 | LL | let a = z.0; | ^^^ value moved from here + | + = note: The current maximum size is 1000, but it can be customized with the move_size_limit attribute: `#![move_size_limit = "..."]` error: aborting due to 4 previous errors |
