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

+-- nexttoward.decTest -- decimal 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

+

+extended:    1

+precision:   9

+rounding:    half_up

+maxExponent: 384

+minexponent: -383

+

+-- Sanity check with a scattering of numerics

+nextt001 nexttoward   10    10   ->  10

+nextt002 nexttoward  -10   -10   -> -10

+nextt003 nexttoward   1     10   ->  1.00000001

+nextt004 nexttoward   1    -10   ->  0.999999999

+nextt005 nexttoward  -1     10   -> -0.999999999

+nextt006 nexttoward  -1    -10   -> -1.00000001

+nextt007 nexttoward   0     10   ->  1E-391       Underflow Subnormal Inexact Rounded

+nextt008 nexttoward   0    -10   -> -1E-391       Underflow Subnormal Inexact Rounded

+nextt009 nexttoward   9.99999999E+384 +Infinity ->  Infinity Overflow Inexact Rounded

+nextt010 nexttoward  -9.99999999E+384 -Infinity -> -Infinity Overflow Inexact Rounded

+

+------- lhs=rhs

+-- finites

+nextt101 nexttoward          7       7 ->  7

+nextt102 nexttoward         -7      -7 -> -7

+nextt103 nexttoward         75      75 ->  75

+nextt104 nexttoward        -75     -75 -> -75

+nextt105 nexttoward       7.50     7.5 ->  7.50

+nextt106 nexttoward      -7.50   -7.50 -> -7.50

+nextt107 nexttoward       7.500 7.5000 ->  7.500

+nextt108 nexttoward      -7.500   -7.5 -> -7.500

+

+-- zeros

+nextt111 nexttoward          0       0 ->  0

+nextt112 nexttoward         -0      -0 -> -0

+nextt113 nexttoward       0E+4       0 ->  0E+4

+nextt114 nexttoward      -0E+4      -0 -> -0E+4

+nextt115 nexttoward     0.0000 0.00000 ->  0.0000

+nextt116 nexttoward    -0.0000   -0.00 -> -0.0000

+nextt117 nexttoward      0E-141      0 ->  0E-141

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

+

+-- full coefficients, alternating bits

+nextt121 nexttoward   268268268    268268268 ->   268268268

+nextt122 nexttoward  -268268268   -268268268 ->  -268268268

+nextt123 nexttoward   134134134    134134134 ->   134134134

+nextt124 nexttoward  -134134134   -134134134 ->  -134134134

+

+-- Nmax, Nmin, Ntiny

+nextt131 nexttoward  9.99999999E+384  9.99999999E+384   ->   9.99999999E+384

+nextt132 nexttoward  1E-383           1E-383            ->   1E-383

+nextt133 nexttoward  1.00000000E-383  1.00000000E-383   ->   1.00000000E-383

+nextt134 nexttoward  1E-391           1E-391            ->   1E-391

+

+nextt135 nexttoward  -1E-391          -1E-391           ->  -1E-391

+nextt136 nexttoward  -1.00000000E-383 -1.00000000E-383  ->  -1.00000000E-383

+nextt137 nexttoward  -1E-383          -1E-383           ->  -1E-383

+nextt138 nexttoward  -9.99999999E+384 -9.99999999E+384  ->  -9.99999999E+384

+

+------- lhs<rhs

+nextt201 nexttoward  0.999999995 Infinity ->   0.999999996

+nextt202 nexttoward  0.999999996 Infinity ->   0.999999997

+nextt203 nexttoward  0.999999997 Infinity ->   0.999999998

+nextt204 nexttoward  0.999999998 Infinity ->   0.999999999

+nextt205 nexttoward  0.999999999 Infinity ->   1.00000000

+nextt206 nexttoward  1.00000000  Infinity ->   1.00000001

+nextt207 nexttoward  1.0         Infinity ->   1.00000001

+nextt208 nexttoward  1           Infinity ->   1.00000001

+nextt209 nexttoward  1.00000001  Infinity ->   1.00000002

+nextt210 nexttoward  1.00000002  Infinity ->   1.00000003

+nextt211 nexttoward  1.00000003  Infinity ->   1.00000004

+nextt212 nexttoward  1.00000004  Infinity ->   1.00000005

+nextt213 nexttoward  1.00000005  Infinity ->   1.00000006

+nextt214 nexttoward  1.00000006  Infinity ->   1.00000007

+nextt215 nexttoward  1.00000007  Infinity ->   1.00000008

+nextt216 nexttoward  1.00000008  Infinity ->   1.00000009

+nextt217 nexttoward  1.00000009  Infinity ->   1.00000010

+nextt218 nexttoward  1.00000010  Infinity ->   1.00000011

+nextt219 nexttoward  1.00000011  Infinity ->   1.00000012

+

+nextt221 nexttoward -0.999999995 Infinity ->  -0.999999994

+nextt222 nexttoward -0.999999996 Infinity ->  -0.999999995

+nextt223 nexttoward -0.999999997 Infinity ->  -0.999999996

+nextt224 nexttoward -0.999999998 Infinity ->  -0.999999997

+nextt225 nexttoward -0.999999999 Infinity ->  -0.999999998

+nextt226 nexttoward -1.00000000  Infinity ->  -0.999999999

+nextt227 nexttoward -1.0         Infinity ->  -0.999999999

+nextt228 nexttoward -1           Infinity ->  -0.999999999

+nextt229 nexttoward -1.00000001  Infinity ->  -1.00000000

+nextt230 nexttoward -1.00000002  Infinity ->  -1.00000001

+nextt231 nexttoward -1.00000003  Infinity ->  -1.00000002

+nextt232 nexttoward -1.00000004  Infinity ->  -1.00000003

+nextt233 nexttoward -1.00000005  Infinity ->  -1.00000004

+nextt234 nexttoward -1.00000006  Infinity ->  -1.00000005

+nextt235 nexttoward -1.00000007  Infinity ->  -1.00000006

+nextt236 nexttoward -1.00000008  Infinity ->  -1.00000007

+nextt237 nexttoward -1.00000009  Infinity ->  -1.00000008

+nextt238 nexttoward -1.00000010  Infinity ->  -1.00000009

+nextt239 nexttoward -1.00000011  Infinity ->  -1.00000010

+nextt240 nexttoward -1.00000012  Infinity ->  -1.00000011

+

+-- input operand is >precision

+nextt241 nexttoward  1.00000010998  Infinity ->   1.00000011

+nextt242 nexttoward  1.00000010999  Infinity ->   1.00000011

+nextt243 nexttoward  1.00000011000  Infinity ->   1.00000012

+nextt244 nexttoward  1.00000011001  Infinity ->   1.00000012

+nextt245 nexttoward  1.00000011002  Infinity ->   1.00000012

+nextt246 nexttoward  1.00000011002  Infinity ->   1.00000012

+nextt247 nexttoward  1.00000011052  Infinity ->   1.00000012

+nextt248 nexttoward  1.00000011552  Infinity ->   1.00000012

+nextt249 nexttoward -1.00000010998  Infinity ->  -1.00000010

+nextt250 nexttoward -1.00000010999  Infinity ->  -1.00000010

+nextt251 nexttoward -1.00000011000  Infinity ->  -1.00000010

+nextt252 nexttoward -1.00000011001  Infinity ->  -1.00000011

+nextt253 nexttoward -1.00000011002  Infinity ->  -1.00000011

+nextt254 nexttoward -1.00000011002  Infinity ->  -1.00000011

+nextt255 nexttoward -1.00000011052  Infinity ->  -1.00000011

+nextt256 nexttoward -1.00000011552  Infinity ->  -1.00000011

+-- ultra-tiny inputs

+nextt260 nexttoward  1E-99999       Infinity ->   1E-391          Underflow Subnormal Inexact Rounded

+nextt261 nexttoward  1E-999999999   Infinity ->   1E-391          Underflow Subnormal Inexact Rounded

+nextt262 nexttoward  1E-391         Infinity ->   2E-391          Underflow Subnormal Inexact Rounded

+nextt263 nexttoward -1E-99999       Infinity ->  -0E-391          Underflow Subnormal Inexact Rounded Clamped

+nextt264 nexttoward -1E-999999999   Infinity ->  -0E-391          Underflow Subnormal Inexact Rounded Clamped

+nextt265 nexttoward -1E-391         Infinity ->  -0E-391          Underflow Subnormal Inexact Rounded Clamped

+

+-- Zeros

+nextt300 nexttoward  0           Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt301 nexttoward  0.00        Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt302 nexttoward  0E-300      Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt303 nexttoward  0E+300      Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt304 nexttoward  0E+30000    Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt305 nexttoward -0           Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt306 nexttoward -0.00        Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt307 nexttoward -0E-300      Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt308 nexttoward -0E+300      Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+nextt309 nexttoward -0E+30000    Infinity ->  1E-391              Underflow Subnormal Inexact Rounded

+

+-- specials

+nextt350 nexttoward   Inf    Infinity ->  Infinity

+nextt351 nexttoward  -Inf    Infinity -> -9.99999999E+384

+nextt352 nexttoward   NaN    Infinity ->  NaN

+nextt353 nexttoward  sNaN    Infinity ->  NaN   Invalid_operation

+nextt354 nexttoward   NaN77  Infinity ->  NaN77

+nextt355 nexttoward  sNaN88  Infinity ->  NaN88 Invalid_operation

+nextt356 nexttoward  -NaN    Infinity -> -NaN

+nextt357 nexttoward -sNaN    Infinity -> -NaN   Invalid_operation

+nextt358 nexttoward  -NaN77  Infinity -> -NaN77

+nextt359 nexttoward -sNaN88  Infinity -> -NaN88 Invalid_operation

+

+-- Nmax, Nmin, Ntiny, subnormals

+maxExponent: 999

+minexponent: -999

+nextt370 nexttoward  9.99999999E+999   Infinity -> Infinity        Overflow Inexact Rounded

+nextt371 nexttoward  9.99999998E+999   Infinity -> 9.99999999E+999

+nextt372 nexttoward  1E-999            Infinity -> 1.00000001E-999

+nextt373 nexttoward  1.00000000E-999   Infinity -> 1.00000001E-999

+nextt374 nexttoward  0.999999999E-999  Infinity -> 1.00000000E-999

+nextt375 nexttoward  0.99999999E-999   Infinity -> 1.00000000E-999

+nextt376 nexttoward  9E-1007           Infinity -> 1.0E-1006       Underflow Subnormal Inexact Rounded

+nextt377 nexttoward  9.9E-1006         Infinity -> 1.00E-1005      Underflow Subnormal Inexact Rounded

+nextt378 nexttoward  9.9999E-1003      Infinity -> 1.00000E-1002   Underflow Subnormal Inexact Rounded

+nextt379 nexttoward  9.9999998E-1000   Infinity -> 9.9999999E-1000 Underflow Subnormal Inexact Rounded

+nextt380 nexttoward  9.9999997E-1000   Infinity -> 9.9999998E-1000 Underflow Subnormal Inexact Rounded

+nextt381 nexttoward  0E-1007           Infinity -> 1E-1007         Underflow Subnormal Inexact Rounded

+nextt382 nexttoward  1E-1007           Infinity -> 2E-1007         Underflow Subnormal Inexact Rounded

+nextt383 nexttoward  2E-1007           Infinity -> 3E-1007         Underflow Subnormal Inexact Rounded

+

+nextt385 nexttoward  -0E-1007          Infinity ->  1E-1007        Underflow Subnormal Inexact Rounded

+nextt386 nexttoward  -1E-1007          Infinity -> -0E-1007        Underflow Subnormal Inexact Rounded Clamped

+nextt387 nexttoward  -2E-1007          Infinity -> -1E-1007        Underflow Subnormal Inexact Rounded

+nextt388 nexttoward  -10E-1007         Infinity -> -9E-1007        Underflow Subnormal Inexact Rounded

+nextt389 nexttoward  -100E-1007        Infinity -> -9.9E-1006      Underflow Subnormal Inexact Rounded

+nextt390 nexttoward  -100000E-1007     Infinity -> -9.9999E-1003   Underflow Subnormal Inexact Rounded

+nextt391 nexttoward  -1.0000E-999      Infinity -> -9.9999999E-1000  Underflow Subnormal Inexact Rounded

+nextt392 nexttoward  -1.00000000E-999  Infinity -> -9.9999999E-1000  Underflow Subnormal Inexact Rounded

+nextt393 nexttoward  -1E-999           Infinity -> -9.9999999E-1000  Underflow Subnormal Inexact Rounded

+nextt394 nexttoward  -9.99999998E+999  Infinity -> -9.99999997E+999

+nextt395 nexttoward  -9.99999999E+999  Infinity -> -9.99999998E+999

+

+------- lhs>rhs

+maxExponent: 384

+minexponent: -383

+nextt401 nexttoward  0.999999995  -Infinity ->   0.999999994

+nextt402 nexttoward  0.999999996  -Infinity ->   0.999999995

+nextt403 nexttoward  0.999999997  -Infinity ->   0.999999996

+nextt404 nexttoward  0.999999998  -Infinity ->   0.999999997

+nextt405 nexttoward  0.999999999  -Infinity ->   0.999999998

+nextt406 nexttoward  1.00000000   -Infinity ->   0.999999999

+nextt407 nexttoward  1.0          -Infinity ->   0.999999999

+nextt408 nexttoward  1            -Infinity ->   0.999999999

+nextt409 nexttoward  1.00000001   -Infinity ->   1.00000000

+nextt410 nexttoward  1.00000002   -Infinity ->   1.00000001

+nextt411 nexttoward  1.00000003   -Infinity ->   1.00000002

+nextt412 nexttoward  1.00000004   -Infinity ->   1.00000003

+nextt413 nexttoward  1.00000005   -Infinity ->   1.00000004

+nextt414 nexttoward  1.00000006   -Infinity ->   1.00000005

+nextt415 nexttoward  1.00000007   -Infinity ->   1.00000006

+nextt416 nexttoward  1.00000008   -Infinity ->   1.00000007

+nextt417 nexttoward  1.00000009   -Infinity ->   1.00000008

+nextt418 nexttoward  1.00000010   -Infinity ->   1.00000009

+nextt419 nexttoward  1.00000011   -Infinity ->   1.00000010

+nextt420 nexttoward  1.00000012   -Infinity ->   1.00000011

+

+nextt421 nexttoward -0.999999995  -Infinity ->  -0.999999996

+nextt422 nexttoward -0.999999996  -Infinity ->  -0.999999997

+nextt423 nexttoward -0.999999997  -Infinity ->  -0.999999998

+nextt424 nexttoward -0.999999998  -Infinity ->  -0.999999999

+nextt425 nexttoward -0.999999999  -Infinity ->  -1.00000000

+nextt426 nexttoward -1.00000000   -Infinity ->  -1.00000001

+nextt427 nexttoward -1.0          -Infinity ->  -1.00000001

+nextt428 nexttoward -1            -Infinity ->  -1.00000001

+nextt429 nexttoward -1.00000001   -Infinity ->  -1.00000002

+nextt430 nexttoward -1.00000002   -Infinity ->  -1.00000003

+nextt431 nexttoward -1.00000003   -Infinity ->  -1.00000004

+nextt432 nexttoward -1.00000004   -Infinity ->  -1.00000005

+nextt433 nexttoward -1.00000005   -Infinity ->  -1.00000006

+nextt434 nexttoward -1.00000006   -Infinity ->  -1.00000007

+nextt435 nexttoward -1.00000007   -Infinity ->  -1.00000008

+nextt436 nexttoward -1.00000008   -Infinity ->  -1.00000009

+nextt437 nexttoward -1.00000009   -Infinity ->  -1.00000010

+nextt438 nexttoward -1.00000010   -Infinity ->  -1.00000011

+nextt439 nexttoward -1.00000011   -Infinity ->  -1.00000012

+

+-- input operand is >precision

+nextt441 nexttoward  1.00000010998   -Infinity ->   1.00000010

+nextt442 nexttoward  1.00000010999   -Infinity ->   1.00000010

+nextt443 nexttoward  1.00000011000   -Infinity ->   1.00000010

+nextt444 nexttoward  1.00000011001   -Infinity ->   1.00000011

+nextt445 nexttoward  1.00000011002   -Infinity ->   1.00000011

+nextt446 nexttoward  1.00000011002   -Infinity ->   1.00000011

+nextt447 nexttoward  1.00000011052   -Infinity ->   1.00000011

+nextt448 nexttoward  1.00000011552   -Infinity ->   1.00000011

+nextt449 nexttoward -1.00000010998   -Infinity ->  -1.00000011

+nextt450 nexttoward -1.00000010999   -Infinity ->  -1.00000011

+nextt451 nexttoward -1.00000011000   -Infinity ->  -1.00000012

+nextt452 nexttoward -1.00000011001   -Infinity ->  -1.00000012

+nextt453 nexttoward -1.00000011002   -Infinity ->  -1.00000012

+nextt454 nexttoward -1.00000011002   -Infinity ->  -1.00000012

+nextt455 nexttoward -1.00000011052   -Infinity ->  -1.00000012

+nextt456 nexttoward -1.00000011552   -Infinity ->  -1.00000012

+-- ultra-tiny inputs

+nextt460 nexttoward  1E-99999        -Infinity ->   0E-391     Underflow Subnormal Inexact Rounded Clamped

+nextt461 nexttoward  1E-999999999    -Infinity ->   0E-391     Underflow Subnormal Inexact Rounded Clamped

+nextt462 nexttoward  1E-391          -Infinity ->   0E-391     Underflow Subnormal Inexact Rounded Clamped

+nextt463 nexttoward -1E-99999        -Infinity ->  -1E-391     Underflow Subnormal Inexact Rounded

+nextt464 nexttoward -1E-999999999    -Infinity ->  -1E-391     Underflow Subnormal Inexact Rounded

+nextt465 nexttoward -1E-391          -Infinity ->  -2E-391     Underflow Subnormal Inexact Rounded

+

+-- Zeros

+nextt500 nexttoward -0            -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt501 nexttoward  0            -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt502 nexttoward  0.00         -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt503 nexttoward -0.00         -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt504 nexttoward  0E-300       -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt505 nexttoward  0E+300       -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt506 nexttoward  0E+30000     -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt507 nexttoward -0E+30000     -Infinity -> -1E-391         Underflow Subnormal Inexact Rounded

+nextt508 nexttoward  0.00         -0.0000   -> -0.00

+

+-- specials

+nextt550 nexttoward   Inf     -Infinity ->  9.99999999E+384

+nextt551 nexttoward  -Inf     -Infinity -> -Infinity

+nextt552 nexttoward   NaN     -Infinity ->  NaN

+nextt553 nexttoward  sNaN     -Infinity ->  NaN   Invalid_operation

+nextt554 nexttoward   NaN77   -Infinity ->  NaN77

+nextt555 nexttoward  sNaN88   -Infinity ->  NaN88 Invalid_operation

+nextt556 nexttoward  -NaN     -Infinity -> -NaN

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

+nextt558 nexttoward  -NaN77   -Infinity -> -NaN77

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

+

+-- Nmax, Nmin, Ntiny, subnormals

+maxExponent: 999

+minexponent: -999

+nextt570 nexttoward  9.99999999E+999    -Infinity -> 9.99999998E+999

+nextt571 nexttoward  9.99999998E+999    -Infinity -> 9.99999997E+999

+nextt572 nexttoward  1E-999             -Infinity -> 9.9999999E-1000 Underflow Subnormal Inexact Rounded

+nextt573 nexttoward  1.00000000E-999    -Infinity -> 9.9999999E-1000 Underflow Subnormal Inexact Rounded

+nextt574 nexttoward  9E-1007            -Infinity -> 8E-1007         Underflow Subnormal Inexact Rounded

+nextt575 nexttoward  9.9E-1006          -Infinity -> 9.8E-1006       Underflow Subnormal Inexact Rounded

+nextt576 nexttoward  9.9999E-1003       -Infinity -> 9.9998E-1003    Underflow Subnormal Inexact Rounded

+nextt577 nexttoward  9.9999999E-1000    -Infinity -> 9.9999998E-1000 Underflow Subnormal Inexact Rounded

+nextt578 nexttoward  9.9999998E-1000    -Infinity -> 9.9999997E-1000 Underflow Subnormal Inexact Rounded

+nextt579 nexttoward  9.9999997E-1000    -Infinity -> 9.9999996E-1000 Underflow Subnormal Inexact Rounded

+nextt580 nexttoward  0E-1007            -Infinity -> -1E-1007        Underflow Subnormal Inexact Rounded

+nextt581 nexttoward  1E-1007            -Infinity -> 0E-1007         Underflow Subnormal Inexact Rounded Clamped

+nextt582 nexttoward  2E-1007            -Infinity -> 1E-1007         Underflow Subnormal Inexact Rounded

+

+nextt583 nexttoward  -0E-1007           -Infinity -> -1E-1007        Underflow Subnormal Inexact Rounded

+nextt584 nexttoward  -1E-1007           -Infinity -> -2E-1007        Underflow Subnormal Inexact Rounded

+nextt585 nexttoward  -2E-1007           -Infinity -> -3E-1007        Underflow Subnormal Inexact Rounded

+nextt586 nexttoward  -10E-1007          -Infinity -> -1.1E-1006      Underflow Subnormal Inexact Rounded

+nextt587 nexttoward  -100E-1007         -Infinity -> -1.01E-1005     Underflow Subnormal Inexact Rounded

+nextt588 nexttoward  -100000E-1007      -Infinity -> -1.00001E-1002  Underflow Subnormal Inexact Rounded

+nextt589 nexttoward  -1.0000E-999       -Infinity -> -1.00000001E-999

+nextt590 nexttoward  -1.00000000E-999   -Infinity -> -1.00000001E-999

+nextt591 nexttoward  -1E-999            -Infinity -> -1.00000001E-999

+nextt592 nexttoward  -9.99999998E+999   -Infinity -> -9.99999999E+999

+nextt593 nexttoward  -9.99999999E+999   -Infinity -> -Infinity Overflow Inexact Rounded

+

+

+

+

+------- Specials

+maxExponent: 384

+minexponent: -383

+nextt780 nexttoward -Inf  -Inf   -> -Infinity

+nextt781 nexttoward -Inf  -1000  -> -9.99999999E+384

+nextt782 nexttoward -Inf  -1     -> -9.99999999E+384

+nextt783 nexttoward -Inf  -0     -> -9.99999999E+384

+nextt784 nexttoward -Inf   0     -> -9.99999999E+384

+nextt785 nexttoward -Inf   1     -> -9.99999999E+384

+nextt786 nexttoward -Inf   1000  -> -9.99999999E+384

+nextt787 nexttoward -1000 -Inf   -> -1000.00001

+nextt788 nexttoward -Inf  -Inf   -> -Infinity

+nextt789 nexttoward -1    -Inf   -> -1.00000001

+nextt790 nexttoward -0    -Inf   -> -1E-391           Underflow Subnormal Inexact Rounded

+nextt791 nexttoward  0    -Inf   -> -1E-391           Underflow Subnormal Inexact Rounded

+nextt792 nexttoward  1    -Inf   ->  0.999999999

+nextt793 nexttoward  1000 -Inf   ->  999.999999

+nextt794 nexttoward  Inf  -Inf   ->  9.99999999E+384

+

+nextt800 nexttoward  Inf  -Inf   ->  9.99999999E+384

+nextt801 nexttoward  Inf  -1000  ->  9.99999999E+384

+nextt802 nexttoward  Inf  -1     ->  9.99999999E+384

+nextt803 nexttoward  Inf  -0     ->  9.99999999E+384

+nextt804 nexttoward  Inf   0     ->  9.99999999E+384

+nextt805 nexttoward  Inf   1     ->  9.99999999E+384

+nextt806 nexttoward  Inf   1000  ->  9.99999999E+384

+nextt807 nexttoward  Inf   Inf   ->  Infinity

+nextt808 nexttoward -1000  Inf   -> -999.999999

+nextt809 nexttoward -Inf   Inf   -> -9.99999999E+384

+nextt810 nexttoward -1     Inf   -> -0.999999999

+nextt811 nexttoward -0     Inf   ->  1E-391           Underflow Subnormal Inexact Rounded

+nextt812 nexttoward  0     Inf   ->  1E-391           Underflow Subnormal Inexact Rounded

+nextt813 nexttoward  1     Inf   ->  1.00000001

+nextt814 nexttoward  1000  Inf   ->  1000.00001

+nextt815 nexttoward  Inf   Inf   ->  Infinity

+

+nextt821 nexttoward  NaN -Inf    ->  NaN

+nextt822 nexttoward  NaN -1000   ->  NaN

+nextt823 nexttoward  NaN -1      ->  NaN

+nextt824 nexttoward  NaN -0      ->  NaN

+nextt825 nexttoward  NaN  0      ->  NaN

+nextt826 nexttoward  NaN  1      ->  NaN

+nextt827 nexttoward  NaN  1000   ->  NaN

+nextt828 nexttoward  NaN  Inf    ->  NaN

+nextt829 nexttoward  NaN  NaN    ->  NaN

+nextt830 nexttoward -Inf  NaN    ->  NaN

+nextt831 nexttoward -1000 NaN    ->  NaN

+nextt832 nexttoward -1    NaN    ->  NaN

+nextt833 nexttoward -0    NaN    ->  NaN

+nextt834 nexttoward  0    NaN    ->  NaN

+nextt835 nexttoward  1    NaN    ->  NaN

+nextt836 nexttoward  1000 NaN    ->  NaN

+nextt837 nexttoward  Inf  NaN    ->  NaN

+

+nextt841 nexttoward  sNaN -Inf   ->  NaN  Invalid_operation

+nextt842 nexttoward  sNaN -1000  ->  NaN  Invalid_operation

+nextt843 nexttoward  sNaN -1     ->  NaN  Invalid_operation

+nextt844 nexttoward  sNaN -0     ->  NaN  Invalid_operation

+nextt845 nexttoward  sNaN  0     ->  NaN  Invalid_operation

+nextt846 nexttoward  sNaN  1     ->  NaN  Invalid_operation

+nextt847 nexttoward  sNaN  1000  ->  NaN  Invalid_operation

+nextt848 nexttoward  sNaN  NaN   ->  NaN  Invalid_operation

+nextt849 nexttoward  sNaN sNaN   ->  NaN  Invalid_operation

+nextt850 nexttoward  NaN  sNaN   ->  NaN  Invalid_operation

+nextt851 nexttoward -Inf  sNaN   ->  NaN  Invalid_operation

+nextt852 nexttoward -1000 sNaN   ->  NaN  Invalid_operation

+nextt853 nexttoward -1    sNaN   ->  NaN  Invalid_operation

+nextt854 nexttoward -0    sNaN   ->  NaN  Invalid_operation

+nextt855 nexttoward  0    sNaN   ->  NaN  Invalid_operation

+nextt856 nexttoward  1    sNaN   ->  NaN  Invalid_operation

+nextt857 nexttoward  1000 sNaN   ->  NaN  Invalid_operation

+nextt858 nexttoward  Inf  sNaN   ->  NaN  Invalid_operation

+nextt859 nexttoward  NaN  sNaN   ->  NaN  Invalid_operation

+

+-- propagating NaNs

+nextt861 nexttoward  NaN1   -Inf    ->  NaN1

+nextt862 nexttoward +NaN2   -1000   ->  NaN2

+nextt863 nexttoward  NaN3    1000   ->  NaN3

+nextt864 nexttoward  NaN4    Inf    ->  NaN4

+nextt865 nexttoward  NaN5   +NaN6   ->  NaN5

+nextt866 nexttoward -Inf     NaN7   ->  NaN7

+nextt867 nexttoward -1000    NaN8   ->  NaN8

+nextt868 nexttoward  1000    NaN9   ->  NaN9

+nextt869 nexttoward  Inf    +NaN10  ->  NaN10

+nextt871 nexttoward  sNaN11  -Inf   ->  NaN11  Invalid_operation

+nextt872 nexttoward  sNaN12  -1000  ->  NaN12  Invalid_operation

+nextt873 nexttoward  sNaN13   1000  ->  NaN13  Invalid_operation

+nextt874 nexttoward  sNaN14   NaN17 ->  NaN14  Invalid_operation

+nextt875 nexttoward  sNaN15  sNaN18 ->  NaN15  Invalid_operation

+nextt876 nexttoward  NaN16   sNaN19 ->  NaN19  Invalid_operation

+nextt877 nexttoward -Inf    +sNaN20 ->  NaN20  Invalid_operation

+nextt878 nexttoward -1000    sNaN21 ->  NaN21  Invalid_operation

+nextt879 nexttoward  1000    sNaN22 ->  NaN22  Invalid_operation

+nextt880 nexttoward  Inf     sNaN23 ->  NaN23  Invalid_operation

+nextt881 nexttoward +NaN25  +sNaN24 ->  NaN24  Invalid_operation

+nextt882 nexttoward -NaN26    NaN28 -> -NaN26

+nextt883 nexttoward -sNaN27  sNaN29 -> -NaN27  Invalid_operation

+nextt884 nexttoward  1000    -NaN30 -> -NaN30

+nextt885 nexttoward  1000   -sNaN31 -> -NaN31  Invalid_operation

+

+-- Null tests

+nextt900 nexttoward 1  # -> NaN Invalid_operation

+nextt901 nexttoward #  1 -> NaN Invalid_operation

+