blob: 5013f877e7ecb19ea72d9eb1b329d8e05b613f4d [file] [log] [blame]
error[E0594]: cannot assign to immutable borrowed content `*x`
--> $DIR/mutability-errors.rs:19:5
|
LL | fn named_ref(x: &(i32,)) {
| ------- use `&mut (i32,)` here to make mutable
LL | *x = (1,); //~ ERROR
| ^^^^^^^^^ cannot borrow as mutable
error[E0594]: cannot assign to field `x.0` of immutable binding
--> $DIR/mutability-errors.rs:20:5
|
LL | fn named_ref(x: &(i32,)) {
| ------- use `&mut (i32,)` here to make mutable
LL | *x = (1,); //~ ERROR
LL | x.0 = 1; //~ ERROR
| ^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow immutable borrowed content `*x` as mutable
--> $DIR/mutability-errors.rs:21:10
|
LL | fn named_ref(x: &(i32,)) {
| ------- use `&mut (i32,)` here to make mutable
...
LL | &mut *x; //~ ERROR
| ^^ cannot borrow as mutable
error[E0596]: cannot borrow field `x.0` of immutable binding as mutable
--> $DIR/mutability-errors.rs:22:10
|
LL | fn named_ref(x: &(i32,)) {
| ------- use `&mut (i32,)` here to make mutable
...
LL | &mut x.0; //~ ERROR
| ^^^ cannot mutably borrow field of immutable binding
error[E0594]: cannot assign to immutable borrowed content
--> $DIR/mutability-errors.rs:26:5
|
LL | *f() = (1,); //~ ERROR
| ^^^^^^^^^^^ cannot borrow as mutable
error[E0594]: cannot assign to field of immutable binding
--> $DIR/mutability-errors.rs:27:5
|
LL | f().0 = 1; //~ ERROR
| ^^^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow immutable borrowed content as mutable
--> $DIR/mutability-errors.rs:28:10
|
LL | &mut *f(); //~ ERROR
| ^^^^ cannot borrow as mutable
error[E0596]: cannot borrow field of immutable binding as mutable
--> $DIR/mutability-errors.rs:29:10
|
LL | &mut f().0; //~ ERROR
| ^^^^^ cannot mutably borrow field of immutable binding
error[E0594]: cannot assign to immutable dereference of raw pointer `*x`
--> $DIR/mutability-errors.rs:33:5
|
LL | *x = (1,); //~ ERROR
| ^^^^^^^^^ cannot borrow as mutable
error[E0594]: cannot assign to field `x.0` of immutable binding
--> $DIR/mutability-errors.rs:34:5
|
LL | (*x).0 = 1; //~ ERROR
| ^^^^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow immutable dereference of raw pointer `*x` as mutable
--> $DIR/mutability-errors.rs:35:10
|
LL | &mut *x; //~ ERROR
| ^^ cannot borrow as mutable
error[E0596]: cannot borrow field `x.0` of immutable binding as mutable
--> $DIR/mutability-errors.rs:36:10
|
LL | &mut (*x).0; //~ ERROR
| ^^^^^^ cannot mutably borrow field of immutable binding
error[E0594]: cannot assign to immutable dereference of raw pointer
--> $DIR/mutability-errors.rs:40:5
|
LL | *f() = (1,); //~ ERROR
| ^^^^^^^^^^^ cannot borrow as mutable
error[E0594]: cannot assign to field of immutable binding
--> $DIR/mutability-errors.rs:41:5
|
LL | (*f()).0 = 1; //~ ERROR
| ^^^^^^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow immutable dereference of raw pointer as mutable
--> $DIR/mutability-errors.rs:42:10
|
LL | &mut *f(); //~ ERROR
| ^^^^ cannot borrow as mutable
error[E0596]: cannot borrow field of immutable binding as mutable
--> $DIR/mutability-errors.rs:43:10
|
LL | &mut (*f()).0; //~ ERROR
| ^^^^^^^^ cannot mutably borrow field of immutable binding
error[E0387]: cannot assign to data in a captured outer variable in an `Fn` closure
--> $DIR/mutability-errors.rs:50:9
|
LL | x = (1,); //~ ERROR
| ^^^^^^^^
|
help: consider changing this closure to take self by mutable reference
--> $DIR/mutability-errors.rs:49:12
|
LL | fn_ref(|| {
| ____________^
LL | | x = (1,); //~ ERROR
LL | | x.0 = 1; //~ ERROR
LL | | &mut x; //~ ERROR
LL | | &mut x.0; //~ ERROR
LL | | });
| |_____^
error[E0387]: cannot assign to data in a captured outer variable in an `Fn` closure
--> $DIR/mutability-errors.rs:51:9
|
LL | x.0 = 1; //~ ERROR
| ^^^^^^^
|
help: consider changing this closure to take self by mutable reference
--> $DIR/mutability-errors.rs:49:12
|
LL | fn_ref(|| {
| ____________^
LL | | x = (1,); //~ ERROR
LL | | x.0 = 1; //~ ERROR
LL | | &mut x; //~ ERROR
LL | | &mut x.0; //~ ERROR
LL | | });
| |_____^
error[E0387]: cannot borrow data mutably in a captured outer variable in an `Fn` closure
--> $DIR/mutability-errors.rs:52:14
|
LL | &mut x; //~ ERROR
| ^
|
help: consider changing this closure to take self by mutable reference
--> $DIR/mutability-errors.rs:49:12
|
LL | fn_ref(|| {
| ____________^
LL | | x = (1,); //~ ERROR
LL | | x.0 = 1; //~ ERROR
LL | | &mut x; //~ ERROR
LL | | &mut x.0; //~ ERROR
LL | | });
| |_____^
error[E0387]: cannot borrow data mutably in a captured outer variable in an `Fn` closure
--> $DIR/mutability-errors.rs:53:14
|
LL | &mut x.0; //~ ERROR
| ^^^
|
help: consider changing this closure to take self by mutable reference
--> $DIR/mutability-errors.rs:49:12
|
LL | fn_ref(|| {
| ____________^
LL | | x = (1,); //~ ERROR
LL | | x.0 = 1; //~ ERROR
LL | | &mut x; //~ ERROR
LL | | &mut x.0; //~ ERROR
LL | | });
| |_____^
error[E0594]: cannot assign to captured outer variable in an `Fn` closure
--> $DIR/mutability-errors.rs:56:9
|
LL | x = (1,); //~ ERROR
| ^^^^^^^^
|
= note: `Fn` closures cannot capture their enclosing environment for modifications
help: consider changing this closure to take self by mutable reference
--> $DIR/mutability-errors.rs:55:12
|
LL | fn_ref(move || {
| ____________^
LL | | x = (1,); //~ ERROR
LL | | x.0 = 1; //~ ERROR
LL | | &mut x; //~ ERROR
LL | | &mut x.0; //~ ERROR
LL | | });
| |_____^
error[E0594]: cannot assign to field `x.0` of immutable binding
--> $DIR/mutability-errors.rs:57:9
|
LL | x.0 = 1; //~ ERROR
| ^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow captured outer variable in an `Fn` closure as mutable
--> $DIR/mutability-errors.rs:58:14
|
LL | &mut x; //~ ERROR
| ^
|
help: consider changing this closure to take self by mutable reference
--> $DIR/mutability-errors.rs:55:12
|
LL | fn_ref(move || {
| ____________^
LL | | x = (1,); //~ ERROR
LL | | x.0 = 1; //~ ERROR
LL | | &mut x; //~ ERROR
LL | | &mut x.0; //~ ERROR
LL | | });
| |_____^
error[E0596]: cannot borrow field `x.0` of immutable binding as mutable
--> $DIR/mutability-errors.rs:59:14
|
LL | &mut x.0; //~ ERROR
| ^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow immutable argument `x` as mutable
--> $DIR/mutability-errors.rs:64:10
|
LL | fn imm_local(x: (i32,)) {
| - help: make this binding mutable: `mut x`
LL | &mut x; //~ ERROR
| ^ cannot borrow mutably
error[E0596]: cannot borrow field `x.0` of immutable binding as mutable
--> $DIR/mutability-errors.rs:65:10
|
LL | fn imm_local(x: (i32,)) {
| - help: make this binding mutable: `mut x`
LL | &mut x; //~ ERROR
LL | &mut x.0; //~ ERROR
| ^^^ cannot mutably borrow field of immutable binding
error[E0595]: closure cannot assign to immutable argument `x`
--> $DIR/mutability-errors.rs:69:5
|
LL | fn imm_capture(x: (i32,)) {
| - help: make this binding mutable: `mut x`
LL | || { //~ ERROR
| ^^ cannot borrow mutably
error[E0594]: cannot assign to captured outer variable in an `FnMut` closure
--> $DIR/mutability-errors.rs:76:9
|
LL | fn imm_capture(x: (i32,)) {
| - help: consider making `x` mutable: `mut x`
...
LL | x = (1,); //~ ERROR
| ^^^^^^^^
error[E0594]: cannot assign to field `x.0` of immutable binding
--> $DIR/mutability-errors.rs:77:9
|
LL | x.0 = 1; //~ ERROR
| ^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow captured outer variable in an `FnMut` closure as mutable
--> $DIR/mutability-errors.rs:78:14
|
LL | &mut x; //~ ERROR
| ^
error[E0596]: cannot borrow field `x.0` of immutable binding as mutable
--> $DIR/mutability-errors.rs:79:14
|
LL | &mut x.0; //~ ERROR
| ^^^ cannot mutably borrow field of immutable binding
error[E0594]: cannot assign to immutable static item
--> $DIR/mutability-errors.rs:86:5
|
LL | X = (1,); //~ ERROR
| ^^^^^^^^
error[E0594]: cannot assign to field of immutable binding
--> $DIR/mutability-errors.rs:87:5
|
LL | X.0 = 1; //~ ERROR
| ^^^^^^^ cannot mutably borrow field of immutable binding
error[E0596]: cannot borrow immutable static item as mutable
--> $DIR/mutability-errors.rs:88:10
|
LL | &mut X; //~ ERROR
| ^
error[E0596]: cannot borrow field of immutable binding as mutable
--> $DIR/mutability-errors.rs:89:10
|
LL | &mut X.0; //~ ERROR
| ^^^ cannot mutably borrow field of immutable binding
error: aborting due to 35 previous errors
Some errors occurred: E0387, E0594, E0595, E0596.
For more information about an error, try `rustc --explain E0387`.