diff --git a/src/libcore/char.rs b/src/libcore/char.rs index c97d7b086f4d..1b2083929ceb 100644 --- a/src/libcore/char.rs +++ b/src/libcore/char.rs @@ -470,7 +470,8 @@ impl Iterator for EscapeUnicode { Some('{') } EscapeUnicodeState::Value => { - let c = from_digit(((self.c as u32) >> (self.hex_digit_idx * 4)) & 0xf, 16).unwrap(); + let hex_digit = ((self.c as u32) >> (self.hex_digit_idx * 4)) & 0xf; + let c = from_digit(hex_digit, 16).unwrap(); if self.hex_digit_idx == 0 { self.state = EscapeUnicodeState::RightBrace; } else {