diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2014-03-07 18:07:25 +1100 |
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2014-03-07 18:07:25 +1100 |
| commit | ba05ca6962dcccfffe3d48c8cd69ed1a75bb93ca (patch) | |
| tree | 8662c3a6dec4ec8ade28f37074ff399a3f800760 | |
| parent | 28e7631d8beadd8762adefde2346266732e1866d (diff) | |
| download | rust-ba05ca6962dcccfffe3d48c8cd69ed1a75bb93ca.tar.gz rust-ba05ca6962dcccfffe3d48c8cd69ed1a75bb93ca.zip | |
std: stop `vec!()` warning about unused mutability.
If no arguments are given to `vec!` then no pushes are emitted and so the compiler (rightly) complains that the mutability of `temp` is never used. This behaviour is rather annoying for users.
| -rw-r--r-- | src/libstd/macros.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libstd/macros.rs b/src/libstd/macros.rs index ba72e1f2549..f0ea90a4aed 100644 --- a/src/libstd/macros.rs +++ b/src/libstd/macros.rs @@ -366,12 +366,14 @@ macro_rules! try( ($e:expr) => (match $e { Ok(e) => e, Err(e) => return Err(e) }) ) +/// Create a `std::vec_ng::Vec` containing the arguments. #[macro_export] macro_rules! vec( ($($e:expr),*) => ({ - let mut temp = ::std::vec_ng::Vec::new(); - $(temp.push($e);)* - temp + // leading _ to allow empty construction without a warning. + let mut _temp = ::std::vec_ng::Vec::new(); + $(_temp.push($e);)* + _temp }) ) |
