From d5dd8447f59dc88fbfdd41996c07815ff74b0881 Mon Sep 17 00:00:00 2001 From: justin Date: Tue, 5 Apr 2016 16:05:14 -0400 Subject: [PATCH] Do not print extra trailing zeros after decimal point --- runtime.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime.c b/runtime.c index 0d6069e8..f6670cb4 100644 --- a/runtime.c +++ b/runtime.c @@ -571,7 +571,7 @@ object Cyc_display(object x, FILE *port) fprintf(port, "%d", ((integer_type *) x)->value); break; case double_tag: - fprintf(port, "%.16f", ((double_type *) x)->value); + fprintf(port, "%.16g", ((double_type *) x)->value); break; case string_tag: fprintf(port, "%s", ((string_type *) x)->str); @@ -1109,7 +1109,7 @@ object Cyc_number2string2(void *data, object cont, int argc, object n, ...) { }else if (type_of(n) == integer_tag) { snprintf(buffer, 1024, "%d", ((integer_type *)n)->value); } else if (type_of(n) == double_tag) { - snprintf(buffer, 1024, "%.16f", ((double_type *)n)->value); + snprintf(buffer, 1024, "%.16g", ((double_type *)n)->value); } else { Cyc_rt_raise2(data, "number->string - Unexpected object", n); }