diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2021-01-11 08:23:48 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2021-01-11 08:23:48 (GMT) |
| commit | b61dbff448d4ccad302a205fa518de3af09fa7ea (patch) | |
| tree | b9879bd057ba95da843216563b8a0234418648a1 /generic/tclStrToD.c | |
| parent | 4e3cd053dbb7487dfdf2e93f5151d9bdd5f9865e (diff) | |
| download | tcl-b61dbff448d4ccad302a205fa518de3af09fa7ea.zip tcl-b61dbff448d4ccad302a205fa518de3af09fa7ea.tar.gz tcl-b61dbff448d4ccad302a205fa518de3af09fa7ea.tar.bz2 | |
Make Tcl independent from exact definition of TCL_LL_MODIFIER. In tclStrToD.c we need an _exact_ 64-bit type, _at least_ 64-bit is not good enough here.
Diffstat (limited to 'generic/tclStrToD.c')
| -rw-r--r-- | generic/tclStrToD.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/generic/tclStrToD.c b/generic/tclStrToD.c index 7c1d779..7aee804 100644 --- a/generic/tclStrToD.c +++ b/generic/tclStrToD.c @@ -5251,23 +5251,23 @@ TclFormatNaN( #else union { double dv; - unsigned long long iv; + uint64_t iv; } bitwhack; bitwhack.dv = value; if (n770_fp) { bitwhack.iv = Nokia770Twiddle(bitwhack.iv); } - if (bitwhack.iv & (1ULL << 63)) { - bitwhack.iv &= ~ (1ULL << 63); + if (bitwhack.iv & (UINT64_C(1) << 63)) { + bitwhack.iv &= ~ (UINT64_C(1) << 63); *buffer++ = '-'; } *buffer++ = 'N'; *buffer++ = 'a'; *buffer++ = 'N'; - bitwhack.iv &= ((1ULL) << 51) - 1; + bitwhack.iv &= ((UINT64_C(1)) << 51) - 1; if (bitwhack.iv != 0) { - sprintf(buffer, "(%" TCL_LL_MODIFIER "x)", bitwhack.iv); + sprintf(buffer, "(%" PRIx64 ")", bitwhack.iv); } else { *buffer = '\0'; } |
