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.
........
diff --git a/Lib/test/decimaltestdata/ddMinMag.decTest b/Lib/test/decimaltestdata/ddMinMag.decTest
new file mode 100644
index 0000000..cc5ccec0
--- /dev/null
+++ b/Lib/test/decimaltestdata/ddMinMag.decTest
@@ -0,0 +1,293 @@
+------------------------------------------------------------------------

+-- ddMinMag.decTest -- decDouble minnummag                            --

+-- Copyright (c) IBM Corporation, 1981, 2007.  All rights reserved.   --

+------------------------------------------------------------------------

+-- 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                                                   --

+------------------------------------------------------------------------

+version: 2.56

+

+-- we assume that base comparison is tested in compare.decTest, so

+-- these mainly cover special cases and rounding

+precision:   16

+maxExponent: 384

+minExponent: -383

+extended:    1

+clamp:       1

+rounding:    half_even

+

+-- sanity checks

+ddmng001 minmag  -2  -2  -> -2

+ddmng002 minmag  -2  -1  -> -1

+ddmng003 minmag  -2   0  ->  0

+ddmng004 minmag  -2   1  ->  1

+ddmng005 minmag  -2   2  -> -2

+ddmng006 minmag  -1  -2  -> -1

+ddmng007 minmag  -1  -1  -> -1

+ddmng008 minmag  -1   0  ->  0

+ddmng009 minmag  -1   1  -> -1

+ddmng010 minmag  -1   2  -> -1

+ddmng011 minmag   0  -2  ->  0

+ddmng012 minmag   0  -1  ->  0

+ddmng013 minmag   0   0  ->  0

+ddmng014 minmag   0   1  ->  0

+ddmng015 minmag   0   2  ->  0

+ddmng016 minmag   1  -2  ->  1

+ddmng017 minmag   1  -1  -> -1

+ddmng018 minmag   1   0  ->  0

+ddmng019 minmag   1   1  ->  1

+ddmng020 minmag   1   2  ->  1

+ddmng021 minmag   2  -2  -> -2

+ddmng022 minmag   2  -1  -> -1

+ddmng023 minmag   2   0  ->  0

+ddmng025 minmag   2   1  ->  1

+ddmng026 minmag   2   2  ->  2

+

+-- extended zeros

+ddmng030 minmag   0     0   ->  0

+ddmng031 minmag   0    -0   -> -0

+ddmng032 minmag   0    -0.0 -> -0.0

+ddmng033 minmag   0     0.0 ->  0.0

+ddmng034 minmag  -0     0   -> -0

+ddmng035 minmag  -0    -0   -> -0

+ddmng036 minmag  -0    -0.0 -> -0

+ddmng037 minmag  -0     0.0 -> -0

+ddmng038 minmag   0.0   0   ->  0.0

+ddmng039 minmag   0.0  -0   -> -0

+ddmng040 minmag   0.0  -0.0 -> -0.0

+ddmng041 minmag   0.0   0.0 ->  0.0

+ddmng042 minmag  -0.0   0   -> -0.0

+ddmng043 minmag  -0.0  -0   -> -0

+ddmng044 minmag  -0.0  -0.0 -> -0.0

+ddmng045 minmag  -0.0   0.0 -> -0.0

+

+ddmng046 minmag   0E1  -0E1 -> -0E+1

+ddmng047 minmag  -0E1   0E2 -> -0E+1

+ddmng048 minmag   0E2   0E1 ->  0E+1

+ddmng049 minmag   0E1   0E2 ->  0E+1

+ddmng050 minmag  -0E3  -0E2 -> -0E+3

+ddmng051 minmag  -0E2  -0E3 -> -0E+3

+

+-- Specials

+ddmng090 minmag  Inf  -Inf   -> -Infinity

+ddmng091 minmag  Inf  -1000  -> -1000

+ddmng092 minmag  Inf  -1     -> -1

+ddmng093 minmag  Inf  -0     -> -0

+ddmng094 minmag  Inf   0     ->  0

+ddmng095 minmag  Inf   1     ->  1

+ddmng096 minmag  Inf   1000  ->  1000

+ddmng097 minmag  Inf   Inf   ->  Infinity

+ddmng098 minmag -1000  Inf   -> -1000

+ddmng099 minmag -Inf   Inf   -> -Infinity

+ddmng100 minmag -1     Inf   -> -1

+ddmng101 minmag -0     Inf   -> -0

+ddmng102 minmag  0     Inf   ->  0

+ddmng103 minmag  1     Inf   ->  1

+ddmng104 minmag  1000  Inf   ->  1000

+ddmng105 minmag  Inf   Inf   ->  Infinity

+

+ddmng120 minmag -Inf  -Inf   -> -Infinity

+ddmng121 minmag -Inf  -1000  -> -1000

+ddmng122 minmag -Inf  -1     -> -1

+ddmng123 minmag -Inf  -0     -> -0

+ddmng124 minmag -Inf   0     ->  0

+ddmng125 minmag -Inf   1     ->  1

+ddmng126 minmag -Inf   1000  ->  1000

+ddmng127 minmag -Inf   Inf   -> -Infinity

+ddmng128 minmag -Inf  -Inf   -> -Infinity

+ddmng129 minmag -1000 -Inf   -> -1000

+ddmng130 minmag -1    -Inf   -> -1

+ddmng131 minmag -0    -Inf   -> -0

+ddmng132 minmag  0    -Inf   ->  0

+ddmng133 minmag  1    -Inf   ->  1

+ddmng134 minmag  1000 -Inf   ->  1000

+ddmng135 minmag  Inf  -Inf   -> -Infinity

+

+-- 2004.08.02 754r chooses number over NaN in mixed cases

+ddmng141 minmag  NaN -Inf    ->  -Infinity

+ddmng142 minmag  NaN -1000   ->  -1000

+ddmng143 minmag  NaN -1      ->  -1

+ddmng144 minmag  NaN -0      ->  -0

+ddmng145 minmag  NaN  0      ->  0

+ddmng146 minmag  NaN  1      ->  1

+ddmng147 minmag  NaN  1000   ->  1000

+ddmng148 minmag  NaN  Inf    ->  Infinity

+ddmng149 minmag  NaN  NaN    ->  NaN

+ddmng150 minmag -Inf  NaN    -> -Infinity

+ddmng151 minmag -1000 NaN    -> -1000

+ddmng152 minmag -1   -NaN    -> -1

+ddmng153 minmag -0    NaN    -> -0

+ddmng154 minmag  0   -NaN    ->  0

+ddmng155 minmag  1    NaN    ->  1

+ddmng156 minmag  1000 NaN    ->  1000

+ddmng157 minmag  Inf  NaN    ->  Infinity

+

+ddmng161 minmag  sNaN -Inf   ->  NaN  Invalid_operation

+ddmng162 minmag  sNaN -1000  ->  NaN  Invalid_operation

+ddmng163 minmag  sNaN -1     ->  NaN  Invalid_operation

+ddmng164 minmag  sNaN -0     ->  NaN  Invalid_operation

+ddmng165 minmag -sNaN  0     -> -NaN  Invalid_operation

+ddmng166 minmag -sNaN  1     -> -NaN  Invalid_operation

+ddmng167 minmag  sNaN  1000  ->  NaN  Invalid_operation

+ddmng168 minmag  sNaN  NaN   ->  NaN  Invalid_operation

+ddmng169 minmag  sNaN sNaN   ->  NaN  Invalid_operation

+ddmng170 minmag  NaN  sNaN   ->  NaN  Invalid_operation

+ddmng171 minmag -Inf  sNaN   ->  NaN  Invalid_operation

+ddmng172 minmag -1000 sNaN   ->  NaN  Invalid_operation

+ddmng173 minmag -1    sNaN   ->  NaN  Invalid_operation

+ddmng174 minmag -0    sNaN   ->  NaN  Invalid_operation

+ddmng175 minmag  0    sNaN   ->  NaN  Invalid_operation

+ddmng176 minmag  1    sNaN   ->  NaN  Invalid_operation

+ddmng177 minmag  1000 sNaN   ->  NaN  Invalid_operation

+ddmng178 minmag  Inf  sNaN   ->  NaN  Invalid_operation

+ddmng179 minmag  NaN  sNaN   ->  NaN  Invalid_operation

+

+-- propagating NaNs

+ddmng181 minmag  NaN9   -Inf   -> -Infinity

+ddmng182 minmag -NaN8    9990  ->  9990

+ddmng183 minmag  NaN71   Inf   ->  Infinity

+

+ddmng184 minmag  NaN1    NaN54 ->  NaN1

+ddmng185 minmag  NaN22  -NaN53 ->  NaN22

+ddmng186 minmag -NaN3    NaN6  -> -NaN3

+ddmng187 minmag -NaN44   NaN7  -> -NaN44

+

+ddmng188 minmag -Inf     NaN41 -> -Infinity

+ddmng189 minmag -9999   -NaN33 -> -9999

+ddmng190 minmag  Inf     NaN2  ->  Infinity

+

+ddmng191 minmag  sNaN99 -Inf    ->  NaN99 Invalid_operation

+ddmng192 minmag  sNaN98 -11     ->  NaN98 Invalid_operation

+ddmng193 minmag -sNaN97  NaN8   -> -NaN97 Invalid_operation

+ddmng194 minmag  sNaN69 sNaN94  ->  NaN69 Invalid_operation

+ddmng195 minmag  NaN95  sNaN93  ->  NaN93 Invalid_operation

+ddmng196 minmag -Inf    sNaN92  ->  NaN92 Invalid_operation

+ddmng197 minmag  088    sNaN91  ->  NaN91 Invalid_operation

+ddmng198 minmag  Inf   -sNaN90  -> -NaN90 Invalid_operation

+ddmng199 minmag  NaN    sNaN86  ->  NaN86 Invalid_operation

+

+-- old rounding checks

+ddmng221 minmag -12345678000 1  -> 1

+ddmng222 minmag 1 -12345678000  -> 1

+ddmng223 minmag -1234567800  1  -> 1

+ddmng224 minmag 1 -1234567800   -> 1

+ddmng225 minmag -1234567890  1  -> 1

+ddmng226 minmag 1 -1234567890   -> 1

+ddmng227 minmag -1234567891  1  -> 1

+ddmng228 minmag 1 -1234567891   -> 1

+ddmng229 minmag -12345678901 1  -> 1

+ddmng230 minmag 1 -12345678901  -> 1

+ddmng231 minmag -1234567896  1  -> 1

+ddmng232 minmag 1 -1234567896   -> 1

+ddmng233 minmag 1234567891  1   -> 1

+ddmng234 minmag 1 1234567891    -> 1

+ddmng235 minmag 12345678901 1   -> 1

+ddmng236 minmag 1 12345678901   -> 1

+ddmng237 minmag 1234567896  1   -> 1

+ddmng238 minmag 1 1234567896    -> 1

+

+-- from examples

+ddmng280 minmag '3'   '2'  ->  '2'

+ddmng281 minmag '-10' '3'  ->  '3'

+ddmng282 minmag '1.0' '1'  ->  '1.0'

+ddmng283 minmag '1' '1.0'  ->  '1.0'

+ddmng284 minmag '7' 'NaN'  ->  '7'

+

+-- expanded list from min/max 754r purple prose

+-- [explicit tests for exponent ordering]

+ddmng401 minmag  Inf    1.1     ->  1.1

+ddmng402 minmag  1.1    1       ->  1

+ddmng403 minmag  1      1.0     ->  1.0

+ddmng404 minmag  1.0    0.1     ->  0.1

+ddmng405 minmag  0.1    0.10    ->  0.10

+ddmng406 minmag  0.10   0.100   ->  0.100

+ddmng407 minmag  0.10   0       ->  0

+ddmng408 minmag  0      0.0     ->  0.0

+ddmng409 minmag  0.0   -0       -> -0

+ddmng410 minmag  0.0   -0.0     -> -0.0

+ddmng411 minmag  0.00  -0.0     -> -0.0

+ddmng412 minmag  0.0   -0.00    -> -0.00

+ddmng413 minmag  0     -0.0     -> -0.0

+ddmng414 minmag  0     -0       -> -0

+ddmng415 minmag -0.0   -0       -> -0

+ddmng416 minmag -0     -0.100   -> -0

+ddmng417 minmag -0.100 -0.10    -> -0.10

+ddmng418 minmag -0.10  -0.1     -> -0.1

+ddmng419 minmag -0.1   -1.0     -> -0.1

+ddmng420 minmag -1.0   -1       -> -1

+ddmng421 minmag -1     -1.1     -> -1

+ddmng423 minmag -1.1   -Inf     -> -1.1

+-- same with operands reversed

+ddmng431 minmag  1.1    Inf     ->  1.1

+ddmng432 minmag  1      1.1     ->  1

+ddmng433 minmag  1.0    1       ->  1.0

+ddmng434 minmag  0.1    1.0     ->  0.1

+ddmng435 minmag  0.10   0.1     ->  0.10

+ddmng436 minmag  0.100  0.10    ->  0.100

+ddmng437 minmag  0      0.10    ->  0

+ddmng438 minmag  0.0    0       ->  0.0

+ddmng439 minmag -0      0.0     -> -0

+ddmng440 minmag -0.0    0.0     -> -0.0

+ddmng441 minmag -0.0    0.00    -> -0.0

+ddmng442 minmag -0.00   0.0     -> -0.00

+ddmng443 minmag -0.0    0       -> -0.0

+ddmng444 minmag -0      0       -> -0

+ddmng445 minmag -0     -0.0     -> -0

+ddmng446 minmag -0.100 -0       -> -0

+ddmng447 minmag -0.10  -0.100   -> -0.10

+ddmng448 minmag -0.1   -0.10    -> -0.1

+ddmng449 minmag -1.0   -0.1     -> -0.1

+ddmng450 minmag -1     -1.0     -> -1

+ddmng451 minmag -1.1   -1       -> -1

+ddmng453 minmag -Inf   -1.1     -> -1.1

+-- largies

+ddmng460 minmag  1000   1E+3    ->  1000

+ddmng461 minmag  1E+3   1000    ->  1000

+ddmng462 minmag  1000  -1E+3    -> -1E+3

+ddmng463 minmag  1E+3   -384    -> -384

+ddmng464 minmag -384    1E+3    -> -384

+ddmng465 minmag -1E+3   1000    -> -1E+3

+ddmng466 minmag -384   -1E+3    -> -384

+ddmng467 minmag -1E+3   -384    -> -384

+

+-- subnormals

+ddmng510 minmag  1.00E-383       0  ->   0

+ddmng511 minmag  0.1E-383        0  ->   0

+ddmng512 minmag  0.10E-383       0  ->   0

+ddmng513 minmag  0.100E-383      0  ->   0

+ddmng514 minmag  0.01E-383       0  ->   0

+ddmng515 minmag  0.999E-383      0  ->   0

+ddmng516 minmag  0.099E-383      0  ->   0

+ddmng517 minmag  0.009E-383      0  ->   0

+ddmng518 minmag  0.001E-383      0  ->   0

+ddmng519 minmag  0.0009E-383     0  ->   0

+ddmng520 minmag  0.0001E-383     0  ->   0

+

+ddmng530 minmag -1.00E-383       0  ->   0

+ddmng531 minmag -0.1E-383        0  ->   0

+ddmng532 minmag -0.10E-383       0  ->   0

+ddmng533 minmag -0.100E-383      0  ->   0

+ddmng534 minmag -0.01E-383       0  ->   0

+ddmng535 minmag -0.999E-383      0  ->   0

+ddmng536 minmag -0.099E-383      0  ->   0

+ddmng537 minmag -0.009E-383      0  ->   0

+ddmng538 minmag -0.001E-383      0  ->   0

+ddmng539 minmag -0.0009E-383     0  ->   0

+ddmng540 minmag -0.0001E-383     0  ->   0

+

+

+-- Null tests

+ddmng900 minmag 10  # -> NaN Invalid_operation

+ddmng901 minmag  # 10 -> NaN Invalid_operation