| //@ run-pass | |
| #![allow(unused_must_use)] | |
| use std::slice::Iter; | |
| use std::io::{Error, ErrorKind, Result}; | |
| use std::vec::*; | |
| fn foo(it: &mut Iter<u8>) -> Result<u8> { | |
| Ok(*it.next().unwrap()) | |
| } | |
| fn bar() -> Result<u8> { | |
| let data: Vec<u8> = Vec::new(); | |
| if true { | |
| return Err(Error::new(ErrorKind::NotFound, "msg")); | |
| } | |
| let mut it = data.iter(); | |
| foo(&mut it) | |
| } | |
| fn main() { | |
| bar(); | |
| } |