17db96d56Sopenharmony_ci------------------------------------------------------------------------
27db96d56Sopenharmony_ci-- nextminus.decTest -- decimal next that is less [754r nextdown]     --
37db96d56Sopenharmony_ci-- Copyright (c) IBM Corporation, 1981, 2008.  All rights reserved.   --
47db96d56Sopenharmony_ci------------------------------------------------------------------------
57db96d56Sopenharmony_ci-- Please see the document "General Decimal Arithmetic Testcases"     --
67db96d56Sopenharmony_ci-- at http://www2.hursley.ibm.com/decimal for the description of      --
77db96d56Sopenharmony_ci-- these testcases.                                                   --
87db96d56Sopenharmony_ci--                                                                    --
97db96d56Sopenharmony_ci-- These testcases are experimental ('beta' versions), and they       --
107db96d56Sopenharmony_ci-- may contain errors.  They are offered on an as-is basis.  In       --
117db96d56Sopenharmony_ci-- particular, achieving the same results as the tests here is not    --
127db96d56Sopenharmony_ci-- a guarantee that an implementation complies with any Standard      --
137db96d56Sopenharmony_ci-- or specification.  The tests are not exhaustive.                   --
147db96d56Sopenharmony_ci--                                                                    --
157db96d56Sopenharmony_ci-- Please send comments, suggestions, and corrections to the author:  --
167db96d56Sopenharmony_ci--   Mike Cowlishaw, IBM Fellow                                       --
177db96d56Sopenharmony_ci--   IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK         --
187db96d56Sopenharmony_ci--   mfc@uk.ibm.com                                                   --
197db96d56Sopenharmony_ci------------------------------------------------------------------------
207db96d56Sopenharmony_civersion: 2.59
217db96d56Sopenharmony_ci
227db96d56Sopenharmony_ciextended:    1
237db96d56Sopenharmony_ciprecision:   9
247db96d56Sopenharmony_cirounding:    half_up
257db96d56Sopenharmony_cimaxExponent: 384
267db96d56Sopenharmony_ciminexponent: -383
277db96d56Sopenharmony_ci
287db96d56Sopenharmony_cinextm001 nextminus  0.999999995 ->   0.999999994
297db96d56Sopenharmony_cinextm002 nextminus  0.999999996 ->   0.999999995
307db96d56Sopenharmony_cinextm003 nextminus  0.999999997 ->   0.999999996
317db96d56Sopenharmony_cinextm004 nextminus  0.999999998 ->   0.999999997
327db96d56Sopenharmony_cinextm005 nextminus  0.999999999 ->   0.999999998
337db96d56Sopenharmony_cinextm006 nextminus  1.00000000  ->   0.999999999
347db96d56Sopenharmony_cinextm007 nextminus  1.0         ->   0.999999999
357db96d56Sopenharmony_cinextm008 nextminus  1           ->   0.999999999
367db96d56Sopenharmony_cinextm009 nextminus  1.00000001  ->   1.00000000
377db96d56Sopenharmony_cinextm010 nextminus  1.00000002  ->   1.00000001
387db96d56Sopenharmony_cinextm011 nextminus  1.00000003  ->   1.00000002
397db96d56Sopenharmony_cinextm012 nextminus  1.00000004  ->   1.00000003
407db96d56Sopenharmony_cinextm013 nextminus  1.00000005  ->   1.00000004
417db96d56Sopenharmony_cinextm014 nextminus  1.00000006  ->   1.00000005
427db96d56Sopenharmony_cinextm015 nextminus  1.00000007  ->   1.00000006
437db96d56Sopenharmony_cinextm016 nextminus  1.00000008  ->   1.00000007
447db96d56Sopenharmony_cinextm017 nextminus  1.00000009  ->   1.00000008
457db96d56Sopenharmony_cinextm018 nextminus  1.00000010  ->   1.00000009
467db96d56Sopenharmony_cinextm019 nextminus  1.00000011  ->   1.00000010
477db96d56Sopenharmony_cinextm020 nextminus  1.00000012  ->   1.00000011
487db96d56Sopenharmony_ci
497db96d56Sopenharmony_cinextm021 nextminus -0.999999995 ->  -0.999999996
507db96d56Sopenharmony_cinextm022 nextminus -0.999999996 ->  -0.999999997
517db96d56Sopenharmony_cinextm023 nextminus -0.999999997 ->  -0.999999998
527db96d56Sopenharmony_cinextm024 nextminus -0.999999998 ->  -0.999999999
537db96d56Sopenharmony_cinextm025 nextminus -0.999999999 ->  -1.00000000
547db96d56Sopenharmony_cinextm026 nextminus -1.00000000  ->  -1.00000001
557db96d56Sopenharmony_cinextm027 nextminus -1.0         ->  -1.00000001
567db96d56Sopenharmony_cinextm028 nextminus -1           ->  -1.00000001
577db96d56Sopenharmony_cinextm029 nextminus -1.00000001  ->  -1.00000002
587db96d56Sopenharmony_cinextm030 nextminus -1.00000002  ->  -1.00000003
597db96d56Sopenharmony_cinextm031 nextminus -1.00000003  ->  -1.00000004
607db96d56Sopenharmony_cinextm032 nextminus -1.00000004  ->  -1.00000005
617db96d56Sopenharmony_cinextm033 nextminus -1.00000005  ->  -1.00000006
627db96d56Sopenharmony_cinextm034 nextminus -1.00000006  ->  -1.00000007
637db96d56Sopenharmony_cinextm035 nextminus -1.00000007  ->  -1.00000008
647db96d56Sopenharmony_cinextm036 nextminus -1.00000008  ->  -1.00000009
657db96d56Sopenharmony_cinextm037 nextminus -1.00000009  ->  -1.00000010
667db96d56Sopenharmony_cinextm038 nextminus -1.00000010  ->  -1.00000011
677db96d56Sopenharmony_cinextm039 nextminus -1.00000011  ->  -1.00000012
687db96d56Sopenharmony_ci
697db96d56Sopenharmony_ci-- input operand is >precision
707db96d56Sopenharmony_cinextm041 nextminus  1.00000010998  ->   1.00000010
717db96d56Sopenharmony_cinextm042 nextminus  1.00000010999  ->   1.00000010
727db96d56Sopenharmony_cinextm043 nextminus  1.00000011000  ->   1.00000010
737db96d56Sopenharmony_cinextm044 nextminus  1.00000011001  ->   1.00000011
747db96d56Sopenharmony_cinextm045 nextminus  1.00000011002  ->   1.00000011
757db96d56Sopenharmony_cinextm046 nextminus  1.00000011002  ->   1.00000011
767db96d56Sopenharmony_cinextm047 nextminus  1.00000011052  ->   1.00000011
777db96d56Sopenharmony_cinextm048 nextminus  1.00000011552  ->   1.00000011
787db96d56Sopenharmony_cinextm049 nextminus -1.00000010998  ->  -1.00000011
797db96d56Sopenharmony_cinextm050 nextminus -1.00000010999  ->  -1.00000011
807db96d56Sopenharmony_cinextm051 nextminus -1.00000011000  ->  -1.00000012
817db96d56Sopenharmony_cinextm052 nextminus -1.00000011001  ->  -1.00000012
827db96d56Sopenharmony_cinextm053 nextminus -1.00000011002  ->  -1.00000012
837db96d56Sopenharmony_cinextm054 nextminus -1.00000011002  ->  -1.00000012
847db96d56Sopenharmony_cinextm055 nextminus -1.00000011052  ->  -1.00000012
857db96d56Sopenharmony_cinextm056 nextminus -1.00000011552  ->  -1.00000012
867db96d56Sopenharmony_ci-- ultra-tiny inputs
877db96d56Sopenharmony_cinextm060 nextminus  1E-99999       ->   0E-391
887db96d56Sopenharmony_cinextm061 nextminus  1E-999999999   ->   0E-391
897db96d56Sopenharmony_cinextm062 nextminus  1E-391         ->   0E-391
907db96d56Sopenharmony_cinextm063 nextminus -1E-99999       ->  -1E-391
917db96d56Sopenharmony_cinextm064 nextminus -1E-999999999   ->  -1E-391
927db96d56Sopenharmony_cinextm065 nextminus -1E-391         ->  -2E-391
937db96d56Sopenharmony_ci
947db96d56Sopenharmony_ci-- Zeros
957db96d56Sopenharmony_cinextm100 nextminus -0           -> -1E-391
967db96d56Sopenharmony_cinextm101 nextminus  0           -> -1E-391
977db96d56Sopenharmony_cinextm102 nextminus  0.00        -> -1E-391
987db96d56Sopenharmony_cinextm103 nextminus -0.00        -> -1E-391
997db96d56Sopenharmony_cinextm104 nextminus  0E-300      -> -1E-391
1007db96d56Sopenharmony_cinextm105 nextminus  0E+300      -> -1E-391
1017db96d56Sopenharmony_cinextm106 nextminus  0E+30000    -> -1E-391
1027db96d56Sopenharmony_cinextm107 nextminus -0E+30000    -> -1E-391
1037db96d56Sopenharmony_ci
1047db96d56Sopenharmony_ciprecision: 9
1057db96d56Sopenharmony_cimaxExponent: 999
1067db96d56Sopenharmony_ciminexponent: -999
1077db96d56Sopenharmony_ci-- specials
1087db96d56Sopenharmony_cinextm150 nextminus   Inf    ->  9.99999999E+999
1097db96d56Sopenharmony_cinextm151 nextminus  -Inf    -> -Infinity
1107db96d56Sopenharmony_cinextm152 nextminus   NaN    ->  NaN
1117db96d56Sopenharmony_cinextm153 nextminus  sNaN    ->  NaN   Invalid_operation
1127db96d56Sopenharmony_cinextm154 nextminus   NaN77  ->  NaN77
1137db96d56Sopenharmony_cinextm155 nextminus  sNaN88  ->  NaN88 Invalid_operation
1147db96d56Sopenharmony_cinextm156 nextminus  -NaN    -> -NaN
1157db96d56Sopenharmony_cinextm157 nextminus -sNaN    -> -NaN   Invalid_operation
1167db96d56Sopenharmony_cinextm158 nextminus  -NaN77  -> -NaN77
1177db96d56Sopenharmony_cinextm159 nextminus -sNaN88  -> -NaN88 Invalid_operation
1187db96d56Sopenharmony_ci
1197db96d56Sopenharmony_ci-- Nmax, Nmin, Ntiny, subnormals
1207db96d56Sopenharmony_cinextm170 nextminus  9.99999999E+999   -> 9.99999998E+999
1217db96d56Sopenharmony_cinextm171 nextminus  9.99999998E+999   -> 9.99999997E+999
1227db96d56Sopenharmony_cinextm172 nextminus  1E-999            -> 9.9999999E-1000
1237db96d56Sopenharmony_cinextm173 nextminus  1.00000000E-999   -> 9.9999999E-1000
1247db96d56Sopenharmony_cinextm174 nextminus  9E-1007           -> 8E-1007
1257db96d56Sopenharmony_cinextm175 nextminus  9.9E-1006         -> 9.8E-1006
1267db96d56Sopenharmony_cinextm176 nextminus  9.9999E-1003      -> 9.9998E-1003
1277db96d56Sopenharmony_cinextm177 nextminus  9.9999999E-1000   -> 9.9999998E-1000
1287db96d56Sopenharmony_cinextm178 nextminus  9.9999998E-1000   -> 9.9999997E-1000
1297db96d56Sopenharmony_cinextm179 nextminus  9.9999997E-1000   -> 9.9999996E-1000
1307db96d56Sopenharmony_cinextm180 nextminus  0E-1007           -> -1E-1007
1317db96d56Sopenharmony_cinextm181 nextminus  1E-1007           -> 0E-1007
1327db96d56Sopenharmony_cinextm182 nextminus  2E-1007           -> 1E-1007
1337db96d56Sopenharmony_ci
1347db96d56Sopenharmony_cinextm183 nextminus  -0E-1007          -> -1E-1007
1357db96d56Sopenharmony_cinextm184 nextminus  -1E-1007          -> -2E-1007
1367db96d56Sopenharmony_cinextm185 nextminus  -2E-1007          -> -3E-1007
1377db96d56Sopenharmony_cinextm186 nextminus  -10E-1007         -> -1.1E-1006
1387db96d56Sopenharmony_cinextm187 nextminus  -100E-1007        -> -1.01E-1005
1397db96d56Sopenharmony_cinextm188 nextminus  -100000E-1007     -> -1.00001E-1002
1407db96d56Sopenharmony_cinextm189 nextminus  -1.0000E-999      -> -1.00000001E-999
1417db96d56Sopenharmony_cinextm190 nextminus  -1.00000000E-999  -> -1.00000001E-999
1427db96d56Sopenharmony_cinextm191 nextminus  -1E-999           -> -1.00000001E-999
1437db96d56Sopenharmony_cinextm192 nextminus  -9.99999998E+999  -> -9.99999999E+999
1447db96d56Sopenharmony_cinextm193 nextminus  -9.99999999E+999  -> -Infinity
1457db96d56Sopenharmony_ci
1467db96d56Sopenharmony_ci-- Null tests
1477db96d56Sopenharmony_cinextm900 nextminus  # -> NaN Invalid_operation
1487db96d56Sopenharmony_ci
149