From: Mark Rousskov Date: Wed, 9 Feb 2022 22:32:01 +0000 (-0500) Subject: Use count! macro in tuple length computation X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=6f711a37e3c8c2f2cac5f38106eef709ccfc754b;p=rust.git Use count! macro in tuple length computation --- diff --git a/compiler/rustc_serialize/src/serialize.rs b/compiler/rustc_serialize/src/serialize.rs index 4996e02d7d7..e755991e903 100644 --- a/compiler/rustc_serialize/src/serialize.rs +++ b/compiler/rustc_serialize/src/serialize.rs @@ -591,9 +591,8 @@ impl),+> Encodable for ($($name,)+) { #[allow(non_snake_case)] fn encode(&self, s: &mut S) -> Result<(), S::Error> { let ($(ref $name,)+) = *self; - let mut n = 0; - $(let $name = $name; n += 1;)+ - s.emit_tuple(n, |s| { + let len: usize = count!($($name)+); + s.emit_tuple(len, |s| { let mut i = 0; $(s.emit_tuple_arg({ i+=1; i-1 }, |s| $name.encode(s))?;)+ Ok(())