]> git.lizzy.rs Git - rust.git/blob - src/test/ui/issues/issue-22886.rs
Rollup merge of #60492 - acrrd:issues/54054_chain, r=SimonSapin
[rust.git] / src / test / ui / issues / issue-22886.rs
1 // Regression test for #22886.
2
3 fn crash_please() {
4     let mut iter = Newtype(Some(Box::new(0)));
5     let saved = iter.next().unwrap();
6     println!("{}", saved);
7     iter.0 = None;
8     println!("{}", saved);
9 }
10
11 struct Newtype(Option<Box<usize>>);
12
13 impl<'a> Iterator for Newtype { //~ ERROR E0207
14     type Item = &'a Box<usize>;
15
16     fn next(&mut self) -> Option<&Box<usize>> {
17         self.0.as_ref()
18     }
19 }
20
21 fn main() { }