From 873fd50c8657fe000a3df72f07ac6031532b4fd0 Mon Sep 17 00:00:00 2001 From: Odin Dutton Date: Tue, 23 Apr 2019 15:44:27 +1000 Subject: [PATCH 1/2] Add extended information for E0594 --- src/librustc_mir/error_codes.rs | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/src/librustc_mir/error_codes.rs b/src/librustc_mir/error_codes.rs index 74a4278d5991b..9f48bd177f649 100644 --- a/src/librustc_mir/error_codes.rs +++ b/src/librustc_mir/error_codes.rs @@ -2062,6 +2062,36 @@ fn get_owned_iterator() -> IntoIter { ``` "##, +E0594: r##" +Cannot assign to immutable static item. + +Example of erroneous code: + +```compile_fail,E0594 +static NUM: i32 = 18; +NUM = 20; // error: cannot assign +``` + +Statics are shared everywhere, and if they are mutable one might violate memory +safety since holding multiple mutable references to shared data is not allowed. + +If you really want global mutable state, try using `static mut`. You will also +need to wrap the assignment in an `unsafe` block, see E0133. + +``` +static mut NUM: i32 = 18; +unsafe { + NUM = 20; +} +``` + +See also: + + https://doc.rust-lang.org/book/ch19-01-unsafe-rust.html + https://doc.rust-lang.org/stable/reference/items/static-items.html + https://doc.rust-lang.org/stable/rust-by-example/custom_types/constants.html +"##, + E0595: r##" #### Note: this error code is no longer emitted by the compiler. @@ -2435,7 +2465,6 @@ register_diagnostics! { E0521, // borrowed data escapes outside of closure E0524, // two closures require unique access to `..` at the same time E0526, // shuffle indices are not constant - E0594, // cannot assign to {} E0598, // lifetime of {} is too short to guarantee its contents can be... E0625, // thread-local statics cannot be accessed at compile-time } From 4c86fcb412fec7f7268ccc30b3d48c4e98e67710 Mon Sep 17 00:00:00 2001 From: Odin Dutton Date: Tue, 23 Apr 2019 21:57:56 +1000 Subject: [PATCH 2/2] Update UI tests with E0594 extended information --- src/test/ui/E0594.stderr | 1 + src/test/ui/borrowck/borrow-immutable-upvar-mutation.stderr | 3 ++- .../borrowck/borrowck-assign-to-andmut-in-aliasable-loc.stderr | 1 + src/test/ui/borrowck/borrowck-assign-to-constants.stderr | 1 + .../borrowck-borrow-mut-base-ptr-in-aliasable-loc.stderr | 2 +- .../ui/borrowck/borrowck-borrow-overloaded-auto-deref.stderr | 3 ++- src/test/ui/borrowck/borrowck-borrow-overloaded-deref.stderr | 3 ++- src/test/ui/borrowck/borrowck-closures-unique.stderr | 3 ++- src/test/ui/borrowck/borrowck-issue-14498.stderr | 3 ++- .../ui/borrowck/borrowck-overloaded-index-ref-index.stderr | 3 ++- src/test/ui/borrowck/index-mut-help.stderr | 3 ++- src/test/ui/borrowck/issue-45983.nll.stderr | 1 + .../ui/borrowck/issue-54499-field-mutation-of-moved-out.stderr | 3 ++- .../issue-55492-borrowck-migrate-scans-parents.migrate.stderr | 3 ++- .../issue-55492-borrowck-migrate-scans-parents.nll.stderr | 3 ++- src/test/ui/borrowck/mutability-errors.stderr | 3 ++- .../borrowck/reassignment_immutable_fields_overlapping.stderr | 3 ++- .../ui/borrowck/reassignment_immutable_fields_twice.stderr | 3 ++- src/test/ui/cannot-mutate-captured-non-mut-var.stderr | 3 ++- src/test/ui/closures/closure-immutable-outer-variable.stderr | 1 + src/test/ui/did_you_mean/issue-35937.stderr | 3 ++- src/test/ui/did_you_mean/issue-39544.stderr | 3 ++- src/test/ui/error-codes/E0389.stderr | 1 + src/test/ui/fn/fn-closure-mutable-capture.stderr | 1 + src/test/ui/immut-function-arguments.stderr | 1 + src/test/ui/issues/issue-46023.stderr | 1 + src/test/ui/issues/issue-46604.stderr | 3 ++- src/test/ui/issues/issue-51244.stderr | 1 + src/test/ui/issues/issue-51515.stderr | 1 + src/test/ui/mut/mutable-class-fields-2.stderr | 1 + src/test/ui/mut/mutable-class-fields.stderr | 1 + src/test/ui/nll/closure-captures.stderr | 3 ++- src/test/ui/nll/constant-thread-locals-issue-47053.stderr | 1 + src/test/ui/nll/generator-upvar-mutability.stderr | 1 + src/test/ui/nll/issue-47388.stderr | 1 + src/test/ui/nll/issue-51244.stderr | 1 + src/test/ui/nll/issue-57989.stderr | 3 ++- src/test/ui/rfc-2005-default-binding-mode/enum.stderr | 1 + src/test/ui/rfc-2005-default-binding-mode/explicit-mut.stderr | 1 + src/test/ui/suggestions/suggest-ref-mut.stderr | 1 + src/test/ui/thread-local-mutation.stderr | 1 + .../unboxed-closures/unboxed-closure-immutable-capture.stderr | 3 ++- .../ui/unboxed-closures/unboxed-closures-mutate-upvar.stderr | 1 + .../unboxed-closures-mutated-upvar-from-fn-closure.stderr | 1 + 44 files changed, 64 insertions(+), 21 deletions(-) diff --git a/src/test/ui/E0594.stderr b/src/test/ui/E0594.stderr index c00ec4250a70b..f4d96f4e45a56 100644 --- a/src/test/ui/E0594.stderr +++ b/src/test/ui/E0594.stderr @@ -6,3 +6,4 @@ LL | NUM = 20; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/borrow-immutable-upvar-mutation.stderr b/src/test/ui/borrowck/borrow-immutable-upvar-mutation.stderr index 17969137a9881..097e4c75065c9 100644 --- a/src/test/ui/borrowck/borrow-immutable-upvar-mutation.stderr +++ b/src/test/ui/borrowck/borrow-immutable-upvar-mutation.stderr @@ -72,4 +72,5 @@ LL | let _h = to_fn_mut(move || { set(&mut z); to_fn(move || z = 42); }) error: aborting due to 6 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/borrowck-assign-to-andmut-in-aliasable-loc.stderr b/src/test/ui/borrowck/borrowck-assign-to-andmut-in-aliasable-loc.stderr index 38fcfbfc2a026..d8ccf36852a51 100644 --- a/src/test/ui/borrowck/borrowck-assign-to-andmut-in-aliasable-loc.stderr +++ b/src/test/ui/borrowck/borrowck-assign-to-andmut-in-aliasable-loc.stderr @@ -16,3 +16,4 @@ LL | *s.pointer += 1; error: aborting due to 2 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/borrowck-assign-to-constants.stderr b/src/test/ui/borrowck/borrowck-assign-to-constants.stderr index 800003caa0f34..864d933da127f 100644 --- a/src/test/ui/borrowck/borrowck-assign-to-constants.stderr +++ b/src/test/ui/borrowck/borrowck-assign-to-constants.stderr @@ -6,3 +6,4 @@ LL | foo = 6; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/borrowck-borrow-mut-base-ptr-in-aliasable-loc.stderr b/src/test/ui/borrowck/borrowck-borrow-mut-base-ptr-in-aliasable-loc.stderr index 8115e3150fbce..1fdeb812bf8bb 100644 --- a/src/test/ui/borrowck/borrowck-borrow-mut-base-ptr-in-aliasable-loc.stderr +++ b/src/test/ui/borrowck/borrowck-borrow-mut-base-ptr-in-aliasable-loc.stderr @@ -27,5 +27,5 @@ LL | let x: &mut isize = &mut **t0; error: aborting due to 3 previous errors -Some errors have detailed explanations: E0502, E0596. +Some errors have detailed explanations: E0502, E0594, E0596. For more information about an error, try `rustc --explain E0502`. diff --git a/src/test/ui/borrowck/borrowck-borrow-overloaded-auto-deref.stderr b/src/test/ui/borrowck/borrowck-borrow-overloaded-auto-deref.stderr index dc52685363e39..2ba162c05e475 100644 --- a/src/test/ui/borrowck/borrowck-borrow-overloaded-auto-deref.stderr +++ b/src/test/ui/borrowck/borrowck-borrow-overloaded-auto-deref.stderr @@ -84,4 +84,5 @@ LL | *x.y_mut() = 3; error: aborting due to 14 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/borrowck-borrow-overloaded-deref.stderr b/src/test/ui/borrowck/borrowck-borrow-overloaded-deref.stderr index 1755b22f59dc2..e9471066e4bdc 100644 --- a/src/test/ui/borrowck/borrowck-borrow-overloaded-deref.stderr +++ b/src/test/ui/borrowck/borrowck-borrow-overloaded-deref.stderr @@ -42,4 +42,5 @@ LL | **x = 3; error: aborting due to 7 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/borrowck-closures-unique.stderr b/src/test/ui/borrowck/borrowck-closures-unique.stderr index 9b53af4c01f59..546e87b189728 100644 --- a/src/test/ui/borrowck/borrowck-closures-unique.stderr +++ b/src/test/ui/borrowck/borrowck-closures-unique.stderr @@ -50,4 +50,5 @@ LL | let c1 = |y: &'static mut isize| x = y; error: aborting due to 4 previous errors -For more information about this error, try `rustc --explain E0500`. +Some errors have detailed explanations: E0500, E0594. +For more information about an error, try `rustc --explain E0500`. diff --git a/src/test/ui/borrowck/borrowck-issue-14498.stderr b/src/test/ui/borrowck/borrowck-issue-14498.stderr index fec4c27520cf3..ae9167757a0ae 100644 --- a/src/test/ui/borrowck/borrowck-issue-14498.stderr +++ b/src/test/ui/borrowck/borrowck-issue-14498.stderr @@ -96,4 +96,5 @@ LL | drop(p); error: aborting due to 9 previous errors -For more information about this error, try `rustc --explain E0506`. +Some errors have detailed explanations: E0506, E0594. +For more information about an error, try `rustc --explain E0506`. diff --git a/src/test/ui/borrowck/borrowck-overloaded-index-ref-index.stderr b/src/test/ui/borrowck/borrowck-overloaded-index-ref-index.stderr index fcbfe72a34b96..def535a62f3c9 100644 --- a/src/test/ui/borrowck/borrowck-overloaded-index-ref-index.stderr +++ b/src/test/ui/borrowck/borrowck-overloaded-index-ref-index.stderr @@ -29,4 +29,5 @@ LL | s[2] = 20; error: aborting due to 3 previous errors -For more information about this error, try `rustc --explain E0502`. +Some errors have detailed explanations: E0502, E0594. +For more information about an error, try `rustc --explain E0502`. diff --git a/src/test/ui/borrowck/index-mut-help.stderr b/src/test/ui/borrowck/index-mut-help.stderr index fbc427a6e6d09..96d59b6cecb28 100644 --- a/src/test/ui/borrowck/index-mut-help.stderr +++ b/src/test/ui/borrowck/index-mut-help.stderr @@ -22,4 +22,5 @@ LL | let _ = &mut map["peter"]; error: aborting due to 3 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/issue-45983.nll.stderr b/src/test/ui/borrowck/issue-45983.nll.stderr index 94360b65ffe36..53bf9c1db481c 100644 --- a/src/test/ui/borrowck/issue-45983.nll.stderr +++ b/src/test/ui/borrowck/issue-45983.nll.stderr @@ -18,3 +18,4 @@ LL | give_any(|y| x = Some(y)); error: aborting due to 2 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/issue-54499-field-mutation-of-moved-out.stderr b/src/test/ui/borrowck/issue-54499-field-mutation-of-moved-out.stderr index 7dfd71c81c30d..b7623a54056d8 100644 --- a/src/test/ui/borrowck/issue-54499-field-mutation-of-moved-out.stderr +++ b/src/test/ui/borrowck/issue-54499-field-mutation-of-moved-out.stderr @@ -84,4 +84,5 @@ LL | v.y = 2; error: aborting due to 9 previous errors -For more information about this error, try `rustc --explain E0382`. +Some errors have detailed explanations: E0382, E0594. +For more information about an error, try `rustc --explain E0382`. diff --git a/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.migrate.stderr b/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.migrate.stderr index f1d28eed922af..1cdcc18632c62 100644 --- a/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.migrate.stderr +++ b/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.migrate.stderr @@ -50,4 +50,5 @@ LL | || { &mut x.0; }; error: aborting due to 6 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.nll.stderr b/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.nll.stderr index f1d28eed922af..1cdcc18632c62 100644 --- a/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.nll.stderr +++ b/src/test/ui/borrowck/issue-55492-borrowck-migrate-scans-parents.nll.stderr @@ -50,4 +50,5 @@ LL | || { &mut x.0; }; error: aborting due to 6 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/mutability-errors.stderr b/src/test/ui/borrowck/mutability-errors.stderr index 545de5d0e75bf..72547a40352c9 100644 --- a/src/test/ui/borrowck/mutability-errors.stderr +++ b/src/test/ui/borrowck/mutability-errors.stderr @@ -375,4 +375,5 @@ LL | &mut X.0; error: aborting due to 38 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr b/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr index 649c127dcc9d4..907681d28edbb 100644 --- a/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr +++ b/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr @@ -15,4 +15,5 @@ LL | x.b = 22; error: aborting due to 2 previous errors -For more information about this error, try `rustc --explain E0381`. +Some errors have detailed explanations: E0381, E0594. +For more information about an error, try `rustc --explain E0381`. diff --git a/src/test/ui/borrowck/reassignment_immutable_fields_twice.stderr b/src/test/ui/borrowck/reassignment_immutable_fields_twice.stderr index 9a2824ccb3cd2..bcb6e19c406e5 100644 --- a/src/test/ui/borrowck/reassignment_immutable_fields_twice.stderr +++ b/src/test/ui/borrowck/reassignment_immutable_fields_twice.stderr @@ -15,4 +15,5 @@ LL | x.0 = 1; error: aborting due to 2 previous errors -For more information about this error, try `rustc --explain E0381`. +Some errors have detailed explanations: E0381, E0594. +For more information about an error, try `rustc --explain E0381`. diff --git a/src/test/ui/cannot-mutate-captured-non-mut-var.stderr b/src/test/ui/cannot-mutate-captured-non-mut-var.stderr index 2961497ef9f5c..2d6e83c9e82f9 100644 --- a/src/test/ui/cannot-mutate-captured-non-mut-var.stderr +++ b/src/test/ui/cannot-mutate-captured-non-mut-var.stderr @@ -16,4 +16,5 @@ LL | to_fn_once(move|| { s.read_to_end(&mut Vec::new()); }); error: aborting due to 2 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/closures/closure-immutable-outer-variable.stderr b/src/test/ui/closures/closure-immutable-outer-variable.stderr index 558c9caeff336..7e60f3cd8ffa4 100644 --- a/src/test/ui/closures/closure-immutable-outer-variable.stderr +++ b/src/test/ui/closures/closure-immutable-outer-variable.stderr @@ -8,3 +8,4 @@ LL | foo(Box::new(move || y = false) as Box<_>); error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/did_you_mean/issue-35937.stderr b/src/test/ui/did_you_mean/issue-35937.stderr index 4f9b6a6134dc8..1f578d18a1ce5 100644 --- a/src/test/ui/did_you_mean/issue-35937.stderr +++ b/src/test/ui/did_you_mean/issue-35937.stderr @@ -24,4 +24,5 @@ LL | s.x += 1; error: aborting due to 3 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/did_you_mean/issue-39544.stderr b/src/test/ui/did_you_mean/issue-39544.stderr index dfaaf6b17dc31..ce0d697238c6b 100644 --- a/src/test/ui/did_you_mean/issue-39544.stderr +++ b/src/test/ui/did_you_mean/issue-39544.stderr @@ -98,4 +98,5 @@ LL | *x.0 = 1; error: aborting due to 12 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/error-codes/E0389.stderr b/src/test/ui/error-codes/E0389.stderr index 5310367d51a55..c47750b6f4e69 100644 --- a/src/test/ui/error-codes/E0389.stderr +++ b/src/test/ui/error-codes/E0389.stderr @@ -8,3 +8,4 @@ LL | fancy_ref.num = 6; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/fn/fn-closure-mutable-capture.stderr b/src/test/ui/fn/fn-closure-mutable-capture.stderr index 8dfae0cbdf294..f7ab56da8de97 100644 --- a/src/test/ui/fn/fn-closure-mutable-capture.stderr +++ b/src/test/ui/fn/fn-closure-mutable-capture.stderr @@ -12,3 +12,4 @@ LL | bar(move || x = 1); error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/immut-function-arguments.stderr b/src/test/ui/immut-function-arguments.stderr index 7871ba52db9c9..7238dd14433ce 100644 --- a/src/test/ui/immut-function-arguments.stderr +++ b/src/test/ui/immut-function-arguments.stderr @@ -16,3 +16,4 @@ LL | let _frob = |q: Box| { *q = 2; }; error: aborting due to 2 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/issues/issue-46023.stderr b/src/test/ui/issues/issue-46023.stderr index fac696c6fdcbf..ca19c2501205d 100644 --- a/src/test/ui/issues/issue-46023.stderr +++ b/src/test/ui/issues/issue-46023.stderr @@ -9,3 +9,4 @@ LL | x = 1; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/issues/issue-46604.stderr b/src/test/ui/issues/issue-46604.stderr index 961b249daeb0c..c72f580f24391 100644 --- a/src/test/ui/issues/issue-46604.stderr +++ b/src/test/ui/issues/issue-46604.stderr @@ -12,4 +12,5 @@ LL | buf[0]=2; error: aborting due to 2 previous errors -For more information about this error, try `rustc --explain E0017`. +Some errors have detailed explanations: E0017, E0594. +For more information about an error, try `rustc --explain E0017`. diff --git a/src/test/ui/issues/issue-51244.stderr b/src/test/ui/issues/issue-51244.stderr index 8a7e71e0326a0..c91083955b820 100644 --- a/src/test/ui/issues/issue-51244.stderr +++ b/src/test/ui/issues/issue-51244.stderr @@ -8,3 +8,4 @@ LL | *my_ref = 0; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/issues/issue-51515.stderr b/src/test/ui/issues/issue-51515.stderr index 0e6c8fd48f19f..bcfed6d3bf88f 100644 --- a/src/test/ui/issues/issue-51515.stderr +++ b/src/test/ui/issues/issue-51515.stderr @@ -18,3 +18,4 @@ LL | *bar = 64; error: aborting due to 2 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/mut/mutable-class-fields-2.stderr b/src/test/ui/mut/mutable-class-fields-2.stderr index a27a82ffe4642..15323ce9a9755 100644 --- a/src/test/ui/mut/mutable-class-fields-2.stderr +++ b/src/test/ui/mut/mutable-class-fields-2.stderr @@ -8,3 +8,4 @@ LL | self.how_hungry -= 5; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/mut/mutable-class-fields.stderr b/src/test/ui/mut/mutable-class-fields.stderr index 5391ccc80c5f9..40a0dc9b29c23 100644 --- a/src/test/ui/mut/mutable-class-fields.stderr +++ b/src/test/ui/mut/mutable-class-fields.stderr @@ -8,3 +8,4 @@ LL | nyan.how_hungry = 0; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/nll/closure-captures.stderr b/src/test/ui/nll/closure-captures.stderr index fbd02bc8095a7..c4b0bdc08c4f6 100644 --- a/src/test/ui/nll/closure-captures.stderr +++ b/src/test/ui/nll/closure-captures.stderr @@ -156,4 +156,5 @@ LL | | *x = 1;}); error: aborting due to 12 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/nll/constant-thread-locals-issue-47053.stderr b/src/test/ui/nll/constant-thread-locals-issue-47053.stderr index 16a6e59e4da3a..ae056a9784085 100644 --- a/src/test/ui/nll/constant-thread-locals-issue-47053.stderr +++ b/src/test/ui/nll/constant-thread-locals-issue-47053.stderr @@ -6,3 +6,4 @@ LL | FOO = 6; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/nll/generator-upvar-mutability.stderr b/src/test/ui/nll/generator-upvar-mutability.stderr index 1b4e5b89984e7..31b061b61d19d 100644 --- a/src/test/ui/nll/generator-upvar-mutability.stderr +++ b/src/test/ui/nll/generator-upvar-mutability.stderr @@ -9,3 +9,4 @@ LL | x = 1; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/nll/issue-47388.stderr b/src/test/ui/nll/issue-47388.stderr index a5f5bf6ee2fdd..91f758a60a57e 100644 --- a/src/test/ui/nll/issue-47388.stderr +++ b/src/test/ui/nll/issue-47388.stderr @@ -8,3 +8,4 @@ LL | fancy_ref.num = 6; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/nll/issue-51244.stderr b/src/test/ui/nll/issue-51244.stderr index 6b543389af508..69efb2ca84751 100644 --- a/src/test/ui/nll/issue-51244.stderr +++ b/src/test/ui/nll/issue-51244.stderr @@ -8,3 +8,4 @@ LL | *my_ref = 0; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/nll/issue-57989.stderr b/src/test/ui/nll/issue-57989.stderr index 7367dc095a31a..d6bbbc317e0ab 100644 --- a/src/test/ui/nll/issue-57989.stderr +++ b/src/test/ui/nll/issue-57989.stderr @@ -20,4 +20,5 @@ LL | g; error: aborting due to 2 previous errors -For more information about this error, try `rustc --explain E0506`. +Some errors have detailed explanations: E0506, E0594. +For more information about an error, try `rustc --explain E0506`. diff --git a/src/test/ui/rfc-2005-default-binding-mode/enum.stderr b/src/test/ui/rfc-2005-default-binding-mode/enum.stderr index 9d53e6d7887df..d6a89006bc0fb 100644 --- a/src/test/ui/rfc-2005-default-binding-mode/enum.stderr +++ b/src/test/ui/rfc-2005-default-binding-mode/enum.stderr @@ -18,3 +18,4 @@ LL | *x += 1; error: aborting due to 3 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/rfc-2005-default-binding-mode/explicit-mut.stderr b/src/test/ui/rfc-2005-default-binding-mode/explicit-mut.stderr index 5eace3d263d46..a6f2f3ec30968 100644 --- a/src/test/ui/rfc-2005-default-binding-mode/explicit-mut.stderr +++ b/src/test/ui/rfc-2005-default-binding-mode/explicit-mut.stderr @@ -18,3 +18,4 @@ LL | *n += 1; error: aborting due to 3 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/suggestions/suggest-ref-mut.stderr b/src/test/ui/suggestions/suggest-ref-mut.stderr index 3dd9fbc6f1480..9f00967d84089 100644 --- a/src/test/ui/suggestions/suggest-ref-mut.stderr +++ b/src/test/ui/suggestions/suggest-ref-mut.stderr @@ -35,3 +35,4 @@ LL | ref quo => { *quo = 32; }, error: aborting due to 4 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/thread-local-mutation.stderr b/src/test/ui/thread-local-mutation.stderr index 7f7738b5d6509..e5dc0e72edfc7 100644 --- a/src/test/ui/thread-local-mutation.stderr +++ b/src/test/ui/thread-local-mutation.stderr @@ -6,3 +6,4 @@ LL | S = "after"; error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/unboxed-closures/unboxed-closure-immutable-capture.stderr b/src/test/ui/unboxed-closures/unboxed-closure-immutable-capture.stderr index 9fd8aa562f4e4..ad5451ced55d0 100644 --- a/src/test/ui/unboxed-closures/unboxed-closure-immutable-capture.stderr +++ b/src/test/ui/unboxed-closures/unboxed-closure-immutable-capture.stderr @@ -71,4 +71,5 @@ LL | || set(&mut x); error: aborting due to 8 previous errors -For more information about this error, try `rustc --explain E0596`. +Some errors have detailed explanations: E0594, E0596. +For more information about an error, try `rustc --explain E0594`. diff --git a/src/test/ui/unboxed-closures/unboxed-closures-mutate-upvar.stderr b/src/test/ui/unboxed-closures/unboxed-closures-mutate-upvar.stderr index fef6c23a50130..6bba38510b676 100644 --- a/src/test/ui/unboxed-closures/unboxed-closures-mutate-upvar.stderr +++ b/src/test/ui/unboxed-closures/unboxed-closures-mutate-upvar.stderr @@ -42,3 +42,4 @@ LL | | }); error: aborting due to 4 previous errors +For more information about this error, try `rustc --explain E0594`. diff --git a/src/test/ui/unboxed-closures/unboxed-closures-mutated-upvar-from-fn-closure.stderr b/src/test/ui/unboxed-closures/unboxed-closures-mutated-upvar-from-fn-closure.stderr index 2bc1f01af9815..a38c612e1dea9 100644 --- a/src/test/ui/unboxed-closures/unboxed-closures-mutated-upvar-from-fn-closure.stderr +++ b/src/test/ui/unboxed-closures/unboxed-closures-mutated-upvar-from-fn-closure.stderr @@ -16,3 +16,4 @@ LL | | }); error: aborting due to previous error +For more information about this error, try `rustc --explain E0594`.