about summary refs log tree commit diff
path: root/src/libstd/macros.rs
diff options
context:
space:
mode:
authorHuon Wilson <dbau.pp+github@gmail.com>2014-03-07 18:07:25 +1100
committerHuon Wilson <dbau.pp+github@gmail.com>2014-03-07 18:07:25 +1100
commitba05ca6962dcccfffe3d48c8cd69ed1a75bb93ca (patch)
tree8662c3a6dec4ec8ade28f37074ff399a3f800760 /src/libstd/macros.rs
parent28e7631d8beadd8762adefde2346266732e1866d (diff)
downloadrust-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.
Diffstat (limited to 'src/libstd/macros.rs')
-rw-r--r--src/libstd/macros.rs8
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
     })
 )