2019-11-13 20:51:16 +00:00
|
|
|
// This test originated from #65394. We conservatively assume that `x` is still `LiveDrop` even
|
|
|
|
// after it has been moved because a mutable reference to it exists at some point in the const body.
|
|
|
|
//
|
|
|
|
// We will likely have to change this behavior before we allow `&mut` in a `const`.
|
2019-10-17 01:00:44 +00:00
|
|
|
|
|
|
|
const _: Vec<i32> = {
|
2022-09-23 14:22:36 +00:00
|
|
|
let mut x = Vec::<i32>::new(); //~ ERROR destructor of
|
2020-06-15 17:05:24 +00:00
|
|
|
let r = &mut x; //~ ERROR mutable references are not allowed in constants
|
2019-10-17 01:00:44 +00:00
|
|
|
let y = x;
|
|
|
|
y
|
|
|
|
};
|
|
|
|
|
|
|
|
fn main() {}
|