Browse Source

Fix decimal_to_float_bits for floats >= 1

Hyp-X 2 years ago
parent
commit
a3bb7d3028
1 changed files with 1 additions and 1 deletions
  1. 1 1
      core/strconv/generic_float.odin

+ 1 - 1
core/strconv/generic_float.odin

@@ -326,7 +326,7 @@ decimal_to_float_bits :: proc(d: ^decimal.Decimal, info: ^Float_Info) -> (b: u64
 	exp = 0
 	exp = 0
 	for d.decimal_point > 0 {
 	for d.decimal_point > 0 {
 		n := 27 if d.decimal_point >= len(power_table) else power_table[d.decimal_point]
 		n := 27 if d.decimal_point >= len(power_table) else power_table[d.decimal_point]
-		decimal.shift(d, n)
+		decimal.shift(d, -n)
 		exp += n
 		exp += n
 	}
 	}
 	for d.decimal_point < 0 || d.decimal_point == 0 && d.digits[0] < '5' {
 	for d.decimal_point < 0 || d.decimal_point == 0 && d.digits[0] < '5' {