]> git.lizzy.rs Git - rust.git/blob - src/test/ui/consts/const-eval/const_let.rs
9e6952733bb0b0e624597e9fdd43da80f44f43d6
[rust.git] / src / test / ui / consts / const-eval / const_let.rs
1 #![feature(const_let)]
2
3 fn main() {}
4
5 struct FakeNeedsDrop;
6
7 impl Drop for FakeNeedsDrop {
8     fn drop(&mut self) {}
9 }
10
11 // ok
12 const X: FakeNeedsDrop = { let x = FakeNeedsDrop; x };
13
14 // error
15 const Y: FakeNeedsDrop = { let mut x = FakeNeedsDrop; x = FakeNeedsDrop; x };
16 //~^ ERROR constant contains unimplemented expression type
17
18 // error
19 const Z: () = { let mut x = None; x = Some(FakeNeedsDrop); };
20 //~^ ERROR constant contains unimplemented expression type