diff options
| author | Ralf Jung <post@ralfj.de> | 2021-06-28 09:19:36 +0200 |
|---|---|---|
| committer | Ralf Jung <post@ralfj.de> | 2021-06-28 09:19:36 +0200 |
| commit | 719dafc48b3a076e9f6341be97bad0cef316f24b (patch) | |
| tree | 8fc850695cfd551826e06073c480fcb73db605ad /compiler | |
| parent | d08a4718a9e3b9838a01345384d5b224b268daa1 (diff) | |
| download | rust-719dafc48b3a076e9f6341be97bad0cef316f24b.tar.gz rust-719dafc48b3a076e9f6341be97bad0cef316f24b.zip | |
double-check mutability inside Allocation
Diffstat (limited to 'compiler')
| -rw-r--r-- | compiler/rustc_middle/src/mir/interpret/allocation.rs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/rustc_middle/src/mir/interpret/allocation.rs b/compiler/rustc_middle/src/mir/interpret/allocation.rs index ee3902991e9..c0cfc7b1ba4 100644 --- a/compiler/rustc_middle/src/mir/interpret/allocation.rs +++ b/compiler/rustc_middle/src/mir/interpret/allocation.rs @@ -340,6 +340,8 @@ impl<Tag: Copy, Extra> Allocation<Tag, Extra> { range: AllocRange, val: ScalarMaybeUninit<Tag>, ) -> AllocResult { + assert!(self.mutability == Mutability::Mut); + let val = match val { ScalarMaybeUninit::Scalar(scalar) => scalar, ScalarMaybeUninit::Uninit => { @@ -463,6 +465,7 @@ impl<Tag: Copy, Extra> Allocation<Tag, Extra> { if range.size.bytes() == 0 { return; } + assert!(self.mutability == Mutability::Mut); self.init_mask.set_range(range.start, range.end(), is_init); } } |
