rust/src/test/ui/borrowck/two-phase-surprise-no-conflict.ast.stderr
2018-12-25 21:08:33 -07:00

134 lines
7.2 KiB
Plaintext

error[E0503]: cannot use `self.cx` because it was mutably borrowed
--> $DIR/two-phase-surprise-no-conflict.rs:30:13
|
LL | let _mut_borrow = &mut *self;
| ----- borrow of `*self` occurs here
LL | let _access = self.cx;
| ^^^^^^^ use of borrowed `*self`
error[E0502]: cannot borrow `*self.cx_mut` as immutable because `*self` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:69:33
|
LL | self.hash_expr(&self.cx_mut.body(eid).value);
| ---- ^^^^^^^^^^^ - mutable borrow ends here
| | |
| | immutable borrow occurs here
| mutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:121:52
|
LL | reg.register_static(Box::new(TrivialPass::new(&reg.sess_mut)));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:125:51
|
LL | reg.register_bound(Box::new(TrivialPass::new(&reg.sess_mut)));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:129:50
|
LL | reg.register_univ(Box::new(TrivialPass::new(&reg.sess_mut)));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:133:41
|
LL | reg.register_ref(&TrivialPass::new(&reg.sess_mut));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:141:56
|
LL | reg.register_static(Box::new(TrivialPass::new(&mut reg.sess_mut)));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:146:59
|
LL | reg.register_bound(Box::new(TrivialPass::new_mut(&mut reg.sess_mut)));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:151:58
|
LL | reg.register_univ(Box::new(TrivialPass::new_mut(&mut reg.sess_mut)));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:156:49
|
LL | reg.register_ref(&TrivialPass::new_mut(&mut reg.sess_mut));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:168:51
|
LL | reg.register_bound(Box::new(CapturePass::new(&reg.sess_mut)));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:173:50
|
LL | reg.register_univ(Box::new(CapturePass::new(&reg.sess_mut)));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0502]: cannot borrow `reg.sess_mut` as immutable because `*reg` is also borrowed as mutable
--> $DIR/two-phase-surprise-no-conflict.rs:178:41
|
LL | reg.register_ref(&CapturePass::new(&reg.sess_mut));
| --- ^^^^^^^^^^^^ - mutable borrow ends here
| | |
| mutable borrow occurs here immutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:190:59
|
LL | reg.register_bound(Box::new(CapturePass::new_mut(&mut reg.sess_mut)));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:196:58
|
LL | reg.register_univ(Box::new(CapturePass::new_mut(&mut reg.sess_mut)));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error[E0499]: cannot borrow `reg.sess_mut` as mutable more than once at a time
--> $DIR/two-phase-surprise-no-conflict.rs:202:49
|
LL | reg.register_ref(&CapturePass::new_mut(&mut reg.sess_mut));
| --- ^^^^^^^^^^^^ - first borrow ends here
| | |
| first mutable borrow occurs here second mutable borrow occurs here
error: aborting due to 16 previous errors
Some errors occurred: E0499, E0502, E0503.
For more information about an error, try `rustc --explain E0499`.