diff options
Diffstat (limited to 'src/test/ui/borrowck/reassignment_immutable_fields_twice.rs')
-rw-r--r-- | src/test/ui/borrowck/reassignment_immutable_fields_twice.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/test/ui/borrowck/reassignment_immutable_fields_twice.rs b/src/test/ui/borrowck/reassignment_immutable_fields_twice.rs new file mode 100644 index 000000000..2775a54c8 --- /dev/null +++ b/src/test/ui/borrowck/reassignment_immutable_fields_twice.rs @@ -0,0 +1,17 @@ +// This should never be allowed -- since `x` is not `mut`, so `x.0` +// cannot be assigned twice. + +fn var_then_field() { + let x: (u32, u32); + x = (22, 44); + x.0 = 1; //~ ERROR +} + +fn same_field_twice() { + let x: (u32, u32); + x.0 = 1; //~ ERROR + x.0 = 22; + x.1 = 44; +} + +fn main() { } |