rust/tests/ui/borrowck/assign-imm-local-twice.fixed

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

22 lines
713 B
Rust
Raw Normal View History

//! Check that we do not allow assigning twice to an immutable variable. This test also checks a
//! few pieces of borrowck diagnostics:
//!
//! - A multipart borrowck diagnostics that points out the first assignment to an immutable
//! variable, alongside violating assignments that follow subsequently.
//! - A suggestion diagnostics to make the immutable binding mutable.
//@ run-rustfix
fn main() {
let mut v: isize;
//~^ HELP consider making this binding mutable
//~| SUGGESTION mut
v = 1;
//~^ NOTE first assignment
println!("v={}", v);
v = 2;
//~^ ERROR cannot assign twice to immutable variable
//~| NOTE cannot assign twice to immutable
println!("v={}", v);
}