rust/tests/compile-fail/unused_io_amount.rs
sinkuu a2bcce9dbf Move is_try to util
Removed unnecessary condition

Also changed lint span of `try` from surrounded expression to entire `try`
invocation. It turned out that compiletest misses errors for macro invocations.
2017-01-07 23:52:48 +09:00

35 lines
812 B
Rust

#![feature(plugin)]
#![plugin(clippy)]
#![allow(dead_code)]
use std::io;
// FIXME: compiletest doesn't understand errors from macro invocation span
fn try_macro<T: io::Read + io::Write>(s: &mut T) -> io::Result<()> {
try!(s.write(b"test"));
let mut buf = [0u8; 4];
try!(s.read(&mut buf));
Ok(())
}
fn question_mark<T: io::Read + io::Write>(s: &mut T) -> io::Result<()> {
s.write(b"test")?;
//~^ ERROR handle written amount returned
let mut buf = [0u8; 4];
s.read(&mut buf)?;
//~^ ERROR handle read amount returned
Ok(())
}
fn unwrap<T: io::Read + io::Write>(s: &mut T) {
s.write(b"test").unwrap();
//~^ ERROR handle written amount returned
let mut buf = [0u8; 4];
s.read(&mut buf).unwrap();
//~^ ERROR handle read amount returned
}
fn main() {
}