diff options
Diffstat (limited to 'src/test/ui/nll/issue-55850.rs')
-rw-r--r-- | src/test/ui/nll/issue-55850.rs | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/src/test/ui/nll/issue-55850.rs b/src/test/ui/nll/issue-55850.rs deleted file mode 100644 index e6279bd02..000000000 --- a/src/test/ui/nll/issue-55850.rs +++ /dev/null @@ -1,35 +0,0 @@ -#![allow(unused_mut)] -#![feature(generators, generator_trait)] - -use std::marker::Unpin; -use std::ops::Generator; -use std::ops::GeneratorState::Yielded; -use std::pin::Pin; - -pub struct GenIter<G>(G); - -impl <G> Iterator for GenIter<G> -where - G: Generator + Unpin, -{ - type Item = G::Yield; - - fn next(&mut self) -> Option<Self::Item> { - match Pin::new(&mut self.0).resume(()) { - Yielded(y) => Some(y), - _ => None - } - } -} - -fn bug<'a>() -> impl Iterator<Item = &'a str> { - GenIter(move || { - let mut s = String::new(); - yield &s[..] //~ ERROR cannot yield value referencing local variable `s` [E0515] - //~| ERROR borrow may still be in use when generator yields - }) -} - -fn main() { - bug(); -} |