diff --git a/common/util.rs b/common/util.rs index 90deafb80..a0f95593a 100644 --- a/common/util.rs +++ b/common/util.rs @@ -19,6 +19,22 @@ macro_rules! show_error( }) ) +#[macro_export] +macro_rules! show_warning( + ($($args:expr),+) => ({ + safe_write!(&mut ::std::io::stderr(), "{}: warning: ", ::NAME); + safe_writeln!(&mut ::std::io::stderr(), $($args),+); + }) +) + +#[macro_export] +macro_rules! show_info( + ($($args:expr),+) => ({ + safe_write!(&mut ::std::io::stderr(), "{}: ", ::NAME); + safe_writeln!(&mut ::std::io::stderr(), $($args),+); + }) +) + #[macro_export] macro_rules! eprint( ($($args:expr),+) => (safe_write!(&mut ::std::io::stderr(), $($args),+)) @@ -29,14 +45,6 @@ macro_rules! eprintln( ($($args:expr),+) => (safe_writeln!(&mut ::std::io::stderr(), $($args),+)) ) -#[macro_export] -macro_rules! show_warning( - ($($args:expr),+) => ({ - safe_write!(&mut ::std::io::stderr(), "{}: warning: ", ::NAME); - safe_writeln!(&mut ::std::io::stderr(), $($args),+); - }) -) - #[macro_export] macro_rules! crash( ($exitcode:expr, $($args:expr),+) => ({ @@ -46,7 +54,6 @@ macro_rules! crash( }) ) - #[macro_export] macro_rules! exit( ($exitcode:expr) => ({ diff --git a/wc/wc.rs b/wc/wc.rs index 6d6fa5547..d3d3cf04d 100644 --- a/wc/wc.rs +++ b/wc/wc.rs @@ -236,13 +236,17 @@ fn open(path: String) -> StdResult>, int> { return Ok(BufferedReader::new(reader)); } - match File::open(&std::path::Path::new(path.as_slice())) { + let fpath = Path::new(path.as_slice()); + if fpath.is_dir() { + show_info!("{}: is a directory", path); + } + match File::open(&fpath) { Ok(fd) => { let reader = box fd as Box; Ok(BufferedReader::new(reader)) }, Err(e) => { - show_error!("wc: {0:s}: {1:s}", path, e.desc.to_string()); + show_error!("wc: {}: {}", path, e); Err(1) } }