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/dqNextToward.decTest b/Lib/test/decimaltestdata/dqNextToward.decTest
new file mode 100644
index 0000000..e534951
--- /dev/null
+++ b/Lib/test/decimaltestdata/dqNextToward.decTest
@@ -0,0 +1,375 @@
+------------------------------------------------------------------------

+-- dqNextToward.decTest -- decQuad next toward rhs [754r nextafter]   --

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

+

+-- All operands and results are decQuads.

+extended:    1

+clamp:       1

+precision:   34

+maxExponent: 6144

+minExponent: -6143

+rounding:    half_even

+

+

+-- Sanity check with a scattering of numerics

+dqnextt001 nexttoward   10    10   ->  10

+dqnextt002 nexttoward  -10   -10   -> -10

+dqnextt003 nexttoward   1     10   ->  1.000000000000000000000000000000001

+dqnextt004 nexttoward   1    -10   ->  0.9999999999999999999999999999999999

+dqnextt005 nexttoward  -1     10   -> -0.9999999999999999999999999999999999

+dqnextt006 nexttoward  -1    -10   -> -1.000000000000000000000000000000001

+dqnextt007 nexttoward   0     10   ->  1E-6176       Underflow Subnormal Inexact Rounded

+dqnextt008 nexttoward   0    -10   -> -1E-6176       Underflow Subnormal Inexact Rounded

+dqnextt009 nexttoward   9.999999999999999999999999999999999E+6144 +Infinity ->  Infinity Overflow Inexact Rounded

+dqnextt010 nexttoward  -9.999999999999999999999999999999999E+6144 -Infinity -> -Infinity Overflow Inexact Rounded

+dqnextt011 nexttoward       9.999999999999999999999999999999999  10  ->  10.00000000000000000000000000000000

+dqnextt012 nexttoward   10  9.999999999999999999999999999999999      ->  9.999999999999999999999999999999999

+dqnextt013 nexttoward      -9.999999999999999999999999999999999 -10  -> -10.00000000000000000000000000000000

+dqnextt014 nexttoward  -10 -9.999999999999999999999999999999999      -> -9.999999999999999999999999999999999

+dqnextt015 nexttoward       9.999999999999999999999999999999998  10  ->  9.999999999999999999999999999999999

+dqnextt016 nexttoward   10  9.999999999999999999999999999999998      ->  9.999999999999999999999999999999999

+dqnextt017 nexttoward      -9.999999999999999999999999999999998 -10  -> -9.999999999999999999999999999999999

+dqnextt018 nexttoward  -10 -9.999999999999999999999999999999998      -> -9.999999999999999999999999999999999

+

+------- lhs=rhs

+-- finites

+dqnextt101 nexttoward          7       7 ->  7

+dqnextt102 nexttoward         -7      -7 -> -7

+dqnextt103 nexttoward         75      75 ->  75

+dqnextt104 nexttoward        -75     -75 -> -75

+dqnextt105 nexttoward       7.50     7.5 ->  7.50

+dqnextt106 nexttoward      -7.50   -7.50 -> -7.50

+dqnextt107 nexttoward       7.500 7.5000 ->  7.500

+dqnextt108 nexttoward      -7.500   -7.5 -> -7.500

+

+-- zeros

+dqnextt111 nexttoward          0       0 ->  0

+dqnextt112 nexttoward         -0      -0 -> -0

+dqnextt113 nexttoward       0E+4       0 ->  0E+4

+dqnextt114 nexttoward      -0E+4      -0 -> -0E+4

+dqnextt115 nexttoward     0.00000000000   0.000000000000 ->  0E-11

+dqnextt116 nexttoward    -0.00000000000  -0.00           -> -0E-11

+dqnextt117 nexttoward      0E-141      0 ->  0E-141

+dqnextt118 nexttoward     -0E-141   -000 -> -0E-141

+

+-- full coefficients, alternating bits

+dqnextt121 nexttoward   268268268    268268268 ->   268268268

+dqnextt122 nexttoward  -268268268   -268268268 ->  -268268268

+dqnextt123 nexttoward   134134134    134134134 ->   134134134

+dqnextt124 nexttoward  -134134134   -134134134 ->  -134134134

+

+-- Nmax, Nmin, Ntiny

+dqnextt131 nexttoward  9.999999999999999999999999999999999E+6144  9.999999999999999999999999999999999E+6144   ->   9.999999999999999999999999999999999E+6144

+dqnextt132 nexttoward  1E-6143           1E-6143            ->   1E-6143

+dqnextt133 nexttoward  1.000000000000000000000000000000000E-6143  1.000000000000000000000000000000000E-6143   ->   1.000000000000000000000000000000000E-6143

+dqnextt134 nexttoward  1E-6176           1E-6176            ->   1E-6176

+

+dqnextt135 nexttoward  -1E-6176          -1E-6176           ->  -1E-6176

+dqnextt136 nexttoward  -1.000000000000000000000000000000000E-6143 -1.000000000000000000000000000000000E-6143  ->  -1.000000000000000000000000000000000E-6143

+dqnextt137 nexttoward  -1E-6143          -1E-6143           ->  -1E-6143

+dqnextt138 nexttoward  -9.999999999999999999999999999999999E+6144 -9.999999999999999999999999999999999E+6144  ->  -9.999999999999999999999999999999999E+6144

+

+------- lhs<rhs

+dqnextt201 nexttoward  0.9999999999999999999999999999999995 Infinity ->   0.9999999999999999999999999999999996

+dqnextt202 nexttoward  0.9999999999999999999999999999999996 Infinity ->   0.9999999999999999999999999999999997

+dqnextt203 nexttoward  0.9999999999999999999999999999999997 Infinity ->   0.9999999999999999999999999999999998

+dqnextt204 nexttoward  0.9999999999999999999999999999999998 Infinity ->   0.9999999999999999999999999999999999

+dqnextt205 nexttoward  0.9999999999999999999999999999999999 Infinity ->   1.000000000000000000000000000000000

+dqnextt206 nexttoward  1.000000000000000000000000000000000  Infinity ->   1.000000000000000000000000000000001

+dqnextt207 nexttoward  1.0         Infinity ->   1.000000000000000000000000000000001

+dqnextt208 nexttoward  1           Infinity ->   1.000000000000000000000000000000001

+dqnextt209 nexttoward  1.000000000000000000000000000000001  Infinity ->   1.000000000000000000000000000000002

+dqnextt210 nexttoward  1.000000000000000000000000000000002  Infinity ->   1.000000000000000000000000000000003

+dqnextt211 nexttoward  1.000000000000000000000000000000003  Infinity ->   1.000000000000000000000000000000004

+dqnextt212 nexttoward  1.000000000000000000000000000000004  Infinity ->   1.000000000000000000000000000000005

+dqnextt213 nexttoward  1.000000000000000000000000000000005  Infinity ->   1.000000000000000000000000000000006

+dqnextt214 nexttoward  1.000000000000000000000000000000006  Infinity ->   1.000000000000000000000000000000007

+dqnextt215 nexttoward  1.000000000000000000000000000000007  Infinity ->   1.000000000000000000000000000000008

+dqnextt216 nexttoward  1.000000000000000000000000000000008  Infinity ->   1.000000000000000000000000000000009

+dqnextt217 nexttoward  1.000000000000000000000000000000009  Infinity ->   1.000000000000000000000000000000010

+dqnextt218 nexttoward  1.000000000000000000000000000000010  Infinity ->   1.000000000000000000000000000000011

+dqnextt219 nexttoward  1.000000000000000000000000000000011  Infinity ->   1.000000000000000000000000000000012

+

+dqnextt221 nexttoward -0.9999999999999999999999999999999995 Infinity ->  -0.9999999999999999999999999999999994

+dqnextt222 nexttoward -0.9999999999999999999999999999999996 Infinity -> -0.9999999999999999999999999999999995

+dqnextt223 nexttoward -0.9999999999999999999999999999999997 Infinity ->  -0.9999999999999999999999999999999996

+dqnextt224 nexttoward -0.9999999999999999999999999999999998 Infinity ->  -0.9999999999999999999999999999999997

+dqnextt225 nexttoward -0.9999999999999999999999999999999999 Infinity ->  -0.9999999999999999999999999999999998

+dqnextt226 nexttoward -1.000000000000000000000000000000000  Infinity ->  -0.9999999999999999999999999999999999

+dqnextt227 nexttoward -1.0         Infinity ->  -0.9999999999999999999999999999999999

+dqnextt228 nexttoward -1           Infinity ->  -0.9999999999999999999999999999999999

+dqnextt229 nexttoward -1.000000000000000000000000000000001  Infinity ->  -1.000000000000000000000000000000000

+dqnextt230 nexttoward -1.000000000000000000000000000000002  Infinity ->  -1.000000000000000000000000000000001

+dqnextt231 nexttoward -1.000000000000000000000000000000003  Infinity ->  -1.000000000000000000000000000000002

+dqnextt232 nexttoward -1.000000000000000000000000000000004  Infinity ->  -1.000000000000000000000000000000003

+dqnextt233 nexttoward -1.000000000000000000000000000000005  Infinity ->  -1.000000000000000000000000000000004

+dqnextt234 nexttoward -1.000000000000000000000000000000006  Infinity ->  -1.000000000000000000000000000000005

+dqnextt235 nexttoward -1.000000000000000000000000000000007  Infinity ->  -1.000000000000000000000000000000006

+dqnextt236 nexttoward -1.000000000000000000000000000000008  Infinity ->  -1.000000000000000000000000000000007

+dqnextt237 nexttoward -1.000000000000000000000000000000009  Infinity ->  -1.000000000000000000000000000000008

+dqnextt238 nexttoward -1.000000000000000000000000000000010  Infinity ->  -1.000000000000000000000000000000009

+dqnextt239 nexttoward -1.000000000000000000000000000000011  Infinity ->  -1.000000000000000000000000000000010

+dqnextt240 nexttoward -1.000000000000000000000000000000012  Infinity ->  -1.000000000000000000000000000000011

+

+-- Zeros

+dqnextt300 nexttoward  0           Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt301 nexttoward  0.00        Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt302 nexttoward  0E-300      Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt303 nexttoward  0E+300      Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt304 nexttoward  0E+30000    Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt305 nexttoward -0           Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt306 nexttoward -0.00        Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt307 nexttoward -0E-300      Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt308 nexttoward -0E+300      Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+dqnextt309 nexttoward -0E+30000    Infinity ->  1E-6176              Underflow Subnormal Inexact Rounded

+

+-- specials

+dqnextt350 nexttoward   Inf    Infinity ->  Infinity

+dqnextt351 nexttoward  -Inf    Infinity -> -9.999999999999999999999999999999999E+6144

+dqnextt352 nexttoward   NaN    Infinity ->  NaN

+dqnextt353 nexttoward  sNaN    Infinity ->  NaN   Invalid_operation

+dqnextt354 nexttoward   NaN77  Infinity ->  NaN77

+dqnextt355 nexttoward  sNaN88  Infinity ->  NaN88 Invalid_operation

+dqnextt356 nexttoward  -NaN    Infinity -> -NaN

+dqnextt357 nexttoward -sNaN    Infinity -> -NaN   Invalid_operation

+dqnextt358 nexttoward  -NaN77  Infinity -> -NaN77

+dqnextt359 nexttoward -sNaN88  Infinity -> -NaN88 Invalid_operation

+

+-- Nmax, Nmin, Ntiny, subnormals

+dqnextt370 nexttoward  -9.999999999999999999999999999999999E+6144  Infinity  -> -9.999999999999999999999999999999998E+6144

+dqnextt371 nexttoward  -9.999999999999999999999999999999998E+6144  Infinity  -> -9.999999999999999999999999999999997E+6144

+dqnextt372 nexttoward  -1E-6143                  Infinity  -> -9.99999999999999999999999999999999E-6144  Underflow Subnormal Inexact Rounded

+dqnextt373 nexttoward  -1.000000000000000E-6143  Infinity  -> -9.99999999999999999999999999999999E-6144  Underflow Subnormal Inexact Rounded

+dqnextt374 nexttoward  -9E-6176                  Infinity  -> -8E-6176                 Underflow Subnormal Inexact Rounded

+dqnextt375 nexttoward  -9.9E-6175                Infinity  -> -9.8E-6175               Underflow Subnormal Inexact Rounded

+dqnextt376 nexttoward  -9.99999999999999999999999999999E-6147      Infinity  -> -9.99999999999999999999999999998E-6147     Underflow Subnormal Inexact Rounded

+dqnextt377 nexttoward  -9.99999999999999999999999999999999E-6144   Infinity  -> -9.99999999999999999999999999999998E-6144  Underflow Subnormal Inexact Rounded

+dqnextt378 nexttoward  -9.99999999999999999999999999999998E-6144   Infinity  -> -9.99999999999999999999999999999997E-6144  Underflow Subnormal Inexact Rounded

+dqnextt379 nexttoward  -9.99999999999999999999999999999997E-6144   Infinity  -> -9.99999999999999999999999999999996E-6144  Underflow Subnormal Inexact Rounded

+dqnextt380 nexttoward  -0E-6176                  Infinity  ->  1E-6176                 Underflow Subnormal Inexact Rounded

+dqnextt381 nexttoward  -1E-6176                  Infinity  -> -0E-6176 Underflow Subnormal Inexact Rounded Clamped

+dqnextt382 nexttoward  -2E-6176                  Infinity  -> -1E-6176                 Underflow Subnormal Inexact Rounded

+

+dqnextt383 nexttoward   0E-6176                  Infinity  ->  1E-6176                 Underflow Subnormal Inexact Rounded

+dqnextt384 nexttoward   1E-6176                  Infinity  ->  2E-6176                 Underflow Subnormal Inexact Rounded

+dqnextt385 nexttoward   2E-6176                  Infinity  ->  3E-6176                 Underflow Subnormal Inexact Rounded

+dqnextt386 nexttoward   10E-6176                 Infinity  ->  1.1E-6175               Underflow Subnormal Inexact Rounded

+dqnextt387 nexttoward   100E-6176                Infinity  ->  1.01E-6174              Underflow Subnormal Inexact Rounded

+dqnextt388 nexttoward   100000E-6176             Infinity  ->  1.00001E-6171           Underflow Subnormal Inexact Rounded

+dqnextt389 nexttoward   1.00000000000000000000000000000E-6143      Infinity  ->  1.000000000000000000000000000000001E-6143

+dqnextt390 nexttoward   1.000000000000000000000000000000000E-6143  Infinity  ->  1.000000000000000000000000000000001E-6143

+dqnextt391 nexttoward   1E-6143                  Infinity  ->  1.000000000000000000000000000000001E-6143

+dqnextt392 nexttoward   9.999999999999999999999999999999997E+6144  Infinity  ->  9.999999999999999999999999999999998E+6144

+dqnextt393 nexttoward   9.999999999999999999999999999999998E+6144  Infinity  ->  9.999999999999999999999999999999999E+6144

+dqnextt394 nexttoward   9.999999999999999999999999999999999E+6144  Infinity  ->  Infinity               Overflow Inexact Rounded

+

+------- lhs>rhs

+dqnextt401 nexttoward  0.9999999999999999999999999999999995  -Infinity ->   0.9999999999999999999999999999999994

+dqnextt402 nexttoward  0.9999999999999999999999999999999996  -Infinity ->   0.9999999999999999999999999999999995

+dqnextt403 nexttoward  0.9999999999999999999999999999999997  -Infinity ->   0.9999999999999999999999999999999996

+dqnextt404 nexttoward  0.9999999999999999999999999999999998  -Infinity ->   0.9999999999999999999999999999999997

+dqnextt405 nexttoward  0.9999999999999999999999999999999999  -Infinity ->   0.9999999999999999999999999999999998

+dqnextt406 nexttoward  1.000000000000000000000000000000000   -Infinity ->   0.9999999999999999999999999999999999

+dqnextt407 nexttoward  1.0          -Infinity ->   0.9999999999999999999999999999999999

+dqnextt408 nexttoward  1            -Infinity ->   0.9999999999999999999999999999999999

+dqnextt409 nexttoward  1.000000000000000000000000000000001   -Infinity ->   1.000000000000000000000000000000000

+dqnextt410 nexttoward  1.000000000000000000000000000000002   -Infinity ->   1.000000000000000000000000000000001

+dqnextt411 nexttoward  1.000000000000000000000000000000003   -Infinity ->   1.000000000000000000000000000000002

+dqnextt412 nexttoward  1.000000000000000000000000000000004   -Infinity ->   1.000000000000000000000000000000003

+dqnextt413 nexttoward  1.000000000000000000000000000000005   -Infinity ->   1.000000000000000000000000000000004

+dqnextt414 nexttoward  1.000000000000000000000000000000006   -Infinity ->   1.000000000000000000000000000000005

+dqnextt415 nexttoward  1.000000000000000000000000000000007   -Infinity ->   1.000000000000000000000000000000006

+dqnextt416 nexttoward  1.000000000000000000000000000000008   -Infinity ->   1.000000000000000000000000000000007

+dqnextt417 nexttoward  1.000000000000000000000000000000009   -Infinity ->   1.000000000000000000000000000000008

+dqnextt418 nexttoward  1.000000000000000000000000000000010   -Infinity ->   1.000000000000000000000000000000009

+dqnextt419 nexttoward  1.000000000000000000000000000000011   -Infinity ->   1.000000000000000000000000000000010

+dqnextt420 nexttoward  1.000000000000000000000000000000012   -Infinity ->   1.000000000000000000000000000000011

+

+dqnextt421 nexttoward -0.9999999999999999999999999999999995  -Infinity ->  -0.9999999999999999999999999999999996

+dqnextt422 nexttoward -0.9999999999999999999999999999999996  -Infinity ->  -0.9999999999999999999999999999999997

+dqnextt423 nexttoward -0.9999999999999999999999999999999997  -Infinity ->  -0.9999999999999999999999999999999998

+dqnextt424 nexttoward -0.9999999999999999999999999999999998  -Infinity ->  -0.9999999999999999999999999999999999

+dqnextt425 nexttoward -0.9999999999999999999999999999999999  -Infinity ->  -1.000000000000000000000000000000000

+dqnextt426 nexttoward -1.000000000000000000000000000000000   -Infinity ->  -1.000000000000000000000000000000001

+dqnextt427 nexttoward -1.0          -Infinity ->  -1.000000000000000000000000000000001

+dqnextt428 nexttoward -1            -Infinity ->  -1.000000000000000000000000000000001

+dqnextt429 nexttoward -1.000000000000000000000000000000001   -Infinity ->  -1.000000000000000000000000000000002

+dqnextt430 nexttoward -1.000000000000000000000000000000002   -Infinity ->  -1.000000000000000000000000000000003

+dqnextt431 nexttoward -1.000000000000000000000000000000003   -Infinity ->  -1.000000000000000000000000000000004

+dqnextt432 nexttoward -1.000000000000000000000000000000004   -Infinity ->  -1.000000000000000000000000000000005

+dqnextt433 nexttoward -1.000000000000000000000000000000005   -Infinity ->  -1.000000000000000000000000000000006

+dqnextt434 nexttoward -1.000000000000000000000000000000006   -Infinity ->  -1.000000000000000000000000000000007

+dqnextt435 nexttoward -1.000000000000000000000000000000007   -Infinity ->  -1.000000000000000000000000000000008

+dqnextt436 nexttoward -1.000000000000000000000000000000008   -Infinity ->  -1.000000000000000000000000000000009

+dqnextt437 nexttoward -1.000000000000000000000000000000009   -Infinity ->  -1.000000000000000000000000000000010

+dqnextt438 nexttoward -1.000000000000000000000000000000010   -Infinity ->  -1.000000000000000000000000000000011

+dqnextt439 nexttoward -1.000000000000000000000000000000011   -Infinity ->  -1.000000000000000000000000000000012

+

+-- Zeros

+dqnextt500 nexttoward -0            -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt501 nexttoward  0            -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt502 nexttoward  0.00         -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt503 nexttoward -0.00         -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt504 nexttoward  0E-300       -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt505 nexttoward  0E+300       -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt506 nexttoward  0E+30000     -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+dqnextt507 nexttoward -0E+30000     -Infinity -> -1E-6176         Underflow Subnormal Inexact Rounded

+

+-- specials

+dqnextt550 nexttoward   Inf     -Infinity ->  9.999999999999999999999999999999999E+6144

+dqnextt551 nexttoward  -Inf     -Infinity -> -Infinity

+dqnextt552 nexttoward   NaN     -Infinity ->  NaN

+dqnextt553 nexttoward  sNaN     -Infinity ->  NaN   Invalid_operation

+dqnextt554 nexttoward   NaN77   -Infinity ->  NaN77

+dqnextt555 nexttoward  sNaN88   -Infinity ->  NaN88 Invalid_operation

+dqnextt556 nexttoward  -NaN     -Infinity -> -NaN

+dqnextt557 nexttoward -sNaN     -Infinity -> -NaN   Invalid_operation

+dqnextt558 nexttoward  -NaN77   -Infinity -> -NaN77

+dqnextt559 nexttoward -sNaN88   -Infinity -> -NaN88 Invalid_operation

+

+-- Nmax, Nmin, Ntiny, subnormals

+dqnextt670 nexttoward  9.999999999999999999999999999999999E+6144   -Infinity  -> 9.999999999999999999999999999999998E+6144

+dqnextt671 nexttoward  9.999999999999999999999999999999998E+6144   -Infinity  -> 9.999999999999999999999999999999997E+6144

+dqnextt672 nexttoward  1E-6143                   -Infinity  -> 9.99999999999999999999999999999999E-6144   Underflow Subnormal  Inexact Rounded

+dqnextt673 nexttoward  1.000000000000000000000000000000000E-6143   -Infinity  -> 9.99999999999999999999999999999999E-6144   Underflow Subnormal  Inexact Rounded

+dqnextt674 nexttoward  9E-6176                   -Infinity  -> 8E-6176                  Underflow Subnormal  Inexact Rounded

+dqnextt675 nexttoward  9.9E-6175                 -Infinity  -> 9.8E-6175                Underflow Subnormal  Inexact Rounded

+dqnextt676 nexttoward  9.99999999999999999999999999999E-6147       -Infinity  -> 9.99999999999999999999999999998E-6147      Underflow Subnormal  Inexact Rounded

+dqnextt677 nexttoward  9.99999999999999999999999999999999E-6144    -Infinity  -> 9.99999999999999999999999999999998E-6144   Underflow Subnormal  Inexact Rounded

+dqnextt678 nexttoward  9.99999999999999999999999999999998E-6144    -Infinity  -> 9.99999999999999999999999999999997E-6144   Underflow Subnormal  Inexact Rounded

+dqnextt679 nexttoward  9.99999999999999999999999999999997E-6144    -Infinity  -> 9.99999999999999999999999999999996E-6144   Underflow Subnormal  Inexact Rounded

+dqnextt680 nexttoward  0E-6176                   -Infinity  -> -1E-6176                 Underflow Subnormal  Inexact Rounded

+dqnextt681 nexttoward  1E-6176                   -Infinity  -> 0E-6176                  Underflow Subnormal  Inexact Rounded Clamped

+dqnextt682 nexttoward  2E-6176                   -Infinity  -> 1E-6176                  Underflow Subnormal  Inexact Rounded

+

+dqnextt683 nexttoward  -0E-6176                  -Infinity  -> -1E-6176                 Underflow Subnormal  Inexact Rounded

+dqnextt684 nexttoward  -1E-6176                  -Infinity  -> -2E-6176                 Underflow Subnormal  Inexact Rounded

+dqnextt685 nexttoward  -2E-6176                  -Infinity  -> -3E-6176                 Underflow Subnormal  Inexact Rounded

+dqnextt686 nexttoward  -10E-6176                 -Infinity  -> -1.1E-6175               Underflow Subnormal  Inexact Rounded

+dqnextt687 nexttoward  -100E-6176                -Infinity  -> -1.01E-6174              Underflow Subnormal  Inexact Rounded

+dqnextt688 nexttoward  -100000E-6176             -Infinity  -> -1.00001E-6171           Underflow Subnormal  Inexact Rounded

+dqnextt689 nexttoward  -1.00000000000000000000000000000E-6143      -Infinity  -> -1.000000000000000000000000000000001E-6143

+dqnextt690 nexttoward  -1.000000000000000000000000000000000E-6143  -Infinity  -> -1.000000000000000000000000000000001E-6143

+dqnextt691 nexttoward  -1E-6143                  -Infinity  -> -1.000000000000000000000000000000001E-6143

+dqnextt692 nexttoward  -9.999999999999999999999999999999998E+6144  -Infinity  -> -9.999999999999999999999999999999999E+6144

+dqnextt693 nexttoward  -9.999999999999999999999999999999999E+6144  -Infinity  -> -Infinity               Overflow Inexact Rounded

+

+------- Specials

+dqnextt780 nexttoward -Inf  -Inf   -> -Infinity

+dqnextt781 nexttoward -Inf  -1000  -> -9.999999999999999999999999999999999E+6144

+dqnextt782 nexttoward -Inf  -1     -> -9.999999999999999999999999999999999E+6144

+dqnextt783 nexttoward -Inf  -0     -> -9.999999999999999999999999999999999E+6144

+dqnextt784 nexttoward -Inf   0     -> -9.999999999999999999999999999999999E+6144

+dqnextt785 nexttoward -Inf   1     -> -9.999999999999999999999999999999999E+6144

+dqnextt786 nexttoward -Inf   1000  -> -9.999999999999999999999999999999999E+6144

+dqnextt787 nexttoward -1000 -Inf   -> -1000.000000000000000000000000000001

+dqnextt788 nexttoward -Inf  -Inf   -> -Infinity

+dqnextt789 nexttoward -1    -Inf   -> -1.000000000000000000000000000000001

+dqnextt790 nexttoward -0    -Inf   -> -1E-6176           Underflow Subnormal Inexact Rounded

+dqnextt791 nexttoward  0    -Inf   -> -1E-6176           Underflow Subnormal Inexact Rounded

+dqnextt792 nexttoward  1    -Inf   ->  0.9999999999999999999999999999999999

+dqnextt793 nexttoward  1000 -Inf   ->  999.9999999999999999999999999999999

+dqnextt794 nexttoward  Inf  -Inf   ->  9.999999999999999999999999999999999E+6144

+

+dqnextt800 nexttoward  Inf  -Inf   ->  9.999999999999999999999999999999999E+6144

+dqnextt801 nexttoward  Inf  -1000  ->  9.999999999999999999999999999999999E+6144

+dqnextt802 nexttoward  Inf  -1     ->  9.999999999999999999999999999999999E+6144

+dqnextt803 nexttoward  Inf  -0     ->  9.999999999999999999999999999999999E+6144

+dqnextt804 nexttoward  Inf   0     ->  9.999999999999999999999999999999999E+6144

+dqnextt805 nexttoward  Inf   1     ->  9.999999999999999999999999999999999E+6144

+dqnextt806 nexttoward  Inf   1000  ->  9.999999999999999999999999999999999E+6144

+dqnextt807 nexttoward  Inf   Inf   ->  Infinity

+dqnextt808 nexttoward -1000  Inf   -> -999.9999999999999999999999999999999

+dqnextt809 nexttoward -Inf   Inf   -> -9.999999999999999999999999999999999E+6144

+dqnextt810 nexttoward -1     Inf   -> -0.9999999999999999999999999999999999

+dqnextt811 nexttoward -0     Inf   ->  1E-6176           Underflow Subnormal Inexact Rounded

+dqnextt812 nexttoward  0     Inf   ->  1E-6176           Underflow Subnormal Inexact Rounded

+dqnextt813 nexttoward  1     Inf   ->  1.000000000000000000000000000000001

+dqnextt814 nexttoward  1000  Inf   ->  1000.000000000000000000000000000001

+dqnextt815 nexttoward  Inf   Inf   ->  Infinity

+

+dqnextt821 nexttoward  NaN -Inf    ->  NaN

+dqnextt822 nexttoward  NaN -1000   ->  NaN

+dqnextt823 nexttoward  NaN -1      ->  NaN

+dqnextt824 nexttoward  NaN -0      ->  NaN

+dqnextt825 nexttoward  NaN  0      ->  NaN

+dqnextt826 nexttoward  NaN  1      ->  NaN

+dqnextt827 nexttoward  NaN  1000   ->  NaN

+dqnextt828 nexttoward  NaN  Inf    ->  NaN

+dqnextt829 nexttoward  NaN  NaN    ->  NaN

+dqnextt830 nexttoward -Inf  NaN    ->  NaN

+dqnextt831 nexttoward -1000 NaN    ->  NaN

+dqnextt832 nexttoward -1    NaN    ->  NaN

+dqnextt833 nexttoward -0    NaN    ->  NaN

+dqnextt834 nexttoward  0    NaN    ->  NaN

+dqnextt835 nexttoward  1    NaN    ->  NaN

+dqnextt836 nexttoward  1000 NaN    ->  NaN

+dqnextt837 nexttoward  Inf  NaN    ->  NaN

+

+dqnextt841 nexttoward  sNaN -Inf   ->  NaN  Invalid_operation

+dqnextt842 nexttoward  sNaN -1000  ->  NaN  Invalid_operation

+dqnextt843 nexttoward  sNaN -1     ->  NaN  Invalid_operation

+dqnextt844 nexttoward  sNaN -0     ->  NaN  Invalid_operation

+dqnextt845 nexttoward  sNaN  0     ->  NaN  Invalid_operation

+dqnextt846 nexttoward  sNaN  1     ->  NaN  Invalid_operation

+dqnextt847 nexttoward  sNaN  1000  ->  NaN  Invalid_operation

+dqnextt848 nexttoward  sNaN  NaN   ->  NaN  Invalid_operation

+dqnextt849 nexttoward  sNaN sNaN   ->  NaN  Invalid_operation

+dqnextt850 nexttoward  NaN  sNaN   ->  NaN  Invalid_operation

+dqnextt851 nexttoward -Inf  sNaN   ->  NaN  Invalid_operation

+dqnextt852 nexttoward -1000 sNaN   ->  NaN  Invalid_operation

+dqnextt853 nexttoward -1    sNaN   ->  NaN  Invalid_operation

+dqnextt854 nexttoward -0    sNaN   ->  NaN  Invalid_operation

+dqnextt855 nexttoward  0    sNaN   ->  NaN  Invalid_operation

+dqnextt856 nexttoward  1    sNaN   ->  NaN  Invalid_operation

+dqnextt857 nexttoward  1000 sNaN   ->  NaN  Invalid_operation

+dqnextt858 nexttoward  Inf  sNaN   ->  NaN  Invalid_operation

+dqnextt859 nexttoward  NaN  sNaN   ->  NaN  Invalid_operation

+

+-- propagating NaNs

+dqnextt861 nexttoward  NaN1   -Inf    ->  NaN1

+dqnextt862 nexttoward +NaN2   -1000   ->  NaN2

+dqnextt863 nexttoward  NaN3    1000   ->  NaN3

+dqnextt864 nexttoward  NaN4    Inf    ->  NaN4

+dqnextt865 nexttoward  NaN5   +NaN6   ->  NaN5

+dqnextt866 nexttoward -Inf     NaN7   ->  NaN7

+dqnextt867 nexttoward -1000    NaN8   ->  NaN8

+dqnextt868 nexttoward  1000    NaN9   ->  NaN9

+dqnextt869 nexttoward  Inf    +NaN10  ->  NaN10

+dqnextt871 nexttoward  sNaN11  -Inf   ->  NaN11  Invalid_operation

+dqnextt872 nexttoward  sNaN12  -1000  ->  NaN12  Invalid_operation

+dqnextt873 nexttoward  sNaN13   1000  ->  NaN13  Invalid_operation

+dqnextt874 nexttoward  sNaN14   NaN17 ->  NaN14  Invalid_operation

+dqnextt875 nexttoward  sNaN15  sNaN18 ->  NaN15  Invalid_operation

+dqnextt876 nexttoward  NaN16   sNaN19 ->  NaN19  Invalid_operation

+dqnextt877 nexttoward -Inf    +sNaN20 ->  NaN20  Invalid_operation

+dqnextt878 nexttoward -1000    sNaN21 ->  NaN21  Invalid_operation

+dqnextt879 nexttoward  1000    sNaN22 ->  NaN22  Invalid_operation

+dqnextt880 nexttoward  Inf     sNaN23 ->  NaN23  Invalid_operation

+dqnextt881 nexttoward +NaN25  +sNaN24 ->  NaN24  Invalid_operation

+dqnextt882 nexttoward -NaN26    NaN28 -> -NaN26

+dqnextt883 nexttoward -sNaN27  sNaN29 -> -NaN27  Invalid_operation

+dqnextt884 nexttoward  1000    -NaN30 -> -NaN30

+dqnextt885 nexttoward  1000   -sNaN31 -> -NaN31  Invalid_operation

+

+-- Null tests

+dqnextt900 nexttoward 1  # -> NaN Invalid_operation

+dqnextt901 nexttoward #  1 -> NaN Invalid_operation

+