diff --git a/src/lsp/format.lsp b/src/lsp/format.lsp index 409eb0a0d..cc2955485 100644 --- a/src/lsp/format.lsp +++ b/src/lsp/format.lsp @@ -1363,7 +1363,8 @@ (t (let ((spaceleft w)) (when (and w (or atsign - (minusp number))) + (minusp number) + #+ieee-floating-point (minusp (atan number -1)))) (decf spaceleft)) (multiple-value-bind (str len lpoint tpoint) (sys::flonum-to-string (abs number) spaceleft d k) @@ -1389,7 +1390,8 @@ t) (t (when w (dotimes (i spaceleft) (write-char pad stream))) - (if (minusp number) + (if (or (minusp number) + #+ieee-floating-point (minusp (atan number -1))) (write-char #\- stream) (if atsign (write-char #\+ stream))) (when lpoint (write-char #\0 stream))