1 ------------------------------------------------------------------------
\r
2 -- class.decTest -- Class operations --
\r
3 -- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. --
\r
4 ------------------------------------------------------------------------
\r
5 -- Please see the document "General Decimal Arithmetic Testcases" --
\r
6 -- at http://www2.hursley.ibm.com/decimal for the description of --
\r
7 -- these testcases. --
\r
9 -- These testcases are experimental ('beta' versions), and they --
\r
10 -- may contain errors. They are offered on an as-is basis. In --
\r
11 -- particular, achieving the same results as the tests here is not --
\r
12 -- a guarantee that an implementation complies with any Standard --
\r
13 -- or specification. The tests are not exhaustive. --
\r
15 -- Please send comments, suggestions, and corrections to the author: --
\r
16 -- Mike Cowlishaw, IBM Fellow --
\r
17 -- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
\r
18 -- mfc@uk.ibm.com --
\r
19 ------------------------------------------------------------------------
\r
31 clasx001 class 0 -> +Zero
\r
32 clasx002 class 0.00 -> +Zero
\r
33 clasx003 class 0E+5 -> +Zero
\r
34 clasx004 class 1E-1007 -> +Subnormal
\r
35 clasx005 class 0.1E-999 -> +Subnormal
\r
36 clasx006 class 0.99999999E-999 -> +Subnormal
\r
37 clasx007 class 1.00000000E-999 -> +Normal
\r
38 clasx008 class 1E-999 -> +Normal
\r
39 clasx009 class 1E-100 -> +Normal
\r
40 clasx010 class 1E-10 -> +Normal
\r
41 clasx012 class 1E-1 -> +Normal
\r
42 clasx013 class 1 -> +Normal
\r
43 clasx014 class 2.50 -> +Normal
\r
44 clasx015 class 100.100 -> +Normal
\r
45 clasx016 class 1E+30 -> +Normal
\r
46 clasx017 class 1E+999 -> +Normal
\r
47 clasx018 class 9.99999999E+999 -> +Normal
\r
48 clasx019 class Inf -> +Infinity
\r
50 clasx021 class -0 -> -Zero
\r
51 clasx022 class -0.00 -> -Zero
\r
52 clasx023 class -0E+5 -> -Zero
\r
53 clasx024 class -1E-1007 -> -Subnormal
\r
54 clasx025 class -0.1E-999 -> -Subnormal
\r
55 clasx026 class -0.99999999E-999 -> -Subnormal
\r
56 clasx027 class -1.00000000E-999 -> -Normal
\r
57 clasx028 class -1E-999 -> -Normal
\r
58 clasx029 class -1E-100 -> -Normal
\r
59 clasx030 class -1E-10 -> -Normal
\r
60 clasx032 class -1E-1 -> -Normal
\r
61 clasx033 class -1 -> -Normal
\r
62 clasx034 class -2.50 -> -Normal
\r
63 clasx035 class -100.100 -> -Normal
\r
64 clasx036 class -1E+30 -> -Normal
\r
65 clasx037 class -1E+999 -> -Normal
\r
66 clasx038 class -9.99999999E+999 -> -Normal
\r
67 clasx039 class -Inf -> -Infinity
\r
69 clasx041 class NaN -> NaN
\r
70 clasx042 class -NaN -> NaN
\r
71 clasx043 class +NaN12345 -> NaN
\r
72 clasx044 class sNaN -> sNaN
\r
73 clasx045 class -sNaN -> sNaN
\r
74 clasx046 class +sNaN12345 -> sNaN
\r
85 clasx201 class 0 -> +Zero
\r
86 clasx202 class 0.00 -> +Zero
\r
87 clasx203 class 0E+5 -> +Zero
\r
88 clasx204 class 1E-396 -> +Subnormal
\r
89 clasx205 class 0.1E-383 -> +Subnormal
\r
90 clasx206 class 0.999999999999999E-383 -> +Subnormal
\r
91 clasx207 class 1.000000000000000E-383 -> +Normal
\r
92 clasx208 class 1E-383 -> +Normal
\r
93 clasx209 class 1E-100 -> +Normal
\r
94 clasx210 class 1E-10 -> +Normal
\r
95 clasx212 class 1E-1 -> +Normal
\r
96 clasx213 class 1 -> +Normal
\r
97 clasx214 class 2.50 -> +Normal
\r
98 clasx215 class 100.100 -> +Normal
\r
99 clasx216 class 1E+30 -> +Normal
\r
100 clasx217 class 1E+384 -> +Normal
\r
101 clasx218 class 9.999999999999999E+384 -> +Normal
\r
102 clasx219 class Inf -> +Infinity
\r
104 clasx221 class -0 -> -Zero
\r
105 clasx222 class -0.00 -> -Zero
\r
106 clasx223 class -0E+5 -> -Zero
\r
107 clasx224 class -1E-396 -> -Subnormal
\r
108 clasx225 class -0.1E-383 -> -Subnormal
\r
109 clasx226 class -0.999999999999999E-383 -> -Subnormal
\r
110 clasx227 class -1.000000000000000E-383 -> -Normal
\r
111 clasx228 class -1E-383 -> -Normal
\r
112 clasx229 class -1E-100 -> -Normal
\r
113 clasx230 class -1E-10 -> -Normal
\r
114 clasx232 class -1E-1 -> -Normal
\r
115 clasx233 class -1 -> -Normal
\r
116 clasx234 class -2.50 -> -Normal
\r
117 clasx235 class -100.100 -> -Normal
\r
118 clasx236 class -1E+30 -> -Normal
\r
119 clasx237 class -1E+384 -> -Normal
\r
120 clasx238 class -9.999999999999999E+384 -> -Normal
\r
121 clasx239 class -Inf -> -Infinity
\r
123 clasx241 class NaN -> NaN
\r
124 clasx242 class -NaN -> NaN
\r
125 clasx243 class +NaN12345 -> NaN
\r
126 clasx244 class sNaN -> sNaN
\r
127 clasx245 class -sNaN -> sNaN
\r
128 clasx246 class +sNaN12345 -> sNaN
\r