From b4dc8587946d5300ae983c9c3cfc2d03f76ed746 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sat, 1 Jun 2024 11:25:14 -0400 Subject: Change how floats are serialized --- compile.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'compile.c') diff --git a/compile.c b/compile.c index e7bb14c7..b6e26c84 100644 --- a/compile.c +++ b/compile.c @@ -1025,10 +1025,7 @@ CORD compile(env_t *env, ast_t *ast) } case Int: return CORD_asprintf("I%ld(%ld)", Match(ast, Int)->bits, Match(ast, Int)->i); case Num: { - // HACK: since the cord library doesn't support the '%a' specifier, this workaround - // is necessary: - char *buf = asprintfa(Match(ast, Num)->bits == 64 ? "%a" : "%af", Match(ast, Num)->n); - return CORD_from_char_star(buf); + return CORD_asprintf(Match(ast, Num)->bits == 64 ? "%.9g" : "%.9gf", Match(ast, Num)->n); } case Length: { ast_t *expr = Match(ast, Length)->value; -- cgit v1.2.3