~ubuntu-branches/ubuntu/trusty/python3.4/trusty-proposed

« back to all changes in this revision

Viewing changes to Lib/test/decimaltestdata/dsBase.decTest

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2013-11-25 09:44:27 UTC
  • Revision ID: package-import@ubuntu.com-20131125094427-lzxj8ap5w01lmo7f
Tags: upstream-3.4~b1
ImportĀ upstreamĀ versionĀ 3.4~b1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
------------------------------------------------------------------------
 
2
-- dsBase.decTest -- base decSingle <--> 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
 
 
22
-- This file tests base conversions from string to a decimal number
 
23
-- and back to a string (in Scientific form)
 
24
 
 
25
-- Note that unlike other operations the operand is subject to rounding
 
26
-- to conform to emax and precision settings (that is, numbers will
 
27
-- conform to rules and exponent will be in permitted range).  The
 
28
-- 'left hand side', therefore, may have numbers that cannot be
 
29
-- represented in a decSingle.  Some testcases go to the limit of the
 
30
-- next-wider format, and hence these testcases may also be used to
 
31
-- test narrowing and widening operations.
 
32
 
 
33
extended:    1
 
34
clamp:       1
 
35
precision:   7
 
36
maxExponent: 96
 
37
minExponent: -95
 
38
rounding:    half_even
 
39
 
 
40
dsbas001 toSci       0 -> 0
 
41
dsbas002 toSci       1 -> 1
 
42
dsbas003 toSci     1.0 -> 1.0
 
43
dsbas004 toSci    1.00 -> 1.00
 
44
dsbas005 toSci      10 -> 10
 
45
dsbas006 toSci    1000 -> 1000
 
46
dsbas007 toSci    10.0 -> 10.0
 
47
dsbas008 toSci    10.1 -> 10.1
 
48
dsbas009 toSci    10.4 -> 10.4
 
49
dsbas010 toSci    10.5 -> 10.5
 
50
dsbas011 toSci    10.6 -> 10.6
 
51
dsbas012 toSci    10.9 -> 10.9
 
52
dsbas013 toSci    11.0 -> 11.0
 
53
dsbas014 toSci  1.234 -> 1.234
 
54
dsbas015 toSci  0.123 -> 0.123
 
55
dsbas016 toSci  0.012 -> 0.012
 
56
dsbas017 toSci  -0    -> -0
 
57
dsbas018 toSci  -0.0  -> -0.0
 
58
dsbas019 toSci -00.00 -> -0.00
 
59
 
 
60
dsbas021 toSci     -1 -> -1
 
61
dsbas022 toSci   -1.0 -> -1.0
 
62
dsbas023 toSci   -0.1 -> -0.1
 
63
dsbas024 toSci   -9.1 -> -9.1
 
64
dsbas025 toSci   -9.11 -> -9.11
 
65
dsbas026 toSci   -9.119 -> -9.119
 
66
dsbas027 toSci   -9.999 -> -9.999
 
67
 
 
68
dsbas030 toSci  '1234.567'   -> '1234.567'
 
69
dsbas031 toSci  '1234.000'   -> '1234.000'
 
70
dsbas032 toSci   '1234912'   -> '1234912'
 
71
dsbas033 toSci   '0.00001234567'   -> '0.00001234567'
 
72
dsbas034 toSci  '0.000001234567'   -> '0.000001234567'
 
73
dsbas035 toSci '0.0000001234567'   -> '1.234567E-7'
 
74
dsbas036 toSci '0.00000001234567'  -> '1.234567E-8'
 
75
 
 
76
dsbas037 toSci '0.1234564'   -> '0.1234564'
 
77
dsbas038 toSci '0.1234565'   -> '0.1234565'
 
78
 
 
79
-- test finite bounds (Negs of, then 0, Ntiny, Nmin, other, Nmax)
 
80
dsbsn001 toSci -9.999999E+96 -> -9.999999E+96
 
81
dsbsn002 toSci -1E-95 -> -1E-95
 
82
dsbsn003 toSci -1E-101 -> -1E-101 Subnormal
 
83
dsbsn004 toSci -0 -> -0
 
84
dsbsn005 toSci +0 ->  0
 
85
dsbsn006 toSci +1E-101 ->  1E-101 Subnormal
 
86
dsbsn007 toSci +1E-95 ->  1E-95
 
87
dsbsn008 toSci +9.999999E+96 ->  9.999999E+96
 
88
 
 
89
-- String [many more examples are implicitly tested elsewhere]
 
90
-- strings without E cannot generate E in result
 
91
dsbas040 toSci "12"        -> '12'
 
92
dsbas041 toSci "-76"       -> '-76'
 
93
dsbas042 toSci "12.76"     -> '12.76'
 
94
dsbas043 toSci "+12.76"    -> '12.76'
 
95
dsbas044 toSci "012.76"    -> '12.76'
 
96
dsbas045 toSci "+0.003"    -> '0.003'
 
97
dsbas046 toSci "17."       -> '17'
 
98
dsbas047 toSci ".5"        -> '0.5'
 
99
dsbas048 toSci "044"       -> '44'
 
100
dsbas049 toSci "0044"      -> '44'
 
101
dsbas050 toSci "0.0005"      -> '0.0005'
 
102
dsbas051 toSci "00.00005"    -> '0.00005'
 
103
dsbas052 toSci "0.000005"    -> '0.000005'
 
104
dsbas053 toSci "0.0000050"   -> '0.0000050'
 
105
dsbas054 toSci "0.0000005"   -> '5E-7'
 
106
dsbas055 toSci "0.00000005"  -> '5E-8'
 
107
dsbas056 toSci "12678.54" -> '12678.54'
 
108
dsbas057 toSci "2678.543" -> '2678.543'
 
109
dsbas058 toSci "345678.5" -> '345678.5'
 
110
dsbas059 toSci "0678.5432" -> '678.5432'
 
111
dsbas060 toSci "678.5432" -> '678.5432'
 
112
dsbas061 toSci "+678.5432" -> '678.5432'
 
113
dsbas062 toSci "+0678.5432" -> '678.5432'
 
114
dsbas063 toSci "+00678.5432" -> '678.5432'
 
115
dsbas064 toSci "-678.5432"  -> '-678.5432'
 
116
dsbas065 toSci "-0678.5432"  -> '-678.5432'
 
117
dsbas066 toSci "-00678.5432"  -> '-678.5432'
 
118
-- examples
 
119
dsbas067 toSci "5E-6"        -> '0.000005'
 
120
dsbas068 toSci "50E-7"       -> '0.0000050'
 
121
dsbas069 toSci "5E-7"        -> '5E-7'
 
122
 
 
123
-- [No exotics as no Unicode]
 
124
 
 
125
-- rounded with dots in all (including edge) places
 
126
dsbas071 toSci  .1234567890123456  -> 0.1234568 Inexact Rounded
 
127
dsbas072 toSci  1.234567890123456  -> 1.234568 Inexact Rounded
 
128
dsbas073 toSci  12.34567890123456  -> 12.34568 Inexact Rounded
 
129
dsbas074 toSci  123.4567890123456  -> 123.4568 Inexact Rounded
 
130
dsbas075 toSci  1234.567890123456  -> 1234.568 Inexact Rounded
 
131
dsbas076 toSci  12345.67890123456  -> 12345.68 Inexact Rounded
 
132
dsbas077 toSci  123456.7890123456  -> 123456.8 Inexact Rounded
 
133
dsbas078 toSci  1234567.890123456  -> 1234568  Inexact Rounded
 
134
dsbas079 toSci  12345678.90123456  -> 1.234568E+7 Inexact Rounded
 
135
dsbas080 toSci  123456789.0123456  -> 1.234568E+8 Inexact Rounded
 
136
dsbas081 toSci  1234567890.123456  -> 1.234568E+9 Inexact Rounded
 
137
dsbas082 toSci  12345678901.23456  -> 1.234568E+10 Inexact Rounded
 
138
dsbas083 toSci  123456789012.3456  -> 1.234568E+11 Inexact Rounded
 
139
dsbas084 toSci  1234567890123.456  -> 1.234568E+12 Inexact Rounded
 
140
dsbas085 toSci  12345678901234.56  -> 1.234568E+13 Inexact Rounded
 
141
dsbas086 toSci  123456789012345.6  -> 1.234568E+14 Inexact Rounded
 
142
dsbas087 toSci  1234567890123456.  -> 1.234568E+15 Inexact Rounded
 
143
dsbas088 toSci  1234567890123456   -> 1.234568E+15 Inexact Rounded
 
144
 
 
145
-- Numbers with E
 
146
dsbas130 toSci "0.000E-1"  -> '0.0000'
 
147
dsbas131 toSci "0.000E-2"  -> '0.00000'
 
148
dsbas132 toSci "0.000E-3"  -> '0.000000'
 
149
dsbas133 toSci "0.000E-4"  -> '0E-7'
 
150
dsbas134 toSci "0.00E-2"   -> '0.0000'
 
151
dsbas135 toSci "0.00E-3"   -> '0.00000'
 
152
dsbas136 toSci "0.00E-4"   -> '0.000000'
 
153
dsbas137 toSci "0.00E-5"   -> '0E-7'
 
154
dsbas138 toSci "+0E+9"     -> '0E+9'
 
155
dsbas139 toSci "-0E+9"     -> '-0E+9'
 
156
dsbas140 toSci "1E+9"      -> '1E+9'
 
157
dsbas141 toSci "1e+09"     -> '1E+9'
 
158
dsbas142 toSci "1E+90"     -> '1E+90'
 
159
dsbas143 toSci "+1E+009"   -> '1E+9'
 
160
dsbas144 toSci "0E+9"      -> '0E+9'
 
161
dsbas145 toSci "1E+9"      -> '1E+9'
 
162
dsbas146 toSci "1E+09"     -> '1E+9'
 
163
dsbas147 toSci "1e+90"     -> '1E+90'
 
164
dsbas148 toSci "1E+009"    -> '1E+9'
 
165
dsbas149 toSci "000E+9"    -> '0E+9'
 
166
dsbas150 toSci "1E9"       -> '1E+9'
 
167
dsbas151 toSci "1e09"      -> '1E+9'
 
168
dsbas152 toSci "1E90"      -> '1E+90'
 
169
dsbas153 toSci "1E009"     -> '1E+9'
 
170
dsbas154 toSci "0E9"       -> '0E+9'
 
171
dsbas155 toSci "0.000e+0"  -> '0.000'
 
172
dsbas156 toSci "0.000E-1"  -> '0.0000'
 
173
dsbas157 toSci "4E+9"      -> '4E+9'
 
174
dsbas158 toSci "44E+9"     -> '4.4E+10'
 
175
dsbas159 toSci "0.73e-7"   -> '7.3E-8'
 
176
dsbas160 toSci "00E+9"     -> '0E+9'
 
177
dsbas161 toSci "00E-9"     -> '0E-9'
 
178
dsbas162 toSci "10E+9"     -> '1.0E+10'
 
179
dsbas163 toSci "10E+09"    -> '1.0E+10'
 
180
dsbas164 toSci "10e+90"    -> '1.0E+91'
 
181
dsbas165 toSci "10E+009"   -> '1.0E+10'
 
182
dsbas166 toSci "100e+9"    -> '1.00E+11'
 
183
dsbas167 toSci "100e+09"   -> '1.00E+11'
 
184
dsbas168 toSci "100E+90"   -> '1.00E+92'
 
185
dsbas169 toSci "100e+009"  -> '1.00E+11'
 
186
 
 
187
dsbas170 toSci "1.265"     -> '1.265'
 
188
dsbas171 toSci "1.265E-20" -> '1.265E-20'
 
189
dsbas172 toSci "1.265E-8"  -> '1.265E-8'
 
190
dsbas173 toSci "1.265E-4"  -> '0.0001265'
 
191
dsbas174 toSci "1.265E-3"  -> '0.001265'
 
192
dsbas175 toSci "1.265E-2"  -> '0.01265'
 
193
dsbas176 toSci "1.265E-1"  -> '0.1265'
 
194
dsbas177 toSci "1.265E-0"  -> '1.265'
 
195
dsbas178 toSci "1.265E+1"  -> '12.65'
 
196
dsbas179 toSci "1.265E+2"  -> '126.5'
 
197
dsbas180 toSci "1.265E+3"  -> '1265'
 
198
dsbas181 toSci "1.265E+4"  -> '1.265E+4'
 
199
dsbas182 toSci "1.265E+8"  -> '1.265E+8'
 
200
dsbas183 toSci "1.265E+20" -> '1.265E+20'
 
201
 
 
202
dsbas190 toSci "12.65"     -> '12.65'
 
203
dsbas191 toSci "12.65E-20" -> '1.265E-19'
 
204
dsbas192 toSci "12.65E-8"  -> '1.265E-7'
 
205
dsbas193 toSci "12.65E-4"  -> '0.001265'
 
206
dsbas194 toSci "12.65E-3"  -> '0.01265'
 
207
dsbas195 toSci "12.65E-2"  -> '0.1265'
 
208
dsbas196 toSci "12.65E-1"  -> '1.265'
 
209
dsbas197 toSci "12.65E-0"  -> '12.65'
 
210
dsbas198 toSci "12.65E+1"  -> '126.5'
 
211
dsbas199 toSci "12.65E+2"  -> '1265'
 
212
dsbas200 toSci "12.65E+3"  -> '1.265E+4'
 
213
dsbas201 toSci "12.65E+4"  -> '1.265E+5'
 
214
dsbas202 toSci "12.65E+8"  -> '1.265E+9'
 
215
dsbas203 toSci "12.65E+20" -> '1.265E+21'
 
216
 
 
217
dsbas210 toSci "126.5"     -> '126.5'
 
218
dsbas211 toSci "126.5E-20" -> '1.265E-18'
 
219
dsbas212 toSci "126.5E-8"  -> '0.000001265'
 
220
dsbas213 toSci "126.5E-4"  -> '0.01265'
 
221
dsbas214 toSci "126.5E-3"  -> '0.1265'
 
222
dsbas215 toSci "126.5E-2"  -> '1.265'
 
223
dsbas216 toSci "126.5E-1"  -> '12.65'
 
224
dsbas217 toSci "126.5E-0"  -> '126.5'
 
225
dsbas218 toSci "126.5E+1"  -> '1265'
 
226
dsbas219 toSci "126.5E+2"  -> '1.265E+4'
 
227
dsbas220 toSci "126.5E+3"  -> '1.265E+5'
 
228
dsbas221 toSci "126.5E+4"  -> '1.265E+6'
 
229
dsbas222 toSci "126.5E+8"  -> '1.265E+10'
 
230
dsbas223 toSci "126.5E+20" -> '1.265E+22'
 
231
 
 
232
dsbas230 toSci "1265"     -> '1265'
 
233
dsbas231 toSci "1265E-20" -> '1.265E-17'
 
234
dsbas232 toSci "1265E-8"  -> '0.00001265'
 
235
dsbas233 toSci "1265E-4"  -> '0.1265'
 
236
dsbas234 toSci "1265E-3"  -> '1.265'
 
237
dsbas235 toSci "1265E-2"  -> '12.65'
 
238
dsbas236 toSci "1265E-1"  -> '126.5'
 
239
dsbas237 toSci "1265E-0"  -> '1265'
 
240
dsbas238 toSci "1265E+1"  -> '1.265E+4'
 
241
dsbas239 toSci "1265E+2"  -> '1.265E+5'
 
242
dsbas240 toSci "1265E+3"  -> '1.265E+6'
 
243
dsbas241 toSci "1265E+4"  -> '1.265E+7'
 
244
dsbas242 toSci "1265E+8"  -> '1.265E+11'
 
245
dsbas243 toSci "1265E+20" -> '1.265E+23'
 
246
 
 
247
dsbas250 toSci "0.1265"     -> '0.1265'
 
248
dsbas251 toSci "0.1265E-20" -> '1.265E-21'
 
249
dsbas252 toSci "0.1265E-8"  -> '1.265E-9'
 
250
dsbas253 toSci "0.1265E-4"  -> '0.00001265'
 
251
dsbas254 toSci "0.1265E-3"  -> '0.0001265'
 
252
dsbas255 toSci "0.1265E-2"  -> '0.001265'
 
253
dsbas256 toSci "0.1265E-1"  -> '0.01265'
 
254
dsbas257 toSci "0.1265E-0"  -> '0.1265'
 
255
dsbas258 toSci "0.1265E+1"  -> '1.265'
 
256
dsbas259 toSci "0.1265E+2"  -> '12.65'
 
257
dsbas260 toSci "0.1265E+3"  -> '126.5'
 
258
dsbas261 toSci "0.1265E+4"  -> '1265'
 
259
dsbas262 toSci "0.1265E+8"  -> '1.265E+7'
 
260
dsbas263 toSci "0.1265E+20" -> '1.265E+19'
 
261
 
 
262
-- some more negative zeros [systematic tests below]
 
263
dsbas290 toSci "-0.000E-1"  -> '-0.0000'
 
264
dsbas291 toSci "-0.000E-2"  -> '-0.00000'
 
265
dsbas292 toSci "-0.000E-3"  -> '-0.000000'
 
266
dsbas293 toSci "-0.000E-4"  -> '-0E-7'
 
267
dsbas294 toSci "-0.00E-2"   -> '-0.0000'
 
268
dsbas295 toSci "-0.00E-3"   -> '-0.00000'
 
269
dsbas296 toSci "-0.0E-2"    -> '-0.000'
 
270
dsbas297 toSci "-0.0E-3"    -> '-0.0000'
 
271
dsbas298 toSci "-0E-2"      -> '-0.00'
 
272
dsbas299 toSci "-0E-3"      -> '-0.000'
 
273
 
 
274
-- Engineering notation tests
 
275
dsbas301  toSci 10e12  -> 1.0E+13
 
276
dsbas302  toEng 10e12  -> 10E+12
 
277
dsbas303  toSci 10e11  -> 1.0E+12
 
278
dsbas304  toEng 10e11  -> 1.0E+12
 
279
dsbas305  toSci 10e10  -> 1.0E+11
 
280
dsbas306  toEng 10e10  -> 100E+9
 
281
dsbas307  toSci 10e9   -> 1.0E+10
 
282
dsbas308  toEng 10e9   -> 10E+9
 
283
dsbas309  toSci 10e8   -> 1.0E+9
 
284
dsbas310  toEng 10e8   -> 1.0E+9
 
285
dsbas311  toSci 10e7   -> 1.0E+8
 
286
dsbas312  toEng 10e7   -> 100E+6
 
287
dsbas313  toSci 10e6   -> 1.0E+7
 
288
dsbas314  toEng 10e6   -> 10E+6
 
289
dsbas315  toSci 10e5   -> 1.0E+6
 
290
dsbas316  toEng 10e5   -> 1.0E+6
 
291
dsbas317  toSci 10e4   -> 1.0E+5
 
292
dsbas318  toEng 10e4   -> 100E+3
 
293
dsbas319  toSci 10e3   -> 1.0E+4
 
294
dsbas320  toEng 10e3   -> 10E+3
 
295
dsbas321  toSci 10e2   -> 1.0E+3
 
296
dsbas322  toEng 10e2   -> 1.0E+3
 
297
dsbas323  toSci 10e1   -> 1.0E+2
 
298
dsbas324  toEng 10e1   -> 100
 
299
dsbas325  toSci 10e0   -> 10
 
300
dsbas326  toEng 10e0   -> 10
 
301
dsbas327  toSci 10e-1  -> 1.0
 
302
dsbas328  toEng 10e-1  -> 1.0
 
303
dsbas329  toSci 10e-2  -> 0.10
 
304
dsbas330  toEng 10e-2  -> 0.10
 
305
dsbas331  toSci 10e-3  -> 0.010
 
306
dsbas332  toEng 10e-3  -> 0.010
 
307
dsbas333  toSci 10e-4  -> 0.0010
 
308
dsbas334  toEng 10e-4  -> 0.0010
 
309
dsbas335  toSci 10e-5  -> 0.00010
 
310
dsbas336  toEng 10e-5  -> 0.00010
 
311
dsbas337  toSci 10e-6  -> 0.000010
 
312
dsbas338  toEng 10e-6  -> 0.000010
 
313
dsbas339  toSci 10e-7  -> 0.0000010
 
314
dsbas340  toEng 10e-7  -> 0.0000010
 
315
dsbas341  toSci 10e-8  -> 1.0E-7
 
316
dsbas342  toEng 10e-8  -> 100E-9
 
317
dsbas343  toSci 10e-9  -> 1.0E-8
 
318
dsbas344  toEng 10e-9  -> 10E-9
 
319
dsbas345  toSci 10e-10 -> 1.0E-9
 
320
dsbas346  toEng 10e-10 -> 1.0E-9
 
321
dsbas347  toSci 10e-11 -> 1.0E-10
 
322
dsbas348  toEng 10e-11 -> 100E-12
 
323
dsbas349  toSci 10e-12 -> 1.0E-11
 
324
dsbas350  toEng 10e-12 -> 10E-12
 
325
dsbas351  toSci 10e-13 -> 1.0E-12
 
326
dsbas352  toEng 10e-13 -> 1.0E-12
 
327
 
 
328
dsbas361  toSci 7E12  -> 7E+12
 
329
dsbas362  toEng 7E12  -> 7E+12
 
330
dsbas363  toSci 7E11  -> 7E+11
 
331
dsbas364  toEng 7E11  -> 700E+9
 
332
dsbas365  toSci 7E10  -> 7E+10
 
333
dsbas366  toEng 7E10  -> 70E+9
 
334
dsbas367  toSci 7E9   -> 7E+9
 
335
dsbas368  toEng 7E9   -> 7E+9
 
336
dsbas369  toSci 7E8   -> 7E+8
 
337
dsbas370  toEng 7E8   -> 700E+6
 
338
dsbas371  toSci 7E7   -> 7E+7
 
339
dsbas372  toEng 7E7   -> 70E+6
 
340
dsbas373  toSci 7E6   -> 7E+6
 
341
dsbas374  toEng 7E6   -> 7E+6
 
342
dsbas375  toSci 7E5   -> 7E+5
 
343
dsbas376  toEng 7E5   -> 700E+3
 
344
dsbas377  toSci 7E4   -> 7E+4
 
345
dsbas378  toEng 7E4   -> 70E+3
 
346
dsbas379  toSci 7E3   -> 7E+3
 
347
dsbas380  toEng 7E3   -> 7E+3
 
348
dsbas381  toSci 7E2   -> 7E+2
 
349
dsbas382  toEng 7E2   -> 700
 
350
dsbas383  toSci 7E1   -> 7E+1
 
351
dsbas384  toEng 7E1   -> 70
 
352
dsbas385  toSci 7E0   -> 7
 
353
dsbas386  toEng 7E0   -> 7
 
354
dsbas387  toSci 7E-1  -> 0.7
 
355
dsbas388  toEng 7E-1  -> 0.7
 
356
dsbas389  toSci 7E-2  -> 0.07
 
357
dsbas390  toEng 7E-2  -> 0.07
 
358
dsbas391  toSci 7E-3  -> 0.007
 
359
dsbas392  toEng 7E-3  -> 0.007
 
360
dsbas393  toSci 7E-4  -> 0.0007
 
361
dsbas394  toEng 7E-4  -> 0.0007
 
362
dsbas395  toSci 7E-5  -> 0.00007
 
363
dsbas396  toEng 7E-5  -> 0.00007
 
364
dsbas397  toSci 7E-6  -> 0.000007
 
365
dsbas398  toEng 7E-6  -> 0.000007
 
366
dsbas399  toSci 7E-7  -> 7E-7
 
367
dsbas400  toEng 7E-7  -> 700E-9
 
368
dsbas401  toSci 7E-8  -> 7E-8
 
369
dsbas402  toEng 7E-8  -> 70E-9
 
370
dsbas403  toSci 7E-9  -> 7E-9
 
371
dsbas404  toEng 7E-9  -> 7E-9
 
372
dsbas405  toSci 7E-10 -> 7E-10
 
373
dsbas406  toEng 7E-10 -> 700E-12
 
374
dsbas407  toSci 7E-11 -> 7E-11
 
375
dsbas408  toEng 7E-11 -> 70E-12
 
376
dsbas409  toSci 7E-12 -> 7E-12
 
377
dsbas410  toEng 7E-12 -> 7E-12
 
378
dsbas411  toSci 7E-13 -> 7E-13
 
379
dsbas412  toEng 7E-13 -> 700E-15
 
380
 
 
381
-- Exacts remain exact up to precision ..
 
382
dsbas420  toSci    100 -> 100
 
383
dsbas422  toSci   1000 -> 1000
 
384
dsbas424  toSci  999.9 ->  999.9
 
385
dsbas426  toSci 1000.0 -> 1000.0
 
386
dsbas428  toSci 1000.1 -> 1000.1
 
387
dsbas430  toSci 10000 -> 10000
 
388
dsbas432  toSci 1000        -> 1000
 
389
dsbas434  toSci 10000       -> 10000
 
390
dsbas436  toSci 100000      -> 100000
 
391
dsbas438  toSci 1000000     -> 1000000
 
392
dsbas440  toSci 10000000    -> 1.000000E+7   Rounded
 
393
dsbas442  toSci 10000000    -> 1.000000E+7   Rounded
 
394
dsbas444  toSci 10000003    -> 1.000000E+7   Rounded Inexact
 
395
dsbas446  toSci 10000005    -> 1.000000E+7   Rounded Inexact
 
396
dsbas448  toSci 100000050   -> 1.000000E+8   Rounded Inexact
 
397
dsbas450  toSci 10000009    -> 1.000001E+7   Rounded Inexact
 
398
dsbas452  toSci 100000000   -> 1.000000E+8   Rounded
 
399
dsbas454  toSci 100000003   -> 1.000000E+8   Rounded Inexact
 
400
dsbas456  toSci 100000005   -> 1.000000E+8   Rounded Inexact
 
401
dsbas458  toSci 100000009   -> 1.000000E+8   Rounded Inexact
 
402
dsbas460  toSci 1000000000  -> 1.000000E+9   Rounded
 
403
dsbas462  toSci 1000000300  -> 1.000000E+9   Rounded Inexact
 
404
dsbas464  toSci 1000000500  -> 1.000000E+9   Rounded Inexact
 
405
dsbas466  toSci 1000000900  -> 1.000001E+9   Rounded Inexact
 
406
dsbas468  toSci 10000000000 -> 1.000000E+10  Rounded
 
407
dsbas470  toSci 10000003000 -> 1.000000E+10  Rounded Inexact
 
408
dsbas472  toSci 10000005000 -> 1.000000E+10  Rounded Inexact
 
409
dsbas474  toSci 10000009000 -> 1.000001E+10  Rounded Inexact
 
410
 
 
411
-- check rounding modes heeded
 
412
rounding:  ceiling
 
413
dsbsr401  toSci  1.1123450    ->  1.112345  Rounded
 
414
dsbsr402  toSci  1.11234549   ->  1.112346  Rounded Inexact
 
415
dsbsr403  toSci  1.11234550   ->  1.112346  Rounded Inexact
 
416
dsbsr404  toSci  1.11234551   ->  1.112346  Rounded Inexact
 
417
rounding:  up
 
418
dsbsr405  toSci  1.1123450    ->  1.112345  Rounded
 
419
dsbsr406  toSci  1.11234549   ->  1.112346  Rounded Inexact
 
420
dsbsr407  toSci  1.11234550   ->  1.112346  Rounded Inexact
 
421
dsbsr408  toSci  1.11234551   ->  1.112346  Rounded Inexact
 
422
rounding:  floor
 
423
dsbsr410  toSci  1.1123450    ->  1.112345  Rounded
 
424
dsbsr411  toSci  1.11234549   ->  1.112345  Rounded Inexact
 
425
dsbsr412  toSci  1.11234550   ->  1.112345  Rounded Inexact
 
426
dsbsr413  toSci  1.11234551   ->  1.112345  Rounded Inexact
 
427
rounding:  half_down
 
428
dsbsr415  toSci  1.1123450    ->  1.112345  Rounded
 
429
dsbsr416  toSci  1.11234549   ->  1.112345  Rounded Inexact
 
430
dsbsr417  toSci  1.11234550   ->  1.112345  Rounded Inexact
 
431
dsbsr418  toSci  1.11234650   ->  1.112346  Rounded Inexact
 
432
dsbsr419  toSci  1.11234551   ->  1.112346  Rounded Inexact
 
433
rounding:  half_even
 
434
dsbsr421  toSci  1.1123450    ->  1.112345  Rounded
 
435
dsbsr422  toSci  1.11234549   ->  1.112345  Rounded Inexact
 
436
dsbsr423  toSci  1.11234550   ->  1.112346  Rounded Inexact
 
437
dsbsr424  toSci  1.11234650   ->  1.112346  Rounded Inexact
 
438
dsbsr425  toSci  1.11234551   ->  1.112346  Rounded Inexact
 
439
rounding:  down
 
440
dsbsr426  toSci  1.1123450    ->  1.112345  Rounded
 
441
dsbsr427  toSci  1.11234549   ->  1.112345  Rounded Inexact
 
442
dsbsr428  toSci  1.11234550   ->  1.112345  Rounded Inexact
 
443
dsbsr429  toSci  1.11234551   ->  1.112345  Rounded Inexact
 
444
rounding:  half_up
 
445
dsbsr431  toSci  1.1123450    ->  1.112345  Rounded
 
446
dsbsr432  toSci  1.11234549   ->  1.112345  Rounded Inexact
 
447
dsbsr433  toSci  1.11234550   ->  1.112346  Rounded Inexact
 
448
dsbsr434  toSci  1.11234650   ->  1.112347  Rounded Inexact
 
449
dsbsr435  toSci  1.11234551   ->  1.112346  Rounded Inexact
 
450
-- negatives
 
451
rounding:  ceiling
 
452
dsbsr501  toSci -1.1123450    -> -1.112345  Rounded
 
453
dsbsr502  toSci -1.11234549   -> -1.112345  Rounded Inexact
 
454
dsbsr503  toSci -1.11234550   -> -1.112345  Rounded Inexact
 
455
dsbsr504  toSci -1.11234551   -> -1.112345  Rounded Inexact
 
456
rounding:  up
 
457
dsbsr505  toSci -1.1123450    -> -1.112345  Rounded
 
458
dsbsr506  toSci -1.11234549   -> -1.112346  Rounded Inexact
 
459
dsbsr507  toSci -1.11234550   -> -1.112346  Rounded Inexact
 
460
dsbsr508  toSci -1.11234551   -> -1.112346  Rounded Inexact
 
461
rounding:  floor
 
462
dsbsr510  toSci -1.1123450    -> -1.112345  Rounded
 
463
dsbsr511  toSci -1.11234549   -> -1.112346  Rounded Inexact
 
464
dsbsr512  toSci -1.11234550   -> -1.112346  Rounded Inexact
 
465
dsbsr513  toSci -1.11234551   -> -1.112346  Rounded Inexact
 
466
rounding:  half_down
 
467
dsbsr515  toSci -1.1123450    -> -1.112345  Rounded
 
468
dsbsr516  toSci -1.11234549   -> -1.112345  Rounded Inexact
 
469
dsbsr517  toSci -1.11234550   -> -1.112345  Rounded Inexact
 
470
dsbsr518  toSci -1.11234650   -> -1.112346  Rounded Inexact
 
471
dsbsr519  toSci -1.11234551   -> -1.112346  Rounded Inexact
 
472
rounding:  half_even
 
473
dsbsr521  toSci -1.1123450    -> -1.112345  Rounded
 
474
dsbsr522  toSci -1.11234549   -> -1.112345  Rounded Inexact
 
475
dsbsr523  toSci -1.11234550   -> -1.112346  Rounded Inexact
 
476
dsbsr524  toSci -1.11234650   -> -1.112346  Rounded Inexact
 
477
dsbsr525  toSci -1.11234551   -> -1.112346  Rounded Inexact
 
478
rounding:  down
 
479
dsbsr526  toSci -1.1123450    -> -1.112345  Rounded
 
480
dsbsr527  toSci -1.11234549   -> -1.112345  Rounded Inexact
 
481
dsbsr528  toSci -1.11234550   -> -1.112345  Rounded Inexact
 
482
dsbsr529  toSci -1.11234551   -> -1.112345  Rounded Inexact
 
483
rounding:  half_up
 
484
dsbsr531  toSci -1.1123450    -> -1.112345  Rounded
 
485
dsbsr532  toSci -1.11234549   -> -1.112345  Rounded Inexact
 
486
dsbsr533  toSci -1.11234550   -> -1.112346  Rounded Inexact
 
487
dsbsr534  toSci -1.11234650   -> -1.112347  Rounded Inexact
 
488
dsbsr535  toSci -1.11234551   -> -1.112346  Rounded Inexact
 
489
 
 
490
rounding:    half_even
 
491
 
 
492
-- The 'baddies' tests from DiagBigDecimal, plus some new ones
 
493
dsbas500 toSci '1..2'            -> NaN Conversion_syntax
 
494
dsbas501 toSci '.'               -> NaN Conversion_syntax
 
495
dsbas502 toSci '..'              -> NaN Conversion_syntax
 
496
dsbas503 toSci '++1'             -> NaN Conversion_syntax
 
497
dsbas504 toSci '--1'             -> NaN Conversion_syntax
 
498
dsbas505 toSci '-+1'             -> NaN Conversion_syntax
 
499
dsbas506 toSci '+-1'             -> NaN Conversion_syntax
 
500
dsbas507 toSci '12e'             -> NaN Conversion_syntax
 
501
dsbas508 toSci '12e++'           -> NaN Conversion_syntax
 
502
dsbas509 toSci '12f4'            -> NaN Conversion_syntax
 
503
dsbas510 toSci ' +1'             -> NaN Conversion_syntax
 
504
dsbas511 toSci '+ 1'             -> NaN Conversion_syntax
 
505
dsbas512 toSci '12 '             -> NaN Conversion_syntax
 
506
dsbas513 toSci ' + 1'            -> NaN Conversion_syntax
 
507
dsbas514 toSci ' - 1 '           -> NaN Conversion_syntax
 
508
dsbas515 toSci 'x'               -> NaN Conversion_syntax
 
509
dsbas516 toSci '-1-'             -> NaN Conversion_syntax
 
510
dsbas517 toSci '12-'             -> NaN Conversion_syntax
 
511
dsbas518 toSci '3+'              -> NaN Conversion_syntax
 
512
dsbas519 toSci ''                -> NaN Conversion_syntax
 
513
dsbas520 toSci '1e-'             -> NaN Conversion_syntax
 
514
dsbas521 toSci '7e99999a'        -> NaN Conversion_syntax
 
515
dsbas522 toSci '7e123567890x'    -> NaN Conversion_syntax
 
516
dsbas523 toSci '7e12356789012x'  -> NaN Conversion_syntax
 
517
dsbas524 toSci ''                -> NaN Conversion_syntax
 
518
dsbas525 toSci 'e100'            -> NaN Conversion_syntax
 
519
dsbas526 toSci '\u0e5a'          -> NaN Conversion_syntax
 
520
dsbas527 toSci '\u0b65'          -> NaN Conversion_syntax
 
521
dsbas528 toSci '123,65'          -> NaN Conversion_syntax
 
522
dsbas529 toSci '1.34.5'          -> NaN Conversion_syntax
 
523
dsbas530 toSci '.123.5'          -> NaN Conversion_syntax
 
524
dsbas531 toSci '01.35.'          -> NaN Conversion_syntax
 
525
dsbas532 toSci '01.35-'          -> NaN Conversion_syntax
 
526
dsbas533 toSci '0000..'          -> NaN Conversion_syntax
 
527
dsbas534 toSci '.0000.'          -> NaN Conversion_syntax
 
528
dsbas535 toSci '00..00'          -> NaN Conversion_syntax
 
529
dsbas536 toSci '111e*123'        -> NaN Conversion_syntax
 
530
dsbas537 toSci '111e123-'        -> NaN Conversion_syntax
 
531
dsbas538 toSci '111e+12+'        -> NaN Conversion_syntax
 
532
dsbas539 toSci '111e1-3-'        -> NaN Conversion_syntax
 
533
dsbas540 toSci '111e1*23'        -> NaN Conversion_syntax
 
534
dsbas541 toSci '111e1e+3'        -> NaN Conversion_syntax
 
535
dsbas542 toSci '1e1.0'           -> NaN Conversion_syntax
 
536
dsbas543 toSci '1e123e'          -> NaN Conversion_syntax
 
537
dsbas544 toSci 'ten'             -> NaN Conversion_syntax
 
538
dsbas545 toSci 'ONE'             -> NaN Conversion_syntax
 
539
dsbas546 toSci '1e.1'            -> NaN Conversion_syntax
 
540
dsbas547 toSci '1e1.'            -> NaN Conversion_syntax
 
541
dsbas548 toSci '1ee'             -> NaN Conversion_syntax
 
542
dsbas549 toSci 'e+1'             -> NaN Conversion_syntax
 
543
dsbas550 toSci '1.23.4'          -> NaN Conversion_syntax
 
544
dsbas551 toSci '1.2.1'           -> NaN Conversion_syntax
 
545
dsbas552 toSci '1E+1.2'          -> NaN Conversion_syntax
 
546
dsbas553 toSci '1E+1.2.3'        -> NaN Conversion_syntax
 
547
dsbas554 toSci '1E++1'           -> NaN Conversion_syntax
 
548
dsbas555 toSci '1E--1'           -> NaN Conversion_syntax
 
549
dsbas556 toSci '1E+-1'           -> NaN Conversion_syntax
 
550
dsbas557 toSci '1E-+1'           -> NaN Conversion_syntax
 
551
dsbas558 toSci '1E''1'           -> NaN Conversion_syntax
 
552
dsbas559 toSci "1E""1"           -> NaN Conversion_syntax
 
553
dsbas560 toSci "1E"""""          -> NaN Conversion_syntax
 
554
-- Near-specials
 
555
dsbas561 toSci "qNaN"            -> NaN Conversion_syntax
 
556
dsbas562 toSci "NaNq"            -> NaN Conversion_syntax
 
557
dsbas563 toSci "NaNs"            -> NaN Conversion_syntax
 
558
dsbas564 toSci "Infi"            -> NaN Conversion_syntax
 
559
dsbas565 toSci "Infin"           -> NaN Conversion_syntax
 
560
dsbas566 toSci "Infini"          -> NaN Conversion_syntax
 
561
dsbas567 toSci "Infinit"         -> NaN Conversion_syntax
 
562
dsbas568 toSci "-Infinit"        -> NaN Conversion_syntax
 
563
dsbas569 toSci "0Inf"            -> NaN Conversion_syntax
 
564
dsbas570 toSci "9Inf"            -> NaN Conversion_syntax
 
565
dsbas571 toSci "-0Inf"           -> NaN Conversion_syntax
 
566
dsbas572 toSci "-9Inf"           -> NaN Conversion_syntax
 
567
dsbas573 toSci "-sNa"            -> NaN Conversion_syntax
 
568
dsbas574 toSci "xNaN"            -> NaN Conversion_syntax
 
569
dsbas575 toSci "0sNaN"           -> NaN Conversion_syntax
 
570
 
 
571
-- some baddies with dots and Es and dots and specials
 
572
dsbas576 toSci  'e+1'            ->  NaN Conversion_syntax
 
573
dsbas577 toSci  '.e+1'           ->  NaN Conversion_syntax
 
574
dsbas578 toSci  '+.e+1'          ->  NaN Conversion_syntax
 
575
dsbas579 toSci  '-.e+'           ->  NaN Conversion_syntax
 
576
dsbas580 toSci  '-.e'            ->  NaN Conversion_syntax
 
577
dsbas581 toSci  'E+1'            ->  NaN Conversion_syntax
 
578
dsbas582 toSci  '.E+1'           ->  NaN Conversion_syntax
 
579
dsbas583 toSci  '+.E+1'          ->  NaN Conversion_syntax
 
580
dsbas584 toSci  '-.E+'           ->  NaN Conversion_syntax
 
581
dsbas585 toSci  '-.E'            ->  NaN Conversion_syntax
 
582
 
 
583
dsbas586 toSci  '.NaN'           ->  NaN Conversion_syntax
 
584
dsbas587 toSci  '-.NaN'          ->  NaN Conversion_syntax
 
585
dsbas588 toSci  '+.sNaN'         ->  NaN Conversion_syntax
 
586
dsbas589 toSci  '+.Inf'          ->  NaN Conversion_syntax
 
587
dsbas590 toSci  '.Infinity'      ->  NaN Conversion_syntax
 
588
 
 
589
-- Zeros
 
590
dsbas601 toSci 0.000000000       -> 0E-9
 
591
dsbas602 toSci 0.00000000        -> 0E-8
 
592
dsbas603 toSci 0.0000000         -> 0E-7
 
593
dsbas604 toSci 0.000000          -> 0.000000
 
594
dsbas605 toSci 0.00000           -> 0.00000
 
595
dsbas606 toSci 0.0000            -> 0.0000
 
596
dsbas607 toSci 0.000             -> 0.000
 
597
dsbas608 toSci 0.00              -> 0.00
 
598
dsbas609 toSci 0.0               -> 0.0
 
599
dsbas610 toSci  .0               -> 0.0
 
600
dsbas611 toSci 0.                -> 0
 
601
dsbas612 toSci -.0               -> -0.0
 
602
dsbas613 toSci -0.               -> -0
 
603
dsbas614 toSci -0.0              -> -0.0
 
604
dsbas615 toSci -0.00             -> -0.00
 
605
dsbas616 toSci -0.000            -> -0.000
 
606
dsbas617 toSci -0.0000           -> -0.0000
 
607
dsbas618 toSci -0.00000          -> -0.00000
 
608
dsbas619 toSci -0.000000         -> -0.000000
 
609
dsbas620 toSci -0.0000000        -> -0E-7
 
610
dsbas621 toSci -0.00000000       -> -0E-8
 
611
dsbas622 toSci -0.000000000      -> -0E-9
 
612
 
 
613
dsbas630 toSci  0.00E+0          -> 0.00
 
614
dsbas631 toSci  0.00E+1          -> 0.0
 
615
dsbas632 toSci  0.00E+2          -> 0
 
616
dsbas633 toSci  0.00E+3          -> 0E+1
 
617
dsbas634 toSci  0.00E+4          -> 0E+2
 
618
dsbas635 toSci  0.00E+5          -> 0E+3
 
619
dsbas636 toSci  0.00E+6          -> 0E+4
 
620
dsbas637 toSci  0.00E+7          -> 0E+5
 
621
dsbas638 toSci  0.00E+8          -> 0E+6
 
622
dsbas639 toSci  0.00E+9          -> 0E+7
 
623
 
 
624
dsbas640 toSci  0.0E+0           -> 0.0
 
625
dsbas641 toSci  0.0E+1           -> 0
 
626
dsbas642 toSci  0.0E+2           -> 0E+1
 
627
dsbas643 toSci  0.0E+3           -> 0E+2
 
628
dsbas644 toSci  0.0E+4           -> 0E+3
 
629
dsbas645 toSci  0.0E+5           -> 0E+4
 
630
dsbas646 toSci  0.0E+6           -> 0E+5
 
631
dsbas647 toSci  0.0E+7           -> 0E+6
 
632
dsbas648 toSci  0.0E+8           -> 0E+7
 
633
dsbas649 toSci  0.0E+9           -> 0E+8
 
634
 
 
635
dsbas650 toSci  0E+0             -> 0
 
636
dsbas651 toSci  0E+1             -> 0E+1
 
637
dsbas652 toSci  0E+2             -> 0E+2
 
638
dsbas653 toSci  0E+3             -> 0E+3
 
639
dsbas654 toSci  0E+4             -> 0E+4
 
640
dsbas655 toSci  0E+5             -> 0E+5
 
641
dsbas656 toSci  0E+6             -> 0E+6
 
642
dsbas657 toSci  0E+7             -> 0E+7
 
643
dsbas658 toSci  0E+8             -> 0E+8
 
644
dsbas659 toSci  0E+9             -> 0E+9
 
645
 
 
646
dsbas660 toSci  0.0E-0           -> 0.0
 
647
dsbas661 toSci  0.0E-1           -> 0.00
 
648
dsbas662 toSci  0.0E-2           -> 0.000
 
649
dsbas663 toSci  0.0E-3           -> 0.0000
 
650
dsbas664 toSci  0.0E-4           -> 0.00000
 
651
dsbas665 toSci  0.0E-5           -> 0.000000
 
652
dsbas666 toSci  0.0E-6           -> 0E-7
 
653
dsbas667 toSci  0.0E-7           -> 0E-8
 
654
dsbas668 toSci  0.0E-8           -> 0E-9
 
655
dsbas669 toSci  0.0E-9           -> 0E-10
 
656
 
 
657
dsbas670 toSci  0.00E-0          -> 0.00
 
658
dsbas671 toSci  0.00E-1          -> 0.000
 
659
dsbas672 toSci  0.00E-2          -> 0.0000
 
660
dsbas673 toSci  0.00E-3          -> 0.00000
 
661
dsbas674 toSci  0.00E-4          -> 0.000000
 
662
dsbas675 toSci  0.00E-5          -> 0E-7
 
663
dsbas676 toSci  0.00E-6          -> 0E-8
 
664
dsbas677 toSci  0.00E-7          -> 0E-9
 
665
dsbas678 toSci  0.00E-8          -> 0E-10
 
666
dsbas679 toSci  0.00E-9          -> 0E-11
 
667
 
 
668
dsbas680 toSci  000000.          ->  0
 
669
dsbas681 toSci   00000.          ->  0
 
670
dsbas682 toSci    0000.          ->  0
 
671
dsbas683 toSci     000.          ->  0
 
672
dsbas684 toSci      00.          ->  0
 
673
dsbas685 toSci       0.          ->  0
 
674
dsbas686 toSci  +00000.          ->  0
 
675
dsbas687 toSci  -00000.          -> -0
 
676
dsbas688 toSci  +0.              ->  0
 
677
dsbas689 toSci  -0.              -> -0
 
678
 
 
679
-- Specials
 
680
dsbas700 toSci "NaN"             -> NaN
 
681
dsbas701 toSci "nan"             -> NaN
 
682
dsbas702 toSci "nAn"             -> NaN
 
683
dsbas703 toSci "NAN"             -> NaN
 
684
dsbas704 toSci "+NaN"            -> NaN
 
685
dsbas705 toSci "+nan"            -> NaN
 
686
dsbas706 toSci "+nAn"            -> NaN
 
687
dsbas707 toSci "+NAN"            -> NaN
 
688
dsbas708 toSci "-NaN"            -> -NaN
 
689
dsbas709 toSci "-nan"            -> -NaN
 
690
dsbas710 toSci "-nAn"            -> -NaN
 
691
dsbas711 toSci "-NAN"            -> -NaN
 
692
dsbas712 toSci 'NaN0'            -> NaN
 
693
dsbas713 toSci 'NaN1'            -> NaN1
 
694
dsbas714 toSci 'NaN12'           -> NaN12
 
695
dsbas715 toSci 'NaN123'          -> NaN123
 
696
dsbas716 toSci 'NaN1234'         -> NaN1234
 
697
dsbas717 toSci 'NaN01'           -> NaN1
 
698
dsbas718 toSci 'NaN012'          -> NaN12
 
699
dsbas719 toSci 'NaN0123'         -> NaN123
 
700
dsbas720 toSci 'NaN01234'        -> NaN1234
 
701
dsbas721 toSci 'NaN001'          -> NaN1
 
702
dsbas722 toSci 'NaN0012'         -> NaN12
 
703
dsbas723 toSci 'NaN00123'        -> NaN123
 
704
dsbas724 toSci 'NaN001234'       -> NaN1234
 
705
dsbas725 toSci 'NaN1234567890123456' -> NaN Conversion_syntax
 
706
dsbas726 toSci 'NaN123e+1'       -> NaN Conversion_syntax
 
707
dsbas727 toSci 'NaN12.45'        -> NaN Conversion_syntax
 
708
dsbas728 toSci 'NaN-12'          -> NaN Conversion_syntax
 
709
dsbas729 toSci 'NaN+12'          -> NaN Conversion_syntax
 
710
 
 
711
dsbas730 toSci "sNaN"            -> sNaN
 
712
dsbas731 toSci "snan"            -> sNaN
 
713
dsbas732 toSci "SnAn"            -> sNaN
 
714
dsbas733 toSci "SNAN"            -> sNaN
 
715
dsbas734 toSci "+sNaN"           -> sNaN
 
716
dsbas735 toSci "+snan"           -> sNaN
 
717
dsbas736 toSci "+SnAn"           -> sNaN
 
718
dsbas737 toSci "+SNAN"           -> sNaN
 
719
dsbas738 toSci "-sNaN"           -> -sNaN
 
720
dsbas739 toSci "-snan"           -> -sNaN
 
721
dsbas740 toSci "-SnAn"           -> -sNaN
 
722
dsbas741 toSci "-SNAN"           -> -sNaN
 
723
dsbas742 toSci 'sNaN0000'        -> sNaN
 
724
dsbas743 toSci 'sNaN7'           -> sNaN7
 
725
dsbas744 toSci 'sNaN007234'      -> sNaN7234
 
726
dsbas745 toSci 'sNaN7234561234567890' -> NaN Conversion_syntax
 
727
dsbas746 toSci 'sNaN72.45'       -> NaN Conversion_syntax
 
728
dsbas747 toSci 'sNaN-72'         -> NaN Conversion_syntax
 
729
 
 
730
dsbas748 toSci "Inf"             -> Infinity
 
731
dsbas749 toSci "inf"             -> Infinity
 
732
dsbas750 toSci "iNf"             -> Infinity
 
733
dsbas751 toSci "INF"             -> Infinity
 
734
dsbas752 toSci "+Inf"            -> Infinity
 
735
dsbas753 toSci "+inf"            -> Infinity
 
736
dsbas754 toSci "+iNf"            -> Infinity
 
737
dsbas755 toSci "+INF"            -> Infinity
 
738
dsbas756 toSci "-Inf"            -> -Infinity
 
739
dsbas757 toSci "-inf"            -> -Infinity
 
740
dsbas758 toSci "-iNf"            -> -Infinity
 
741
dsbas759 toSci "-INF"            -> -Infinity
 
742
 
 
743
dsbas760 toSci "Infinity"        -> Infinity
 
744
dsbas761 toSci "infinity"        -> Infinity
 
745
dsbas762 toSci "iNfInItY"        -> Infinity
 
746
dsbas763 toSci "INFINITY"        -> Infinity
 
747
dsbas764 toSci "+Infinity"       -> Infinity
 
748
dsbas765 toSci "+infinity"       -> Infinity
 
749
dsbas766 toSci "+iNfInItY"       -> Infinity
 
750
dsbas767 toSci "+INFINITY"       -> Infinity
 
751
dsbas768 toSci "-Infinity"       -> -Infinity
 
752
dsbas769 toSci "-infinity"       -> -Infinity
 
753
dsbas770 toSci "-iNfInItY"       -> -Infinity
 
754
dsbas771 toSci "-INFINITY"       -> -Infinity
 
755
 
 
756
-- Specials and zeros for toEng
 
757
dsbast772 toEng "NaN"              -> NaN
 
758
dsbast773 toEng "-Infinity"        -> -Infinity
 
759
dsbast774 toEng "-sNaN"            -> -sNaN
 
760
dsbast775 toEng "-NaN"             -> -NaN
 
761
dsbast776 toEng "+Infinity"        -> Infinity
 
762
dsbast778 toEng "+sNaN"            -> sNaN
 
763
dsbast779 toEng "+NaN"             -> NaN
 
764
dsbast780 toEng "INFINITY"         -> Infinity
 
765
dsbast781 toEng "SNAN"             -> sNaN
 
766
dsbast782 toEng "NAN"              -> NaN
 
767
dsbast783 toEng "infinity"         -> Infinity
 
768
dsbast784 toEng "snan"             -> sNaN
 
769
dsbast785 toEng "nan"              -> NaN
 
770
dsbast786 toEng "InFINITY"         -> Infinity
 
771
dsbast787 toEng "SnAN"             -> sNaN
 
772
dsbast788 toEng "nAN"              -> NaN
 
773
dsbast789 toEng "iNfinity"         -> Infinity
 
774
dsbast790 toEng "sNan"             -> sNaN
 
775
dsbast791 toEng "Nan"              -> NaN
 
776
dsbast792 toEng "Infinity"         -> Infinity
 
777
dsbast793 toEng "sNaN"             -> sNaN
 
778
 
 
779
-- Zero toEng, etc.
 
780
dsbast800 toEng 0e+1              -> "0.00E+3"  -- doc example
 
781
 
 
782
dsbast801 toEng 0.000000000       -> 0E-9
 
783
dsbast802 toEng 0.00000000        -> 0.00E-6
 
784
dsbast803 toEng 0.0000000         -> 0.0E-6
 
785
dsbast804 toEng 0.000000          -> 0.000000
 
786
dsbast805 toEng 0.00000           -> 0.00000
 
787
dsbast806 toEng 0.0000            -> 0.0000
 
788
dsbast807 toEng 0.000             -> 0.000
 
789
dsbast808 toEng 0.00              -> 0.00
 
790
dsbast809 toEng 0.0               -> 0.0
 
791
dsbast810 toEng  .0               -> 0.0
 
792
dsbast811 toEng 0.                -> 0
 
793
dsbast812 toEng -.0               -> -0.0
 
794
dsbast813 toEng -0.               -> -0
 
795
dsbast814 toEng -0.0              -> -0.0
 
796
dsbast815 toEng -0.00             -> -0.00
 
797
dsbast816 toEng -0.000            -> -0.000
 
798
dsbast817 toEng -0.0000           -> -0.0000
 
799
dsbast818 toEng -0.00000          -> -0.00000
 
800
dsbast819 toEng -0.000000         -> -0.000000
 
801
dsbast820 toEng -0.0000000        -> -0.0E-6
 
802
dsbast821 toEng -0.00000000       -> -0.00E-6
 
803
dsbast822 toEng -0.000000000      -> -0E-9
 
804
 
 
805
dsbast830 toEng  0.00E+0          -> 0.00
 
806
dsbast831 toEng  0.00E+1          -> 0.0
 
807
dsbast832 toEng  0.00E+2          -> 0
 
808
dsbast833 toEng  0.00E+3          -> 0.00E+3
 
809
dsbast834 toEng  0.00E+4          -> 0.0E+3
 
810
dsbast835 toEng  0.00E+5          -> 0E+3
 
811
dsbast836 toEng  0.00E+6          -> 0.00E+6
 
812
dsbast837 toEng  0.00E+7          -> 0.0E+6
 
813
dsbast838 toEng  0.00E+8          -> 0E+6
 
814
dsbast839 toEng  0.00E+9          -> 0.00E+9
 
815
 
 
816
dsbast840 toEng  0.0E+0           -> 0.0
 
817
dsbast841 toEng  0.0E+1           -> 0
 
818
dsbast842 toEng  0.0E+2           -> 0.00E+3
 
819
dsbast843 toEng  0.0E+3           -> 0.0E+3
 
820
dsbast844 toEng  0.0E+4           -> 0E+3
 
821
dsbast845 toEng  0.0E+5           -> 0.00E+6
 
822
dsbast846 toEng  0.0E+6           -> 0.0E+6
 
823
dsbast847 toEng  0.0E+7           -> 0E+6
 
824
dsbast848 toEng  0.0E+8           -> 0.00E+9
 
825
dsbast849 toEng  0.0E+9           -> 0.0E+9
 
826
 
 
827
dsbast850 toEng  0E+0             -> 0
 
828
dsbast851 toEng  0E+1             -> 0.00E+3
 
829
dsbast852 toEng  0E+2             -> 0.0E+3
 
830
dsbast853 toEng  0E+3             -> 0E+3
 
831
dsbast854 toEng  0E+4             -> 0.00E+6
 
832
dsbast855 toEng  0E+5             -> 0.0E+6
 
833
dsbast856 toEng  0E+6             -> 0E+6
 
834
dsbast857 toEng  0E+7             -> 0.00E+9
 
835
dsbast858 toEng  0E+8             -> 0.0E+9
 
836
dsbast859 toEng  0E+9             -> 0E+9
 
837
 
 
838
dsbast860 toEng  0.0E-0           -> 0.0
 
839
dsbast861 toEng  0.0E-1           -> 0.00
 
840
dsbast862 toEng  0.0E-2           -> 0.000
 
841
dsbast863 toEng  0.0E-3           -> 0.0000
 
842
dsbast864 toEng  0.0E-4           -> 0.00000
 
843
dsbast865 toEng  0.0E-5           -> 0.000000
 
844
dsbast866 toEng  0.0E-6           -> 0.0E-6
 
845
dsbast867 toEng  0.0E-7           -> 0.00E-6
 
846
dsbast868 toEng  0.0E-8           -> 0E-9
 
847
dsbast869 toEng  0.0E-9           -> 0.0E-9
 
848
 
 
849
dsbast870 toEng  0.00E-0          -> 0.00
 
850
dsbast871 toEng  0.00E-1          -> 0.000
 
851
dsbast872 toEng  0.00E-2          -> 0.0000
 
852
dsbast873 toEng  0.00E-3          -> 0.00000
 
853
dsbast874 toEng  0.00E-4          -> 0.000000
 
854
dsbast875 toEng  0.00E-5          -> 0.0E-6
 
855
dsbast876 toEng  0.00E-6          -> 0.00E-6
 
856
dsbast877 toEng  0.00E-7          -> 0E-9
 
857
dsbast878 toEng  0.00E-8          -> 0.0E-9
 
858
dsbast879 toEng  0.00E-9          -> 0.00E-9
 
859
 
 
860
-- long input strings
 
861
dsbas801 tosci          '01234567' -> 1234567
 
862
dsbas802 tosci         '001234567' -> 1234567
 
863
dsbas803 tosci        '0001234567' -> 1234567
 
864
dsbas804 tosci       '00001234567' -> 1234567
 
865
dsbas805 tosci      '000001234567' -> 1234567
 
866
dsbas806 tosci     '0000001234567' -> 1234567
 
867
dsbas807 tosci    '00000001234567' -> 1234567
 
868
dsbas808 tosci   '000000001234567' -> 1234567
 
869
dsbas809 tosci  '0000000001234567' -> 1234567
 
870
dsbas810 tosci '00000000001234567' -> 1234567
 
871
 
 
872
dsbas811 tosci          '0.1234567' ->      0.1234567
 
873
dsbas812 tosci         '0.01234567' ->     0.01234567
 
874
dsbas813 tosci        '0.001234567' ->    0.001234567
 
875
dsbas814 tosci       '0.0001234567' ->   0.0001234567
 
876
dsbas815 tosci      '0.00001234567' ->  0.00001234567
 
877
dsbas816 tosci     '0.000001234567' -> 0.000001234567
 
878
dsbas817 tosci    '0.0000001234567' ->       1.234567E-7
 
879
dsbas818 tosci   '0.00000001234567' ->       1.234567E-8
 
880
dsbas819 tosci  '0.000000001234567' ->       1.234567E-9
 
881
dsbas820 tosci '0.0000000001234567' ->       1.234567E-10
 
882
 
 
883
dsbas821 tosci '123456790'         -> 1.234568E+8 Inexact Rounded
 
884
dsbas822 tosci '1234567901'        -> 1.234568E+9  Inexact Rounded
 
885
dsbas823 tosci '12345679012'       -> 1.234568E+10 Inexact Rounded
 
886
dsbas824 tosci '123456790123'      -> 1.234568E+11 Inexact Rounded
 
887
dsbas825 tosci '1234567901234'     -> 1.234568E+12 Inexact Rounded
 
888
dsbas826 tosci '12345679012345'    -> 1.234568E+13 Inexact Rounded
 
889
dsbas827 tosci '123456790123456'   -> 1.234568E+14 Inexact Rounded
 
890
dsbas828 tosci '1234567901234567'  -> 1.234568E+15 Inexact Rounded
 
891
dsbas829 tosci '1234567890123456'  -> 1.234568E+15 Inexact Rounded
 
892
 
 
893
-- subnormals and overflows
 
894
dsbas906 toSci '99e999999999'       -> Infinity Overflow  Inexact Rounded
 
895
dsbas907 toSci '999e999999999'      -> Infinity Overflow  Inexact Rounded
 
896
dsbas908 toSci '0.9e-999999999'     -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
897
dsbas909 toSci '0.09e-999999999'    -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
898
dsbas910 toSci '0.1e1000000000'     -> Infinity Overflow  Inexact Rounded
 
899
dsbas911 toSci '10e-1000000000'     -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
900
dsbas912 toSci '0.9e9999999999'     -> Infinity Overflow  Inexact Rounded
 
901
dsbas913 toSci '99e-9999999999'     -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
902
dsbas914 toSci '111e9999999999'     -> Infinity Overflow  Inexact Rounded
 
903
dsbas915 toSci '1111e-9999999999'   -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
904
dsbas916 toSci '1111e-99999999999'  -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
905
dsbas917 toSci '7e1000000000'       -> Infinity Overflow  Inexact Rounded
 
906
-- negatives the same
 
907
dsbas918 toSci '-99e999999999'      -> -Infinity Overflow  Inexact Rounded
 
908
dsbas919 toSci '-999e999999999'     -> -Infinity Overflow  Inexact Rounded
 
909
dsbas920 toSci '-0.9e-999999999'    -> -0E-101 Underflow Subnormal Inexact Rounded Clamped
 
910
dsbas921 toSci '-0.09e-999999999'   -> -0E-101 Underflow Subnormal Inexact Rounded Clamped
 
911
dsbas922 toSci '-0.1e1000000000'    -> -Infinity Overflow  Inexact Rounded
 
912
dsbas923 toSci '-10e-1000000000'    -> -0E-101 Underflow Subnormal Inexact Rounded Clamped
 
913
dsbas924 toSci '-0.9e9999999999'    -> -Infinity Overflow  Inexact Rounded
 
914
dsbas925 toSci '-99e-9999999999'    -> -0E-101 Underflow Subnormal Inexact Rounded Clamped
 
915
dsbas926 toSci '-111e9999999999'    -> -Infinity Overflow  Inexact Rounded
 
916
dsbas927 toSci '-1111e-9999999999'  -> -0E-101 Underflow Subnormal Inexact Rounded Clamped
 
917
dsbas928 toSci '-1111e-99999999999' -> -0E-101 Underflow Subnormal Inexact Rounded Clamped
 
918
dsbas929 toSci '-7e1000000000'      -> -Infinity Overflow  Inexact Rounded
 
919
 
 
920
-- overflow results at different rounding modes
 
921
rounding:  ceiling
 
922
dsbas930 toSci  '7e10000'  ->  Infinity Overflow  Inexact Rounded
 
923
dsbas931 toSci '-7e10000'  -> -9.999999E+96 Overflow  Inexact Rounded
 
924
rounding:  up
 
925
dsbas932 toSci  '7e10000'  ->  Infinity Overflow  Inexact Rounded
 
926
dsbas933 toSci '-7e10000'  -> -Infinity Overflow  Inexact Rounded
 
927
rounding:  down
 
928
dsbas934 toSci  '7e10000'  ->  9.999999E+96 Overflow  Inexact Rounded
 
929
dsbas935 toSci '-7e10000'  -> -9.999999E+96 Overflow  Inexact Rounded
 
930
rounding:  floor
 
931
dsbas936 toSci  '7e10000'  ->  9.999999E+96 Overflow  Inexact Rounded
 
932
dsbas937 toSci '-7e10000'  -> -Infinity Overflow  Inexact Rounded
 
933
 
 
934
rounding:  half_up
 
935
dsbas938 toSci  '7e10000'  ->  Infinity Overflow  Inexact Rounded
 
936
dsbas939 toSci '-7e10000'  -> -Infinity Overflow  Inexact Rounded
 
937
rounding:  half_even
 
938
dsbas940 toSci  '7e10000'  ->  Infinity Overflow  Inexact Rounded
 
939
dsbas941 toSci '-7e10000'  -> -Infinity Overflow  Inexact Rounded
 
940
rounding:  half_down
 
941
dsbas942 toSci  '7e10000'  ->  Infinity Overflow  Inexact Rounded
 
942
dsbas943 toSci '-7e10000'  -> -Infinity Overflow  Inexact Rounded
 
943
 
 
944
rounding:  half_even
 
945
 
 
946
-- Now check 854/754r some subnormals and underflow to 0
 
947
dsbem400 toSci  1.0000E-86     -> 1.0000E-86
 
948
dsbem401 toSci  0.1E-97        -> 1E-98       Subnormal
 
949
dsbem402 toSci  0.1000E-97     -> 1.000E-98   Subnormal
 
950
dsbem403 toSci  0.0100E-97     -> 1.00E-99    Subnormal
 
951
dsbem404 toSci  0.0010E-97     -> 1.0E-100     Subnormal
 
952
dsbem405 toSci  0.0001E-97     -> 1E-101       Subnormal
 
953
dsbem406 toSci  0.00010E-97    -> 1E-101     Subnormal Rounded
 
954
dsbem407 toSci  0.00013E-97    -> 1E-101     Underflow Subnormal Inexact Rounded
 
955
dsbem408 toSci  0.00015E-97    -> 2E-101     Underflow Subnormal Inexact Rounded
 
956
dsbem409 toSci  0.00017E-97    -> 2E-101     Underflow Subnormal Inexact Rounded
 
957
dsbem410 toSci  0.00023E-97    -> 2E-101     Underflow Subnormal Inexact Rounded
 
958
dsbem411 toSci  0.00025E-97    -> 2E-101     Underflow Subnormal Inexact Rounded
 
959
dsbem412 toSci  0.00027E-97    -> 3E-101     Underflow Subnormal Inexact Rounded
 
960
dsbem413 toSci  0.000149E-97   -> 1E-101     Underflow Subnormal Inexact Rounded
 
961
dsbem414 toSci  0.000150E-97   -> 2E-101     Underflow Subnormal Inexact Rounded
 
962
dsbem415 toSci  0.000151E-97   -> 2E-101     Underflow Subnormal Inexact Rounded
 
963
dsbem416 toSci  0.000249E-97   -> 2E-101     Underflow Subnormal Inexact Rounded
 
964
dsbem417 toSci  0.000250E-97   -> 2E-101     Underflow Subnormal Inexact Rounded
 
965
dsbem418 toSci  0.000251E-97   -> 3E-101     Underflow Subnormal Inexact Rounded
 
966
dsbem419 toSci  0.00009E-97    -> 1E-101     Underflow Subnormal Inexact Rounded
 
967
dsbem420 toSci  0.00005E-97    -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
968
dsbem421 toSci  0.00003E-97    -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
969
dsbem422 toSci  0.000009E-97   -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
970
dsbem423 toSci  0.000005E-97   -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
971
dsbem424 toSci  0.000003E-97   -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
972
 
 
973
dsbem425 toSci  0.001049E-97   -> 1.0E-100   Underflow Subnormal Inexact Rounded
 
974
dsbem426 toSci  0.001050E-97   -> 1.0E-100   Underflow Subnormal Inexact Rounded
 
975
dsbem427 toSci  0.001051E-97   -> 1.1E-100   Underflow Subnormal Inexact Rounded
 
976
dsbem428 toSci  0.001149E-97   -> 1.1E-100   Underflow Subnormal Inexact Rounded
 
977
dsbem429 toSci  0.001150E-97   -> 1.2E-100   Underflow Subnormal Inexact Rounded
 
978
dsbem430 toSci  0.001151E-97   -> 1.2E-100   Underflow Subnormal Inexact Rounded
 
979
 
 
980
dsbem432 toSci  0.010049E-97   -> 1.00E-99  Underflow Subnormal Inexact Rounded
 
981
dsbem433 toSci  0.010050E-97   -> 1.00E-99  Underflow Subnormal Inexact Rounded
 
982
dsbem434 toSci  0.010051E-97   -> 1.01E-99  Underflow Subnormal Inexact Rounded
 
983
dsbem435 toSci  0.010149E-97   -> 1.01E-99  Underflow Subnormal Inexact Rounded
 
984
dsbem436 toSci  0.010150E-97   -> 1.02E-99  Underflow Subnormal Inexact Rounded
 
985
dsbem437 toSci  0.010151E-97   -> 1.02E-99  Underflow Subnormal Inexact Rounded
 
986
 
 
987
dsbem440 toSci  0.10103E-97    -> 1.010E-98 Underflow Subnormal Inexact Rounded
 
988
dsbem441 toSci  0.10105E-97    -> 1.010E-98 Underflow Subnormal Inexact Rounded
 
989
dsbem442 toSci  0.10107E-97    -> 1.011E-98 Underflow Subnormal Inexact Rounded
 
990
dsbem443 toSci  0.10113E-97    -> 1.011E-98 Underflow Subnormal Inexact Rounded
 
991
dsbem444 toSci  0.10115E-97    -> 1.012E-98 Underflow Subnormal Inexact Rounded
 
992
dsbem445 toSci  0.10117E-97    -> 1.012E-98 Underflow Subnormal Inexact Rounded
 
993
 
 
994
dsbem450 toSci  1.10730E-98    -> 1.107E-98 Underflow Subnormal Inexact Rounded
 
995
dsbem451 toSci  1.10750E-98    -> 1.108E-98 Underflow Subnormal Inexact Rounded
 
996
dsbem452 toSci  1.10770E-98    -> 1.108E-98 Underflow Subnormal Inexact Rounded
 
997
dsbem453 toSci  1.10830E-98    -> 1.108E-98 Underflow Subnormal Inexact Rounded
 
998
dsbem454 toSci  1.10850E-98    -> 1.108E-98 Underflow Subnormal Inexact Rounded
 
999
dsbem455 toSci  1.10870E-98    -> 1.109E-98 Underflow Subnormal Inexact Rounded
 
1000
 
 
1001
-- make sure sign OK
 
1002
dsbem456 toSci  -0.10103E-97   -> -1.010E-98 Underflow Subnormal Inexact Rounded
 
1003
dsbem457 toSci  -0.10105E-97   -> -1.010E-98 Underflow Subnormal Inexact Rounded
 
1004
dsbem458 toSci  -0.10107E-97   -> -1.011E-98 Underflow Subnormal Inexact Rounded
 
1005
dsbem459 toSci  -0.10113E-97   -> -1.011E-98 Underflow Subnormal Inexact Rounded
 
1006
dsbem460 toSci  -0.10115E-97   -> -1.012E-98 Underflow Subnormal Inexact Rounded
 
1007
dsbem461 toSci  -0.10117E-97   -> -1.012E-98 Underflow Subnormal Inexact Rounded
 
1008
 
 
1009
-- '999s' cases
 
1010
dsbem464 toSci  999999E-98         -> 9.99999E-93
 
1011
dsbem465 toSci  99999.0E-97        -> 9.99990E-93
 
1012
dsbem466 toSci  99999.E-97         -> 9.9999E-93
 
1013
dsbem467 toSci  9999.9E-97         -> 9.9999E-94
 
1014
dsbem468 toSci  999.99E-97         -> 9.9999E-95
 
1015
dsbem469 toSci  99.999E-97         -> 9.9999E-96 Subnormal
 
1016
dsbem470 toSci  9.9999E-97         -> 9.9999E-97 Subnormal
 
1017
dsbem471 toSci  0.99999E-97        -> 1.0000E-97 Underflow Subnormal Inexact Rounded
 
1018
dsbem472 toSci  0.099999E-97       -> 1.000E-98  Underflow Subnormal Inexact Rounded
 
1019
dsbem473 toSci  0.0099999E-97      -> 1.00E-99   Underflow Subnormal Inexact Rounded
 
1020
dsbem474 toSci  0.00099999E-97     -> 1.0E-100   Underflow Subnormal Inexact Rounded
 
1021
dsbem475 toSci  0.000099999E-97    -> 1E-101     Underflow Subnormal Inexact Rounded
 
1022
dsbem476 toSci  0.0000099999E-97   -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
1023
dsbem477 toSci  0.00000099999E-97  -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
1024
dsbem478 toSci  0.000000099999E-97 -> 0E-101     Underflow Subnormal Inexact Rounded Clamped
 
1025
 
 
1026
-- Exponents with insignificant leading zeros
 
1027
dsbas1001 toSci  1e999999999 -> Infinity Overflow Inexact Rounded
 
1028
dsbas1002 toSci  1e0999999999 -> Infinity Overflow Inexact Rounded
 
1029
dsbas1003 toSci  1e00999999999 -> Infinity Overflow Inexact Rounded
 
1030
dsbas1004 toSci  1e000999999999 -> Infinity Overflow Inexact Rounded
 
1031
dsbas1005 toSci  1e000000000000999999999 -> Infinity Overflow Inexact Rounded
 
1032
dsbas1006 toSci  1e000000000001000000007 -> Infinity Overflow Inexact Rounded
 
1033
dsbas1007 toSci  1e-999999999 -> 0E-101             Underflow Subnormal Inexact Rounded Clamped
 
1034
dsbas1008 toSci  1e-0999999999 -> 0E-101            Underflow Subnormal Inexact Rounded Clamped
 
1035
dsbas1009 toSci  1e-00999999999 -> 0E-101           Underflow Subnormal Inexact Rounded Clamped
 
1036
dsbas1010 toSci  1e-000999999999 -> 0E-101          Underflow Subnormal Inexact Rounded Clamped
 
1037
dsbas1011 toSci  1e-000000000000999999999 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
1038
dsbas1012 toSci  1e-000000000001000000007 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped
 
1039
 
 
1040
-- check for double-rounded subnormals
 
1041
dsbas1041 toSci     1.1152444E-96 ->  1.11524E-96 Inexact Rounded Subnormal Underflow
 
1042
dsbas1042 toSci     1.1152445E-96 ->  1.11524E-96 Inexact Rounded Subnormal Underflow
 
1043
dsbas1043 toSci     1.1152446E-96 ->  1.11524E-96 Inexact Rounded Subnormal Underflow
 
1044
 
 
1045
-- clamped zeros [see also clamp.decTest]
 
1046
dsbas1075 toSci   0e+10000  ->  0E+90   Clamped
 
1047
dsbas1076 toSci   0e-10000  ->  0E-101  Clamped
 
1048
dsbas1077 toSci  -0e+10000  -> -0E+90   Clamped
 
1049
dsbas1078 toSci  -0e-10000  -> -0E-101  Clamped
 
1050
 
 
1051
-- extreme values from next-wider
 
1052
dsbas1101 toSci -9.999999999999999E+384 -> -Infinity Overflow Inexact Rounded
 
1053
dsbas1102 toSci -1E-383 -> -0E-101 Inexact Rounded Subnormal Underflow Clamped
 
1054
dsbas1103 toSci -1E-398 -> -0E-101 Inexact Rounded Subnormal Underflow Clamped
 
1055
dsbas1104 toSci -0 -> -0
 
1056
dsbas1105 toSci +0 ->  0
 
1057
dsbas1106 toSci +1E-398 ->  0E-101 Inexact Rounded Subnormal Underflow Clamped
 
1058
dsbas1107 toSci +1E-383 ->  0E-101 Inexact Rounded Subnormal Underflow Clamped
 
1059
dsbas1108 toSci +9.999999999999999E+384 ->  Infinity Overflow Inexact Rounded
 
1060
 
 
1061
-- narrowing case
 
1062
dsbas1110 toSci 2.000000000000000E-99 -> 2.00E-99 Rounded Subnormal