Regression test driver now can read different expected output files
[cacao.git] / tests / regression / fptest.output.ojdk
diff --git a/tests/regression/fptest.output.ojdk b/tests/regression/fptest.output.ojdk
new file mode 100644 (file)
index 0000000..4abb18c
--- /dev/null
@@ -0,0 +1,951 @@
+---------------------------- tests NaNs and Infs -------------------
+   0.    ------------------- print NaNs and Infs
+   1.    NaNQ float:  NaN
+   2.    +INF float:  Infinity
+   3.    -INF float:  -Infinity
+   4.    NaNQ double: NaN
+   5.    +INF double: Infinity
+   6.    -INF double: -Infinity
+   7.    ------------------- test zero division
+   8.    0 / 0 = NaNQ float:  NaN
+   9.    + / 0 = +INF float:  Infinity
+  10.    - / 0 = -INF float:  -Infinity
+  11.    0 / 0 = NaNQ double: NaN
+  12.    + / 0 = +INF double: Infinity
+  13.    - / 0 = -INF double: -Infinity
+  14.    ------------------- test conversions
+  15.    convert NaNQ (NaN,NaN) to int:    0
+  16.    convert NaNQ (NaN,NaN) to int:    0
+  17.    convert NaNQ (NaN,NaN) to long:   0
+  18.    convert NaNQ (NaN,NaN) to long:   0
+  19.    convert +INF (Infinity,Infinity) to int:    2147483647
+  20.    convert +INF (Infinity,Infinity) to int:    2147483647
+  21.    convert +INF (Infinity,Infinity) to long:   9223372036854775807
+  22.    convert +INF (Infinity,Infinity) to long:   9223372036854775807
+  23.    convert -INF (-Infinity,-Infinity) to int:    -2147483648
+  24.    convert -INF (-Infinity,-Infinity) to int:    -2147483648
+  25.    convert -INF (-Infinity,-Infinity) to long:   -9223372036854775808
+  26.    convert -INF (-Infinity,-Infinity) to long:   -9223372036854775808
+  27.    convert  MAX (3.4028235E38,1.7976931348623157E308) to int:    2147483647
+  28.    convert  MAX (3.4028235E38,1.7976931348623157E308) to int:    2147483647
+  29.    convert  MAX (3.4028235E38,1.7976931348623157E308) to long:   9223372036854775807
+  30.    convert  MAX (3.4028235E38,1.7976931348623157E308) to long:   9223372036854775807
+  31.    convert  MIN (1.4E-45,4.9E-324) to int:    0
+  32.    convert  MIN (1.4E-45,4.9E-324) to int:    0
+  33.    convert  MIN (1.4E-45,4.9E-324) to long:   0
+  34.    convert  MIN (1.4E-45,4.9E-324) to long:   0
+  35.    convert MAXINT-1 (2.14748365E9,2.147483646E9) to int:    2147483647
+  36.    convert MAXINT-1 (2.14748365E9,2.147483646E9) to int:    2147483646
+  37.    convert MAXINT-1 (2.14748365E9,2.147483646E9) to long:   2147483648
+  38.    convert MAXINT-1 (2.14748365E9,2.147483646E9) to long:   2147483646
+  39.    convert MAXINT+0 (2.14748365E9,2.147483647E9) to int:    2147483647
+  40.    convert MAXINT+0 (2.14748365E9,2.147483647E9) to int:    2147483647
+  41.    convert MAXINT+0 (2.14748365E9,2.147483647E9) to long:   2147483648
+  42.    convert MAXINT+0 (2.14748365E9,2.147483647E9) to long:   2147483647
+  43.    convert MAXINT+1 (2.14748365E9,2.147483648E9) to int:    2147483647
+  44.    convert MAXINT+1 (2.14748365E9,2.147483648E9) to int:    2147483647
+  45.    convert MAXINT+1 (2.14748365E9,2.147483648E9) to long:   2147483648
+  46.    convert MAXINT+1 (2.14748365E9,2.147483648E9) to long:   2147483648
+  47.    convert -MAXINT+1 (-2.14748365E9,-2.147483647E9) to int:    -2147483648
+  48.    convert -MAXINT+1 (-2.14748365E9,-2.147483647E9) to int:    -2147483647
+  49.    convert -MAXINT+1 (-2.14748365E9,-2.147483647E9) to long:   -2147483648
+  50.    convert -MAXINT+1 (-2.14748365E9,-2.147483647E9) to long:   -2147483647
+  51.    convert -MAXINT+0 (-2.14748365E9,-2.147483648E9) to int:    -2147483648
+  52.    convert -MAXINT+0 (-2.14748365E9,-2.147483648E9) to int:    -2147483648
+  53.    convert -MAXINT+0 (-2.14748365E9,-2.147483648E9) to long:   -2147483648
+  54.    convert -MAXINT+0 (-2.14748365E9,-2.147483648E9) to long:   -2147483648
+  55.    convert -MAXINT-1 (-2.14748365E9,-2.147483649E9) to int:    -2147483648
+  56.    convert -MAXINT-1 (-2.14748365E9,-2.147483649E9) to int:    -2147483648
+  57.    convert -MAXINT-1 (-2.14748365E9,-2.147483649E9) to long:   -2147483648
+  58.    convert -MAXINT-1 (-2.14748365E9,-2.147483649E9) to long:   -2147483649
+  59.    convert MAXLNG-1 (9.223372E18,9.223372036854776E18) to int:    2147483647
+  60.    convert MAXLNG-1 (9.223372E18,9.223372036854776E18) to int:    2147483647
+  61.    convert MAXLNG-1 (9.223372E18,9.223372036854776E18) to long:   9223372036854775807
+  62.    convert MAXLNG-1 (9.223372E18,9.223372036854776E18) to long:   9223372036854775807
+  63.    convert MAXLNG+0 (9.223372E18,9.223372036854776E18) to int:    2147483647
+  64.    convert MAXLNG+0 (9.223372E18,9.223372036854776E18) to int:    2147483647
+  65.    convert MAXLNG+0 (9.223372E18,9.223372036854776E18) to long:   9223372036854775807
+  66.    convert MAXLNG+0 (9.223372E18,9.223372036854776E18) to long:   9223372036854775807
+  67.    convert MAXLNG+1 (9.223372E18,9.223372036854776E18) to int:    2147483647
+  68.    convert MAXLNG+1 (9.223372E18,9.223372036854776E18) to int:    2147483647
+  69.    convert MAXLNG+1 (9.223372E18,9.223372036854776E18) to long:   9223372036854775807
+  70.    convert MAXLNG+1 (9.223372E18,9.223372036854776E18) to long:   9223372036854775807
+  71.    convert -MAXLNG+1 (-9.223372E18,-9.223372036854776E18) to int:    -2147483648
+  72.    convert -MAXLNG+1 (-9.223372E18,-9.223372036854776E18) to int:    -2147483648
+  73.    convert -MAXLNG+1 (-9.223372E18,-9.223372036854776E18) to long:   -9223372036854775808
+  74.    convert -MAXLNG+1 (-9.223372E18,-9.223372036854776E18) to long:   -9223372036854775808
+  75.    convert -MAXLNG+0 (-9.223372E18,-9.223372036854776E18) to int:    -2147483648
+  76.    convert -MAXLNG+0 (-9.223372E18,-9.223372036854776E18) to int:    -2147483648
+  77.    convert -MAXLNG+0 (-9.223372E18,-9.223372036854776E18) to long:   -9223372036854775808
+  78.    convert -MAXLNG+0 (-9.223372E18,-9.223372036854776E18) to long:   -9223372036854775808
+  79.    convert -MAXLNG-1 (-9.223372E18,-9.223372036854776E18) to int:    -2147483648
+  80.    convert -MAXLNG-1 (-9.223372E18,-9.223372036854776E18) to int:    -2147483648
+  81.    convert -MAXLNG-1 (-9.223372E18,-9.223372036854776E18) to long:   -9223372036854775808
+  82.    convert -MAXLNG-1 (-9.223372E18,-9.223372036854776E18) to long:   -9223372036854775808
+  83.    ------------------- test NaNQ op value
+  84.    NaNQ + -5.0 = float:  NaN
+  85.    NaNQ - -5.0 = float:  NaN
+  86.    NaNQ * -5.0 = float:  NaN
+  87.    NaNQ / -5.0 = float:  NaN
+  88.    NaNQ % -5.0 = float:  NaN
+  89.    NaNQ + -5.0 = double: NaN
+  90.    NaNQ - -5.0 = double: NaN
+  91.    NaNQ * -5.0 = double: NaN
+  92.    NaNQ / -5.0 = double: NaN
+  93.    NaNQ % -5.0 = double: NaN
+  94.     (NaNQ == -5.0) = float: false
+  95.     (NaNQ != -5.0) = float: true
+  96.     (NaNQ <  -5.0) = float: false
+  97.     (NaNQ <= -5.0) = float: false
+  98.     (NaNQ >  -5.0) = float: false
+  99.     (NaNQ >= -5.0) = float: false
+ 100.    !(NaNQ == -5.0) = float: true
+ 101.    !(NaNQ != -5.0) = float: false
+ 102.    !(NaNQ <  -5.0) = float: true
+ 103.    !(NaNQ <= -5.0) = float: true
+ 104.    !(NaNQ >  -5.0) = float: true
+ 105.    !(NaNQ >= -5.0) = float: true
+ 106.     (NaNQ == -5.0) = double: false
+ 107.     (NaNQ != -5.0) = double: true
+ 108.     (NaNQ <  -5.0) = double: false
+ 109.     (NaNQ <= -5.0) = double: false
+ 110.     (NaNQ >  -5.0) = double: false
+ 111.     (NaNQ >= -5.0) = double: false
+ 112.    !(NaNQ == -5.0) = double: true
+ 113.    !(NaNQ != -5.0) = double: false
+ 114.    !(NaNQ <  -5.0) = double: true
+ 115.    !(NaNQ <= -5.0) = double: true
+ 116.    !(NaNQ >  -5.0) = double: true
+ 117.    !(NaNQ >= -5.0) = double: true
+ 118.    NaNQ + -0.0 = float:  NaN
+ 119.    NaNQ - -0.0 = float:  NaN
+ 120.    NaNQ * -0.0 = float:  NaN
+ 121.    NaNQ / -0.0 = float:  NaN
+ 122.    NaNQ % -0.0 = float:  NaN
+ 123.    NaNQ + -0.0 = double: NaN
+ 124.    NaNQ - -0.0 = double: NaN
+ 125.    NaNQ * -0.0 = double: NaN
+ 126.    NaNQ / -0.0 = double: NaN
+ 127.    NaNQ % -0.0 = double: NaN
+ 128.     (NaNQ == -0.0) = float: false
+ 129.     (NaNQ != -0.0) = float: true
+ 130.     (NaNQ <  -0.0) = float: false
+ 131.     (NaNQ <= -0.0) = float: false
+ 132.     (NaNQ >  -0.0) = float: false
+ 133.     (NaNQ >= -0.0) = float: false
+ 134.    !(NaNQ == -0.0) = float: true
+ 135.    !(NaNQ != -0.0) = float: false
+ 136.    !(NaNQ <  -0.0) = float: true
+ 137.    !(NaNQ <= -0.0) = float: true
+ 138.    !(NaNQ >  -0.0) = float: true
+ 139.    !(NaNQ >= -0.0) = float: true
+ 140.     (NaNQ == -0.0) = double: false
+ 141.     (NaNQ != -0.0) = double: true
+ 142.     (NaNQ <  -0.0) = double: false
+ 143.     (NaNQ <= -0.0) = double: false
+ 144.     (NaNQ >  -0.0) = double: false
+ 145.     (NaNQ >= -0.0) = double: false
+ 146.    !(NaNQ == -0.0) = double: true
+ 147.    !(NaNQ != -0.0) = double: false
+ 148.    !(NaNQ <  -0.0) = double: true
+ 149.    !(NaNQ <= -0.0) = double: true
+ 150.    !(NaNQ >  -0.0) = double: true
+ 151.    !(NaNQ >= -0.0) = double: true
+ 152.    NaNQ + 0.0 = float:  NaN
+ 153.    NaNQ - 0.0 = float:  NaN
+ 154.    NaNQ * 0.0 = float:  NaN
+ 155.    NaNQ / 0.0 = float:  NaN
+ 156.    NaNQ % 0.0 = float:  NaN
+ 157.    NaNQ + 0.0 = double: NaN
+ 158.    NaNQ - 0.0 = double: NaN
+ 159.    NaNQ * 0.0 = double: NaN
+ 160.    NaNQ / 0.0 = double: NaN
+ 161.    NaNQ % 0.0 = double: NaN
+ 162.     (NaNQ == 0.0) = float: false
+ 163.     (NaNQ != 0.0) = float: true
+ 164.     (NaNQ <  0.0) = float: false
+ 165.     (NaNQ <= 0.0) = float: false
+ 166.     (NaNQ >  0.0) = float: false
+ 167.     (NaNQ >= 0.0) = float: false
+ 168.    !(NaNQ == 0.0) = float: true
+ 169.    !(NaNQ != 0.0) = float: false
+ 170.    !(NaNQ <  0.0) = float: true
+ 171.    !(NaNQ <= 0.0) = float: true
+ 172.    !(NaNQ >  0.0) = float: true
+ 173.    !(NaNQ >= 0.0) = float: true
+ 174.     (NaNQ == 0.0) = double: false
+ 175.     (NaNQ != 0.0) = double: true
+ 176.     (NaNQ <  0.0) = double: false
+ 177.     (NaNQ <= 0.0) = double: false
+ 178.     (NaNQ >  0.0) = double: false
+ 179.     (NaNQ >= 0.0) = double: false
+ 180.    !(NaNQ == 0.0) = double: true
+ 181.    !(NaNQ != 0.0) = double: false
+ 182.    !(NaNQ <  0.0) = double: true
+ 183.    !(NaNQ <= 0.0) = double: true
+ 184.    !(NaNQ >  0.0) = double: true
+ 185.    !(NaNQ >= 0.0) = double: true
+ 186.    NaNQ + 5.0 = float:  NaN
+ 187.    NaNQ - 5.0 = float:  NaN
+ 188.    NaNQ * 5.0 = float:  NaN
+ 189.    NaNQ / 5.0 = float:  NaN
+ 190.    NaNQ % 5.0 = float:  NaN
+ 191.    NaNQ + 5.0 = double: NaN
+ 192.    NaNQ - 5.0 = double: NaN
+ 193.    NaNQ * 5.0 = double: NaN
+ 194.    NaNQ / 5.0 = double: NaN
+ 195.    NaNQ % 5.0 = double: NaN
+ 196.     (NaNQ == 5.0) = float: false
+ 197.     (NaNQ != 5.0) = float: true
+ 198.     (NaNQ <  5.0) = float: false
+ 199.     (NaNQ <= 5.0) = float: false
+ 200.     (NaNQ >  5.0) = float: false
+ 201.     (NaNQ >= 5.0) = float: false
+ 202.    !(NaNQ == 5.0) = float: true
+ 203.    !(NaNQ != 5.0) = float: false
+ 204.    !(NaNQ <  5.0) = float: true
+ 205.    !(NaNQ <= 5.0) = float: true
+ 206.    !(NaNQ >  5.0) = float: true
+ 207.    !(NaNQ >= 5.0) = float: true
+ 208.     (NaNQ == 5.0) = double: false
+ 209.     (NaNQ != 5.0) = double: true
+ 210.     (NaNQ <  5.0) = double: false
+ 211.     (NaNQ <= 5.0) = double: false
+ 212.     (NaNQ >  5.0) = double: false
+ 213.     (NaNQ >= 5.0) = double: false
+ 214.    !(NaNQ == 5.0) = double: true
+ 215.    !(NaNQ != 5.0) = double: false
+ 216.    !(NaNQ <  5.0) = double: true
+ 217.    !(NaNQ <= 5.0) = double: true
+ 218.    !(NaNQ >  5.0) = double: true
+ 219.    !(NaNQ >= 5.0) = double: true
+ 220.    ------------------- test value op NaNQ
+ 221.    -5.0 + NaNQ = float:  NaN
+ 222.    -5.0 - NaNQ = float:  NaN
+ 223.    -5.0 * NaNQ = float:  NaN
+ 224.    -5.0 / NaNQ = float:  NaN
+ 225.    -5.0 % NaNQ = float:  NaN
+ 226.    -5.0 + NaNQ = double: NaN
+ 227.    -5.0 - NaNQ = double: NaN
+ 228.    -5.0 * NaNQ = double: NaN
+ 229.    -5.0 / NaNQ = double: NaN
+ 230.    -5.0 % NaNQ = double: NaN
+ 231.     (-5.0 == NaNQ) = float: false
+ 232.     (-5.0 != NaNQ) = float: true
+ 233.     (-5.0 <  NaNQ) = float: false
+ 234.     (-5.0 <= NaNQ) = float: false
+ 235.     (-5.0 >  NaNQ) = float: false
+ 236.     (-5.0 >= NaNQ) = float: false
+ 237.    !(-5.0 == NaNQ) = float: true
+ 238.    !(-5.0 != NaNQ) = float: false
+ 239.    !(-5.0 <  NaNQ) = float: true
+ 240.    !(-5.0 <= NaNQ) = float: true
+ 241.    !(-5.0 >  NaNQ) = float: true
+ 242.    !(-5.0 >= NaNQ) = float: true
+ 243.     (-5.0 == NaNQ) = double: false
+ 244.     (-5.0 != NaNQ) = double: true
+ 245.     (-5.0 <  NaNQ) = double: false
+ 246.     (-5.0 <= NaNQ) = double: false
+ 247.     (-5.0 >  NaNQ) = double: false
+ 248.     (-5.0 >= NaNQ) = double: false
+ 249.    !(-5.0 == NaNQ) = double: true
+ 250.    !(-5.0 != NaNQ) = double: false
+ 251.    !(-5.0 <  NaNQ) = double: true
+ 252.    !(-5.0 <= NaNQ) = double: true
+ 253.    !(-5.0 >  NaNQ) = double: true
+ 254.    !(-5.0 >= NaNQ) = double: true
+ 255.    -0.0 + NaNQ = float:  NaN
+ 256.    -0.0 - NaNQ = float:  NaN
+ 257.    -0.0 * NaNQ = float:  NaN
+ 258.    -0.0 / NaNQ = float:  NaN
+ 259.    -0.0 % NaNQ = float:  NaN
+ 260.    -0.0 + NaNQ = double: NaN
+ 261.    -0.0 - NaNQ = double: NaN
+ 262.    -0.0 * NaNQ = double: NaN
+ 263.    -0.0 / NaNQ = double: NaN
+ 264.    -0.0 % NaNQ = double: NaN
+ 265.     (-0.0 == NaNQ) = float: false
+ 266.     (-0.0 != NaNQ) = float: true
+ 267.     (-0.0 <  NaNQ) = float: false
+ 268.     (-0.0 <= NaNQ) = float: false
+ 269.     (-0.0 >  NaNQ) = float: false
+ 270.     (-0.0 >= NaNQ) = float: false
+ 271.    !(-0.0 == NaNQ) = float: true
+ 272.    !(-0.0 != NaNQ) = float: false
+ 273.    !(-0.0 <  NaNQ) = float: true
+ 274.    !(-0.0 <= NaNQ) = float: true
+ 275.    !(-0.0 >  NaNQ) = float: true
+ 276.    !(-0.0 >= NaNQ) = float: true
+ 277.     (-0.0 == NaNQ) = double: false
+ 278.     (-0.0 != NaNQ) = double: true
+ 279.     (-0.0 <  NaNQ) = double: false
+ 280.     (-0.0 <= NaNQ) = double: false
+ 281.     (-0.0 >  NaNQ) = double: false
+ 282.     (-0.0 >= NaNQ) = double: false
+ 283.    !(-0.0 == NaNQ) = double: true
+ 284.    !(-0.0 != NaNQ) = double: false
+ 285.    !(-0.0 <  NaNQ) = double: true
+ 286.    !(-0.0 <= NaNQ) = double: true
+ 287.    !(-0.0 >  NaNQ) = double: true
+ 288.    !(-0.0 >= NaNQ) = double: true
+ 289.    0.0 + NaNQ = float:  NaN
+ 290.    0.0 - NaNQ = float:  NaN
+ 291.    0.0 * NaNQ = float:  NaN
+ 292.    0.0 / NaNQ = float:  NaN
+ 293.    0.0 % NaNQ = float:  NaN
+ 294.    0.0 + NaNQ = double: NaN
+ 295.    0.0 - NaNQ = double: NaN
+ 296.    0.0 * NaNQ = double: NaN
+ 297.    0.0 / NaNQ = double: NaN
+ 298.    0.0 % NaNQ = double: NaN
+ 299.     (0.0 == NaNQ) = float: false
+ 300.     (0.0 != NaNQ) = float: true
+ 301.     (0.0 <  NaNQ) = float: false
+ 302.     (0.0 <= NaNQ) = float: false
+ 303.     (0.0 >  NaNQ) = float: false
+ 304.     (0.0 >= NaNQ) = float: false
+ 305.    !(0.0 == NaNQ) = float: true
+ 306.    !(0.0 != NaNQ) = float: false
+ 307.    !(0.0 <  NaNQ) = float: true
+ 308.    !(0.0 <= NaNQ) = float: true
+ 309.    !(0.0 >  NaNQ) = float: true
+ 310.    !(0.0 >= NaNQ) = float: true
+ 311.     (0.0 == NaNQ) = double: false
+ 312.     (0.0 != NaNQ) = double: true
+ 313.     (0.0 <  NaNQ) = double: false
+ 314.     (0.0 <= NaNQ) = double: false
+ 315.     (0.0 >  NaNQ) = double: false
+ 316.     (0.0 >= NaNQ) = double: false
+ 317.    !(0.0 == NaNQ) = double: true
+ 318.    !(0.0 != NaNQ) = double: false
+ 319.    !(0.0 <  NaNQ) = double: true
+ 320.    !(0.0 <= NaNQ) = double: true
+ 321.    !(0.0 >  NaNQ) = double: true
+ 322.    !(0.0 >= NaNQ) = double: true
+ 323.    5.0 + NaNQ = float:  NaN
+ 324.    5.0 - NaNQ = float:  NaN
+ 325.    5.0 * NaNQ = float:  NaN
+ 326.    5.0 / NaNQ = float:  NaN
+ 327.    5.0 % NaNQ = float:  NaN
+ 328.    5.0 + NaNQ = double: NaN
+ 329.    5.0 - NaNQ = double: NaN
+ 330.    5.0 * NaNQ = double: NaN
+ 331.    5.0 / NaNQ = double: NaN
+ 332.    5.0 % NaNQ = double: NaN
+ 333.     (5.0 == NaNQ) = float: false
+ 334.     (5.0 != NaNQ) = float: true
+ 335.     (5.0 <  NaNQ) = float: false
+ 336.     (5.0 <= NaNQ) = float: false
+ 337.     (5.0 >  NaNQ) = float: false
+ 338.     (5.0 >= NaNQ) = float: false
+ 339.    !(5.0 == NaNQ) = float: true
+ 340.    !(5.0 != NaNQ) = float: false
+ 341.    !(5.0 <  NaNQ) = float: true
+ 342.    !(5.0 <= NaNQ) = float: true
+ 343.    !(5.0 >  NaNQ) = float: true
+ 344.    !(5.0 >= NaNQ) = float: true
+ 345.     (5.0 == NaNQ) = double: false
+ 346.     (5.0 != NaNQ) = double: true
+ 347.     (5.0 <  NaNQ) = double: false
+ 348.     (5.0 <= NaNQ) = double: false
+ 349.     (5.0 >  NaNQ) = double: false
+ 350.     (5.0 >= NaNQ) = double: false
+ 351.    !(5.0 == NaNQ) = double: true
+ 352.    !(5.0 != NaNQ) = double: false
+ 353.    !(5.0 <  NaNQ) = double: true
+ 354.    !(5.0 <= NaNQ) = double: true
+ 355.    !(5.0 >  NaNQ) = double: true
+ 356.    !(5.0 >= NaNQ) = double: true
+ 357.    ------------------- test +INF op value
+ 358.    +INF + -5.0 = float:  Infinity
+ 359.    +INF - -5.0 = float:  Infinity
+ 360.    +INF * -5.0 = float:  -Infinity
+ 361.    +INF / -5.0 = float:  -Infinity
+ 362.    +INF % -5.0 = float:  NaN
+ 363.    +INF + -5.0 = double: Infinity
+ 364.    +INF - -5.0 = double: Infinity
+ 365.    +INF * -5.0 = double: -Infinity
+ 366.    +INF / -5.0 = double: -Infinity
+ 367.    +INF % -5.0 = double: NaN
+ 368.     (+INF == -5.0) = float: false
+ 369.     (+INF != -5.0) = float: true
+ 370.     (+INF <  -5.0) = float: false
+ 371.     (+INF <= -5.0) = float: false
+ 372.     (+INF >  -5.0) = float: true
+ 373.     (+INF >= -5.0) = float: true
+ 374.    !(+INF == -5.0) = float: true
+ 375.    !(+INF != -5.0) = float: false
+ 376.    !(+INF <  -5.0) = float: true
+ 377.    !(+INF <= -5.0) = float: true
+ 378.    !(+INF >  -5.0) = float: false
+ 379.    !(+INF >= -5.0) = float: false
+ 380.     (+INF == -5.0) = double: false
+ 381.     (+INF != -5.0) = double: true
+ 382.     (+INF <  -5.0) = double: false
+ 383.     (+INF <= -5.0) = double: false
+ 384.     (+INF >  -5.0) = double: true
+ 385.     (+INF >= -5.0) = double: true
+ 386.    !(+INF == -5.0) = double: true
+ 387.    !(+INF != -5.0) = double: false
+ 388.    !(+INF <  -5.0) = double: true
+ 389.    !(+INF <= -5.0) = double: true
+ 390.    !(+INF >  -5.0) = double: false
+ 391.    !(+INF >= -5.0) = double: false
+ 392.    +INF + -0.0 = float:  Infinity
+ 393.    +INF - -0.0 = float:  Infinity
+ 394.    +INF * -0.0 = float:  NaN
+ 395.    +INF / -0.0 = float:  -Infinity
+ 396.    +INF % -0.0 = float:  NaN
+ 397.    +INF + -0.0 = double: Infinity
+ 398.    +INF - -0.0 = double: Infinity
+ 399.    +INF * -0.0 = double: NaN
+ 400.    +INF / -0.0 = double: -Infinity
+ 401.    +INF % -0.0 = double: NaN
+ 402.     (+INF == -0.0) = float: false
+ 403.     (+INF != -0.0) = float: true
+ 404.     (+INF <  -0.0) = float: false
+ 405.     (+INF <= -0.0) = float: false
+ 406.     (+INF >  -0.0) = float: true
+ 407.     (+INF >= -0.0) = float: true
+ 408.    !(+INF == -0.0) = float: true
+ 409.    !(+INF != -0.0) = float: false
+ 410.    !(+INF <  -0.0) = float: true
+ 411.    !(+INF <= -0.0) = float: true
+ 412.    !(+INF >  -0.0) = float: false
+ 413.    !(+INF >= -0.0) = float: false
+ 414.     (+INF == -0.0) = double: false
+ 415.     (+INF != -0.0) = double: true
+ 416.     (+INF <  -0.0) = double: false
+ 417.     (+INF <= -0.0) = double: false
+ 418.     (+INF >  -0.0) = double: true
+ 419.     (+INF >= -0.0) = double: true
+ 420.    !(+INF == -0.0) = double: true
+ 421.    !(+INF != -0.0) = double: false
+ 422.    !(+INF <  -0.0) = double: true
+ 423.    !(+INF <= -0.0) = double: true
+ 424.    !(+INF >  -0.0) = double: false
+ 425.    !(+INF >= -0.0) = double: false
+ 426.    +INF + 0.0 = float:  Infinity
+ 427.    +INF - 0.0 = float:  Infinity
+ 428.    +INF * 0.0 = float:  NaN
+ 429.    +INF / 0.0 = float:  Infinity
+ 430.    +INF % 0.0 = float:  NaN
+ 431.    +INF + 0.0 = double: Infinity
+ 432.    +INF - 0.0 = double: Infinity
+ 433.    +INF * 0.0 = double: NaN
+ 434.    +INF / 0.0 = double: Infinity
+ 435.    +INF % 0.0 = double: NaN
+ 436.     (+INF == 0.0) = float: false
+ 437.     (+INF != 0.0) = float: true
+ 438.     (+INF <  0.0) = float: false
+ 439.     (+INF <= 0.0) = float: false
+ 440.     (+INF >  0.0) = float: true
+ 441.     (+INF >= 0.0) = float: true
+ 442.    !(+INF == 0.0) = float: true
+ 443.    !(+INF != 0.0) = float: false
+ 444.    !(+INF <  0.0) = float: true
+ 445.    !(+INF <= 0.0) = float: true
+ 446.    !(+INF >  0.0) = float: false
+ 447.    !(+INF >= 0.0) = float: false
+ 448.     (+INF == 0.0) = double: false
+ 449.     (+INF != 0.0) = double: true
+ 450.     (+INF <  0.0) = double: false
+ 451.     (+INF <= 0.0) = double: false
+ 452.     (+INF >  0.0) = double: true
+ 453.     (+INF >= 0.0) = double: true
+ 454.    !(+INF == 0.0) = double: true
+ 455.    !(+INF != 0.0) = double: false
+ 456.    !(+INF <  0.0) = double: true
+ 457.    !(+INF <= 0.0) = double: true
+ 458.    !(+INF >  0.0) = double: false
+ 459.    !(+INF >= 0.0) = double: false
+ 460.    +INF + 5.0 = float:  Infinity
+ 461.    +INF - 5.0 = float:  Infinity
+ 462.    +INF * 5.0 = float:  Infinity
+ 463.    +INF / 5.0 = float:  Infinity
+ 464.    +INF % 5.0 = float:  NaN
+ 465.    +INF + 5.0 = double: Infinity
+ 466.    +INF - 5.0 = double: Infinity
+ 467.    +INF * 5.0 = double: Infinity
+ 468.    +INF / 5.0 = double: Infinity
+ 469.    +INF % 5.0 = double: NaN
+ 470.     (+INF == 5.0) = float: false
+ 471.     (+INF != 5.0) = float: true
+ 472.     (+INF <  5.0) = float: false
+ 473.     (+INF <= 5.0) = float: false
+ 474.     (+INF >  5.0) = float: true
+ 475.     (+INF >= 5.0) = float: true
+ 476.    !(+INF == 5.0) = float: true
+ 477.    !(+INF != 5.0) = float: false
+ 478.    !(+INF <  5.0) = float: true
+ 479.    !(+INF <= 5.0) = float: true
+ 480.    !(+INF >  5.0) = float: false
+ 481.    !(+INF >= 5.0) = float: false
+ 482.     (+INF == 5.0) = double: false
+ 483.     (+INF != 5.0) = double: true
+ 484.     (+INF <  5.0) = double: false
+ 485.     (+INF <= 5.0) = double: false
+ 486.     (+INF >  5.0) = double: true
+ 487.     (+INF >= 5.0) = double: true
+ 488.    !(+INF == 5.0) = double: true
+ 489.    !(+INF != 5.0) = double: false
+ 490.    !(+INF <  5.0) = double: true
+ 491.    !(+INF <= 5.0) = double: true
+ 492.    !(+INF >  5.0) = double: false
+ 493.    !(+INF >= 5.0) = double: false
+ 494.    ------------------- test +INF op value
+ 495.    -5.0 + +INF = float:  Infinity
+ 496.    -5.0 - +INF = float:  -Infinity
+ 497.    -5.0 * +INF = float:  -Infinity
+ 498.    -5.0 / +INF = float:  -0.0
+ 499.    -5.0 % +INF = float:  -5.0
+ 500.    -5.0 + +INF = double: Infinity
+ 501.    -5.0 - +INF = double: -Infinity
+ 502.    -5.0 * +INF = double: -Infinity
+ 503.    -5.0 / +INF = double: -0.0
+ 504.    -5.0 % +INF = double: -5.0
+ 505.     (-5.0 == +INF) = float: false
+ 506.     (-5.0 != +INF) = float: true
+ 507.     (-5.0 <  +INF) = float: true
+ 508.     (-5.0 <= +INF) = float: true
+ 509.     (-5.0 >  +INF) = float: false
+ 510.     (-5.0 >= +INF) = float: false
+ 511.    !(-5.0 == +INF) = float: true
+ 512.    !(-5.0 != +INF) = float: false
+ 513.    !(-5.0 <  +INF) = float: false
+ 514.    !(-5.0 <= +INF) = float: false
+ 515.    !(-5.0 >  +INF) = float: true
+ 516.    !(-5.0 >= +INF) = float: true
+ 517.     (-5.0 == +INF) = double: false
+ 518.     (-5.0 != +INF) = double: true
+ 519.     (-5.0 <  +INF) = double: true
+ 520.     (-5.0 <= +INF) = double: true
+ 521.     (-5.0 >  +INF) = double: false
+ 522.     (-5.0 >= +INF) = double: false
+ 523.    !(-5.0 == +INF) = double: true
+ 524.    !(-5.0 != +INF) = double: false
+ 525.    !(-5.0 <  +INF) = double: false
+ 526.    !(-5.0 <= +INF) = double: false
+ 527.    !(-5.0 >  +INF) = double: true
+ 528.    !(-5.0 >= +INF) = double: true
+ 529.    -0.0 + +INF = float:  Infinity
+ 530.    -0.0 - +INF = float:  -Infinity
+ 531.    -0.0 * +INF = float:  NaN
+ 532.    -0.0 / +INF = float:  -0.0
+ 533.    -0.0 % +INF = float:  -0.0
+ 534.    -0.0 + +INF = double: Infinity
+ 535.    -0.0 - +INF = double: -Infinity
+ 536.    -0.0 * +INF = double: NaN
+ 537.    -0.0 / +INF = double: -0.0
+ 538.    -0.0 % +INF = double: -0.0
+ 539.     (-0.0 == +INF) = float: false
+ 540.     (-0.0 != +INF) = float: true
+ 541.     (-0.0 <  +INF) = float: true
+ 542.     (-0.0 <= +INF) = float: true
+ 543.     (-0.0 >  +INF) = float: false
+ 544.     (-0.0 >= +INF) = float: false
+ 545.    !(-0.0 == +INF) = float: true
+ 546.    !(-0.0 != +INF) = float: false
+ 547.    !(-0.0 <  +INF) = float: false
+ 548.    !(-0.0 <= +INF) = float: false
+ 549.    !(-0.0 >  +INF) = float: true
+ 550.    !(-0.0 >= +INF) = float: true
+ 551.     (-0.0 == +INF) = double: false
+ 552.     (-0.0 != +INF) = double: true
+ 553.     (-0.0 <  +INF) = double: true
+ 554.     (-0.0 <= +INF) = double: true
+ 555.     (-0.0 >  +INF) = double: false
+ 556.     (-0.0 >= +INF) = double: false
+ 557.    !(-0.0 == +INF) = double: true
+ 558.    !(-0.0 != +INF) = double: false
+ 559.    !(-0.0 <  +INF) = double: false
+ 560.    !(-0.0 <= +INF) = double: false
+ 561.    !(-0.0 >  +INF) = double: true
+ 562.    !(-0.0 >= +INF) = double: true
+ 563.    0.0 + +INF = float:  Infinity
+ 564.    0.0 - +INF = float:  -Infinity
+ 565.    0.0 * +INF = float:  NaN
+ 566.    0.0 / +INF = float:  0.0
+ 567.    0.0 % +INF = float:  0.0
+ 568.    0.0 + +INF = double: Infinity
+ 569.    0.0 - +INF = double: -Infinity
+ 570.    0.0 * +INF = double: NaN
+ 571.    0.0 / +INF = double: 0.0
+ 572.    0.0 % +INF = double: 0.0
+ 573.     (0.0 == +INF) = float: false
+ 574.     (0.0 != +INF) = float: true
+ 575.     (0.0 <  +INF) = float: true
+ 576.     (0.0 <= +INF) = float: true
+ 577.     (0.0 >  +INF) = float: false
+ 578.     (0.0 >= +INF) = float: false
+ 579.    !(0.0 == +INF) = float: true
+ 580.    !(0.0 != +INF) = float: false
+ 581.    !(0.0 <  +INF) = float: false
+ 582.    !(0.0 <= +INF) = float: false
+ 583.    !(0.0 >  +INF) = float: true
+ 584.    !(0.0 >= +INF) = float: true
+ 585.     (0.0 == +INF) = double: false
+ 586.     (0.0 != +INF) = double: true
+ 587.     (0.0 <  +INF) = double: true
+ 588.     (0.0 <= +INF) = double: true
+ 589.     (0.0 >  +INF) = double: false
+ 590.     (0.0 >= +INF) = double: false
+ 591.    !(0.0 == +INF) = double: true
+ 592.    !(0.0 != +INF) = double: false
+ 593.    !(0.0 <  +INF) = double: false
+ 594.    !(0.0 <= +INF) = double: false
+ 595.    !(0.0 >  +INF) = double: true
+ 596.    !(0.0 >= +INF) = double: true
+ 597.    5.0 + +INF = float:  Infinity
+ 598.    5.0 - +INF = float:  -Infinity
+ 599.    5.0 * +INF = float:  Infinity
+ 600.    5.0 / +INF = float:  0.0
+ 601.    5.0 % +INF = float:  5.0
+ 602.    5.0 + +INF = double: Infinity
+ 603.    5.0 - +INF = double: -Infinity
+ 604.    5.0 * +INF = double: Infinity
+ 605.    5.0 / +INF = double: 0.0
+ 606.    5.0 % +INF = double: 5.0
+ 607.     (5.0 == +INF) = float: false
+ 608.     (5.0 != +INF) = float: true
+ 609.     (5.0 <  +INF) = float: true
+ 610.     (5.0 <= +INF) = float: true
+ 611.     (5.0 >  +INF) = float: false
+ 612.     (5.0 >= +INF) = float: false
+ 613.    !(5.0 == +INF) = float: true
+ 614.    !(5.0 != +INF) = float: false
+ 615.    !(5.0 <  +INF) = float: false
+ 616.    !(5.0 <= +INF) = float: false
+ 617.    !(5.0 >  +INF) = float: true
+ 618.    !(5.0 >= +INF) = float: true
+ 619.     (5.0 == +INF) = double: false
+ 620.     (5.0 != +INF) = double: true
+ 621.     (5.0 <  +INF) = double: true
+ 622.     (5.0 <= +INF) = double: true
+ 623.     (5.0 >  +INF) = double: false
+ 624.     (5.0 >= +INF) = double: false
+ 625.    !(5.0 == +INF) = double: true
+ 626.    !(5.0 != +INF) = double: false
+ 627.    !(5.0 <  +INF) = double: false
+ 628.    !(5.0 <= +INF) = double: false
+ 629.    !(5.0 >  +INF) = double: true
+ 630.    !(5.0 >= +INF) = double: true
+ 631.    ------------------- test -INF op value
+ 632.    -INF + -5.0 = float:  -Infinity
+ 633.    -INF - -5.0 = float:  -Infinity
+ 634.    -INF * -5.0 = float:  Infinity
+ 635.    -INF / -5.0 = float:  Infinity
+ 636.    -INF % -5.0 = float:  NaN
+ 637.    -INF + -5.0 = double: -Infinity
+ 638.    -INF - -5.0 = double: -Infinity
+ 639.    -INF * -5.0 = double: Infinity
+ 640.    -INF / -5.0 = double: Infinity
+ 641.    -INF % -5.0 = double: NaN
+ 642.     (-INF == -5.0) = float: false
+ 643.     (-INF != -5.0) = float: true
+ 644.     (-INF <  -5.0) = float: true
+ 645.     (-INF <= -5.0) = float: true
+ 646.     (-INF >  -5.0) = float: false
+ 647.     (-INF >= -5.0) = float: false
+ 648.    !(-INF == -5.0) = float: true
+ 649.    !(-INF != -5.0) = float: false
+ 650.    !(-INF <  -5.0) = float: false
+ 651.    !(-INF <= -5.0) = float: false
+ 652.    !(-INF >  -5.0) = float: true
+ 653.    !(-INF >= -5.0) = float: true
+ 654.     (-INF == -5.0) = double: false
+ 655.     (-INF != -5.0) = double: true
+ 656.     (-INF <  -5.0) = double: true
+ 657.     (-INF <= -5.0) = double: true
+ 658.     (-INF >  -5.0) = double: false
+ 659.     (-INF >= -5.0) = double: false
+ 660.    !(-INF == -5.0) = double: true
+ 661.    !(-INF != -5.0) = double: false
+ 662.    !(-INF <  -5.0) = double: false
+ 663.    !(-INF <= -5.0) = double: false
+ 664.    !(-INF >  -5.0) = double: true
+ 665.    !(-INF >= -5.0) = double: true
+ 666.    -INF + -0.0 = float:  -Infinity
+ 667.    -INF - -0.0 = float:  -Infinity
+ 668.    -INF * -0.0 = float:  NaN
+ 669.    -INF / -0.0 = float:  Infinity
+ 670.    -INF % -0.0 = float:  NaN
+ 671.    -INF + -0.0 = double: -Infinity
+ 672.    -INF - -0.0 = double: -Infinity
+ 673.    -INF * -0.0 = double: NaN
+ 674.    -INF / -0.0 = double: Infinity
+ 675.    -INF % -0.0 = double: NaN
+ 676.     (-INF == -0.0) = float: false
+ 677.     (-INF != -0.0) = float: true
+ 678.     (-INF <  -0.0) = float: true
+ 679.     (-INF <= -0.0) = float: true
+ 680.     (-INF >  -0.0) = float: false
+ 681.     (-INF >= -0.0) = float: false
+ 682.    !(-INF == -0.0) = float: true
+ 683.    !(-INF != -0.0) = float: false
+ 684.    !(-INF <  -0.0) = float: false
+ 685.    !(-INF <= -0.0) = float: false
+ 686.    !(-INF >  -0.0) = float: true
+ 687.    !(-INF >= -0.0) = float: true
+ 688.     (-INF == -0.0) = double: false
+ 689.     (-INF != -0.0) = double: true
+ 690.     (-INF <  -0.0) = double: true
+ 691.     (-INF <= -0.0) = double: true
+ 692.     (-INF >  -0.0) = double: false
+ 693.     (-INF >= -0.0) = double: false
+ 694.    !(-INF == -0.0) = double: true
+ 695.    !(-INF != -0.0) = double: false
+ 696.    !(-INF <  -0.0) = double: false
+ 697.    !(-INF <= -0.0) = double: false
+ 698.    !(-INF >  -0.0) = double: true
+ 699.    !(-INF >= -0.0) = double: true
+ 700.    -INF + 0.0 = float:  -Infinity
+ 701.    -INF - 0.0 = float:  -Infinity
+ 702.    -INF * 0.0 = float:  NaN
+ 703.    -INF / 0.0 = float:  -Infinity
+ 704.    -INF % 0.0 = float:  NaN
+ 705.    -INF + 0.0 = double: -Infinity
+ 706.    -INF - 0.0 = double: -Infinity
+ 707.    -INF * 0.0 = double: NaN
+ 708.    -INF / 0.0 = double: -Infinity
+ 709.    -INF % 0.0 = double: NaN
+ 710.     (-INF == 0.0) = float: false
+ 711.     (-INF != 0.0) = float: true
+ 712.     (-INF <  0.0) = float: true
+ 713.     (-INF <= 0.0) = float: true
+ 714.     (-INF >  0.0) = float: false
+ 715.     (-INF >= 0.0) = float: false
+ 716.    !(-INF == 0.0) = float: true
+ 717.    !(-INF != 0.0) = float: false
+ 718.    !(-INF <  0.0) = float: false
+ 719.    !(-INF <= 0.0) = float: false
+ 720.    !(-INF >  0.0) = float: true
+ 721.    !(-INF >= 0.0) = float: true
+ 722.     (-INF == 0.0) = double: false
+ 723.     (-INF != 0.0) = double: true
+ 724.     (-INF <  0.0) = double: true
+ 725.     (-INF <= 0.0) = double: true
+ 726.     (-INF >  0.0) = double: false
+ 727.     (-INF >= 0.0) = double: false
+ 728.    !(-INF == 0.0) = double: true
+ 729.    !(-INF != 0.0) = double: false
+ 730.    !(-INF <  0.0) = double: false
+ 731.    !(-INF <= 0.0) = double: false
+ 732.    !(-INF >  0.0) = double: true
+ 733.    !(-INF >= 0.0) = double: true
+ 734.    -INF + 5.0 = float:  -Infinity
+ 735.    -INF - 5.0 = float:  -Infinity
+ 736.    -INF * 5.0 = float:  -Infinity
+ 737.    -INF / 5.0 = float:  -Infinity
+ 738.    -INF % 5.0 = float:  NaN
+ 739.    -INF + 5.0 = double: -Infinity
+ 740.    -INF - 5.0 = double: -Infinity
+ 741.    -INF * 5.0 = double: -Infinity
+ 742.    -INF / 5.0 = double: -Infinity
+ 743.    -INF % 5.0 = double: NaN
+ 744.     (-INF == 5.0) = float: false
+ 745.     (-INF != 5.0) = float: true
+ 746.     (-INF <  5.0) = float: true
+ 747.     (-INF <= 5.0) = float: true
+ 748.     (-INF >  5.0) = float: false
+ 749.     (-INF >= 5.0) = float: false
+ 750.    !(-INF == 5.0) = float: true
+ 751.    !(-INF != 5.0) = float: false
+ 752.    !(-INF <  5.0) = float: false
+ 753.    !(-INF <= 5.0) = float: false
+ 754.    !(-INF >  5.0) = float: true
+ 755.    !(-INF >= 5.0) = float: true
+ 756.     (-INF == 5.0) = double: false
+ 757.     (-INF != 5.0) = double: true
+ 758.     (-INF <  5.0) = double: true
+ 759.     (-INF <= 5.0) = double: true
+ 760.     (-INF >  5.0) = double: false
+ 761.     (-INF >= 5.0) = double: false
+ 762.    !(-INF == 5.0) = double: true
+ 763.    !(-INF != 5.0) = double: false
+ 764.    !(-INF <  5.0) = double: false
+ 765.    !(-INF <= 5.0) = double: false
+ 766.    !(-INF >  5.0) = double: true
+ 767.    !(-INF >= 5.0) = double: true
+ 768.    ------------------- test -INF op value
+ 769.    -5.0 + -INF = float:  -Infinity
+ 770.    -5.0 - -INF = float:  Infinity
+ 771.    -5.0 * -INF = float:  Infinity
+ 772.    -5.0 / -INF = float:  0.0
+ 773.    -5.0 % -INF = float:  -5.0
+ 774.    -5.0 + -INF = double: -Infinity
+ 775.    -5.0 - -INF = double: Infinity
+ 776.    -5.0 * -INF = double: Infinity
+ 777.    -5.0 / -INF = double: 0.0
+ 778.    -5.0 % -INF = double: -5.0
+ 779.     (-5.0 == -INF) = float: false
+ 780.     (-5.0 != -INF) = float: true
+ 781.     (-5.0 <  -INF) = float: false
+ 782.     (-5.0 <= -INF) = float: false
+ 783.     (-5.0 >  -INF) = float: true
+ 784.     (-5.0 >= -INF) = float: true
+ 785.    !(-5.0 == -INF) = float: true
+ 786.    !(-5.0 != -INF) = float: false
+ 787.    !(-5.0 <  -INF) = float: true
+ 788.    !(-5.0 <= -INF) = float: true
+ 789.    !(-5.0 >  -INF) = float: false
+ 790.    !(-5.0 >= -INF) = float: false
+ 791.     (-5.0 == -INF) = double: false
+ 792.     (-5.0 != -INF) = double: true
+ 793.     (-5.0 <  -INF) = double: false
+ 794.     (-5.0 <= -INF) = double: false
+ 795.     (-5.0 >  -INF) = double: true
+ 796.     (-5.0 >= -INF) = double: true
+ 797.    !(-5.0 == -INF) = double: true
+ 798.    !(-5.0 != -INF) = double: false
+ 799.    !(-5.0 <  -INF) = double: true
+ 800.    !(-5.0 <= -INF) = double: true
+ 801.    !(-5.0 >  -INF) = double: false
+ 802.    !(-5.0 >= -INF) = double: false
+ 803.    -0.0 + -INF = float:  -Infinity
+ 804.    -0.0 - -INF = float:  Infinity
+ 805.    -0.0 * -INF = float:  NaN
+ 806.    -0.0 / -INF = float:  0.0
+ 807.    -0.0 % -INF = float:  -0.0
+ 808.    -0.0 + -INF = double: -Infinity
+ 809.    -0.0 - -INF = double: Infinity
+ 810.    -0.0 * -INF = double: NaN
+ 811.    -0.0 / -INF = double: 0.0
+ 812.    -0.0 % -INF = double: -0.0
+ 813.     (-0.0 == -INF) = float: false
+ 814.     (-0.0 != -INF) = float: true
+ 815.     (-0.0 <  -INF) = float: false
+ 816.     (-0.0 <= -INF) = float: false
+ 817.     (-0.0 >  -INF) = float: true
+ 818.     (-0.0 >= -INF) = float: true
+ 819.    !(-0.0 == -INF) = float: true
+ 820.    !(-0.0 != -INF) = float: false
+ 821.    !(-0.0 <  -INF) = float: true
+ 822.    !(-0.0 <= -INF) = float: true
+ 823.    !(-0.0 >  -INF) = float: false
+ 824.    !(-0.0 >= -INF) = float: false
+ 825.     (-0.0 == -INF) = double: false
+ 826.     (-0.0 != -INF) = double: true
+ 827.     (-0.0 <  -INF) = double: false
+ 828.     (-0.0 <= -INF) = double: false
+ 829.     (-0.0 >  -INF) = double: true
+ 830.     (-0.0 >= -INF) = double: true
+ 831.    !(-0.0 == -INF) = double: true
+ 832.    !(-0.0 != -INF) = double: false
+ 833.    !(-0.0 <  -INF) = double: true
+ 834.    !(-0.0 <= -INF) = double: true
+ 835.    !(-0.0 >  -INF) = double: false
+ 836.    !(-0.0 >= -INF) = double: false
+ 837.    0.0 + -INF = float:  -Infinity
+ 838.    0.0 - -INF = float:  Infinity
+ 839.    0.0 * -INF = float:  NaN
+ 840.    0.0 / -INF = float:  -0.0
+ 841.    0.0 % -INF = float:  0.0
+ 842.    0.0 + -INF = double: -Infinity
+ 843.    0.0 - -INF = double: Infinity
+ 844.    0.0 * -INF = double: NaN
+ 845.    0.0 / -INF = double: -0.0
+ 846.    0.0 % -INF = double: 0.0
+ 847.     (0.0 == -INF) = float: false
+ 848.     (0.0 != -INF) = float: true
+ 849.     (0.0 <  -INF) = float: false
+ 850.     (0.0 <= -INF) = float: false
+ 851.     (0.0 >  -INF) = float: true
+ 852.     (0.0 >= -INF) = float: true
+ 853.    !(0.0 == -INF) = float: true
+ 854.    !(0.0 != -INF) = float: false
+ 855.    !(0.0 <  -INF) = float: true
+ 856.    !(0.0 <= -INF) = float: true
+ 857.    !(0.0 >  -INF) = float: false
+ 858.    !(0.0 >= -INF) = float: false
+ 859.     (0.0 == -INF) = double: false
+ 860.     (0.0 != -INF) = double: true
+ 861.     (0.0 <  -INF) = double: false
+ 862.     (0.0 <= -INF) = double: false
+ 863.     (0.0 >  -INF) = double: true
+ 864.     (0.0 >= -INF) = double: true
+ 865.    !(0.0 == -INF) = double: true
+ 866.    !(0.0 != -INF) = double: false
+ 867.    !(0.0 <  -INF) = double: true
+ 868.    !(0.0 <= -INF) = double: true
+ 869.    !(0.0 >  -INF) = double: false
+ 870.    !(0.0 >= -INF) = double: false
+ 871.    5.0 + -INF = float:  -Infinity
+ 872.    5.0 - -INF = float:  Infinity
+ 873.    5.0 * -INF = float:  -Infinity
+ 874.    5.0 / -INF = float:  -0.0
+ 875.    5.0 % -INF = float:  5.0
+ 876.    5.0 + -INF = double: -Infinity
+ 877.    5.0 - -INF = double: Infinity
+ 878.    5.0 * -INF = double: -Infinity
+ 879.    5.0 / -INF = double: -0.0
+ 880.    5.0 % -INF = double: 5.0
+ 881.     (5.0 == -INF) = float: false
+ 882.     (5.0 != -INF) = float: true
+ 883.     (5.0 <  -INF) = float: false
+ 884.     (5.0 <= -INF) = float: false
+ 885.     (5.0 >  -INF) = float: true
+ 886.     (5.0 >= -INF) = float: true
+ 887.    !(5.0 == -INF) = float: true
+ 888.    !(5.0 != -INF) = float: false
+ 889.    !(5.0 <  -INF) = float: true
+ 890.    !(5.0 <= -INF) = float: true
+ 891.    !(5.0 >  -INF) = float: false
+ 892.    !(5.0 >= -INF) = float: false
+ 893.     (5.0 == -INF) = double: false
+ 894.     (5.0 != -INF) = double: true
+ 895.     (5.0 <  -INF) = double: false
+ 896.     (5.0 <= -INF) = double: false
+ 897.     (5.0 >  -INF) = double: true
+ 898.     (5.0 >= -INF) = double: true
+ 899.    !(5.0 == -INF) = double: true
+ 900.    !(5.0 != -INF) = double: false
+ 901.    !(5.0 <  -INF) = double: true
+ 902.    !(5.0 <= -INF) = double: true
+ 903.    !(5.0 >  -INF) = double: false
+ 904.    !(5.0 >= -INF) = double: false
+ 905.    ------------------- test MAX op value
+ 906.    MAX + 5.0 = float:  3.4028235E38
+ 907.    MAX - 5.0 = float:  3.4028235E38
+ 908.    MAX * 5.0 = float:  Infinity
+ 909.    MAX / 5.0 = float:  6.805647E37
+ 910.    MAX % 5.0 = float:  0.0
+ 911.    MAX + 5.0 = double: 1.7976931348623157E308
+ 912.    MAX - 5.0 = double: 1.7976931348623157E308
+ 913.    MAX * 5.0 = double: Infinity
+ 914.    MAX / 5.0 = double: 3.5953862697246315E307
+ 915.    MAX % 5.0 = double: 3.0
+ 916.    ------------------- test value op MAX
+ 917.    5.0 + MAX = float:  3.4028235E38
+ 918.    5.0 - MAX = float:  -3.4028235E38
+ 919.    5.0 * MAX = float:  Infinity
+ 920.    5.0 / MAX = float:  1.4693681E-38
+ 921.    5.0 % MAX = float:  5.0
+ 922.    5.0 + MAX = double: 1.7976931348623157E308
+ 923.    5.0 - MAX = double: -1.7976931348623157E308
+ 924.    5.0 * MAX = double: Infinity
+ 925.    5.0 / MAX = double: 2.781342323134002E-308
+ 926.    5.0 % MAX = double: 5.0
+ 927.    ------------------- test MIN op value
+ 928.    MIN + 5.0 = float:  5.0
+ 929.    MIN - 5.0 = float:  -5.0
+ 930.    MIN * 5.0 = float:  7.0E-45
+ 931.    MIN / 5.0 = float:  0.0
+ 932.    MIN % 5.0 = float:  1.4E-45
+ 933.    MIN + 5.0 = double: 5.0
+ 934.    MIN - 5.0 = double: -5.0
+ 935.    MIN * 5.0 = double: 2.5E-323
+ 936.    MIN / 5.0 = double: 0.0
+ 937.    MIN % 5.0 = double: 4.9E-324
+ 938.    ------------------- test value op MIN
+ 939.    5.0 + MIN = float:  5.0
+ 940.    5.0 - MIN = float:  5.0
+ 941.    5.0 * MIN = float:  7.0E-45
+ 942.    5.0 / MIN = float:  Infinity
+ 943.    5.0 % MIN = float:  0.0
+ 944.    5.0 + MIN = double: 5.0
+ 945.    5.0 - MIN = double: 5.0
+ 946.    5.0 * MIN = double: 2.5E-323
+ 947.    5.0 / MIN = double: Infinity
+ 948.    5.0 % MIN = double: 0.0
+ 949.    
\ No newline at end of file