summaryrefslogtreecommitdiffstats
path: root/Lib/curses
ModeNameSize
-rw-r--r--__init__.py3366logstatsplain
-rw-r--r--ascii.py2547logstatsplain
-rw-r--r--has_key.py5634logstatsplain
-rw-r--r--panel.py87logstatsplain
-rw-r--r--textpad.py7657logstatsplain
/a> (patch) treec5dc684986051654898db11ce73e03b9fec8db99 /dist/changes-3.0.0 download> Tcl is a high-level, general-purpose, interpreted, dynamic programming language. It was designed with the goal of being very simple but powerful.
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat
-rw-r--r--ChangeLog343
-rw-r--r--README2
-rw-r--r--changes2
-rw-r--r--compat/string.h2
-rw-r--r--compat/strstr.c2
-rw-r--r--compat/strtoll.c2
-rw-r--r--compat/strtoull.c2
-rw-r--r--doc/Async.32
-rw-r--r--doc/Backslash.32
-rw-r--r--doc/BoolObj.32
-rw-r--r--doc/Concat.32
-rw-r--r--doc/CrtChannel.32
-rw-r--r--doc/CrtCommand.32
-rw-r--r--doc/CrtFileHdlr.32
-rw-r--r--doc/CrtMathFnc.330
-rw-r--r--doc/CrtObjCmd.32
-rw-r--r--doc/CrtSlave.32
-rw-r--r--doc/DString.32
-rw-r--r--doc/Ensemble.32
-rw-r--r--doc/Environment.32
-rw-r--r--doc/Eval.32
-rw-r--r--doc/ExprLong.32
-rw-r--r--doc/ExprLongObj.32
-rw-r--r--doc/FileSystem.32
-rw-r--r--doc/GetIndex.32
-rw-r--r--doc/GetInt.32
-rw-r--r--doc/GetOpnFl.32
-rw-r--r--doc/IntObj.32
-rw-r--r--doc/Interp.32
-rw-r--r--doc/LinkVar.32
-rw-r--r--doc/ListObj.32
-rw-r--r--doc/Notifier.32
-rw-r--r--doc/Object.32
-rw-r--r--doc/OpenFileChnl.32
-rw-r--r--doc/OpenTcp.32
-rw-r--r--doc/ParseCmd.32
-rw-r--r--doc/PrintDbl.311
-rw-r--r--doc/RegExp.32
-rw-r--r--doc/SaveResult.32
-rw-r--r--doc/SetResult.32
-rw-r--r--doc/StrMatch.32
-rw-r--r--doc/StringObj.32
-rw-r--r--doc/Thread.32
-rw-r--r--doc/TraceVar.32
-rw-r--r--doc/Utf.32
-rw-r--r--doc/array.n2
-rw-r--r--doc/binary.n2
-rw-r--r--doc/close.n2
-rw-r--r--doc/error.n2
-rw-r--r--doc/expr.n159
-rw-r--r--doc/fblocked.n2
-rw-r--r--doc/fconfigure.n2
-rw-r--r--doc/fcopy.n2
-rw-r--r--doc/file.n2
-rw-r--r--doc/fileevent.n2
-rw-r--r--doc/flush.n2
-rw-r--r--doc/foreach.n2
-rw-r--r--doc/format.n2
-rw-r--r--doc/gets.n2
-rw-r--r--doc/info.n2
-rw-r--r--doc/interp.n2
-rw-r--r--doc/lappend.n2
-rw-r--r--doc/lindex.n2
-rw-r--r--doc/linsert.n2
-rw-r--r--doc/llength.n2
-rw-r--r--doc/load.n2
-rw-r--r--doc/lrange.n2
-rw-r--r--doc/lreplace.n2
-rw-r--r--doc/lsearch.n2
-rwxr-xr-xdoc/lset.n2
-rw-r--r--doc/lsort.n2
-rw-r--r--doc/mathfunc.n221
-rw-r--r--doc/open.n2
-rw-r--r--doc/pkgMkIndex.n2
-rw-r--r--doc/puts.n2
-rw-r--r--doc/re_syntax.n2
-rw-r--r--doc/read.n2
-rw-r--r--doc/regexp.n2
-rw-r--r--doc/registry.n2
-rw-r--r--doc/regsub.n2
-rw-r--r--doc/scan.n2
-rw-r--r--doc/seek.n2
-rw-r--r--doc/string.n2
-rw-r--r--doc/subst.n2
-rw-r--r--doc/tclvars.n17
-rw-r--r--doc/tell.n2
-rw-r--r--doc/unload.n2
-rw-r--r--doc/unset.n2
-rw-r--r--doc/upvar.n2
-rw-r--r--doc/variable.n2
-rw-r--r--generic/tcl.decls17
-rw-r--r--generic/tcl.h19
-rw-r--r--generic/tclBasic.c1195
-rw-r--r--generic/tclBinary.c15
-rw-r--r--generic/tclCmdAH.c2
-rw-r--r--generic/tclCmdIL.c2
-rw-r--r--generic/tclCmdMZ.c15
-rw-r--r--generic/tclCompCmds.c2
-rw-r--r--generic/tclCompExpr.c103
-rw-r--r--generic/tclCompile.c2
-rw-r--r--generic/tclCompile.h60
-rw-r--r--generic/tclConfig.c2
-rw-r--r--generic/tclDecls.h45
-rw-r--r--generic/tclDictObj.c2
-rw-r--r--generic/tclEncoding.c2
-rw-r--r--generic/tclEnv.c2
-rw-r--r--generic/tclEvent.c8
-rw-r--r--generic/tclExecute.c897
-rw-r--r--generic/tclFCmd.c2
-rw-r--r--generic/tclFileName.c2
-rw-r--r--generic/tclGet.c2
-rw-r--r--generic/tclGetDate.y2
-rw-r--r--generic/tclIO.c2
-rw-r--r--generic/tclIOCmd.c2
-rw-r--r--generic/tclIOUtil.c2
-rw-r--r--generic/tclInt.decls19
-rw-r--r--generic/tclInt.h25
-rw-r--r--generic/tclIntDecls.h55
-rw-r--r--generic/tclInterp.c2
-rw-r--r--generic/tclListObj.c2
-rw-r--r--generic/tclLiteral.c2
-rw-r--r--generic/tclNamesp.c2
-rw-r--r--generic/tclNotify.c2
-rw-r--r--generic/tclObj.c468
-rw-r--r--generic/tclParse.c2
-rw-r--r--generic/tclParseExpr.c69
-rw-r--r--generic/tclPathObj.c2
-rw-r--r--generic/tclPort.h2
-rw-r--r--generic/tclProc.c2
-rw-r--r--generic/tclRegexp.c2
-rw-r--r--generic/tclResult.c2
-rw-r--r--generic/tclScan.c4
-rwxr-xr-xgeneric/tclStrToD.c1361
-rw-r--r--generic/tclStringObj.c2
-rw-r--r--generic/tclStubInit.c11
-rw-r--r--generic/tclTest.c2
-rw-r--r--generic/tclTestObj.c172
-rw-r--r--generic/tclThread.c2
-rwxr-xr-xgeneric/tclThreadAlloc.c2
-rw-r--r--generic/tclThreadTest.c2
-rw-r--r--generic/tclTimer.c2
-rw-r--r--generic/tclTomMath.h109
-rw-r--r--generic/tclTomMathInterface.c143
-rw-r--r--generic/tclTrace.c2
-rw-r--r--generic/tclUtf.c2
-rw-r--r--generic/tclUtil.c188
-rw-r--r--generic/tclVar.c2
-rw-r--r--generic/tommath.h591
-rw-r--r--library/auto.tcl2
-rw-r--r--library/clock.tcl2
-rw-r--r--library/http/http.tcl2
-rw-r--r--library/init.tcl2
-rw-r--r--library/tcltest/tcltest.tcl2
-rw-r--r--macosx/README2
-rw-r--r--tests/appendComp.test2
-rw-r--r--tests/basic.test2
-rw-r--r--tests/binary.test68
-rw-r--r--tests/clock.test2
-rw-r--r--tests/cmdIL.test2
-rw-r--r--tests/compExpr-old.test150
-rw-r--r--tests/compExpr.test27
-rw-r--r--tests/compile.test12
-rw-r--r--tests/encoding.test2
-rw-r--r--tests/expr-old.test136
-rw-r--r--tests/expr.test4393
-rw-r--r--tests/fCmd.test2
-rw-r--r--tests/for.test6
-rw-r--r--tests/interp.test2
-rw-r--r--tests/io.test2
-rw-r--r--tests/ioCmd.test2
-rw-r--r--tests/iogt.test2
-rw-r--r--tests/lindex.test2
-rw-r--r--tests/linsert.test2
-rw-r--r--tests/lrange.test2
-rw-r--r--tests/lreplace.test2
-rw-r--r--tests/lsearch.test2
-rw-r--r--tests/msgcat.test2
-rw-r--r--tests/obj.test2
-rw-r--r--tests/parse.test2
-rw-r--r--tests/parseExpr.test273
-rw-r--r--tests/regexp.test2
-rw-r--r--tests/safe.test2
-rw-r--r--tests/scan.test6
-rw-r--r--tests/string.test7
-rw-r--r--tests/stringComp.test2
-rw-r--r--tests/switch.test2
-rwxr-xr-xtests/tcltest.test2
-rw-r--r--tests/unixInit.test2
-rw-r--r--tests/util.test581
-rw-r--r--tests/winDde.test2
-rw-r--r--tests/winFCmd.test2
-rwxr-xr-xtools/fix_tommath_h.tcl54
-rw-r--r--tools/man2html2.tcl2
-rwxr-xr-xtools/tclZIC.tcl2
-rw-r--r--unix/Makefile.in259
-rw-r--r--unix/configure.in2
-rw-r--r--unix/dltest/Makefile.in2
-rw-r--r--unix/tcl.spec2
-rw-r--r--unix/tclConfig.sh.in2
-rw-r--r--unix/tclUnixChan.c2
-rw-r--r--unix/tclUnixEvent.c2
-rw-r--r--unix/tclUnixFCmd.c2
-rw-r--r--unix/tclUnixInit.c2
-rw-r--r--unix/tclUnixNotfy.c2
-rw-r--r--unix/tclUnixPipe.c2
-rw-r--r--unix/tclUnixPort.h2
-rw-r--r--unix/tclUnixSock.c2
-rw-r--r--unix/tclUnixTime.c2
-rw-r--r--win/Makefile.in78
-rw-r--r--win/README.binary2
-rw-r--r--win/configure.in2
-rw-r--r--win/makefile.vc64
-rw-r--r--win/rules.vc2
-rw-r--r--win/tclWin32Dll.c835
-rw-r--r--win/tclWinChan.c2
-rw-r--r--win/tclWinConsole.c2
-rw-r--r--win/tclWinFCmd.c2
-rw-r--r--win/tclWinFile.c2
-rw-r--r--win/tclWinInit.c2
-rw-r--r--win/tclWinNotify.c2
-rw-r--r--win/tclWinPipe.c2
-rw-r--r--win/tclWinSerial.c2
-rw-r--r--win/tclWinSock.c2
-rw-r--r--win/tclWinThrd.c2
-rw-r--r--win/tclWinTime.c2
225 files changed, 11351 insertions, 2328 deletions
diff --git a/ChangeLog b/ChangeLog
index b0027c1..0f13031 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,49 @@
+2005-05-10 Kevin Kenny <kennykb@acm.org>
+
+ Merged all changes on kennykb-numerics-branch back into the
+ HEAD. TIP's 132 and 232 are now Final.
+
+2005-05-10 Kevin Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch] Merged changes from HEAD.
+
2005-05-10 Miguel Sofer <msofer@users.sf.net>
* generic/tclExecute.c (ExponLong, ExponWide): fixed special case
'i**0' for i>0 [Bug 1198892]
+2005-05-09 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+ * win/tclWin32Dll.c (TclpCheckStackSpace, TclWinCPUID):
+ Reworked structured event handling to function even
+ with -fomit-frame-pointers.
+
+2005-05-08 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+ * generic/tclStrToD.c: Made code more portable by finding a
+ workaround for MSVC's 'volatile' issue that
+ does not require conditional compilation.
+ * win/tclWin32Dll.c (TclWinCPUID): Removed structured event
+ handling from the GCC code
+ since (a) bad code is generated
+ by the instruction scheduling
+ with -O2, and (b) it's not
+ needed on any reasonably modern
+ CPU.
+
+2005-05-07 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+ * generic/tclEvent.c: Moved initialization of tclStrToD.c's
+ * generic/tclInt.h: static constants into a procedure called
+ * generic/tclStrToD.c: from TclInitSubsystems to avoid double
+ checked locking protocol. Cleaned up
+ an issue where MSVC ignored the 'volatile'
+ specifier, causing incorrect comparison
+ of an underflowed number against zero.
+
2005-05-06 Jeff Hobbs <jeffh@ActiveState.com>
* unix/tcl.m4, unix/configure: correct Solaris 10 (5.10) check and
@@ -10,6 +51,10 @@
2005-05-05 Kevin B. Kenny <kennykb@acm.org>
+ [kennykb-numerics-branch] Merged with HEAD.
+
+2005-05-05 Kevin B. Kenny <kennykb@acm.org>
+
* win/tclWinThrd.c: Corrected a compilation error on the
--enable-threads configuration.
@@ -102,6 +147,33 @@
* doc/open.n: "BINARY" in "access" argument to [open].
* tests/ioCmd.test:
+2005-04-26 Kevin B. Kenny <kennykb@users.sourceforge.net>
+
+ * generic/tclBinary.c (FormatNumber):
+ Dredge the NaN out of the internal representation if
+ Tcl_GetDoubleFromObj returns TCL_ERROR on a NaN.
+
+ * generic/tclObj.c (Tcl_GetDoubleFromObj):
+ Restored silent overflow/underflow behaviour that the merge
+ of 2004-04-25 messed up. Thanks to Don Porter for calling
+ attention to this bug. Also removed an uninitialised memory
+ reference in this function that valgrind caught. Also changed
+ to return TCL_ERROR on a pure NaN.
+
+ * generic/tclStrToD.c (RefineResult):
+ Added a test for the initial approximation being HUGE_VAL;
+ this test avoids EDOM being returned from ldexp on some platforms
+ on input values exceeding the floating point range.
+
+ * tests/expr.test (expr-29.*, expr-30.*):
+ Added further tests of overflow/underflow on input conversions.
+
+2005-04-25 Kevin B. Kenny <kennykb@users.sourceforge.net>
+
+ [kennykb-numerics-branch] Merged with HEAD.
+
+ * doc/CrtMathFunc.n: Revised documentation for TIP 232
+
2005-04-25 Daniel Steffen <das@users.sourceforge.net>
* compat/string.h: fixed memchr() protoype for __APPLE__ so that we
@@ -230,6 +302,12 @@
if this change causes trouble, but it seems more sensible to let
Tcl's "on-demand" shimmering rule, and not try to pre-guess things.
+2005-04-20 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+ * doc/expr.n:
+ * doc/mathfunc.n (new file): Revised documentation for TIP 232
+
2005-04-20 Don Porter <dgp@users.sourceforge.net>
* generic/tclGet.c (Tcl_GetInt): Corrected error that did not
@@ -383,6 +461,15 @@
Tcl 8.5 (on which it was dependent anyway). Also added a [package
require] line to formalize the relationship.
+2005-04-11 Kevin Kenny <kennykb@users.sf.net>
+
+ [kennykb-numerics-branch] Merged with HEAD. Updated to libtommath 0.35.
+
+ * generic/tclBasic.c: Attempted to repeat changes that applied
+ to tclExecute.c in Miguel Sofer's commit of 2005-04-01, together
+ with (possibly) a few more uses of his new object creation macros.
+ Also plugged a memory leak in TclObjInvoke. [Bug 1180368]
+
2005-04-10 Kevin Kenny <kennykb@acm.org>
* library/tzdata/America/Montevideo:
@@ -559,6 +646,29 @@
* unix/tcl.m4: Updated the OpenBSD configuration and regenerated
* unix/configure: the configure script.
+2005-03-15 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch] Merged with HEAD.
+
+ * generic/tclBasic.c (many):
+ * generic/tclCompExpr.c (CompileMathFuncCall):
+ * generic/tclCompile.h:
+ * generic/tclExecute.c (many):
+ * generic/tclParseExpr.c (ParsePrimaryExpr):
+ * tests/compExpr-old.test:
+ * tests/compExpr.test:
+ * tests/compile.test:
+ * tests/expr-old.test:
+ * tests/expr.test:
+ * tests/for.test:
+ * tests/parseExpr.test:
+ Initial implementation of TIP #232.
+
+ * generic/tclObj.c (Tcl_DbNewBignumObj): Fixed typo that broke
+ --enable-symbols=mem build
+ * tests/binary.test (binary-40.3, binary-40.6): Corrected tests
+ to allow NaN(7ffffffffffff).
+
2005-03-14 Miguel Sofer <msofer@users.sf.net>
* generic/tclExecute.c: fixed INST_PUSH1's debugging code (wrong
@@ -583,6 +693,30 @@
into private. Should be used only by internal workings of
execution traces.
+2005-03-09 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch] Merged from HEAD.
+
+ * doc/PrintDbl.3:
+ * doc/tclVars.n: Documented new semantics for tcl_precision.
+ * generic/tclExecute.c (Tcl_ExecuteByteCode): Removed the check
+ for division-by-zero on IEEE-754 machines.
+ * generic/tclUtil.c (Tcl_PrintDouble): Corrected bug where numbers
+ in the range [1e-4 .. 1.) were printed incorrectly.
+ * tests/compExpr-old.test (compExpr-old-11.13): Revised test
+ case for division by zero
+ * tests/expr-old.test (expr-34.11, expr-34.12): Revised test
+ cases for overflow in pow() to deal with infinities.
+ * tests/expr.test (expr-11.13, expr-29.1, expr-29.2): Revised
+ test case for division by zero and for underflow on input
+ conversions.
+ * tests/parseExpr.test (parseExpr-16.11): Revised test case for
+ overflow on input conversion.
+ * tests/string.test (string-6.38 deleted): Removed test case
+ for underflow on input conversion, which is no longer an error.
+ * tests/util.test (util-10.*): Added test case for the bug in
+ tclUtil.c.
+
2005-03-08 Jeff Hobbs <jeffh@ActiveState.com>
* win/makefile.vc: clarify necessary defined vars that can come
@@ -598,6 +732,82 @@
fixed the peephole opt in INST_POP so that it is not used when
TCL_COMPILE_DEBUG is defined.
+2005-03-04 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+
+ * generic/tclCmdMZ.c: Changed [scan] to treat out-of-range
+ floating point values as infinities and zeroes.
+ * generic/tclExecute.c: Changed [expr] to be permissive about
+ infinities, allowing them to propagate.
+ * generic/tclGet.c: Changed Tcl_GetDouble to be permissive about
+ over/underflow.
+ * generic/tclObj.c: Changed SetDoubleFromAny to be permissive
+ about over/underflow.
+ * generic/tclParseExpr.c: Made [expr] permissive about input
+ numbers out of range.
+
+2005-03-03 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+
+ * generic/tclInt.h:
+ * generic/tclStrToD.c (Tcl_DoubleDigits, TclFormatNaN):
+ * generic/tclUtil.c (Tcl_PrintDouble):
+ Changed the signature of TclDoubleDigits so that it
+ accepts a pointer to the signum of the argument, and
+ returns the signum via that pointer. Added very
+ hacky code to handle IEEE signed zeroes in Tcl_DoubleDigits.
+ (It can't be done other than as a hack until C9x;
+ C89 simply doesn't deal with the concept of -0.0).
+ Added output conversion of tagged NaN values.
+ * generic/tclBinary.c (FormatNumber):
+ Changed to allow [binary format] to handle NaN.
+ * tests/binary.test (binary-60.1):
+ Added a quick-n-dirty test to make sure that NaN's
+ can be scanned and formatted.
+ * generic/tclParseExpr.c (GetLexeme, ParseMaxDoubleLength):
+ Modified so that tagged NaN (e.g., NaN(DEADBEEF)) can
+ be recognized.
+
+2005-03-02 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch] Merged with HEAD as of 2005-02-23.
+
+ * generic/tclExecute.c:
+ Broadened test for NaN to work on Windows.
+ * generic/tclInt.h:
+ * generic/tclStrToD.c (Tcl_DoubleDigits):
+ * generic/tclUtil.c (Tcl_PrintDouble, TclPrecTraceProc):
+ Added Tcl_DoubleDigits to format 'double' numbers
+ with the minimum number of significant digits to
+ yield correct rounding. Modified tcl_precision to
+ accept 0 as a precision (meaning "minimum digits"), and
+ made 0 the default. [TIP #132]
+ * generic/tclObj.c:
+ Made NaN's throw an error in Tcl_GetDoubleFromObj.
+ * unix/Makefile.in:
+ * win/Makefile.in:
+ * win/makefile.vc:
+ Added libtommath/bn_mp_init_set.c to the build.
+ * libtommath/tommath.h (mp_iseven):
+ Fixed a bug that caused zero to test 'odd'.
+ * generic/tommath.h:
+ Regenerated.
+ * tests/binary.test:
+ * tests/expr-old.test:
+ * tests/expr.test:
+ * tests/scan.test:
+ Corrected a number of tests that depended on
+ tcl_precision, and removed the {eformat} condition
+ from tests that no longer require it.
+ * tests/util.test:
+ Corrected a number of tests that depended on
+ tcl_precision, and removed the {eformat} condition
+ from tests that no longer require it. Added a series
+ of tests for correct rounding in Tcl_PrintDouble. [TIP
+ #132].
+
2005-03-01 David N. Welton <davidw@dedasys.com>
* doc/CrtSlave.3: Changed to Tcl_Object to Tcl_Obj in the man
@@ -659,6 +869,17 @@
* doc/CrtChannel.3: Typo: return->returns.
+2005-02-06 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+
+ * generic/tclStrToD.c (TclStrToD, SafeLdExp):
+ Added code to manage the FPU precision on gcc+x86.
+ Enabled fast conversion of floats with small exponents
+ now that precision is correct.
+ * tests/expr.test: Corrected test for the smallest representible
+ value to the right IEEE values.
+
2005-02-06 David N. Welton <davidw@dedasys.com>
* doc/Thread.3: One-word grammar fix.
@@ -673,6 +894,18 @@
* generic/tclPathObj.c: Cleaned up typo in comment.
+2005-02-03 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+
+ * generic/tclStrToD.c (TclStrToD, RefineResult, SafeLdExp):
+ Added code to ensure that 'ldexp' is never called with
+ a value that will underflow.
+ * tests/expr.test: Added tests for the smallest representible
+ value, and rounding between it and zero. (The tests reflect
+ current behaviour; plan is to change the specification of
+ Tcl so that input conversion of doubles underflows silently.)
+
2005-02-02 Mo DeJong <mdejong@users.sourceforge.net>
* generic/tclProc.c (TclInitCompiledLocals):
@@ -684,6 +917,35 @@
down a crash in Itcl, that crash is fixed by
Itcl patch 1115085.
+2005-02-01 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch] Merged with HEAD as of today.
+
+ * generic/tclInt.decls:
+ Changed numbers of new stubs to resolve a conflict.
+ * generic/tclInt.h:
+ Added new TclStrToD routine that replaces the native
+ 'strtod' thro
+ ughout Tcl.
+ * generic/tclCmdMZ (Tcl_StringObjCmd):
+ * generic/tclGet.c (Tcl_GetDouble):
+ * generic/tclObj.c (SetBooleanFromAny, SetDoubleFromAny):
+ * generic/tclParseExpr.c (GetLexeme):
+ * generic/tclScan.c (Tcl_ScanObjCmd):
+ Replaced all uses of the native 'strtod' with a TclStrToD
+ routine that performs correct rounding and handles denormals.
+ * generic/tclStrToD.c: (new file)
+ New scanning function for extracting 'double' from a string
+ that rounds correctly, and handles denormals and infinities.
+ * unix/Makefile.in:
+ * win/Makefile.in:
+ * win/makefile.vc:
+ Added tclStrToD.c and the tommath routines that support it.
+
+ These changes represent a partial implementation of TIP #132.
+ Output conversion of floating point numbers, and proper handling
+ of infinities within expressions, still need to be addressed.
+
2005-02-01 Don Porter <dgp@users.sourceforge.net>
* generic/tclExecute.c (TclCompEvalObj): Removed stray statement
@@ -780,6 +1042,87 @@
* doc/FileSystem.3: Add missing ARGUMENTS section definitions for
arguments to Tcl_FSLink. [Bug 1106272]
+2005-01-21 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch]
+
+ * unix/Makefile.in: Updated Makefile to build libtommath on
+ Unix as well as Windows. [Bug 1106865]
+
+ * generic/tclTestObj.c (TestbignumobjCmd):
+ Silenced a compiler warning about a mismatched 'const'.
+
+2005-01-20 Kevin B. Kenny <kennykb@acm.org>
+
+ [kennykb-numerics-branch] Development checkpoint.
+
+ * compat/strtoll.c: Reverted to HEAD.
+ * compat/strtoull.c:
+ * doc/Ensemble.3:
+ * generic/tclBasic.c:
+ * generic/tclCmdIL.c:
+ * generic/tclNamesp.c:
+ * generic/tclPathObj.c:
+ * generic/tclPort.h:
+ * unix/configure:
+ * unix/configure.in:
+ * unix/tcl.m4:
+ * win/configure:
+ * win/configure.in:
+ * win/rules.vc:
+ * win/tcl.m4:
+
+ * generic/tcl.h: Added declarations for bignum types, and
+ for a 'bignumValue' in the Tcl_Obj structure.
+ * generic/tclInt.h: Added declarations of interface procedures
+ for memory allocation in libtommath.
+
+ * generic/tcl.decls: Added new interface to bignum objects.
+ * generic/tclInt.decls: Added internal stubs for bignum routines
+ used by the test code in tclTestObj.c.
+
+ * generic/tclDecls/h: Regen.
+ * generic/tclIntDecls.h:
+ * generic/tclStubInit.h:
+
+ * tools/fix_tommath_h.tcl: (New file) Script to edit
+ libtommath/tommath.h and produce
+ generic/tommath.h so that storage
+ classes, allocation routines, and
+ data types conform to Tcl's
+ conventions.
+ * generic/tommath.h: (New file) Generated by the above.
+
+ * generic/tclTomMath.h: (New file) Additional declarations
+ to be included in tommath.h when building
+ Tcl.
+
+ * generic/tclTomMathInterface.c: (New file) Small 'glue' routines
+ adapting tommath's API to Tcl.
+
+ * libtommath/bn_fast_s_mp_mul_digs.c:
+ * libtommath/bn_mp_mul_d.c:
+ * libtommath/bn_mp_read_radix.c:
+ * libtommath/tommath.h: Applied suggested changes from Tom St
+ Denis that correct an off-by-one error in single-digit
+ multiplication (leading to a pointer smash if uncorrected) and
+ change the string argument to 'mp_read_radix' from 'char*' to
+ 'const char*'.
+
+ * libtommath/bn_mp_radix_size.c:
+ Local patch to ensure that sufficient memory is requested
+ even if the number has a single digit.
+
+ * libtommath/bn_mp_read_radix.c:
+ Local patch to return MP_VAL if the input string contains
+ an invalid character.
+
+ * generic/tclObj.c: Added accessor functions for bignums.
+ * generic/tclTestObj.c: Added a 'testbignumobj' command to
+ exercise the accessor functions for bignums.
+
+ * win/Makefile.in: Added rules for making libtommath.
+
2005-01-19 Donal K. Fellows <donal.k.fellows@man.ac.uk>
TIP#235 IMPLEMENTATION
diff --git a/README b/README
index e895025..0898130 100644
--- a/README
+++ b/README
@@ -5,7 +5,7 @@ README: Tcl
You can get any source release of Tcl from the file distributions
link at the above URL.
-RCS: @(#) $Id: README,v 1.54 2004/12/10 23:00:30 dkf Exp $
+RCS: @(#) $Id: README,v 1.55 2005/05/10 18:33:52 kennykb Exp $
Contents
--------
diff --git a/changes b/changes
index 9c4c28f..b78226d 100644
--- a/changes
+++ b/changes
@@ -1,6 +1,6 @@
Recent user-visible changes to Tcl:
-RCS: @(#) $Id: changes,v 1.94 2004/12/06 22:41:10 dgp Exp $
+RCS: @(#) $Id: changes,v 1.95 2005/05/10 18:33:53 kennykb Exp $
1. No more [command1] [command2] construct for grouping multiple
commands on a single command line.
diff --git a/compat/string.h b/compat/string.h
index 78f58bc..128b458 100644
--- a/compat/string.h
+++ b/compat/string.h
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: string.h,v 1.6 2005/04/26 00:45:01 das Exp $
+ * RCS: @(#) $Id: string.h,v 1.7 2005/05/10 18:33:53 kennykb Exp $
*/
#ifndef _STRING
diff --git a/compat/strstr.c b/compat/strstr.c
index 151e3f3..015d61b 100644
--- a/compat/strstr.c
+++ b/compat/strstr.c
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: strstr.c,v 1.5 2005/04/12 18:32:41 kennykb Exp $
+ * RCS: @(#) $Id: strstr.c,v 1.6 2005/05/10 18:33:54 kennykb Exp $
*/
#include "tcl.h"
diff --git a/compat/strtoll.c b/compat/strtoll.c
index 7d10eb4..50edd41 100644
--- a/compat/strtoll.c
+++ b/compat/strtoll.c
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: strtoll.c,v 1.7 2004/04/06 22:25:48 dgp Exp $
+ * RCS: @(#) $Id: strtoll.c,v 1.8 2005/05/10 18:33:54 kennykb Exp $
*/
#include "tclInt.h"
diff --git a/compat/strtoull.c b/compat/strtoull.c
index f46e78f..027c593 100644
--- a/compat/strtoull.c
+++ b/compat/strtoull.c
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: strtoull.c,v 1.7 2004/04/06 22:25:48 dgp Exp $
+ * RCS: @(#) $Id: strtoull.c,v 1.8 2005/05/10 18:33:54 kennykb Exp $
*/
#include "tclInt.h"
diff --git a/doc/Async.3 b/doc/Async.3
index 46ab9eb..4be3aa6 100644
--- a/doc/Async.3
+++ b/doc/Async.3
@@ -5,7 +5,7 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" RCS: @(#) $Id: Async.3,v 1.8 2004/12/09 09:19:50 dkf Exp $
+'\" RCS: @(#) $Id: Async.3,v 1.9 2005/05/10 18:33:54 kennykb Exp $
'\"
.so man.macros
.TH Tcl_AsyncCreate 3 7.0 Tcl "Tcl Library Procedures"
diff --git a/doc/Backslash.3 b/doc/Backslash.3
index 0b1fa21..57b73e9 100644
--- a/doc/Backslash.3
+++ b/doc/Backslash.3
@@ -5,7 +5,7 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" RCS: @(#) $Id: Backslash.3,v 1.6 2005/04/06 20:55:19 dkf Exp $
+'\" RCS: @(#) $Id: Backslash.3,v 1.7 2005/05/10 18:33:54 kennykb Exp $
'\"
.so man.macros
.TH Tcl_Backslash 3 "8.1" Tcl "Tcl Library Procedures"
diff --git a/doc/BoolObj.3 b/doc/BoolObj.3
index f586621..ec6a3c9 100644
--- a/doc/BoolObj.3
+++ b/doc/BoolObj.3
@@ -4,7 +4,7 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" RCS: @(#) $Id: BoolObj.3,v 1.6 2005/04/22 15:46:51 dgp Exp $
+'\" RCS: @(#) $Id: BoolObj.3,v 1.7 2005/05/10 18:33:54 kennykb Exp $
'\"
.so man.macros
.TH Tcl_BooleanObj 3 8.0 Tcl "Tcl Library Procedures"
diff --git a/doc/Concat.3 b/doc/Concat.3
index ebf59de..d4ba689 100644
--- a/doc/Concat.3
+++ b/doc/Concat.3
@@ -5,7 +5,7 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" RCS: @(#) $Id: Concat.3,v 1.8 2005/04/06 20:55:20 dkf Exp $
+'\" RCS: @(#) $Id: Concat.3,v 1.9 2005/05/10 18:33:54 kennykb Exp $
'\"
.so man.macros
.TH Tcl_Concat 3 7.5 Tcl "Tcl Library Procedures"
diff --git a/doc/CrtChannel.3 b/doc/CrtChannel.3