1 # This file is a Tcl script to test the code in the file tclUtil.c.
2 # This file is organized in the standard fashion for Tcl tests.
4 # Copyright (c) 1995-1998 Sun Microsystems, Inc.
5 # Copyright (c) 1998-1999 by Scriptics Corporation.
7 # See the file "license.terms" for information on usage and redistribution
8 # of this file, and for a DISCLAIMER OF ALL WARRANTIES.
10 if {"::tcltest" ni [namespace children]} {
11 package require tcltest 2.5
12 namespace import -force ::tcltest::*
15 ::tcltest::loadTestedCommands
16 catch [list package require -exact Tcltest [info patchlevel]]
18 testConstraint controversialNaN 1
19 testConstraint testbytestring [llength [info commands testbytestring]]
20 testConstraint testdstring [llength [info commands testdstring]]
21 testConstraint testconcatobj [llength [info commands testconcatobj]]
22 testConstraint testdoubledigits [llength [info commands testdoubledigits]]
24 # Big test for correct ordering of data in [expr]
28 binary scan [binary format dd -1.0 1.0] c* c
30 {0 0 0 0 0 0 -16 -65 0 0 0 0 0 0 -16 63} {
32 binary scan \x00\x00\x00\x00\x00\x00\xf0\xff d \
34 binary scan \x00\x00\x00\x00\x00\x00\xf0\xbf d \
36 binary scan \x00\x00\x00\x00\x00\x00\x08\x80 d \
37 ieeeValues(-Subnormal)
38 binary scan \x00\x00\x00\x00\x00\x00\x00\x80 d \
40 binary scan \x00\x00\x00\x00\x00\x00\x00\x00 d \
42 binary scan \x00\x00\x00\x00\x00\x00\x08\x00 d \
43 ieeeValues(+Subnormal)
44 binary scan \x00\x00\x00\x00\x00\x00\xf0\x3f d \
46 binary scan \x00\x00\x00\x00\x00\x00\xf0\x7f d \
48 binary scan \x00\x00\x00\x00\x00\x00\xf8\x7f d \
50 binary scan \x00\x00\x00\x00\x00\x00\xf8\xff d \
52 binary scan \xef\xcd\xab\x89\x67\x45\xfb\xff d \
53 ieeeValues(-NaN(3456789abcdef))
54 set ieeeValues(littleEndian) 1
57 {-65 -16 0 0 0 0 0 0 63 -16 0 0 0 0 0 0} {
58 binary scan \xff\xf0\x00\x00\x00\x00\x00\x00 d \
60 binary scan \xbf\xf0\x00\x00\x00\x00\x00\x00 d \
62 binary scan \x80\x08\x00\x00\x00\x00\x00\x00 d \
63 ieeeValues(-Subnormal)
64 binary scan \x80\x00\x00\x00\x00\x00\x00\x00 d \
66 binary scan \x00\x00\x00\x00\x00\x00\x00\x00 d \
68 binary scan \x00\x08\x00\x00\x00\x00\x00\x00 d \
69 ieeeValues(+Subnormal)
70 binary scan \x3f\xf0\x00\x00\x00\x00\x00\x00 d \
72 binary scan \x7f\xf0\x00\x00\x00\x00\x00\x00 d \
74 binary scan \x7f\xf8\x00\x00\x00\x00\x00\x00 d \
76 binary scan \xff\xf8\x00\x00\x00\x00\x00\x00 d \
78 binary scan \xff\xfb\x45\x67\x89\xab\xcd\xef d \
79 ieeeValues(-NaN(3456789abcdef))
80 set ieeeValues(littleEndian) 0
88 testConstraint ieeeFloatingPoint [testIEEE]
90 proc convertDouble { x } {
92 if { $ieeeValues(littleEndian) } {
93 binary scan [binary format w $x] d result
95 binary scan [binary format W $x] d result
100 proc verdonk_test {sig binexp shouldbe exp} {
101 regexp {([-+]?)([0-9a-f]+)} $sig -> signum sig
103 if {$signum eq {-}} {
104 set signum [expr {1<<63}]
108 regexp {E([-+]?[0-9]+)} $binexp -> binexp
109 set word [expr {$signum | (($binexp + 0x3ff)<<52)|($sig & ~(1<<52))}]
110 binary scan [binary format w $word] q double
111 regexp {([-+])(\d+)_(\d+)\&} $shouldbe -> signum digits1 digits2
112 regexp {E([-+]\d+)} $exp -> decexp
113 incr decexp [expr {[string length $digits1] - 1}]
114 lassign [testdoubledigits $double [string length $digits1] e] \
115 outdigits decpt outsign
116 if {[string index $digits2 0] >= 5} {
119 if {$outsign != $signum || $outdigits != $digits1 || $decpt != $decexp} {
120 return -code error "result is ${outsign}0.${outdigits}E$decpt\
121 should be ${signum}0.${digits1}E$decexp"
125 test util-1.1 {TclFindElement procedure - binary element in middle of list} {
126 lindex {0 foo\x00help 1} 1
128 test util-1.2 {TclFindElement procedure - binary element at end of list} {
129 lindex {0 foo\x00help} 1
132 test util-2.1 {TclCopyAndCollapse procedure - normal string} {
135 test util-2.2 {TclCopyAndCollapse procedure - string with backslashes} {
136 lindex {0 foo\n\x00help 1} 1
139 test util-3.1 {Tcl_ScanCountedElement procedure - don't leave unmatched braces} {
140 # This test checks for a very tricky feature. Any list element
141 # generated with Tcl_ScanCountedElement and Tcl_ConvertElement must
142 # have the property that it can be enclosing in curly braces to make
143 # an embedded sub-list. If this property doesn't hold, then
144 # Tcl_DStringStartSublist doesn't work.
146 lappend x "# \\\{ \\"
147 concat $x [llength "{$x}"]
149 test util-3.2 {Tcl_ConverCountedElement procedure - quote leading '#'} {
152 test util-3.3 {Tcl_ConverCountedElement procedure - quote leading '#'} {
155 test util-3.4 {Tcl_ConverCountedElement procedure - quote leading '#'} {
157 set result [eval [list #]]
161 test util-3.4.1 {Tcl_ConverCountedElement procedure - quote leading '#'} {
164 append cmd "" ;# force string rep generation
165 set result [eval $cmd]
169 test util-3.5 {Tcl_ConverCountedElement procedure - quote leading '#'} {
170 proc #\{ {} {return #}
171 set result [eval [list #\{]]
175 test util-3.5.1 {Tcl_ConverCountedElement procedure - quote leading '#'} {
176 proc #\{ {} {return #}
178 append cmd "" ;# force string rep generation
179 set result [eval $cmd]
183 test util-3.6 {Tcl_ConvertElement, Bug 3371644} {
185 interp alias {} x #\\ concat
186 interp target {} x ;# Crash if bug not fixed
190 test util-4.1 {Tcl_ConcatObj - backslash-space at end of argument} {
193 test util-4.2 {Tcl_ConcatObj - backslash-space at end of argument} {
196 test util-4.3 {Tcl_ConcatObj - backslash-space at end of argument} {
199 test util-4.4 {Tcl_ConcatObj - backslash-space at end of argument} {
202 test util-4.5 {Tcl_ConcatObj - backslash-space at end of argument} {
205 test util-4.6 {Tcl_ConcatObj - utf-8 sequence with "whitespace" char} {
206 # Check for Bug #227512. If this violates C isspace, then it returns \xc3.
209 test util-4.7 {Tcl_ConcatObj - refCount safety} testconcatobj {
210 # Check for Bug #1447328 (actually, bugs in its original "fix"). One of the
211 # symptoms was Bug #2055782.
214 test util-4.8 {Tcl_ConcatObj - [Bug 26649439c7]} {
215 concat [list foo] [list #]
218 proc Wrapper_Tcl_StringMatch {pattern string} {
219 # Forces use of Tcl_StringMatch, not Tcl_UniCharCaseMatch
220 switch -glob -- $string $pattern {return 1} default {return 0}
222 test util-5.1 {Tcl_StringMatch} {
223 Wrapper_Tcl_StringMatch ab*c abc
225 test util-5.2 {Tcl_StringMatch} {
226 Wrapper_Tcl_StringMatch ab**c abc
228 test util-5.3 {Tcl_StringMatch} {
229 Wrapper_Tcl_StringMatch ab* abcdef
231 test util-5.4 {Tcl_StringMatch} {
232 Wrapper_Tcl_StringMatch *c abc
234 test util-5.5 {Tcl_StringMatch} {
235 Wrapper_Tcl_StringMatch *3*6*9 0123456789
237 test util-5.6 {Tcl_StringMatch} {
238 Wrapper_Tcl_StringMatch *3*6*9 01234567890
240 test util-5.7 {Tcl_StringMatch: UTF-8} {
241 Wrapper_Tcl_StringMatch *u \u4e4fu
243 test util-5.8 {Tcl_StringMatch} {
244 Wrapper_Tcl_StringMatch a?c abc
246 test util-5.9 {Tcl_StringMatch: UTF-8} {
247 # skip one character in string
248 Wrapper_Tcl_StringMatch a?c a\u4e4fc
250 test util-5.10 {Tcl_StringMatch} {
251 Wrapper_Tcl_StringMatch a??c abc
253 test util-5.11 {Tcl_StringMatch} {
254 Wrapper_Tcl_StringMatch ?1??4???8? 0123456789
256 test util-5.12 {Tcl_StringMatch} {
257 Wrapper_Tcl_StringMatch {[abc]bc} abc
259 test util-5.13 {Tcl_StringMatch: UTF-8} {
260 # string += Tcl_UtfToUniChar(string, &ch);
261 Wrapper_Tcl_StringMatch "\[\u4e4fxy\]bc" "\u4e4fbc"
263 test util-5.14 {Tcl_StringMatch} {
264 # if ((*pattern == ']') || (*pattern == '\0'))
265 # badly formed pattern
266 Wrapper_Tcl_StringMatch {[]} {[]}
268 test util-5.15 {Tcl_StringMatch} {
269 # if ((*pattern == ']') || (*pattern == '\0'))
270 # badly formed pattern
271 Wrapper_Tcl_StringMatch {[} {[}
273 test util-5.16 {Tcl_StringMatch} {
274 Wrapper_Tcl_StringMatch {a[abc]c} abc
276 test util-5.17 {Tcl_StringMatch: UTF-8} {
277 # pattern += Tcl_UtfToUniChar(pattern, &endChar);
278 # get 1 UTF-8 character
279 Wrapper_Tcl_StringMatch "a\[a\u4e4fc]c" "a\u4e4fc"
281 test util-5.18 {Tcl_StringMatch: UTF-8} testbytestring {
282 # pattern += Tcl_UtfToUniChar(pattern, &endChar);
283 # proper advance: wrong answer would match on UTF trail byte of \u4e4f
284 Wrapper_Tcl_StringMatch {a[a\u4e4fc]c} [testbytestring a\u008fc]
286 test util-5.19 {Tcl_StringMatch: UTF-8} {
287 # pattern += Tcl_UtfToUniChar(pattern, &endChar);
289 Wrapper_Tcl_StringMatch {a[a\u4e4fc]c} "acc"
291 test util-5.20 {Tcl_StringMatch} {
292 Wrapper_Tcl_StringMatch {a[xyz]c} abc
294 test util-5.21 {Tcl_StringMatch} {
295 Wrapper_Tcl_StringMatch {12[2-7]45} 12345
297 test util-5.22 {Tcl_StringMatch: UTF-8 range} {
298 Wrapper_Tcl_StringMatch "\[\u4e00-\u4e4f]" "0"
300 test util-5.23 {Tcl_StringMatch: UTF-8 range} {
301 Wrapper_Tcl_StringMatch "\[\u4e00-\u4e4f]" "\u4e33"
303 test util-5.24 {Tcl_StringMatch: UTF-8 range} {
304 Wrapper_Tcl_StringMatch "\[\u4e00-\u4e4f]" "\uff08"
306 test util-5.25 {Tcl_StringMatch} {
307 Wrapper_Tcl_StringMatch {12[ab2-4cd]45} 12345
309 test util-5.26 {Tcl_StringMatch} {
310 Wrapper_Tcl_StringMatch {12[ab2-4cd]45} 12b45
312 test util-5.27 {Tcl_StringMatch} {
313 Wrapper_Tcl_StringMatch {12[ab2-4cd]45} 12d45
315 test util-5.28 {Tcl_StringMatch} {
316 Wrapper_Tcl_StringMatch {12[ab2-4cd]45} 12145
318 test util-5.29 {Tcl_StringMatch} {
319 Wrapper_Tcl_StringMatch {12[ab2-4cd]45} 12545
321 test util-5.30 {Tcl_StringMatch: forwards range} {
322 Wrapper_Tcl_StringMatch {[k-w]} "z"
324 test util-5.31 {Tcl_StringMatch: forwards range} {
325 Wrapper_Tcl_StringMatch {[k-w]} "w"
327 test util-5.32 {Tcl_StringMatch: forwards range} {
328 Wrapper_Tcl_StringMatch {[k-w]} "r"
330 test util-5.33 {Tcl_StringMatch: forwards range} {
331 Wrapper_Tcl_StringMatch {[k-w]} "k"
333 test util-5.34 {Tcl_StringMatch: forwards range} {
334 Wrapper_Tcl_StringMatch {[k-w]} "a"
336 test util-5.35 {Tcl_StringMatch: reverse range} {
337 Wrapper_Tcl_StringMatch {[w-k]} "z"
339 test util-5.36 {Tcl_StringMatch: reverse range} {
340 Wrapper_Tcl_StringMatch {[w-k]} "w"
342 test util-5.37 {Tcl_StringMatch: reverse range} {
343 Wrapper_Tcl_StringMatch {[w-k]} "r"
345 test util-5.38 {Tcl_StringMatch: reverse range} {
346 Wrapper_Tcl_StringMatch {[w-k]} "k"
348 test util-5.39 {Tcl_StringMatch: reverse range} {
349 Wrapper_Tcl_StringMatch {[w-k]} "a"
351 test util-5.40 {Tcl_StringMatch: skip correct number of ']'} {
352 Wrapper_Tcl_StringMatch {[A-]x} Ax
354 test util-5.41 {Tcl_StringMatch: skip correct number of ']'} {
355 Wrapper_Tcl_StringMatch {[A-]]x} Ax
357 test util-5.42 {Tcl_StringMatch: skip correct number of ']'} {
358 Wrapper_Tcl_StringMatch {[A-]]x} \ue1x
360 test util-5.43 {Tcl_StringMatch: skip correct number of ']'} {
361 Wrapper_Tcl_StringMatch \[A-]\ue1]x \ue1x
363 test util-5.44 {Tcl_StringMatch: skip correct number of ']'} {
364 Wrapper_Tcl_StringMatch {[A-]h]x} hx
366 test util-5.45 {Tcl_StringMatch} {
367 # if (*pattern == '\0')
368 # badly formed pattern, still treats as a set
369 Wrapper_Tcl_StringMatch {[a} a
371 test util-5.46 {Tcl_StringMatch} {
372 Wrapper_Tcl_StringMatch {a\*b} a*b
374 test util-5.47 {Tcl_StringMatch} {
375 Wrapper_Tcl_StringMatch {a\*b} ab
377 test util-5.48 {Tcl_StringMatch} {
378 Wrapper_Tcl_StringMatch {a\*\?\[\]\\\x} "a*?\[\]\\x"
380 test util-5.49 {Tcl_StringMatch} {
381 Wrapper_Tcl_StringMatch ** ""
383 test util-5.50 {Tcl_StringMatch} {
384 Wrapper_Tcl_StringMatch *. ""
386 test util-5.51 {Tcl_StringMatch} {
387 Wrapper_Tcl_StringMatch "" ""
389 test util-5.52 {Tcl_StringMatch} {
390 Wrapper_Tcl_StringMatch \[a\u0000 a\x80
394 test util-6.1 {Tcl_PrintDouble - using tcl_precision} -setup {
395 set old_precision $::tcl_precision
396 set ::tcl_precision 12
400 set ::tcl_precision $old_precision
402 test util-6.2 {Tcl_PrintDouble - using tcl_precision} -setup {
403 set old_precision $::tcl_precision
404 set ::tcl_precision 12
406 concat x[expr {1.39999999999}]
408 set ::tcl_precision $old_precision
409 } -result {x1.39999999999}
410 test util-6.3 {Tcl_PrintDouble - using tcl_precision} -setup {
411 set old_precision $::tcl_precision
412 set ::tcl_precision 12
414 concat x[expr {1.399999999999}]
416 set ::tcl_precision $old_precision
418 test util-6.4 {Tcl_PrintDouble - using tcl_precision} -setup {
419 set old_precision $::tcl_precision
420 set ::tcl_precision 5
422 concat x[expr {1.123412341234}]
424 set tcl_precision $old_precision
426 test util-6.5 {Tcl_PrintDouble - make sure there's a decimal point} {
429 test util-6.6 {Tcl_PrintDouble - make sure there's a decimal point} {
430 concat x[expr {3.0e98}]
433 test util-7.1 {TclPrecTraceProc - unset callbacks} -setup {
434 set old_precision $::tcl_precision
439 list $x $tcl_precision
441 set ::tcl_precision $old_precision
443 test util-7.2 {TclPrecTraceProc - read traces, sharing among interpreters} -setup {
444 set old_precision $::tcl_precision
448 set x [child eval set tcl_precision]
449 child eval {set tcl_precision 6}
451 list $x $tcl_precision
453 set ::tcl_precision $old_precision
455 test util-7.3 {TclPrecTraceProc - write traces, safe interpreters} -setup {
456 set old_precision $::tcl_precision
459 interp create -safe child
461 list [catch {set tcl_precision 8} msg] $msg
464 list $x $tcl_precision
466 set ::tcl_precision $old_precision
467 } -result {{1 {can't set "tcl_precision": can't modify precision from a safe interpreter}} 12}
468 test util-7.4 {TclPrecTraceProc - write traces, bogus values} -setup {
469 set old_precision $::tcl_precision
472 list [catch {set tcl_precision abc} msg] $msg $tcl_precision
474 set ::tcl_precision $old_precision
475 } -result {1 {can't set "tcl_precision": improper value for precision} 12}
477 # This test always succeeded in the C locale anyway...
478 test util-8.1 {TclNeedSpace - correct utf-8 handling} {
480 # Note that this test relies on the fact that
481 # [interp target] calls on Tcl_AppendElement()
482 # which calls on TclNeedSpace(). If [interp target]
483 # is ever updated, this test will no longer test
486 interp create [list \u5420 foo]
487 interp alias {} fooset [list \u5420 foo] set
488 set result [interp target {} fooset]
492 test util-8.2 {TclNeedSpace - correct utf-8 handling} testdstring {
494 # This tests the same bug as the previous test, but
495 # should be more future-proof, as the DString
496 # operations will likely continue to call TclNeedSpace
498 testdstring append \u5420 -1
499 testdstring element foo
500 llength [testdstring get]
502 test util-8.3 {TclNeedSpace - correct utf-8 handling} testdstring {
503 # Bug 411825 - new variant reported by Dossy Shiobara
505 testdstring append \u00A0 -1
506 testdstring element foo
507 llength [testdstring get]
509 test util-8.4 {TclNeedSpace - correct utf-8 handling} testdstring {
510 # Another bug uncovered while fixing 411825
512 testdstring append {\ } -1
513 testdstring append \{ -1
514 testdstring element foo
515 llength [testdstring get]
517 test util-8.5 {TclNeedSpace - correct utf-8 handling} testdstring {
519 testdstring append {\\ } -1
520 testdstring element foo
521 list [llength [testdstring get]] [string length [testdstring get]]
523 test util-8.6 {TclNeedSpace - correct utf-8 handling} testdstring {
525 testdstring append {\\ } -1
526 testdstring append \{ -1
527 testdstring element foo
528 testdstring append \} -1
529 list [llength [testdstring get]] [string length [testdstring get]]
531 test util-8.7 {TclNeedSpace - watch out for escaped space} {
533 testdstring append {\ } -1
538 list [llength [testdstring get]] [string index [testdstring get] 3]
540 test util-8.8 {TclNeedSpace - watch out for escaped space} {
542 testdstring append {\\ } -1
546 # Should make {\\ {}}
547 list [llength [testdstring get]] [string index [testdstring get] 3]
549 test util-8.9 {TclNeedSpace - watch out for escaped space} {
551 testdstring append {\\\ } -1
555 # Should make {\\\ {}}
556 list [llength [testdstring get]] [string index [testdstring get] 5]
558 test util-8.10 {TclNeedSpace - watch out for escaped space} {
560 testdstring append {\\\\\\\ } -1
564 # Should make {\\\\\\\ {}}
565 list [llength [testdstring get]] [string index [testdstring get] 9]
567 test util-8.11 {TclNeedSpace - watch out for escaped space} {
569 testdstring append {\\\\\\\\ } -1
573 # Should make {\\\\\\\\ {}}
574 list [llength [testdstring get]] [string index [testdstring get] 9]
577 test util-9.0.0 {TclGetIntForIndex} {
580 test util-9.0.1 {TclGetIntForIndex} {
581 string index abcd 0x0
583 test util-9.0.2 {TclGetIntForIndex} {
584 string index abcd -0x0
586 test util-9.0.3 {TclGetIntForIndex} {
587 string index abcd { 0 }
589 test util-9.0.4 {TclGetIntForIndex} {
590 string index abcd { 0x0 }
592 test util-9.0.5 {TclGetIntForIndex} {
593 string index abcd { -0x0 }
595 test util-9.0.6 {TclGetIntForIndex} {
598 test util-9.0.7 {TclGetIntForIndex} {
599 string index abcd { 01 }
601 test util-9.1.0 {TclGetIntForIndex} {
604 test util-9.1.1 {TclGetIntForIndex} {
605 string index abcd { 3 }
607 test util-9.1.2 {TclGetIntForIndex} {
608 string index abcdefghijk 0xa
610 test util-9.1.3 {TclGetIntForIndex} {
611 string index abcdefghijk { 0xa }
613 test util-9.2.0 {TclGetIntForIndex} {
614 string index abcd end
616 test util-9.2.1 {TclGetIntForIndex} -body {
617 string index abcd { end}
618 } -returnCodes error -match glob -result *
619 test util-9.2.2 {TclGetIntForIndex} -body {
620 string index abcd {end }
621 } -returnCodes error -match glob -result *
622 test util-9.3 {TclGetIntForIndex} {
626 test util-9.4 {TclGetIntForIndex} {
630 test util-9.5.0 {TclGetIntForIndex} {
631 string index abcd end-1
633 test util-9.5.1 {TclGetIntForIndex} {
634 string index abcd {end-1 }
636 test util-9.5.2 {TclGetIntForIndex} -body {
637 string index abcd { end-1}
638 } -returnCodes error -match glob -result *
639 test util-9.6 {TclGetIntForIndex} {
640 string index abcd end+-1
642 test util-9.7 {TclGetIntForIndex} {
643 string index abcd end+1
645 test util-9.8 {TclGetIntForIndex} {
646 string index abcd end--1
648 test util-9.9.0 {TclGetIntForIndex} {
649 string index abcd 0+0
651 test util-9.9.1 {TclGetIntForIndex} {
652 string index abcd { 0+0 }
654 test util-9.10 {TclGetIntForIndex} {
655 string index abcd 0-0
657 test util-9.11 {TclGetIntForIndex} {
658 string index abcd 1+0
660 test util-9.12 {TclGetIntForIndex} {
661 string index abcd 1-0
663 test util-9.13 {TclGetIntForIndex} {
664 string index abcd 1+1
666 test util-9.14 {TclGetIntForIndex} {
667 string index abcd 1-1
669 test util-9.15 {TclGetIntForIndex} {
670 string index abcd -1+2
672 test util-9.16 {TclGetIntForIndex} {
673 string index abcd -1--2
675 test util-9.17 {TclGetIntForIndex} {
676 string index abcd { -1+2 }
678 test util-9.18 {TclGetIntForIndex} {
679 string index abcd { -1--2 }
681 test util-9.19 {TclGetIntForIndex} -body {
683 } -returnCodes error -match glob -result *
684 test util-9.20 {TclGetIntForIndex} -body {
686 } -returnCodes error -match glob -result *
687 test util-9.21 {TclGetIntForIndex} -body {
688 string index a " \r\t\n"
689 } -returnCodes error -match glob -result *
690 test util-9.22 {TclGetIntForIndex} -body {
692 } -returnCodes error -match glob -result *
693 test util-9.23 {TclGetIntForIndex} -body {
695 } -returnCodes error -match glob -result *
696 test util-9.24 {TclGetIntForIndex} -body {
698 } -returnCodes error -match glob -result *
699 test util-9.25 {TclGetIntForIndex} -body {
701 } -returnCodes error -match glob -result *
702 test util-9.26 {TclGetIntForIndex} -body {
704 } -returnCodes error -match glob -result *
705 test util-9.27 {TclGetIntForIndex} -body {
707 } -returnCodes error -match glob -result *
708 test util-9.28 {TclGetIntForIndex} -body {
710 } -returnCodes error -match glob -result *
711 test util-9.29 {TclGetIntForIndex} -body {
713 } -returnCodes error -match glob -result *
714 test util-9.30 {TclGetIntForIndex} -body {
716 } -returnCodes error -match glob -result *
717 test util-9.31 {TclGetIntForIndex} -body {
719 } -returnCodes error -match glob -result *
720 test util-9.32 {TclGetIntForIndex} -body {
721 string index a 0x1FFFFFFFF+0
722 } -returnCodes error -match glob -result *
723 test util-9.33 {TclGetIntForIndex} -body {
724 string index a 100000000000+0
725 } -returnCodes error -match glob -result *
726 test util-9.34 {TclGetIntForIndex} -body {
728 } -returnCodes error -match glob -result *
729 test util-9.35 {TclGetIntForIndex} -body {
731 } -returnCodes error -match glob -result *
732 test util-9.36 {TclGetIntForIndex} -body {
734 } -returnCodes error -match glob -result *
735 test util-9.37 {TclGetIntForIndex} -body {
737 } -returnCodes error -match glob -result *
738 test util-9.38 {TclGetIntForIndex} -body {
740 } -returnCodes error -match glob -result *
741 test util-9.39 {TclGetIntForIndex} -body {
743 } -returnCodes error -match glob -result *
744 test util-9.40 {TclGetIntForIndex} -body {
746 } -returnCodes error -match glob -result *
747 test util-9.41 {TclGetIntForIndex} -body {
749 } -returnCodes error -match glob -result *
750 test util-9.42 {TclGetIntForIndex} -body {
752 } -returnCodes error -match glob -result *
753 test util-9.43 {TclGetIntForIndex} -body {
754 string index a 0+1.5e1
755 } -returnCodes error -match glob -result *
756 test util-9.44 {TclGetIntForIndex} -body {
757 string index a 0+1000000000000
758 } -returnCodes error -match glob -result *
760 test util-10.1 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
761 convertDouble 0x0000000000000000
763 test util-10.2 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
764 convertDouble 0x8000000000000000
766 test util-10.3 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
767 convertDouble 0x7ef754e31cd072da
769 test util-10.4 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
770 convertDouble 0xd08afcef51f0fb5f
772 test util-10.5 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
773 convertDouble 0x7ed754e31cd072da
775 test util-10.6 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
776 convertDouble 0xfee754e31cd072da
778 test util-10.7 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
779 convertDouble 0x0afe07b27dd78b14
781 test util-10.8 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
782 convertDouble 0x93ae29e9c56687fe
784 test util-10.9 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
785 convertDouble 0x376be03d0bf225c7
787 test util-10.10 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
788 convertDouble 0xa0ca2fe76a3f9475
790 test util-10.11 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
791 convertDouble 0x7fa9a2028368022e
793 test util-10.12 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
794 convertDouble 0xdfc317e5ef3ab327
796 test util-10.13 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
797 convertDouble 0x5fd317e5ef3ab327
799 test util-10.14 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
800 convertDouble 0xdfe317e5ef3ab327
802 test util-10.15 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
803 convertDouble 0x00feb8e84fa0b278
805 test util-10.16 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
806 convertDouble 0x8133339131c46f8b
808 test util-10.17 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
809 convertDouble 0x35dc0f92a6276c9d
811 test util-10.18 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
812 convertDouble 0xa445ce1f143d7ad2
814 test util-10.19 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
815 convertDouble 0x2d2c0794d9d40e96
817 test util-10.20 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
818 convertDouble 0xad3c0794d9d40e96
820 test util-10.21 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
821 convertDouble 0x30ecd5bee57763e6
823 test util-10.22 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
824 convertDouble 0x68ad1c26db7d0dae
826 test util-10.23 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
827 convertDouble 0xbfa3f7ced916872b
829 test util-10.24 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
830 convertDouble 0x64b7d93193f78fc6
832 test util-10.25 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
833 convertDouble 0x98ea82a1631eeb30
835 test util-10.26 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
836 convertDouble 0xd216c309024bab4b
838 test util-10.27 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
839 convertDouble 0x0dfdbbac6f83a821
841 test util-10.28 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
842 convertDouble 0xdadc569e968e0944
844 test util-10.29 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
845 convertDouble 0x5acc569e968e0944
847 test util-10.30 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
848 convertDouble 0xab5fc575867314ee
849 } {-9.078555839e-100}
850 test util-10.31 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
851 convertDouble 0xdabc569e968e0944
852 } {-1.227701635e+129}
853 test util-10.32 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
854 convertDouble 0x2b6fc575867314ee
856 test util-10.33 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
857 convertDouble 0xb3b8bf7e7fa6f02a
858 } {-1.5400733123779e-59}
859 test util-10.34 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
860 convertDouble 0xcd83de005bd620df
861 } {-2.6153245263757307e+65}
862 test util-10.35 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
863 convertDouble 0x6cdf92bacb3cb40c
864 } {2.7210404151224248e+216}
865 test util-10.36 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
866 convertDouble 0xecef92bacb3cb40c
867 } {-5.4420808302448496e+216}
868 test util-10.37 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
869 convertDouble 0x49342dbf25096cf5
871 test util-10.38 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
872 convertDouble 0xd06afcef51f0fb5f
874 test util-10.39 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
875 convertDouble 0x49002498ea6df0c4
877 test util-10.40 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
878 convertDouble 0xfeb754e31cd072da
880 test util-10.41 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
881 convertDouble 0x1d22deac01e2b4f7
883 test util-10.42 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
884 convertDouble 0xaccb1df536c13eee
886 test util-10.43 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
887 convertDouble 0x3650711fed5b19a4
889 test util-10.44 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
890 convertDouble 0xb6848d67e8b1e00d
892 test util-10.45 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
893 convertDouble 0x4bac8c574c0c6be7
895 test util-10.46 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
896 convertDouble 0xccd756183c147514
898 test util-10.47 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
899 convertDouble 0x4ca2ab469676c410
901 test util-10.48 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
902 convertDouble 0xcf5539684e774b48
904 test util-10.49 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
905 convertDouble 0x2e12e5f5dfa4fe9d
907 test util-10.50 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
908 convertDouble 0x8b9bdc2417bf7787
910 test util-10.51 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
911 convertDouble 0x00eeb8e84fa0b278
913 test util-10.52 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
914 convertDouble 0xadde3cbc9907fdc8
916 test util-10.53 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
917 convertDouble 0x2bb0ad836f269a17
919 test util-10.54 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
920 convertDouble 0x950b39ae1909c31b
922 test util-10.55 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
923 convertDouble 0x1bfb2ab18615fcc6
925 test util-10.56 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
926 convertDouble 0x98f3e1f90a573064
928 test util-10.57 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
929 convertDouble 0x5206c309024bab4b
931 test util-10.58 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
932 convertDouble 0xcc059bd3ad46e346
934 test util-10.59 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
935 convertDouble 0x47bdf4170f0fdecc
937 test util-10.60 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
938 convertDouble 0x59e7e1e0f1c7a4ac
940 test util-10.61 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
941 convertDouble 0xda1dda592e398dd7
943 test util-10.62 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
944 convertDouble 0xdc4e597c0b94b7ae
946 test util-10.63 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
947 convertDouble 0x5aac569e968e0944
949 test util-10.64 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
950 convertDouble 0xdabc569e968e0944
951 } {-1.227701635e+129}
952 test util-10.65 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
953 convertDouble 0x6ce7ae0c186d8709
954 } {4.081560622683637e+216}
955 test util-10.66 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
956 convertDouble 0x44b52d02c7e14af7
957 } {1.0000000000000001e+23}
958 test util-10.67 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
959 convertDouble 0xc589d971e4fe8402
961 test util-10.68 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
962 convertDouble 0x4599d971e4fe8402
964 test util-10.69 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
965 convertDouble 0xc5a9d971e4fe8402
967 test util-10.70 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
968 convertDouble 0x3e45798ee2308c3a
970 test util-10.71 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
971 convertDouble 0xbe55798ee2308c3a
973 test util-10.72 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
974 convertDouble 0x3e65798ee2308c3a
976 test util-10.73 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
977 convertDouble 0xbabef2d0f5da7dd9
979 test util-10.74 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
980 convertDouble 0x44da784379d99db4
982 test util-10.75 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
983 convertDouble 0xc4fa784379d99db4
985 test util-10.76 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
986 convertDouble 0x4503da329b633647
988 test util-10.77 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
989 convertDouble 0xc54cf389cd46047d
991 test util-10.78 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
992 convertDouble 0x3fc999999999999a
994 test util-10.79 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
995 convertDouble 0xbfd3333333333333
997 test util-10.80 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
998 convertDouble 0x3cf6849b86a12b9b
1000 test util-10.81 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1001 convertDouble 0xbd16849b86a12b9b
1003 test util-10.82 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1004 convertDouble 0x3b87ccfc73126788
1006 test util-10.83 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1007 convertDouble 0xbbbdc03b8fd7016a
1009 test util-10.84 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1010 convertDouble 0x3fa3f7ced916872b
1012 test util-10.85 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1013 convertDouble 0x460b297cad9f70b6
1015 test util-10.86 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1016 convertDouble 0xc61b297cad9f70b6
1018 test util-10.87 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1019 convertDouble 0x3adcdc06b20ef183
1021 test util-10.88 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1022 convertDouble 0x45fb297cad9f70b6
1024 test util-10.89 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1025 convertDouble 0xc60b297cad9f70b6
1027 test util-10.90 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1028 convertDouble 0xbc050a246ecd44f3
1030 test util-10.91 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1031 convertDouble 0xbec19b96f36ec68b
1033 test util-10.92 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1034 convertDouble 0x3dcc06d366394441
1035 } {5.0980203373e-11}
1036 test util-10.93 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1037 convertDouble 0xc79f58ac4db68c90
1038 } {-1.04166211811e+37}
1039 test util-10.94 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1040 convertDouble 0x4569d971e4fe8402
1042 test util-10.95 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1043 convertDouble 0xc50dc74be914d16b
1045 test util-10.96 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1046 convertDouble 0x4534adf4b7320335
1048 test util-10.97 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1049 convertDouble 0xc54ae22487c1042b
1051 test util-10.98 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1052 convertDouble 0x3c987fe49aab41e0
1054 test util-10.99 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1055 convertDouble 0xbc2f5c05e4b23fd7
1057 test util-10.100 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1058 convertDouble 0x3d5faa7ab552a552
1060 test util-10.101 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1061 convertDouble 0xbdbb7cdfd9d7bdbb
1063 test util-10.102 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1064 convertDouble 0x44f3da329b633647
1066 test util-10.103 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1067 convertDouble 0xc53cf389cd46047d
1069 test util-10.104 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1070 convertDouble 0x454f04ef12cb04cf
1072 test util-10.105 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1073 convertDouble 0xc55f04ef12cb04cf
1075 test util-10.106 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1076 convertDouble 0x3fc3333333333333
1078 test util-10.107 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1079 convertDouble 0xbdb07e1fe91b0b70
1081 test util-10.108 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1082 convertDouble 0x3de49da7e361ce4c
1084 test util-10.109 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1085 convertDouble 0xbe19c511dc3a41df
1087 test util-10.110 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1088 convertDouble 0xc5caa83d74267822
1090 test util-10.111 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1091 convertDouble 0x4588f1d5969453de
1093 test util-10.112 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1094 convertDouble 0x3b91d9bd564dcda6
1096 test util-10.113 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1097 convertDouble 0xbcfa58973ecbede6
1099 test util-10.114 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1100 convertDouble 0x45eb297cad9f70b6
1102 test util-10.115 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1103 convertDouble 0xc5fb297cad9f70b6
1105 test util-10.116 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1106 convertDouble 0x3accdc06b20ef183
1108 test util-10.117 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1109 convertDouble 0xbd036071dcae4565
1111 test util-10.118 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1112 convertDouble 0x462cb968d297dde8
1114 test util-10.119 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1115 convertDouble 0xc661f3e1839eeab1
1117 test util-10.120 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1118 convertDouble 0x474e9cec176c96f8
1120 test util-10.121 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1121 convertDouble 0x3dbc06d366394441
1122 } {2.54901016865e-11}
1123 test util-10.122 {Tcl_PrintDouble - rounding} {ieeeFloatingPoint} {
1124 convertDouble 0x478f58ac4db68c90
1125 } {5.20831059055e+36}
1127 test util-11.1 {Tcl_PrintDouble - scaling} {
1130 test util-11.2 {Tcl_PrintDouble - scaling} {
1133 test util-11.3 {Tcl_PrintDouble - scaling} {
1136 test util-11.4 {Tcl_PrintDouble - scaling} {
1139 test util-11.5 {Tcl_PrintDouble - scaling} {
1142 test util-11.6 {Tcl_PrintDouble - scaling} {
1145 test util-11.7 {Tcl_PrintDouble - scaling} {
1148 test util-11.8 {Tcl_PrintDouble - scaling} {
1151 test util-11.9 {Tcl_PrintDouble - scaling} {
1154 test util-11.10 {Tcl_PrintDouble - scaling} {
1157 test util-11.11 {Tcl_PrintDouble - scaling} {
1160 test util-11.12 {Tcl_PrintDouble - scaling} {
1163 test util-11.13 {Tcl_PrintDouble - scaling} {
1166 test util-11.14 {Tcl_PrintDouble - scaling} {
1169 test util-11.15 {Tcl_PrintDouble - scaling} {
1172 test util-11.16 {Tcl_PrintDouble - scaling} {
1175 test util-11.17 {Tcl_PrintDouble - scaling} {
1178 test util-11.18 {Tcl_PrintDouble - scaling} {
1181 test util-11.19 {Tcl_PrintDouble - scaling} {
1183 } {11000000000000.0}
1184 test util-11.20 {Tcl_PrintDouble - scaling} {
1186 } {110000000000000.0}
1187 test util-11.21 {Tcl_PrintDouble - scaling} {
1189 } {1100000000000000.0}
1190 test util-11.22 {Tcl_PrintDouble - scaling} {
1192 } {11000000000000000.0}
1193 test util-11.23 {Tcl_PrintDouble - scaling} {
1197 test util-12.1 {TclDoubleDigits - Inf} {testdoubledigits ieeeFloatingPoint} {
1198 testdoubledigits Inf -1 shortest
1200 test util-12.2 {TclDoubleDigits - -Inf} {testdoubledigits ieeeFloatingPoint} {
1201 testdoubledigits -Inf -1 shortest
1203 test util-12.3 {TclDoubleDigits - NaN} {testdoubledigits ieeeFloatingPoint} {
1204 testdoubledigits $ieeeValues(NaN) -1 shortest
1206 test util-12.4 {TclDoubleDigits - NaN} {*}{
1207 -constraints {testdoubledigits ieeeFloatingPoint controversialNaN}
1209 testdoubledigits -NaN -1 shortest
1211 -result {NaN 9999 -}
1213 test util-12.5 {TclDoubleDigits - 0} testdoubledigits {
1214 testdoubledigits 0.0 -1 shortest
1216 test util-12.6 {TclDoubleDigits - -0} testdoubledigits {
1217 testdoubledigits -0.0 -1 shortest
1220 # Verdonk test vectors
1222 test util-13.1 {just over exact - 1 digits} {*}{
1223 -constraints testdoubledigits
1225 verdonk_test 1754e31cd072da E+1008 +4_000000000000000000& E+303
1229 test util-13.2 {just over exact - 1 digits} {*}{
1230 -constraints testdoubledigits
1232 verdonk_test -1afcef51f0fb5f E+265 -1_000000000000000000& E+80
1236 test util-13.3 {just over exact - 1 digits} {*}{
1237 -constraints testdoubledigits
1239 verdonk_test 1754e31cd072da E+1006 +1_000000000000000000& E+303
1243 test util-13.4 {just over exact - 1 digits} {*}{
1244 -constraints testdoubledigits
1246 verdonk_test -1754e31cd072da E+1007 -2_000000000000000000& E+303
1250 test util-13.5 {just over exact - 1 digits} {*}{
1251 -constraints testdoubledigits
1253 verdonk_test 1e07b27dd78b14 E-848 +1_00000000000000000& E-255
1257 test util-13.6 {just over exact - 1 digits} {*}{
1258 -constraints testdoubledigits
1260 verdonk_test -1e29e9c56687fe E-709 -7_00000000000000000& E-214
1264 test util-13.7 {just over exact - 1 digits} {*}{
1265 -constraints testdoubledigits
1267 verdonk_test 1be03d0bf225c7 E-137 +1_00000000000000000& E-41
1271 test util-13.8 {just over exact - 1 digits} {*}{
1272 -constraints testdoubledigits
1274 verdonk_test -1a2fe76a3f9475 E-499 -1_00000000000000000& E-150
1278 test util-13.9 {just under exact - 1 digits} {*}{
1279 -constraints testdoubledigits
1281 verdonk_test 19a2028368022e E+1019 +8_999999999999999999& E+306
1285 test util-13.10 {just under exact - 1 digits} {*}{
1286 -constraints testdoubledigits
1288 verdonk_test -1317e5ef3ab327 E+509 -1_999999999999999999& E+153
1292 test util-13.11 {just under exact - 1 digits} {*}{
1293 -constraints testdoubledigits
1295 verdonk_test 1317e5ef3ab327 E+510 +3_99999999999999999& E+153
1299 test util-13.12 {just under exact - 1 digits} {*}{
1300 -constraints testdoubledigits
1302 verdonk_test -1317e5ef3ab327 E+511 -7_99999999999999999& E+153
1306 test util-13.13 {just under exact - 1 digits} {*}{
1307 -constraints testdoubledigits
1309 verdonk_test 1eb8e84fa0b278 E-1008 +6_999999999999999999& E-304
1313 test util-13.14 {just under exact - 1 digits} {*}{
1314 -constraints testdoubledigits
1316 verdonk_test -13339131c46f8b E-1004 -6_999999999999999999& E-303
1320 test util-13.15 {just under exact - 1 digits} {*}{
1321 -constraints testdoubledigits
1323 verdonk_test 1c0f92a6276c9d E-162 +2_999999999999999999& E-49
1327 test util-13.16 {just under exact - 1 digits} {*}{
1328 -constraints testdoubledigits
1330 verdonk_test -15ce1f143d7ad2 E-443 -5_99999999999999999& E-134
1334 test util-13.17 {just over exact - 2 digits} {*}{
1335 -constraints testdoubledigits
1337 verdonk_test 1c0794d9d40e96 E-301 +43_000000000000000000& E-92
1341 test util-13.18 {just over exact - 2 digits} {*}{
1342 -constraints testdoubledigits
1344 verdonk_test -1c0794d9d40e96 E-300 -86_000000000000000000& E-92
1348 test util-13.19 {just over exact - 2 digits} {*}{
1349 -constraints testdoubledigits
1351 verdonk_test 1cd5bee57763e6 E-241 +51_000000000000000000& E-74
1355 test util-13.20 {just under exact - 2 digits} {*}{
1356 -constraints testdoubledigits
1358 verdonk_test 1d1c26db7d0dae E+651 +16_999999999999999999& E+195
1362 test util-13.21 {just under exact - 2 digits} {*}{
1363 -constraints testdoubledigits
1365 verdonk_test -13f7ced916872b E-5 -38_999999999999999999& E-3
1369 test util-13.22 {just over exact - 3 digits} {*}{
1370 -constraints testdoubledigits
1372 verdonk_test 17d93193f78fc6 E+588 +151_0000000000000000000& E+175
1376 test util-13.23 {just over exact - 3 digits} {*}{
1377 -constraints testdoubledigits
1379 verdonk_test -1a82a1631eeb30 E-625 -119_000000000000000000& E-190
1383 test util-13.24 {just under exact - 3 digits} {*}{
1384 -constraints testdoubledigits
1386 verdonk_test -16c309024bab4b E+290 -282_999999999999999999& E+85
1390 test util-13.25 {just over exact - 8 digits} {*}{
1391 -constraints testdoubledigits
1393 verdonk_test 1dbbac6f83a821 E-800 +27869147_0000000000000000000& E-248
1397 test util-13.26 {just under exact - 9 digits} {*}{
1398 -constraints testdoubledigits
1400 verdonk_test -1c569e968e0944 E+430 -491080653_9999999999999999999& E+121
1404 test util-13.27 {just under exact - 9 digits} {*}{
1405 -constraints testdoubledigits
1407 verdonk_test 1c569e968e0944 E+429 +245540326_9999999999999999999& E+121
1411 test util-13.28 {just over exact - 10 digits} {*}{
1412 -constraints testdoubledigits
1414 verdonk_test -1fc575867314ee E-330 -9078555839_0000000000000000000& E-109
1418 test util-13.29 {just under exact - 10 digits} {*}{
1419 -constraints testdoubledigits
1421 verdonk_test -1c569e968e0944 E+428 -1227701634_9999999999999999999& E+120
1425 test util-13.30 {just over exact - 11 digits} {*}{
1426 -constraints testdoubledigits
1428 verdonk_test 1fc575867314ee E-329 +18157111678_0000000000000000000& E-109
1432 test util-13.31 {just over exact - 14 digits} {*}{
1433 -constraints testdoubledigits
1435 verdonk_test -18bf7e7fa6f02a E-196 -15400733123779_0000000000000000000& E-72
1439 test util-13.32 {just over exact - 17 digits} {*}{
1440 -constraints testdoubledigits
1442 verdonk_test -13de005bd620df E+217 -26153245263757307_0000000000000000000& E+49
1446 test util-13.33 {just over exact - 18 digits} {*}{
1447 -constraints testdoubledigits
1449 verdonk_test 1f92bacb3cb40c E+718 +272104041512242479_0000000000000000000& E+199
1453 test util-13.34 {just over exact - 18 digits} {*}{
1454 -constraints testdoubledigits
1456 verdonk_test -1f92bacb3cb40c E+719 -544208083024484958_0000000000000000000& E+199
1460 test util-13.35 {just over half ulp - 1 digits} {*}{
1461 -constraints testdoubledigits
1463 verdonk_test 142dbf25096cf5 E+148 +4_500000000000000000& E+44
1467 test util-13.36 {just over half ulp - 1 digits} {*}{
1468 -constraints testdoubledigits
1470 verdonk_test -1afcef51f0fb5f E+263 -2_500000000000000000& E+79
1474 test util-13.37 {just over half ulp - 1 digits} {*}{
1475 -constraints testdoubledigits
1477 verdonk_test 102498ea6df0c4 E+145 +4_500000000000000000& E+43
1481 test util-13.38 {just over half ulp - 1 digits} {*}{
1482 -constraints testdoubledigits
1484 verdonk_test -1754e31cd072da E+1004 -2_500000000000000000& E+302
1488 test util-13.39 {just over half ulp - 1 digits} {*}{
1489 -constraints testdoubledigits
1491 verdonk_test 12deac01e2b4f7 E-557 +2_50000000000000000& E-168
1495 test util-13.40 {just over half ulp - 1 digits} {*}{
1496 -constraints testdoubledigits
1498 verdonk_test -1b1df536c13eee E-307 -6_50000000000000000& E-93
1502 test util-13.41 {just over half ulp - 1 digits} {*}{
1503 -constraints testdoubledigits
1505 verdonk_test 10711fed5b19a4 E-154 +4_50000000000000000& E-47
1509 test util-13.42 {just over half ulp - 1 digits} {*}{
1510 -constraints testdoubledigits
1512 verdonk_test -148d67e8b1e00d E-151 -4_50000000000000000& E-46
1516 test util-13.43 {just under half ulp - 1 digits} {*}{
1517 -constraints testdoubledigits
1519 verdonk_test 1c8c574c0c6be7 E+187 +3_49999999999999999& E+56
1523 test util-13.44 {just under half ulp - 1 digits} {*}{
1524 -constraints testdoubledigits
1526 verdonk_test -1756183c147514 E+206 -1_49999999999999999& E+62
1530 test util-13.45 {just under half ulp - 1 digits} {*}{
1531 -constraints testdoubledigits
1533 verdonk_test 12ab469676c410 E+203 +1_49999999999999999& E+61
1537 test util-13.46 {just under half ulp - 1 digits} {*}{
1538 -constraints testdoubledigits
1540 verdonk_test -1539684e774b48 E+246 -1_49999999999999999& E+74
1544 test util-13.47 {just under half ulp - 1 digits} {*}{
1545 -constraints testdoubledigits
1547 verdonk_test 12e5f5dfa4fe9d E-286 +9_499999999999999999& E-87
1551 test util-13.48 {just under half ulp - 1 digits} {*}{
1552 -constraints testdoubledigits
1554 verdonk_test -1bdc2417bf7787 E-838 -9_499999999999999999& E-253
1558 test util-13.49 {just under half ulp - 1 digits} {*}{
1559 -constraints testdoubledigits
1561 verdonk_test 1eb8e84fa0b278 E-1009 +3_499999999999999999& E-304
1565 test util-13.50 {just under half ulp - 1 digits} {*}{
1566 -constraints testdoubledigits
1568 verdonk_test -1e3cbc9907fdc8 E-290 -9_499999999999999999& E-88
1572 test util-13.51 {just over half ulp - 2 digits} {*}{
1573 -constraints testdoubledigits
1575 verdonk_test 10ad836f269a17 E-324 +30_500000000000000000& E-99
1579 test util-13.52 {just over half ulp - 2 digits} {*}{
1580 -constraints testdoubledigits
1582 verdonk_test -1b39ae1909c31b E-687 -26_500000000000000000& E-208
1586 test util-13.53 {just over half ulp - 3 digits} {*}{
1587 -constraints testdoubledigits
1589 verdonk_test 1b2ab18615fcc6 E-576 +686_500000000000000000& E-176
1593 test util-13.54 {just over half ulp - 3 digits} {*}{
1594 -constraints testdoubledigits
1596 verdonk_test -13e1f90a573064 E-624 -178_500000000000000000& E-190
1600 test util-13.55 {just under half ulp - 3 digits} {*}{
1601 -constraints testdoubledigits
1603 verdonk_test 16c309024bab4b E+289 +141_499999999999999999& E+85
1607 test util-13.56 {just under half ulp - 4 digits} {*}{
1608 -constraints testdoubledigits
1610 verdonk_test -159bd3ad46e346 E+193 -1695_499999999999999999& E+55
1614 test util-13.57 {just under half ulp - 4 digits} {*}{
1615 -constraints testdoubledigits
1617 verdonk_test 1df4170f0fdecc E+124 +3981_499999999999999999& E+34
1621 test util-13.58 {just over half ulp - 6 digits} {*}{
1622 -constraints testdoubledigits
1624 verdonk_test 17e1e0f1c7a4ac E+415 +126300_5000000000000000000& E+120
1628 test util-13.59 {just over half ulp - 6 digits} {*}{
1629 -constraints testdoubledigits
1631 verdonk_test -1dda592e398dd7 E+418 -126300_5000000000000000000& E+121
1635 test util-13.60 {just under half ulp - 7 digits} {*}{
1636 -constraints testdoubledigits
1638 verdonk_test -1e597c0b94b7ae E+453 -4411845_499999999999999999& E+130
1642 test util-13.61 {just under half ulp - 9 digits} {*}{
1643 -constraints testdoubledigits
1645 verdonk_test 1c569e968e0944 E+427 +613850817_4999999999999999999& E+120
1649 test util-13.62 {just under half ulp - 9 digits} {*}{
1650 -constraints testdoubledigits
1652 verdonk_test -1c569e968e0944 E+428 -122770163_49999999999999999999& E+121
1656 test util-13.63 {just over half ulp - 18 digits} {*}{
1657 -constraints testdoubledigits
1659 verdonk_test 17ae0c186d8709 E+719 +408156062268363718_5000000000000000000& E+199
1663 test util-13.64 {just over exact - 1 digits} {*}{
1664 -constraints testdoubledigits
1666 verdonk_test 152d02c7e14af7 E+76 +1_0000000000000000& E+23
1670 test util-13.65 {just over exact - 1 digits} {*}{
1671 -constraints testdoubledigits
1673 verdonk_test -19d971e4fe8402 E+89 -1_0000000000000000& E+27
1677 test util-13.66 {just over exact - 1 digits} {*}{
1678 -constraints testdoubledigits
1680 verdonk_test 19d971e4fe8402 E+90 +2_0000000000000000& E+27
1684 test util-13.67 {just over exact - 1 digits} {*}{
1685 -constraints testdoubledigits
1687 verdonk_test -19d971e4fe8402 E+91 -4_0000000000000000& E+27
1691 test util-13.68 {just over exact - 1 digits} {*}{
1692 -constraints testdoubledigits
1694 verdonk_test 15798ee2308c3a E-27 +1_0000000000000000& E-8
1698 test util-13.69 {just over exact - 1 digits} {*}{
1699 -constraints testdoubledigits
1701 verdonk_test -15798ee2308c3a E-26 -2_0000000000000000& E-8
1705 test util-13.70 {just over exact - 1 digits} {*}{
1706 -constraints testdoubledigits
1708 verdonk_test 15798ee2308c3a E-25 +4_0000000000000000& E-8
1712 test util-13.71 {just over exact - 1 digits} {*}{
1713 -constraints testdoubledigits
1715 verdonk_test -1ef2d0f5da7dd9 E-84 -1_0000000000000000& E-25
1719 test util-13.72 {just under exact - 1 digits} {*}{
1720 -constraints testdoubledigits
1722 verdonk_test 1a784379d99db4 E+78 +4_9999999999999999& E+23
1726 test util-13.73 {just under exact - 1 digits} {*}{
1727 -constraints testdoubledigits
1729 verdonk_test -1a784379d99db4 E+80 -1_9999999999999999& E+24
1733 test util-13.74 {just under exact - 1 digits} {*}{
1734 -constraints testdoubledigits
1736 verdonk_test 13da329b633647 E+81 +2_9999999999999999& E+24
1740 test util-13.75 {just under exact - 1 digits} {*}{
1741 -constraints testdoubledigits
1743 verdonk_test -1cf389cd46047d E+85 -6_9999999999999999& E+25
1747 test util-13.76 {just under exact - 1 digits} {*}{
1748 -constraints testdoubledigits
1750 verdonk_test 19999999999999 E-3 +1_99999999999999999& E-1
1754 test util-13.77 {just under exact - 1 digits} {*}{
1755 -constraints testdoubledigits
1757 verdonk_test -13333333333333 E-2 -2_99999999999999999& E-1
1761 test util-13.78 {just under exact - 1 digits} {*}{
1762 -constraints testdoubledigits
1764 verdonk_test 16849b86a12b9b E-48 +4_99999999999999999& E-15
1768 test util-13.79 {just under exact - 1 digits} {*}{
1769 -constraints testdoubledigits
1771 verdonk_test -16849b86a12b9b E-46 -1_99999999999999999& E-14
1775 test util-13.80 {just over exact - 2 digits} {*}{
1776 -constraints testdoubledigits
1778 verdonk_test 17ccfc73126788 E-71 +63_00000000000000000& E-23
1782 test util-13.81 {just over exact - 2 digits} {*}{
1783 -constraints testdoubledigits
1785 verdonk_test -1dc03b8fd7016a E-68 -63_00000000000000000& E-22
1789 test util-13.82 {just under exact - 2 digits} {*}{
1790 -constraints testdoubledigits
1792 verdonk_test 13f7ced916872b E-5 +38_999999999999999999& E-3
1796 test util-13.83 {just over exact - 3 digits} {*}{
1797 -constraints testdoubledigits
1799 verdonk_test 1b297cad9f70b6 E+97 +269_000000000000000000& E+27
1803 test util-13.84 {just over exact - 3 digits} {*}{
1804 -constraints testdoubledigits
1806 verdonk_test -1b297cad9f70b6 E+98 -538_00000000000000000& E+27
1810 test util-13.85 {just over exact - 3 digits} {*}{
1811 -constraints testdoubledigits
1813 verdonk_test 1cdc06b20ef183 E-82 +373_00000000000000000& E-27
1817 test util-13.86 {just over exact - 4 digits} {*}{
1818 -constraints testdoubledigits
1820 verdonk_test 1b297cad9f70b6 E+96 +1345_00000000000000000& E+26
1824 # this one is not 4 digits, it is 3, and it is covered above.
1825 test util-13.87 {just over exact - 4 digits} {*}{
1826 -constraints {testdoubledigits knownBadTest}
1828 verdonk_test -1b297cad9f70b6 E+97 -2690_00000000000000000& E+26
1832 test util-13.88 {just over exact - 5 digits} {*}{
1833 -constraints testdoubledigits
1835 verdonk_test -150a246ecd44f3 E-63 -14257_00000000000000000& E-23
1839 test util-13.89 {just under exact - 6 digits} {*}{
1840 -constraints testdoubledigits
1842 verdonk_test -119b96f36ec68b E-19 -209900_999999999999999999& E-11
1846 test util-13.90 {just over exact - 11 digits} {*}{
1847 -constraints testdoubledigits
1849 verdonk_test 1c06d366394441 E-35 +50980203373_000000000000000000& E-21
1853 test util-13.91 {just under exact - 12 digits} {*}{
1854 -constraints testdoubledigits
1856 verdonk_test -1f58ac4db68c90 E+122 -104166211810_99999999999999999& E+26
1860 test util-13.92 {just over half ulp - 1 digits} {*}{
1861 -constraints testdoubledigits
1863 verdonk_test 19d971e4fe8402 E+87 +2_5000000000000000& E+26
1867 test util-13.93 {just over half ulp - 1 digits} {*}{
1868 -constraints testdoubledigits
1870 verdonk_test -1dc74be914d16b E+81 -4_500000000000000& E+24
1874 test util-13.94 {just over half ulp - 1 digits} {*}{
1875 -constraints testdoubledigits
1877 verdonk_test 14adf4b7320335 E+84 +2_500000000000000& E+25
1881 test util-13.95 {just over half ulp - 1 digits} {*}{
1882 -constraints testdoubledigits
1884 verdonk_test -1ae22487c1042b E+85 -6_5000000000000000& E+25
1888 test util-13.96 {just over half ulp - 1 digits} {*}{
1889 -constraints testdoubledigits
1891 verdonk_test 187fe49aab41e0 E-54 +8_5000000000000000& E-17
1895 test util-13.97 {just over half ulp - 1 digits} {*}{
1896 -constraints testdoubledigits
1898 verdonk_test -1f5c05e4b23fd7 E-61 -8_5000000000000000& E-19
1902 test util-13.98 {just over half ulp - 1 digits} {*}{
1903 -constraints testdoubledigits
1905 verdonk_test 1faa7ab552a552 E-42 +4_5000000000000000& E-13
1909 test util-13.99 {just over half ulp - 1 digits} {*}{
1910 -constraints testdoubledigits
1912 verdonk_test -1b7cdfd9d7bdbb E-36 -2_5000000000000000& E-11
1916 test util-13.100 {just under half ulp - 1 digits} {*}{
1917 -constraints testdoubledigits
1919 verdonk_test 13da329b633647 E+80 +1_4999999999999999& E+24
1923 test util-13.101 {just under half ulp - 1 digits} {*}{
1924 -constraints testdoubledigits
1926 verdonk_test -1cf389cd46047d E+84 -3_49999999999999999& E+25
1930 test util-13.102 {just under half ulp - 1 digits} {*}{
1931 -constraints testdoubledigits
1933 verdonk_test 1f04ef12cb04cf E+85 +7_4999999999999999& E+25
1937 test util-13.103 {just under half ulp - 1 digits} {*}{
1938 -constraints testdoubledigits
1940 verdonk_test -1f04ef12cb04cf E+86 -1_4999999999999999& E+26
1944 test util-13.104 {just under half ulp - 1 digits} {*}{
1945 -constraints testdoubledigits
1947 verdonk_test 13333333333333 E-3 +1_49999999999999999& E-1
1951 test util-13.105 {just under half ulp - 1 digits} {*}{
1952 -constraints testdoubledigits
1954 verdonk_test -107e1fe91b0b70 E-36 -1_49999999999999999& E-11
1958 test util-13.106 {just under half ulp - 1 digits} {*}{
1959 -constraints testdoubledigits
1961 verdonk_test 149da7e361ce4c E-33 +1_49999999999999999& E-10
1965 test util-13.107 {just under half ulp - 1 digits} {*}{
1966 -constraints testdoubledigits
1968 verdonk_test -19c511dc3a41df E-30 -1_49999999999999999& E-9
1972 test util-13.108 {just over half ulp - 2 digits} {*}{
1973 -constraints testdoubledigits
1975 verdonk_test -1aa83d74267822 E+93 -16_5000000000000000& E+27
1979 test util-13.109 {just over half ulp - 2 digits} {*}{
1980 -constraints testdoubledigits
1982 verdonk_test 18f1d5969453de E+89 +96_5000000000000000& E+25
1986 test util-13.110 {just over half ulp - 2 digits} {*}{
1987 -constraints testdoubledigits
1989 verdonk_test 11d9bd564dcda6 E-70 +94_50000000000000000& E-23
1993 test util-13.111 {just over half ulp - 2 digits} {*}{
1994 -constraints testdoubledigits
1996 verdonk_test -1a58973ecbede6 E-48 -58_50000000000000000& E-16
2000 test util-13.112 {just over half ulp - 3 digits} {*}{
2001 -constraints testdoubledigits
2003 verdonk_test 1b297cad9f70b6 E+95 +672_50000000000000000& E+26
2007 test util-13.113 {just over half ulp - 3 digits} {*}{
2008 -constraints testdoubledigits
2010 verdonk_test -1b297cad9f70b6 E+96 -134_500000000000000000& E+27
2014 test util-13.114 {just over half ulp - 3 digits} {*}{
2015 -constraints testdoubledigits
2017 verdonk_test 1cdc06b20ef183 E-83 +186_50000000000000000& E-27
2021 test util-13.115 {just over half ulp - 3 digits} {*}{
2022 -constraints testdoubledigits
2024 verdonk_test -136071dcae4565 E-47 -860_50000000000000000& E-17
2028 test util-13.116 {just over half ulp - 6 digits} {*}{
2029 -constraints testdoubledigits
2031 verdonk_test 1cb968d297dde8 E+99 +113788_50000000000000000& E+25
2035 test util-13.117 {just over half ulp - 6 digits} {*}{
2036 -constraints testdoubledigits
2038 verdonk_test -11f3e1839eeab1 E+103 -113788_50000000000000000& E+26
2042 test util-13.118 {just under half ulp - 9 digits} {*}{
2043 -constraints testdoubledigits
2045 verdonk_test 1e9cec176c96f8 E+117 +317903333_49999999999999999& E+27
2049 test util-13.119 {just over half ulp - 11 digits} {*}{
2050 -constraints testdoubledigits
2052 verdonk_test 1c06d366394441 E-36 +25490101686_500000000000000000& E-21
2056 test util-13.120 {just under half ulp - 11 digits} {*}{
2057 -constraints testdoubledigits
2059 verdonk_test 1f58ac4db68c90 E+121 +52083105905_49999999999999999& E+26
2064 test util-14.1 {funky NaN} {*}{
2065 -constraints {ieeeFloatingPoint controversialNaN}
2067 set ieeeValues(-NaN)
2072 test util-14.2 {funky NaN} {*}{
2073 -constraints {ieeeFloatingPoint controversialNaN}
2075 set ieeeValues(-NaN(3456789abcdef))
2077 -result -NaN(3456789abcdef)
2080 test util-15.1 {largest subnormal} {*}{
2082 binary scan [binary format w 0x000fffffffffffff] q x
2085 -result 2.225073858507201e-308
2091 test util-15.2 {largest subnormal} {*}{
2093 binary scan [binary format w 0x800fffffffffffff] q x
2096 -result -2.225073858507201e-308
2102 test util-15.3 {largest subnormal} {*}{
2104 binary scan [binary format q 2.225073858507201e-308] w x
2107 -result 0xfffffffffffff
2113 test util-15.4 {largest subnormal} {*}{
2115 binary scan [binary format q -2.225073858507201e-308] w x
2118 -result 0x800fffffffffffff
2124 test util-15.5 {smallest normal} {*}{
2126 binary scan [binary format w 0x0010000000000000] q x
2129 -result 2.2250738585072014e-308
2135 test util-15.6 {smallest normal} {*}{
2137 binary scan [binary format w 0x8010000000000000] q x
2140 -result -2.2250738585072014e-308
2146 test util-15.7 {smallest normal} {*}{
2148 binary scan [binary format q 2.2250738585072014e-308] w x
2151 -result 0x10000000000000
2157 test util-15.8 {smallest normal} {*}{
2159 binary scan [binary format q -2.2250738585072014e-308] w x
2162 -result 0x8010000000000000
2168 set saved_precision $::tcl_precision
2169 foreach ::tcl_precision {0 12} {
2170 for {set e -312} {$e < -9} {incr e} {
2171 test util-16.1.$::tcl_precision.$e {shortening of numbers} \
2172 "expr {1.1e$e}" 1.1e$e
2176 for {set e -9} {$e < -4} {incr e} {
2177 test util-16.1.$::tcl_precision.$e {shortening of numbers} \
2178 "expr {1.1e$e}" 1.1e$e
2180 set tcl_precision 12
2181 for {set e -9} {$e < -4} {incr e} {
2182 test util-16.1.$::tcl_precision.$e {8.4 compatible formatting of doubles} \
2183 "expr {1.1e$e}" 1.1e[format %+03d $e]
2185 foreach ::tcl_precision {0 12} {
2186 test util-16.1.$::tcl_precision.-4 {shortening of numbers} \
2189 test util-16.1.$::tcl_precision.-3 {shortening of numbers} \
2192 test util-16.1.$::tcl_precision.-2 {shortening of numbers} \
2195 test util-16.1.$::tcl_precision.-1 {shortening of numbers} \
2198 test util-16.1.$::tcl_precision.0 {shortening of numbers} \
2201 for {set e 1} {$e < 17} {incr e} {
2202 test util-16.1.$::tcl_precision.$e {shortening of numbers} \
2203 "expr {11[string repeat 0 [expr {$e-1}]].0}" \
2204 11[string repeat 0 [expr {$e-1}]].0
2206 for {set e 17} {$e < 309} {incr e} {
2207 test util-16.1.$::tcl_precision.$e {shortening of numbers} \
2208 "expr {1.1e$e}" 1.1e+$e
2211 set tcl_precision 17
2212 test util-16.1.17.-300 {8.4 compatible formatting of doubles} \
2215 test util-16.1.17.-299 {8.4 compatible formatting of doubles} \
2217 9.9999999999999999e-300
2218 test util-16.1.17.-298 {8.4 compatible formatting of doubles} \
2220 9.9999999999999991e-299
2221 test util-16.1.17.-297 {8.4 compatible formatting of doubles} \
2224 test util-16.1.17.-296 {8.4 compatible formatting of doubles} \
2227 test util-16.1.17.-295 {8.4 compatible formatting of doubles} \
2229 1.0000000000000001e-295
2230 test util-16.1.17.-294 {8.4 compatible formatting of doubles} \
2233 test util-16.1.17.-293 {8.4 compatible formatting of doubles} \
2235 1.0000000000000001e-293
2236 test util-16.1.17.-292 {8.4 compatible formatting of doubles} \
2238 1.0000000000000001e-292
2239 test util-16.1.17.-291 {8.4 compatible formatting of doubles} \
2241 9.9999999999999996e-292
2242 test util-16.1.17.-290 {8.4 compatible formatting of doubles} \
2244 1.0000000000000001e-290
2245 test util-16.1.17.-289 {8.4 compatible formatting of doubles} \
2248 test util-16.1.17.-288 {8.4 compatible formatting of doubles} \
2250 1.0000000000000001e-288
2251 test util-16.1.17.-287 {8.4 compatible formatting of doubles} \
2254 test util-16.1.17.-286 {8.4 compatible formatting of doubles} \
2256 1.0000000000000001e-286
2257 test util-16.1.17.-285 {8.4 compatible formatting of doubles} \
2259 1.0000000000000001e-285
2260 test util-16.1.17.-284 {8.4 compatible formatting of doubles} \
2263 test util-16.1.17.-283 {8.4 compatible formatting of doubles} \
2265 9.9999999999999995e-284
2266 test util-16.1.17.-282 {8.4 compatible formatting of doubles} \
2269 test util-16.1.17.-281 {8.4 compatible formatting of doubles} \
2272 test util-16.1.17.-280 {8.4 compatible formatting of doubles} \
2274 9.9999999999999996e-281
2275 test util-16.1.17.-279 {8.4 compatible formatting of doubles} \
2277 1.0000000000000001e-279
2278 test util-16.1.17.-278 {8.4 compatible formatting of doubles} \
2280 9.9999999999999994e-279
2281 test util-16.1.17.-277 {8.4 compatible formatting of doubles} \
2283 9.9999999999999997e-278
2284 test util-16.1.17.-276 {8.4 compatible formatting of doubles} \
2286 1.0000000000000001e-276
2287 test util-16.1.17.-275 {8.4 compatible formatting of doubles} \
2289 9.9999999999999993e-276
2290 test util-16.1.17.-274 {8.4 compatible formatting of doubles} \
2292 9.9999999999999997e-275
2293 test util-16.1.17.-273 {8.4 compatible formatting of doubles} \
2295 1.0000000000000001e-273
2296 test util-16.1.17.-272 {8.4 compatible formatting of doubles} \
2298 9.9999999999999993e-273
2299 test util-16.1.17.-271 {8.4 compatible formatting of doubles} \
2301 9.9999999999999996e-272
2302 test util-16.1.17.-270 {8.4 compatible formatting of doubles} \
2305 test util-16.1.17.-269 {8.4 compatible formatting of doubles} \
2307 9.9999999999999996e-270
2308 test util-16.1.17.-268 {8.4 compatible formatting of doubles} \
2310 9.9999999999999996e-269
2311 test util-16.1.17.-267 {8.4 compatible formatting of doubles} \
2313 9.9999999999999998e-268
2314 test util-16.1.17.-266 {8.4 compatible formatting of doubles} \
2316 9.9999999999999998e-267
2317 test util-16.1.17.-265 {8.4 compatible formatting of doubles} \
2319 9.9999999999999998e-266
2320 test util-16.1.17.-264 {8.4 compatible formatting of doubles} \
2323 test util-16.1.17.-263 {8.4 compatible formatting of doubles} \
2326 test util-16.1.17.-262 {8.4 compatible formatting of doubles} \
2329 test util-16.1.17.-261 {8.4 compatible formatting of doubles} \
2331 9.9999999999999998e-262
2332 test util-16.1.17.-260 {8.4 compatible formatting of doubles} \
2334 9.9999999999999996e-261
2335 test util-16.1.17.-259 {8.4 compatible formatting of doubles} \
2337 1.0000000000000001e-259
2338 test util-16.1.17.-258 {8.4 compatible formatting of doubles} \
2340 9.9999999999999995e-259
2341 test util-16.1.17.-257 {8.4 compatible formatting of doubles} \
2343 9.9999999999999998e-258
2344 test util-16.1.17.-256 {8.4 compatible formatting of doubles} \
2346 9.9999999999999998e-257
2347 test util-16.1.17.-255 {8.4 compatible formatting of doubles} \
2350 test util-16.1.17.-254 {8.4 compatible formatting of doubles} \
2352 9.9999999999999991e-255
2353 test util-16.1.17.-253 {8.4 compatible formatting of doubles} \
2355 1.0000000000000001e-253
2356 test util-16.1.17.-252 {8.4 compatible formatting of doubles} \
2358 9.9999999999999994e-253
2359 test util-16.1.17.-251 {8.4 compatible formatting of doubles} \
2362 test util-16.1.17.-250 {8.4 compatible formatting of doubles} \
2364 1.0000000000000001e-250
2365 test util-16.1.17.-249 {8.4 compatible formatting of doubles} \
2367 1.0000000000000001e-249
2368 test util-16.1.17.-248 {8.4 compatible formatting of doubles} \
2370 9.9999999999999998e-249
2371 test util-16.1.17.-247 {8.4 compatible formatting of doubles} \
2374 test util-16.1.17.-246 {8.4 compatible formatting of doubles} \
2376 9.9999999999999996e-247
2377 test util-16.1.17.-245 {8.4 compatible formatting of doubles} \
2379 9.9999999999999993e-246
2380 test util-16.1.17.-244 {8.4 compatible formatting of doubles} \
2382 9.9999999999999993e-245
2383 test util-16.1.17.-243 {8.4 compatible formatting of doubles} \
2386 test util-16.1.17.-242 {8.4 compatible formatting of doubles} \
2388 9.9999999999999997e-243
2389 test util-16.1.17.-241 {8.4 compatible formatting of doubles} \
2391 9.9999999999999997e-242
2392 test util-16.1.17.-240 {8.4 compatible formatting of doubles} \
2394 9.9999999999999997e-241
2395 test util-16.1.17.-239 {8.4 compatible formatting of doubles} \
2397 1.0000000000000001e-239
2398 test util-16.1.17.-238 {8.4 compatible formatting of doubles} \
2400 9.9999999999999999e-239
2401 test util-16.1.17.-237 {8.4 compatible formatting of doubles} \
2403 9.9999999999999999e-238
2404 test util-16.1.17.-236 {8.4 compatible formatting of doubles} \
2407 test util-16.1.17.-235 {8.4 compatible formatting of doubles} \
2409 9.9999999999999996e-236
2410 test util-16.1.17.-234 {8.4 compatible formatting of doubles} \
2412 9.9999999999999996e-235
2413 test util-16.1.17.-233 {8.4 compatible formatting of doubles} \
2415 9.9999999999999996e-234
2416 test util-16.1.17.-232 {8.4 compatible formatting of doubles} \
2419 test util-16.1.17.-231 {8.4 compatible formatting of doubles} \
2421 9.9999999999999999e-232
2422 test util-16.1.17.-230 {8.4 compatible formatting of doubles} \
2425 test util-16.1.17.-229 {8.4 compatible formatting of doubles} \
2427 1.0000000000000001e-229
2428 test util-16.1.17.-228 {8.4 compatible formatting of doubles} \
2431 test util-16.1.17.-227 {8.4 compatible formatting of doubles} \
2433 9.9999999999999994e-228
2434 test util-16.1.17.-226 {8.4 compatible formatting of doubles} \
2436 9.9999999999999992e-227
2437 test util-16.1.17.-225 {8.4 compatible formatting of doubles} \
2439 9.9999999999999996e-226
2440 test util-16.1.17.-224 {8.4 compatible formatting of doubles} \
2443 test util-16.1.17.-223 {8.4 compatible formatting of doubles} \
2445 9.9999999999999997e-224
2446 test util-16.1.17.-222 {8.4 compatible formatting of doubles} \
2449 test util-16.1.17.-221 {8.4 compatible formatting of doubles} \
2452 test util-16.1.17.-220 {8.4 compatible formatting of doubles} \
2454 9.9999999999999999e-221
2455 test util-16.1.17.-219 {8.4 compatible formatting of doubles} \
2458 test util-16.1.17.-218 {8.4 compatible formatting of doubles} \
2461 test util-16.1.17.-217 {8.4 compatible formatting of doubles} \
2463 1.0000000000000001e-217
2464 test util-16.1.17.-216 {8.4 compatible formatting of doubles} \
2467 test util-16.1.17.-215 {8.4 compatible formatting of doubles} \
2470 test util-16.1.17.-214 {8.4 compatible formatting of doubles} \
2472 9.9999999999999991e-215
2473 test util-16.1.17.-213 {8.4 compatible formatting of doubles} \
2475 9.9999999999999995e-214
2476 test util-16.1.17.-212 {8.4 compatible formatting of doubles} \
2478 9.9999999999999995e-213
2479 test util-16.1.17.-211 {8.4 compatible formatting of doubles} \
2481 1.0000000000000001e-211
2482 test util-16.1.17.-210 {8.4 compatible formatting of doubles} \
2485 test util-16.1.17.-209 {8.4 compatible formatting of doubles} \
2488 test util-16.1.17.-208 {8.4 compatible formatting of doubles} \
2490 1.0000000000000001e-208
2491 test util-16.1.17.-207 {8.4 compatible formatting of doubles} \
2493 9.9999999999999993e-208
2494 test util-16.1.17.-206 {8.4 compatible formatting of doubles} \
2497 test util-16.1.17.-205 {8.4 compatible formatting of doubles} \
2500 test util-16.1.17.-204 {8.4 compatible formatting of doubles} \
2503 test util-16.1.17.-203 {8.4 compatible formatting of doubles} \
2506 test util-16.1.17.-202 {8.4 compatible formatting of doubles} \
2509 test util-16.1.17.-201 {8.4 compatible formatting of doubles} \
2511 9.9999999999999995e-202
2512 test util-16.1.17.-200 {8.4 compatible formatting of doubles} \
2514 9.9999999999999998e-201
2515 test util-16.1.17.-199 {8.4 compatible formatting of doubles} \
2517 9.9999999999999998e-200
2518 test util-16.1.17.-198 {8.4 compatible formatting of doubles} \
2520 9.9999999999999991e-199
2521 test util-16.1.17.-197 {8.4 compatible formatting of doubles} \
2523 9.9999999999999999e-198
2524 test util-16.1.17.-196 {8.4 compatible formatting of doubles} \
2527 test util-16.1.17.-195 {8.4 compatible formatting of doubles} \
2529 1.0000000000000001e-195
2530 test util-16.1.17.-194 {8.4 compatible formatting of doubles} \
2533 test util-16.1.17.-193 {8.4 compatible formatting of doubles} \
2536 test util-16.1.17.-192 {8.4 compatible formatting of doubles} \
2538 1.0000000000000001e-192
2539 test util-16.1.17.-191 {8.4 compatible formatting of doubles} \
2542 test util-16.1.17.-190 {8.4 compatible formatting of doubles} \
2545 test util-16.1.17.-189 {8.4 compatible formatting of doubles} \
2547 1.0000000000000001e-189
2548 test util-16.1.17.-188 {8.4 compatible formatting of doubles} \
2550 9.9999999999999995e-189
2551 test util-16.1.17.-187 {8.4 compatible formatting of doubles} \
2554 test util-16.1.17.-186 {8.4 compatible formatting of doubles} \
2556 9.9999999999999991e-187
2557 test util-16.1.17.-185 {8.4 compatible formatting of doubles} \
2559 9.9999999999999999e-186
2560 test util-16.1.17.-184 {8.4 compatible formatting of doubles} \
2562 1.0000000000000001e-184
2563 test util-16.1.17.-183 {8.4 compatible formatting of doubles} \
2566 test util-16.1.17.-182 {8.4 compatible formatting of doubles} \
2569 test util-16.1.17.-181 {8.4 compatible formatting of doubles} \
2572 test util-16.1.17.-180 {8.4 compatible formatting of doubles} \
2575 test util-16.1.17.-179 {8.4 compatible formatting of doubles} \
2578 test util-16.1.17.-178 {8.4 compatible formatting of doubles} \
2580 9.9999999999999995e-179
2581 test util-16.1.17.-177 {8.4 compatible formatting of doubles} \
2583 9.9999999999999995e-178
2584 test util-16.1.17.-176 {8.4 compatible formatting of doubles} \
2587 test util-16.1.17.-175 {8.4 compatible formatting of doubles} \
2590 test util-16.1.17.-174 {8.4 compatible formatting of doubles} \
2593 test util-16.1.17.-173 {8.4 compatible formatting of doubles} \
2596 test util-16.1.17.-172 {8.4 compatible formatting of doubles} \
2599 test util-16.1.17.-171 {8.4 compatible formatting of doubles} \
2601 9.9999999999999998e-172
2602 test util-16.1.17.-170 {8.4 compatible formatting of doubles} \
2604 9.9999999999999998e-171
2605 test util-16.1.17.-169 {8.4 compatible formatting of doubles} \
2608 test util-16.1.17.-168 {8.4 compatible formatting of doubles} \
2611 test util-16.1.17.-167 {8.4 compatible formatting of doubles} \
2614 test util-16.1.17.-166 {8.4 compatible formatting of doubles} \
2617 test util-16.1.17.-165 {8.4 compatible formatting of doubles} \
2620 test util-16.1.17.-164 {8.4 compatible formatting of doubles} \
2622 9.9999999999999996e-165
2623 test util-16.1.17.-163 {8.4 compatible formatting of doubles} \
2625 9.9999999999999992e-164
2626 test util-16.1.17.-162 {8.4 compatible formatting of doubles} \
2628 9.9999999999999995e-163
2629 test util-16.1.17.-161 {8.4 compatible formatting of doubles} \
2632 test util-16.1.17.-160 {8.4 compatible formatting of doubles} \
2634 9.9999999999999999e-161
2635 test util-16.1.17.-159 {8.4 compatible formatting of doubles} \
2637 9.9999999999999999e-160
2638 test util-16.1.17.-158 {8.4 compatible formatting of doubles} \
2640 1.0000000000000001e-158
2641 test util-16.1.17.-157 {8.4 compatible formatting of doubles} \
2643 9.9999999999999994e-158
2644 test util-16.1.17.-156 {8.4 compatible formatting of doubles} \
2647 test util-16.1.17.-155 {8.4 compatible formatting of doubles} \
2650 test util-16.1.17.-154 {8.4 compatible formatting of doubles} \
2652 9.9999999999999997e-155
2653 test util-16.1.17.-153 {8.4 compatible formatting of doubles} \
2656 test util-16.1.17.-152 {8.4 compatible formatting of doubles} \
2658 1.0000000000000001e-152
2659 test util-16.1.17.-151 {8.4 compatible formatting of doubles} \
2661 9.9999999999999994e-152
2662 test util-16.1.17.-150 {8.4 compatible formatting of doubles} \
2665 test util-16.1.17.-149 {8.4 compatible formatting of doubles} \
2667 9.9999999999999998e-150
2668 test util-16.1.17.-148 {8.4 compatible formatting of doubles} \
2670 9.9999999999999994e-149
2671 test util-16.1.17.-147 {8.4 compatible formatting of doubles} \
2673 9.9999999999999997e-148
2674 test util-16.1.17.-146 {8.4 compatible formatting of doubles} \
2677 test util-16.1.17.-145 {8.4 compatible formatting of doubles} \
2679 9.9999999999999991e-146
2680 test util-16.1.17.-144 {8.4 compatible formatting of doubles} \
2682 9.9999999999999995e-145
2683 test util-16.1.17.-143 {8.4 compatible formatting of doubles} \
2685 9.9999999999999995e-144
2686 test util-16.1.17.-142 {8.4 compatible formatting of doubles} \
2689 test util-16.1.17.-141 {8.4 compatible formatting of doubles} \
2692 test util-16.1.17.-140 {8.4 compatible formatting of doubles} \
2694 9.9999999999999998e-141
2695 test util-16.1.17.-139 {8.4 compatible formatting of doubles} \
2698 test util-16.1.17.-138 {8.4 compatible formatting of doubles} \
2700 1.0000000000000001e-138
2701 test util-16.1.17.-137 {8.4 compatible formatting of doubles} \
2703 9.9999999999999998e-138
2704 test util-16.1.17.-136 {8.4 compatible formatting of doubles} \
2707 test util-16.1.17.-135 {8.4 compatible formatting of doubles} \
2710 test util-16.1.17.-134 {8.4 compatible formatting of doubles} \
2713 test util-16.1.17.-133 {8.4 compatible formatting of doubles} \
2715 1.0000000000000001e-133
2716 test util-16.1.17.-132 {8.4 compatible formatting of doubles} \
2718 9.9999999999999999e-133
2719 test util-16.1.17.-131 {8.4 compatible formatting of doubles} \
2721 9.9999999999999999e-132
2722 test util-16.1.17.-130 {8.4 compatible formatting of doubles} \
2724 1.0000000000000001e-130
2725 test util-16.1.17.-129 {8.4 compatible formatting of doubles} \
2727 9.9999999999999993e-130
2728 test util-16.1.17.-128 {8.4 compatible formatting of doubles} \
2730 1.0000000000000001e-128
2731 test util-16.1.17.-127 {8.4 compatible formatting of doubles} \
2734 test util-16.1.17.-126 {8.4 compatible formatting of doubles} \
2736 9.9999999999999995e-127
2737 test util-16.1.17.-125 {8.4 compatible formatting of doubles} \
2740 test util-16.1.17.-124 {8.4 compatible formatting of doubles} \
2742 9.9999999999999993e-125
2743 test util-16.1.17.-123 {8.4 compatible formatting of doubles} \
2745 1.0000000000000001e-123
2746 test util-16.1.17.-122 {8.4 compatible formatting of doubles} \
2748 1.0000000000000001e-122
2749 test util-16.1.17.-121 {8.4 compatible formatting of doubles} \
2751 9.9999999999999998e-122
2752 test util-16.1.17.-120 {8.4 compatible formatting of doubles} \
2754 9.9999999999999998e-121
2755 test util-16.1.17.-119 {8.4 compatible formatting of doubles} \
2758 test util-16.1.17.-118 {8.4 compatible formatting of doubles} \
2760 9.9999999999999999e-119
2761 test util-16.1.17.-117 {8.4 compatible formatting of doubles} \
2764 test util-16.1.17.-116 {8.4 compatible formatting of doubles} \
2766 9.9999999999999999e-117
2767 test util-16.1.17.-115 {8.4 compatible formatting of doubles} \
2769 1.0000000000000001e-115
2770 test util-16.1.17.-114 {8.4 compatible formatting of doubles} \
2772 1.0000000000000001e-114
2773 test util-16.1.17.-113 {8.4 compatible formatting of doubles} \
2775 9.9999999999999998e-114
2776 test util-16.1.17.-112 {8.4 compatible formatting of doubles} \
2778 9.9999999999999995e-113
2779 test util-16.1.17.-111 {8.4 compatible formatting of doubles} \
2781 1.0000000000000001e-111
2782 test util-16.1.17.-110 {8.4 compatible formatting of doubles} \
2784 1.0000000000000001e-110
2785 test util-16.1.17.-109 {8.4 compatible formatting of doubles} \
2787 9.9999999999999999e-110
2788 test util-16.1.17.-108 {8.4 compatible formatting of doubles} \
2791 test util-16.1.17.-107 {8.4 compatible formatting of doubles} \
2794 test util-16.1.17.-106 {8.4 compatible formatting of doubles} \
2796 9.9999999999999994e-107
2797 test util-16.1.17.-105 {8.4 compatible formatting of doubles} \
2799 9.9999999999999997e-106
2800 test util-16.1.17.-104 {8.4 compatible formatting of doubles} \
2802 9.9999999999999993e-105
2803 test util-16.1.17.-103 {8.4 compatible formatting of doubles} \
2805 9.9999999999999996e-104
2806 test util-16.1.17.-102 {8.4 compatible formatting of doubles} \
2808 9.9999999999999993e-103
2809 test util-16.1.17.-101 {8.4 compatible formatting of doubles} \
2811 1.0000000000000001e-101
2812 test util-16.1.17.-100 {8.4 compatible formatting of doubles} \
2815 test util-16.1.17.-99 {8.4 compatible formatting of doubles} \
2818 test util-16.1.17.-98 {8.4 compatible formatting of doubles} \
2820 9.9999999999999994e-99
2821 test util-16.1.17.-97 {8.4 compatible formatting of doubles} \
2824 test util-16.1.17.-96 {8.4 compatible formatting of doubles} \
2826 9.9999999999999991e-97
2827 test util-16.1.17.-95 {8.4 compatible formatting of doubles} \
2829 9.9999999999999999e-96
2830 test util-16.1.17.-94 {8.4 compatible formatting of doubles} \
2832 9.9999999999999996e-95
2833 test util-16.1.17.-93 {8.4 compatible formatting of doubles} \
2835 9.999999999999999e-94
2836 test util-16.1.17.-92 {8.4 compatible formatting of doubles} \
2838 9.9999999999999999e-93
2839 test util-16.1.17.-91 {8.4 compatible formatting of doubles} \
2842 test util-16.1.17.-90 {8.4 compatible formatting of doubles} \
2844 9.9999999999999999e-91
2845 test util-16.1.17.-89 {8.4 compatible formatting of doubles} \
2848 test util-16.1.17.-88 {8.4 compatible formatting of doubles} \
2850 9.9999999999999993e-89
2851 test util-16.1.17.-87 {8.4 compatible formatting of doubles} \
2854 test util-16.1.17.-86 {8.4 compatible formatting of doubles} \
2856 1.0000000000000001e-86
2857 test util-16.1.17.-85 {8.4 compatible formatting of doubles} \
2859 9.9999999999999998e-86
2860 test util-16.1.17.-84 {8.4 compatible formatting of doubles} \
2863 test util-16.1.17.-83 {8.4 compatible formatting of doubles} \
2866 test util-16.1.17.-82 {8.4 compatible formatting of doubles} \
2868 9.9999999999999996e-83
2869 test util-16.1.17.-81 {8.4 compatible formatting of doubles} \
2871 9.9999999999999996e-82
2872 test util-16.1.17.-80 {8.4 compatible formatting of doubles} \
2874 9.9999999999999996e-81
2875 test util-16.1.17.-79 {8.4 compatible formatting of doubles} \
2878 test util-16.1.17.-78 {8.4 compatible formatting of doubles} \
2881 test util-16.1.17.-77 {8.4 compatible formatting of doubles} \
2883 9.9999999999999993e-78
2884 test util-16.1.17.-76 {8.4 compatible formatting of doubles} \
2886 9.9999999999999993e-77
2887 test util-16.1.17.-75 {8.4 compatible formatting of doubles} \
2889 9.9999999999999996e-76
2890 test util-16.1.17.-74 {8.4 compatible formatting of doubles} \
2892 9.9999999999999996e-75
2893 test util-16.1.17.-73 {8.4 compatible formatting of doubles} \
2896 test util-16.1.17.-72 {8.4 compatible formatting of doubles} \
2898 9.9999999999999997e-73
2899 test util-16.1.17.-71 {8.4 compatible formatting of doubles} \
2901 9.9999999999999992e-72
2902 test util-16.1.17.-70 {8.4 compatible formatting of doubles} \
2905 test util-16.1.17.-69 {8.4 compatible formatting of doubles} \
2907 9.9999999999999996e-70
2908 test util-16.1.17.-68 {8.4 compatible formatting of doubles} \
2910 1.0000000000000001e-68
2911 test util-16.1.17.-67 {8.4 compatible formatting of doubles} \
2913 9.9999999999999994e-68
2914 test util-16.1.17.-66 {8.4 compatible formatting of doubles} \
2916 9.9999999999999998e-67
2917 test util-16.1.17.-65 {8.4 compatible formatting of doubles} \
2919 9.9999999999999992e-66
2920 test util-16.1.17.-64 {8.4 compatible formatting of doubles} \
2922 9.9999999999999997e-65
2923 test util-16.1.17.-63 {8.4 compatible formatting of doubles} \
2925 1.0000000000000001e-63
2926 test util-16.1.17.-62 {8.4 compatible formatting of doubles} \
2929 test util-16.1.17.-61 {8.4 compatible formatting of doubles} \
2932 test util-16.1.17.-60 {8.4 compatible formatting of doubles} \
2934 9.9999999999999997e-61
2935 test util-16.1.17.-59 {8.4 compatible formatting of doubles} \
2938 test util-16.1.17.-58 {8.4 compatible formatting of doubles} \
2941 test util-16.1.17.-57 {8.4 compatible formatting of doubles} \
2943 9.9999999999999995e-58
2944 test util-16.1.17.-56 {8.4 compatible formatting of doubles} \
2947 test util-16.1.17.-55 {8.4 compatible formatting of doubles} \
2949 9.9999999999999999e-56
2950 test util-16.1.17.-54 {8.4 compatible formatting of doubles} \
2953 test util-16.1.17.-53 {8.4 compatible formatting of doubles} \
2956 test util-16.1.17.-52 {8.4 compatible formatting of doubles} \
2959 test util-16.1.17.-51 {8.4 compatible formatting of doubles} \
2962 test util-16.1.17.-50 {8.4 compatible formatting of doubles} \
2965 test util-16.1.17.-49 {8.4 compatible formatting of doubles} \
2967 9.9999999999999994e-50
2968 test util-16.1.17.-48 {8.4 compatible formatting of doubles} \
2970 9.9999999999999997e-49
2971 test util-16.1.17.-47 {8.4 compatible formatting of doubles} \
2973 9.9999999999999997e-48
2974 test util-16.1.17.-46 {8.4 compatible formatting of doubles} \
2977 test util-16.1.17.-45 {8.4 compatible formatting of doubles} \
2979 9.9999999999999998e-46
2980 test util-16.1.17.-44 {8.4 compatible formatting of doubles} \
2982 9.9999999999999995e-45
2983 test util-16.1.17.-43 {8.4 compatible formatting of doubles} \
2985 1.0000000000000001e-43
2986 test util-16.1.17.-42 {8.4 compatible formatting of doubles} \
2989 test util-16.1.17.-41 {8.4 compatible formatting of doubles} \
2992 test util-16.1.17.-40 {8.4 compatible formatting of doubles} \
2994 9.9999999999999993e-41
2995 test util-16.1.17.-39 {8.4 compatible formatting of doubles} \
2997 9.9999999999999993e-40
2998 test util-16.1.17.-38 {8.4 compatible formatting of doubles} \
3000 9.9999999999999996e-39
3001 test util-16.1.17.-37 {8.4 compatible formatting of doubles} \
3003 1.0000000000000001e-37
3004 test util-16.1.17.-36 {8.4 compatible formatting of doubles} \
3006 9.9999999999999994e-37
3007 test util-16.1.17.-35 {8.4 compatible formatting of doubles} \
3010 test util-16.1.17.-34 {8.4 compatible formatting of doubles} \
3012 9.9999999999999993e-35
3013 test util-16.1.17.-33 {8.4 compatible formatting of doubles} \
3015 1.0000000000000001e-33
3016 test util-16.1.17.-32 {8.4 compatible formatting of doubles} \
3018 1.0000000000000001e-32
3019 test util-16.1.17.-31 {8.4 compatible formatting of doubles} \
3021 1.0000000000000001e-31
3022 test util-16.1.17.-30 {8.4 compatible formatting of doubles} \
3024 1.0000000000000001e-30
3025 test util-16.1.17.-29 {8.4 compatible formatting of doubles} \
3027 9.9999999999999994e-30
3028 test util-16.1.17.-28 {8.4 compatible formatting of doubles} \
3030 9.9999999999999997e-29
3031 test util-16.1.17.-27 {8.4 compatible formatting of doubles} \
3034 test util-16.1.17.-26 {8.4 compatible formatting of doubles} \
3037 test util-16.1.17.-25 {8.4 compatible formatting of doubles} \
3040 test util-16.1.17.-24 {8.4 compatible formatting of doubles} \
3042 9.9999999999999992e-25
3043 test util-16.1.17.-23 {8.4 compatible formatting of doubles} \
3045 9.9999999999999996e-24
3046 test util-16.1.17.-22 {8.4 compatible formatting of doubles} \
3049 test util-16.1.17.-21 {8.4 compatible formatting of doubles} \
3051 9.9999999999999991e-22
3052 test util-16.1.17.-20 {8.4 compatible formatting of doubles} \
3054 9.9999999999999995e-21
3055 test util-16.1.17.-19 {8.4 compatible formatting of doubles} \
3057 9.9999999999999998e-20
3058 test util-16.1.17.-18 {8.4 compatible formatting of doubles} \
3060 1.0000000000000001e-18
3061 test util-16.1.17.-17 {8.4 compatible formatting of doubles} \
3063 1.0000000000000001e-17
3064 test util-16.1.17.-16 {8.4 compatible formatting of doubles} \
3066 9.9999999999999998e-17
3067 test util-16.1.17.-15 {8.4 compatible formatting of doubles} \
3069 1.0000000000000001e-15
3070 test util-16.1.17.-14 {8.4 compatible formatting of doubles} \
3073 test util-16.1.17.-13 {8.4 compatible formatting of doubles} \
3076 test util-16.1.17.-12 {8.4 compatible formatting of doubles} \
3078 9.9999999999999998e-13
3079 test util-16.1.17.-11 {8.4 compatible formatting of doubles} \
3081 9.9999999999999994e-12
3082 test util-16.1.17.-10 {8.4 compatible formatting of doubles} \
3085 test util-16.1.17.-9 {8.4 compatible formatting of doubles} \
3087 1.0000000000000001e-09
3088 test util-16.1.17.-8 {8.4 compatible formatting of doubles} \
3091 test util-16.1.17.-7 {8.4 compatible formatting of doubles} \
3093 9.9999999999999995e-08
3094 test util-16.1.17.-6 {8.4 compatible formatting of doubles} \
3096 9.9999999999999995e-07
3097 test util-16.1.17.-5 {8.4 compatible formatting of doubles} \
3099 1.0000000000000001e-05
3100 test util-16.1.17.-4 {8.4 compatible formatting of doubles} \
3103 test util-16.1.17.-3 {8.4 compatible formatting of doubles} \
3106 test util-16.1.17.-2 {8.4 compatible formatting of doubles} \
3109 test util-16.1.17.-1 {8.4 compatible formatting of doubles} \
3112 test util-16.1.17.0 {8.4 compatible formatting of doubles} \
3115 test util-16.1.17.1 {8.4 compatible formatting of doubles} \
3118 test util-16.1.17.2 {8.4 compatible formatting of doubles} \
3121 test util-16.1.17.3 {8.4 compatible formatting of doubles} \
3124 test util-16.1.17.4 {8.4 compatible formatting of doubles} \
3127 test util-16.1.17.5 {8.4 compatible formatting of doubles} \
3130 test util-16.1.17.6 {8.4 compatible formatting of doubles} \
3133 test util-16.1.17.7 {8.4 compatible formatting of doubles} \
3136 test util-16.1.17.8 {8.4 compatible formatting of doubles} \
3139 test util-16.1.17.9 {8.4 compatible formatting of doubles} \
3142 test util-16.1.17.10 {8.4 compatible formatting of doubles} \
3145 test util-16.1.17.11 {8.4 compatible formatting of doubles} \
3148 test util-16.1.17.12 {8.4 compatible formatting of doubles} \
3151 test util-16.1.17.13 {8.4 compatible formatting of doubles} \
3154 test util-16.1.17.14 {8.4 compatible formatting of doubles} \
3157 test util-16.1.17.15 {8.4 compatible formatting of doubles} \
3160 test util-16.1.17.16 {8.4 compatible formatting of doubles} \
3163 test util-16.1.17.17 {8.4 compatible formatting of doubles} \
3166 test util-16.1.17.18 {8.4 compatible formatting of doubles} \
3169 test util-16.1.17.19 {8.4 compatible formatting of doubles} \
3172 test util-16.1.17.20 {8.4 compatible formatting of doubles} \
3175 test util-16.1.17.21 {8.4 compatible formatting of doubles} \
3178 test util-16.1.17.22 {8.4 compatible formatting of doubles} \
3181 test util-16.1.17.23 {8.4 compatible formatting of doubles} \
3183 9.9999999999999992e+22
3184 test util-16.1.17.24 {8.4 compatible formatting of doubles} \
3186 9.9999999999999998e+23
3187 test util-16.1.17.25 {8.4 compatible formatting of doubles} \
3189 1.0000000000000001e+25
3190 test util-16.1.17.26 {8.4 compatible formatting of doubles} \
3193 test util-16.1.17.27 {8.4 compatible formatting of doubles} \
3196 test util-16.1.17.28 {8.4 compatible formatting of doubles} \
3198 9.9999999999999996e+27
3199 test util-16.1.17.29 {8.4 compatible formatting of doubles} \
3201 9.9999999999999991e+28
3202 test util-16.1.17.30 {8.4 compatible formatting of doubles} \
3205 test util-16.1.17.31 {8.4 compatible formatting of doubles} \
3207 9.9999999999999996e+30
3208 test util-16.1.17.32 {8.4 compatible formatting of doubles} \
3210 1.0000000000000001e+32
3211 test util-16.1.17.33 {8.4 compatible formatting of doubles} \
3213 9.9999999999999995e+32
3214 test util-16.1.17.34 {8.4 compatible formatting of doubles} \
3216 9.9999999999999995e+33
3217 test util-16.1.17.35 {8.4 compatible formatting of doubles} \
3219 9.9999999999999997e+34
3220 test util-16.1.17.36 {8.4 compatible formatting of doubles} \
3223 test util-16.1.17.37 {8.4 compatible formatting of doubles} \
3225 9.9999999999999995e+36
3226 test util-16.1.17.38 {8.4 compatible formatting of doubles} \
3228 9.9999999999999998e+37
3229 test util-16.1.17.39 {8.4 compatible formatting of doubles} \
3231 9.9999999999999994e+38
3232 test util-16.1.17.40 {8.4 compatible formatting of doubles} \
3235 test util-16.1.17.41 {8.4 compatible formatting of doubles} \
3238 test util-16.1.17.42 {8.4 compatible formatting of doubles} \
3241 test util-16.1.17.43 {8.4 compatible formatting of doubles} \
3244 test util-16.1.17.44 {8.4 compatible formatting of doubles} \
3246 1.0000000000000001e+44
3247 test util-16.1.17.45 {8.4 compatible formatting of doubles} \
3249 9.9999999999999993e+44
3250 test util-16.1.17.46 {8.4 compatible formatting of doubles} \
3252 9.9999999999999999e+45
3253 test util-16.1.17.47 {8.4 compatible formatting of doubles} \
3256 test util-16.1.17.48 {8.4 compatible formatting of doubles} \
3259 test util-16.1.17.49 {8.4 compatible formatting of doubles} \
3261 9.9999999999999995e+48
3262 test util-16.1.17.50 {8.4 compatible formatting of doubles} \
3264 1.0000000000000001e+50
3265 test util-16.1.17.51 {8.4 compatible formatting of doubles} \
3267 9.9999999999999999e+50
3268 test util-16.1.17.52 {8.4 compatible formatting of doubles} \
3270 9.9999999999999999e+51
3271 test util-16.1.17.53 {8.4 compatible formatting of doubles} \
3273 9.9999999999999999e+52
3274 test util-16.1.17.54 {8.4 compatible formatting of doubles} \
3276 1.0000000000000001e+54
3277 test util-16.1.17.55 {8.4 compatible formatting of doubles} \
3280 test util-16.1.17.56 {8.4 compatible formatting of doubles} \
3282 1.0000000000000001e+56
3283 test util-16.1.17.57 {8.4 compatible formatting of doubles} \
3286 test util-16.1.17.58 {8.4 compatible formatting of doubles} \
3288 9.9999999999999994e+57
3289 test util-16.1.17.59 {8.4 compatible formatting of doubles} \
3291 9.9999999999999997e+58
3292 test util-16.1.17.60 {8.4 compatible formatting of doubles} \
3294 9.9999999999999995e+59
3295 test util-16.1.17.61 {8.4 compatible formatting of doubles} \
3297 9.9999999999999995e+60
3298 test util-16.1.17.62 {8.4 compatible formatting of doubles} \
3301 test util-16.1.17.63 {8.4 compatible formatting of doubles} \
3303 1.0000000000000001e+63
3304 test util-16.1.17.64 {8.4 compatible formatting of doubles} \
3307 test util-16.1.17.65 {8.4 compatible formatting of doubles} \
3309 9.9999999999999999e+64
3310 test util-16.1.17.66 {8.4 compatible formatting of doubles} \
3312 9.9999999999999995e+65
3313 test util-16.1.17.67 {8.4 compatible formatting of doubles} \
3315 9.9999999999999998e+66
3316 test util-16.1.17.68 {8.4 compatible formatting of doubles} \
3318 9.9999999999999995e+67
3319 test util-16.1.17.69 {8.4 compatible formatting of doubles} \
3321 1.0000000000000001e+69
3322 test util-16.1.17.70 {8.4 compatible formatting of doubles} \
3324 1.0000000000000001e+70
3325 test util-16.1.17.71 {8.4 compatible formatting of doubles} \
3328 test util-16.1.17.72 {8.4 compatible formatting of doubles} \
3330 9.9999999999999994e+71
3331 test util-16.1.17.73 {8.4 compatible formatting of doubles} \
3333 9.9999999999999998e+72
3334 test util-16.1.17.74 {8.4 compatible formatting of doubles} \
3336 9.9999999999999995e+73
3337 test util-16.1.17.75 {8.4 compatible formatting of doubles} \
3339 9.9999999999999993e+74
3340 test util-16.1.17.76 {8.4 compatible formatting of doubles} \
3343 test util-16.1.17.77 {8.4 compatible formatting of doubles} \
3345 9.9999999999999998e+76
3346 test util-16.1.17.78 {8.4 compatible formatting of doubles} \
3349 test util-16.1.17.79 {8.4 compatible formatting of doubles} \
3351 9.9999999999999997e+78
3352 test util-16.1.17.80 {8.4 compatible formatting of doubles} \
3355 test util-16.1.17.81 {8.4 compatible formatting of doubles} \
3357 9.9999999999999992e+80
3358 test util-16.1.17.82 {8.4 compatible formatting of doubles} \
3360 9.9999999999999996e+81
3361 test util-16.1.17.83 {8.4 compatible formatting of doubles} \
3364 test util-16.1.17.84 {8.4 compatible formatting of doubles} \
3366 1.0000000000000001e+84
3367 test util-16.1.17.85 {8.4 compatible formatting of doubles} \
3370 test util-16.1.17.86 {8.4 compatible formatting of doubles} \
3373 test util-16.1.17.87 {8.4 compatible formatting of doubles} \
3375 9.9999999999999996e+86
3376 test util-16.1.17.88 {8.4 compatible formatting of doubles} \
3378 9.9999999999999996e+87
3379 test util-16.1.17.89 {8.4 compatible formatting of doubles} \
3381 9.9999999999999999e+88
3382 test util-16.1.17.90 {8.4 compatible formatting of doubles} \
3384 9.9999999999999997e+89
3385 test util-16.1.17.91 {8.4 compatible formatting of doubles} \
3387 1.0000000000000001e+91
3388 test util-16.1.17.92 {8.4 compatible formatting of doubles} \
3391 test util-16.1.17.93 {8.4 compatible formatting of doubles} \
3394 test util-16.1.17.94 {8.4 compatible formatting of doubles} \
3397 test util-16.1.17.95 {8.4 compatible formatting of doubles} \
3400 test util-16.1.17.96 {8.4 compatible formatting of doubles} \
3403 test util-16.1.17.97 {8.4 compatible formatting of doubles} \
3405 1.0000000000000001e+97
3406 test util-16.1.17.98 {8.4 compatible formatting of doubles} \
3409 test util-16.1.17.99 {8.4 compatible formatting of doubles} \
3411 9.9999999999999997e+98
3412 test util-16.1.17.100 {8.4 compatible formatting of doubles} \
3415 test util-16.1.17.101 {8.4 compatible formatting of doubles} \
3417 9.9999999999999998e+100
3418 test util-16.1.17.102 {8.4 compatible formatting of doubles} \
3420 9.9999999999999998e+101
3421 test util-16.1.17.103 {8.4 compatible formatting of doubles} \
3424 test util-16.1.17.104 {8.4 compatible formatting of doubles} \
3427 test util-16.1.17.105 {8.4 compatible formatting of doubles} \
3429 9.9999999999999994e+104
3430 test util-16.1.17.106 {8.4 compatible formatting of doubles} \
3432 1.0000000000000001e+106
3433 test util-16.1.17.107 {8.4 compatible formatting of doubles} \
3435 9.9999999999999997e+106
3436 test util-16.1.17.108 {8.4 compatible formatting of doubles} \
3439 test util-16.1.17.109 {8.4 compatible formatting of doubles} \
3441 9.9999999999999998e+108
3442 test util-16.1.17.110 {8.4 compatible formatting of doubles} \
3445 test util-16.1.17.111 {8.4 compatible formatting of doubles} \
3447 9.9999999999999996e+110
3448 test util-16.1.17.112 {8.4 compatible formatting of doubles} \
3450 9.9999999999999993e+111
3451 test util-16.1.17.113 {8.4 compatible formatting of doubles} \
3454 test util-16.1.17.114 {8.4 compatible formatting of doubles} \
3457 test util-16.1.17.115 {8.4 compatible formatting of doubles} \
3460 test util-16.1.17.116 {8.4 compatible formatting of doubles} \
3463 test util-16.1.17.117 {8.4 compatible formatting of doubles} \
3465 1.0000000000000001e+117
3466 test util-16.1.17.118 {8.4 compatible formatting of doubles} \
3468 9.9999999999999997e+117
3469 test util-16.1.17.119 {8.4 compatible formatting of doubles} \
3471 9.9999999999999994e+118
3472 test util-16.1.17.120 {8.4 compatible formatting of doubles} \
3474 9.9999999999999998e+119
3475 test util-16.1.17.121 {8.4 compatible formatting of doubles} \
3478 test util-16.1.17.122 {8.4 compatible formatting of doubles} \
3481 test util-16.1.17.123 {8.4 compatible formatting of doubles} \
3483 9.9999999999999998e+122
3484 test util-16.1.17.124 {8.4 compatible formatting of doubles} \
3486 9.9999999999999995e+123
3487 test util-16.1.17.125 {8.4 compatible formatting of doubles} \
3489 9.9999999999999992e+124
3490 test util-16.1.17.126 {8.4 compatible formatting of doubles} \
3492 9.9999999999999992e+125
3493 test util-16.1.17.127 {8.4 compatible formatting of doubles} \
3495 9.9999999999999995e+126
3496 test util-16.1.17.128 {8.4 compatible formatting of doubles} \
3498 1.0000000000000001e+128
3499 test util-16.1.17.129 {8.4 compatible formatting of doubles} \
3502 test util-16.1.17.130 {8.4 compatible formatting of doubles} \
3504 1.0000000000000001e+130
3505 test util-16.1.17.131 {8.4 compatible formatting of doubles} \
3507 9.9999999999999991e+130
3508 test util-16.1.17.132 {8.4 compatible formatting of doubles} \
3510 9.9999999999999999e+131
3511 test util-16.1.17.133 {8.4 compatible formatting of doubles} \
3514 test util-16.1.17.134 {8.4 compatible formatting of doubles} \
3516 9.9999999999999992e+133
3517 test util-16.1.17.135 {8.4 compatible formatting of doubles} \
3519 9.9999999999999996e+134
3520 test util-16.1.17.136 {8.4 compatible formatting of doubles} \
3522 1.0000000000000001e+136
3523 test util-16.1.17.137 {8.4 compatible formatting of doubles} \
3526 test util-16.1.17.138 {8.4 compatible formatting of doubles} \
3529 test util-16.1.17.139 {8.4 compatible formatting of doubles} \
3532 test util-16.1.17.140 {8.4 compatible formatting of doubles} \
3534 1.0000000000000001e+140
3535 test util-16.1.17.141 {8.4 compatible formatting of doubles} \
3538 test util-16.1.17.142 {8.4 compatible formatting of doubles} \
3540 1.0000000000000001e+142
3541 test util-16.1.17.143 {8.4 compatible formatting of doubles} \
3544 test util-16.1.17.144 {8.4 compatible formatting of doubles} \
3547 test util-16.1.17.145 {8.4 compatible formatting of doubles} \
3549 9.9999999999999999e+144
3550 test util-16.1.17.146 {8.4 compatible formatting of doubles} \
3552 9.9999999999999993e+145
3553 test util-16.1.17.147 {8.4 compatible formatting of doubles} \
3555 9.9999999999999998e+146
3556 test util-16.1.17.148 {8.4 compatible formatting of doubles} \
3559 test util-16.1.17.149 {8.4 compatible formatting of doubles} \
3562 test util-16.1.17.150 {8.4 compatible formatting of doubles} \
3564 9.9999999999999998e+149
3565 test util-16.1.17.151 {8.4 compatible formatting of doubles} \
3568 test util-16.1.17.152 {8.4 compatible formatting of doubles} \
3571 test util-16.1.17.153 {8.4 compatible formatting of doubles} \
3574 test util-16.1.17.154 {8.4 compatible formatting of doubles} \
3577 test util-16.1.17.155 {8.4 compatible formatting of doubles} \
3580 test util-16.1.17.156 {8.4 compatible formatting of doubles} \
3582 9.9999999999999998e+155
3583 test util-16.1.17.157 {8.4 compatible formatting of doubles} \
3585 9.9999999999999998e+156
3586 test util-16.1.17.158 {8.4 compatible formatting of doubles} \
3588 9.9999999999999995e+157
3589 test util-16.1.17.159 {8.4 compatible formatting of doubles} \
3591 9.9999999999999993e+158
3592 test util-16.1.17.160 {8.4 compatible formatting of doubles} \
3595 test util-16.1.17.161 {8.4 compatible formatting of doubles} \
3598 test util-16.1.17.162 {8.4 compatible formatting of doubles} \
3600 9.9999999999999994e+161
3601 test util-16.1.17.163 {8.4 compatible formatting of doubles} \
3603 9.9999999999999994e+162
3604 test util-16.1.17.164 {8.4 compatible formatting of doubles} \
3607 test util-16.1.17.165 {8.4 compatible formatting of doubles} \
3609 9.999999999999999e+164
3610 test util-16.1.17.166 {8.4 compatible formatting of doubles} \
3612 9.9999999999999994e+165
3613 test util-16.1.17.167 {8.4 compatible formatting of doubles} \
3616 test util-16.1.17.168 {8.4 compatible formatting of doubles} \
3618 9.9999999999999993e+167
3619 test util-16.1.17.169 {8.4 compatible formatting of doubles} \
3621 9.9999999999999993e+168
3622 test util-16.1.17.170 {8.4 compatible formatting of doubles} \
3625 test util-16.1.17.171 {8.4 compatible formatting of doubles} \
3627 9.9999999999999995e+170
3628 test util-16.1.17.172 {8.4 compatible formatting of doubles} \
3630 1.0000000000000001e+172
3631 test util-16.1.17.173 {8.4 compatible formatting of doubles} \
3634 test util-16.1.17.174 {8.4 compatible formatting of doubles} \
3636 1.0000000000000001e+174
3637 test util-16.1.17.175 {8.4 compatible formatting of doubles} \
3639 9.9999999999999994e+174
3640 test util-16.1.17.176 {8.4 compatible formatting of doubles} \
3643 test util-16.1.17.177 {8.4 compatible formatting of doubles} \
3646 test util-16.1.17.178 {8.4 compatible formatting of doubles} \
3648 1.0000000000000001e+178
3649 test util-16.1.17.179 {8.4 compatible formatting of doubles} \
3651 9.9999999999999998e+178
3652 test util-16.1.17.180 {8.4 compatible formatting of doubles} \
3655 test util-16.1.17.181 {8.4 compatible formatting of doubles} \
3657 9.9999999999999992e+180
3658 test util-16.1.17.182 {8.4 compatible formatting of doubles} \
3660 1.0000000000000001e+182
3661 test util-16.1.17.183 {8.4 compatible formatting of doubles} \
3663 9.9999999999999995e+182
3664 test util-16.1.17.184 {8.4 compatible formatting of doubles} \
3667 test util-16.1.17.185 {8.4 compatible formatting of doubles} \
3669 9.9999999999999998e+184
3670 test util-16.1.17.186 {8.4 compatible formatting of doubles} \
3672 9.9999999999999998e+185
3673 test util-16.1.17.187 {8.4 compatible formatting of doubles} \
3675 9.9999999999999991e+186
3676 test util-16.1.17.188 {8.4 compatible formatting of doubles} \
3679 test util-16.1.17.189 {8.4 compatible formatting of doubles} \
3682 test util-16.1.17.190 {8.4 compatible formatting of doubles} \
3684 1.0000000000000001e+190
3685 test util-16.1.17.191 {8.4 compatible formatting of doubles} \
3687 1.0000000000000001e+191
3688 test util-16.1.17.192 {8.4 compatible formatting of doubles} \
3691 test util-16.1.17.193 {8.4 compatible formatting of doubles} \
3693 1.0000000000000001e+193
3694 test util-16.1.17.194 {8.4 compatible formatting of doubles} \
3696 9.9999999999999994e+193
3697 test util-16.1.17.195 {8.4 compatible formatting of doubles} \
3699 9.9999999999999998e+194
3700 test util-16.1.17.196 {8.4 compatible formatting of doubles} \
3702 9.9999999999999995e+195
3703 test util-16.1.17.197 {8.4 compatible formatting of doubles} \
3705 9.9999999999999995e+196
3706 test util-16.1.17.198 {8.4 compatible formatting of doubles} \
3709 test util-16.1.17.199 {8.4 compatible formatting of doubles} \
3711 1.0000000000000001e+199
3712 test util-16.1.17.200 {8.4 compatible formatting of doubles} \
3714 9.9999999999999997e+199
3715 test util-16.1.17.201 {8.4 compatible formatting of doubles} \
3718 test util-16.1.17.202 {8.4 compatible formatting of doubles} \
3720 9.999999999999999e+201
3721 test util-16.1.17.203 {8.4 compatible formatting of doubles} \
3723 9.9999999999999999e+202
3724 test util-16.1.17.204 {8.4 compatible formatting of doubles} \
3726 9.9999999999999999e+203
3727 test util-16.1.17.205 {8.4 compatible formatting of doubles} \
3730 test util-16.1.17.206 {8.4 compatible formatting of doubles} \
3733 test util-16.1.17.207 {8.4 compatible formatting of doubles} \
3736 test util-16.1.17.208 {8.4 compatible formatting of doubles} \
3738 9.9999999999999998e+207
3739 test util-16.1.17.209 {8.4 compatible formatting of doubles} \
3741 1.0000000000000001e+209
3742 test util-16.1.17.210 {8.4 compatible formatting of doubles} \
3744 9.9999999999999993e+209
3745 test util-16.1.17.211 {8.4 compatible formatting of doubles} \
3747 9.9999999999999996e+210
3748 test util-16.1.17.212 {8.4 compatible formatting of doubles} \
3750 9.9999999999999991e+211
3751 test util-16.1.17.213 {8.4 compatible formatting of doubles} \
3753 9.9999999999999998e+212
3754 test util-16.1.17.214 {8.4 compatible formatting of doubles} \
3756 9.9999999999999995e+213
3757 test util-16.1.17.215 {8.4 compatible formatting of doubles} \
3759 9.9999999999999991e+214
3760 test util-16.1.17.216 {8.4 compatible formatting of doubles} \
3763 test util-16.1.17.217 {8.4 compatible formatting of doubles} \
3765 9.9999999999999996e+216
3766 test util-16.1.17.218 {8.4 compatible formatting of doubles} \
3768 1.0000000000000001e+218
3769 test util-16.1.17.219 {8.4 compatible formatting of doubles} \
3771 9.9999999999999997e+218
3772 test util-16.1.17.220 {8.4 compatible formatting of doubles} \
3775 test util-16.1.17.221 {8.4 compatible formatting of doubles} \
3778 test util-16.1.17.222 {8.4 compatible formatting of doubles} \
3781 test util-16.1.17.223 {8.4 compatible formatting of doubles} \
3784 test util-16.1.17.224 {8.4 compatible formatting of doubles} \
3786 9.9999999999999997e+223
3787 test util-16.1.17.225 {8.4 compatible formatting of doubles} \
3789 9.9999999999999993e+224
3790 test util-16.1.17.226 {8.4 compatible formatting of doubles} \
3792 9.9999999999999996e+225
3793 test util-16.1.17.227 {8.4 compatible formatting of doubles} \
3795 1.0000000000000001e+227
3796 test util-16.1.17.228 {8.4 compatible formatting of doubles} \
3798 9.9999999999999992e+227
3799 test util-16.1.17.229 {8.4 compatible formatting of doubles} \
3801 9.9999999999999999e+228
3802 test util-16.1.17.230 {8.4 compatible formatting of doubles} \
3804 1.0000000000000001e+230
3805 test util-16.1.17.231 {8.4 compatible formatting of doubles} \
3807 1.0000000000000001e+231
3808 test util-16.1.17.232 {8.4 compatible formatting of doubles} \
3810 1.0000000000000001e+232
3811 test util-16.1.17.233 {8.4 compatible formatting of doubles} \
3813 9.9999999999999997e+232
3814 test util-16.1.17.234 {8.4 compatible formatting of doubles} \
3817 test util-16.1.17.235 {8.4 compatible formatting of doubles} \
3819 1.0000000000000001e+235
3820 test util-16.1.17.236 {8.4 compatible formatting of doubles} \
3822 1.0000000000000001e+236
3823 test util-16.1.17.237 {8.4 compatible formatting of doubles} \
3825 9.9999999999999994e+236
3826 test util-16.1.17.238 {8.4 compatible formatting of doubles} \
3829 test util-16.1.17.239 {8.4 compatible formatting of doubles} \
3831 9.9999999999999999e+238
3832 test util-16.1.17.240 {8.4 compatible formatting of doubles} \
3835 test util-16.1.17.241 {8.4 compatible formatting of doubles} \
3837 1.0000000000000001e+241
3838 test util-16.1.17.242 {8.4 compatible formatting of doubles} \
3840 1.0000000000000001e+242
3841 test util-16.1.17.243 {8.4 compatible formatting of doubles} \
3843 1.0000000000000001e+243
3844 test util-16.1.17.244 {8.4 compatible formatting of doubles} \
3846 1.0000000000000001e+244
3847 test util-16.1.17.245 {8.4 compatible formatting of doubles} \
3850 test util-16.1.17.246 {8.4 compatible formatting of doubles} \
3852 1.0000000000000001e+246
3853 test util-16.1.17.247 {8.4 compatible formatting of doubles} \
3855 9.9999999999999995e+246
3856 test util-16.1.17.248 {8.4 compatible formatting of doubles} \
3859 test util-16.1.17.249 {8.4 compatible formatting of doubles} \
3861 9.9999999999999992e+248
3862 test util-16.1.17.250 {8.4 compatible formatting of doubles} \
3864 9.9999999999999992e+249
3865 test util-16.1.17.251 {8.4 compatible formatting of doubles} \
3868 test util-16.1.17.252 {8.4 compatible formatting of doubles} \
3870 1.0000000000000001e+252
3871 test util-16.1.17.253 {8.4 compatible formatting of doubles} \
3873 9.9999999999999994e+252
3874 test util-16.1.17.254 {8.4 compatible formatting of doubles} \
3876 9.9999999999999994e+253
3877 test util-16.1.17.255 {8.4 compatible formatting of doubles} \
3879 9.9999999999999999e+254
3880 test util-16.1.17.256 {8.4 compatible formatting of doubles} \
3883 test util-16.1.17.257 {8.4 compatible formatting of doubles} \
3886 test util-16.1.17.258 {8.4 compatible formatting of doubles} \
3888 1.0000000000000001e+258
3889 test util-16.1.17.259 {8.4 compatible formatting of doubles} \
3891 9.9999999999999993e+258
3892 test util-16.1.17.260 {8.4 compatible formatting of doubles} \
3894 1.0000000000000001e+260
3895 test util-16.1.17.261 {8.4 compatible formatting of doubles} \
3897 9.9999999999999993e+260
3898 test util-16.1.17.262 {8.4 compatible formatting of doubles} \
3901 test util-16.1.17.263 {8.4 compatible formatting of doubles} \
3904 test util-16.1.17.264 {8.4 compatible formatting of doubles} \
3907 test util-16.1.17.265 {8.4 compatible formatting of doubles} \
3909 1.0000000000000001e+265
3910 test util-16.1.17.266 {8.4 compatible formatting of doubles} \
3913 test util-16.1.17.267 {8.4 compatible formatting of doubles} \
3915 9.9999999999999997e+266
3916 test util-16.1.17.268 {8.4 compatible formatting of doubles} \
3918 9.9999999999999997e+267
3919 test util-16.1.17.269 {8.4 compatible formatting of doubles} \
3922 test util-16.1.17.270 {8.4 compatible formatting of doubles} \
3925 test util-16.1.17.271 {8.4 compatible formatting of doubles} \
3927 9.9999999999999995e+270
3928 test util-16.1.17.272 {8.4 compatible formatting of doubles} \
3930 1.0000000000000001e+272
3931 test util-16.1.17.273 {8.4 compatible formatting of doubles} \
3933 9.9999999999999995e+272
3934 test util-16.1.17.274 {8.4 compatible formatting of doubles} \
3936 9.9999999999999992e+273
3937 test util-16.1.17.275 {8.4 compatible formatting of doubles} \
3939 9.9999999999999996e+274
3940 test util-16.1.17.276 {8.4 compatible formatting of doubles} \
3942 1.0000000000000001e+276
3943 test util-16.1.17.277 {8.4 compatible formatting of doubles} \
3946 test util-16.1.17.278 {8.4 compatible formatting of doubles} \
3948 9.9999999999999996e+277
3949 test util-16.1.17.279 {8.4 compatible formatting of doubles} \
3951 1.0000000000000001e+279
3952 test util-16.1.17.280 {8.4 compatible formatting of doubles} \
3955 test util-16.1.17.281 {8.4 compatible formatting of doubles} \
3958 test util-16.1.17.282 {8.4 compatible formatting of doubles} \
3961 test util-16.1.17.283 {8.4 compatible formatting of doubles} \
3963 9.9999999999999996e+282
3964 test util-16.1.17.284 {8.4 compatible formatting of doubles} \
3966 1.0000000000000001e+284
3967 test util-16.1.17.285 {8.4 compatible formatting of doubles} \
3969 9.9999999999999998e+284
3970 test util-16.1.17.286 {8.4 compatible formatting of doubles} \
3973 test util-16.1.17.287 {8.4 compatible formatting of doubles} \
3975 1.0000000000000001e+287
3976 test util-16.1.17.288 {8.4 compatible formatting of doubles} \
3979 test util-16.1.17.289 {8.4 compatible formatting of doubles} \
3981 1.0000000000000001e+289
3982 test util-16.1.17.290 {8.4 compatible formatting of doubles} \
3984 1.0000000000000001e+290
3985 test util-16.1.17.291 {8.4 compatible formatting of doubles} \
3987 9.9999999999999996e+290
3988 test util-16.1.17.292 {8.4 compatible formatting of doubles} \
3991 test util-16.1.17.293 {8.4 compatible formatting of doubles} \
3993 9.9999999999999992e+292
3994 test util-16.1.17.294 {8.4 compatible formatting of doubles} \
3996 1.0000000000000001e+294
3997 test util-16.1.17.295 {8.4 compatible formatting of doubles} \
3999 9.9999999999999998e+294
4000 test util-16.1.17.296 {8.4 compatible formatting of doubles} \
4002 9.9999999999999998e+295
4003 test util-16.1.17.297 {8.4 compatible formatting of doubles} \
4006 test util-16.1.17.298 {8.4 compatible formatting of doubles} \
4008 9.9999999999999996e+297
4009 test util-16.1.17.299 {8.4 compatible formatting of doubles} \
4011 1.0000000000000001e+299
4012 test util-16.1.17.300 {8.4 compatible formatting of doubles} \
4014 1.0000000000000001e+300
4015 test util-16.1.17.301 {8.4 compatible formatting of doubles} \
4017 1.0000000000000001e+301
4018 test util-16.1.17.302 {8.4 compatible formatting of doubles} \
4020 1.0000000000000001e+302
4021 test util-16.1.17.303 {8.4 compatible formatting of doubles} \
4024 test util-16.1.17.304 {8.4 compatible formatting of doubles} \
4026 9.9999999999999994e+303
4027 test util-16.1.17.305 {8.4 compatible formatting of doubles} \
4029 9.9999999999999994e+304
4030 test util-16.1.17.306 {8.4 compatible formatting of doubles} \
4033 test util-16.1.17.307 {8.4 compatible formatting of doubles} \
4035 9.9999999999999999e+306
4037 test util-17.1 {bankers' rounding [Bug 3349507]} {ieeeFloatingPoint} {
4049 binary scan [binary format q [expr {double($input)}]] wu x
4050 lappend r [format %#llx $x]
4051 binary scan [binary format q [expr {double(-$input)}]] wu x
4052 lappend r [format %#llx $x]
4056 0x43fffffffffffffc 0xc3fffffffffffffc
4057 0x43fffffffffffffc 0xc3fffffffffffffc
4058 0x43fffffffffffffd 0xc3fffffffffffffd
4059 0x43fffffffffffffe 0xc3fffffffffffffe
4060 0x43fffffffffffffe 0xc3fffffffffffffe
4061 0x43fffffffffffffe 0xc3fffffffffffffe
4062 0x43ffffffffffffff 0xc3ffffffffffffff
4063 0x4400000000000000 0xc400000000000000
4066 set ::tcl_precision $saved_precision
4069 ::tcltest::cleanupTests