| //@ run-rustfix |
| //@ revisions: current next |
| //@[next] compile-flags: -Znext-solver |
| #![allow(unused_variables, dead_code)] |
| use std::collections::{BTreeMap, HashSet}; |
| |
| #[derive(Debug, Eq, PartialEq, Hash)] |
| enum Day { |
| Mon, |
| } |
| |
| struct Class { |
| days: BTreeMap<u32, HashSet<Day>>, |
| } |
| |
| impl Class { |
| fn do_stuff(&self) { |
| for (_, v) in &self.days { |
| let mut x: HashSet<Day> = v.clone(); //~ ERROR |
| let y: Vec<Day> = x.drain().collect(); |
| println!("{:?}", x); |
| } |
| } |
| } |
| |
| fn fail() { |
| let c = Class { days: BTreeMap::new() }; |
| c.do_stuff(); |
| } |
| fn main() {} |