2
0
Эх сурвалжийг харах

Fix typo in `parse_components`

gingerBill 2 жил өмнө
parent
commit
8f1af2630d

+ 4 - 2
core/strconv/strconv.odin

@@ -2,6 +2,7 @@ package strconv
 
 import "core:unicode/utf8"
 import "decimal"
+import "core:runtime"
 
 parse_bool :: proc(s: string, n: ^int = nil) -> (result: bool = false, ok: bool) {
 	switch s {
@@ -708,8 +709,8 @@ parse_f64_prefix :: proc(str: string) -> (value: f64, nr: int, ok: bool) {
 				saw_digits = true
 				nd += 1
 				if nd_mant < MAX_MANT_DIGITS {
-					MAX_MANT_DIGITS *= 16
-					MAX_MANT_DIGITS += int(lower(c) - 'a' + 10)
+					mantissa *= 16
+					mantissa += u64(lower(c) - 'a' + 10)
 					nd_mant += 1
 				} else {
 					trunc = true
@@ -835,6 +836,7 @@ parse_f64_prefix :: proc(str: string) -> (value: f64, nr: int, ok: bool) {
 	mantissa, exp, neg, trunc, hex, nr = parse_components(str) or_return
 
 	if hex {
+		runtime.println_any(mantissa, exp, neg, trunc, hex, nr)
 		value, ok = parse_hex(str, mantissa, exp, neg, trunc)
 		return
 	}