Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/stdio')
-rw-r--r--newlib/libc/stdio/vfprintf.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c
index ea458467d..306644a30 100644
--- a/newlib/libc/stdio/vfprintf.c
+++ b/newlib/libc/stdio/vfprintf.c
@@ -317,9 +317,11 @@ _DEFUN (_VFPRINTF_R, (data, fp, fmt0, ap),
char *decimal_point = localeconv()->decimal_point;
char softsign; /* temporary negative sign for floats */
#ifdef _NO_LONGDBL
- double _fpvalue; /* floating point arguments %[eEfgG] */
+ union { int i; double d; } _double_ = {0};
+ #define _fpvalue (_double_.d)
#else
- _LONG_DOUBLE _fpvalue; /* floating point arguments %[eEfgG] */
+ union { int i; _LONG_DOUBLE ld; } _long_double_ = {0};
+ #define _fpvalue (_long_double_.ld)
#endif
int expt; /* integer value of exponent */
int expsize = 0; /* character count for expstr */