2004-07-01 08:01:35 -03:00
|
|
|
------------------------------------------------------------------------
|
|
|
|
-- remainder.decTest -- decimal remainder --
|
2008-07-31 13:32:12 -03:00
|
|
|
-- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. --
|
2004-07-01 08:01:35 -03:00
|
|
|
------------------------------------------------------------------------
|
|
|
|
-- Please see the document "General Decimal Arithmetic Testcases" --
|
|
|
|
-- at http://www2.hursley.ibm.com/decimal for the description of --
|
|
|
|
-- these testcases. --
|
|
|
|
-- --
|
|
|
|
-- These testcases are experimental ('beta' versions), and they --
|
|
|
|
-- may contain errors. They are offered on an as-is basis. In --
|
|
|
|
-- particular, achieving the same results as the tests here is not --
|
|
|
|
-- a guarantee that an implementation complies with any Standard --
|
|
|
|
-- or specification. The tests are not exhaustive. --
|
|
|
|
-- --
|
|
|
|
-- Please send comments, suggestions, and corrections to the author: --
|
|
|
|
-- Mike Cowlishaw, IBM Fellow --
|
|
|
|
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
|
|
|
|
-- mfc@uk.ibm.com --
|
|
|
|
------------------------------------------------------------------------
|
2008-07-31 13:32:12 -03:00
|
|
|
version: 2.58
|
2004-07-01 08:01:35 -03:00
|
|
|
|
|
|
|
extended: 1
|
|
|
|
precision: 9
|
|
|
|
rounding: half_up
|
|
|
|
maxExponent: 384
|
|
|
|
minexponent: -383
|
|
|
|
|
|
|
|
-- sanity checks (as base, above)
|
|
|
|
remx001 remainder 1 1 -> 0
|
|
|
|
remx002 remainder 2 1 -> 0
|
|
|
|
remx003 remainder 1 2 -> 1
|
|
|
|
remx004 remainder 2 2 -> 0
|
|
|
|
remx005 remainder 0 1 -> 0
|
|
|
|
remx006 remainder 0 2 -> 0
|
|
|
|
remx007 remainder 1 3 -> 1
|
|
|
|
remx008 remainder 2 3 -> 2
|
|
|
|
remx009 remainder 3 3 -> 0
|
|
|
|
|
|
|
|
remx010 remainder 2.4 1 -> 0.4
|
|
|
|
remx011 remainder 2.4 -1 -> 0.4
|
|
|
|
remx012 remainder -2.4 1 -> -0.4
|
|
|
|
remx013 remainder -2.4 -1 -> -0.4
|
|
|
|
remx014 remainder 2.40 1 -> 0.40
|
|
|
|
remx015 remainder 2.400 1 -> 0.400
|
|
|
|
remx016 remainder 2.4 2 -> 0.4
|
|
|
|
remx017 remainder 2.400 2 -> 0.400
|
|
|
|
remx018 remainder 2. 2 -> 0
|
|
|
|
remx019 remainder 20 20 -> 0
|
|
|
|
|
|
|
|
remx020 remainder 187 187 -> 0
|
|
|
|
remx021 remainder 5 2 -> 1
|
|
|
|
remx022 remainder 5 2.0 -> 1.0
|
|
|
|
remx023 remainder 5 2.000 -> 1.000
|
|
|
|
remx024 remainder 5 0.200 -> 0.000
|
|
|
|
remx025 remainder 5 0.200 -> 0.000
|
|
|
|
|
|
|
|
remx030 remainder 1 2 -> 1
|
|
|
|
remx031 remainder 1 4 -> 1
|
|
|
|
remx032 remainder 1 8 -> 1
|
|
|
|
|
|
|
|
remx033 remainder 1 16 -> 1
|
|
|
|
remx034 remainder 1 32 -> 1
|
|
|
|
remx035 remainder 1 64 -> 1
|
|
|
|
remx040 remainder 1 -2 -> 1
|
|
|
|
remx041 remainder 1 -4 -> 1
|
|
|
|
remx042 remainder 1 -8 -> 1
|
|
|
|
remx043 remainder 1 -16 -> 1
|
|
|
|
remx044 remainder 1 -32 -> 1
|
|
|
|
remx045 remainder 1 -64 -> 1
|
|
|
|
remx050 remainder -1 2 -> -1
|
|
|
|
remx051 remainder -1 4 -> -1
|
|
|
|
remx052 remainder -1 8 -> -1
|
|
|
|
remx053 remainder -1 16 -> -1
|
|
|
|
remx054 remainder -1 32 -> -1
|
|
|
|
remx055 remainder -1 64 -> -1
|
|
|
|
remx060 remainder -1 -2 -> -1
|
|
|
|
remx061 remainder -1 -4 -> -1
|
|
|
|
remx062 remainder -1 -8 -> -1
|
|
|
|
remx063 remainder -1 -16 -> -1
|
|
|
|
remx064 remainder -1 -32 -> -1
|
|
|
|
remx065 remainder -1 -64 -> -1
|
|
|
|
|
|
|
|
remx066 remainder 999999999 1 -> 0
|
|
|
|
remx067 remainder 999999999.4 1 -> 0.4
|
|
|
|
remx068 remainder 999999999.5 1 -> 0.5
|
|
|
|
remx069 remainder 999999999.9 1 -> 0.9
|
|
|
|
remx070 remainder 999999999.999 1 -> 0.999
|
|
|
|
precision: 6
|
|
|
|
remx071 remainder 999999999 1 -> NaN Division_impossible
|
|
|
|
remx072 remainder 99999999 1 -> NaN Division_impossible
|
|
|
|
remx073 remainder 9999999 1 -> NaN Division_impossible
|
|
|
|
remx074 remainder 999999 1 -> 0
|
|
|
|
remx075 remainder 99999 1 -> 0
|
|
|
|
remx076 remainder 9999 1 -> 0
|
|
|
|
remx077 remainder 999 1 -> 0
|
|
|
|
remx078 remainder 99 1 -> 0
|
|
|
|
remx079 remainder 9 1 -> 0
|
|
|
|
|
|
|
|
precision: 9
|
|
|
|
remx080 remainder 0. 1 -> 0
|
|
|
|
remx081 remainder .0 1 -> 0.0
|
|
|
|
remx082 remainder 0.00 1 -> 0.00
|
|
|
|
remx083 remainder 0.00E+9 1 -> 0
|
|
|
|
remx084 remainder 0.00E+3 1 -> 0
|
|
|
|
remx085 remainder 0.00E+2 1 -> 0
|
|
|
|
remx086 remainder 0.00E+1 1 -> 0.0
|
|
|
|
remx087 remainder 0.00E+0 1 -> 0.00
|
|
|
|
remx088 remainder 0.00E-0 1 -> 0.00
|
|
|
|
remx089 remainder 0.00E-1 1 -> 0.000
|
|
|
|
remx090 remainder 0.00E-2 1 -> 0.0000
|
|
|
|
remx091 remainder 0.00E-3 1 -> 0.00000
|
|
|
|
remx092 remainder 0.00E-4 1 -> 0.000000
|
|
|
|
remx093 remainder 0.00E-5 1 -> 0E-7
|
|
|
|
remx094 remainder 0.00E-6 1 -> 0E-8
|
|
|
|
remx095 remainder 0.0000E-50 1 -> 0E-54
|
|
|
|
|
|
|
|
-- Various flavours of remainder by 0
|
|
|
|
precision: 9
|
|
|
|
maxexponent: 999999999
|
|
|
|
minexponent: -999999999
|
|
|
|
remx101 remainder 0 0 -> NaN Division_undefined
|
|
|
|
remx102 remainder 0 -0 -> NaN Division_undefined
|
|
|
|
remx103 remainder -0 0 -> NaN Division_undefined
|
|
|
|
remx104 remainder -0 -0 -> NaN Division_undefined
|
|
|
|
remx105 remainder 0.0E5 0 -> NaN Division_undefined
|
|
|
|
remx106 remainder 0.000 0 -> NaN Division_undefined
|
|
|
|
-- [Some think this next group should be Division_by_zero exception, but
|
|
|
|
-- IEEE 854 is explicit that it is Invalid operation .. for
|
|
|
|
-- remainder-near, anyway]
|
|
|
|
remx107 remainder 0.0001 0 -> NaN Invalid_operation
|
|
|
|
remx108 remainder 0.01 0 -> NaN Invalid_operation
|
|
|
|
remx109 remainder 0.1 0 -> NaN Invalid_operation
|
|
|
|
remx110 remainder 1 0 -> NaN Invalid_operation
|
|
|
|
remx111 remainder 1 0.0 -> NaN Invalid_operation
|
|
|
|
remx112 remainder 10 0.0 -> NaN Invalid_operation
|
|
|
|
remx113 remainder 1E+100 0.0 -> NaN Invalid_operation
|
|
|
|
remx114 remainder 1E+1000 0 -> NaN Invalid_operation
|
|
|
|
remx115 remainder 0.0001 -0 -> NaN Invalid_operation
|
|
|
|
remx116 remainder 0.01 -0 -> NaN Invalid_operation
|
|
|
|
remx119 remainder 0.1 -0 -> NaN Invalid_operation
|
|
|
|
remx120 remainder 1 -0 -> NaN Invalid_operation
|
|
|
|
remx121 remainder 1 -0.0 -> NaN Invalid_operation
|
|
|
|
remx122 remainder 10 -0.0 -> NaN Invalid_operation
|
|
|
|
remx123 remainder 1E+100 -0.0 -> NaN Invalid_operation
|
|
|
|
remx124 remainder 1E+1000 -0 -> NaN Invalid_operation
|
|
|
|
-- and zeros on left
|
|
|
|
remx130 remainder 0 1 -> 0
|
|
|
|
remx131 remainder 0 -1 -> 0
|
|
|
|
remx132 remainder 0.0 1 -> 0.0
|
|
|
|
remx133 remainder 0.0 -1 -> 0.0
|
|
|
|
remx134 remainder -0 1 -> -0
|
|
|
|
remx135 remainder -0 -1 -> -0
|
|
|
|
remx136 remainder -0.0 1 -> -0.0
|
|
|
|
remx137 remainder -0.0 -1 -> -0.0
|
|
|
|
|
|
|
|
-- 0.5ers
|
|
|
|
remx143 remainder 0.5 2 -> 0.5
|
|
|
|
remx144 remainder 0.5 2.1 -> 0.5
|
|
|
|
remx145 remainder 0.5 2.01 -> 0.50
|
|
|
|
remx146 remainder 0.5 2.001 -> 0.500
|
|
|
|
remx147 remainder 0.50 2 -> 0.50
|
|
|
|
remx148 remainder 0.50 2.01 -> 0.50
|
|
|
|
remx149 remainder 0.50 2.001 -> 0.500
|
|
|
|
|
|
|
|
-- steadies
|
|
|
|
remx150 remainder 1 1 -> 0
|
|
|
|
remx151 remainder 1 2 -> 1
|
|
|
|
remx152 remainder 1 3 -> 1
|
|
|
|
remx153 remainder 1 4 -> 1
|
|
|
|
remx154 remainder 1 5 -> 1
|
|
|
|
remx155 remainder 1 6 -> 1
|
|
|
|
remx156 remainder 1 7 -> 1
|
|
|
|
remx157 remainder 1 8 -> 1
|
|
|
|
remx158 remainder 1 9 -> 1
|
|
|
|
remx159 remainder 1 10 -> 1
|
|
|
|
remx160 remainder 1 1 -> 0
|
|
|
|
remx161 remainder 2 1 -> 0
|
|
|
|
remx162 remainder 3 1 -> 0
|
|
|
|
remx163 remainder 4 1 -> 0
|
|
|
|
remx164 remainder 5 1 -> 0
|
|
|
|
remx165 remainder 6 1 -> 0
|
|
|
|
remx166 remainder 7 1 -> 0
|
|
|
|
remx167 remainder 8 1 -> 0
|
|
|
|
remx168 remainder 9 1 -> 0
|
|
|
|
remx169 remainder 10 1 -> 0
|
|
|
|
|
|
|
|
-- some differences from remainderNear
|
|
|
|
remx171 remainder 0.4 1.020 -> 0.400
|
|
|
|
remx172 remainder 0.50 1.020 -> 0.500
|
|
|
|
remx173 remainder 0.51 1.020 -> 0.510
|
|
|
|
remx174 remainder 0.52 1.020 -> 0.520
|
|
|
|
remx175 remainder 0.6 1.020 -> 0.600
|
|
|
|
|
|
|
|
|
|
|
|
-- More flavours of remainder by 0
|
|
|
|
maxexponent: 999999999
|
|
|
|
minexponent: -999999999
|
|
|
|
remx201 remainder 0 0 -> NaN Division_undefined
|
|
|
|
remx202 remainder 0.0E5 0 -> NaN Division_undefined
|
|
|
|
remx203 remainder 0.000 0 -> NaN Division_undefined
|
|
|
|
remx204 remainder 0.0001 0 -> NaN Invalid_operation
|
|
|
|
remx205 remainder 0.01 0 -> NaN Invalid_operation
|
|
|
|
remx206 remainder 0.1 0 -> NaN Invalid_operation
|
|
|
|
remx207 remainder 1 0 -> NaN Invalid_operation
|
|
|
|
remx208 remainder 1 0.0 -> NaN Invalid_operation
|
|
|
|
remx209 remainder 10 0.0 -> NaN Invalid_operation
|
|
|
|
remx210 remainder 1E+100 0.0 -> NaN Invalid_operation
|
|
|
|
remx211 remainder 1E+1000 0 -> NaN Invalid_operation
|
|
|
|
|
|
|
|
-- some differences from remainderNear
|
|
|
|
remx231 remainder -0.4 1.020 -> -0.400
|
|
|
|
remx232 remainder -0.50 1.020 -> -0.500
|
|
|
|
remx233 remainder -0.51 1.020 -> -0.510
|
|
|
|
remx234 remainder -0.52 1.020 -> -0.520
|
|
|
|
remx235 remainder -0.6 1.020 -> -0.600
|
|
|
|
|
|
|
|
-- high Xs
|
|
|
|
remx240 remainder 1E+2 1.00 -> 0.00
|
|
|
|
|
|
|
|
|
|
|
|
-- test some cases that are close to exponent overflow
|
|
|
|
maxexponent: 999999999
|
|
|
|
minexponent: -999999999
|
|
|
|
remx270 remainder 1 1e999999999 -> 1
|
|
|
|
remx271 remainder 1 0.9e999999999 -> 1
|
|
|
|
remx272 remainder 1 0.99e999999999 -> 1
|
|
|
|
remx273 remainder 1 0.999999999e999999999 -> 1
|
|
|
|
remx274 remainder 9e999999999 1 -> NaN Division_impossible
|
|
|
|
remx275 remainder 9.9e999999999 1 -> NaN Division_impossible
|
|
|
|
remx276 remainder 9.99e999999999 1 -> NaN Division_impossible
|
|
|
|
remx277 remainder 9.99999999e999999999 1 -> NaN Division_impossible
|
|
|
|
|
|
|
|
remx280 remainder 0.1 9e-999999999 -> NaN Division_impossible
|
|
|
|
remx281 remainder 0.1 99e-999999999 -> NaN Division_impossible
|
|
|
|
remx282 remainder 0.1 999e-999999999 -> NaN Division_impossible
|
|
|
|
|
|
|
|
remx283 remainder 0.1 9e-999999998 -> NaN Division_impossible
|
|
|
|
remx284 remainder 0.1 99e-999999998 -> NaN Division_impossible
|
|
|
|
remx285 remainder 0.1 999e-999999998 -> NaN Division_impossible
|
|
|
|
remx286 remainder 0.1 999e-999999997 -> NaN Division_impossible
|
|
|
|
remx287 remainder 0.1 9999e-999999997 -> NaN Division_impossible
|
|
|
|
remx288 remainder 0.1 99999e-999999997 -> NaN Division_impossible
|
|
|
|
|
|
|
|
-- remx3xx are from DiagBigDecimal
|
|
|
|
remx301 remainder 1 3 -> 1
|
|
|
|
remx302 remainder 5 5 -> 0
|
|
|
|
remx303 remainder 13 10 -> 3
|
|
|
|
remx304 remainder 13 50 -> 13
|
|
|
|
remx305 remainder 13 100 -> 13
|
|
|
|
remx306 remainder 13 1000 -> 13
|
|
|
|
remx307 remainder .13 1 -> 0.13
|
|
|
|
remx308 remainder 0.133 1 -> 0.133
|
|
|
|
remx309 remainder 0.1033 1 -> 0.1033
|
|
|
|
remx310 remainder 1.033 1 -> 0.033
|
|
|
|
remx311 remainder 10.33 1 -> 0.33
|
|
|
|
remx312 remainder 10.33 10 -> 0.33
|
|
|
|
remx313 remainder 103.3 1 -> 0.3
|
|
|
|
remx314 remainder 133 10 -> 3
|
|
|
|
remx315 remainder 1033 10 -> 3
|
|
|
|
remx316 remainder 1033 50 -> 33
|
|
|
|
remx317 remainder 101.0 3 -> 2.0
|
|
|
|
remx318 remainder 102.0 3 -> 0.0
|
|
|
|
remx319 remainder 103.0 3 -> 1.0
|
|
|
|
remx320 remainder 2.40 1 -> 0.40
|
|
|
|
remx321 remainder 2.400 1 -> 0.400
|
|
|
|
remx322 remainder 2.4 1 -> 0.4
|
|
|
|
remx323 remainder 2.4 2 -> 0.4
|
|
|
|
remx324 remainder 2.400 2 -> 0.400
|
|
|
|
remx325 remainder 1 0.3 -> 0.1
|
|
|
|
remx326 remainder 1 0.30 -> 0.10
|
|
|
|
remx327 remainder 1 0.300 -> 0.100
|
|
|
|
remx328 remainder 1 0.3000 -> 0.1000
|
|
|
|
remx329 remainder 1.0 0.3 -> 0.1
|
|
|
|
remx330 remainder 1.00 0.3 -> 0.10
|
|
|
|
remx331 remainder 1.000 0.3 -> 0.100
|
|
|
|
remx332 remainder 1.0000 0.3 -> 0.1000
|
|
|
|
remx333 remainder 0.5 2 -> 0.5
|
|
|
|
remx334 remainder 0.5 2.1 -> 0.5
|
|
|
|
remx335 remainder 0.5 2.01 -> 0.50
|
|
|
|
remx336 remainder 0.5 2.001 -> 0.500
|
|
|
|
remx337 remainder 0.50 2 -> 0.50
|
|
|
|
remx338 remainder 0.50 2.01 -> 0.50
|
|
|
|
remx339 remainder 0.50 2.001 -> 0.500
|
|
|
|
|
|
|
|
remx340 remainder 0.5 0.5000001 -> 0.5000000
|
|
|
|
remx341 remainder 0.5 0.50000001 -> 0.50000000
|
|
|
|
remx342 remainder 0.5 0.500000001 -> 0.500000000
|
|
|
|
remx343 remainder 0.5 0.5000000001 -> 0.500000000 Rounded
|
|
|
|
remx344 remainder 0.5 0.50000000001 -> 0.500000000 Rounded
|
|
|
|
remx345 remainder 0.5 0.4999999 -> 1E-7
|
|
|
|
remx346 remainder 0.5 0.49999999 -> 1E-8
|
|
|
|
remx347 remainder 0.5 0.499999999 -> 1E-9
|
|
|
|
remx348 remainder 0.5 0.4999999999 -> 1E-10
|
|
|
|
remx349 remainder 0.5 0.49999999999 -> 1E-11
|
|
|
|
remx350 remainder 0.5 0.499999999999 -> 1E-12
|
|
|
|
|
|
|
|
remx351 remainder 0.03 7 -> 0.03
|
|
|
|
remx352 remainder 5 2 -> 1
|
|
|
|
remx353 remainder 4.1 2 -> 0.1
|
|
|
|
remx354 remainder 4.01 2 -> 0.01
|
|
|
|
remx355 remainder 4.001 2 -> 0.001
|
|
|
|
remx356 remainder 4.0001 2 -> 0.0001
|
|
|
|
remx357 remainder 4.00001 2 -> 0.00001
|
|
|
|
remx358 remainder 4.000001 2 -> 0.000001
|
|
|
|
remx359 remainder 4.0000001 2 -> 1E-7
|
|
|
|
|
|
|
|
remx360 remainder 1.2 0.7345 -> 0.4655
|
|
|
|
remx361 remainder 0.8 12 -> 0.8
|
|
|
|
remx362 remainder 0.8 0.2 -> 0.0
|
|
|
|
remx363 remainder 0.8 0.3 -> 0.2
|
|
|
|
remx364 remainder 0.800 12 -> 0.800
|
|
|
|
remx365 remainder 0.800 1.7 -> 0.800
|
|
|
|
remx366 remainder 2.400 2 -> 0.400
|
|
|
|
|
|
|
|
precision: 6
|
|
|
|
remx371 remainder 2.400 2 -> 0.400
|
|
|
|
precision: 3
|
|
|
|
-- long operand, rounded, case
|
|
|
|
remx372 remainder 12345678900000 12e+12 -> 3.46E+11 Inexact Rounded
|
|
|
|
-- 12000000000000
|
|
|
|
|
|
|
|
precision: 5
|
|
|
|
remx381 remainder 12345 1 -> 0
|
|
|
|
remx382 remainder 12345 1.0001 -> 0.7657
|
|
|
|
remx383 remainder 12345 1.001 -> 0.668
|
|
|
|
remx384 remainder 12345 1.01 -> 0.78
|
|
|
|
remx385 remainder 12345 1.1 -> 0.8
|
|
|
|
remx386 remainder 12355 4 -> 3
|
|
|
|
remx387 remainder 12345 4 -> 1
|
|
|
|
remx388 remainder 12355 4.0001 -> 2.6912
|
|
|
|
remx389 remainder 12345 4.0001 -> 0.6914
|
|
|
|
remx390 remainder 12345 4.9 -> 1.9
|
|
|
|
remx391 remainder 12345 4.99 -> 4.73
|
|
|
|
remx392 remainder 12345 4.999 -> 2.469
|
|
|
|
remx393 remainder 12345 4.9999 -> 0.2469
|
|
|
|
remx394 remainder 12345 5 -> 0
|
|
|
|
remx395 remainder 12345 5.0001 -> 4.7532
|
|
|
|
remx396 remainder 12345 5.001 -> 2.532
|
|
|
|
remx397 remainder 12345 5.01 -> 0.36
|
|
|
|
remx398 remainder 12345 5.1 -> 3.0
|
|
|
|
|
|
|
|
precision: 9
|
|
|
|
-- the nasty division-by-1 cases
|
|
|
|
remx401 remainder 0.5 1 -> 0.5
|
|
|
|
remx402 remainder 0.55 1 -> 0.55
|
|
|
|
remx403 remainder 0.555 1 -> 0.555
|
|
|
|
remx404 remainder 0.5555 1 -> 0.5555
|
|
|
|
remx405 remainder 0.55555 1 -> 0.55555
|
|
|
|
remx406 remainder 0.555555 1 -> 0.555555
|
|
|
|
remx407 remainder 0.5555555 1 -> 0.5555555
|
|
|
|
remx408 remainder 0.55555555 1 -> 0.55555555
|
|
|
|
remx409 remainder 0.555555555 1 -> 0.555555555
|
|
|
|
|
Merged revisions 58095-58132,58136-58148,58151-58197 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r58096 | brett.cannon | 2007-09-10 23:38:27 +0200 (Mon, 10 Sep 2007) | 4 lines
Fix a possible segfault from recursing too deep to get the repr of a list.
Closes issue #1096.
........
r58097 | bill.janssen | 2007-09-10 23:51:02 +0200 (Mon, 10 Sep 2007) | 33 lines
More work on SSL support.
* Much expanded test suite:
All protocols tested against all other protocols.
All protocols tested with all certificate options.
Tests for bad key and bad cert.
Test of STARTTLS functionality.
Test of RAND_* functions.
* Fixes for threading/malloc bug.
* Issue 1065 fixed:
sslsocket class renamed to SSLSocket.
sslerror class renamed to SSLError.
Function "wrap_socket" now used to wrap an existing socket.
* Issue 1583946 finally fixed:
Support for subjectAltName added.
Subject name now returned as proper DN list of RDNs.
* SSLError exported from socket as "sslerror".
* RAND_* functions properly exported from ssl.py.
* Documentation improved:
Example of how to create a self-signed certificate.
Better indexing.
........
r58098 | guido.van.rossum | 2007-09-11 00:02:25 +0200 (Tue, 11 Sep 2007) | 9 lines
Patch # 1140 (my code, approved by Effbot).
Make sure the type of the return value of re.sub(x, y, z) is the type
of y+x (i.e. unicode if either is unicode, str if they are both str)
even if there are no substitutions or if x==z (which triggered various
special cases in join_list()).
Could be backported to 2.5; no need to port to 3.0.
........
r58099 | guido.van.rossum | 2007-09-11 00:36:02 +0200 (Tue, 11 Sep 2007) | 8 lines
Patch # 1026 by Benjamin Aranguren (with Alex Martelli):
Backport abc.py and isinstance/issubclass overloading to 2.6.
I had to backport test_typechecks.py myself, and make one small change
to abc.py to avoid duplicate work when x.__class__ and type(x) are the
same.
........
r58100 | bill.janssen | 2007-09-11 01:41:24 +0200 (Tue, 11 Sep 2007) | 3 lines
A better way of finding an open port to test with.
........
r58101 | bill.janssen | 2007-09-11 03:09:19 +0200 (Tue, 11 Sep 2007) | 4 lines
Make sure test_ssl doesn't reference the ssl module in a
context where it can't be imported.
........
r58102 | bill.janssen | 2007-09-11 04:42:07 +0200 (Tue, 11 Sep 2007) | 3 lines
Fix some documentation bugs.
........
r58103 | nick.coghlan | 2007-09-11 16:01:18 +0200 (Tue, 11 Sep 2007) | 1 line
Always use the -E flag when spawning subprocesses in test_cmd_line (Issue 1056)
........
r58106 | thomas.heller | 2007-09-11 21:17:48 +0200 (Tue, 11 Sep 2007) | 3 lines
Disable some tests that fail on the 'ppc Debian unstable' buildbot to
find out if they cause the segfault on the 'alpha Debian' machine.
........
r58108 | brett.cannon | 2007-09-11 23:02:28 +0200 (Tue, 11 Sep 2007) | 6 lines
Generators had their throw() method allowing string exceptions. That's a
no-no.
Fixes issue #1147. Need to fix 2.5 to raise a proper warning if a string
exception is passed in.
........
r58112 | georg.brandl | 2007-09-12 20:03:51 +0200 (Wed, 12 Sep 2007) | 3 lines
New documentation page for the bdb module.
(This doesn't need to be merged to Py3k.)
........
r58114 | georg.brandl | 2007-09-12 20:05:57 +0200 (Wed, 12 Sep 2007) | 2 lines
Bug #1152: use non-deprecated name in example.
........
r58115 | georg.brandl | 2007-09-12 20:08:33 +0200 (Wed, 12 Sep 2007) | 2 lines
Fix #1122: wrong return type documented for various _Size() functions.
........
r58117 | georg.brandl | 2007-09-12 20:10:56 +0200 (Wed, 12 Sep 2007) | 2 lines
Fix #1139: PyFile_Encoding really is PyFile_SetEncoding.
........
r58119 | georg.brandl | 2007-09-12 20:29:18 +0200 (Wed, 12 Sep 2007) | 2 lines
bug #1154: release memory allocated by "es" PyArg_ParseTuple format specifier.
........
r58121 | bill.janssen | 2007-09-12 20:52:05 +0200 (Wed, 12 Sep 2007) | 1 line
root certificate for https://svn.python.org/, used in test_ssl
........
r58122 | georg.brandl | 2007-09-12 21:00:07 +0200 (Wed, 12 Sep 2007) | 3 lines
Bug #1153: repr.repr() now doesn't require set and dictionary items
to be orderable to properly represent them.
........
r58125 | georg.brandl | 2007-09-12 21:29:28 +0200 (Wed, 12 Sep 2007) | 4 lines
#1120: put explicit version in the shebang lines of pydoc, idle
and smtpd.py scripts that are installed by setup.py. That way, they
work when only "make altinstall" is used.
........
r58139 | mark.summerfield | 2007-09-13 16:54:30 +0200 (Thu, 13 Sep 2007) | 9 lines
Replaced variable o with obj in operator.rst because o is easy to
confuse.
Added a note about Python 3's collections.Mapping etc., above section
that describes isMappingType() etc.
Added xrefs between os, os.path, fileinput, and open().
........
r58143 | facundo.batista | 2007-09-13 20:13:15 +0200 (Thu, 13 Sep 2007) | 7 lines
Merged the decimal-branch (revisions 54886 to 58140). Decimal is now
fully updated to the latests Decimal Specification (v1.66) and the
latests test cases (v2.56).
Thanks to Mark Dickinson for all his help during this process.
........
r58145 | facundo.batista | 2007-09-13 20:42:09 +0200 (Thu, 13 Sep 2007) | 7 lines
Put the parameter watchexp back in (changed watchexp from an int
to a bool). Also second argument to watchexp is now converted
to Decimal, just as with all the other two-argument operations.
Thanks Mark Dickinson.
........
r58147 | andrew.kuchling | 2007-09-14 00:49:34 +0200 (Fri, 14 Sep 2007) | 1 line
Add various items
........
r58148 | andrew.kuchling | 2007-09-14 00:50:10 +0200 (Fri, 14 Sep 2007) | 1 line
Make target unique
........
r58154 | facundo.batista | 2007-09-14 20:58:34 +0200 (Fri, 14 Sep 2007) | 3 lines
Included the new functions, and new descriptions.
........
r58155 | thomas.heller | 2007-09-14 21:40:35 +0200 (Fri, 14 Sep 2007) | 2 lines
ctypes.util.find_library uses dump(1) instead of objdump(1) on Solaris.
Fixes issue #1777530; will backport to release25-maint.
........
r58159 | facundo.batista | 2007-09-14 23:29:52 +0200 (Fri, 14 Sep 2007) | 3 lines
Some additions (examples and a bit on the tutorial).
........
r58160 | georg.brandl | 2007-09-15 18:53:36 +0200 (Sat, 15 Sep 2007) | 2 lines
Remove bdb from the "undocumented modules" list.
........
r58164 | bill.janssen | 2007-09-17 00:06:00 +0200 (Mon, 17 Sep 2007) | 15 lines
Add support for asyncore server-side SSL support. This requires
adding the 'makefile' method to ssl.SSLSocket, and importing the
requisite fakefile class from socket.py, and making the appropriate
changes to it to make it use the SSL connection.
Added sample HTTPS server to test_ssl.py, and test that uses it.
Change SSL tests to use https://svn.python.org/, instead of
www.sf.net and pop.gmail.com.
Added utility function to ssl module, get_server_certificate,
to wrap up the several things to be done to pull a certificate
from a remote server.
........
r58173 | bill.janssen | 2007-09-17 01:16:46 +0200 (Mon, 17 Sep 2007) | 1 line
use binary mode when reading files for testAsyncore to make Windows happy
........
r58175 | raymond.hettinger | 2007-09-17 02:55:00 +0200 (Mon, 17 Sep 2007) | 7 lines
Sync-up named tuples with the latest version of the ASPN recipe.
Allows optional commas in the field-name spec (help when named tuples are used in conjuction with sql queries).
Adds the __fields__ attribute for introspection and to support conversion to dictionary form.
Adds a __replace__() method similar to str.replace() but using a named field as a target.
Clean-up spelling and presentation in doc-strings.
........
r58176 | brett.cannon | 2007-09-17 05:28:34 +0200 (Mon, 17 Sep 2007) | 5 lines
Add a bunch of GIL release/acquire points in tp_print implementations and for
PyObject_Print().
Closes issue #1164.
........
r58177 | sean.reifschneider | 2007-09-17 07:45:04 +0200 (Mon, 17 Sep 2007) | 2 lines
issue1597011: Fix for bz2 module corner-case error due to error checking bug.
........
r58180 | facundo.batista | 2007-09-17 18:26:50 +0200 (Mon, 17 Sep 2007) | 3 lines
Decimal is updated, :)
........
r58181 | facundo.batista | 2007-09-17 19:30:13 +0200 (Mon, 17 Sep 2007) | 5 lines
The methods always return Decimal classes, even if they're
executed through a subclass (thanks Mark Dickinson).
Added a bit of testing for this.
........
r58183 | sean.reifschneider | 2007-09-17 22:53:21 +0200 (Mon, 17 Sep 2007) | 2 lines
issue1082: Fixing platform and system for Vista.
........
r58185 | andrew.kuchling | 2007-09-18 03:36:16 +0200 (Tue, 18 Sep 2007) | 1 line
Add item; sort properly
........
r58186 | raymond.hettinger | 2007-09-18 05:33:19 +0200 (Tue, 18 Sep 2007) | 1 line
Handle corner cased on 0-tuples and 1-tuples. Add verbose option so people can see how it works.
........
r58192 | georg.brandl | 2007-09-18 09:24:40 +0200 (Tue, 18 Sep 2007) | 2 lines
A bit of reordering, also show more subheadings in the lang ref index.
........
r58193 | facundo.batista | 2007-09-18 18:53:18 +0200 (Tue, 18 Sep 2007) | 4 lines
Speed up of the various division operations (remainder, divide,
divideint and divmod). Thanks Mark Dickinson.
........
r58197 | raymond.hettinger | 2007-09-19 00:18:02 +0200 (Wed, 19 Sep 2007) | 1 line
Cleanup docs for NamedTuple.
........
2007-09-19 00:06:30 -03:00
|
|
|
-- zero signs
|
|
|
|
remx650 remainder 1 1 -> 0
|
|
|
|
remx651 remainder -1 1 -> -0
|
|
|
|
remx652 remainder 1 -1 -> 0
|
|
|
|
remx653 remainder -1 -1 -> -0
|
|
|
|
remx654 remainder 0 1 -> 0
|
|
|
|
remx655 remainder -0 1 -> -0
|
|
|
|
remx656 remainder 0 -1 -> 0
|
|
|
|
remx657 remainder -0 -1 -> -0
|
|
|
|
remx658 remainder 0.00 1 -> 0.00
|
|
|
|
remx659 remainder -0.00 1 -> -0.00
|
2004-07-01 08:01:35 -03:00
|
|
|
|
|
|
|
-- Specials
|
|
|
|
remx680 remainder Inf -Inf -> NaN Invalid_operation
|
|
|
|
remx681 remainder Inf -1000 -> NaN Invalid_operation
|
|
|
|
remx682 remainder Inf -1 -> NaN Invalid_operation
|
|
|
|
remx683 remainder Inf 0 -> NaN Invalid_operation
|
|
|
|
remx684 remainder Inf -0 -> NaN Invalid_operation
|
|
|
|
remx685 remainder Inf 1 -> NaN Invalid_operation
|
|
|
|
remx686 remainder Inf 1000 -> NaN Invalid_operation
|
|
|
|
remx687 remainder Inf Inf -> NaN Invalid_operation
|
|
|
|
remx688 remainder -1000 Inf -> -1000
|
|
|
|
remx689 remainder -Inf Inf -> NaN Invalid_operation
|
|
|
|
remx691 remainder -1 Inf -> -1
|
|
|
|
remx692 remainder 0 Inf -> 0
|
|
|
|
remx693 remainder -0 Inf -> -0
|
|
|
|
remx694 remainder 1 Inf -> 1
|
|
|
|
remx695 remainder 1000 Inf -> 1000
|
|
|
|
remx696 remainder Inf Inf -> NaN Invalid_operation
|
|
|
|
|
|
|
|
remx700 remainder -Inf -Inf -> NaN Invalid_operation
|
|
|
|
remx701 remainder -Inf -1000 -> NaN Invalid_operation
|
|
|
|
remx702 remainder -Inf -1 -> NaN Invalid_operation
|
|
|
|
remx703 remainder -Inf -0 -> NaN Invalid_operation
|
|
|
|
remx704 remainder -Inf 0 -> NaN Invalid_operation
|
|
|
|
remx705 remainder -Inf 1 -> NaN Invalid_operation
|
|
|
|
remx706 remainder -Inf 1000 -> NaN Invalid_operation
|
|
|
|
remx707 remainder -Inf Inf -> NaN Invalid_operation
|
|
|
|
remx708 remainder -Inf -Inf -> NaN Invalid_operation
|
|
|
|
remx709 remainder -1000 Inf -> -1000
|
|
|
|
remx710 remainder -1 -Inf -> -1
|
|
|
|
remx711 remainder -0 -Inf -> -0
|
|
|
|
remx712 remainder 0 -Inf -> 0
|
|
|
|
remx713 remainder 1 -Inf -> 1
|
|
|
|
remx714 remainder 1000 -Inf -> 1000
|
|
|
|
remx715 remainder Inf -Inf -> NaN Invalid_operation
|
|
|
|
|
|
|
|
remx721 remainder NaN -Inf -> NaN
|
|
|
|
remx722 remainder NaN -1000 -> NaN
|
|
|
|
remx723 remainder NaN -1 -> NaN
|
|
|
|
remx724 remainder NaN -0 -> NaN
|
|
|
|
remx725 remainder -NaN 0 -> -NaN
|
|
|
|
remx726 remainder NaN 1 -> NaN
|
|
|
|
remx727 remainder NaN 1000 -> NaN
|
|
|
|
remx728 remainder NaN Inf -> NaN
|
|
|
|
remx729 remainder NaN -NaN -> NaN
|
|
|
|
remx730 remainder -Inf NaN -> NaN
|
|
|
|
remx731 remainder -1000 NaN -> NaN
|
|
|
|
remx732 remainder -1 NaN -> NaN
|
|
|
|
remx733 remainder -0 -NaN -> -NaN
|
|
|
|
remx734 remainder 0 NaN -> NaN
|
|
|
|
remx735 remainder 1 -NaN -> -NaN
|
|
|
|
remx736 remainder 1000 NaN -> NaN
|
|
|
|
remx737 remainder Inf NaN -> NaN
|
|
|
|
|
|
|
|
remx741 remainder sNaN -Inf -> NaN Invalid_operation
|
|
|
|
remx742 remainder sNaN -1000 -> NaN Invalid_operation
|
|
|
|
remx743 remainder -sNaN -1 -> -NaN Invalid_operation
|
|
|
|
remx744 remainder sNaN -0 -> NaN Invalid_operation
|
|
|
|
remx745 remainder sNaN 0 -> NaN Invalid_operation
|
|
|
|
remx746 remainder sNaN 1 -> NaN Invalid_operation
|
|
|
|
remx747 remainder sNaN 1000 -> NaN Invalid_operation
|
|
|
|
remx749 remainder sNaN NaN -> NaN Invalid_operation
|
|
|
|
remx750 remainder sNaN sNaN -> NaN Invalid_operation
|
|
|
|
remx751 remainder NaN sNaN -> NaN Invalid_operation
|
|
|
|
remx752 remainder -Inf sNaN -> NaN Invalid_operation
|
|
|
|
remx753 remainder -1000 sNaN -> NaN Invalid_operation
|
|
|
|
remx754 remainder -1 sNaN -> NaN Invalid_operation
|
|
|
|
remx755 remainder -0 sNaN -> NaN Invalid_operation
|
|
|
|
remx756 remainder 0 sNaN -> NaN Invalid_operation
|
|
|
|
remx757 remainder 1 sNaN -> NaN Invalid_operation
|
|
|
|
remx758 remainder 1000 sNaN -> NaN Invalid_operation
|
|
|
|
remx759 remainder Inf -sNaN -> -NaN Invalid_operation
|
|
|
|
|
|
|
|
-- propaging NaNs
|
|
|
|
remx760 remainder NaN1 NaN7 -> NaN1
|
|
|
|
remx761 remainder sNaN2 NaN8 -> NaN2 Invalid_operation
|
|
|
|
remx762 remainder NaN3 sNaN9 -> NaN9 Invalid_operation
|
|
|
|
remx763 remainder sNaN4 sNaN10 -> NaN4 Invalid_operation
|
|
|
|
remx764 remainder 15 NaN11 -> NaN11
|
|
|
|
remx765 remainder NaN6 NaN12 -> NaN6
|
|
|
|
remx766 remainder Inf NaN13 -> NaN13
|
|
|
|
remx767 remainder NaN14 -Inf -> NaN14
|
|
|
|
remx768 remainder 0 NaN15 -> NaN15
|
|
|
|
remx769 remainder NaN16 -0 -> NaN16
|
|
|
|
|
|
|
|
-- test some cases that are close to exponent overflow
|
|
|
|
maxexponent: 999999999
|
|
|
|
minexponent: -999999999
|
|
|
|
remx770 remainder 1 1e999999999 -> 1
|
|
|
|
remx771 remainder 1 0.9e999999999 -> 1
|
|
|
|
remx772 remainder 1 0.99e999999999 -> 1
|
|
|
|
remx773 remainder 1 0.999999999e999999999 -> 1
|
|
|
|
remx774 remainder 9e999999999 1 -> NaN Division_impossible
|
|
|
|
remx775 remainder 9.9e999999999 1 -> NaN Division_impossible
|
|
|
|
remx776 remainder 9.99e999999999 1 -> NaN Division_impossible
|
|
|
|
remx777 remainder 9.99999999e999999999 1 -> NaN Division_impossible
|
|
|
|
|
|
|
|
-- long operand checks
|
|
|
|
maxexponent: 999
|
|
|
|
minexponent: -999
|
|
|
|
precision: 9
|
|
|
|
remx801 remainder 12345678000 100 -> 0
|
|
|
|
remx802 remainder 1 12345678000 -> 1
|
|
|
|
remx803 remainder 1234567800 10 -> 0
|
|
|
|
remx804 remainder 1 1234567800 -> 1
|
|
|
|
remx805 remainder 1234567890 10 -> 0
|
|
|
|
remx806 remainder 1 1234567890 -> 1
|
|
|
|
remx807 remainder 1234567891 10 -> 1
|
|
|
|
remx808 remainder 1 1234567891 -> 1
|
|
|
|
remx809 remainder 12345678901 100 -> 1
|
|
|
|
remx810 remainder 1 12345678901 -> 1
|
|
|
|
remx811 remainder 1234567896 10 -> 6
|
|
|
|
remx812 remainder 1 1234567896 -> 1
|
|
|
|
|
|
|
|
precision: 15
|
|
|
|
remx821 remainder 12345678000 100 -> 0
|
|
|
|
remx822 remainder 1 12345678000 -> 1
|
|
|
|
remx823 remainder 1234567800 10 -> 0
|
|
|
|
remx824 remainder 1 1234567800 -> 1
|
|
|
|
remx825 remainder 1234567890 10 -> 0
|
|
|
|
remx826 remainder 1 1234567890 -> 1
|
|
|
|
remx827 remainder 1234567891 10 -> 1
|
|
|
|
remx828 remainder 1 1234567891 -> 1
|
|
|
|
remx829 remainder 12345678901 100 -> 1
|
|
|
|
remx830 remainder 1 12345678901 -> 1
|
|
|
|
remx831 remainder 1234567896 10 -> 6
|
|
|
|
remx832 remainder 1 1234567896 -> 1
|
|
|
|
|
|
|
|
-- worries from divideint
|
|
|
|
precision: 8
|
|
|
|
remx840 remainder 100000000.0 1 -> NaN Division_impossible
|
|
|
|
remx841 remainder 100000000.4 1 -> NaN Division_impossible
|
|
|
|
remx842 remainder 100000000.5 1 -> NaN Division_impossible
|
|
|
|
remx843 remainder 100000000.9 1 -> NaN Division_impossible
|
|
|
|
remx844 remainder 100000000.999 1 -> NaN Division_impossible
|
|
|
|
precision: 6
|
|
|
|
remx850 remainder 100000003 5 -> NaN Division_impossible
|
|
|
|
remx851 remainder 10000003 5 -> NaN Division_impossible
|
|
|
|
remx852 remainder 1000003 5 -> 3
|
|
|
|
remx853 remainder 100003 5 -> 3
|
|
|
|
remx854 remainder 10003 5 -> 3
|
|
|
|
remx855 remainder 1003 5 -> 3
|
|
|
|
remx856 remainder 103 5 -> 3
|
|
|
|
remx857 remainder 13 5 -> 3
|
|
|
|
remx858 remainder 1 5 -> 1
|
|
|
|
|
|
|
|
-- Vladimir's cases
|
|
|
|
remx860 remainder 123.0e1 10000000000000000 -> 1230
|
|
|
|
remx861 remainder 1230 10000000000000000 -> 1230
|
|
|
|
remx862 remainder 12.3e2 10000000000000000 -> 1230
|
|
|
|
remx863 remainder 1.23e3 10000000000000000 -> 1230
|
|
|
|
remx864 remainder 123e1 10000000000000000 -> 1230
|
|
|
|
remx870 remainder 123e1 1000000000000000 -> 1230
|
|
|
|
remx871 remainder 123e1 100000000000000 -> 1230
|
|
|
|
remx872 remainder 123e1 10000000000000 -> 1230
|
|
|
|
remx873 remainder 123e1 1000000000000 -> 1230
|
|
|
|
remx874 remainder 123e1 100000000000 -> 1230
|
|
|
|
remx875 remainder 123e1 10000000000 -> 1230
|
|
|
|
remx876 remainder 123e1 1000000000 -> 1230
|
|
|
|
remx877 remainder 123e1 100000000 -> 1230
|
|
|
|
remx878 remainder 1230 100000000 -> 1230
|
|
|
|
remx879 remainder 123e1 10000000 -> 1230
|
|
|
|
remx880 remainder 123e1 1000000 -> 1230
|
|
|
|
remx881 remainder 123e1 100000 -> 1230
|
|
|
|
remx882 remainder 123e1 10000 -> 1230
|
|
|
|
remx883 remainder 123e1 1000 -> 230
|
|
|
|
remx884 remainder 123e1 100 -> 30
|
|
|
|
remx885 remainder 123e1 10 -> 0
|
|
|
|
remx886 remainder 123e1 1 -> 0
|
|
|
|
|
|
|
|
remx889 remainder 123e1 20000000000000000 -> 1230
|
|
|
|
remx890 remainder 123e1 2000000000000000 -> 1230
|
|
|
|
remx891 remainder 123e1 200000000000000 -> 1230
|
|
|
|
remx892 remainder 123e1 20000000000000 -> 1230
|
|
|
|
remx893 remainder 123e1 2000000000000 -> 1230
|
|
|
|
remx894 remainder 123e1 200000000000 -> 1230
|
|
|
|
remx895 remainder 123e1 20000000000 -> 1230
|
|
|
|
remx896 remainder 123e1 2000000000 -> 1230
|
|
|
|
remx897 remainder 123e1 200000000 -> 1230
|
|
|
|
remx899 remainder 123e1 20000000 -> 1230
|
|
|
|
remx900 remainder 123e1 2000000 -> 1230
|
|
|
|
remx901 remainder 123e1 200000 -> 1230
|
|
|
|
remx902 remainder 123e1 20000 -> 1230
|
|
|
|
remx903 remainder 123e1 2000 -> 1230
|
|
|
|
remx904 remainder 123e1 200 -> 30
|
|
|
|
remx905 remainder 123e1 20 -> 10
|
|
|
|
remx906 remainder 123e1 2 -> 0
|
|
|
|
|
|
|
|
remx909 remainder 123e1 50000000000000000 -> 1230
|
|
|
|
remx910 remainder 123e1 5000000000000000 -> 1230
|
|
|
|
remx911 remainder 123e1 500000000000000 -> 1230
|
|
|
|
remx912 remainder 123e1 50000000000000 -> 1230
|
|
|
|
remx913 remainder 123e1 5000000000000 -> 1230
|
|
|
|
remx914 remainder 123e1 500000000000 -> 1230
|
|
|
|
remx915 remainder 123e1 50000000000 -> 1230
|
|
|
|
remx916 remainder 123e1 5000000000 -> 1230
|
|
|
|
remx917 remainder 123e1 500000000 -> 1230
|
|
|
|
remx919 remainder 123e1 50000000 -> 1230
|
|
|
|
remx920 remainder 123e1 5000000 -> 1230
|
|
|
|
remx921 remainder 123e1 500000 -> 1230
|
|
|
|
remx922 remainder 123e1 50000 -> 1230
|
|
|
|
remx923 remainder 123e1 5000 -> 1230
|
|
|
|
remx924 remainder 123e1 500 -> 230
|
|
|
|
remx925 remainder 123e1 50 -> 30
|
|
|
|
remx926 remainder 123e1 5 -> 0
|
|
|
|
|
|
|
|
remx929 remainder 123e1 90000000000000000 -> 1230
|
|
|
|
remx930 remainder 123e1 9000000000000000 -> 1230
|
|
|
|
remx931 remainder 123e1 900000000000000 -> 1230
|
|
|
|
remx932 remainder 123e1 90000000000000 -> 1230
|
|
|
|
remx933 remainder 123e1 9000000000000 -> 1230
|
|
|
|
remx934 remainder 123e1 900000000000 -> 1230
|
|
|
|
remx935 remainder 123e1 90000000000 -> 1230
|
|
|
|
remx936 remainder 123e1 9000000000 -> 1230
|
|
|
|
remx937 remainder 123e1 900000000 -> 1230
|
|
|
|
remx939 remainder 123e1 90000000 -> 1230
|
|
|
|
remx940 remainder 123e1 9000000 -> 1230
|
|
|
|
remx941 remainder 123e1 900000 -> 1230
|
|
|
|
remx942 remainder 123e1 90000 -> 1230
|
|
|
|
remx943 remainder 123e1 9000 -> 1230
|
|
|
|
remx944 remainder 123e1 900 -> 330
|
|
|
|
remx945 remainder 123e1 90 -> 60
|
|
|
|
remx946 remainder 123e1 9 -> 6
|
|
|
|
|
|
|
|
remx950 remainder 123e1 10000000000000000 -> 1230
|
|
|
|
remx951 remainder 123e1 100000000000000000 -> 1230
|
|
|
|
remx952 remainder 123e1 1000000000000000000 -> 1230
|
|
|
|
remx953 remainder 123e1 10000000000000000000 -> 1230
|
|
|
|
remx954 remainder 123e1 100000000000000000000 -> 1230
|
|
|
|
remx955 remainder 123e1 1000000000000000000000 -> 1230
|
|
|
|
remx956 remainder 123e1 10000000000000000000000 -> 1230
|
|
|
|
remx957 remainder 123e1 100000000000000000000000 -> 1230
|
|
|
|
remx958 remainder 123e1 1000000000000000000000000 -> 1230
|
|
|
|
remx959 remainder 123e1 10000000000000000000000000 -> 1230
|
|
|
|
|
|
|
|
remx960 remainder 123e1 19999999999999999 -> 1230
|
|
|
|
remx961 remainder 123e1 199999999999999990 -> 1230
|
|
|
|
remx962 remainder 123e1 1999999999999999999 -> 1230
|
|
|
|
remx963 remainder 123e1 19999999999999999990 -> 1230
|
|
|
|
remx964 remainder 123e1 199999999999999999999 -> 1230
|
|
|
|
remx965 remainder 123e1 1999999999999999999990 -> 1230
|
|
|
|
remx966 remainder 123e1 19999999999999999999999 -> 1230
|
|
|
|
remx967 remainder 123e1 199999999999999999999990 -> 1230
|
|
|
|
remx968 remainder 123e1 1999999999999999999999999 -> 1230
|
|
|
|
remx969 remainder 123e1 19999999999999999999999990 -> 1230
|
|
|
|
|
|
|
|
remx970 remainder 1e1 10000000000000000 -> 10
|
|
|
|
remx971 remainder 1e1 100000000000000000 -> 10
|
|
|
|
remx972 remainder 1e1 1000000000000000000 -> 10
|
|
|
|
remx973 remainder 1e1 10000000000000000000 -> 10
|
|
|
|
remx974 remainder 1e1 100000000000000000000 -> 10
|
|
|
|
remx975 remainder 1e1 1000000000000000000000 -> 10
|
|
|
|
remx976 remainder 1e1 10000000000000000000000 -> 10
|
|
|
|
remx977 remainder 1e1 100000000000000000000000 -> 10
|
|
|
|
remx978 remainder 1e1 1000000000000000000000000 -> 10
|
|
|
|
remx979 remainder 1e1 10000000000000000000000000 -> 10
|
|
|
|
|
|
|
|
remx980 remainder 123e1 1000E999999 -> 1.23E+3 -- 123E+1 internally
|
|
|
|
|
|
|
|
-- overflow and underflow tests [from divide]
|
|
|
|
precision: 9
|
|
|
|
maxexponent: 999999999
|
|
|
|
minexponent: -999999999
|
|
|
|
remx990 remainder +1.23456789012345E-0 9E+999999999 -> 1.23456789 Inexact Rounded
|
|
|
|
remx991 remainder 9E+999999999 +0.23456789012345E-0 -> NaN Division_impossible
|
|
|
|
remx992 remainder +0.100 9E+999999999 -> 0.100
|
|
|
|
remx993 remainder 9E-999999999 +9.100 -> 9E-999999999
|
|
|
|
remx995 remainder -1.23456789012345E-0 9E+999999999 -> -1.23456789 Inexact Rounded
|
|
|
|
remx996 remainder 9E+999999999 -0.83456789012345E-0 -> NaN Division_impossible
|
|
|
|
remx997 remainder -0.100 9E+999999999 -> -0.100
|
|
|
|
remx998 remainder 9E-999999999 -9.100 -> 9E-999999999
|
|
|
|
|
|
|
|
-- Null tests
|
|
|
|
remx1000 remainder 10 # -> NaN Invalid_operation
|
|
|
|
remx1001 remainder # 10 -> NaN Invalid_operation
|
|
|
|
|