diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr b/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr new file mode 100644 index 000000000..a3885b5f5 --- /dev/null +++ b/src/test/ui/borrowck/reassignment_immutable_fields_overlapping.stderr @@ -0,0 +1,23 @@ +error[E0381]: partially assigned binding `x` isn't fully initialized + --> $DIR/reassignment_immutable_fields_overlapping.rs:12:5 + | +LL | let x: Foo; + | - binding declared here but left uninitialized +LL | x.a = 1; + | ^^^^^^^ `x` partially assigned here but it isn't fully initialized + | + = help: partial initialization isn't supported, fully initialize the binding with a default value and mutate it, or use `std::mem::MaybeUninit` + +error[E0594]: cannot assign to `x.b`, as `x` is not declared as mutable + --> $DIR/reassignment_immutable_fields_overlapping.rs:13:5 + | +LL | let x: Foo; + | - help: consider changing this to be mutable: `mut x` +LL | x.a = 1; +LL | x.b = 22; + | ^^^^^^^^ cannot assign + +error: aborting due to 2 previous errors + +Some errors have detailed explanations: E0381, E0594. +For more information about an error, try `rustc --explain E0381`. |