summaryrefslogtreecommitdiffstats
path: root/newlib/libc/stdio/vfwprintf.c
diff options
context:
space:
mode:
authorKito Cheng <kito.cheng@gmail.com>2017-06-03 21:41:29 +0800
committerCorinna Vinschen <corinna@vinschen.de>2017-06-07 11:50:31 +0200
commitbeb17b264b69e35763fbdf0a68fbf67343cfbb58 (patch)
treef3dabd096824b8404843e128bf8779cc6a7c84ff /newlib/libc/stdio/vfwprintf.c
parent105436deada6be04d1df199e7281f1d0dbb929b0 (diff)
downloadcygnal-beb17b264b69e35763fbdf0a68fbf67343cfbb58.tar.gz
cygnal-beb17b264b69e35763fbdf0a68fbf67343cfbb58.tar.bz2
cygnal-beb17b264b69e35763fbdf0a68fbf67343cfbb58.zip
Print sign of NaN values.
Diffstat (limited to 'newlib/libc/stdio/vfwprintf.c')
-rw-r--r--newlib/libc/stdio/vfwprintf.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/newlib/libc/stdio/vfwprintf.c b/newlib/libc/stdio/vfwprintf.c
index f0179a014..4786ed6a9 100644
--- a/newlib/libc/stdio/vfwprintf.c
+++ b/newlib/libc/stdio/vfwprintf.c
@@ -970,6 +970,8 @@ reswitch: switch (ch) {
break;
}
if (isnan (_fpvalue)) {
+ if (signbit (_fpvalue))
+ sign = L'-';
if (ch <= L'G') /* 'A', 'E', 'F', or 'G' */
cp = L"NAN";
else
@@ -1001,6 +1003,8 @@ reswitch: switch (ch) {
break;
}
if (expt == 1) {
+ if (signbit (_fpvalue))
+ sign = L'-';
if (ch <= L'G') /* 'A', 'E', 'F', or 'G' */
cp = L"NAN";
else