Start packaging the bz2 python module as it is needed for building Qt5
[profile/ivi/python.git] / Lib / test / decimaltestdata / base.decTest
1 ------------------------------------------------------------------------
2 -- base.decTest -- base decimal <--> string conversions               --
3 -- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
4 ------------------------------------------------------------------------
5 -- Please see the document "General Decimal Arithmetic Testcases"     --
6 -- at http://www2.hursley.ibm.com/decimal for the description of      --
7 -- these testcases.                                                   --
8 --                                                                    --
9 -- These testcases are experimental ('beta' versions), and they       --
10 -- may contain errors.  They are offered on an as-is basis.  In       --
11 -- particular, achieving the same results as the tests here is not    --
12 -- a guarantee that an implementation complies with any Standard      --
13 -- or specification.  The tests are not exhaustive.                   --
14 --                                                                    --
15 -- Please send comments, suggestions, and corrections to the author:  --
16 --   Mike Cowlishaw, IBM Fellow                                       --
17 --   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
18 --   mfc@uk.ibm.com                                                   --
19 ------------------------------------------------------------------------
20 version: 2.59
21 extended:    1
22
23 -- This file tests base conversions from string to a decimal number
24 -- and back to a string (in either Scientific or Engineering form)
25
26 -- Note that unlike other operations the operand is subject to rounding
27 -- to conform to emax and precision settings (that is, numbers will
28 -- conform to rules and exponent will be in permitted range).
29
30 precision:   16
31 rounding:    half_up
32 maxExponent: 384
33 minExponent: -383
34
35 basx001 toSci       0 -> 0
36 basx002 toSci       1 -> 1
37 basx003 toSci     1.0 -> 1.0
38 basx004 toSci    1.00 -> 1.00
39 basx005 toSci      10 -> 10
40 basx006 toSci    1000 -> 1000
41 basx007 toSci    10.0 -> 10.0
42 basx008 toSci    10.1 -> 10.1
43 basx009 toSci    10.4 -> 10.4
44 basx010 toSci    10.5 -> 10.5
45 basx011 toSci    10.6 -> 10.6
46 basx012 toSci    10.9 -> 10.9
47 basx013 toSci    11.0 -> 11.0
48 basx014 toSci  1.234 -> 1.234
49 basx015 toSci  0.123 -> 0.123
50 basx016 toSci  0.012 -> 0.012
51 basx017 toSci  -0    -> -0
52 basx018 toSci  -0.0  -> -0.0
53 basx019 toSci -00.00 -> -0.00
54
55 basx021 toSci     -1 -> -1
56 basx022 toSci   -1.0 -> -1.0
57 basx023 toSci   -0.1 -> -0.1
58 basx024 toSci   -9.1 -> -9.1
59 basx025 toSci   -9.11 -> -9.11
60 basx026 toSci   -9.119 -> -9.119
61 basx027 toSci   -9.999 -> -9.999
62
63 basx030 toSci  '123456789.123456'   -> '123456789.123456'
64 basx031 toSci  '123456789.000000'   -> '123456789.000000'
65 basx032 toSci   '123456789123456'   -> '123456789123456'
66 basx033 toSci   '0.0000123456789'   -> '0.0000123456789'
67 basx034 toSci  '0.00000123456789'   -> '0.00000123456789'
68 basx035 toSci '0.000000123456789'   -> '1.23456789E-7'
69 basx036 toSci '0.0000000123456789'  -> '1.23456789E-8'
70
71 basx037 toSci '0.123456789012344'   -> '0.123456789012344'
72 basx038 toSci '0.123456789012345'   -> '0.123456789012345'
73
74 -- String [many more examples are implicitly tested elsewhere]
75 -- strings without E cannot generate E in result
76 basx040 toSci "12"        -> '12'
77 basx041 toSci "-76"       -> '-76'
78 basx042 toSci "12.76"     -> '12.76'
79 basx043 toSci "+12.76"    -> '12.76'
80 basx044 toSci "012.76"    -> '12.76'
81 basx045 toSci "+0.003"    -> '0.003'
82 basx046 toSci "17."       -> '17'
83 basx047 toSci ".5"        -> '0.5'
84 basx048 toSci "044"       -> '44'
85 basx049 toSci "0044"      -> '44'
86 basx050 toSci "0.0005"      -> '0.0005'
87 basx051 toSci "00.00005"    -> '0.00005'
88 basx052 toSci "0.000005"    -> '0.000005'
89 basx053 toSci "0.0000050"   -> '0.0000050'
90 basx054 toSci "0.0000005"   -> '5E-7'
91 basx055 toSci "0.00000005"  -> '5E-8'
92 basx056 toSci "12345678.543210" -> '12345678.543210'
93 basx057 toSci "2345678.543210" -> '2345678.543210'
94 basx058 toSci "345678.543210" -> '345678.543210'
95 basx059 toSci "0345678.54321" -> '345678.54321'
96 basx060 toSci "345678.5432" -> '345678.5432'
97 basx061 toSci "+345678.5432" -> '345678.5432'
98 basx062 toSci "+0345678.5432" -> '345678.5432'
99 basx063 toSci "+00345678.5432" -> '345678.5432'
100 basx064 toSci "-345678.5432"  -> '-345678.5432'
101 basx065 toSci "-0345678.5432"  -> '-345678.5432'
102 basx066 toSci "-00345678.5432"  -> '-345678.5432'
103 -- examples
104 basx067 toSci "5E-6"        -> '0.000005'
105 basx068 toSci "50E-7"       -> '0.0000050'
106 basx069 toSci "5E-7"        -> '5E-7'
107
108 -- [No exotics as no Unicode]
109
110 -- rounded with dots in all (including edge) places
111 basx071 toSci  .1234567890123456123  -> 0.1234567890123456 Inexact Rounded
112 basx072 toSci  1.234567890123456123  -> 1.234567890123456 Inexact Rounded
113 basx073 toSci  12.34567890123456123  -> 12.34567890123456 Inexact Rounded
114 basx074 toSci  123.4567890123456123  -> 123.4567890123456 Inexact Rounded
115 basx075 toSci  1234.567890123456123  -> 1234.567890123456 Inexact Rounded
116 basx076 toSci  12345.67890123456123  -> 12345.67890123456 Inexact Rounded
117 basx077 toSci  123456.7890123456123  -> 123456.7890123456 Inexact Rounded
118 basx078 toSci  1234567.890123456123  -> 1234567.890123456 Inexact Rounded
119 basx079 toSci  12345678.90123456123  -> 12345678.90123456 Inexact Rounded
120 basx080 toSci  123456789.0123456123  -> 123456789.0123456 Inexact Rounded
121 basx081 toSci  1234567890.123456123  -> 1234567890.123456 Inexact Rounded
122 basx082 toSci  12345678901.23456123  -> 12345678901.23456 Inexact Rounded
123 basx083 toSci  123456789012.3456123  -> 123456789012.3456 Inexact Rounded
124 basx084 toSci  1234567890123.456123  -> 1234567890123.456 Inexact Rounded
125 basx085 toSci  12345678901234.56123  -> 12345678901234.56 Inexact Rounded
126 basx086 toSci  123456789012345.6123  -> 123456789012345.6 Inexact Rounded
127 basx087 toSci  1234567890123456.123  -> 1234567890123456  Inexact Rounded
128 basx088 toSci  12345678901234561.23  -> 1.234567890123456E+16 Inexact Rounded
129 basx089 toSci  123456789012345612.3  -> 1.234567890123456E+17 Inexact Rounded
130 basx090 toSci  1234567890123456123.  -> 1.234567890123456E+18 Inexact Rounded
131
132 -- Numbers with E
133 basx130 toSci "0.000E-1"  -> '0.0000'
134 basx131 toSci "0.000E-2"  -> '0.00000'
135 basx132 toSci "0.000E-3"  -> '0.000000'
136 basx133 toSci "0.000E-4"  -> '0E-7'
137 basx134 toSci "0.00E-2"   -> '0.0000'
138 basx135 toSci "0.00E-3"   -> '0.00000'
139 basx136 toSci "0.00E-4"   -> '0.000000'
140 basx137 toSci "0.00E-5"   -> '0E-7'
141 basx138 toSci "+0E+9"     -> '0E+9'
142 basx139 toSci "-0E+9"     -> '-0E+9'
143 basx140 toSci "1E+9"      -> '1E+9'
144 basx141 toSci "1e+09"     -> '1E+9'
145 basx142 toSci "1E+90"     -> '1E+90'
146 basx143 toSci "+1E+009"   -> '1E+9'
147 basx144 toSci "0E+9"      -> '0E+9'
148 basx145 toSci "1E+9"      -> '1E+9'
149 basx146 toSci "1E+09"     -> '1E+9'
150 basx147 toSci "1e+90"     -> '1E+90'
151 basx148 toSci "1E+009"    -> '1E+9'
152 basx149 toSci "000E+9"    -> '0E+9'
153 basx150 toSci "1E9"       -> '1E+9'
154 basx151 toSci "1e09"      -> '1E+9'
155 basx152 toSci "1E90"      -> '1E+90'
156 basx153 toSci "1E009"     -> '1E+9'
157 basx154 toSci "0E9"       -> '0E+9'
158 basx155 toSci "0.000e+0"  -> '0.000'
159 basx156 toSci "0.000E-1"  -> '0.0000'
160 basx157 toSci "4E+9"      -> '4E+9'
161 basx158 toSci "44E+9"     -> '4.4E+10'
162 basx159 toSci "0.73e-7"   -> '7.3E-8'
163 basx160 toSci "00E+9"     -> '0E+9'
164 basx161 toSci "00E-9"     -> '0E-9'
165 basx162 toSci "10E+9"     -> '1.0E+10'
166 basx163 toSci "10E+09"    -> '1.0E+10'
167 basx164 toSci "10e+90"    -> '1.0E+91'
168 basx165 toSci "10E+009"   -> '1.0E+10'
169 basx166 toSci "100e+9"    -> '1.00E+11'
170 basx167 toSci "100e+09"   -> '1.00E+11'
171 basx168 toSci "100E+90"   -> '1.00E+92'
172 basx169 toSci "100e+009"  -> '1.00E+11'
173
174 basx170 toSci "1.265"     -> '1.265'
175 basx171 toSci "1.265E-20" -> '1.265E-20'
176 basx172 toSci "1.265E-8"  -> '1.265E-8'
177 basx173 toSci "1.265E-4"  -> '0.0001265'
178 basx174 toSci "1.265E-3"  -> '0.001265'
179 basx175 toSci "1.265E-2"  -> '0.01265'
180 basx176 toSci "1.265E-1"  -> '0.1265'
181 basx177 toSci "1.265E-0"  -> '1.265'
182 basx178 toSci "1.265E+1"  -> '12.65'
183 basx179 toSci "1.265E+2"  -> '126.5'
184 basx180 toSci "1.265E+3"  -> '1265'
185 basx181 toSci "1.265E+4"  -> '1.265E+4'
186 basx182 toSci "1.265E+8"  -> '1.265E+8'
187 basx183 toSci "1.265E+20" -> '1.265E+20'
188
189 basx190 toSci "12.65"     -> '12.65'
190 basx191 toSci "12.65E-20" -> '1.265E-19'
191 basx192 toSci "12.65E-8"  -> '1.265E-7'
192 basx193 toSci "12.65E-4"  -> '0.001265'
193 basx194 toSci "12.65E-3"  -> '0.01265'
194 basx195 toSci "12.65E-2"  -> '0.1265'
195 basx196 toSci "12.65E-1"  -> '1.265'
196 basx197 toSci "12.65E-0"  -> '12.65'
197 basx198 toSci "12.65E+1"  -> '126.5'
198 basx199 toSci "12.65E+2"  -> '1265'
199 basx200 toSci "12.65E+3"  -> '1.265E+4'
200 basx201 toSci "12.65E+4"  -> '1.265E+5'
201 basx202 toSci "12.65E+8"  -> '1.265E+9'
202 basx203 toSci "12.65E+20" -> '1.265E+21'
203
204 basx210 toSci "126.5"     -> '126.5'
205 basx211 toSci "126.5E-20" -> '1.265E-18'
206 basx212 toSci "126.5E-8"  -> '0.000001265'
207 basx213 toSci "126.5E-4"  -> '0.01265'
208 basx214 toSci "126.5E-3"  -> '0.1265'
209 basx215 toSci "126.5E-2"  -> '1.265'
210 basx216 toSci "126.5E-1"  -> '12.65'
211 basx217 toSci "126.5E-0"  -> '126.5'
212 basx218 toSci "126.5E+1"  -> '1265'
213 basx219 toSci "126.5E+2"  -> '1.265E+4'
214 basx220 toSci "126.5E+3"  -> '1.265E+5'
215 basx221 toSci "126.5E+4"  -> '1.265E+6'
216 basx222 toSci "126.5E+8"  -> '1.265E+10'
217 basx223 toSci "126.5E+20" -> '1.265E+22'
218
219 basx230 toSci "1265"     -> '1265'
220 basx231 toSci "1265E-20" -> '1.265E-17'
221 basx232 toSci "1265E-8"  -> '0.00001265'
222 basx233 toSci "1265E-4"  -> '0.1265'
223 basx234 toSci "1265E-3"  -> '1.265'
224 basx235 toSci "1265E-2"  -> '12.65'
225 basx236 toSci "1265E-1"  -> '126.5'
226 basx237 toSci "1265E-0"  -> '1265'
227 basx238 toSci "1265E+1"  -> '1.265E+4'
228 basx239 toSci "1265E+2"  -> '1.265E+5'
229 basx240 toSci "1265E+3"  -> '1.265E+6'
230 basx241 toSci "1265E+4"  -> '1.265E+7'
231 basx242 toSci "1265E+8"  -> '1.265E+11'
232 basx243 toSci "1265E+20" -> '1.265E+23'
233
234 basx250 toSci "0.1265"     -> '0.1265'
235 basx251 toSci "0.1265E-20" -> '1.265E-21'
236 basx252 toSci "0.1265E-8"  -> '1.265E-9'
237 basx253 toSci "0.1265E-4"  -> '0.00001265'
238 basx254 toSci "0.1265E-3"  -> '0.0001265'
239 basx255 toSci "0.1265E-2"  -> '0.001265'
240 basx256 toSci "0.1265E-1"  -> '0.01265'
241 basx257 toSci "0.1265E-0"  -> '0.1265'
242 basx258 toSci "0.1265E+1"  -> '1.265'
243 basx259 toSci "0.1265E+2"  -> '12.65'
244 basx260 toSci "0.1265E+3"  -> '126.5'
245 basx261 toSci "0.1265E+4"  -> '1265'
246 basx262 toSci "0.1265E+8"  -> '1.265E+7'
247 basx263 toSci "0.1265E+20" -> '1.265E+19'
248
249 -- some more negative zeros [systematic tests below]
250 basx290 toSci "-0.000E-1"  -> '-0.0000'
251 basx291 toSci "-0.000E-2"  -> '-0.00000'
252 basx292 toSci "-0.000E-3"  -> '-0.000000'
253 basx293 toSci "-0.000E-4"  -> '-0E-7'
254 basx294 toSci "-0.00E-2"   -> '-0.0000'
255 basx295 toSci "-0.00E-3"   -> '-0.00000'
256 basx296 toSci "-0.0E-2"    -> '-0.000'
257 basx297 toSci "-0.0E-3"    -> '-0.0000'
258 basx298 toSci "-0E-2"      -> '-0.00'
259 basx299 toSci "-0E-3"      -> '-0.000'
260
261 -- Engineering notation tests
262 basx301  toSci 10e12  -> 1.0E+13
263 basx302  toEng 10e12  -> 10E+12
264 basx303  toSci 10e11  -> 1.0E+12
265 basx304  toEng 10e11  -> 1.0E+12
266 basx305  toSci 10e10  -> 1.0E+11
267 basx306  toEng 10e10  -> 100E+9
268 basx307  toSci 10e9   -> 1.0E+10
269 basx308  toEng 10e9   -> 10E+9
270 basx309  toSci 10e8   -> 1.0E+9
271 basx310  toEng 10e8   -> 1.0E+9
272 basx311  toSci 10e7   -> 1.0E+8
273 basx312  toEng 10e7   -> 100E+6
274 basx313  toSci 10e6   -> 1.0E+7
275 basx314  toEng 10e6   -> 10E+6
276 basx315  toSci 10e5   -> 1.0E+6
277 basx316  toEng 10e5   -> 1.0E+6
278 basx317  toSci 10e4   -> 1.0E+5
279 basx318  toEng 10e4   -> 100E+3
280 basx319  toSci 10e3   -> 1.0E+4
281 basx320  toEng 10e3   -> 10E+3
282 basx321  toSci 10e2   -> 1.0E+3
283 basx322  toEng 10e2   -> 1.0E+3
284 basx323  toSci 10e1   -> 1.0E+2
285 basx324  toEng 10e1   -> 100
286 basx325  toSci 10e0   -> 10
287 basx326  toEng 10e0   -> 10
288 basx327  toSci 10e-1  -> 1.0
289 basx328  toEng 10e-1  -> 1.0
290 basx329  toSci 10e-2  -> 0.10
291 basx330  toEng 10e-2  -> 0.10
292 basx331  toSci 10e-3  -> 0.010
293 basx332  toEng 10e-3  -> 0.010
294 basx333  toSci 10e-4  -> 0.0010
295 basx334  toEng 10e-4  -> 0.0010
296 basx335  toSci 10e-5  -> 0.00010
297 basx336  toEng 10e-5  -> 0.00010
298 basx337  toSci 10e-6  -> 0.000010
299 basx338  toEng 10e-6  -> 0.000010
300 basx339  toSci 10e-7  -> 0.0000010
301 basx340  toEng 10e-7  -> 0.0000010
302 basx341  toSci 10e-8  -> 1.0E-7
303 basx342  toEng 10e-8  -> 100E-9
304 basx343  toSci 10e-9  -> 1.0E-8
305 basx344  toEng 10e-9  -> 10E-9
306 basx345  toSci 10e-10 -> 1.0E-9
307 basx346  toEng 10e-10 -> 1.0E-9
308 basx347  toSci 10e-11 -> 1.0E-10
309 basx348  toEng 10e-11 -> 100E-12
310 basx349  toSci 10e-12 -> 1.0E-11
311 basx350  toEng 10e-12 -> 10E-12
312 basx351  toSci 10e-13 -> 1.0E-12
313 basx352  toEng 10e-13 -> 1.0E-12
314
315 basx361  toSci 7E12  -> 7E+12
316 basx362  toEng 7E12  -> 7E+12
317 basx363  toSci 7E11  -> 7E+11
318 basx364  toEng 7E11  -> 700E+9
319 basx365  toSci 7E10  -> 7E+10
320 basx366  toEng 7E10  -> 70E+9
321 basx367  toSci 7E9   -> 7E+9
322 basx368  toEng 7E9   -> 7E+9
323 basx369  toSci 7E8   -> 7E+8
324 basx370  toEng 7E8   -> 700E+6
325 basx371  toSci 7E7   -> 7E+7
326 basx372  toEng 7E7   -> 70E+6
327 basx373  toSci 7E6   -> 7E+6
328 basx374  toEng 7E6   -> 7E+6
329 basx375  toSci 7E5   -> 7E+5
330 basx376  toEng 7E5   -> 700E+3
331 basx377  toSci 7E4   -> 7E+4
332 basx378  toEng 7E4   -> 70E+3
333 basx379  toSci 7E3   -> 7E+3
334 basx380  toEng 7E3   -> 7E+3
335 basx381  toSci 7E2   -> 7E+2
336 basx382  toEng 7E2   -> 700
337 basx383  toSci 7E1   -> 7E+1
338 basx384  toEng 7E1   -> 70
339 basx385  toSci 7E0   -> 7
340 basx386  toEng 7E0   -> 7
341 basx387  toSci 7E-1  -> 0.7
342 basx388  toEng 7E-1  -> 0.7
343 basx389  toSci 7E-2  -> 0.07
344 basx390  toEng 7E-2  -> 0.07
345 basx391  toSci 7E-3  -> 0.007
346 basx392  toEng 7E-3  -> 0.007
347 basx393  toSci 7E-4  -> 0.0007
348 basx394  toEng 7E-4  -> 0.0007
349 basx395  toSci 7E-5  -> 0.00007
350 basx396  toEng 7E-5  -> 0.00007
351 basx397  toSci 7E-6  -> 0.000007
352 basx398  toEng 7E-6  -> 0.000007
353 basx399  toSci 7E-7  -> 7E-7
354 basx400  toEng 7E-7  -> 700E-9
355 basx401  toSci 7E-8  -> 7E-8
356 basx402  toEng 7E-8  -> 70E-9
357 basx403  toSci 7E-9  -> 7E-9
358 basx404  toEng 7E-9  -> 7E-9
359 basx405  toSci 7E-10 -> 7E-10
360 basx406  toEng 7E-10 -> 700E-12
361 basx407  toSci 7E-11 -> 7E-11
362 basx408  toEng 7E-11 -> 70E-12
363 basx409  toSci 7E-12 -> 7E-12
364 basx410  toEng 7E-12 -> 7E-12
365 basx411  toSci 7E-13 -> 7E-13
366 basx412  toEng 7E-13 -> 700E-15
367
368 -- Exacts remain exact up to precision ..
369 precision: 9
370 basx420  toSci    100 -> 100
371 basx421  toEng    100 -> 100
372 basx422  toSci   1000 -> 1000
373 basx423  toEng   1000 -> 1000
374 basx424  toSci  999.9 ->  999.9
375 basx425  toEng  999.9 ->  999.9
376 basx426  toSci 1000.0 -> 1000.0
377 basx427  toEng 1000.0 -> 1000.0
378 basx428  toSci 1000.1 -> 1000.1
379 basx429  toEng 1000.1 -> 1000.1
380 basx430  toSci 10000 -> 10000
381 basx431  toEng 10000 -> 10000
382 basx432  toSci 100000 -> 100000
383 basx433  toEng 100000 -> 100000
384 basx434  toSci 1000000 -> 1000000
385 basx435  toEng 1000000 -> 1000000
386 basx436  toSci 10000000 -> 10000000
387 basx437  toEng 10000000 -> 10000000
388 basx438  toSci 100000000 -> 100000000
389 basx439  toEng 100000000 -> 100000000
390 basx440  toSci 1000000000    -> 1.00000000E+9    Rounded
391 basx441  toEng 1000000000    -> 1.00000000E+9    Rounded
392 basx442  toSci 1000000000    -> 1.00000000E+9    Rounded
393 basx443  toEng 1000000000    -> 1.00000000E+9    Rounded
394 basx444  toSci 1000000003    -> 1.00000000E+9    Rounded Inexact
395 basx445  toEng 1000000003    -> 1.00000000E+9    Rounded Inexact
396 basx446  toSci 1000000005    -> 1.00000001E+9    Rounded Inexact
397 basx447  toEng 1000000005    -> 1.00000001E+9    Rounded Inexact
398 basx448  toSci 10000000050   -> 1.00000001E+10   Rounded Inexact
399 basx449  toEng 10000000050   -> 10.0000001E+9    Rounded Inexact
400 basx450  toSci 1000000009    -> 1.00000001E+9    Rounded Inexact
401 basx451  toEng 1000000009    -> 1.00000001E+9    Rounded Inexact
402 basx452  toSci 10000000000   -> 1.00000000E+10   Rounded
403 basx453  toEng 10000000000   -> 10.0000000E+9    Rounded
404 basx454  toSci 10000000003   -> 1.00000000E+10   Rounded Inexact
405 basx455  toEng 10000000003   -> 10.0000000E+9    Rounded Inexact
406 basx456  toSci 10000000005   -> 1.00000000E+10   Rounded Inexact
407 basx457  toEng 10000000005   -> 10.0000000E+9    Rounded Inexact
408 basx458  toSci 10000000009   -> 1.00000000E+10   Rounded Inexact
409 basx459  toEng 10000000009   -> 10.0000000E+9    Rounded Inexact
410 basx460  toSci 100000000000  -> 1.00000000E+11   Rounded
411 basx461  toEng 100000000000  -> 100.000000E+9    Rounded
412 basx462  toSci 100000000300  -> 1.00000000E+11   Rounded Inexact
413 basx463  toEng 100000000300  -> 100.000000E+9    Rounded Inexact
414 basx464  toSci 100000000500  -> 1.00000001E+11   Rounded Inexact
415 basx465  toEng 100000000500  -> 100.000001E+9    Rounded Inexact
416 basx466  toSci 100000000900  -> 1.00000001E+11   Rounded Inexact
417 basx467  toEng 100000000900  -> 100.000001E+9    Rounded Inexact
418 basx468  toSci 1000000000000 -> 1.00000000E+12   Rounded
419 basx469  toEng 1000000000000 -> 1.00000000E+12   Rounded
420 basx470  toSci 1000000003000 -> 1.00000000E+12   Rounded Inexact
421 basx471  toEng 1000000003000 -> 1.00000000E+12   Rounded Inexact
422 basx472  toSci 1000000005000 -> 1.00000001E+12   Rounded Inexact
423 basx473  toEng 1000000005000 -> 1.00000001E+12   Rounded Inexact
424 basx474  toSci 1000000009000 -> 1.00000001E+12   Rounded Inexact
425 basx475  toEng 1000000009000 -> 1.00000001E+12   Rounded Inexact
426
427 -- all-nines rounding
428 precision: 9
429 rounding:  half_up
430 basx270  toSci 999999999          ->   999999999
431 basx271  toSci 9999999990         ->   9.99999999E+9      Rounded
432 basx272  toSci 9999999991         ->   9.99999999E+9      Rounded Inexact
433 basx273  toSci 9999999992         ->   9.99999999E+9      Rounded Inexact
434 basx274  toSci 9999999993         ->   9.99999999E+9      Rounded Inexact
435 basx275  toSci 9999999994         ->   9.99999999E+9      Rounded Inexact
436 basx276  toSci 9999999995         ->   1.00000000E+10     Rounded Inexact
437 basx277  toSci 9999999996         ->   1.00000000E+10     Rounded Inexact
438 basx278  toSci 9999999997         ->   1.00000000E+10     Rounded Inexact
439 basx279  toSci 9999999998         ->   1.00000000E+10     Rounded Inexact
440 basx280  toSci 9999999999         ->   1.00000000E+10     Rounded Inexact
441 basx281  toSci 9999999999999999   ->   1.00000000E+16     Rounded Inexact
442
443 -- check rounding modes heeded
444 precision: 5
445 rounding:  ceiling
446 bsrx401  toSci  1.23450    ->  1.2345  Rounded
447 bsrx402  toSci  1.234549   ->  1.2346  Rounded Inexact
448 bsrx403  toSci  1.234550   ->  1.2346  Rounded Inexact
449 bsrx404  toSci  1.234551   ->  1.2346  Rounded Inexact
450 rounding:  up
451 bsrx405  toSci  1.23450    ->  1.2345  Rounded
452 bsrx406  toSci  1.234549   ->  1.2346  Rounded Inexact
453 bsrx407  toSci  1.234550   ->  1.2346  Rounded Inexact
454 bsrx408  toSci  1.234551   ->  1.2346  Rounded Inexact
455 rounding:  floor
456 bsrx410  toSci  1.23450    ->  1.2345  Rounded
457 bsrx411  toSci  1.234549   ->  1.2345  Rounded Inexact
458 bsrx412  toSci  1.234550   ->  1.2345  Rounded Inexact
459 bsrx413  toSci  1.234551   ->  1.2345  Rounded Inexact
460 rounding:  half_down
461 bsrx415  toSci  1.23450    ->  1.2345  Rounded
462 bsrx416  toSci  1.234549   ->  1.2345  Rounded Inexact
463 bsrx417  toSci  1.234550   ->  1.2345  Rounded Inexact
464 bsrx418  toSci  1.234650   ->  1.2346  Rounded Inexact
465 bsrx419  toSci  1.234551   ->  1.2346  Rounded Inexact
466 rounding:  half_even
467 bsrx421  toSci  1.23450    ->  1.2345  Rounded
468 bsrx422  toSci  1.234549   ->  1.2345  Rounded Inexact
469 bsrx423  toSci  1.234550   ->  1.2346  Rounded Inexact
470 bsrx424  toSci  1.234650   ->  1.2346  Rounded Inexact
471 bsrx425  toSci  1.234551   ->  1.2346  Rounded Inexact
472 rounding:  down
473 bsrx426  toSci  1.23450    ->  1.2345  Rounded
474 bsrx427  toSci  1.234549   ->  1.2345  Rounded Inexact
475 bsrx428  toSci  1.234550   ->  1.2345  Rounded Inexact
476 bsrx429  toSci  1.234551   ->  1.2345  Rounded Inexact
477 rounding:  half_up
478 bsrx431  toSci  1.23450    ->  1.2345  Rounded
479 bsrx432  toSci  1.234549   ->  1.2345  Rounded Inexact
480 bsrx433  toSci  1.234550   ->  1.2346  Rounded Inexact
481 bsrx434  toSci  1.234650   ->  1.2347  Rounded Inexact
482 bsrx435  toSci  1.234551   ->  1.2346  Rounded Inexact
483 -- negatives
484 rounding:  ceiling
485 bsrx501  toSci -1.23450    -> -1.2345  Rounded
486 bsrx502  toSci -1.234549   -> -1.2345  Rounded Inexact
487 bsrx503  toSci -1.234550   -> -1.2345  Rounded Inexact
488 bsrx504  toSci -1.234551   -> -1.2345  Rounded Inexact
489 rounding:  up
490 bsrx505  toSci -1.23450    -> -1.2345  Rounded
491 bsrx506  toSci -1.234549   -> -1.2346  Rounded Inexact
492 bsrx507  toSci -1.234550   -> -1.2346  Rounded Inexact
493 bsrx508  toSci -1.234551   -> -1.2346  Rounded Inexact
494 rounding:  floor
495 bsrx510  toSci -1.23450    -> -1.2345  Rounded
496 bsrx511  toSci -1.234549   -> -1.2346  Rounded Inexact
497 bsrx512  toSci -1.234550   -> -1.2346  Rounded Inexact
498 bsrx513  toSci -1.234551   -> -1.2346  Rounded Inexact
499 rounding:  half_down
500 bsrx515  toSci -1.23450    -> -1.2345  Rounded
501 bsrx516  toSci -1.234549   -> -1.2345  Rounded Inexact
502 bsrx517  toSci -1.234550   -> -1.2345  Rounded Inexact
503 bsrx518  toSci -1.234650   -> -1.2346  Rounded Inexact
504 bsrx519  toSci -1.234551   -> -1.2346  Rounded Inexact
505 rounding:  half_even
506 bsrx521  toSci -1.23450    -> -1.2345  Rounded
507 bsrx522  toSci -1.234549   -> -1.2345  Rounded Inexact
508 bsrx523  toSci -1.234550   -> -1.2346  Rounded Inexact
509 bsrx524  toSci -1.234650   -> -1.2346  Rounded Inexact
510 bsrx525  toSci -1.234551   -> -1.2346  Rounded Inexact
511 rounding:  down
512 bsrx526  toSci -1.23450    -> -1.2345  Rounded
513 bsrx527  toSci -1.234549   -> -1.2345  Rounded Inexact
514 bsrx528  toSci -1.234550   -> -1.2345  Rounded Inexact
515 bsrx529  toSci -1.234551   -> -1.2345  Rounded Inexact
516 rounding:  half_up
517 bsrx531  toSci -1.23450    -> -1.2345  Rounded
518 bsrx532  toSci -1.234549   -> -1.2345  Rounded Inexact
519 bsrx533  toSci -1.234550   -> -1.2346  Rounded Inexact
520 bsrx534  toSci -1.234650   -> -1.2347  Rounded Inexact
521 bsrx535  toSci -1.234551   -> -1.2346  Rounded Inexact
522
523 -- a few larger exponents
524 maxExponent: 999999999
525 minExponent: -999999999
526 basx480 toSci "0.09e999"  -> '9E+997'
527 basx481 toSci "0.9e999"   -> '9E+998'
528 basx482 toSci "9e999"     -> '9E+999'
529 basx483 toSci "9.9e999"   -> '9.9E+999'
530 basx484 toSci "9.99e999"  -> '9.99E+999'
531 basx485 toSci "9.99e-999" -> '9.99E-999'
532 basx486 toSci "9.9e-999"  -> '9.9E-999'
533 basx487 toSci "9e-999"    -> '9E-999'
534 basx489 toSci "99e-999"   -> '9.9E-998'
535 basx490 toSci "999e-999"  -> '9.99E-997'
536 basx491 toSci '0.9e-998'  -> '9E-999'
537 basx492 toSci '0.09e-997' -> '9E-999'
538 basx493 toSci '0.1e1000'  -> '1E+999'
539 basx494 toSci '10e-1000'  -> '1.0E-999'
540
541 rounding:  half_up
542 precision: 9
543
544 -- The 'baddies' tests from DiagBigDecimal, plus some new ones
545 basx500 toSci '1..2'            -> NaN Conversion_syntax
546 basx501 toSci '.'               -> NaN Conversion_syntax
547 basx502 toSci '..'              -> NaN Conversion_syntax
548 basx503 toSci '++1'             -> NaN Conversion_syntax
549 basx504 toSci '--1'             -> NaN Conversion_syntax
550 basx505 toSci '-+1'             -> NaN Conversion_syntax
551 basx506 toSci '+-1'             -> NaN Conversion_syntax
552 basx507 toSci '12e'             -> NaN Conversion_syntax
553 basx508 toSci '12e++'           -> NaN Conversion_syntax
554 basx509 toSci '12f4'            -> NaN Conversion_syntax
555 basx510 toSci ' +1'             -> NaN Conversion_syntax
556 basx511 toSci '+ 1'             -> NaN Conversion_syntax
557 basx512 toSci '12 '             -> NaN Conversion_syntax
558 basx513 toSci ' + 1'            -> NaN Conversion_syntax
559 basx514 toSci ' - 1 '           -> NaN Conversion_syntax
560 basx515 toSci 'x'               -> NaN Conversion_syntax
561 basx516 toSci '-1-'             -> NaN Conversion_syntax
562 basx517 toSci '12-'             -> NaN Conversion_syntax
563 basx518 toSci '3+'              -> NaN Conversion_syntax
564 basx519 toSci ''                -> NaN Conversion_syntax
565 basx520 toSci '1e-'             -> NaN Conversion_syntax
566 basx521 toSci '7e99999a'        -> NaN Conversion_syntax
567 basx522 toSci '7e123567890x'    -> NaN Conversion_syntax
568 basx523 toSci '7e12356789012x'  -> NaN Conversion_syntax
569 basx524 toSci ''                -> NaN Conversion_syntax
570 basx525 toSci 'e100'            -> NaN Conversion_syntax
571 basx526 toSci '\u0e5a'          -> NaN Conversion_syntax
572 basx527 toSci '\u0b65'          -> NaN Conversion_syntax
573 basx528 toSci '123,65'          -> NaN Conversion_syntax
574 basx529 toSci '1.34.5'          -> NaN Conversion_syntax
575 basx530 toSci '.123.5'          -> NaN Conversion_syntax
576 basx531 toSci '01.35.'          -> NaN Conversion_syntax
577 basx532 toSci '01.35-'          -> NaN Conversion_syntax
578 basx533 toSci '0000..'          -> NaN Conversion_syntax
579 basx534 toSci '.0000.'          -> NaN Conversion_syntax
580 basx535 toSci '00..00'          -> NaN Conversion_syntax
581 basx536 toSci '111e*123'        -> NaN Conversion_syntax
582 basx537 toSci '111e123-'        -> NaN Conversion_syntax
583 basx538 toSci '111e+12+'        -> NaN Conversion_syntax
584 basx539 toSci '111e1-3-'        -> NaN Conversion_syntax
585 basx540 toSci '111e1*23'        -> NaN Conversion_syntax
586 basx541 toSci '111e1e+3'        -> NaN Conversion_syntax
587 basx542 toSci '1e1.0'           -> NaN Conversion_syntax
588 basx543 toSci '1e123e'          -> NaN Conversion_syntax
589 basx544 toSci 'ten'             -> NaN Conversion_syntax
590 basx545 toSci 'ONE'             -> NaN Conversion_syntax
591 basx546 toSci '1e.1'            -> NaN Conversion_syntax
592 basx547 toSci '1e1.'            -> NaN Conversion_syntax
593 basx548 toSci '1ee'             -> NaN Conversion_syntax
594 basx549 toSci 'e+1'             -> NaN Conversion_syntax
595 basx550 toSci '1.23.4'          -> NaN Conversion_syntax
596 basx551 toSci '1.2.1'           -> NaN Conversion_syntax
597 basx552 toSci '1E+1.2'          -> NaN Conversion_syntax
598 basx553 toSci '1E+1.2.3'        -> NaN Conversion_syntax
599 basx554 toSci '1E++1'           -> NaN Conversion_syntax
600 basx555 toSci '1E--1'           -> NaN Conversion_syntax
601 basx556 toSci '1E+-1'           -> NaN Conversion_syntax
602 basx557 toSci '1E-+1'           -> NaN Conversion_syntax
603 basx558 toSci '1E''1'           -> NaN Conversion_syntax
604 basx559 toSci "1E""1"           -> NaN Conversion_syntax
605 basx560 toSci "1E"""""          -> NaN Conversion_syntax
606 -- Near-specials
607 basx561 toSci "qNaN"            -> NaN Conversion_syntax
608 basx562 toSci "NaNq"            -> NaN Conversion_syntax
609 basx563 toSci "NaNs"            -> NaN Conversion_syntax
610 basx564 toSci "Infi"            -> NaN Conversion_syntax
611 basx565 toSci "Infin"           -> NaN Conversion_syntax
612 basx566 toSci "Infini"          -> NaN Conversion_syntax
613 basx567 toSci "Infinit"         -> NaN Conversion_syntax
614 basx568 toSci "-Infinit"        -> NaN Conversion_syntax
615 basx569 toSci "0Inf"            -> NaN Conversion_syntax
616 basx570 toSci "9Inf"            -> NaN Conversion_syntax
617 basx571 toSci "-0Inf"           -> NaN Conversion_syntax
618 basx572 toSci "-9Inf"           -> NaN Conversion_syntax
619 basx573 toSci "-sNa"            -> NaN Conversion_syntax
620 basx574 toSci "xNaN"            -> NaN Conversion_syntax
621 basx575 toSci "0sNaN"           -> NaN Conversion_syntax
622
623 -- some baddies with dots and Es and dots and specials
624 basx576 toSci  'e+1'            ->  NaN Conversion_syntax
625 basx577 toSci  '.e+1'           ->  NaN Conversion_syntax
626 basx578 toSci  '+.e+1'          ->  NaN Conversion_syntax
627 basx579 toSci  '-.e+'           ->  NaN Conversion_syntax
628 basx580 toSci  '-.e'            ->  NaN Conversion_syntax
629 basx581 toSci  'E+1'            ->  NaN Conversion_syntax
630 basx582 toSci  '.E+1'           ->  NaN Conversion_syntax
631 basx583 toSci  '+.E+1'          ->  NaN Conversion_syntax
632 basx584 toSci  '-.E+'           ->  NaN Conversion_syntax
633 basx585 toSci  '-.E'            ->  NaN Conversion_syntax
634
635 basx586 toSci  '.NaN'           ->  NaN Conversion_syntax
636 basx587 toSci  '-.NaN'          ->  NaN Conversion_syntax
637 basx588 toSci  '+.sNaN'         ->  NaN Conversion_syntax
638 basx589 toSci  '+.Inf'          ->  NaN Conversion_syntax
639 basx590 toSci  '.Infinity'      ->  NaN Conversion_syntax
640
641 -- Zeros
642 basx601 toSci 0.000000000       -> 0E-9
643 basx602 toSci 0.00000000        -> 0E-8
644 basx603 toSci 0.0000000         -> 0E-7
645 basx604 toSci 0.000000          -> 0.000000
646 basx605 toSci 0.00000           -> 0.00000
647 basx606 toSci 0.0000            -> 0.0000
648 basx607 toSci 0.000             -> 0.000
649 basx608 toSci 0.00              -> 0.00
650 basx609 toSci 0.0               -> 0.0
651 basx610 toSci  .0               -> 0.0
652 basx611 toSci 0.                -> 0
653 basx612 toSci -.0               -> -0.0
654 basx613 toSci -0.               -> -0
655 basx614 toSci -0.0              -> -0.0
656 basx615 toSci -0.00             -> -0.00
657 basx616 toSci -0.000            -> -0.000
658 basx617 toSci -0.0000           -> -0.0000
659 basx618 toSci -0.00000          -> -0.00000
660 basx619 toSci -0.000000         -> -0.000000
661 basx620 toSci -0.0000000        -> -0E-7
662 basx621 toSci -0.00000000       -> -0E-8
663 basx622 toSci -0.000000000      -> -0E-9
664
665 basx630 toSci  0.00E+0          -> 0.00
666 basx631 toSci  0.00E+1          -> 0.0
667 basx632 toSci  0.00E+2          -> 0
668 basx633 toSci  0.00E+3          -> 0E+1
669 basx634 toSci  0.00E+4          -> 0E+2
670 basx635 toSci  0.00E+5          -> 0E+3
671 basx636 toSci  0.00E+6          -> 0E+4
672 basx637 toSci  0.00E+7          -> 0E+5
673 basx638 toSci  0.00E+8          -> 0E+6
674 basx639 toSci  0.00E+9          -> 0E+7
675
676 basx640 toSci  0.0E+0           -> 0.0
677 basx641 toSci  0.0E+1           -> 0
678 basx642 toSci  0.0E+2           -> 0E+1
679 basx643 toSci  0.0E+3           -> 0E+2
680 basx644 toSci  0.0E+4           -> 0E+3
681 basx645 toSci  0.0E+5           -> 0E+4
682 basx646 toSci  0.0E+6           -> 0E+5
683 basx647 toSci  0.0E+7           -> 0E+6
684 basx648 toSci  0.0E+8           -> 0E+7
685 basx649 toSci  0.0E+9           -> 0E+8
686
687 basx650 toSci  0E+0             -> 0
688 basx651 toSci  0E+1             -> 0E+1
689 basx652 toSci  0E+2             -> 0E+2
690 basx653 toSci  0E+3             -> 0E+3
691 basx654 toSci  0E+4             -> 0E+4
692 basx655 toSci  0E+5             -> 0E+5
693 basx656 toSci  0E+6             -> 0E+6
694 basx657 toSci  0E+7             -> 0E+7
695 basx658 toSci  0E+8             -> 0E+8
696 basx659 toSci  0E+9             -> 0E+9
697
698 basx660 toSci  0.0E-0           -> 0.0
699 basx661 toSci  0.0E-1           -> 0.00
700 basx662 toSci  0.0E-2           -> 0.000
701 basx663 toSci  0.0E-3           -> 0.0000
702 basx664 toSci  0.0E-4           -> 0.00000
703 basx665 toSci  0.0E-5           -> 0.000000
704 basx666 toSci  0.0E-6           -> 0E-7
705 basx667 toSci  0.0E-7           -> 0E-8
706 basx668 toSci  0.0E-8           -> 0E-9
707 basx669 toSci  0.0E-9           -> 0E-10
708
709 basx670 toSci  0.00E-0          -> 0.00
710 basx671 toSci  0.00E-1          -> 0.000
711 basx672 toSci  0.00E-2          -> 0.0000
712 basx673 toSci  0.00E-3          -> 0.00000
713 basx674 toSci  0.00E-4          -> 0.000000
714 basx675 toSci  0.00E-5          -> 0E-7
715 basx676 toSci  0.00E-6          -> 0E-8
716 basx677 toSci  0.00E-7          -> 0E-9
717 basx678 toSci  0.00E-8          -> 0E-10
718 basx679 toSci  0.00E-9          -> 0E-11
719
720 basx680 toSci  000000.          ->  0
721 basx681 toSci   00000.          ->  0
722 basx682 toSci    0000.          ->  0
723 basx683 toSci     000.          ->  0
724 basx684 toSci      00.          ->  0
725 basx685 toSci       0.          ->  0
726 basx686 toSci  +00000.          ->  0
727 basx687 toSci  -00000.          -> -0
728 basx688 toSci  +0.              ->  0
729 basx689 toSci  -0.              -> -0
730
731 -- Specials
732 precision: 4
733 basx700 toSci "NaN"             -> NaN
734 basx701 toSci "nan"             -> NaN
735 basx702 toSci "nAn"             -> NaN
736 basx703 toSci "NAN"             -> NaN
737 basx704 toSci "+NaN"            -> NaN
738 basx705 toSci "+nan"            -> NaN
739 basx706 toSci "+nAn"            -> NaN
740 basx707 toSci "+NAN"            -> NaN
741 basx708 toSci "-NaN"            -> -NaN
742 basx709 toSci "-nan"            -> -NaN
743 basx710 toSci "-nAn"            -> -NaN
744 basx711 toSci "-NAN"            -> -NaN
745 basx712 toSci 'NaN0'            -> NaN
746 basx713 toSci 'NaN1'            -> NaN1
747 basx714 toSci 'NaN12'           -> NaN12
748 basx715 toSci 'NaN123'          -> NaN123
749 basx716 toSci 'NaN1234'         -> NaN1234
750 basx717 toSci 'NaN01'           -> NaN1
751 basx718 toSci 'NaN012'          -> NaN12
752 basx719 toSci 'NaN0123'         -> NaN123
753 basx720 toSci 'NaN01234'        -> NaN1234
754 basx721 toSci 'NaN001'          -> NaN1
755 basx722 toSci 'NaN0012'         -> NaN12
756 basx723 toSci 'NaN00123'        -> NaN123
757 basx724 toSci 'NaN001234'       -> NaN1234
758 basx725 toSci 'NaN12345'        -> NaN Conversion_syntax
759 basx726 toSci 'NaN123e+1'       -> NaN Conversion_syntax
760 basx727 toSci 'NaN12.45'        -> NaN Conversion_syntax
761 basx728 toSci 'NaN-12'          -> NaN Conversion_syntax
762 basx729 toSci 'NaN+12'          -> NaN Conversion_syntax
763
764 basx730 toSci "sNaN"            -> sNaN
765 basx731 toSci "snan"            -> sNaN
766 basx732 toSci "SnAn"            -> sNaN
767 basx733 toSci "SNAN"            -> sNaN
768 basx734 toSci "+sNaN"           -> sNaN
769 basx735 toSci "+snan"           -> sNaN
770 basx736 toSci "+SnAn"           -> sNaN
771 basx737 toSci "+SNAN"           -> sNaN
772 basx738 toSci "-sNaN"           -> -sNaN
773 basx739 toSci "-snan"           -> -sNaN
774 basx740 toSci "-SnAn"           -> -sNaN
775 basx741 toSci "-SNAN"           -> -sNaN
776 basx742 toSci 'sNaN0000'        -> sNaN
777 basx743 toSci 'sNaN7'           -> sNaN7
778 basx744 toSci 'sNaN007234'      -> sNaN7234
779 basx745 toSci 'sNaN72345'       -> NaN Conversion_syntax
780 basx746 toSci 'sNaN72.45'       -> NaN Conversion_syntax
781 basx747 toSci 'sNaN-72'         -> NaN Conversion_syntax
782
783 basx748 toSci "Inf"             -> Infinity
784 basx749 toSci "inf"             -> Infinity
785 basx750 toSci "iNf"             -> Infinity
786 basx751 toSci "INF"             -> Infinity
787 basx752 toSci "+Inf"            -> Infinity
788 basx753 toSci "+inf"            -> Infinity
789 basx754 toSci "+iNf"            -> Infinity
790 basx755 toSci "+INF"            -> Infinity
791 basx756 toSci "-Inf"            -> -Infinity
792 basx757 toSci "-inf"            -> -Infinity
793 basx758 toSci "-iNf"            -> -Infinity
794 basx759 toSci "-INF"            -> -Infinity
795
796 basx760 toSci "Infinity"        -> Infinity
797 basx761 toSci "infinity"        -> Infinity
798 basx762 toSci "iNfInItY"        -> Infinity
799 basx763 toSci "INFINITY"        -> Infinity
800 basx764 toSci "+Infinity"       -> Infinity
801 basx765 toSci "+infinity"       -> Infinity
802 basx766 toSci "+iNfInItY"       -> Infinity
803 basx767 toSci "+INFINITY"       -> Infinity
804 basx768 toSci "-Infinity"       -> -Infinity
805 basx769 toSci "-infinity"       -> -Infinity
806 basx770 toSci "-iNfInItY"       -> -Infinity
807 basx771 toSci "-INFINITY"       -> -Infinity
808
809 -- Specials and zeros for toEng
810 basx772 toEng "NaN"              -> NaN
811 basx773 toEng "-Infinity"        -> -Infinity
812 basx774 toEng "-sNaN"            -> -sNaN
813 basx775 toEng "-NaN"             -> -NaN
814 basx776 toEng "+Infinity"        -> Infinity
815 basx778 toEng "+sNaN"            -> sNaN
816 basx779 toEng "+NaN"             -> NaN
817 basx780 toEng "INFINITY"         -> Infinity
818 basx781 toEng "SNAN"             -> sNaN
819 basx782 toEng "NAN"              -> NaN
820 basx783 toEng "infinity"         -> Infinity
821 basx784 toEng "snan"             -> sNaN
822 basx785 toEng "nan"              -> NaN
823 basx786 toEng "InFINITY"         -> Infinity
824 basx787 toEng "SnAN"             -> sNaN
825 basx788 toEng "nAN"              -> NaN
826 basx789 toEng "iNfinity"         -> Infinity
827 basx790 toEng "sNan"             -> sNaN
828 basx791 toEng "Nan"              -> NaN
829 basx792 toEng "Infinity"         -> Infinity
830 basx793 toEng "sNaN"             -> sNaN
831
832 -- Zero toEng, etc.
833 basx800 toEng 0e+1              -> "0.00E+3"  -- doc example
834
835 basx801 toEng 0.000000000       -> 0E-9
836 basx802 toEng 0.00000000        -> 0.00E-6
837 basx803 toEng 0.0000000         -> 0.0E-6
838 basx804 toEng 0.000000          -> 0.000000
839 basx805 toEng 0.00000           -> 0.00000
840 basx806 toEng 0.0000            -> 0.0000
841 basx807 toEng 0.000             -> 0.000
842 basx808 toEng 0.00              -> 0.00
843 basx809 toEng 0.0               -> 0.0
844 basx810 toEng  .0               -> 0.0
845 basx811 toEng 0.                -> 0
846 basx812 toEng -.0               -> -0.0
847 basx813 toEng -0.               -> -0
848 basx814 toEng -0.0              -> -0.0
849 basx815 toEng -0.00             -> -0.00
850 basx816 toEng -0.000            -> -0.000
851 basx817 toEng -0.0000           -> -0.0000
852 basx818 toEng -0.00000          -> -0.00000
853 basx819 toEng -0.000000         -> -0.000000
854 basx820 toEng -0.0000000        -> -0.0E-6
855 basx821 toEng -0.00000000       -> -0.00E-6
856 basx822 toEng -0.000000000      -> -0E-9
857
858 basx830 toEng  0.00E+0          -> 0.00
859 basx831 toEng  0.00E+1          -> 0.0
860 basx832 toEng  0.00E+2          -> 0
861 basx833 toEng  0.00E+3          -> 0.00E+3
862 basx834 toEng  0.00E+4          -> 0.0E+3
863 basx835 toEng  0.00E+5          -> 0E+3
864 basx836 toEng  0.00E+6          -> 0.00E+6
865 basx837 toEng  0.00E+7          -> 0.0E+6
866 basx838 toEng  0.00E+8          -> 0E+6
867 basx839 toEng  0.00E+9          -> 0.00E+9
868
869 basx840 toEng  0.0E+0           -> 0.0
870 basx841 toEng  0.0E+1           -> 0
871 basx842 toEng  0.0E+2           -> 0.00E+3
872 basx843 toEng  0.0E+3           -> 0.0E+3
873 basx844 toEng  0.0E+4           -> 0E+3
874 basx845 toEng  0.0E+5           -> 0.00E+6
875 basx846 toEng  0.0E+6           -> 0.0E+6
876 basx847 toEng  0.0E+7           -> 0E+6
877 basx848 toEng  0.0E+8           -> 0.00E+9
878 basx849 toEng  0.0E+9           -> 0.0E+9
879
880 basx850 toEng  0E+0             -> 0
881 basx851 toEng  0E+1             -> 0.00E+3
882 basx852 toEng  0E+2             -> 0.0E+3
883 basx853 toEng  0E+3             -> 0E+3
884 basx854 toEng  0E+4             -> 0.00E+6
885 basx855 toEng  0E+5             -> 0.0E+6
886 basx856 toEng  0E+6             -> 0E+6
887 basx857 toEng  0E+7             -> 0.00E+9
888 basx858 toEng  0E+8             -> 0.0E+9
889 basx859 toEng  0E+9             -> 0E+9
890
891 basx860 toEng  0.0E-0           -> 0.0
892 basx861 toEng  0.0E-1           -> 0.00
893 basx862 toEng  0.0E-2           -> 0.000
894 basx863 toEng  0.0E-3           -> 0.0000
895 basx864 toEng  0.0E-4           -> 0.00000
896 basx865 toEng  0.0E-5           -> 0.000000
897 basx866 toEng  0.0E-6           -> 0.0E-6
898 basx867 toEng  0.0E-7           -> 0.00E-6
899 basx868 toEng  0.0E-8           -> 0E-9
900 basx869 toEng  0.0E-9           -> 0.0E-9
901
902 basx870 toEng  0.00E-0          -> 0.00
903 basx871 toEng  0.00E-1          -> 0.000
904 basx872 toEng  0.00E-2          -> 0.0000
905 basx873 toEng  0.00E-3          -> 0.00000
906 basx874 toEng  0.00E-4          -> 0.000000
907 basx875 toEng  0.00E-5          -> 0.0E-6
908 basx876 toEng  0.00E-6          -> 0.00E-6
909 basx877 toEng  0.00E-7          -> 0E-9
910 basx878 toEng  0.00E-8          -> 0.0E-9
911 basx879 toEng  0.00E-9          -> 0.00E-9
912
913
914 rounding:  half_up
915 precision: 9
916 -- subnormals and overflows
917 basx906 toSci '99e999999999'       -> Infinity Overflow  Inexact Rounded
918 basx907 toSci '999e999999999'      -> Infinity Overflow  Inexact Rounded
919 basx908 toSci '0.9e-999999999'     -> 9E-1000000000 Subnormal
920 basx909 toSci '0.09e-999999999'    -> 9E-1000000001 Subnormal
921 basx910 toSci '0.1e1000000000'     -> 1E+999999999
922 basx911 toSci '10e-1000000000'     -> 1.0E-999999999
923 basx912 toSci '0.9e9999999999'     -> Infinity Overflow  Inexact Rounded
924 basx913 toSci '99e-9999999999'     -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
925 basx914 toSci '111e9999999999'     -> Infinity Overflow  Inexact Rounded
926 basx915 toSci '1111e-9999999999'   -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
927 basx916 toSci '1111e-99999999999'  -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
928 basx917 toSci '7e1000000000'       -> Infinity Overflow  Inexact Rounded
929 -- negatives the same
930 basx918 toSci '-99e999999999'      -> -Infinity Overflow  Inexact Rounded
931 basx919 toSci '-999e999999999'     -> -Infinity Overflow  Inexact Rounded
932 basx920 toSci '-0.9e-999999999'    -> -9E-1000000000 Subnormal
933 basx921 toSci '-0.09e-999999999'   -> -9E-1000000001 Subnormal
934 basx922 toSci '-0.1e1000000000'    -> -1E+999999999
935 basx923 toSci '-10e-1000000000'    -> -1.0E-999999999
936 basx924 toSci '-0.9e9999999999'    -> -Infinity Overflow  Inexact Rounded
937 basx925 toSci '-99e-9999999999'    -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
938 basx926 toSci '-111e9999999999'    -> -Infinity Overflow  Inexact Rounded
939 basx927 toSci '-1111e-9999999999'  -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
940 basx928 toSci '-1111e-99999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
941 basx929 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
942
943 rounding:  ceiling
944 basx930 toSci  '7e1000000000'      ->  Infinity Overflow  Inexact Rounded
945 basx931 toSci '-7e1000000000'      -> -9.99999999E+999999999 Overflow  Inexact Rounded
946 rounding:  up
947 basx932 toSci  '7e1000000000'      ->  Infinity Overflow  Inexact Rounded
948 basx933 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
949 rounding:  down
950 basx934 toSci  '7e1000000000'      ->  9.99999999E+999999999 Overflow  Inexact Rounded
951 basx935 toSci '-7e1000000000'      -> -9.99999999E+999999999 Overflow  Inexact Rounded
952 rounding:  floor
953 basx936 toSci  '7e1000000000'      ->  9.99999999E+999999999 Overflow  Inexact Rounded
954 basx937 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
955
956 rounding:  half_up
957 basx938 toSci  '7e1000000000'      ->  Infinity Overflow  Inexact Rounded
958 basx939 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
959 rounding:  half_even
960 basx940 toSci  '7e1000000000'      ->  Infinity Overflow  Inexact Rounded
961 basx941 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
962 rounding:  half_down
963 basx942 toSci  '7e1000000000'      ->  Infinity Overflow  Inexact Rounded
964 basx943 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
965
966 rounding:  half_even
967
968
969 -- Giga exponent initial tests
970 maxExponent: 999999999
971 minExponent: -999999999
972
973 basx951 toSci '99e999'          -> '9.9E+1000'
974 basx952 toSci '999e999'         -> '9.99E+1001'
975 basx953 toSci '0.9e-999'        -> '9E-1000'
976 basx954 toSci '0.09e-999'       -> '9E-1001'
977 basx955 toSci '0.1e1001'        -> '1E+1000'
978 basx956 toSci '10e-1001'        -> '1.0E-1000'
979 basx957 toSci '0.9e9999'        -> '9E+9998'
980 basx958 toSci '99e-9999'        -> '9.9E-9998'
981 basx959 toSci '111e9997'        -> '1.11E+9999'
982 basx960 toSci '1111e-9999'      -> '1.111E-9996'
983 basx961 toSci '99e9999'         -> '9.9E+10000'
984 basx962 toSci '999e9999'        -> '9.99E+10001'
985 basx963 toSci '0.9e-9999'       -> '9E-10000'
986 basx964 toSci '0.09e-9999'      -> '9E-10001'
987 basx965 toSci '0.1e10001'       -> '1E+10000'
988 basx966 toSci '10e-10001'       -> '1.0E-10000'
989 basx967 toSci '0.9e99999'       -> '9E+99998'
990 basx968 toSci '99e-99999'       -> '9.9E-99998'
991 basx969 toSci '111e99999'       -> '1.11E+100001'
992 basx970 toSci '1111e-99999'     -> '1.111E-99996'
993 basx971 toSci "0.09e999999999"  -> '9E+999999997'
994 basx972 toSci "0.9e999999999"   -> '9E+999999998'
995 basx973 toSci "9e999999999"     -> '9E+999999999'
996 basx974 toSci "9.9e999999999"   -> '9.9E+999999999'
997 basx975 toSci "9.99e999999999"  -> '9.99E+999999999'
998 basx976 toSci "9.99e-999999999" -> '9.99E-999999999'
999 basx977 toSci "9.9e-999999999"  -> '9.9E-999999999'
1000 basx978 toSci "9e-999999999"    -> '9E-999999999'
1001 basx979 toSci "99e-999999999"   -> '9.9E-999999998'
1002 basx980 toSci "999e-999999999"  -> '9.99E-999999997'
1003
1004 -- Varying exponent maximums
1005 precision: 5
1006 maxexponent: 0
1007 minexponent: 0
1008 emax001 toSci -1E+2  -> -Infinity Overflow Inexact Rounded
1009 emax002 toSci -100   -> -Infinity Overflow Inexact Rounded
1010 emax003 toSci  -10   -> -Infinity Overflow Inexact Rounded
1011 emax004 toSci   -9.9 -> -9.9
1012 emax005 toSci   -9   -> -9
1013 emax006 toSci   -1   -> -1
1014 emax007 toSci    0   ->  0
1015 emax008 toSci    1   ->  1
1016 emax009 toSci    9   ->  9
1017 emax010 toSci    9.9 ->  9.9
1018 emax011 toSci   10   ->  Infinity Overflow Inexact Rounded
1019 emax012 toSci  100   ->  Infinity Overflow Inexact Rounded
1020 emax013 toSci  1E+2  ->  Infinity Overflow Inexact Rounded
1021 emax014 toSci   0.99 ->  0.99 Subnormal
1022 emax015 toSci   0.1  ->  0.1 Subnormal
1023 emax016 toSci   0.01 ->  0.01 Subnormal
1024 emax017 toSci  1E-1  ->  0.1 Subnormal
1025 emax018 toSci  1E-2  ->  0.01 Subnormal
1026
1027 maxexponent: 1
1028 minexponent: -1
1029 emax100 toSci -1E+3  -> -Infinity Overflow Inexact Rounded
1030 emax101 toSci -1E+2  -> -Infinity Overflow Inexact Rounded
1031 emax102 toSci -100   -> -Infinity Overflow Inexact Rounded
1032 emax103 toSci  -10   -> -10
1033 emax104 toSci   -9.9 -> -9.9
1034 emax105 toSci   -9   -> -9
1035 emax106 toSci   -1   -> -1
1036 emax107 toSci    0   ->  0
1037 emax108 toSci    1   ->  1
1038 emax109 toSci    9   ->  9
1039 emax110 toSci    9.9 ->  9.9
1040 emax111 toSci   10   -> 10
1041 emax112 toSci  100   ->  Infinity Overflow Inexact Rounded
1042 emax113 toSci  1E+2  ->  Infinity Overflow Inexact Rounded
1043 emax114 toSci  1E+3  ->  Infinity Overflow Inexact Rounded
1044 emax115 toSci   0.99 ->  0.99
1045 emax116 toSci   0.1  ->  0.1
1046 emax117 toSci   0.01 ->  0.01 Subnormal
1047 emax118 toSci  1E-1  ->  0.1
1048 emax119 toSci  1E-2  ->  0.01 Subnormal
1049 emax120 toSci  1E-3  ->  0.001 Subnormal
1050 emax121 toSci  1.1E-3  ->  0.0011 Subnormal
1051 emax122 toSci  1.11E-3  ->  0.00111 Subnormal
1052 emax123 toSci  1.111E-3  ->  0.00111 Subnormal Underflow Inexact Rounded
1053 emax124 toSci  1.1111E-3  ->  0.00111 Subnormal Underflow Inexact Rounded
1054 emax125 toSci  1.11111E-3  ->  0.00111 Subnormal Underflow Inexact Rounded
1055
1056 maxexponent: 2
1057 minexponent: -2
1058 precision: 9
1059 emax200 toSci -1E+3  -> -Infinity Overflow Inexact Rounded
1060 emax201 toSci -1E+2  -> -1E+2
1061 emax202 toSci -100   -> -100
1062 emax203 toSci  -10   -> -10
1063 emax204 toSci   -9.9 -> -9.9
1064 emax205 toSci   -9   -> -9
1065 emax206 toSci   -1   -> -1
1066 emax207 toSci    0   ->  0
1067 emax208 toSci    1   ->  1
1068 emax209 toSci    9   ->  9
1069 emax210 toSci    9.9 ->  9.9
1070 emax211 toSci   10   -> 10
1071 emax212 toSci  100   -> 100
1072 emax213 toSci  1E+2  -> 1E+2
1073 emax214 toSci  1E+3  ->  Infinity Overflow Inexact Rounded
1074 emax215 toSci   0.99 ->  0.99
1075 emax216 toSci   0.1  ->  0.1
1076 emax217 toSci   0.01 ->  0.01
1077 emax218 toSci  0.001 ->  0.001 Subnormal
1078 emax219 toSci  1E-1  ->  0.1
1079 emax220 toSci  1E-2  ->  0.01
1080 emax221 toSci  1E-3  ->  0.001 Subnormal
1081 emax222 toSci  1E-4  ->  0.0001 Subnormal
1082 emax223 toSci  1E-5  ->  0.00001 Subnormal
1083 emax224 toSci  1E-6  ->  0.000001 Subnormal
1084 emax225 toSci  1E-7  ->  1E-7  Subnormal
1085 emax226 toSci  1E-8  ->  1E-8  Subnormal
1086 emax227 toSci  1E-9  ->  1E-9  Subnormal
1087 emax228 toSci  1E-10 ->  1E-10 Subnormal
1088 emax229 toSci  1E-11 ->  0E-10 Underflow Subnormal Inexact Rounded Clamped
1089 emax230 toSci  1E-12 ->  0E-10 Underflow Subnormal Inexact Rounded Clamped
1090
1091 maxexponent: 7
1092 minexponent: -7
1093 emax231 toSci  1E-8  ->  1E-8 Subnormal
1094 emax232 toSci  1E-7  ->  1E-7
1095 emax233 toSci  1E-6  ->  0.000001
1096 emax234 toSci  1E-5  ->  0.00001
1097 emax235 toSci  1E+5  ->  1E+5
1098 emax236 toSci  1E+6  ->  1E+6
1099 emax237 toSci  1E+7  ->  1E+7
1100 emax238 toSci  1E+8  ->  Infinity Overflow Inexact Rounded
1101
1102 maxexponent: 9
1103 minexponent: -9
1104 emax240 toSci  1E-21 ->  0E-17 Subnormal Underflow Inexact Rounded Clamped
1105 emax241 toSci  1E-10 ->  1E-10 Subnormal
1106 emax242 toSci  1E-9  ->  1E-9
1107 emax243 toSci  1E-8  ->  1E-8
1108 emax244 toSci  1E-7  ->  1E-7
1109 emax245 toSci  1E+7  ->  1E+7
1110 emax246 toSci  1E+8  ->  1E+8
1111 emax247 toSci  1E+9  ->  1E+9
1112 emax248 toSci  1E+10 ->  Infinity Overflow Inexact Rounded
1113
1114 maxexponent: 10  -- boundary
1115 minexponent: -10
1116 emax250 toSci  1E-21 ->  0E-18 Underflow Subnormal Inexact Rounded Clamped
1117 emax251 toSci  1E-11 ->  1E-11 Subnormal
1118 emax252 toSci  1E-10 ->  1E-10
1119 emax253 toSci  1E-9  ->  1E-9
1120 emax254 toSci  1E-8  ->  1E-8
1121 emax255 toSci  1E+8  ->  1E+8
1122 emax256 toSci  1E+9  ->  1E+9
1123 emax257 toSci  1E+10 ->  1E+10
1124 emax258 toSci  1E+11 ->  Infinity Overflow Inexact Rounded
1125
1126 emax260 toSci  1.00E-21 ->  0E-18 Underflow Subnormal Inexact Rounded Clamped
1127 emax261 toSci  1.00E-11 ->  1.00E-11 Subnormal
1128 emax262 toSci  1.00E-10 ->  1.00E-10
1129 emax263 toSci  1.00E-9  ->  1.00E-9
1130 emax264 toSci  1.00E-8  ->  1.00E-8
1131 emax265 toSci  1.00E+8  ->  1.00E+8
1132 emax266 toSci  1.00E+9  ->  1.00E+9
1133 emax267 toSci  1.00E+10 ->  1.00E+10
1134 emax268 toSci  1.00E+11 ->  Infinity Overflow Inexact Rounded
1135 emax270 toSci  9.99E-21 ->  0E-18 Underflow Subnormal Inexact Rounded Clamped
1136 emax271 toSci  9.99E-11 ->  9.99E-11 Subnormal
1137 emax272 toSci  9.99E-10 ->  9.99E-10
1138 emax273 toSci  9.99E-9  ->  9.99E-9
1139 emax274 toSci  9.99E-8  ->  9.99E-8
1140 emax275 toSci  9.99E+8  ->  9.99E+8
1141 emax276 toSci  9.99E+9  ->  9.99E+9
1142 emax277 toSci  9.99E+10 ->  9.99E+10
1143 emax278 toSci  9.99E+11 ->  Infinity Overflow Inexact Rounded
1144
1145 maxexponent: 99
1146 minexponent: -99
1147 emax280 toSci  1E-120 ->  0E-107 Underflow Subnormal Inexact Rounded Clamped
1148 emax281 toSci  1E-100 ->  1E-100 Subnormal
1149 emax282 toSci  1E-99  ->  1E-99
1150 emax283 toSci  1E-98  ->  1E-98
1151 emax284 toSci  1E+98  ->  1E+98
1152 emax285 toSci  1E+99  ->  1E+99
1153 emax286 toSci  1E+100 ->  Infinity Overflow Inexact Rounded
1154
1155 maxexponent: 999
1156 minexponent: -999
1157 emax291 toSci  1E-1000 ->  1E-1000 Subnormal
1158 emax292 toSci  1E-999  ->  1E-999
1159 emax293 toSci  1E+999  ->  1E+999
1160 emax294 toSci  1E+1000 ->  Infinity Overflow Inexact Rounded
1161 maxexponent: 9999
1162 minexponent: -9999
1163 emax301 toSci  1E-10000 ->  1E-10000 Subnormal
1164 emax302 toSci  1E-9999  ->  1E-9999
1165 emax303 toSci  1E+9999  ->  1E+9999
1166 emax304 toSci  1E+10000 ->  Infinity Overflow Inexact Rounded
1167 maxexponent: 99999
1168 minexponent: -99999
1169 emax311 toSci  1E-100000 ->  1E-100000 Subnormal
1170 emax312 toSci  1E-99999  ->  1E-99999
1171 emax313 toSci  1E+99999  ->  1E+99999
1172 emax314 toSci  1E+100000 ->  Infinity Overflow Inexact Rounded
1173 maxexponent: 999999
1174 minexponent: -999999
1175 emax321 toSci  1E-1000000 ->  1E-1000000 Subnormal
1176 emax322 toSci  1E-999999  ->  1E-999999
1177 emax323 toSci  1E+999999  ->  1E+999999
1178 emax324 toSci  1E+1000000 ->  Infinity Overflow Inexact Rounded
1179 maxexponent: 9999999
1180 minexponent: -9999999
1181 emax331 toSci  1E-10000000 ->  1E-10000000 Subnormal
1182 emax332 toSci  1E-9999999  ->  1E-9999999
1183 emax333 toSci  1E+9999999  ->  1E+9999999
1184 emax334 toSci  1E+10000000 ->  Infinity Overflow Inexact Rounded
1185 maxexponent: 99999999
1186 minexponent: -99999999
1187 emax341 toSci  1E-100000000 ->  1E-100000000 Subnormal
1188 emax342 toSci  1E-99999999  ->  1E-99999999
1189 emax343 toSci  1E+99999999  ->  1E+99999999
1190 emax344 toSci  1E+100000000 ->  Infinity Overflow Inexact Rounded
1191
1192 maxexponent: 999999999
1193 minexponent: -999999999
1194 emax347 toSci  1E-1000000008     ->  0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
1195 emax348 toSci  1E-1000000007     ->  1E-1000000007 Subnormal
1196 emax349 toSci  1E-1000000000     ->  1E-1000000000 Subnormal
1197 emax350 toSci  1E-999999999      ->  1E-999999999
1198 emax351 toSci  1E+999999999      ->  1E+999999999
1199 emax352 toSci  1E+1000000000     ->  Infinity Overflow Inexact Rounded
1200 emax353 toSci  1.000E-1000000000 ->  1.000E-1000000000 Subnormal
1201 emax354 toSci  1.000E-999999999  ->  1.000E-999999999
1202 emax355 toSci  1.000E+999999999  ->  1.000E+999999999
1203 emax356 toSci  1.000E+1000000000 ->  Infinity Overflow Inexact Rounded
1204 emax357 toSci  1.001E-1000000008 ->  0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
1205 emax358 toSci  1.001E-1000000007 ->  1E-1000000007 Subnormal Inexact Rounded Underflow
1206 emax359 toSci  1.001E-1000000000 ->  1.001E-1000000000 Subnormal
1207 emax360 toSci  1.001E-999999999  ->  1.001E-999999999
1208 emax361 toSci  1.001E+999999999  ->  1.001E+999999999
1209 emax362 toSci  1.001E+1000000000 ->  Infinity Overflow Inexact Rounded
1210 emax363 toSci  9.000E-1000000000 ->  9.000E-1000000000 Subnormal
1211 emax364 toSci  9.000E-999999999  ->  9.000E-999999999
1212 emax365 toSci  9.000E+999999999  ->  9.000E+999999999
1213 emax366 toSci  9.000E+1000000000 ->  Infinity Overflow Inexact Rounded
1214 emax367 toSci  9.999E-1000000009 ->  0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
1215 emax368 toSci  9.999E-1000000008 ->  1E-1000000007 Underflow Subnormal Inexact Rounded
1216 emax369 toSci  9.999E-1000000007 ->  1.0E-1000000006 Underflow Subnormal Inexact Rounded
1217 emax370 toSci  9.999E-1000000000 ->  9.999E-1000000000 Subnormal
1218 emax371 toSci  9.999E-999999999  ->  9.999E-999999999
1219 emax372 toSci  9.999E+999999999  ->  9.999E+999999999
1220
1221 emax373 toSci  9.999E+1000000000 ->  Infinity Overflow Inexact Rounded
1222 emax374 toSci -1E-1000000000     -> -1E-1000000000 Subnormal
1223 emax375 toSci -1E-999999999      -> -1E-999999999
1224 emax376 toSci -1E+999999999      -> -1E+999999999
1225 emax377 toSci -1E+1000000000     -> -Infinity Overflow Inexact Rounded
1226 emax378 toSci -1.000E-1000000000 -> -1.000E-1000000000 Subnormal
1227 emax379 toSci -1.000E-999999999  -> -1.000E-999999999
1228 emax380 toSci -1.000E+999999999  -> -1.000E+999999999
1229 emax381 toSci -1.000E+1000000000 -> -Infinity Overflow Inexact Rounded
1230 emax382 toSci -1.001E-1000000008 -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
1231 emax383 toSci -1.001E-999999999  -> -1.001E-999999999
1232 emax384 toSci -1.001E+999999999  -> -1.001E+999999999
1233 emax385 toSci -1.001E+1000000000 -> -Infinity Overflow Inexact Rounded
1234 emax386 toSci -9.000E-1000000123 -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped
1235 emax387 toSci -9.000E-999999999  -> -9.000E-999999999
1236 emax388 toSci -9.000E+999999999  -> -9.000E+999999999
1237 emax389 toSci -9.000E+1000000000 -> -Infinity Overflow Inexact Rounded
1238 emax390 toSci -9.999E-1000000008 -> -1E-1000000007 Underflow Subnormal Inexact Rounded
1239 emax391 toSci -9.999E-999999999  -> -9.999E-999999999
1240 emax392 toSci -9.999E+999999999  -> -9.999E+999999999
1241 emax393 toSci -9.999E+1000000000 -> -Infinity Overflow Inexact Rounded
1242
1243 -- Now check 854 rounding of subnormals and proper underflow to 0
1244 precision:   5
1245 maxExponent: 999
1246 minexponent: -999
1247 rounding:    half_even
1248
1249 emax400 toSci  1.0000E-999     -> 1.0000E-999
1250 emax401 toSci  0.1E-999        -> 1E-1000     Subnormal
1251 emax402 toSci  0.1000E-999     -> 1.000E-1000 Subnormal
1252 emax403 toSci  0.0100E-999     -> 1.00E-1001  Subnormal
1253 emax404 toSci  0.0010E-999     -> 1.0E-1002   Subnormal
1254 emax405 toSci  0.0001E-999     -> 1E-1003     Subnormal
1255 emax406 toSci  0.00010E-999    -> 1E-1003     Subnormal Rounded
1256 emax407 toSci  0.00013E-999    -> 1E-1003     Underflow Subnormal Inexact Rounded
1257 emax408 toSci  0.00015E-999    -> 2E-1003     Underflow Subnormal Inexact Rounded
1258 emax409 toSci  0.00017E-999    -> 2E-1003     Underflow Subnormal Inexact Rounded
1259 emax410 toSci  0.00023E-999    -> 2E-1003     Underflow Subnormal Inexact Rounded
1260 emax411 toSci  0.00025E-999    -> 2E-1003     Underflow Subnormal Inexact Rounded
1261 emax412 toSci  0.00027E-999    -> 3E-1003     Underflow Subnormal Inexact Rounded
1262 emax413 toSci  0.000149E-999   -> 1E-1003     Underflow Subnormal Inexact Rounded
1263 emax414 toSci  0.000150E-999   -> 2E-1003     Underflow Subnormal Inexact Rounded
1264 emax415 toSci  0.000151E-999   -> 2E-1003     Underflow Subnormal Inexact Rounded
1265 emax416 toSci  0.000249E-999   -> 2E-1003     Underflow Subnormal Inexact Rounded
1266 emax417 toSci  0.000250E-999   -> 2E-1003     Underflow Subnormal Inexact Rounded
1267 emax418 toSci  0.000251E-999   -> 3E-1003     Underflow Subnormal Inexact Rounded
1268 emax419 toSci  0.00009E-999    -> 1E-1003     Underflow Subnormal Inexact Rounded
1269 emax420 toSci  0.00005E-999    -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1270 emax421 toSci  0.00003E-999    -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1271 emax422 toSci  0.000009E-999   -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1272 emax423 toSci  0.000005E-999   -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1273 emax424 toSci  0.000003E-999   -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1274
1275 emax425 toSci  0.001049E-999   -> 1.0E-1002   Underflow Subnormal Inexact Rounded
1276 emax426 toSci  0.001050E-999   -> 1.0E-1002   Underflow Subnormal Inexact Rounded
1277 emax427 toSci  0.001051E-999   -> 1.1E-1002   Underflow Subnormal Inexact Rounded
1278 emax428 toSci  0.001149E-999   -> 1.1E-1002   Underflow Subnormal Inexact Rounded
1279 emax429 toSci  0.001150E-999   -> 1.2E-1002   Underflow Subnormal Inexact Rounded
1280 emax430 toSci  0.001151E-999   -> 1.2E-1002   Underflow Subnormal Inexact Rounded
1281
1282 emax432 toSci  0.010049E-999   -> 1.00E-1001  Underflow Subnormal Inexact Rounded
1283 emax433 toSci  0.010050E-999   -> 1.00E-1001  Underflow Subnormal Inexact Rounded
1284 emax434 toSci  0.010051E-999   -> 1.01E-1001  Underflow Subnormal Inexact Rounded
1285 emax435 toSci  0.010149E-999   -> 1.01E-1001  Underflow Subnormal Inexact Rounded
1286 emax436 toSci  0.010150E-999   -> 1.02E-1001  Underflow Subnormal Inexact Rounded
1287 emax437 toSci  0.010151E-999   -> 1.02E-1001  Underflow Subnormal Inexact Rounded
1288
1289 emax440 toSci  0.10103E-999    -> 1.010E-1000 Underflow Subnormal Inexact Rounded
1290 emax441 toSci  0.10105E-999    -> 1.010E-1000 Underflow Subnormal Inexact Rounded
1291 emax442 toSci  0.10107E-999    -> 1.011E-1000 Underflow Subnormal Inexact Rounded
1292 emax443 toSci  0.10113E-999    -> 1.011E-1000 Underflow Subnormal Inexact Rounded
1293 emax444 toSci  0.10115E-999    -> 1.012E-1000 Underflow Subnormal Inexact Rounded
1294 emax445 toSci  0.10117E-999    -> 1.012E-1000 Underflow Subnormal Inexact Rounded
1295
1296 emax450 toSci  1.10730E-1000   -> 1.107E-1000 Underflow Subnormal Inexact Rounded
1297 emax451 toSci  1.10750E-1000   -> 1.108E-1000 Underflow Subnormal Inexact Rounded
1298 emax452 toSci  1.10770E-1000   -> 1.108E-1000 Underflow Subnormal Inexact Rounded
1299 emax453 toSci  1.10830E-1000   -> 1.108E-1000 Underflow Subnormal Inexact Rounded
1300 emax454 toSci  1.10850E-1000   -> 1.108E-1000 Underflow Subnormal Inexact Rounded
1301 emax455 toSci  1.10870E-1000   -> 1.109E-1000 Underflow Subnormal Inexact Rounded
1302
1303 -- make sure sign OK
1304 emax456 toSci  -0.10103E-999   -> -1.010E-1000 Underflow Subnormal Inexact Rounded
1305 emax457 toSci  -0.10105E-999   -> -1.010E-1000 Underflow Subnormal Inexact Rounded
1306 emax458 toSci  -0.10107E-999   -> -1.011E-1000 Underflow Subnormal Inexact Rounded
1307 emax459 toSci  -0.10113E-999   -> -1.011E-1000 Underflow Subnormal Inexact Rounded
1308 emax460 toSci  -0.10115E-999   -> -1.012E-1000 Underflow Subnormal Inexact Rounded
1309 emax461 toSci  -0.10117E-999   -> -1.012E-1000 Underflow Subnormal Inexact Rounded
1310
1311 -- '999s' cases
1312 emax464 toSci  999999E-999         -> 1.0000E-993 Inexact Rounded
1313 emax465 toSci  99999.0E-999        -> 9.9999E-995 Rounded
1314 emax466 toSci  99999.E-999         -> 9.9999E-995
1315 emax467 toSci  9999.9E-999         -> 9.9999E-996
1316 emax468 toSci  999.99E-999         -> 9.9999E-997
1317 emax469 toSci  99.999E-999         -> 9.9999E-998
1318 emax470 toSci  9.9999E-999         -> 9.9999E-999
1319 emax471 toSci  0.99999E-999        -> 1.0000E-999 Underflow Subnormal Inexact Rounded
1320 emax472 toSci  0.099999E-999       -> 1.000E-1000 Underflow Subnormal Inexact Rounded
1321 emax473 toSci  0.0099999E-999      -> 1.00E-1001  Underflow Subnormal Inexact Rounded
1322 emax474 toSci  0.00099999E-999     -> 1.0E-1002   Underflow Subnormal Inexact Rounded
1323 emax475 toSci  0.000099999E-999    -> 1E-1003     Underflow Subnormal Inexact Rounded
1324 emax476 toSci  0.0000099999E-999   -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1325 emax477 toSci  0.00000099999E-999  -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1326 emax478 toSci  0.000000099999E-999 -> 0E-1003     Underflow Subnormal Inexact Rounded Clamped
1327
1328 -- Exponents with insignificant leading zeros
1329 precision:   16
1330 maxExponent: 999999999
1331 minexponent: -999999999
1332 basx1001 toSci  1e999999999 -> 1E+999999999
1333 basx1002 toSci  1e0999999999 -> 1E+999999999
1334 basx1003 toSci  1e00999999999 -> 1E+999999999
1335 basx1004 toSci  1e000999999999 -> 1E+999999999
1336 basx1005 toSci  1e000000000000999999999 -> 1E+999999999
1337 basx1006 toSci  1e000000000001000000007 -> Infinity Overflow Inexact Rounded
1338 basx1007 toSci  1e-999999999 -> 1E-999999999
1339 basx1008 toSci  1e-0999999999 -> 1E-999999999
1340 basx1009 toSci  1e-00999999999 -> 1E-999999999
1341 basx1010 toSci  1e-000999999999 -> 1E-999999999
1342 basx1011 toSci  1e-000000000000999999999 -> 1E-999999999
1343 basx1012 toSci  1e-000000000001000000007 -> 1E-1000000007 Subnormal
1344
1345 -- Edge cases for int32 exponents...
1346 basx1021 tosci 1e+2147483649 -> Infinity Overflow Inexact Rounded
1347 basx1022 tosci 1e+2147483648 -> Infinity Overflow Inexact Rounded
1348 basx1023 tosci 1e+2147483647 -> Infinity Overflow Inexact Rounded
1349 basx1024 tosci 1e-2147483647 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped
1350 basx1025 tosci 1e-2147483648 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped
1351 basx1026 tosci 1e-2147483649 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped
1352 -- same unbalanced
1353 precision:   7
1354 maxExponent: 96
1355 minexponent: -95
1356 basx1031 tosci 1e+2147483649 -> Infinity Overflow Inexact Rounded
1357 basx1032 tosci 1e+2147483648 -> Infinity Overflow Inexact Rounded
1358 basx1033 tosci 1e+2147483647 -> Infinity Overflow Inexact Rounded
1359 basx1034 tosci 1e-2147483647 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
1360 basx1035 tosci 1e-2147483648 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
1361 basx1036 tosci 1e-2147483649 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
1362
1363 -- check for double-rounded subnormals
1364 precision:   5
1365 maxexponent: 79
1366 minexponent: -79
1367 basx1041 toSci     1.52444E-80  ->  1.524E-80 Inexact Rounded Subnormal Underflow
1368 basx1042 toSci     1.52445E-80  ->  1.524E-80 Inexact Rounded Subnormal Underflow
1369 basx1043 toSci     1.52446E-80  ->  1.524E-80 Inexact Rounded Subnormal Underflow
1370
1371 -- clamped zeros [see also clamp.decTest]
1372 precision:   34
1373 maxExponent: 6144
1374 minExponent: -6143
1375
1376 basx1061 apply   0e+10000  ->  0E+6144 Clamped
1377 basx1062 apply   0e-10000  ->  0E-6176 Clamped
1378 basx1063 apply  -0e+10000  -> -0E+6144 Clamped
1379 basx1064 apply  -0e-10000  -> -0E-6176 Clamped
1380
1381 precision:   16
1382 maxExponent: 384
1383 minExponent: -383
1384
1385 basx1065 apply   0e+10000  ->  0E+384  Clamped
1386 basx1066 apply   0e-10000  ->  0E-398  Clamped
1387 basx1067 apply  -0e+10000  -> -0E+384  Clamped
1388 basx1068 apply  -0e-10000  -> -0E-398  Clamped
1389
1390 -- same with IEEE clamping
1391 clamp:       1
1392
1393 precision:   34
1394 maxExponent: 6144
1395 minExponent: -6143
1396
1397 basx1071 apply   0e+10000  ->  0E+6111 Clamped
1398 basx1072 apply   0e-10000  ->  0E-6176 Clamped
1399 basx1073 apply  -0e+10000  -> -0E+6111 Clamped
1400 basx1074 apply  -0e-10000  -> -0E-6176 Clamped
1401
1402 precision:   16
1403 maxExponent: 384
1404 minExponent: -383
1405
1406 basx1075 apply   0e+10000  ->  0E+369  Clamped
1407 basx1076 apply   0e-10000  ->  0E-398  Clamped
1408 basx1077 apply  -0e+10000  -> -0E+369  Clamped
1409 basx1078 apply  -0e-10000  -> -0E-398  Clamped
1410
1411