diff options
-rw-r--r-- | .travis.yml | 50 | ||||
-rw-r--r-- | generic/regcustom.h | 2 | ||||
-rw-r--r-- | generic/tcl.decls | 56 | ||||
-rw-r--r-- | generic/tcl.h | 8 | ||||
-rw-r--r-- | generic/tclBasic.c | 8 | ||||
-rw-r--r-- | generic/tclBinary.c | 4 | ||||
-rw-r--r-- | generic/tclCmdMZ.c | 6 | ||||
-rw-r--r-- | generic/tclCompCmdsSZ.c | 2 | ||||
-rw-r--r-- | generic/tclCompExpr.c | 2 | ||||
-rw-r--r-- | generic/tclCompile.c | 4 | ||||
-rw-r--r-- | generic/tclDecls.h | 75 | ||||
-rw-r--r-- | generic/tclDisassemble.c | 2 | ||||
-rw-r--r-- | generic/tclEncoding.c | 18 | ||||
-rw-r--r-- | generic/tclExecute.c | 32 | ||||
-rw-r--r-- | generic/tclIO.c | 8 | ||||
-rw-r--r-- | generic/tclInt.h | 3 | ||||
-rw-r--r-- | generic/tclMain.c | 6 | ||||
-rw-r--r-- | generic/tclParse.c | 6 | ||||
-rw-r--r-- | generic/tclPipe.c | 2 | ||||
-rw-r--r-- | generic/tclScan.c | 6 | ||||
-rw-r--r-- | generic/tclStrToD.c | 16 | ||||
-rw-r--r-- | generic/tclStringObj.c | 8 | ||||
-rw-r--r-- | generic/tclStubInit.c | 31 | ||||
-rw-r--r-- | generic/tclTomMathDecls.h | 19 | ||||
-rw-r--r-- | generic/tclTomMathInterface.c | 38 | ||||
-rw-r--r-- | generic/tclUniData.c | 8 | ||||
-rw-r--r-- | generic/tclUtf.c | 42 | ||||
-rw-r--r-- | generic/tclUtil.c | 8 | ||||
-rw-r--r-- | tests/binary.test | 2 | ||||
-rw-r--r-- | tests/util.test | 1242 | ||||
-rw-r--r-- | tools/uniParse.tcl | 8 | ||||
-rw-r--r-- | win/tclWinSerial.c | 2 |
32 files changed, 887 insertions, 837 deletions
diff --git a/.travis.yml b/.travis.yml index 77ba068..e05c1b7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -80,7 +80,19 @@ matrix: - g++-7 env: - BUILD_DIR=unix - - CFGOPT=CFLAGS=-DTCL_UTF_MAX=6 + - CFGOPT=CFLAGS=-DTCL_UTF_MAX=4 + - os: linux + dist: xenial + compiler: gcc-7 + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-7 + env: + - BUILD_DIR=unix + - CFGOPT=CFLAGS=-DTCL_NO_DEPRECATED=1 - os: osx osx_image: xcode8 env: @@ -136,7 +148,23 @@ matrix: - wine env: - BUILD_DIR=win - - CFGOPT="--host=i686-w64-mingw32 CFLAGS=-DTCL_UTF_MAX=6" + - CFGOPT="--host=i686-w64-mingw32 CFLAGS=-DTCL_UTF_MAX=4" + - NO_DIRECT_TEST=1 + - os: linux + dist: xenial + compiler: i686-w64-mingw32-gcc + addons: + apt: + packages: + - gcc-mingw-w64-base + - binutils-mingw-w64-i686 + - gcc-mingw-w64-i686 + - gcc-mingw-w64 + - gcc-multilib + - wine + env: + - BUILD_DIR=win + - CFGOPT="--host=i686-w64-mingw32 CFLAGS=-DTCL_NO_DEPRECATED=1" - NO_DIRECT_TEST=1 # Test with mingw-w64 (64 bit) - os: linux @@ -167,9 +195,23 @@ matrix: - wine env: - BUILD_DIR=win - - CFGOPT="--host=x86_64-w64-mingw32 --enable-64bit CFLAGS=-DTCL_UTF_MAX=6" + - CFGOPT="--host=x86_64-w64-mingw32 --enable-64bit CFLAGS=-DTCL_UTF_MAX=4" + - NO_DIRECT_TEST=1 + - os: linux + dist: xenial + compiler: x86_64-w64-mingw32-gcc + addons: + apt: + packages: + - gcc-mingw-w64-base + - binutils-mingw-w64-x86-64 + - gcc-mingw-w64-x86-64 + - gcc-mingw-w64 + - wine + env: + - BUILD_DIR=win + - CFGOPT="--host=x86_64-w64-mingw32 --enable-64bit CFLAGS=-DTCL_NO_DEPRECATED=1" - NO_DIRECT_TEST=1 - before_install: - export ERROR_ON_FAILURES=1 - cd ${BUILD_DIR} diff --git a/generic/regcustom.h b/generic/regcustom.h index 095385d..e4db7cb 100644 --- a/generic/regcustom.h +++ b/generic/regcustom.h @@ -88,7 +88,7 @@ typedef int celt; /* Type to hold chr, or NOCELT */ #define NOCELT (-1) /* Celt value which is not valid chr */ #define CHR(c) (UCHAR(c)) /* Turn char literal into chr literal */ #define DIGITVAL(c) ((c)-'0') /* Turn chr digit into its value */ -#if TCL_UTF_MAX > 4 +#if TCL_UTF_MAX > 3 #define CHRBITS 32 /* Bits in a chr; must not use sizeof */ #define CHR_MIN 0x00000000 /* Smallest and largest chr; the value */ #define CHR_MAX 0x10ffff /* CHR_MAX-CHR_MIN+1 should fit in uchr */ diff --git a/generic/tcl.decls b/generic/tcl.decls index 7ceb8c0..6187cfc 100644 --- a/generic/tcl.decls +++ b/generic/tcl.decls @@ -1197,9 +1197,9 @@ declare 334 { declare 335 { int Tcl_UtfToTitle(char *src) } -declare 336 { - int Tcl_UtfToUniChar(const char *src, Tcl_UniChar *chPtr) -} +#declare 336 { +# int Tcl_UtfToUniChar(const char *src, Tcl_UniChar *chPtr) +#} declare 337 { int Tcl_UtfToUpper(char *src) } @@ -1245,21 +1245,21 @@ declare 350 { declare 351 { int Tcl_UniCharIsWordChar(int ch) } -declare 352 { - int Tcl_UniCharLen(const Tcl_UniChar *uniStr) -} -declare 353 { - int Tcl_UniCharNcmp(const Tcl_UniChar *ucs, const Tcl_UniChar *uct, - unsigned long numChars) -} -declare 354 { - char *Tcl_UniCharToUtfDString(const Tcl_UniChar *uniStr, - int uniLength, Tcl_DString *dsPtr) -} -declare 355 { - Tcl_UniChar *Tcl_UtfToUniCharDString(const char *src, - int length, Tcl_DString *dsPtr) -} +#declare 352 { +# int Tcl_UniCharLen(const Tcl_UniChar *uniStr) +#} +#declare 353 { +# int Tcl_UniCharNcmp(const Tcl_UniChar *ucs, const Tcl_UniChar *uct, +# unsigned long numChars) +#} +#declare 354 { +# char *Tcl_UniCharToUtfDString(const Tcl_UniChar *uniStr, +# int uniLength, Tcl_DString *dsPtr) +#} +#declare 355 { +# Tcl_UniChar *Tcl_UtfToUniCharDString(const char *src, +# int length, Tcl_DString *dsPtr) +#} declare 356 { Tcl_RegExp Tcl_GetRegExpFromObj(Tcl_Interp *interp, Tcl_Obj *patObj, int flags) @@ -2379,12 +2379,32 @@ declare 643 { int Tcl_IsShared(Tcl_Obj *objPtr) } +# TIP #??? declare 644 { int *Tcl_GetUnicodeFromObj(Tcl_Obj *objPtr, int *lengthPtr) } declare 645 { Tcl_Obj *Tcl_NewUnicodeObj(const int *unicode, int numChars) } +declare 646 { + int Tcl_UtfToUniChar(const char *src, Tcl_UniChar *chPtr) +} +declare 647 { + int Tcl_UniCharLen(const Tcl_UniChar *uniStr) +} +declare 648 { + int Tcl_UniCharNcmp(const Tcl_UniChar *ucs, const Tcl_UniChar *uct, + unsigned long numChars) +} +declare 649 { + char *Tcl_UniCharToUtfDString(const Tcl_UniChar *uniStr, + int uniLength, Tcl_DString *dsPtr) +} +declare 650 { + Tcl_UniChar *Tcl_UtfToUniCharDString(const char *src, + int length, Tcl_DString *dsPtr) +} + # ----- BASELINE -- FOR -- 8.7.0 ----- # diff --git a/generic/tcl.h b/generic/tcl.h index 27cf7c3..63d845d 100644 --- a/generic/tcl.h +++ b/generic/tcl.h @@ -2142,7 +2142,7 @@ typedef struct Tcl_EncodingType { */ #ifndef TCL_UTF_MAX -#define TCL_UTF_MAX 4 +#define TCL_UTF_MAX 3 #endif /* @@ -2150,7 +2150,7 @@ typedef struct Tcl_EncodingType { * reflected in regcustom.h. */ -#if TCL_UTF_MAX > 4 +#if TCL_UTF_MAX > 3 /* * unsigned int isn't 100% accurate as it should be a strict 4-byte value * (perhaps wchar_t). 64-bit systems may have troubles. The size of this @@ -2339,10 +2339,10 @@ typedef int (Tcl_NRPostProc) (ClientData data[], Tcl_Interp *interp, /* *---------------------------------------------------------------------------- * The following constant is used to test for older versions of Tcl in the - * stubs tables. If TCL_UTF_MAX>4 use a different value. + * stubs tables. */ -#define TCL_STUB_MAGIC ((int) 0xFCA3BACF + (TCL_UTF_MAX>4)) +#define TCL_STUB_MAGIC ((int) 0xFCA3BACF) /* * The following function is required to be defined in all stubs aware diff --git a/generic/tclBasic.c b/generic/tclBasic.c index d914690..1806557 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.c @@ -7560,7 +7560,7 @@ ExprIsqrtFunc( if (Tcl_GetBignumFromObj(interp, objv[1], &big) != TCL_OK) { return TCL_ERROR; } - if (mp_isneg(&big)) { + if (big.sign != MP_ZPOS) { mp_clear(&big); goto negarg; } @@ -7789,9 +7789,9 @@ ExprAbsFunc( if (type == TCL_NUMBER_INT) { Tcl_WideInt l = *((const Tcl_WideInt *) ptr); - if (l > (Tcl_WideInt)0) { + if (l > 0) { goto unChanged; - } else if (l == (Tcl_WideInt)0) { + } else if (l == 0) { if (TclHasStringRep(objv[1])) { int numBytes; const char *bytes = TclGetStringFromObj(objv[1], &numBytes); @@ -7834,7 +7834,7 @@ ExprAbsFunc( } if (type == TCL_NUMBER_BIG) { - if (mp_isneg((const mp_int *) ptr)) { + if (((const mp_int *) ptr)->sign != MP_ZPOS) { Tcl_GetBignumFromObj(NULL, objv[1], &big); tooLarge: mp_neg(&big, &big); diff --git a/generic/tclBinary.c b/generic/tclBinary.c index 1f78d18..8600b3f 100644 --- a/generic/tclBinary.c +++ b/generic/tclBinary.c @@ -1354,7 +1354,7 @@ BinaryFormatCmd( badField: { Tcl_UniChar ch = 0; - char buf[TCL_UTF_MAX + 1] = ""; + char buf[5] = ""; TclUtfToUniChar(errorString, &ch); buf[Tcl_UniCharToUtf(ch, buf)] = '\0'; @@ -1724,7 +1724,7 @@ BinaryScanCmd( badField: { Tcl_UniChar ch = 0; - char buf[TCL_UTF_MAX + 1] = ""; + char buf[5] = ""; TclUtfToUniChar(errorString, &ch); buf[Tcl_UniCharToUtf(ch, buf)] = '\0'; diff --git a/generic/tclCmdMZ.c b/generic/tclCmdMZ.c index 01d9c27..2f01ad6 100644 --- a/generic/tclCmdMZ.c +++ b/generic/tclCmdMZ.c @@ -1221,7 +1221,7 @@ Tcl_SplitObjCmd( len = TclUtfToUniChar(stringPtr, &ch); fullchar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(stringPtr + len, &ch); fullchar = (((fullchar & 0x3ff) << 10) | (ch & 0x3ff)) + 0x10000; @@ -1445,7 +1445,7 @@ StringIndexCmd( Tcl_SetObjResult(interp, Tcl_NewByteArrayObj(&uch, 1)); } else { - char buf[TCL_UTF_MAX] = ""; + char buf[4] = ""; length = Tcl_UniCharToUtf(ch, buf); if ((ch >= 0xD800) && (length < 3)) { @@ -1854,7 +1854,7 @@ StringIsCmd( int fullchar; length2 = TclUtfToUniChar(string1, &ch); fullchar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (length2 < 3)) { length2 += TclUtfToUniChar(string1 + length2, &ch); fullchar = (((fullchar & 0x3ff) << 10) | (ch & 0x3ff)) + 0x10000; diff --git a/generic/tclCompCmdsSZ.c b/generic/tclCompCmdsSZ.c index b97121e..07e7bcc 100644 --- a/generic/tclCompCmdsSZ.c +++ b/generic/tclCompCmdsSZ.c @@ -1502,7 +1502,7 @@ TclSubstCompile( for (endTokenPtr = tokenPtr + parse.numTokens; tokenPtr < endTokenPtr; tokenPtr = TokenAfter(tokenPtr)) { int length, literal, catchRange, breakJump; - char buf[TCL_UTF_MAX] = ""; + char buf[4] = ""; JumpFixup startFixup, okFixup, returnFixup, breakFixup; JumpFixup continueFixup, otherFixup, endFixup; diff --git a/generic/tclCompExpr.c b/generic/tclCompExpr.c index f88b2d6..56c8931 100644 --- a/generic/tclCompExpr.c +++ b/generic/tclCompExpr.c @@ -2066,7 +2066,7 @@ ParseLexeme( if (Tcl_UtfCharComplete(start, numBytes)) { scanned = TclUtfToUniChar(start, &ch); } else { - char utfBytes[TCL_UTF_MAX]; + char utfBytes[4]; memcpy(utfBytes, start, numBytes); utfBytes[numBytes] = '\0'; diff --git a/generic/tclCompile.c b/generic/tclCompile.c index 3621cc2..c0e8c62 100644 --- a/generic/tclCompile.c +++ b/generic/tclCompile.c @@ -1744,7 +1744,7 @@ TclWordKnownAtCompileTime( case TCL_TOKEN_BS: if (tempPtr != NULL) { - char utfBuf[TCL_UTF_MAX] = ""; + char utfBuf[4] = ""; int length = TclParseBackslash(tokenPtr->start, tokenPtr->size, NULL, utfBuf); @@ -2358,7 +2358,7 @@ TclCompileTokens( { Tcl_DString textBuffer; /* Holds concatenated chars from adjacent * TCL_TOKEN_TEXT, TCL_TOKEN_BS tokens. */ - char buffer[TCL_UTF_MAX] = ""; + char buffer[4] = ""; int i, numObjsToConcat, length, adjust; unsigned char *entryCodeNext = envPtr->codeNext; #define NUM_STATIC_POS 20 diff --git a/generic/tclDecls.h b/generic/tclDecls.h index 6f1a956..b9f710f 100644 --- a/generic/tclDecls.h +++ b/generic/tclDecls.h @@ -1025,8 +1025,7 @@ EXTERN char * Tcl_UtfToExternalDString(Tcl_Encoding encoding, EXTERN int Tcl_UtfToLower(char *src); /* 335 */ EXTERN int Tcl_UtfToTitle(char *src); -/* 336 */ -EXTERN int Tcl_UtfToUniChar(const char *src, Tcl_UniChar *chPtr); +/* Slot 336 is reserved */ /* 337 */ EXTERN int Tcl_UtfToUpper(char *src); /* 338 */ @@ -1060,18 +1059,10 @@ EXTERN int Tcl_UniCharIsSpace(int ch); EXTERN int Tcl_UniCharIsUpper(int ch); /* 351 */ EXTERN int Tcl_UniCharIsWordChar(int ch); -/* 352 */ -EXTERN int Tcl_UniCharLen(const Tcl_UniChar *uniStr); -/* 353 */ -EXTERN int Tcl_UniCharNcmp(const Tcl_UniChar *ucs, - const Tcl_UniChar *uct, - unsigned long numChars); -/* 354 */ -EXTERN char * Tcl_UniCharToUtfDString(const Tcl_UniChar *uniStr, - int uniLength, Tcl_DString *dsPtr); -/* 355 */ -EXTERN Tcl_UniChar * Tcl_UtfToUniCharDString(const char *src, int length, - Tcl_DString *dsPtr); +/* Slot 352 is reserved */ +/* Slot 353 is reserved */ +/* Slot 354 is reserved */ +/* Slot 355 is reserved */ /* 356 */ EXTERN Tcl_RegExp Tcl_GetRegExpFromObj(Tcl_Interp *interp, Tcl_Obj *patObj, int flags); @@ -1900,6 +1891,20 @@ EXTERN int * Tcl_GetUnicodeFromObj(Tcl_Obj *objPtr, int *lengthPtr); /* 645 */ EXTERN Tcl_Obj * Tcl_NewUnicodeObj(const int *unicode, int numChars); +/* 646 */ +EXTERN int Tcl_UtfToUniChar(const char *src, Tcl_UniChar *chPtr); +/* 647 */ +EXTERN int Tcl_UniCharLen(const Tcl_UniChar *uniStr); +/* 648 */ +EXTERN int Tcl_UniCharNcmp(const Tcl_UniChar *ucs, + const Tcl_UniChar *uct, + unsigned long numChars); +/* 649 */ +EXTERN char * Tcl_UniCharToUtfDString(const Tcl_UniChar *uniStr, + int uniLength, Tcl_DString *dsPtr); +/* 650 */ +EXTERN Tcl_UniChar * Tcl_UtfToUniCharDString(const char *src, int length, + Tcl_DString *dsPtr); typedef struct { const struct TclPlatStubs *tclPlatStubs; @@ -2271,7 +2276,7 @@ typedef struct TclStubs { char * (*tcl_UtfToExternalDString) (Tcl_Encoding encoding, const char *src, int srcLen, Tcl_DString *dsPtr); /* 333 */ int (*tcl_UtfToLower) (char *src); /* 334 */ int (*tcl_UtfToTitle) (char *src); /* 335 */ - int (*tcl_UtfToUniChar) (const char *src, Tcl_UniChar *chPtr); /* 336 */ + void (*reserved336)(void); int (*tcl_UtfToUpper) (char *src); /* 337 */ int (*tcl_WriteChars) (Tcl_Channel chan, const char *src, int srcLen); /* 338 */ int (*tcl_WriteObj) (Tcl_Channel chan, Tcl_Obj *objPtr); /* 339 */ @@ -2287,10 +2292,10 @@ typedef struct TclStubs { int (*tcl_UniCharIsSpace) (int ch); /* 349 */ int (*tcl_UniCharIsUpper) (int ch); /* 350 */ int (*tcl_UniCharIsWordChar) (int ch); /* 351 */ - int (*tcl_UniCharLen) (const Tcl_UniChar *uniStr); /* 352 */ - int (*tcl_UniCharNcmp) (const Tcl_UniChar *ucs, const Tcl_UniChar *uct, unsigned long numChars); /* 353 */ - char * (*tcl_UniCharToUtfDString) (const Tcl_UniChar *uniStr, int uniLength, Tcl_DString *dsPtr); /* 354 */ - Tcl_UniChar * (*tcl_UtfToUniCharDString) (const char *src, int length, Tcl_DString *dsPtr); /* 355 */ + void (*reserved352)(void); + void (*reserved353)(void); + void (*reserved354)(void); + void (*reserved355)(void); Tcl_RegExp (*tcl_GetRegExpFromObj) (Tcl_Interp *interp, Tcl_Obj *patObj, int flags); /* 356 */ TCL_DEPRECATED_API("Use Tcl_EvalTokensStandard") Tcl_Obj * (*tcl_EvalTokens) (Tcl_Interp *interp, Tcl_Token *tokenPtr, int count); /* 357 */ void (*tcl_FreeParse) (Tcl_Parse *parsePtr); /* 358 */ @@ -2581,6 +2586,11 @@ typedef struct TclStubs { int (*tcl_IsShared) (Tcl_Obj *objPtr); /* 643 */ int * (*tcl_GetUnicodeFromObj) (Tcl_Obj *objPtr, int *lengthPtr); /* 644 */ Tcl_Obj * (*tcl_NewUnicodeObj) (const int *unicode, int numChars); /* 645 */ + int (*tcl_UtfToUniChar) (const char *src, Tcl_UniChar *chPtr); /* 646 */ + int (*tcl_UniCharLen) (const Tcl_UniChar *uniStr); /* 647 */ + int (*tcl_UniCharNcmp) (const Tcl_UniChar *ucs, const Tcl_UniChar *uct, unsigned long numChars); /* 648 */ + char * (*tcl_UniCharToUtfDString) (const Tcl_UniChar *uniStr, int uniLength, Tcl_DString *dsPtr); /* 649 */ + Tcl_UniChar * (*tcl_UtfToUniCharDString) (const char *src, int length, Tcl_DString *dsPtr); /* 650 */ } TclStubs; extern const TclStubs *tclStubsPtr; @@ -3283,8 +3293,7 @@ extern const TclStubs *tclStubsPtr; (tclStubsPtr->tcl_UtfToLower) /* 334 */ #define Tcl_UtfToTitle \ (tclStubsPtr->tcl_UtfToTitle) /* 335 */ -#define Tcl_UtfToUniChar \ - (tclStubsPtr->tcl_UtfToUniChar) /* 336 */ +/* Slot 336 is reserved */ #define Tcl_UtfToUpper \ (tclStubsPtr->tcl_UtfToUpper) /* 337 */ #define Tcl_WriteChars \ @@ -3315,14 +3324,10 @@ extern const TclStubs *tclStubsPtr; (tclStubsPtr->tcl_UniCharIsUpper) /* 350 */ #define Tcl_UniCharIsWordChar \ (tclStubsPtr->tcl_UniCharIsWordChar) /* 351 */ -#define Tcl_UniCharLen \ - (tclStubsPtr->tcl_UniCharLen) /* 352 */ -#define Tcl_UniCharNcmp \ - (tclStubsPtr->tcl_UniCharNcmp) /* 353 */ -#define Tcl_UniCharToUtfDString \ - (tclStubsPtr->tcl_UniCharToUtfDString) /* 354 */ -#define Tcl_UtfToUniCharDString \ - (tclStubsPtr->tcl_UtfToUniCharDString) /* 355 */ +/* Slot 352 is reserved */ +/* Slot 353 is reserved */ +/* Slot 354 is reserved */ +/* Slot 355 is reserved */ #define Tcl_GetRegExpFromObj \ (tclStubsPtr->tcl_GetRegExpFromObj) /* 356 */ #define Tcl_EvalTokens \ @@ -3903,6 +3908,16 @@ extern const TclStubs *tclStubsPtr; (tclStubsPtr->tcl_GetUnicodeFromObj) /* 644 */ #define Tcl_NewUnicodeObj \ (tclStubsPtr->tcl_NewUnicodeObj) /* 645 */ +#define Tcl_UtfToUniChar \ + (tclStubsPtr->tcl_UtfToUniChar) /* 646 */ +#define Tcl_UniCharLen \ + (tclStubsPtr->tcl_UniCharLen) /* 647 */ +#define Tcl_UniCharNcmp \ + (tclStubsPtr->tcl_UniCharNcmp) /* 648 */ +#define Tcl_UniCharToUtfDString \ + (tclStubsPtr->tcl_UniCharToUtfDString) /* 649 */ +#define Tcl_UtfToUniCharDString \ + (tclStubsPtr->tcl_UtfToUniCharDString) /* 650 */ #endif /* defined(USE_TCL_STUBS) */ @@ -4084,7 +4099,7 @@ extern const TclStubs *tclStubsPtr; #undef Tcl_BackgroundError #define Tcl_BackgroundError(interp) Tcl_BackgroundException((interp), TCL_ERROR) -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 # undef Tcl_GetUnicodeFromObj # define Tcl_GetUnicodeFromObj Tcl_GetUtf16FromObj # undef Tcl_NewUnicodeObj diff --git a/generic/tclDisassemble.c b/generic/tclDisassemble.c index e5fce72..afa76c3 100644 --- a/generic/tclDisassemble.c +++ b/generic/tclDisassemble.c @@ -903,7 +903,7 @@ PrintSourceToObj( i += 2; continue; default: -#if TCL_UTF_MAX > 4 +#if TCL_UTF_MAX > 3 if (ch > 0xffff) { Tcl_AppendPrintfToObj(appendObj, "\\U%08x", ch); i += 10; diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c index 0827907..3c73c68 100644 --- a/generic/tclEncoding.c +++ b/generic/tclEncoding.c @@ -1297,7 +1297,7 @@ Tcl_ExternalToUtf( if (*dstCharsPtr <= maxChars) { break; } - dstLen = Tcl_UtfAtIndex(dst, maxChars) - 1 - dst + TCL_UTF_MAX; + dstLen = Tcl_UtfAtIndex(dst, maxChars) - dst + (TCL_UTF_MAX - 1); flags = savedFlags; *statePtr = savedState; } while (1); @@ -2401,7 +2401,7 @@ UtfToUtfProc( int len = TclUtfToUniChar(src, chPtr); src += len; dst += Tcl_UniCharToUtf(*chPtr, dst); -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((*chPtr >= 0xD800) && (len < 3)) { src += TclUtfToUniChar(src + len, chPtr); dst += Tcl_UniCharToUtf(*chPtr, dst); @@ -2590,7 +2590,7 @@ UtfToUtf16Proc( */ #ifdef WORDS_BIGENDIAN -#if TCL_UTF_MAX > 4 +#if TCL_UTF_MAX > 3 if (*chPtr <= 0xFFFF) { *dst++ = (*chPtr >> 8); *dst++ = (*chPtr & 0xFF); @@ -2605,7 +2605,7 @@ UtfToUtf16Proc( *dst++ = (*chPtr & 0xFF); #endif #else -#if TCL_UTF_MAX > 4 +#if TCL_UTF_MAX > 3 if (*chPtr <= 0xFFFF) { *dst++ = (*chPtr & 0xFF); *dst++ = (*chPtr >> 8); @@ -2673,7 +2673,7 @@ UtfToUcs2Proc( { const char *srcStart, *srcEnd, *srcClose, *dstStart, *dstEnd; int result, numChars; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 int len; #endif Tcl_UniChar ch = 0; @@ -2703,7 +2703,7 @@ UtfToUcs2Proc( result = TCL_CONVERT_NOSPACE; break; } -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 src += (len = TclUtfToUniChar(src, &ch)); if ((ch >= 0xD800) && (len < 3)) { src += TclUtfToUniChar(src, &ch); @@ -2927,7 +2927,7 @@ TableFromUtfProc( } len = TclUtfToUniChar(src, &ch); -#if TCL_UTF_MAX > 4 +#if TCL_UTF_MAX > 3 /* * This prevents a crash condition. More evaluation is required for * full support of int Tcl_UniChar. [Bug 1004065] @@ -3138,7 +3138,7 @@ Iso88591FromUtfProc( */ if (ch > 0xff -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 || ((ch >= 0xD800) && (len < 3)) #endif ) { @@ -3146,7 +3146,7 @@ Iso88591FromUtfProc( result = TCL_CONVERT_UNKNOWN; break; } -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) len = 4; #endif /* diff --git a/generic/tclExecute.c b/generic/tclExecute.c index dfb1140..903e8d7 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -5215,7 +5215,7 @@ TEBCresume( objResultPtr = Tcl_NewStringObj((const char *) valuePtr->bytes+index, 1); } else { - char buf[TCL_UTF_MAX] = ""; + char buf[4] = ""; int ch = Tcl_GetUniChar(valuePtr, index); /* @@ -7985,8 +7985,8 @@ ExecuteExtendedBinaryMathOp( if (((wQuotient < (Tcl_WideInt) 0) || ((wQuotient == (Tcl_WideInt) 0) - && ((w1 < (Tcl_WideInt)0 && w2 > (Tcl_WideInt)0) - || (w1 > (Tcl_WideInt)0 && w2 < (Tcl_WideInt)0)))) + && ((w1 < 0 && w2 > 0) + || (w1 > 0 && w2 < 0)))) && (wQuotient * w2 != w1)) { wQuotient -= (Tcl_WideInt) 1; } @@ -8020,7 +8020,7 @@ ExecuteExtendedBinaryMathOp( mp_init(&bigResult); mp_init(&bigRemainder); mp_div(&big1, &big2, &bigResult, &bigRemainder); - if (!mp_iszero(&bigRemainder) && (bigRemainder.sign != big2.sign)) { + if ((bigRemainder.used != 0) && (bigRemainder.sign != big2.sign)) { /* * Convert to Tcl's integer division rules. */ @@ -8042,11 +8042,11 @@ ExecuteExtendedBinaryMathOp( switch (type2) { case TCL_NUMBER_INT: - invalid = (*((const Tcl_WideInt *)ptr2) < (Tcl_WideInt)0); + invalid = (*((const Tcl_WideInt *)ptr2) < 0); break; case TCL_NUMBER_BIG: Tcl_TakeBignumFromObj(NULL, value2Ptr, &big2); - invalid = mp_isneg(&big2); + invalid = big2.sign != MP_ZPOS; mp_clear(&big2); break; default: @@ -8063,7 +8063,7 @@ ExecuteExtendedBinaryMathOp( * Zero shifted any number of bits is still zero. */ - if ((type1==TCL_NUMBER_INT) && (*((const Tcl_WideInt *)ptr1) == (Tcl_WideInt)0)) { + if ((type1==TCL_NUMBER_INT) && (*((const Tcl_WideInt *)ptr1) == 0)) { return constants[0]; } @@ -8121,11 +8121,11 @@ ExecuteExtendedBinaryMathOp( switch (type1) { case TCL_NUMBER_INT: - zero = (*(const Tcl_WideInt *)ptr1 > (Tcl_WideInt)0); + zero = (*(const Tcl_WideInt *)ptr1 > 0); break; case TCL_NUMBER_BIG: Tcl_TakeBignumFromObj(NULL, valuePtr, &big1); - zero = (!mp_isneg(&big1)); + zero = (big1.sign == MP_ZPOS); mp_clear(&big1); break; default: @@ -8146,7 +8146,7 @@ ExecuteExtendedBinaryMathOp( if (type1 == TCL_NUMBER_INT) { w1 = *(const Tcl_WideInt *)ptr1; if ((size_t)shift >= CHAR_BIT*sizeof(Tcl_WideInt)) { - if (w1 >= (Tcl_WideInt)0) { + if (w1 >= 0) { return constants[0]; } WIDE_RESULT(-1); @@ -8249,9 +8249,9 @@ ExecuteExtendedBinaryMathOp( oddExponent = (int) (w2 & (Tcl_WideInt)1); } else { Tcl_TakeBignumFromObj(NULL, value2Ptr, &big2); - negativeExponent = mp_isneg(&big2); + negativeExponent = big2.sign != MP_ZPOS; mp_mod_2d(&big2, 1, &big2); - oddExponent = !mp_iszero(&big2); + oddExponent = big2.used != 0; mp_clear(&big2); } @@ -8568,7 +8568,7 @@ ExecuteExtendedBinaryMathOp( mp_mul(&big1, &big2, &bigResult); break; case INST_DIV: - if (mp_iszero(&big2)) { + if (big2.used == 0) { mp_clear(&big1); mp_clear(&big2); mp_clear(&bigResult); @@ -8577,7 +8577,7 @@ ExecuteExtendedBinaryMathOp( mp_init(&bigRemainder); mp_div(&big1, &big2, &bigResult, &bigRemainder); /* TODO: internals intrusion */ - if (!mp_iszero(&bigRemainder) + if ((bigRemainder.used != 0) && (bigRemainder.sign != big2.sign)) { /* * Convert to Tcl's integer division rules. @@ -8724,7 +8724,7 @@ TclCompareTwoNumbers( goto wideCompare; case TCL_NUMBER_BIG: Tcl_TakeBignumFromObj(NULL, value2Ptr, &big2); - if (mp_isneg(&big2)) { + if (big2.sign != MP_ZPOS) { compare = MP_GT; } else { compare = MP_LT; @@ -8761,7 +8761,7 @@ TclCompareTwoNumbers( } Tcl_TakeBignumFromObj(NULL, value2Ptr, &big2); if ((d1 < (double)WIDE_MAX) && (d1 > (double)WIDE_MIN)) { - if (mp_isneg(&big2)) { + if (big2.sign != MP_ZPOS) { compare = MP_GT; } else { compare = MP_LT; diff --git a/generic/tclIO.c b/generic/tclIO.c index 3879aa9..f49ea95 100644 --- a/generic/tclIO.c +++ b/generic/tclIO.c @@ -4705,7 +4705,7 @@ Tcl_GetsObj( * Skip the raw bytes that make up the '\n'. */ - char tmp[TCL_UTF_MAX]; + char tmp[4]; int rawRead; bufPtr = gs.bufPtr; @@ -6216,7 +6216,7 @@ ReadChars( * and do not encounter the eof char this time. */ - dstLimit = dstRead - 1 + TCL_UTF_MAX; + dstLimit = dstRead + (TCL_UTF_MAX - 1); statePtr->flags = savedFlags; statePtr->inputEncodingFlags = savedIEFlags; statePtr->inputEncodingState = savedState; @@ -6241,7 +6241,7 @@ ReadChars( * here in this call. */ - dstLimit = dstRead - 1 + TCL_UTF_MAX; + dstLimit = dstRead + (TCL_UTF_MAX - 1); statePtr->flags = savedFlags; statePtr->inputEncodingFlags = savedIEFlags; statePtr->inputEncodingState = savedState; @@ -6258,7 +6258,7 @@ ReadChars( */ if (code != TCL_OK) { - char buffer[TCL_UTF_MAX + 1]; + char buffer[5]; int read, decoded, count; /* diff --git a/generic/tclInt.h b/generic/tclInt.h index b95bee9..99a2a58 100644 --- a/generic/tclInt.h +++ b/generic/tclInt.h @@ -3060,7 +3060,6 @@ MODULE_SCOPE int TclInfoLocalsCmd(ClientData dummy, Tcl_Interp *interp, MODULE_SCOPE int TclInfoVarsCmd(ClientData dummy, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]); MODULE_SCOPE void TclInitAlloc(void); -MODULE_SCOPE void TclInitBignumFromLong(mp_int *, long); MODULE_SCOPE void TclInitBignumFromWideInt(mp_int *, Tcl_WideInt); MODULE_SCOPE void TclInitBignumFromWideUInt(mp_int *, Tcl_WideUInt); MODULE_SCOPE void TclInitDbCkalloc(void); @@ -3241,7 +3240,7 @@ MODULE_SCOPE const char*TclGetCommandTypeName(Tcl_Command command); MODULE_SCOPE void TclRegisterCommandTypeName( Tcl_ObjCmdProc *implementationProc, const char *nameStr); -#if (TCL_UTF_MAX > 4) && (defined(__CYGWIN__) || defined(_WIN32)) +#if (TCL_UTF_MAX > 3) && (defined(__CYGWIN__) || defined(_WIN32)) MODULE_SCOPE int TclUtfToUtf16(const char *src, unsigned short *chPtr); MODULE_SCOPE char * Tcl_Utf16ToUtfDString(const unsigned short *uniStr, int uniLength, Tcl_DString *dsPtr); diff --git a/generic/tclMain.c b/generic/tclMain.c index 4b8fa8c..f7a4cf8 100644 --- a/generic/tclMain.c +++ b/generic/tclMain.c @@ -59,9 +59,9 @@ * encoding to UTF-8). */ -#if defined(UNICODE) && (TCL_UTF_MAX <= 4) +#if defined(UNICODE) && (TCL_UTF_MAX == 3) # define NewNativeObj Tcl_NewUnicodeObj -#else /* !UNICODE || (TCL_UTF_MAX > 4) */ +#else /* !UNICODE || (TCL_UTF_MAX > 3) */ static inline Tcl_Obj * NewNativeObj( TCHAR *string, @@ -79,7 +79,7 @@ NewNativeObj( #endif return TclDStringToObj(&ds); } -#endif /* !UNICODE || (TCL_UTF_MAX > 4) */ +#endif /* !UNICODE || (TCL_UTF_MAX > 3) */ /* * Declarations for various library functions and variables (don't want to diff --git a/generic/tclParse.c b/generic/tclParse.c index 2419026..093fbea 100644 --- a/generic/tclParse.c +++ b/generic/tclParse.c @@ -791,7 +791,7 @@ TclParseBackslash( Tcl_UniChar unichar = 0; int result; int count; - char buf[TCL_UTF_MAX] = ""; + char buf[4] = ""; if (numBytes == 0) { if (readPtr != NULL) { @@ -924,7 +924,7 @@ TclParseBackslash( if (Tcl_UtfCharComplete(p, numBytes - 1)) { count = TclUtfToUniChar(p, &unichar) + 1; /* +1 for '\' */ } else { - char utfBytes[TCL_UTF_MAX]; + char utfBytes[5]; memcpy(utfBytes, p, numBytes - 1); utfBytes[numBytes - 1] = '\0'; @@ -2151,7 +2151,7 @@ TclSubstTokens( Tcl_Obj *appendObj = NULL; const char *append = NULL; int appendByteLength = 0; - char utfCharBytes[TCL_UTF_MAX] = ""; + char utfCharBytes[4] = ""; switch (tokenPtr->type) { case TCL_TOKEN_TEXT: diff --git a/generic/tclPipe.c b/generic/tclPipe.c index f94fe5c..63fd2fa 100644 --- a/generic/tclPipe.c +++ b/generic/tclPipe.c @@ -333,7 +333,7 @@ TclCleanupChildren( int count; Tcl_Obj *objPtr; - Tcl_Seek(errorChan, (Tcl_WideInt)0, SEEK_SET); + Tcl_Seek(errorChan, 0, SEEK_SET); objPtr = Tcl_NewObj(); count = Tcl_ReadChars(errorChan, objPtr, -1, 0); if (count < 0) { diff --git a/generic/tclScan.c b/generic/tclScan.c index 0f578d8..068450c 100644 --- a/generic/tclScan.c +++ b/generic/tclScan.c @@ -261,7 +261,7 @@ ValidateFormat( Tcl_UniChar ch = 0; int objIndex, xpgSize, nspace = numVars; int *nassign = TclStackAlloc(interp, nspace * sizeof(int)); - char buf[TCL_UTF_MAX+1] = ""; + char buf[5] = ""; Tcl_Obj *errorMsg; /* Place to build an error messages. Note that * these are messy operations because we do * not want to use the formatting engine; @@ -881,7 +881,7 @@ Tcl_ScanObjCmd( offset = TclUtfToUniChar(string, &sch); i = (int)sch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((sch >= 0xD800) && (offset < 3)) { offset += TclUtfToUniChar(string+offset, &sch); i = (((i<<10) & 0x0FFC00) + 0x10000) + (sch & 0x3FF); @@ -943,7 +943,7 @@ Tcl_ScanObjCmd( int code = Tcl_GetBignumFromObj(interp, objPtr, &big); if (code == TCL_OK) { - if (mp_isneg(&big)) { + if (big.sign != MP_ZPOS) { code = TCL_ERROR; } mp_clear(&big); diff --git a/generic/tclStrToD.c b/generic/tclStrToD.c index b7f35e6..e7cb2c5 100644 --- a/generic/tclStrToD.c +++ b/generic/tclStrToD.c @@ -530,7 +530,7 @@ TclParseNumber( int shift = 0; /* Amount to shift when accumulating binary */ int explicitOctal = 0; -#define ALL_BITS (~(Tcl_WideUInt)0) +#define ALL_BITS ((Tcl_WideUInt)-1) #define MOST_BITS (ALL_BITS >> 1) /* @@ -709,7 +709,7 @@ TclParseNumber( && (((size_t)shift >= CHAR_BIT*sizeof(Tcl_WideUInt)) || (octalSignificandWide > - (~(Tcl_WideUInt)0 >> shift)))) { + ((Tcl_WideUInt)-1 >> shift)))) { octalSignificandOverflow = 1; TclInitBignumFromWideUInt(&octalSignificandBig, octalSignificandWide); @@ -826,7 +826,7 @@ TclParseNumber( if (significandWide != 0 && ((size_t)shift >= CHAR_BIT*sizeof(Tcl_WideUInt) || - significandWide > (~(Tcl_WideUInt)0 >> shift))) { + significandWide > ((Tcl_WideUInt)-1 >> shift))) { significandOverflow = 1; TclInitBignumFromWideUInt(&significandBig, significandWide); @@ -867,7 +867,7 @@ TclParseNumber( if (significandWide != 0 && ((size_t)shift >= CHAR_BIT*sizeof(Tcl_WideUInt) || - significandWide > (~(Tcl_WideUInt)0 >> shift))) { + significandWide > ((Tcl_WideUInt)-1 >> shift))) { significandOverflow = 1; TclInitBignumFromWideUInt(&significandBig, significandWide); @@ -1451,7 +1451,7 @@ AccumulateDecimalDigit( *wideRepPtr = digit; return 0; } else if (numZeros >= maxpow10_wide - || w > ((~(Tcl_WideUInt)0)-digit)/pow10_wide[numZeros+1]) { + || w > ((Tcl_WideUInt)-1-digit)/pow10_wide[numZeros+1]) { /* * Wide multiplication will overflow. Expand the number to a * bignum and fall through into the bignum case. @@ -4649,7 +4649,7 @@ TclCeil( mp_int b; mp_init(&b); - if (mp_isneg(a)) { + if (a->sign != MP_ZPOS) { mp_neg(a, &b); r = -TclFloor(&b); } else { @@ -4666,7 +4666,7 @@ TclCeil( mp_int d; mp_init(&d); mp_div_2d(a, -shift, &b, &d); - exact = mp_iszero(&d); + exact = d.used == 0; mp_clear(&d); } else { mp_copy(a, &b); @@ -4706,7 +4706,7 @@ TclFloor( mp_int b; mp_init(&b); - if (mp_isneg(a)) { + if (a->sign != MP_ZPOS) { mp_neg(a, &b); r = -TclCeil(&b); } else { diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c index 6cbf5e7..205db00 100644 --- a/generic/tclStringObj.c +++ b/generic/tclStringObj.c @@ -568,7 +568,7 @@ Tcl_GetUniChar( return -1; } ch = stringPtr->unicode[index]; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* See: bug [11ae2be95dac9417] */ if ((ch & 0xF800) == 0xD800) { if (ch & 0x400) { @@ -606,7 +606,7 @@ Tcl_GetUniChar( *---------------------------------------------------------------------- */ -#if !defined(TCL_NO_DEPRECATED) && (TCL_UTF_MAX<=4) +#if !defined(TCL_NO_DEPRECATED) && (TCL_UTF_MAX==3) #undef Tcl_GetUnicode unsigned short * Tcl_GetUnicode( @@ -752,7 +752,7 @@ Tcl_GetRange( if (last < first) { return Tcl_NewObj(); } -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* See: bug [11ae2be95dac9417] */ if ((first > 0) && ((stringPtr->unicode[first] & 0xFC00) == 0xDC00) && ((stringPtr->unicode[first-1] & 0xFC00) == 0xD800)) { @@ -2041,7 +2041,7 @@ Tcl_AppendFormatToObj( } break; case 'c': { - char buf[TCL_UTF_MAX] = ""; + char buf[4] = ""; int code, length; if (TclGetIntFromObj(interp, segment, &code) != TCL_OK) { diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c index da25b2a..b85c360 100644 --- a/generic/tclStubInit.c +++ b/generic/tclStubInit.c @@ -57,19 +57,20 @@ #undef TclWinSetSockOpt #undef TclWinNToHS #undef TclStaticPackage +#undef TclBNInitBignumFromLong #undef Tcl_BackgroundError #define TclStaticPackage Tcl_StaticPackage #undef Tcl_GetUnicodeFromObj #undef Tcl_NewUnicodeObj static void uniCodePanic() { -#if TCL_UTF_MAX <= 4 - Tcl_Panic("This extension is compiled with -DTCL_UTF_MAX=6, but Tcl is compiled with -DTCL_UTF_MAX=4"); +#if TCL_UTF_MAX == 3 + Tcl_Panic("This extension is compiled with -DTCL_UTF_MAX>3, but Tcl is compiled with -DTCL_UTF_MAX==3"); #else - Tcl_Panic("This extension is compiled with -DTCL_UTF_MAX=4, but Tcl is compiled with -DTCL_UTF_MAX=6"); + Tcl_Panic("This extension is compiled with -DTCL_UTF_MAX==3, but Tcl is compiled with -DTCL_UTF_MAX>3"); #endif } -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 # define Tcl_GetUnicodeFromObj (int *(*)(Tcl_Obj *, int *)) uniCodePanic # define Tcl_NewUnicodeObj (Tcl_Obj *(*)(const int *, int)) uniCodePanic #else @@ -120,8 +121,12 @@ static int TclSockMinimumBuffersOld(int sock, int size) # define Tcl_NewLongObj 0 # define Tcl_DbNewLongObj 0 # define Tcl_BackgroundError 0 - #else +#define TclBNInitBignumFromLong initBignumFromLong +static void TclBNInitBignumFromLong(mp_int *a, long b) +{ + TclInitBignumFromWideInt(a, b); +} #define TclSetStartupScriptPath setStartupScriptPath static void TclSetStartupScriptPath(Tcl_Obj *path) { @@ -172,7 +177,6 @@ TclWinGetPlatformId(void) #endif # define TclBNInitBignumFromWideUInt TclInitBignumFromWideUInt # define TclBNInitBignumFromWideInt TclInitBignumFromWideInt -# define TclBNInitBignumFromLong TclInitBignumFromLong #endif /* TCL_NO_DEPRECATED */ #ifdef _WIN32 @@ -1331,7 +1335,7 @@ const TclStubs tclStubs = { Tcl_UtfToExternalDString, /* 333 */ Tcl_UtfToLower, /* 334 */ Tcl_UtfToTitle, /* 335 */ - Tcl_UtfToUniChar, /* 336 */ + 0, /* 336 */ Tcl_UtfToUpper, /* 337 */ Tcl_WriteChars, /* 338 */ Tcl_WriteObj, /* 339 */ @@ -1347,10 +1351,10 @@ const TclStubs tclStubs = { Tcl_UniCharIsSpace, /* 349 */ Tcl_UniCharIsUpper, /* 350 */ Tcl_UniCharIsWordChar, /* 351 */ - Tcl_UniCharLen, /* 352 */ - Tcl_UniCharNcmp, /* 353 */ - Tcl_UniCharToUtfDString, /* 354 */ - Tcl_UtfToUniCharDString, /* 355 */ + 0, /* 352 */ + 0, /* 353 */ + 0, /* 354 */ + 0, /* 355 */ Tcl_GetRegExpFromObj, /* 356 */ Tcl_EvalTokens, /* 357 */ Tcl_FreeParse, /* 358 */ @@ -1641,6 +1645,11 @@ const TclStubs tclStubs = { Tcl_IsShared, /* 643 */ Tcl_GetUnicodeFromObj, /* 644 */ Tcl_NewUnicodeObj, /* 645 */ + Tcl_UtfToUniChar, /* 646 */ + Tcl_UniCharLen, /* 647 */ + Tcl_UniCharNcmp, /* 648 */ + Tcl_UniCharToUtfDString, /* 649 */ + Tcl_UtfToUniCharDString, /* 650 */ }; /* !END!: Do not edit above this line. */ diff --git a/generic/tclTomMathDecls.h b/generic/tclTomMathDecls.h index b7cf97f..cb99df7 100644 --- a/generic/tclTomMathDecls.h +++ b/generic/tclTomMathDecls.h @@ -30,19 +30,12 @@ /* Define custom memory allocation for libtommath */ -/* MODULE_SCOPE void* TclBNAlloc( size_t ); */ -#define TclBNAlloc(s) ((void*)ckalloc((size_t)(s))) -/* MODULE_SCOPE void* TclBNRealloc( void*, size_t ); */ -#define TclBNRealloc(x,s) ((void*)ckrealloc((char*)(x),(size_t)(s))) -/* MODULE_SCOPE void TclBNFree( void* ); */ -#define TclBNFree(x) (ckfree((char*)(x))) -/* MODULE_SCOPE void* TclBNCalloc( size_t, size_t ); */ -/* unused - no macro */ - -#define XMALLOC(x) TclBNAlloc(x) -#define XFREE(x) TclBNFree(x) -#define XREALLOC(x,n) TclBNRealloc(x,n) -#define XCALLOC(n,x) TclBNCalloc(n,x) +/* MODULE_SCOPE void* XMALLOC( size_t ); */ +#define XMALLOC(s) ((void*)ckalloc((size_t)(s))) +/* MODULE_SCOPE void* XREALLOC( void*, size_t ); */ +#define XREALLOC(x,s) ((void*)ckrealloc((char*)(x),(size_t)(s))) +/* MODULE_SCOPE void XFREE( void* ); */ +#define XFREE(x) (ckfree((char*)(x))) /* Rename the global symbols in libtommath to avoid linkage conflicts */ diff --git a/generic/tclTomMathInterface.c b/generic/tclTomMathInterface.c index 9e7bf4b..236a8cf 100644 --- a/generic/tclTomMathInterface.c +++ b/generic/tclTomMathInterface.c @@ -93,39 +93,7 @@ TclBN_revision(void) /* *---------------------------------------------------------------------- * - * TclInitBignumFromLong -- - * - * Allocate and initialize a 'bignum' from a native 'long'. - * - * Results: - * None. - * - * Side effects: - * The 'bignum' is constructed. - * - *---------------------------------------------------------------------- - */ - -void -TclInitBignumFromLong( - mp_int *a, - long v) -{ - if (mp_init_size(a, (CHAR_BIT * sizeof(long) + DIGIT_BIT - 1) / DIGIT_BIT) != MP_OKAY) { - Tcl_Panic("initialization failure in TclInitBignumFromLong"); - } - if (v < (long)0) { - mp_set_long_long(a, (Tcl_WideUInt)(-(Tcl_WideInt)v)); - mp_neg(a, a); - } else { - mp_set_long_long(a, (Tcl_WideUInt)v); - } -} - -/* - *---------------------------------------------------------------------- - * - * TclBNInitBignumFromWideInt -- + * TclInitBignumFromWideInt -- * * Allocate and initialize a 'bignum' from a Tcl_WideInt * @@ -146,7 +114,7 @@ TclInitBignumFromWideInt( if (mp_init_size(a, (CHAR_BIT * sizeof(Tcl_WideUInt) + DIGIT_BIT - 1) / DIGIT_BIT) != MP_OKAY) { Tcl_Panic("initialization failure in TclInitBignumFromWideInt"); } - if (v < (Tcl_WideInt)0) { + if (v < 0) { mp_set_long_long(a, (Tcl_WideUInt)(-v)); mp_neg(a, a); } else { @@ -157,7 +125,7 @@ TclInitBignumFromWideInt( /* *---------------------------------------------------------------------- * - * TclBNInitBignumFromWideUInt -- + * TclInitBignumFromWideUInt -- * * Allocate and initialize a 'bignum' from a Tcl_WideUInt * diff --git a/generic/tclUniData.c b/generic/tclUniData.c index 942e2f0..1cc84fd 100644 --- a/generic/tclUniData.c +++ b/generic/tclUniData.c @@ -195,7 +195,7 @@ static const unsigned short pageMap[] = { 1344, 1344, 1344, 1344, 10176, 10208, 1344, 10240, 1344, 10272, 10304, 10336, 10368, 10400, 10432, 1344, 1344, 1344, 10464, 10496, 64, 10528, 10560, 10592, 4736, 10624, 10656 -#if TCL_UTF_MAX > 3 +#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6 ,10688, 10720, 10752, 1824, 1344, 1344, 1344, 8288, 10784, 10816, 10848, 10880, 10912, 10944, 10976, 11008, 1824, 1824, 1824, 1824, 9280, 1344, 11040, 11072, 1344, 11104, 11136, 11168, 11200, 1344, 11232, 1824, @@ -1153,7 +1153,7 @@ static const unsigned char groupMap[] = { 0, 0, 15, 15, 15, 15, 15, 15, 0, 0, 15, 15, 15, 15, 15, 15, 0, 0, 15, 15, 15, 0, 0, 0, 4, 4, 7, 11, 14, 4, 4, 0, 14, 7, 7, 7, 7, 14, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 17, 17, 14, 14, 0, 0 -#if TCL_UTF_MAX > 3 +#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6 ,15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 0, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, @@ -1613,7 +1613,7 @@ static const int groups[] = { 18, 17, 10305, 10370, 8769, 8834 }; -#if TCL_UTF_MAX > 3 +#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6 # define UNICODE_OUT_OF_RANGE(ch) (((ch) & 0x1fffff) >= 0x2fa20) #else # define UNICODE_OUT_OF_RANGE(ch) (((ch) & 0x1f0000) != 0) @@ -1672,7 +1672,7 @@ enum { * Unicode character tables. */ -#if TCL_UTF_MAX > 3 +#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6 # define GetUniCharInfo(ch) (groups[groupMap[pageMap[((ch) & 0x1fffff) >> OFFSET_BITS] | ((ch) & ((1 << OFFSET_BITS)-1))]]) #else # define GetUniCharInfo(ch) (groups[groupMap[pageMap[((ch) & 0xffff) >> OFFSET_BITS] | ((ch) & ((1 << OFFSET_BITS)-1))]]) diff --git a/generic/tclUtf.c b/generic/tclUtf.c index 7e9c36c..ff8f6bd 100644 --- a/generic/tclUtf.c +++ b/generic/tclUtf.c @@ -266,7 +266,7 @@ Tcl_UniCharToUtfDString( return string; } -#if (TCL_UTF_MAX > 4) && (defined(__CYGWIN__) || defined(_WIN32)) +#if (TCL_UTF_MAX > 3) && (defined(__CYGWIN__) || defined(_WIN32)) char * Tcl_Utf16ToUtfDString( const unsigned short *uniStr, /* Utf-16 string to convert to UTF-8. */ @@ -373,7 +373,7 @@ Tcl_UtfToUniChar( * characters representing themselves. */ -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* If *chPtr contains a high surrogate (produced by a previous * Tcl_UtfToUniChar() call) and the next 3 bytes are UTF-8 continuation * bytes, then we must produce a follow-up low surrogate. We only @@ -432,7 +432,7 @@ Tcl_UtfToUniChar( /* * Four-byte-character lead byte followed by three trail bytes. */ -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 Tcl_UniChar high = (((byte & 0x07) << 8) | ((src[1] & 0x3F) << 2) | ((src[2] & 0x3F) >> 4)) - 0x40; if (high >= 0x400) { @@ -461,7 +461,7 @@ Tcl_UtfToUniChar( return 1; } -#if (TCL_UTF_MAX > 4) && (defined(__CYGWIN__) || defined(_WIN32)) +#if (TCL_UTF_MAX > 3) && (defined(__CYGWIN__) || defined(_WIN32)) int TclUtfToUtf16( const char *src, /* The UTF-8 string. */ @@ -634,7 +634,7 @@ Tcl_UtfToUniCharDString( return wString; } -#if (TCL_UTF_MAX > 4) && (defined(__CYGWIN__) || defined(_WIN32)) +#if (TCL_UTF_MAX > 3) && (defined(__CYGWIN__) || defined(_WIN32)) unsigned short * Tcl_UtfToUtf16DString( const char *src, /* UTF-8 string to convert to Unicode. */ @@ -805,7 +805,7 @@ Tcl_UtfFindFirst( while (1) { len = TclUtfToUniChar(src, &find); fullchar = find; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &find); fullchar = (((fullchar & 0x3ff) << 10) | (find & 0x3ff)) + 0x10000; @@ -853,7 +853,7 @@ Tcl_UtfFindLast( while (1) { len = TclUtfToUniChar(src, &find); fullchar = find; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &find); fullchar = (((fullchar & 0x3ff) << 10) | (find & 0x3ff)) + 0x10000; @@ -896,7 +896,7 @@ Tcl_UtfNext( Tcl_UniChar ch = 0; int len = TclUtfToUniChar(src, &ch); -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &ch); } @@ -978,19 +978,19 @@ Tcl_UniCharAtIndex( { Tcl_UniChar ch = 0; int fullchar = 0; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 int len = 0; #endif while (index-- >= 0) { -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 src += (len = TclUtfToUniChar(src, &ch)); #else src += TclUtfToUniChar(src, &ch); #endif } fullchar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { /* If last Tcl_UniChar was a high surrogate, combine with low surrogate */ (void)TclUtfToUniChar(src, &ch); @@ -1006,7 +1006,7 @@ Tcl_UniCharAtIndex( * Tcl_UtfAtIndex -- * * Returns a pointer to the specified character (not byte) position in - * the UTF-8 string. If TCL_UTF_MAX <= 4, characters > U+FFFF count as + * the UTF-8 string. If TCL_UTF_MAX == 3, characters > U+FFFF count as * 2 positions, but then the pointer should never be placed between * the two positions. * @@ -1031,7 +1031,7 @@ Tcl_UtfAtIndex( len = TclUtfToUniChar(src, &ch); src += len; } -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { /* Index points at character following high Surrogate */ src += TclUtfToUniChar(src, &ch); @@ -1128,7 +1128,7 @@ Tcl_UtfToUpper( while (*src) { len = TclUtfToUniChar(src, &ch); upChar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &ch); /* Combine surrogates */ @@ -1190,7 +1190,7 @@ Tcl_UtfToLower( while (*src) { len = TclUtfToUniChar(src, &ch); lowChar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &ch); /* Combine surrogates */ @@ -1255,7 +1255,7 @@ Tcl_UtfToTitle( if (*src) { len = TclUtfToUniChar(src, &ch); titleChar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &ch); /* Combine surrogates */ @@ -1275,7 +1275,7 @@ Tcl_UtfToTitle( while (*src) { len = TclUtfToUniChar(src, &ch); lowChar = ch; -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 if ((ch >= 0xD800) && (len < 3)) { len += TclUtfToUniChar(src + len, &ch); /* Combine surrogates */ @@ -1387,7 +1387,7 @@ Tcl_UtfNcmp( cs += TclUtfToUniChar(cs, &ch1); ct += TclUtfToUniChar(ct, &ch2); if (ch1 != ch2) { -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* Surrogates always report higher than non-surrogates */ if (((ch1 & 0xFC00) == 0xD800)) { if ((ch2 & 0xFC00) != 0xD800) { @@ -1438,7 +1438,7 @@ Tcl_UtfNcasecmp( cs += TclUtfToUniChar(cs, &ch1); ct += TclUtfToUniChar(ct, &ch2); if (ch1 != ch2) { -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* Surrogates always report higher than non-surrogates */ if (((ch1 & 0xFC00) == 0xD800)) { if ((ch2 & 0xFC00) != 0xD800) { @@ -1487,7 +1487,7 @@ TclUtfCmp( cs += TclUtfToUniChar(cs, &ch1); ct += TclUtfToUniChar(ct, &ch2); if (ch1 != ch2) { -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* Surrogates always report higher than non-surrogates */ if (((ch1 & 0xFC00) == 0xD800)) { if ((ch2 & 0xFC00) != 0xD800) { @@ -1533,7 +1533,7 @@ TclUtfCasecmp( cs += TclUtfToUniChar(cs, &ch1); ct += TclUtfToUniChar(ct, &ch2); if (ch1 != ch2) { -#if TCL_UTF_MAX <= 4 +#if TCL_UTF_MAX == 3 /* Surrogates always report higher than non-surrogates */ if (((ch1 & 0xFC00) == 0xD800)) { if ((ch2 & 0xFC00) != 0xD800) { diff --git a/generic/tclUtil.c b/generic/tclUtil.c index e6576a5..0788aed 100644 --- a/generic/tclUtil.c +++ b/generic/tclUtil.c @@ -1654,7 +1654,7 @@ Tcl_Backslash( int *readPtr) /* Fill in with number of characters read from * src, unless NULL. */ { - char buf[TCL_UTF_MAX] = ""; + char buf[4] = ""; Tcl_UniChar ch = 0; Tcl_UtfBackslash(src, readPtr, buf); @@ -3726,7 +3726,7 @@ GetWideForIndex( /* objPtr holds an integer outside the signed wide range */ /* Truncate to the signed wide range. */ - *widePtr = mp_isneg((mp_int *)cd) ? WIDE_MIN : WIDE_MAX; + *widePtr = (((mp_int *)cd)->sign != MP_ZPOS) ? WIDE_MIN : WIDE_MAX; return TCL_OK; } @@ -3839,7 +3839,7 @@ GetWideForIndex( } else { /* sum holds an integer outside the signed wide range */ /* Truncate to the signed wide range. */ - if (mp_isneg((mp_int *)cd)) { + if (((mp_int *)cd)->sign != MP_ZPOS) { *widePtr = WIDE_MIN; } else { *widePtr = WIDE_MAX; @@ -3986,7 +3986,7 @@ GetEndOffsetFromObj( if (t == TCL_NUMBER_BIG) { /* Truncate to the signed wide range. */ - if (mp_isneg((mp_int *)cd)) { + if (((mp_int *)cd)->sign != MP_ZPOS) { offset = (bytes[3] == '-') ? WIDE_MAX : WIDE_MIN; } else { offset = (bytes[3] == '-') ? WIDE_MIN : WIDE_MAX; diff --git a/tests/binary.test b/tests/binary.test index aede659..973240f 100644 --- a/tests/binary.test +++ b/tests/binary.test @@ -2912,7 +2912,7 @@ test binary-77.2 {string cat ops on all bytearrays} { } [binary format H* abcd] test binary-78.1 {unicode (out of BMP) to byte-array conversion, bug-[bd94500678]} -body { - # just test for BO-segfault (high surrogate w/o advance source pointer for out of BMP char if TCL_UTF_MAX <= 4): + # just test for BO-segfault (high surrogate w/o advance source pointer for out of BMP char if TCL_UTF_MAX == 3): binary encode hex \U0001f415 binary scan \U0001f415 a* v; set v set str {} diff --git a/tests/util.test b/tests/util.test index 5079a89..a4cb8c5 100644 --- a/tests/util.test +++ b/tests/util.test @@ -22,6 +22,9 @@ testConstraint testconcatobj [llength [info commands testconcatobj]] testConstraint testdoubledigits [llength [info commands testdoubledigits]] testConstraint testprint [llength [info commands testprint]] +testConstraint precision [expr {![catch {set saved_precision $::tcl_precision}]}] + + # Big test for correct ordering of data in [expr] proc testIEEE {} { @@ -385,7 +388,7 @@ test util-5.51 {Tcl_StringMatch} { Wrapper_Tcl_StringMatch "" "" } 1 -test util-6.1 {Tcl_PrintDouble - using tcl_precision} -setup { +test util-6.1 {Tcl_PrintDouble - using tcl_precision} -constraints precision -setup { set old_precision $::tcl_precision set ::tcl_precision 12 } -body { @@ -393,7 +396,7 @@ test util-6.1 {Tcl_PrintDouble - using tcl_precision} -setup { } -cleanup { set ::tcl_precision $old_precision } -result {x1.4} -test util-6.2 {Tcl_PrintDouble - using tcl_precision} -setup { +test util-6.2 {Tcl_PrintDouble - using tcl_precision} -constraints precision -setup { set old_precision $::tcl_precision set ::tcl_precision 12 } -body { @@ -401,7 +404,7 @@ test util-6.2 {Tcl_PrintDouble - using tcl_precision} -setup { } -cleanup { set ::tcl_precision $old_precision } -result {x1.39999999999} -test util-6.3 {Tcl_PrintDouble - using tcl_precision} -setup { +test util-6.3 {Tcl_PrintDouble - using tcl_precision} -constraints precision -setup { set old_precision $::tcl_precision set ::tcl_precision 12 } -body { @@ -409,7 +412,7 @@ test util-6.3 {Tcl_PrintDouble - using tcl_precision} -setup { } -cleanup { set ::tcl_precision $old_precision } -result {x1.4} -test util-6.4 {Tcl_PrintDouble - using tcl_precision} -setup { +test util-6.4 {Tcl_PrintDouble - using tcl_precision} -constraints precision -setup { set old_precision $::tcl_precision set ::tcl_precision 5 } -body { @@ -424,7 +427,7 @@ test util-6.6 {Tcl_PrintDouble - make sure there's a decimal point} { concat x[expr 3.0e98] } {x3e+98} -test util-7.1 {TclPrecTraceProc - unset callbacks} -setup { +test util-7.1 {TclPrecTraceProc - unset callbacks} -constraints precision -setup { set old_precision $::tcl_precision } -body { set tcl_precision 7 @@ -434,7 +437,7 @@ test util-7.1 {TclPrecTraceProc - unset callbacks} -setup { } -cleanup { set ::tcl_precision $old_precision } -result {7 7} -test util-7.2 {TclPrecTraceProc - read traces, sharing among interpreters} -setup { +test util-7.2 {TclPrecTraceProc - read traces, sharing among interpreters} -constraints precision -setup { set old_precision $::tcl_precision } -body { set tcl_precision 12 @@ -446,7 +449,7 @@ test util-7.2 {TclPrecTraceProc - read traces, sharing among interpreters} -set } -cleanup { set ::tcl_precision $old_precision } -result {12 6} -test util-7.3 {TclPrecTraceProc - write traces, safe interpreters} -setup { +test util-7.3 {TclPrecTraceProc - write traces, safe interpreters} -constraints precision -setup { set old_precision $::tcl_precision } -body { set tcl_precision 12 @@ -459,7 +462,7 @@ test util-7.3 {TclPrecTraceProc - write traces, safe interpreters} -setup { } -cleanup { set ::tcl_precision $old_precision } -result {{1 {can't set "tcl_precision": can't modify precision from a safe interpreter}} 12} -test util-7.4 {TclPrecTraceProc - write traces, bogus values} -setup { +test util-7.4 {TclPrecTraceProc - write traces, bogus values} -constraints precision -setup { set old_precision $::tcl_precision } -body { set tcl_precision 12 @@ -2181,7 +2184,6 @@ test util-15.8 {smallest normal} {*}{ } } -set saved_precision $::tcl_precision foreach ::tcl_precision {0 12} { for {set e -312} {$e < -9} {incr e} { test util-16.1.$::tcl_precision.$e {shortening of numbers} \ @@ -2195,7 +2197,7 @@ for {set e -9} {$e < -4} {incr e} { } set tcl_precision 12 for {set e -9} {$e < -4} {incr e} { - test util-16.1.$::tcl_precision.$e {8.4 compatible formatting of doubles} \ + test util-16.1.$::tcl_precision.$e {8.4 compatible formatting of doubles} precision \ "expr 1.1e$e" 1.1e[format %+03d $e] } foreach ::tcl_precision {0 12} { @@ -2225,1828 +2227,1828 @@ foreach ::tcl_precision {0 12} { } } set tcl_precision 17 -test util-16.1.17.-300 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-300 {8.4 compatible formatting of doubles} precision \ {expr 1e-300} \ 1e-300 -test util-16.1.17.-299 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-299 {8.4 compatible formatting of doubles} precision \ {expr 1e-299} \ 9.9999999999999999e-300 -test util-16.1.17.-298 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-298 {8.4 compatible formatting of doubles} precision \ {expr 1e-298} \ 9.9999999999999991e-299 -test util-16.1.17.-297 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-297 {8.4 compatible formatting of doubles} precision \ {expr 1e-297} \ 1e-297 -test util-16.1.17.-296 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-296 {8.4 compatible formatting of doubles} precision \ {expr 1e-296} \ 1e-296 -test util-16.1.17.-295 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-295 {8.4 compatible formatting of doubles} precision \ {expr 1e-295} \ 1.0000000000000001e-295 -test util-16.1.17.-294 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-294 {8.4 compatible formatting of doubles} precision \ {expr 1e-294} \ 1e-294 -test util-16.1.17.-293 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-293 {8.4 compatible formatting of doubles} precision \ {expr 1e-293} \ 1.0000000000000001e-293 -test util-16.1.17.-292 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-292 {8.4 compatible formatting of doubles} precision \ {expr 1e-292} \ 1.0000000000000001e-292 -test util-16.1.17.-291 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-291 {8.4 compatible formatting of doubles} precision \ {expr 1e-291} \ 9.9999999999999996e-292 -test util-16.1.17.-290 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-290 {8.4 compatible formatting of doubles} precision \ {expr 1e-290} \ 1.0000000000000001e-290 -test util-16.1.17.-289 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-289 {8.4 compatible formatting of doubles} precision \ {expr 1e-289} \ 1e-289 -test util-16.1.17.-288 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-288 {8.4 compatible formatting of doubles} precision \ {expr 1e-288} \ 1.0000000000000001e-288 -test util-16.1.17.-287 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-287 {8.4 compatible formatting of doubles} precision \ {expr 1e-287} \ 1e-287 -test util-16.1.17.-286 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-286 {8.4 compatible formatting of doubles} precision \ {expr 1e-286} \ 1.0000000000000001e-286 -test util-16.1.17.-285 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-285 {8.4 compatible formatting of doubles} precision \ {expr 1e-285} \ 1.0000000000000001e-285 -test util-16.1.17.-284 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-284 {8.4 compatible formatting of doubles} precision \ {expr 1e-284} \ 1e-284 -test util-16.1.17.-283 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-283 {8.4 compatible formatting of doubles} precision \ {expr 1e-283} \ 9.9999999999999995e-284 -test util-16.1.17.-282 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-282 {8.4 compatible formatting of doubles} precision \ {expr 1e-282} \ 1e-282 -test util-16.1.17.-281 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-281 {8.4 compatible formatting of doubles} precision \ {expr 1e-281} \ 1e-281 -test util-16.1.17.-280 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-280 {8.4 compatible formatting of doubles} precision \ {expr 1e-280} \ 9.9999999999999996e-281 -test util-16.1.17.-279 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-279 {8.4 compatible formatting of doubles} precision \ {expr 1e-279} \ 1.0000000000000001e-279 -test util-16.1.17.-278 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-278 {8.4 compatible formatting of doubles} precision \ {expr 1e-278} \ 9.9999999999999994e-279 -test util-16.1.17.-277 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-277 {8.4 compatible formatting of doubles} precision \ {expr 1e-277} \ 9.9999999999999997e-278 -test util-16.1.17.-276 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-276 {8.4 compatible formatting of doubles} precision \ {expr 1e-276} \ 1.0000000000000001e-276 -test util-16.1.17.-275 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-275 {8.4 compatible formatting of doubles} precision \ {expr 1e-275} \ 9.9999999999999993e-276 -test util-16.1.17.-274 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-274 {8.4 compatible formatting of doubles} precision \ {expr 1e-274} \ 9.9999999999999997e-275 -test util-16.1.17.-273 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-273 {8.4 compatible formatting of doubles} precision \ {expr 1e-273} \ 1.0000000000000001e-273 -test util-16.1.17.-272 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-272 {8.4 compatible formatting of doubles} precision \ {expr 1e-272} \ 9.9999999999999993e-273 -test util-16.1.17.-271 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-271 {8.4 compatible formatting of doubles} precision \ {expr 1e-271} \ 9.9999999999999996e-272 -test util-16.1.17.-270 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-270 {8.4 compatible formatting of doubles} precision \ {expr 1e-270} \ 1e-270 -test util-16.1.17.-269 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-269 {8.4 compatible formatting of doubles} precision \ {expr 1e-269} \ 9.9999999999999996e-270 -test util-16.1.17.-268 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-268 {8.4 compatible formatting of doubles} precision \ {expr 1e-268} \ 9.9999999999999996e-269 -test util-16.1.17.-267 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-267 {8.4 compatible formatting of doubles} precision \ {expr 1e-267} \ 9.9999999999999998e-268 -test util-16.1.17.-266 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-266 {8.4 compatible formatting of doubles} precision \ {expr 1e-266} \ 9.9999999999999998e-267 -test util-16.1.17.-265 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-265 {8.4 compatible formatting of doubles} precision \ {expr 1e-265} \ 9.9999999999999998e-266 -test util-16.1.17.-264 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-264 {8.4 compatible formatting of doubles} precision \ {expr 1e-264} \ 1e-264 -test util-16.1.17.-263 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-263 {8.4 compatible formatting of doubles} precision \ {expr 1e-263} \ 1e-263 -test util-16.1.17.-262 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-262 {8.4 compatible formatting of doubles} precision \ {expr 1e-262} \ 1e-262 -test util-16.1.17.-261 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-261 {8.4 compatible formatting of doubles} precision \ {expr 1e-261} \ 9.9999999999999998e-262 -test util-16.1.17.-260 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-260 {8.4 compatible formatting of doubles} precision \ {expr 1e-260} \ 9.9999999999999996e-261 -test util-16.1.17.-259 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-259 {8.4 compatible formatting of doubles} precision \ {expr 1e-259} \ 1.0000000000000001e-259 -test util-16.1.17.-258 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-258 {8.4 compatible formatting of doubles} precision \ {expr 1e-258} \ 9.9999999999999995e-259 -test util-16.1.17.-257 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-257 {8.4 compatible formatting of doubles} precision \ {expr 1e-257} \ 9.9999999999999998e-258 -test util-16.1.17.-256 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-256 {8.4 compatible formatting of doubles} precision \ {expr 1e-256} \ 9.9999999999999998e-257 -test util-16.1.17.-255 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-255 {8.4 compatible formatting of doubles} precision \ {expr 1e-255} \ 1e-255 -test util-16.1.17.-254 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-254 {8.4 compatible formatting of doubles} precision \ {expr 1e-254} \ 9.9999999999999991e-255 -test util-16.1.17.-253 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-253 {8.4 compatible formatting of doubles} precision \ {expr 1e-253} \ 1.0000000000000001e-253 -test util-16.1.17.-252 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-252 {8.4 compatible formatting of doubles} precision \ {expr 1e-252} \ 9.9999999999999994e-253 -test util-16.1.17.-251 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-251 {8.4 compatible formatting of doubles} precision \ {expr 1e-251} \ 1e-251 -test util-16.1.17.-250 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-250 {8.4 compatible formatting of doubles} precision \ {expr 1e-250} \ 1.0000000000000001e-250 -test util-16.1.17.-249 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-249 {8.4 compatible formatting of doubles} precision \ {expr 1e-249} \ 1.0000000000000001e-249 -test util-16.1.17.-248 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-248 {8.4 compatible formatting of doubles} precision \ {expr 1e-248} \ 9.9999999999999998e-249 -test util-16.1.17.-247 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-247 {8.4 compatible formatting of doubles} precision \ {expr 1e-247} \ 1e-247 -test util-16.1.17.-246 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-246 {8.4 compatible formatting of doubles} precision \ {expr 1e-246} \ 9.9999999999999996e-247 -test util-16.1.17.-245 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-245 {8.4 compatible formatting of doubles} precision \ {expr 1e-245} \ 9.9999999999999993e-246 -test util-16.1.17.-244 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-244 {8.4 compatible formatting of doubles} precision \ {expr 1e-244} \ 9.9999999999999993e-245 -test util-16.1.17.-243 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-243 {8.4 compatible formatting of doubles} precision \ {expr 1e-243} \ 1e-243 -test util-16.1.17.-242 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-242 {8.4 compatible formatting of doubles} precision \ {expr 1e-242} \ 9.9999999999999997e-243 -test util-16.1.17.-241 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-241 {8.4 compatible formatting of doubles} precision \ {expr 1e-241} \ 9.9999999999999997e-242 -test util-16.1.17.-240 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-240 {8.4 compatible formatting of doubles} precision \ {expr 1e-240} \ 9.9999999999999997e-241 -test util-16.1.17.-239 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-239 {8.4 compatible formatting of doubles} precision \ {expr 1e-239} \ 1.0000000000000001e-239 -test util-16.1.17.-238 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-238 {8.4 compatible formatting of doubles} precision \ {expr 1e-238} \ 9.9999999999999999e-239 -test util-16.1.17.-237 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-237 {8.4 compatible formatting of doubles} precision \ {expr 1e-237} \ 9.9999999999999999e-238 -test util-16.1.17.-236 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-236 {8.4 compatible formatting of doubles} precision \ {expr 1e-236} \ 1e-236 -test util-16.1.17.-235 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-235 {8.4 compatible formatting of doubles} precision \ {expr 1e-235} \ 9.9999999999999996e-236 -test util-16.1.17.-234 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-234 {8.4 compatible formatting of doubles} precision \ {expr 1e-234} \ 9.9999999999999996e-235 -test util-16.1.17.-233 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-233 {8.4 compatible formatting of doubles} precision \ {expr 1e-233} \ 9.9999999999999996e-234 -test util-16.1.17.-232 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-232 {8.4 compatible formatting of doubles} precision \ {expr 1e-232} \ 1e-232 -test util-16.1.17.-231 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-231 {8.4 compatible formatting of doubles} precision \ {expr 1e-231} \ 9.9999999999999999e-232 -test util-16.1.17.-230 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-230 {8.4 compatible formatting of doubles} precision \ {expr 1e-230} \ 1e-230 -test util-16.1.17.-229 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-229 {8.4 compatible formatting of doubles} precision \ {expr 1e-229} \ 1.0000000000000001e-229 -test util-16.1.17.-228 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-228 {8.4 compatible formatting of doubles} precision \ {expr 1e-228} \ 1e-228 -test util-16.1.17.-227 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-227 {8.4 compatible formatting of doubles} precision \ {expr 1e-227} \ 9.9999999999999994e-228 -test util-16.1.17.-226 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-226 {8.4 compatible formatting of doubles} precision \ {expr 1e-226} \ 9.9999999999999992e-227 -test util-16.1.17.-225 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-225 {8.4 compatible formatting of doubles} precision \ {expr 1e-225} \ 9.9999999999999996e-226 -test util-16.1.17.-224 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-224 {8.4 compatible formatting of doubles} precision \ {expr 1e-224} \ 1e-224 -test util-16.1.17.-223 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-223 {8.4 compatible formatting of doubles} precision \ {expr 1e-223} \ 9.9999999999999997e-224 -test util-16.1.17.-222 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-222 {8.4 compatible formatting of doubles} precision \ {expr 1e-222} \ 1e-222 -test util-16.1.17.-221 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-221 {8.4 compatible formatting of doubles} precision \ {expr 1e-221} \ 1e-221 -test util-16.1.17.-220 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-220 {8.4 compatible formatting of doubles} precision \ {expr 1e-220} \ 9.9999999999999999e-221 -test util-16.1.17.-219 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-219 {8.4 compatible formatting of doubles} precision \ {expr 1e-219} \ 1e-219 -test util-16.1.17.-218 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-218 {8.4 compatible formatting of doubles} precision \ {expr 1e-218} \ 1e-218 -test util-16.1.17.-217 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-217 {8.4 compatible formatting of doubles} precision \ {expr 1e-217} \ 1.0000000000000001e-217 -test util-16.1.17.-216 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-216 {8.4 compatible formatting of doubles} precision \ {expr 1e-216} \ 1e-216 -test util-16.1.17.-215 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-215 {8.4 compatible formatting of doubles} precision \ {expr 1e-215} \ 1e-215 -test util-16.1.17.-214 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-214 {8.4 compatible formatting of doubles} precision \ {expr 1e-214} \ 9.9999999999999991e-215 -test util-16.1.17.-213 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-213 {8.4 compatible formatting of doubles} precision \ {expr 1e-213} \ 9.9999999999999995e-214 -test util-16.1.17.-212 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-212 {8.4 compatible formatting of doubles} precision \ {expr 1e-212} \ 9.9999999999999995e-213 -test util-16.1.17.-211 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-211 {8.4 compatible formatting of doubles} precision \ {expr 1e-211} \ 1.0000000000000001e-211 -test util-16.1.17.-210 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-210 {8.4 compatible formatting of doubles} precision \ {expr 1e-210} \ 1e-210 -test util-16.1.17.-209 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-209 {8.4 compatible formatting of doubles} precision \ {expr 1e-209} \ 1e-209 -test util-16.1.17.-208 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-208 {8.4 compatible formatting of doubles} precision \ {expr 1e-208} \ 1.0000000000000001e-208 -test util-16.1.17.-207 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-207 {8.4 compatible formatting of doubles} precision \ {expr 1e-207} \ 9.9999999999999993e-208 -test util-16.1.17.-206 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-206 {8.4 compatible formatting of doubles} precision \ {expr 1e-206} \ 1e-206 -test util-16.1.17.-205 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-205 {8.4 compatible formatting of doubles} precision \ {expr 1e-205} \ 1e-205 -test util-16.1.17.-204 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-204 {8.4 compatible formatting of doubles} precision \ {expr 1e-204} \ 1e-204 -test util-16.1.17.-203 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-203 {8.4 compatible formatting of doubles} precision \ {expr 1e-203} \ 1e-203 -test util-16.1.17.-202 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-202 {8.4 compatible formatting of doubles} precision \ {expr 1e-202} \ 1e-202 -test util-16.1.17.-201 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-201 {8.4 compatible formatting of doubles} precision \ {expr 1e-201} \ 9.9999999999999995e-202 -test util-16.1.17.-200 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-200 {8.4 compatible formatting of doubles} precision \ {expr 1e-200} \ 9.9999999999999998e-201 -test util-16.1.17.-199 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-199 {8.4 compatible formatting of doubles} precision \ {expr 1e-199} \ 9.9999999999999998e-200 -test util-16.1.17.-198 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-198 {8.4 compatible formatting of doubles} precision \ {expr 1e-198} \ 9.9999999999999991e-199 -test util-16.1.17.-197 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-197 {8.4 compatible formatting of doubles} precision \ {expr 1e-197} \ 9.9999999999999999e-198 -test util-16.1.17.-196 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-196 {8.4 compatible formatting of doubles} precision \ {expr 1e-196} \ 1e-196 -test util-16.1.17.-195 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-195 {8.4 compatible formatting of doubles} precision \ {expr 1e-195} \ 1.0000000000000001e-195 -test util-16.1.17.-194 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-194 {8.4 compatible formatting of doubles} precision \ {expr 1e-194} \ 1e-194 -test util-16.1.17.-193 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-193 {8.4 compatible formatting of doubles} precision \ {expr 1e-193} \ 1e-193 -test util-16.1.17.-192 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-192 {8.4 compatible formatting of doubles} precision \ {expr 1e-192} \ 1.0000000000000001e-192 -test util-16.1.17.-191 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-191 {8.4 compatible formatting of doubles} precision \ {expr 1e-191} \ 1e-191 -test util-16.1.17.-190 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-190 {8.4 compatible formatting of doubles} precision \ {expr 1e-190} \ 1e-190 -test util-16.1.17.-189 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-189 {8.4 compatible formatting of doubles} precision \ {expr 1e-189} \ 1.0000000000000001e-189 -test util-16.1.17.-188 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-188 {8.4 compatible formatting of doubles} precision \ {expr 1e-188} \ 9.9999999999999995e-189 -test util-16.1.17.-187 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-187 {8.4 compatible formatting of doubles} precision \ {expr 1e-187} \ 1e-187 -test util-16.1.17.-186 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-186 {8.4 compatible formatting of doubles} precision \ {expr 1e-186} \ 9.9999999999999991e-187 -test util-16.1.17.-185 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-185 {8.4 compatible formatting of doubles} precision \ {expr 1e-185} \ 9.9999999999999999e-186 -test util-16.1.17.-184 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-184 {8.4 compatible formatting of doubles} precision \ {expr 1e-184} \ 1.0000000000000001e-184 -test util-16.1.17.-183 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-183 {8.4 compatible formatting of doubles} precision \ {expr 1e-183} \ 1e-183 -test util-16.1.17.-182 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-182 {8.4 compatible formatting of doubles} precision \ {expr 1e-182} \ 1e-182 -test util-16.1.17.-181 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-181 {8.4 compatible formatting of doubles} precision \ {expr 1e-181} \ 1e-181 -test util-16.1.17.-180 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-180 {8.4 compatible formatting of doubles} precision \ {expr 1e-180} \ 1e-180 -test util-16.1.17.-179 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-179 {8.4 compatible formatting of doubles} precision \ {expr 1e-179} \ 1e-179 -test util-16.1.17.-178 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-178 {8.4 compatible formatting of doubles} precision \ {expr 1e-178} \ 9.9999999999999995e-179 -test util-16.1.17.-177 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-177 {8.4 compatible formatting of doubles} precision \ {expr 1e-177} \ 9.9999999999999995e-178 -test util-16.1.17.-176 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-176 {8.4 compatible formatting of doubles} precision \ {expr 1e-176} \ 1e-176 -test util-16.1.17.-175 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-175 {8.4 compatible formatting of doubles} precision \ {expr 1e-175} \ 1e-175 -test util-16.1.17.-174 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-174 {8.4 compatible formatting of doubles} precision \ {expr 1e-174} \ 1e-174 -test util-16.1.17.-173 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-173 {8.4 compatible formatting of doubles} precision \ {expr 1e-173} \ 1e-173 -test util-16.1.17.-172 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-172 {8.4 compatible formatting of doubles} precision \ {expr 1e-172} \ 1e-172 -test util-16.1.17.-171 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-171 {8.4 compatible formatting of doubles} precision \ {expr 1e-171} \ 9.9999999999999998e-172 -test util-16.1.17.-170 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-170 {8.4 compatible formatting of doubles} precision \ {expr 1e-170} \ 9.9999999999999998e-171 -test util-16.1.17.-169 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-169 {8.4 compatible formatting of doubles} precision \ {expr 1e-169} \ 1e-169 -test util-16.1.17.-168 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-168 {8.4 compatible formatting of doubles} precision \ {expr 1e-168} \ 1e-168 -test util-16.1.17.-167 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-167 {8.4 compatible formatting of doubles} precision \ {expr 1e-167} \ 1e-167 -test util-16.1.17.-166 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-166 {8.4 compatible formatting of doubles} precision \ {expr 1e-166} \ 1e-166 -test util-16.1.17.-165 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-165 {8.4 compatible formatting of doubles} precision \ {expr 1e-165} \ 1e-165 -test util-16.1.17.-164 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-164 {8.4 compatible formatting of doubles} precision \ {expr 1e-164} \ 9.9999999999999996e-165 -test util-16.1.17.-163 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-163 {8.4 compatible formatting of doubles} precision \ {expr 1e-163} \ 9.9999999999999992e-164 -test util-16.1.17.-162 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-162 {8.4 compatible formatting of doubles} precision \ {expr 1e-162} \ 9.9999999999999995e-163 -test util-16.1.17.-161 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-161 {8.4 compatible formatting of doubles} precision \ {expr 1e-161} \ 1e-161 -test util-16.1.17.-160 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-160 {8.4 compatible formatting of doubles} precision \ {expr 1e-160} \ 9.9999999999999999e-161 -test util-16.1.17.-159 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-159 {8.4 compatible formatting of doubles} precision \ {expr 1e-159} \ 9.9999999999999999e-160 -test util-16.1.17.-158 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-158 {8.4 compatible formatting of doubles} precision \ {expr 1e-158} \ 1.0000000000000001e-158 -test util-16.1.17.-157 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-157 {8.4 compatible formatting of doubles} precision \ {expr 1e-157} \ 9.9999999999999994e-158 -test util-16.1.17.-156 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-156 {8.4 compatible formatting of doubles} precision \ {expr 1e-156} \ 1e-156 -test util-16.1.17.-155 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-155 {8.4 compatible formatting of doubles} precision \ {expr 1e-155} \ 1e-155 -test util-16.1.17.-154 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-154 {8.4 compatible formatting of doubles} precision \ {expr 1e-154} \ 9.9999999999999997e-155 -test util-16.1.17.-153 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-153 {8.4 compatible formatting of doubles} precision \ {expr 1e-153} \ 1e-153 -test util-16.1.17.-152 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-152 {8.4 compatible formatting of doubles} precision \ {expr 1e-152} \ 1.0000000000000001e-152 -test util-16.1.17.-151 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-151 {8.4 compatible formatting of doubles} precision \ {expr 1e-151} \ 9.9999999999999994e-152 -test util-16.1.17.-150 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-150 {8.4 compatible formatting of doubles} precision \ {expr 1e-150} \ 1e-150 -test util-16.1.17.-149 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-149 {8.4 compatible formatting of doubles} precision \ {expr 1e-149} \ 9.9999999999999998e-150 -test util-16.1.17.-148 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-148 {8.4 compatible formatting of doubles} precision \ {expr 1e-148} \ 9.9999999999999994e-149 -test util-16.1.17.-147 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-147 {8.4 compatible formatting of doubles} precision \ {expr 1e-147} \ 9.9999999999999997e-148 -test util-16.1.17.-146 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-146 {8.4 compatible formatting of doubles} precision \ {expr 1e-146} \ 1e-146 -test util-16.1.17.-145 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-145 {8.4 compatible formatting of doubles} precision \ {expr 1e-145} \ 9.9999999999999991e-146 -test util-16.1.17.-144 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-144 {8.4 compatible formatting of doubles} precision \ {expr 1e-144} \ 9.9999999999999995e-145 -test util-16.1.17.-143 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-143 {8.4 compatible formatting of doubles} precision \ {expr 1e-143} \ 9.9999999999999995e-144 -test util-16.1.17.-142 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-142 {8.4 compatible formatting of doubles} precision \ {expr 1e-142} \ 1e-142 -test util-16.1.17.-141 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-141 {8.4 compatible formatting of doubles} precision \ {expr 1e-141} \ 1e-141 -test util-16.1.17.-140 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-140 {8.4 compatible formatting of doubles} precision \ {expr 1e-140} \ 9.9999999999999998e-141 -test util-16.1.17.-139 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-139 {8.4 compatible formatting of doubles} precision \ {expr 1e-139} \ 1e-139 -test util-16.1.17.-138 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-138 {8.4 compatible formatting of doubles} precision \ {expr 1e-138} \ 1.0000000000000001e-138 -test util-16.1.17.-137 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-137 {8.4 compatible formatting of doubles} precision \ {expr 1e-137} \ 9.9999999999999998e-138 -test util-16.1.17.-136 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-136 {8.4 compatible formatting of doubles} precision \ {expr 1e-136} \ 1e-136 -test util-16.1.17.-135 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-135 {8.4 compatible formatting of doubles} precision \ {expr 1e-135} \ 1e-135 -test util-16.1.17.-134 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-134 {8.4 compatible formatting of doubles} precision \ {expr 1e-134} \ 1e-134 -test util-16.1.17.-133 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-133 {8.4 compatible formatting of doubles} precision \ {expr 1e-133} \ 1.0000000000000001e-133 -test util-16.1.17.-132 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-132 {8.4 compatible formatting of doubles} precision \ {expr 1e-132} \ 9.9999999999999999e-133 -test util-16.1.17.-131 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-131 {8.4 compatible formatting of doubles} precision \ {expr 1e-131} \ 9.9999999999999999e-132 -test util-16.1.17.-130 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-130 {8.4 compatible formatting of doubles} precision \ {expr 1e-130} \ 1.0000000000000001e-130 -test util-16.1.17.-129 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-129 {8.4 compatible formatting of doubles} precision \ {expr 1e-129} \ 9.9999999999999993e-130 -test util-16.1.17.-128 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-128 {8.4 compatible formatting of doubles} precision \ {expr 1e-128} \ 1.0000000000000001e-128 -test util-16.1.17.-127 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-127 {8.4 compatible formatting of doubles} precision \ {expr 1e-127} \ 1e-127 -test util-16.1.17.-126 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-126 {8.4 compatible formatting of doubles} precision \ {expr 1e-126} \ 9.9999999999999995e-127 -test util-16.1.17.-125 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-125 {8.4 compatible formatting of doubles} precision \ {expr 1e-125} \ 1e-125 -test util-16.1.17.-124 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-124 {8.4 compatible formatting of doubles} precision \ {expr 1e-124} \ 9.9999999999999993e-125 -test util-16.1.17.-123 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-123 {8.4 compatible formatting of doubles} precision \ {expr 1e-123} \ 1.0000000000000001e-123 -test util-16.1.17.-122 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-122 {8.4 compatible formatting of doubles} precision \ {expr 1e-122} \ 1.0000000000000001e-122 -test util-16.1.17.-121 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-121 {8.4 compatible formatting of doubles} precision \ {expr 1e-121} \ 9.9999999999999998e-122 -test util-16.1.17.-120 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-120 {8.4 compatible formatting of doubles} precision \ {expr 1e-120} \ 9.9999999999999998e-121 -test util-16.1.17.-119 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-119 {8.4 compatible formatting of doubles} precision \ {expr 1e-119} \ 1e-119 -test util-16.1.17.-118 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-118 {8.4 compatible formatting of doubles} precision \ {expr 1e-118} \ 9.9999999999999999e-119 -test util-16.1.17.-117 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-117 {8.4 compatible formatting of doubles} precision \ {expr 1e-117} \ 1e-117 -test util-16.1.17.-116 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-116 {8.4 compatible formatting of doubles} precision \ {expr 1e-116} \ 9.9999999999999999e-117 -test util-16.1.17.-115 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-115 {8.4 compatible formatting of doubles} precision \ {expr 1e-115} \ 1.0000000000000001e-115 -test util-16.1.17.-114 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-114 {8.4 compatible formatting of doubles} precision \ {expr 1e-114} \ 1.0000000000000001e-114 -test util-16.1.17.-113 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-113 {8.4 compatible formatting of doubles} precision \ {expr 1e-113} \ 9.9999999999999998e-114 -test util-16.1.17.-112 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-112 {8.4 compatible formatting of doubles} precision \ {expr 1e-112} \ 9.9999999999999995e-113 -test util-16.1.17.-111 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-111 {8.4 compatible formatting of doubles} precision \ {expr 1e-111} \ 1.0000000000000001e-111 -test util-16.1.17.-110 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-110 {8.4 compatible formatting of doubles} precision \ {expr 1e-110} \ 1.0000000000000001e-110 -test util-16.1.17.-109 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-109 {8.4 compatible formatting of doubles} precision \ {expr 1e-109} \ 9.9999999999999999e-110 -test util-16.1.17.-108 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-108 {8.4 compatible formatting of doubles} precision \ {expr 1e-108} \ 1e-108 -test util-16.1.17.-107 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-107 {8.4 compatible formatting of doubles} precision \ {expr 1e-107} \ 1e-107 -test util-16.1.17.-106 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-106 {8.4 compatible formatting of doubles} precision \ {expr 1e-106} \ 9.9999999999999994e-107 -test util-16.1.17.-105 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-105 {8.4 compatible formatting of doubles} precision \ {expr 1e-105} \ 9.9999999999999997e-106 -test util-16.1.17.-104 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-104 {8.4 compatible formatting of doubles} precision \ {expr 1e-104} \ 9.9999999999999993e-105 -test util-16.1.17.-103 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-103 {8.4 compatible formatting of doubles} precision \ {expr 1e-103} \ 9.9999999999999996e-104 -test util-16.1.17.-102 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-102 {8.4 compatible formatting of doubles} precision \ {expr 1e-102} \ 9.9999999999999993e-103 -test util-16.1.17.-101 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-101 {8.4 compatible formatting of doubles} precision \ {expr 1e-101} \ 1.0000000000000001e-101 -test util-16.1.17.-100 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-100 {8.4 compatible formatting of doubles} precision \ {expr 1e-100} \ 1e-100 -test util-16.1.17.-99 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-99 {8.4 compatible formatting of doubles} precision \ {expr 1e-99} \ 1e-99 -test util-16.1.17.-98 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-98 {8.4 compatible formatting of doubles} precision \ {expr 1e-98} \ 9.9999999999999994e-99 -test util-16.1.17.-97 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-97 {8.4 compatible formatting of doubles} precision \ {expr 1e-97} \ 1e-97 -test util-16.1.17.-96 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-96 {8.4 compatible formatting of doubles} precision \ {expr 1e-96} \ 9.9999999999999991e-97 -test util-16.1.17.-95 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-95 {8.4 compatible formatting of doubles} precision \ {expr 1e-95} \ 9.9999999999999999e-96 -test util-16.1.17.-94 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-94 {8.4 compatible formatting of doubles} precision \ {expr 1e-94} \ 9.9999999999999996e-95 -test util-16.1.17.-93 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-93 {8.4 compatible formatting of doubles} precision \ {expr 1e-93} \ 9.999999999999999e-94 -test util-16.1.17.-92 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-92 {8.4 compatible formatting of doubles} precision \ {expr 1e-92} \ 9.9999999999999999e-93 -test util-16.1.17.-91 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-91 {8.4 compatible formatting of doubles} precision \ {expr 1e-91} \ 1e-91 -test util-16.1.17.-90 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-90 {8.4 compatible formatting of doubles} precision \ {expr 1e-90} \ 9.9999999999999999e-91 -test util-16.1.17.-89 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-89 {8.4 compatible formatting of doubles} precision \ {expr 1e-89} \ 1e-89 -test util-16.1.17.-88 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-88 {8.4 compatible formatting of doubles} precision \ {expr 1e-88} \ 9.9999999999999993e-89 -test util-16.1.17.-87 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-87 {8.4 compatible formatting of doubles} precision \ {expr 1e-87} \ 1e-87 -test util-16.1.17.-86 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-86 {8.4 compatible formatting of doubles} precision \ {expr 1e-86} \ 1.0000000000000001e-86 -test util-16.1.17.-85 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-85 {8.4 compatible formatting of doubles} precision \ {expr 1e-85} \ 9.9999999999999998e-86 -test util-16.1.17.-84 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-84 {8.4 compatible formatting of doubles} precision \ {expr 1e-84} \ 1e-84 -test util-16.1.17.-83 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-83 {8.4 compatible formatting of doubles} precision \ {expr 1e-83} \ 1e-83 -test util-16.1.17.-82 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-82 {8.4 compatible formatting of doubles} precision \ {expr 1e-82} \ 9.9999999999999996e-83 -test util-16.1.17.-81 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-81 {8.4 compatible formatting of doubles} precision \ {expr 1e-81} \ 9.9999999999999996e-82 -test util-16.1.17.-80 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-80 {8.4 compatible formatting of doubles} precision \ {expr 1e-80} \ 9.9999999999999996e-81 -test util-16.1.17.-79 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-79 {8.4 compatible formatting of doubles} precision \ {expr 1e-79} \ 1e-79 -test util-16.1.17.-78 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-78 {8.4 compatible formatting of doubles} precision \ {expr 1e-78} \ 1e-78 -test util-16.1.17.-77 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-77 {8.4 compatible formatting of doubles} precision \ {expr 1e-77} \ 9.9999999999999993e-78 -test util-16.1.17.-76 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-76 {8.4 compatible formatting of doubles} precision \ {expr 1e-76} \ 9.9999999999999993e-77 -test util-16.1.17.-75 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-75 {8.4 compatible formatting of doubles} precision \ {expr 1e-75} \ 9.9999999999999996e-76 -test util-16.1.17.-74 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-74 {8.4 compatible formatting of doubles} precision \ {expr 1e-74} \ 9.9999999999999996e-75 -test util-16.1.17.-73 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-73 {8.4 compatible formatting of doubles} precision \ {expr 1e-73} \ 1e-73 -test util-16.1.17.-72 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-72 {8.4 compatible formatting of doubles} precision \ {expr 1e-72} \ 9.9999999999999997e-73 -test util-16.1.17.-71 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-71 {8.4 compatible formatting of doubles} precision \ {expr 1e-71} \ 9.9999999999999992e-72 -test util-16.1.17.-70 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-70 {8.4 compatible formatting of doubles} precision \ {expr 1e-70} \ 1e-70 -test util-16.1.17.-69 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-69 {8.4 compatible formatting of doubles} precision \ {expr 1e-69} \ 9.9999999999999996e-70 -test util-16.1.17.-68 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-68 {8.4 compatible formatting of doubles} precision \ {expr 1e-68} \ 1.0000000000000001e-68 -test util-16.1.17.-67 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-67 {8.4 compatible formatting of doubles} precision \ {expr 1e-67} \ 9.9999999999999994e-68 -test util-16.1.17.-66 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-66 {8.4 compatible formatting of doubles} precision \ {expr 1e-66} \ 9.9999999999999998e-67 -test util-16.1.17.-65 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-65 {8.4 compatible formatting of doubles} precision \ {expr 1e-65} \ 9.9999999999999992e-66 -test util-16.1.17.-64 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-64 {8.4 compatible formatting of doubles} precision \ {expr 1e-64} \ 9.9999999999999997e-65 -test util-16.1.17.-63 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-63 {8.4 compatible formatting of doubles} precision \ {expr 1e-63} \ 1.0000000000000001e-63 -test util-16.1.17.-62 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-62 {8.4 compatible formatting of doubles} precision \ {expr 1e-62} \ 1e-62 -test util-16.1.17.-61 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-61 {8.4 compatible formatting of doubles} precision \ {expr 1e-61} \ 1e-61 -test util-16.1.17.-60 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-60 {8.4 compatible formatting of doubles} precision \ {expr 1e-60} \ 9.9999999999999997e-61 -test util-16.1.17.-59 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-59 {8.4 compatible formatting of doubles} precision \ {expr 1e-59} \ 1e-59 -test util-16.1.17.-58 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-58 {8.4 compatible formatting of doubles} precision \ {expr 1e-58} \ 1e-58 -test util-16.1.17.-57 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-57 {8.4 compatible formatting of doubles} precision \ {expr 1e-57} \ 9.9999999999999995e-58 -test util-16.1.17.-56 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-56 {8.4 compatible formatting of doubles} precision \ {expr 1e-56} \ 1e-56 -test util-16.1.17.-55 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-55 {8.4 compatible formatting of doubles} precision \ {expr 1e-55} \ 9.9999999999999999e-56 -test util-16.1.17.-54 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-54 {8.4 compatible formatting of doubles} precision \ {expr 1e-54} \ 1e-54 -test util-16.1.17.-53 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-53 {8.4 compatible formatting of doubles} precision \ {expr 1e-53} \ 1e-53 -test util-16.1.17.-52 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-52 {8.4 compatible formatting of doubles} precision \ {expr 1e-52} \ 1e-52 -test util-16.1.17.-51 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-51 {8.4 compatible formatting of doubles} precision \ {expr 1e-51} \ 1e-51 -test util-16.1.17.-50 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-50 {8.4 compatible formatting of doubles} precision \ {expr 1e-50} \ 1e-50 -test util-16.1.17.-49 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-49 {8.4 compatible formatting of doubles} precision \ {expr 1e-49} \ 9.9999999999999994e-50 -test util-16.1.17.-48 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-48 {8.4 compatible formatting of doubles} precision \ {expr 1e-48} \ 9.9999999999999997e-49 -test util-16.1.17.-47 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-47 {8.4 compatible formatting of doubles} precision \ {expr 1e-47} \ 9.9999999999999997e-48 -test util-16.1.17.-46 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-46 {8.4 compatible formatting of doubles} precision \ {expr 1e-46} \ 1e-46 -test util-16.1.17.-45 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-45 {8.4 compatible formatting of doubles} precision \ {expr 1e-45} \ 9.9999999999999998e-46 -test util-16.1.17.-44 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-44 {8.4 compatible formatting of doubles} precision \ {expr 1e-44} \ 9.9999999999999995e-45 -test util-16.1.17.-43 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-43 {8.4 compatible formatting of doubles} precision \ {expr 1e-43} \ 1.0000000000000001e-43 -test util-16.1.17.-42 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-42 {8.4 compatible formatting of doubles} precision \ {expr 1e-42} \ 1e-42 -test util-16.1.17.-41 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-41 {8.4 compatible formatting of doubles} precision \ {expr 1e-41} \ 1e-41 -test util-16.1.17.-40 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-40 {8.4 compatible formatting of doubles} precision \ {expr 1e-40} \ 9.9999999999999993e-41 -test util-16.1.17.-39 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-39 {8.4 compatible formatting of doubles} precision \ {expr 1e-39} \ 9.9999999999999993e-40 -test util-16.1.17.-38 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-38 {8.4 compatible formatting of doubles} precision \ {expr 1e-38} \ 9.9999999999999996e-39 -test util-16.1.17.-37 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-37 {8.4 compatible formatting of doubles} precision \ {expr 1e-37} \ 1.0000000000000001e-37 -test util-16.1.17.-36 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-36 {8.4 compatible formatting of doubles} precision \ {expr 1e-36} \ 9.9999999999999994e-37 -test util-16.1.17.-35 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-35 {8.4 compatible formatting of doubles} precision \ {expr 1e-35} \ 1e-35 -test util-16.1.17.-34 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-34 {8.4 compatible formatting of doubles} precision \ {expr 1e-34} \ 9.9999999999999993e-35 -test util-16.1.17.-33 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-33 {8.4 compatible formatting of doubles} precision \ {expr 1e-33} \ 1.0000000000000001e-33 -test util-16.1.17.-32 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-32 {8.4 compatible formatting of doubles} precision \ {expr 1e-32} \ 1.0000000000000001e-32 -test util-16.1.17.-31 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-31 {8.4 compatible formatting of doubles} precision \ {expr 1e-31} \ 1.0000000000000001e-31 -test util-16.1.17.-30 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-30 {8.4 compatible formatting of doubles} precision \ {expr 1e-30} \ 1.0000000000000001e-30 -test util-16.1.17.-29 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-29 {8.4 compatible formatting of doubles} precision \ {expr 1e-29} \ 9.9999999999999994e-30 -test util-16.1.17.-28 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-28 {8.4 compatible formatting of doubles} precision \ {expr 1e-28} \ 9.9999999999999997e-29 -test util-16.1.17.-27 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-27 {8.4 compatible formatting of doubles} precision \ {expr 1e-27} \ 1e-27 -test util-16.1.17.-26 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-26 {8.4 compatible formatting of doubles} precision \ {expr 1e-26} \ 1e-26 -test util-16.1.17.-25 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-25 {8.4 compatible formatting of doubles} precision \ {expr 1e-25} \ 1e-25 -test util-16.1.17.-24 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-24 {8.4 compatible formatting of doubles} precision \ {expr 1e-24} \ 9.9999999999999992e-25 -test util-16.1.17.-23 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-23 {8.4 compatible formatting of doubles} precision \ {expr 1e-23} \ 9.9999999999999996e-24 -test util-16.1.17.-22 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-22 {8.4 compatible formatting of doubles} precision \ {expr 1e-22} \ 1e-22 -test util-16.1.17.-21 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-21 {8.4 compatible formatting of doubles} precision \ {expr 1e-21} \ 9.9999999999999991e-22 -test util-16.1.17.-20 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-20 {8.4 compatible formatting of doubles} precision \ {expr 1e-20} \ 9.9999999999999995e-21 -test util-16.1.17.-19 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-19 {8.4 compatible formatting of doubles} precision \ {expr 1e-19} \ 9.9999999999999998e-20 -test util-16.1.17.-18 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-18 {8.4 compatible formatting of doubles} precision \ {expr 1e-18} \ 1.0000000000000001e-18 -test util-16.1.17.-17 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-17 {8.4 compatible formatting of doubles} precision \ {expr 1e-17} \ 1.0000000000000001e-17 -test util-16.1.17.-16 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-16 {8.4 compatible formatting of doubles} precision \ {expr 1e-16} \ 9.9999999999999998e-17 -test util-16.1.17.-15 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-15 {8.4 compatible formatting of doubles} precision \ {expr 1e-15} \ 1.0000000000000001e-15 -test util-16.1.17.-14 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-14 {8.4 compatible formatting of doubles} precision \ {expr 1e-14} \ 1e-14 -test util-16.1.17.-13 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-13 {8.4 compatible formatting of doubles} precision \ {expr 1e-13} \ 1e-13 -test util-16.1.17.-12 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-12 {8.4 compatible formatting of doubles} precision \ {expr 1e-12} \ 9.9999999999999998e-13 -test util-16.1.17.-11 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-11 {8.4 compatible formatting of doubles} precision \ {expr 1e-11} \ 9.9999999999999994e-12 -test util-16.1.17.-10 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-10 {8.4 compatible formatting of doubles} precision \ {expr 1e-10} \ 1e-10 -test util-16.1.17.-9 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-9 {8.4 compatible formatting of doubles} precision \ {expr 1e-9} \ 1.0000000000000001e-09 -test util-16.1.17.-8 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-8 {8.4 compatible formatting of doubles} precision \ {expr 1e-8} \ 1e-08 -test util-16.1.17.-7 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-7 {8.4 compatible formatting of doubles} precision \ {expr 1e-7} \ 9.9999999999999995e-08 -test util-16.1.17.-6 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-6 {8.4 compatible formatting of doubles} precision \ {expr 1e-6} \ 9.9999999999999995e-07 -test util-16.1.17.-5 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-5 {8.4 compatible formatting of doubles} precision \ {expr 1e-5} \ 1.0000000000000001e-05 -test util-16.1.17.-4 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-4 {8.4 compatible formatting of doubles} precision \ {expr 1e-4} \ 0.0001 -test util-16.1.17.-3 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-3 {8.4 compatible formatting of doubles} precision \ {expr 1e-3} \ 0.001 -test util-16.1.17.-2 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-2 {8.4 compatible formatting of doubles} precision \ {expr 1e-2} \ 0.01 -test util-16.1.17.-1 {8.4 compatible formatting of doubles} \ +test util-16.1.17.-1 {8.4 compatible formatting of doubles} precision \ {expr 1e-1} \ 0.10000000000000001 -test util-16.1.17.0 {8.4 compatible formatting of doubles} \ +test util-16.1.17.0 {8.4 compatible formatting of doubles} precision \ {expr 1e0} \ 1.0 -test util-16.1.17.1 {8.4 compatible formatting of doubles} \ +test util-16.1.17.1 {8.4 compatible formatting of doubles} precision \ {expr 1e1} \ 10.0 -test util-16.1.17.2 {8.4 compatible formatting of doubles} \ +test util-16.1.17.2 {8.4 compatible formatting of doubles} precision \ {expr 1e2} \ 100.0 -test util-16.1.17.3 {8.4 compatible formatting of doubles} \ +test util-16.1.17.3 {8.4 compatible formatting of doubles} precision \ {expr 1e3} \ 1000.0 -test util-16.1.17.4 {8.4 compatible formatting of doubles} \ +test util-16.1.17.4 {8.4 compatible formatting of doubles} precision \ {expr 1e4} \ 10000.0 -test util-16.1.17.5 {8.4 compatible formatting of doubles} \ +test util-16.1.17.5 {8.4 compatible formatting of doubles} precision \ {expr 1e5} \ 100000.0 -test util-16.1.17.6 {8.4 compatible formatting of doubles} \ +test util-16.1.17.6 {8.4 compatible formatting of doubles} precision \ {expr 1e6} \ 1000000.0 -test util-16.1.17.7 {8.4 compatible formatting of doubles} \ +test util-16.1.17.7 {8.4 compatible formatting of doubles} precision \ {expr 1e7} \ 10000000.0 -test util-16.1.17.8 {8.4 compatible formatting of doubles} \ +test util-16.1.17.8 {8.4 compatible formatting of doubles} precision \ {expr 1e8} \ 100000000.0 -test util-16.1.17.9 {8.4 compatible formatting of doubles} \ +test util-16.1.17.9 {8.4 compatible formatting of doubles} precision \ {expr 1e9} \ 1000000000.0 -test util-16.1.17.10 {8.4 compatible formatting of doubles} \ +test util-16.1.17.10 {8.4 compatible formatting of doubles} precision \ {expr 1e10} \ 10000000000.0 -test util-16.1.17.11 {8.4 compatible formatting of doubles} \ +test util-16.1.17.11 {8.4 compatible formatting of doubles} precision \ {expr 1e11} \ 100000000000.0 -test util-16.1.17.12 {8.4 compatible formatting of doubles} \ +test util-16.1.17.12 {8.4 compatible formatting of doubles} precision \ {expr 1e12} \ 1000000000000.0 -test util-16.1.17.13 {8.4 compatible formatting of doubles} \ +test util-16.1.17.13 {8.4 compatible formatting of doubles} precision \ {expr 1e13} \ 10000000000000.0 -test util-16.1.17.14 {8.4 compatible formatting of doubles} \ +test util-16.1.17.14 {8.4 compatible formatting of doubles} precision \ {expr 1e14} \ 100000000000000.0 -test util-16.1.17.15 {8.4 compatible formatting of doubles} \ +test util-16.1.17.15 {8.4 compatible formatting of doubles} precision \ {expr 1e15} \ 1000000000000000.0 -test util-16.1.17.16 {8.4 compatible formatting of doubles} \ +test util-16.1.17.16 {8.4 compatible formatting of doubles} precision \ {expr 1e16} \ 10000000000000000.0 -test util-16.1.17.17 {8.4 compatible formatting of doubles} \ +test util-16.1.17.17 {8.4 compatible formatting of doubles} precision \ {expr 1e17} \ 1e+17 -test util-16.1.17.18 {8.4 compatible formatting of doubles} \ +test util-16.1.17.18 {8.4 compatible formatting of doubles} precision \ {expr 1e18} \ 1e+18 -test util-16.1.17.19 {8.4 compatible formatting of doubles} \ +test util-16.1.17.19 {8.4 compatible formatting of doubles} precision \ {expr 1e19} \ 1e+19 -test util-16.1.17.20 {8.4 compatible formatting of doubles} \ +test util-16.1.17.20 {8.4 compatible formatting of doubles} precision \ {expr 1e20} \ 1e+20 -test util-16.1.17.21 {8.4 compatible formatting of doubles} \ +test util-16.1.17.21 {8.4 compatible formatting of doubles} precision \ {expr 1e21} \ 1e+21 -test util-16.1.17.22 {8.4 compatible formatting of doubles} \ +test util-16.1.17.22 {8.4 compatible formatting of doubles} precision \ {expr 1e22} \ 1e+22 -test util-16.1.17.23 {8.4 compatible formatting of doubles} \ +test util-16.1.17.23 {8.4 compatible formatting of doubles} precision \ {expr 1e23} \ 9.9999999999999992e+22 -test util-16.1.17.24 {8.4 compatible formatting of doubles} \ +test util-16.1.17.24 {8.4 compatible formatting of doubles} precision \ {expr 1e24} \ 9.9999999999999998e+23 -test util-16.1.17.25 {8.4 compatible formatting of doubles} \ +test util-16.1.17.25 {8.4 compatible formatting of doubles} precision \ {expr 1e25} \ 1.0000000000000001e+25 -test util-16.1.17.26 {8.4 compatible formatting of doubles} \ +test util-16.1.17.26 {8.4 compatible formatting of doubles} precision \ {expr 1e26} \ 1e+26 -test util-16.1.17.27 {8.4 compatible formatting of doubles} \ +test util-16.1.17.27 {8.4 compatible formatting of doubles} precision \ {expr 1e27} \ 1e+27 -test util-16.1.17.28 {8.4 compatible formatting of doubles} \ +test util-16.1.17.28 {8.4 compatible formatting of doubles} precision \ {expr 1e28} \ 9.9999999999999996e+27 -test util-16.1.17.29 {8.4 compatible formatting of doubles} \ +test util-16.1.17.29 {8.4 compatible formatting of doubles} precision \ {expr 1e29} \ 9.9999999999999991e+28 -test util-16.1.17.30 {8.4 compatible formatting of doubles} \ +test util-16.1.17.30 {8.4 compatible formatting of doubles} precision \ {expr 1e30} \ 1e+30 -test util-16.1.17.31 {8.4 compatible formatting of doubles} \ +test util-16.1.17.31 {8.4 compatible formatting of doubles} precision \ {expr 1e31} \ 9.9999999999999996e+30 -test util-16.1.17.32 {8.4 compatible formatting of doubles} \ +test util-16.1.17.32 {8.4 compatible formatting of doubles} precision \ {expr 1e32} \ 1.0000000000000001e+32 -test util-16.1.17.33 {8.4 compatible formatting of doubles} \ +test util-16.1.17.33 {8.4 compatible formatting of doubles} precision \ {expr 1e33} \ 9.9999999999999995e+32 -test util-16.1.17.34 {8.4 compatible formatting of doubles} \ +test util-16.1.17.34 {8.4 compatible formatting of doubles} precision \ {expr 1e34} \ 9.9999999999999995e+33 -test util-16.1.17.35 {8.4 compatible formatting of doubles} \ +test util-16.1.17.35 {8.4 compatible formatting of doubles} precision \ {expr 1e35} \ 9.9999999999999997e+34 -test util-16.1.17.36 {8.4 compatible formatting of doubles} \ +test util-16.1.17.36 {8.4 compatible formatting of doubles} precision \ {expr 1e36} \ 1e+36 -test util-16.1.17.37 {8.4 compatible formatting of doubles} \ +test util-16.1.17.37 {8.4 compatible formatting of doubles} precision \ {expr 1e37} \ 9.9999999999999995e+36 -test util-16.1.17.38 {8.4 compatible formatting of doubles} \ +test util-16.1.17.38 {8.4 compatible formatting of doubles} precision \ {expr 1e38} \ 9.9999999999999998e+37 -test util-16.1.17.39 {8.4 compatible formatting of doubles} \ +test util-16.1.17.39 {8.4 compatible formatting of doubles} precision \ {expr 1e39} \ 9.9999999999999994e+38 -test util-16.1.17.40 {8.4 compatible formatting of doubles} \ +test util-16.1.17.40 {8.4 compatible formatting of doubles} precision \ {expr 1e40} \ 1e+40 -test util-16.1.17.41 {8.4 compatible formatting of doubles} \ +test util-16.1.17.41 {8.4 compatible formatting of doubles} precision \ {expr 1e41} \ 1e+41 -test util-16.1.17.42 {8.4 compatible formatting of doubles} \ +test util-16.1.17.42 {8.4 compatible formatting of doubles} precision \ {expr 1e42} \ 1e+42 -test util-16.1.17.43 {8.4 compatible formatting of doubles} \ +test util-16.1.17.43 {8.4 compatible formatting of doubles} precision \ {expr 1e43} \ 1e+43 -test util-16.1.17.44 {8.4 compatible formatting of doubles} \ +test util-16.1.17.44 {8.4 compatible formatting of doubles} precision \ {expr 1e44} \ 1.0000000000000001e+44 -test util-16.1.17.45 {8.4 compatible formatting of doubles} \ +test util-16.1.17.45 {8.4 compatible formatting of doubles} precision \ {expr 1e45} \ 9.9999999999999993e+44 -test util-16.1.17.46 {8.4 compatible formatting of doubles} \ +test util-16.1.17.46 {8.4 compatible formatting of doubles} precision \ {expr 1e46} \ 9.9999999999999999e+45 -test util-16.1.17.47 {8.4 compatible formatting of doubles} \ +test util-16.1.17.47 {8.4 compatible formatting of doubles} precision \ {expr 1e47} \ 1e+47 -test util-16.1.17.48 {8.4 compatible formatting of doubles} \ +test util-16.1.17.48 {8.4 compatible formatting of doubles} precision \ {expr 1e48} \ 1e+48 -test util-16.1.17.49 {8.4 compatible formatting of doubles} \ +test util-16.1.17.49 {8.4 compatible formatting of doubles} precision \ {expr 1e49} \ 9.9999999999999995e+48 -test util-16.1.17.50 {8.4 compatible formatting of doubles} \ +test util-16.1.17.50 {8.4 compatible formatting of doubles} precision \ {expr 1e50} \ 1.0000000000000001e+50 -test util-16.1.17.51 {8.4 compatible formatting of doubles} \ +test util-16.1.17.51 {8.4 compatible formatting of doubles} precision \ {expr 1e51} \ 9.9999999999999999e+50 -test util-16.1.17.52 {8.4 compatible formatting of doubles} \ +test util-16.1.17.52 {8.4 compatible formatting of doubles} precision \ {expr 1e52} \ 9.9999999999999999e+51 -test util-16.1.17.53 {8.4 compatible formatting of doubles} \ +test util-16.1.17.53 {8.4 compatible formatting of doubles} precision \ {expr 1e53} \ 9.9999999999999999e+52 -test util-16.1.17.54 {8.4 compatible formatting of doubles} \ +test util-16.1.17.54 {8.4 compatible formatting of doubles} precision \ {expr 1e54} \ 1.0000000000000001e+54 -test util-16.1.17.55 {8.4 compatible formatting of doubles} \ +test util-16.1.17.55 {8.4 compatible formatting of doubles} precision \ {expr 1e55} \ 1e+55 -test util-16.1.17.56 {8.4 compatible formatting of doubles} \ +test util-16.1.17.56 {8.4 compatible formatting of doubles} precision \ {expr 1e56} \ 1.0000000000000001e+56 -test util-16.1.17.57 {8.4 compatible formatting of doubles} \ +test util-16.1.17.57 {8.4 compatible formatting of doubles} precision \ {expr 1e57} \ 1e+57 -test util-16.1.17.58 {8.4 compatible formatting of doubles} \ +test util-16.1.17.58 {8.4 compatible formatting of doubles} precision \ {expr 1e58} \ 9.9999999999999994e+57 -test util-16.1.17.59 {8.4 compatible formatting of doubles} \ +test util-16.1.17.59 {8.4 compatible formatting of doubles} precision \ {expr 1e59} \ 9.9999999999999997e+58 -test util-16.1.17.60 {8.4 compatible formatting of doubles} \ +test util-16.1.17.60 {8.4 compatible formatting of doubles} precision \ {expr 1e60} \ 9.9999999999999995e+59 -test util-16.1.17.61 {8.4 compatible formatting of doubles} \ +test util-16.1.17.61 {8.4 compatible formatting of doubles} precision \ {expr 1e61} \ 9.9999999999999995e+60 -test util-16.1.17.62 {8.4 compatible formatting of doubles} \ +test util-16.1.17.62 {8.4 compatible formatting of doubles} precision \ {expr 1e62} \ 1e+62 -test util-16.1.17.63 {8.4 compatible formatting of doubles} \ +test util-16.1.17.63 {8.4 compatible formatting of doubles} precision \ {expr 1e63} \ 1.0000000000000001e+63 -test util-16.1.17.64 {8.4 compatible formatting of doubles} \ +test util-16.1.17.64 {8.4 compatible formatting of doubles} precision \ {expr 1e64} \ 1e+64 -test util-16.1.17.65 {8.4 compatible formatting of doubles} \ +test util-16.1.17.65 {8.4 compatible formatting of doubles} precision \ {expr 1e65} \ 9.9999999999999999e+64 -test util-16.1.17.66 {8.4 compatible formatting of doubles} \ +test util-16.1.17.66 {8.4 compatible formatting of doubles} precision \ {expr 1e66} \ 9.9999999999999995e+65 -test util-16.1.17.67 {8.4 compatible formatting of doubles} \ +test util-16.1.17.67 {8.4 compatible formatting of doubles} precision \ {expr 1e67} \ 9.9999999999999998e+66 -test util-16.1.17.68 {8.4 compatible formatting of doubles} \ +test util-16.1.17.68 {8.4 compatible formatting of doubles} precision \ {expr 1e68} \ 9.9999999999999995e+67 -test util-16.1.17.69 {8.4 compatible formatting of doubles} \ +test util-16.1.17.69 {8.4 compatible formatting of doubles} precision \ {expr 1e69} \ 1.0000000000000001e+69 -test util-16.1.17.70 {8.4 compatible formatting of doubles} \ +test util-16.1.17.70 {8.4 compatible formatting of doubles} precision \ {expr 1e70} \ 1.0000000000000001e+70 -test util-16.1.17.71 {8.4 compatible formatting of doubles} \ +test util-16.1.17.71 {8.4 compatible formatting of doubles} precision \ {expr 1e71} \ 1e+71 -test util-16.1.17.72 {8.4 compatible formatting of doubles} \ +test util-16.1.17.72 {8.4 compatible formatting of doubles} precision \ {expr 1e72} \ 9.9999999999999994e+71 -test util-16.1.17.73 {8.4 compatible formatting of doubles} \ +test util-16.1.17.73 {8.4 compatible formatting of doubles} precision \ {expr 1e73} \ 9.9999999999999998e+72 -test util-16.1.17.74 {8.4 compatible formatting of doubles} \ +test util-16.1.17.74 {8.4 compatible formatting of doubles} precision \ {expr 1e74} \ 9.9999999999999995e+73 -test util-16.1.17.75 {8.4 compatible formatting of doubles} \ +test util-16.1.17.75 {8.4 compatible formatting of doubles} precision \ {expr 1e75} \ 9.9999999999999993e+74 -test util-16.1.17.76 {8.4 compatible formatting of doubles} \ +test util-16.1.17.76 {8.4 compatible formatting of doubles} precision \ {expr 1e76} \ 1e+76 -test util-16.1.17.77 {8.4 compatible formatting of doubles} \ +test util-16.1.17.77 {8.4 compatible formatting of doubles} precision \ {expr 1e77} \ 9.9999999999999998e+76 -test util-16.1.17.78 {8.4 compatible formatting of doubles} \ +test util-16.1.17.78 {8.4 compatible formatting of doubles} precision \ {expr 1e78} \ 1e+78 -test util-16.1.17.79 {8.4 compatible formatting of doubles} \ +test util-16.1.17.79 {8.4 compatible formatting of doubles} precision \ {expr 1e79} \ 9.9999999999999997e+78 -test util-16.1.17.80 {8.4 compatible formatting of doubles} \ +test util-16.1.17.80 {8.4 compatible formatting of doubles} precision \ {expr 1e80} \ 1e+80 -test util-16.1.17.81 {8.4 compatible formatting of doubles} \ +test util-16.1.17.81 {8.4 compatible formatting of doubles} precision \ {expr 1e81} \ 9.9999999999999992e+80 -test util-16.1.17.82 {8.4 compatible formatting of doubles} \ +test util-16.1.17.82 {8.4 compatible formatting of doubles} precision \ {expr 1e82} \ 9.9999999999999996e+81 -test util-16.1.17.83 {8.4 compatible formatting of doubles} \ +test util-16.1.17.83 {8.4 compatible formatting of doubles} precision \ {expr 1e83} \ 1e+83 -test util-16.1.17.84 {8.4 compatible formatting of doubles} \ +test util-16.1.17.84 {8.4 compatible formatting of doubles} precision \ {expr 1e84} \ 1.0000000000000001e+84 -test util-16.1.17.85 {8.4 compatible formatting of doubles} \ +test util-16.1.17.85 {8.4 compatible formatting of doubles} precision \ {expr 1e85} \ 1e+85 -test util-16.1.17.86 {8.4 compatible formatting of doubles} \ +test util-16.1.17.86 {8.4 compatible formatting of doubles} precision \ {expr 1e86} \ 1e+86 -test util-16.1.17.87 {8.4 compatible formatting of doubles} \ +test util-16.1.17.87 {8.4 compatible formatting of doubles} precision \ {expr 1e87} \ 9.9999999999999996e+86 -test util-16.1.17.88 {8.4 compatible formatting of doubles} \ +test util-16.1.17.88 {8.4 compatible formatting of doubles} precision \ {expr 1e88} \ 9.9999999999999996e+87 -test util-16.1.17.89 {8.4 compatible formatting of doubles} \ +test util-16.1.17.89 {8.4 compatible formatting of doubles} precision \ {expr 1e89} \ 9.9999999999999999e+88 -test util-16.1.17.90 {8.4 compatible formatting of doubles} \ +test util-16.1.17.90 {8.4 compatible formatting of doubles} precision \ {expr 1e90} \ 9.9999999999999997e+89 -test util-16.1.17.91 {8.4 compatible formatting of doubles} \ +test util-16.1.17.91 {8.4 compatible formatting of doubles} precision \ {expr 1e91} \ 1.0000000000000001e+91 -test util-16.1.17.92 {8.4 compatible formatting of doubles} \ +test util-16.1.17.92 {8.4 compatible formatting of doubles} precision \ {expr 1e92} \ 1e+92 -test util-16.1.17.93 {8.4 compatible formatting of doubles} \ +test util-16.1.17.93 {8.4 compatible formatting of doubles} precision \ {expr 1e93} \ 1e+93 -test util-16.1.17.94 {8.4 compatible formatting of doubles} \ +test util-16.1.17.94 {8.4 compatible formatting of doubles} precision \ {expr 1e94} \ 1e+94 -test util-16.1.17.95 {8.4 compatible formatting of doubles} \ +test util-16.1.17.95 {8.4 compatible formatting of doubles} precision \ {expr 1e95} \ 1e+95 -test util-16.1.17.96 {8.4 compatible formatting of doubles} \ +test util-16.1.17.96 {8.4 compatible formatting of doubles} precision \ {expr 1e96} \ 1e+96 -test util-16.1.17.97 {8.4 compatible formatting of doubles} \ +test util-16.1.17.97 {8.4 compatible formatting of doubles} precision \ {expr 1e97} \ 1.0000000000000001e+97 -test util-16.1.17.98 {8.4 compatible formatting of doubles} \ +test util-16.1.17.98 {8.4 compatible formatting of doubles} precision \ {expr 1e98} \ 1e+98 -test util-16.1.17.99 {8.4 compatible formatting of doubles} \ +test util-16.1.17.99 {8.4 compatible formatting of doubles} precision \ {expr 1e99} \ 9.9999999999999997e+98 -test util-16.1.17.100 {8.4 compatible formatting of doubles} \ +test util-16.1.17.100 {8.4 compatible formatting of doubles} precision \ {expr 1e100} \ 1e+100 -test util-16.1.17.101 {8.4 compatible formatting of doubles} \ +test util-16.1.17.101 {8.4 compatible formatting of doubles} precision \ {expr 1e101} \ 9.9999999999999998e+100 -test util-16.1.17.102 {8.4 compatible formatting of doubles} \ +test util-16.1.17.102 {8.4 compatible formatting of doubles} precision \ {expr 1e102} \ 9.9999999999999998e+101 -test util-16.1.17.103 {8.4 compatible formatting of doubles} \ +test util-16.1.17.103 {8.4 compatible formatting of doubles} precision \ {expr 1e103} \ 1e+103 -test util-16.1.17.104 {8.4 compatible formatting of doubles} \ +test util-16.1.17.104 {8.4 compatible formatting of doubles} precision \ {expr 1e104} \ 1e+104 -test util-16.1.17.105 {8.4 compatible formatting of doubles} \ +test util-16.1.17.105 {8.4 compatible formatting of doubles} precision \ {expr 1e105} \ 9.9999999999999994e+104 -test util-16.1.17.106 {8.4 compatible formatting of doubles} \ +test util-16.1.17.106 {8.4 compatible formatting of doubles} precision \ {expr 1e106} \ 1.0000000000000001e+106 -test util-16.1.17.107 {8.4 compatible formatting of doubles} \ +test util-16.1.17.107 {8.4 compatible formatting of doubles} precision \ {expr 1e107} \ 9.9999999999999997e+106 -test util-16.1.17.108 {8.4 compatible formatting of doubles} \ +test util-16.1.17.108 {8.4 compatible formatting of doubles} precision \ {expr 1e108} \ 1e+108 -test util-16.1.17.109 {8.4 compatible formatting of doubles} \ +test util-16.1.17.109 {8.4 compatible formatting of doubles} precision \ {expr 1e109} \ 9.9999999999999998e+108 -test util-16.1.17.110 {8.4 compatible formatting of doubles} \ +test util-16.1.17.110 {8.4 compatible formatting of doubles} precision \ {expr 1e110} \ 1e+110 -test util-16.1.17.111 {8.4 compatible formatting of doubles} \ +test util-16.1.17.111 {8.4 compatible formatting of doubles} precision \ {expr 1e111} \ 9.9999999999999996e+110 -test util-16.1.17.112 {8.4 compatible formatting of doubles} \ +test util-16.1.17.112 {8.4 compatible formatting of doubles} precision \ {expr 1e112} \ 9.9999999999999993e+111 -test util-16.1.17.113 {8.4 compatible formatting of doubles} \ +test util-16.1.17.113 {8.4 compatible formatting of doubles} precision \ {expr 1e113} \ 1e+113 -test util-16.1.17.114 {8.4 compatible formatting of doubles} \ +test util-16.1.17.114 {8.4 compatible formatting of doubles} precision \ {expr 1e114} \ 1e+114 -test util-16.1.17.115 {8.4 compatible formatting of doubles} \ +test util-16.1.17.115 {8.4 compatible formatting of doubles} precision \ {expr 1e115} \ 1e+115 -test util-16.1.17.116 {8.4 compatible formatting of doubles} \ +test util-16.1.17.116 {8.4 compatible formatting of doubles} precision \ {expr 1e116} \ 1e+116 -test util-16.1.17.117 {8.4 compatible formatting of doubles} \ +test util-16.1.17.117 {8.4 compatible formatting of doubles} precision \ {expr 1e117} \ 1.0000000000000001e+117 -test util-16.1.17.118 {8.4 compatible formatting of doubles} \ +test util-16.1.17.118 {8.4 compatible formatting of doubles} precision \ {expr 1e118} \ 9.9999999999999997e+117 -test util-16.1.17.119 {8.4 compatible formatting of doubles} \ +test util-16.1.17.119 {8.4 compatible formatting of doubles} precision \ {expr 1e119} \ 9.9999999999999994e+118 -test util-16.1.17.120 {8.4 compatible formatting of doubles} \ +test util-16.1.17.120 {8.4 compatible formatting of doubles} precision \ {expr 1e120} \ 9.9999999999999998e+119 -test util-16.1.17.121 {8.4 compatible formatting of doubles} \ +test util-16.1.17.121 {8.4 compatible formatting of doubles} precision \ {expr 1e121} \ 1e+121 -test util-16.1.17.122 {8.4 compatible formatting of doubles} \ +test util-16.1.17.122 {8.4 compatible formatting of doubles} precision \ {expr 1e122} \ 1e+122 -test util-16.1.17.123 {8.4 compatible formatting of doubles} \ +test util-16.1.17.123 {8.4 compatible formatting of doubles} precision \ {expr 1e123} \ 9.9999999999999998e+122 -test util-16.1.17.124 {8.4 compatible formatting of doubles} \ +test util-16.1.17.124 {8.4 compatible formatting of doubles} precision \ {expr 1e124} \ 9.9999999999999995e+123 -test util-16.1.17.125 {8.4 compatible formatting of doubles} \ +test util-16.1.17.125 {8.4 compatible formatting of doubles} precision \ {expr 1e125} \ 9.9999999999999992e+124 -test util-16.1.17.126 {8.4 compatible formatting of doubles} \ +test util-16.1.17.126 {8.4 compatible formatting of doubles} precision \ {expr 1e126} \ 9.9999999999999992e+125 -test util-16.1.17.127 {8.4 compatible formatting of doubles} \ +test util-16.1.17.127 {8.4 compatible formatting of doubles} precision \ {expr 1e127} \ 9.9999999999999995e+126 -test util-16.1.17.128 {8.4 compatible formatting of doubles} \ +test util-16.1.17.128 {8.4 compatible formatting of doubles} precision \ {expr 1e128} \ 1.0000000000000001e+128 -test util-16.1.17.129 {8.4 compatible formatting of doubles} \ +test util-16.1.17.129 {8.4 compatible formatting of doubles} precision \ {expr 1e129} \ 1e+129 -test util-16.1.17.130 {8.4 compatible formatting of doubles} \ +test util-16.1.17.130 {8.4 compatible formatting of doubles} precision \ {expr 1e130} \ 1.0000000000000001e+130 -test util-16.1.17.131 {8.4 compatible formatting of doubles} \ +test util-16.1.17.131 {8.4 compatible formatting of doubles} precision \ {expr 1e131} \ 9.9999999999999991e+130 -test util-16.1.17.132 {8.4 compatible formatting of doubles} \ +test util-16.1.17.132 {8.4 compatible formatting of doubles} precision \ {expr 1e132} \ 9.9999999999999999e+131 -test util-16.1.17.133 {8.4 compatible formatting of doubles} \ +test util-16.1.17.133 {8.4 compatible formatting of doubles} precision \ {expr 1e133} \ 1e+133 -test util-16.1.17.134 {8.4 compatible formatting of doubles} \ +test util-16.1.17.134 {8.4 compatible formatting of doubles} precision \ {expr 1e134} \ 9.9999999999999992e+133 -test util-16.1.17.135 {8.4 compatible formatting of doubles} \ +test util-16.1.17.135 {8.4 compatible formatting of doubles} precision \ {expr 1e135} \ 9.9999999999999996e+134 -test util-16.1.17.136 {8.4 compatible formatting of doubles} \ +test util-16.1.17.136 {8.4 compatible formatting of doubles} precision \ {expr 1e136} \ 1.0000000000000001e+136 -test util-16.1.17.137 {8.4 compatible formatting of doubles} \ +test util-16.1.17.137 {8.4 compatible formatting of doubles} precision \ {expr 1e137} \ 1e+137 -test util-16.1.17.138 {8.4 compatible formatting of doubles} \ +test util-16.1.17.138 {8.4 compatible formatting of doubles} precision \ {expr 1e138} \ 1e+138 -test util-16.1.17.139 {8.4 compatible formatting of doubles} \ +test util-16.1.17.139 {8.4 compatible formatting of doubles} precision \ {expr 1e139} \ 1e+139 -test util-16.1.17.140 {8.4 compatible formatting of doubles} \ +test util-16.1.17.140 {8.4 compatible formatting of doubles} precision \ {expr 1e140} \ 1.0000000000000001e+140 -test util-16.1.17.141 {8.4 compatible formatting of doubles} \ +test util-16.1.17.141 {8.4 compatible formatting of doubles} precision \ {expr 1e141} \ 1e+141 -test util-16.1.17.142 {8.4 compatible formatting of doubles} \ +test util-16.1.17.142 {8.4 compatible formatting of doubles} precision \ {expr 1e142} \ 1.0000000000000001e+142 -test util-16.1.17.143 {8.4 compatible formatting of doubles} \ +test util-16.1.17.143 {8.4 compatible formatting of doubles} precision \ {expr 1e143} \ 1e+143 -test util-16.1.17.144 {8.4 compatible formatting of doubles} \ +test util-16.1.17.144 {8.4 compatible formatting of doubles} precision \ {expr 1e144} \ 1e+144 -test util-16.1.17.145 {8.4 compatible formatting of doubles} \ +test util-16.1.17.145 {8.4 compatible formatting of doubles} precision \ {expr 1e145} \ 9.9999999999999999e+144 -test util-16.1.17.146 {8.4 compatible formatting of doubles} \ +test util-16.1.17.146 {8.4 compatible formatting of doubles} precision \ {expr 1e146} \ 9.9999999999999993e+145 -test util-16.1.17.147 {8.4 compatible formatting of doubles} \ +test util-16.1.17.147 {8.4 compatible formatting of doubles} precision \ {expr 1e147} \ 9.9999999999999998e+146 -test util-16.1.17.148 {8.4 compatible formatting of doubles} \ +test util-16.1.17.148 {8.4 compatible formatting of doubles} precision \ {expr 1e148} \ 1e+148 -test util-16.1.17.149 {8.4 compatible formatting of doubles} \ +test util-16.1.17.149 {8.4 compatible formatting of doubles} precision \ {expr 1e149} \ 1e+149 -test util-16.1.17.150 {8.4 compatible formatting of doubles} \ +test util-16.1.17.150 {8.4 compatible formatting of doubles} precision \ {expr 1e150} \ 9.9999999999999998e+149 -test util-16.1.17.151 {8.4 compatible formatting of doubles} \ +test util-16.1.17.151 {8.4 compatible formatting of doubles} precision \ {expr 1e151} \ 1e+151 -test util-16.1.17.152 {8.4 compatible formatting of doubles} \ +test util-16.1.17.152 {8.4 compatible formatting of doubles} precision \ {expr 1e152} \ 1e+152 -test util-16.1.17.153 {8.4 compatible formatting of doubles} \ +test util-16.1.17.153 {8.4 compatible formatting of doubles} precision \ {expr 1e153} \ 1e+153 -test util-16.1.17.154 {8.4 compatible formatting of doubles} \ +test util-16.1.17.154 {8.4 compatible formatting of doubles} precision \ {expr 1e154} \ 1e+154 -test util-16.1.17.155 {8.4 compatible formatting of doubles} \ +test util-16.1.17.155 {8.4 compatible formatting of doubles} precision \ {expr 1e155} \ 1e+155 -test util-16.1.17.156 {8.4 compatible formatting of doubles} \ +test util-16.1.17.156 {8.4 compatible formatting of doubles} precision \ {expr 1e156} \ 9.9999999999999998e+155 -test util-16.1.17.157 {8.4 compatible formatting of doubles} \ +test util-16.1.17.157 {8.4 compatible formatting of doubles} precision \ {expr 1e157} \ 9.9999999999999998e+156 -test util-16.1.17.158 {8.4 compatible formatting of doubles} \ +test util-16.1.17.158 {8.4 compatible formatting of doubles} precision \ {expr 1e158} \ 9.9999999999999995e+157 -test util-16.1.17.159 {8.4 compatible formatting of doubles} \ +test util-16.1.17.159 {8.4 compatible formatting of doubles} precision \ {expr 1e159} \ 9.9999999999999993e+158 -test util-16.1.17.160 {8.4 compatible formatting of doubles} \ +test util-16.1.17.160 {8.4 compatible formatting of doubles} precision \ {expr 1e160} \ 1e+160 -test util-16.1.17.161 {8.4 compatible formatting of doubles} \ +test util-16.1.17.161 {8.4 compatible formatting of doubles} precision \ {expr 1e161} \ 1e+161 -test util-16.1.17.162 {8.4 compatible formatting of doubles} \ +test util-16.1.17.162 {8.4 compatible formatting of doubles} precision \ {expr 1e162} \ 9.9999999999999994e+161 -test util-16.1.17.163 {8.4 compatible formatting of doubles} \ +test util-16.1.17.163 {8.4 compatible formatting of doubles} precision \ {expr 1e163} \ 9.9999999999999994e+162 -test util-16.1.17.164 {8.4 compatible formatting of doubles} \ +test util-16.1.17.164 {8.4 compatible formatting of doubles} precision \ {expr 1e164} \ 1e+164 -test util-16.1.17.165 {8.4 compatible formatting of doubles} \ +test util-16.1.17.165 {8.4 compatible formatting of doubles} precision \ {expr 1e165} \ 9.999999999999999e+164 -test util-16.1.17.166 {8.4 compatible formatting of doubles} \ +test util-16.1.17.166 {8.4 compatible formatting of doubles} precision \ {expr 1e166} \ 9.9999999999999994e+165 -test util-16.1.17.167 {8.4 compatible formatting of doubles} \ +test util-16.1.17.167 {8.4 compatible formatting of doubles} precision \ {expr 1e167} \ 1e+167 -test util-16.1.17.168 {8.4 compatible formatting of doubles} \ +test util-16.1.17.168 {8.4 compatible formatting of doubles} precision \ {expr 1e168} \ 9.9999999999999993e+167 -test util-16.1.17.169 {8.4 compatible formatting of doubles} \ +test util-16.1.17.169 {8.4 compatible formatting of doubles} precision \ {expr 1e169} \ 9.9999999999999993e+168 -test util-16.1.17.170 {8.4 compatible formatting of doubles} \ +test util-16.1.17.170 {8.4 compatible formatting of doubles} precision \ {expr 1e170} \ 1e+170 -test util-16.1.17.171 {8.4 compatible formatting of doubles} \ +test util-16.1.17.171 {8.4 compatible formatting of doubles} precision \ {expr 1e171} \ 9.9999999999999995e+170 -test util-16.1.17.172 {8.4 compatible formatting of doubles} \ +test util-16.1.17.172 {8.4 compatible formatting of doubles} precision \ {expr 1e172} \ 1.0000000000000001e+172 -test util-16.1.17.173 {8.4 compatible formatting of doubles} \ +test util-16.1.17.173 {8.4 compatible formatting of doubles} precision \ {expr 1e173} \ 1e+173 -test util-16.1.17.174 {8.4 compatible formatting of doubles} \ +test util-16.1.17.174 {8.4 compatible formatting of doubles} precision \ {expr 1e174} \ 1.0000000000000001e+174 -test util-16.1.17.175 {8.4 compatible formatting of doubles} \ +test util-16.1.17.175 {8.4 compatible formatting of doubles} precision \ {expr 1e175} \ 9.9999999999999994e+174 -test util-16.1.17.176 {8.4 compatible formatting of doubles} \ +test util-16.1.17.176 {8.4 compatible formatting of doubles} precision \ {expr 1e176} \ 1e+176 -test util-16.1.17.177 {8.4 compatible formatting of doubles} \ +test util-16.1.17.177 {8.4 compatible formatting of doubles} precision \ {expr 1e177} \ 1e+177 -test util-16.1.17.178 {8.4 compatible formatting of doubles} \ +test util-16.1.17.178 {8.4 compatible formatting of doubles} precision \ {expr 1e178} \ 1.0000000000000001e+178 -test util-16.1.17.179 {8.4 compatible formatting of doubles} \ +test util-16.1.17.179 {8.4 compatible formatting of doubles} precision \ {expr 1e179} \ 9.9999999999999998e+178 -test util-16.1.17.180 {8.4 compatible formatting of doubles} \ +test util-16.1.17.180 {8.4 compatible formatting of doubles} precision \ {expr 1e180} \ 1e+180 -test util-16.1.17.181 {8.4 compatible formatting of doubles} \ +test util-16.1.17.181 {8.4 compatible formatting of doubles} precision \ {expr 1e181} \ 9.9999999999999992e+180 -test util-16.1.17.182 {8.4 compatible formatting of doubles} \ +test util-16.1.17.182 {8.4 compatible formatting of doubles} precision \ {expr 1e182} \ 1.0000000000000001e+182 -test util-16.1.17.183 {8.4 compatible formatting of doubles} \ +test util-16.1.17.183 {8.4 compatible formatting of doubles} precision \ {expr 1e183} \ 9.9999999999999995e+182 -test util-16.1.17.184 {8.4 compatible formatting of doubles} \ +test util-16.1.17.184 {8.4 compatible formatting of doubles} precision \ {expr 1e184} \ 1e+184 -test util-16.1.17.185 {8.4 compatible formatting of doubles} \ +test util-16.1.17.185 {8.4 compatible formatting of doubles} precision \ {expr 1e185} \ 9.9999999999999998e+184 -test util-16.1.17.186 {8.4 compatible formatting of doubles} \ +test util-16.1.17.186 {8.4 compatible formatting of doubles} precision \ {expr 1e186} \ 9.9999999999999998e+185 -test util-16.1.17.187 {8.4 compatible formatting of doubles} \ +test util-16.1.17.187 {8.4 compatible formatting of doubles} precision \ {expr 1e187} \ 9.9999999999999991e+186 -test util-16.1.17.188 {8.4 compatible formatting of doubles} \ +test util-16.1.17.188 {8.4 compatible formatting of doubles} precision \ {expr 1e188} \ 1e+188 -test util-16.1.17.189 {8.4 compatible formatting of doubles} \ +test util-16.1.17.189 {8.4 compatible formatting of doubles} precision \ {expr 1e189} \ 1e+189 -test util-16.1.17.190 {8.4 compatible formatting of doubles} \ +test util-16.1.17.190 {8.4 compatible formatting of doubles} precision \ {expr 1e190} \ 1.0000000000000001e+190 -test util-16.1.17.191 {8.4 compatible formatting of doubles} \ +test util-16.1.17.191 {8.4 compatible formatting of doubles} precision \ {expr 1e191} \ 1.0000000000000001e+191 -test util-16.1.17.192 {8.4 compatible formatting of doubles} \ +test util-16.1.17.192 {8.4 compatible formatting of doubles} precision \ {expr 1e192} \ 1e+192 -test util-16.1.17.193 {8.4 compatible formatting of doubles} \ +test util-16.1.17.193 {8.4 compatible formatting of doubles} precision \ {expr 1e193} \ 1.0000000000000001e+193 -test util-16.1.17.194 {8.4 compatible formatting of doubles} \ +test util-16.1.17.194 {8.4 compatible formatting of doubles} precision \ {expr 1e194} \ 9.9999999999999994e+193 -test util-16.1.17.195 {8.4 compatible formatting of doubles} \ +test util-16.1.17.195 {8.4 compatible formatting of doubles} precision \ {expr 1e195} \ 9.9999999999999998e+194 -test util-16.1.17.196 {8.4 compatible formatting of doubles} \ +test util-16.1.17.196 {8.4 compatible formatting of doubles} precision \ {expr 1e196} \ 9.9999999999999995e+195 -test util-16.1.17.197 {8.4 compatible formatting of doubles} \ +test util-16.1.17.197 {8.4 compatible formatting of doubles} precision \ {expr 1e197} \ 9.9999999999999995e+196 -test util-16.1.17.198 {8.4 compatible formatting of doubles} \ +test util-16.1.17.198 {8.4 compatible formatting of doubles} precision \ {expr 1e198} \ 1e+198 -test util-16.1.17.199 {8.4 compatible formatting of doubles} \ +test util-16.1.17.199 {8.4 compatible formatting of doubles} precision \ {expr 1e199} \ 1.0000000000000001e+199 -test util-16.1.17.200 {8.4 compatible formatting of doubles} \ +test util-16.1.17.200 {8.4 compatible formatting of doubles} precision \ {expr 1e200} \ 9.9999999999999997e+199 -test util-16.1.17.201 {8.4 compatible formatting of doubles} \ +test util-16.1.17.201 {8.4 compatible formatting of doubles} precision \ {expr 1e201} \ 1e+201 -test util-16.1.17.202 {8.4 compatible formatting of doubles} \ +test util-16.1.17.202 {8.4 compatible formatting of doubles} precision \ {expr 1e202} \ 9.999999999999999e+201 -test util-16.1.17.203 {8.4 compatible formatting of doubles} \ +test util-16.1.17.203 {8.4 compatible formatting of doubles} precision \ {expr 1e203} \ 9.9999999999999999e+202 -test util-16.1.17.204 {8.4 compatible formatting of doubles} \ +test util-16.1.17.204 {8.4 compatible formatting of doubles} precision \ {expr 1e204} \ 9.9999999999999999e+203 -test util-16.1.17.205 {8.4 compatible formatting of doubles} \ +test util-16.1.17.205 {8.4 compatible formatting of doubles} precision \ {expr 1e205} \ 1e+205 -test util-16.1.17.206 {8.4 compatible formatting of doubles} \ +test util-16.1.17.206 {8.4 compatible formatting of doubles} precision \ {expr 1e206} \ 1e+206 -test util-16.1.17.207 {8.4 compatible formatting of doubles} \ +test util-16.1.17.207 {8.4 compatible formatting of doubles} precision \ {expr 1e207} \ 1e+207 -test util-16.1.17.208 {8.4 compatible formatting of doubles} \ +test util-16.1.17.208 {8.4 compatible formatting of doubles} precision \ {expr 1e208} \ 9.9999999999999998e+207 -test util-16.1.17.209 {8.4 compatible formatting of doubles} \ +test util-16.1.17.209 {8.4 compatible formatting of doubles} precision \ {expr 1e209} \ 1.0000000000000001e+209 -test util-16.1.17.210 {8.4 compatible formatting of doubles} \ +test util-16.1.17.210 {8.4 compatible formatting of doubles} precision \ {expr 1e210} \ 9.9999999999999993e+209 -test util-16.1.17.211 {8.4 compatible formatting of doubles} \ +test util-16.1.17.211 {8.4 compatible formatting of doubles} precision \ {expr 1e211} \ 9.9999999999999996e+210 -test util-16.1.17.212 {8.4 compatible formatting of doubles} \ +test util-16.1.17.212 {8.4 compatible formatting of doubles} precision \ {expr 1e212} \ 9.9999999999999991e+211 -test util-16.1.17.213 {8.4 compatible formatting of doubles} \ +test util-16.1.17.213 {8.4 compatible formatting of doubles} precision \ {expr 1e213} \ 9.9999999999999998e+212 -test util-16.1.17.214 {8.4 compatible formatting of doubles} \ +test util-16.1.17.214 {8.4 compatible formatting of doubles} precision \ {expr 1e214} \ 9.9999999999999995e+213 -test util-16.1.17.215 {8.4 compatible formatting of doubles} \ +test util-16.1.17.215 {8.4 compatible formatting of doubles} precision \ {expr 1e215} \ 9.9999999999999991e+214 -test util-16.1.17.216 {8.4 compatible formatting of doubles} \ +test util-16.1.17.216 {8.4 compatible formatting of doubles} precision \ {expr 1e216} \ 1e+216 -test util-16.1.17.217 {8.4 compatible formatting of doubles} \ +test util-16.1.17.217 {8.4 compatible formatting of doubles} precision \ {expr 1e217} \ 9.9999999999999996e+216 -test util-16.1.17.218 {8.4 compatible formatting of doubles} \ +test util-16.1.17.218 {8.4 compatible formatting of doubles} precision \ {expr 1e218} \ 1.0000000000000001e+218 -test util-16.1.17.219 {8.4 compatible formatting of doubles} \ +test util-16.1.17.219 {8.4 compatible formatting of doubles} precision \ {expr 1e219} \ 9.9999999999999997e+218 -test util-16.1.17.220 {8.4 compatible formatting of doubles} \ +test util-16.1.17.220 {8.4 compatible formatting of doubles} precision \ {expr 1e220} \ 1e+220 -test util-16.1.17.221 {8.4 compatible formatting of doubles} \ +test util-16.1.17.221 {8.4 compatible formatting of doubles} precision \ {expr 1e221} \ 1e+221 -test util-16.1.17.222 {8.4 compatible formatting of doubles} \ +test util-16.1.17.222 {8.4 compatible formatting of doubles} precision \ {expr 1e222} \ 1e+222 -test util-16.1.17.223 {8.4 compatible formatting of doubles} \ +test util-16.1.17.223 {8.4 compatible formatting of doubles} precision \ {expr 1e223} \ 1e+223 -test util-16.1.17.224 {8.4 compatible formatting of doubles} \ +test util-16.1.17.224 {8.4 compatible formatting of doubles} precision \ {expr 1e224} \ 9.9999999999999997e+223 -test util-16.1.17.225 {8.4 compatible formatting of doubles} \ +test util-16.1.17.225 {8.4 compatible formatting of doubles} precision \ {expr 1e225} \ 9.9999999999999993e+224 -test util-16.1.17.226 {8.4 compatible formatting of doubles} \ +test util-16.1.17.226 {8.4 compatible formatting of doubles} precision \ {expr 1e226} \ 9.9999999999999996e+225 -test util-16.1.17.227 {8.4 compatible formatting of doubles} \ +test util-16.1.17.227 {8.4 compatible formatting of doubles} precision \ {expr 1e227} \ 1.0000000000000001e+227 -test util-16.1.17.228 {8.4 compatible formatting of doubles} \ +test util-16.1.17.228 {8.4 compatible formatting of doubles} precision \ {expr 1e228} \ 9.9999999999999992e+227 -test util-16.1.17.229 {8.4 compatible formatting of doubles} \ +test util-16.1.17.229 {8.4 compatible formatting of doubles} precision \ {expr 1e229} \ 9.9999999999999999e+228 -test util-16.1.17.230 {8.4 compatible formatting of doubles} \ +test util-16.1.17.230 {8.4 compatible formatting of doubles} precision \ {expr 1e230} \ 1.0000000000000001e+230 -test util-16.1.17.231 {8.4 compatible formatting of doubles} \ +test util-16.1.17.231 {8.4 compatible formatting of doubles} precision \ {expr 1e231} \ 1.0000000000000001e+231 -test util-16.1.17.232 {8.4 compatible formatting of doubles} \ +test util-16.1.17.232 {8.4 compatible formatting of doubles} precision \ {expr 1e232} \ 1.0000000000000001e+232 -test util-16.1.17.233 {8.4 compatible formatting of doubles} \ +test util-16.1.17.233 {8.4 compatible formatting of doubles} precision \ {expr 1e233} \ 9.9999999999999997e+232 -test util-16.1.17.234 {8.4 compatible formatting of doubles} \ +test util-16.1.17.234 {8.4 compatible formatting of doubles} precision \ {expr 1e234} \ 1e+234 -test util-16.1.17.235 {8.4 compatible formatting of doubles} \ +test util-16.1.17.235 {8.4 compatible formatting of doubles} precision \ {expr 1e235} \ 1.0000000000000001e+235 -test util-16.1.17.236 {8.4 compatible formatting of doubles} \ +test util-16.1.17.236 {8.4 compatible formatting of doubles} precision \ {expr 1e236} \ 1.0000000000000001e+236 -test util-16.1.17.237 {8.4 compatible formatting of doubles} \ +test util-16.1.17.237 {8.4 compatible formatting of doubles} precision \ {expr 1e237} \ 9.9999999999999994e+236 -test util-16.1.17.238 {8.4 compatible formatting of doubles} \ +test util-16.1.17.238 {8.4 compatible formatting of doubles} precision \ {expr 1e238} \ 1e+238 -test util-16.1.17.239 {8.4 compatible formatting of doubles} \ +test util-16.1.17.239 {8.4 compatible formatting of doubles} precision \ {expr 1e239} \ 9.9999999999999999e+238 -test util-16.1.17.240 {8.4 compatible formatting of doubles} \ +test util-16.1.17.240 {8.4 compatible formatting of doubles} precision \ {expr 1e240} \ 1e+240 -test util-16.1.17.241 {8.4 compatible formatting of doubles} \ +test util-16.1.17.241 {8.4 compatible formatting of doubles} precision \ {expr 1e241} \ 1.0000000000000001e+241 -test util-16.1.17.242 {8.4 compatible formatting of doubles} \ +test util-16.1.17.242 {8.4 compatible formatting of doubles} precision \ {expr 1e242} \ 1.0000000000000001e+242 -test util-16.1.17.243 {8.4 compatible formatting of doubles} \ +test util-16.1.17.243 {8.4 compatible formatting of doubles} precision \ {expr 1e243} \ 1.0000000000000001e+243 -test util-16.1.17.244 {8.4 compatible formatting of doubles} \ +test util-16.1.17.244 {8.4 compatible formatting of doubles} precision \ {expr 1e244} \ 1.0000000000000001e+244 -test util-16.1.17.245 {8.4 compatible formatting of doubles} \ +test util-16.1.17.245 {8.4 compatible formatting of doubles} precision \ {expr 1e245} \ 1e+245 -test util-16.1.17.246 {8.4 compatible formatting of doubles} \ +test util-16.1.17.246 {8.4 compatible formatting of doubles} precision \ {expr 1e246} \ 1.0000000000000001e+246 -test util-16.1.17.247 {8.4 compatible formatting of doubles} \ +test util-16.1.17.247 {8.4 compatible formatting of doubles} precision \ {expr 1e247} \ 9.9999999999999995e+246 -test util-16.1.17.248 {8.4 compatible formatting of doubles} \ +test util-16.1.17.248 {8.4 compatible formatting of doubles} precision \ {expr 1e248} \ 1e+248 -test util-16.1.17.249 {8.4 compatible formatting of doubles} \ +test util-16.1.17.249 {8.4 compatible formatting of doubles} precision \ {expr 1e249} \ 9.9999999999999992e+248 -test util-16.1.17.250 {8.4 compatible formatting of doubles} \ +test util-16.1.17.250 {8.4 compatible formatting of doubles} precision \ {expr 1e250} \ 9.9999999999999992e+249 -test util-16.1.17.251 {8.4 compatible formatting of doubles} \ +test util-16.1.17.251 {8.4 compatible formatting of doubles} precision \ {expr 1e251} \ 1e+251 -test util-16.1.17.252 {8.4 compatible formatting of doubles} \ +test util-16.1.17.252 {8.4 compatible formatting of doubles} precision \ {expr 1e252} \ 1.0000000000000001e+252 -test util-16.1.17.253 {8.4 compatible formatting of doubles} \ +test util-16.1.17.253 {8.4 compatible formatting of doubles} precision \ {expr 1e253} \ 9.9999999999999994e+252 -test util-16.1.17.254 {8.4 compatible formatting of doubles} \ +test util-16.1.17.254 {8.4 compatible formatting of doubles} precision \ {expr 1e254} \ 9.9999999999999994e+253 -test util-16.1.17.255 {8.4 compatible formatting of doubles} \ +test util-16.1.17.255 {8.4 compatible formatting of doubles} precision \ {expr 1e255} \ 9.9999999999999999e+254 -test util-16.1.17.256 {8.4 compatible formatting of doubles} \ +test util-16.1.17.256 {8.4 compatible formatting of doubles} precision \ {expr 1e256} \ 1e+256 -test util-16.1.17.257 {8.4 compatible formatting of doubles} \ +test util-16.1.17.257 {8.4 compatible formatting of doubles} precision \ {expr 1e257} \ 1e+257 -test util-16.1.17.258 {8.4 compatible formatting of doubles} \ +test util-16.1.17.258 {8.4 compatible formatting of doubles} precision \ {expr 1e258} \ 1.0000000000000001e+258 -test util-16.1.17.259 {8.4 compatible formatting of doubles} \ +test util-16.1.17.259 {8.4 compatible formatting of doubles} precision \ {expr 1e259} \ 9.9999999999999993e+258 -test util-16.1.17.260 {8.4 compatible formatting of doubles} \ +test util-16.1.17.260 {8.4 compatible formatting of doubles} precision \ {expr 1e260} \ 1.0000000000000001e+260 -test util-16.1.17.261 {8.4 compatible formatting of doubles} \ +test util-16.1.17.261 {8.4 compatible formatting of doubles} precision \ {expr 1e261} \ 9.9999999999999993e+260 -test util-16.1.17.262 {8.4 compatible formatting of doubles} \ +test util-16.1.17.262 {8.4 compatible formatting of doubles} precision \ {expr 1e262} \ 1e+262 -test util-16.1.17.263 {8.4 compatible formatting of doubles} \ +test util-16.1.17.263 {8.4 compatible formatting of doubles} precision \ {expr 1e263} \ 1e+263 -test util-16.1.17.264 {8.4 compatible formatting of doubles} \ +test util-16.1.17.264 {8.4 compatible formatting of doubles} precision \ {expr 1e264} \ 1e+264 -test util-16.1.17.265 {8.4 compatible formatting of doubles} \ +test util-16.1.17.265 {8.4 compatible formatting of doubles} precision \ {expr 1e265} \ 1.0000000000000001e+265 -test util-16.1.17.266 {8.4 compatible formatting of doubles} \ +test util-16.1.17.266 {8.4 compatible formatting of doubles} precision \ {expr 1e266} \ 1e+266 -test util-16.1.17.267 {8.4 compatible formatting of doubles} \ +test util-16.1.17.267 {8.4 compatible formatting of doubles} precision \ {expr 1e267} \ 9.9999999999999997e+266 -test util-16.1.17.268 {8.4 compatible formatting of doubles} \ +test util-16.1.17.268 {8.4 compatible formatting of doubles} precision \ {expr 1e268} \ 9.9999999999999997e+267 -test util-16.1.17.269 {8.4 compatible formatting of doubles} \ +test util-16.1.17.269 {8.4 compatible formatting of doubles} precision \ {expr 1e269} \ 1e+269 -test util-16.1.17.270 {8.4 compatible formatting of doubles} \ +test util-16.1.17.270 {8.4 compatible formatting of doubles} precision \ {expr 1e270} \ 1e+270 -test util-16.1.17.271 {8.4 compatible formatting of doubles} \ +test util-16.1.17.271 {8.4 compatible formatting of doubles} precision \ {expr 1e271} \ 9.9999999999999995e+270 -test util-16.1.17.272 {8.4 compatible formatting of doubles} \ +test util-16.1.17.272 {8.4 compatible formatting of doubles} precision \ {expr 1e272} \ 1.0000000000000001e+272 -test util-16.1.17.273 {8.4 compatible formatting of doubles} \ +test util-16.1.17.273 {8.4 compatible formatting of doubles} precision \ {expr 1e273} \ 9.9999999999999995e+272 -test util-16.1.17.274 {8.4 compatible formatting of doubles} \ +test util-16.1.17.274 {8.4 compatible formatting of doubles} precision \ {expr 1e274} \ 9.9999999999999992e+273 -test util-16.1.17.275 {8.4 compatible formatting of doubles} \ +test util-16.1.17.275 {8.4 compatible formatting of doubles} precision \ {expr 1e275} \ 9.9999999999999996e+274 -test util-16.1.17.276 {8.4 compatible formatting of doubles} \ +test util-16.1.17.276 {8.4 compatible formatting of doubles} precision \ {expr 1e276} \ 1.0000000000000001e+276 -test util-16.1.17.277 {8.4 compatible formatting of doubles} \ +test util-16.1.17.277 {8.4 compatible formatting of doubles} precision \ {expr 1e277} \ 1e+277 -test util-16.1.17.278 {8.4 compatible formatting of doubles} \ +test util-16.1.17.278 {8.4 compatible formatting of doubles} precision \ {expr 1e278} \ 9.9999999999999996e+277 -test util-16.1.17.279 {8.4 compatible formatting of doubles} \ +test util-16.1.17.279 {8.4 compatible formatting of doubles} precision \ {expr 1e279} \ 1.0000000000000001e+279 -test util-16.1.17.280 {8.4 compatible formatting of doubles} \ +test util-16.1.17.280 {8.4 compatible formatting of doubles} precision \ {expr 1e280} \ 1e+280 -test util-16.1.17.281 {8.4 compatible formatting of doubles} \ +test util-16.1.17.281 {8.4 compatible formatting of doubles} precision \ {expr 1e281} \ 1e+281 -test util-16.1.17.282 {8.4 compatible formatting of doubles} \ +test util-16.1.17.282 {8.4 compatible formatting of doubles} precision \ {expr 1e282} \ 1e+282 -test util-16.1.17.283 {8.4 compatible formatting of doubles} \ +test util-16.1.17.283 {8.4 compatible formatting of doubles} precision \ {expr 1e283} \ 9.9999999999999996e+282 -test util-16.1.17.284 {8.4 compatible formatting of doubles} \ +test util-16.1.17.284 {8.4 compatible formatting of doubles} precision \ {expr 1e284} \ 1.0000000000000001e+284 -test util-16.1.17.285 {8.4 compatible formatting of doubles} \ +test util-16.1.17.285 {8.4 compatible formatting of doubles} precision \ {expr 1e285} \ 9.9999999999999998e+284 -test util-16.1.17.286 {8.4 compatible formatting of doubles} \ +test util-16.1.17.286 {8.4 compatible formatting of doubles} precision \ {expr 1e286} \ 1e+286 -test util-16.1.17.287 {8.4 compatible formatting of doubles} \ +test util-16.1.17.287 {8.4 compatible formatting of doubles} precision \ {expr 1e287} \ 1.0000000000000001e+287 -test util-16.1.17.288 {8.4 compatible formatting of doubles} \ +test util-16.1.17.288 {8.4 compatible formatting of doubles} precision \ {expr 1e288} \ 1e+288 -test util-16.1.17.289 {8.4 compatible formatting of doubles} \ +test util-16.1.17.289 {8.4 compatible formatting of doubles} precision \ {expr 1e289} \ 1.0000000000000001e+289 -test util-16.1.17.290 {8.4 compatible formatting of doubles} \ +test util-16.1.17.290 {8.4 compatible formatting of doubles} precision \ {expr 1e290} \ 1.0000000000000001e+290 -test util-16.1.17.291 {8.4 compatible formatting of doubles} \ +test util-16.1.17.291 {8.4 compatible formatting of doubles} precision \ {expr 1e291} \ 9.9999999999999996e+290 -test util-16.1.17.292 {8.4 compatible formatting of doubles} \ +test util-16.1.17.292 {8.4 compatible formatting of doubles} precision \ {expr 1e292} \ 1e+292 -test util-16.1.17.293 {8.4 compatible formatting of doubles} \ +test util-16.1.17.293 {8.4 compatible formatting of doubles} precision \ {expr 1e293} \ 9.9999999999999992e+292 -test util-16.1.17.294 {8.4 compatible formatting of doubles} \ +test util-16.1.17.294 {8.4 compatible formatting of doubles} precision \ {expr 1e294} \ 1.0000000000000001e+294 -test util-16.1.17.295 {8.4 compatible formatting of doubles} \ +test util-16.1.17.295 {8.4 compatible formatting of doubles} precision \ {expr 1e295} \ 9.9999999999999998e+294 -test util-16.1.17.296 {8.4 compatible formatting of doubles} \ +test util-16.1.17.296 {8.4 compatible formatting of doubles} precision \ {expr 1e296} \ 9.9999999999999998e+295 -test util-16.1.17.297 {8.4 compatible formatting of doubles} \ +test util-16.1.17.297 {8.4 compatible formatting of doubles} precision \ {expr 1e297} \ 1e+297 -test util-16.1.17.298 {8.4 compatible formatting of doubles} \ +test util-16.1.17.298 {8.4 compatible formatting of doubles} precision \ {expr 1e298} \ 9.9999999999999996e+297 -test util-16.1.17.299 {8.4 compatible formatting of doubles} \ +test util-16.1.17.299 {8.4 compatible formatting of doubles} precision \ {expr 1e299} \ 1.0000000000000001e+299 -test util-16.1.17.300 {8.4 compatible formatting of doubles} \ +test util-16.1.17.300 {8.4 compatible formatting of doubles} precision \ {expr 1e300} \ 1.0000000000000001e+300 -test util-16.1.17.301 {8.4 compatible formatting of doubles} \ +test util-16.1.17.301 {8.4 compatible formatting of doubles} precision \ {expr 1e301} \ 1.0000000000000001e+301 -test util-16.1.17.302 {8.4 compatible formatting of doubles} \ +test util-16.1.17.302 {8.4 compatible formatting of doubles} precision \ {expr 1e302} \ 1.0000000000000001e+302 -test util-16.1.17.303 {8.4 compatible formatting of doubles} \ +test util-16.1.17.303 {8.4 compatible formatting of doubles} precision \ {expr 1e303} \ 1e+303 -test util-16.1.17.304 {8.4 compatible formatting of doubles} \ +test util-16.1.17.304 {8.4 compatible formatting of doubles} precision \ {expr 1e304} \ 9.9999999999999994e+303 -test util-16.1.17.305 {8.4 compatible formatting of doubles} \ +test util-16.1.17.305 {8.4 compatible formatting of doubles} precision \ {expr 1e305} \ 9.9999999999999994e+304 -test util-16.1.17.306 {8.4 compatible formatting of doubles} \ +test util-16.1.17.306 {8.4 compatible formatting of doubles} precision \ {expr 1e306} \ 1e+306 -test util-16.1.17.307 {8.4 compatible formatting of doubles} \ +test util-16.1.17.307 {8.4 compatible formatting of doubles} precision \ {expr 1e307} \ 9.9999999999999999e+306 @@ -4127,7 +4129,9 @@ test util-18.12 {Tcl_ObjPrintf} {testprint} { testprint "%I64d %Id" 65537 } {65537 65537} -set ::tcl_precision $saved_precision +if {[catch {set ::tcl_precision $saved_precision}]} { + unset ::tcl_precision +} # cleanup ::tcltest::cleanupTests diff --git a/tools/uniParse.tcl b/tools/uniParse.tcl index c712e62..561c28e 100644 --- a/tools/uniParse.tcl +++ b/tools/uniParse.tcl @@ -212,7 +212,7 @@ static const unsigned short pageMap\[\] = {" puts $f $line set lastpage [expr {[lindex $line end] >> $shift}] puts stdout "lastpage: $lastpage" - puts $f "#if TCL_UTF_MAX > 3" + puts $f "#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6" set line " ," } append line [lindex $pMap $i] @@ -242,7 +242,7 @@ static const unsigned char groupMap\[\] = {" set lastj [expr {[llength $page] - 1}] if {$i == ($lastpage + 1)} { puts $f [string trimright $line " \t,"] - puts $f "#if TCL_UTF_MAX > 3" + puts $f "#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6" set line " ," } for {set j 0} {$j <= $lastj} {incr j} { @@ -342,7 +342,7 @@ static const int groups\[\] = {" puts $f $line puts -nonewline $f "}; -#if TCL_UTF_MAX > 3 +#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6 # define UNICODE_OUT_OF_RANGE(ch) (((ch) & 0x1fffff) >= [format 0x%x $next]) #else # define UNICODE_OUT_OF_RANGE(ch) (((ch) & 0x1f0000) != 0) @@ -401,7 +401,7 @@ enum { * Unicode character tables. */ -#if TCL_UTF_MAX > 3 +#if TCL_UTF_MAX > 3 || TCL_MAJOR_VERSION > 8 || TCL_MINOR_VERSION > 6 # define GetUniCharInfo(ch) (groups\[groupMap\[pageMap\[((ch) & 0x1fffff) >> OFFSET_BITS\] | ((ch) & ((1 << OFFSET_BITS)-1))\]\]) #else # define GetUniCharInfo(ch) (groups\[groupMap\[pageMap\[((ch) & 0xffff) >> OFFSET_BITS\] | ((ch) & ((1 << OFFSET_BITS)-1))\]\]) diff --git a/win/tclWinSerial.c b/win/tclWinSerial.c index 2a2c445..8ff7bdb 100644 --- a/win/tclWinSerial.c +++ b/win/tclWinSerial.c @@ -2077,7 +2077,7 @@ SerialGetOptionProc( Tcl_DStringStartSublist(dsPtr); } if (len==0 || (len>1 && strncmp(optionName, "-xchar", len) == 0)) { - char buf[TCL_UTF_MAX]; + char buf[4]; valid = 1; if (!GetCommState(infoPtr->handle, &dcb)) { |