Skip to content

Commit 46e5005

Browse files
Fix PyInt::as_u32_mask
1 parent df28348 commit 46e5005

1 file changed

Lines changed: 2 additions & 5 deletions

File tree

‎crates/vm/src/builtins/int.rs‎

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -322,12 +322,9 @@ impl PyInt {
322322
v.to_u32()
323323
.or_else(|| v.to_i32().map(|i| i as u32))
324324
.unwrap_or_else(|| {
325-
let mut out = 0u32;
326-
for digit in v.iter_u32_digits() {
327-
out = out.wrapping_shl(32) | digit;
328-
}
325+
let out = v.iter_u32_digits().next().unwrap_or(0);
329326
match v.sign() {
330-
Sign::Minus => out * -1i32 as u32,
327+
Sign::Minus => out.wrapping_neg(),
331328
_ => out,
332329
}
333330
})

0 commit comments

Comments
 (0)