| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
from:
typedef unsigned long mp_digit;
to:
typedef unsigned int mp_digit;
For 32-bit builds where "long" and "int" are two names for the same
thing, this is no change at all. For 64-bit builds, though, this
causes the dp[] array of an mp_int to be made up of 32-bit elements
instead of 64-bit elements. This is a huge improvement because details
elsewhere in the mp_int implementation cause only 28 bits of each
element to be actually used storing number data. Without this change
bignums are over 50% wasted space on 64-bit systems. [Bug 2800740].
***POTENTIAL INCOMPATIBILITY***
For 64-bit builds, callers of routines with (mp_digit) or (mp_digit *)
arguments *will*, and callers of routines with (mp_int *) arguments
*may* suffer both binary and stubs incompatibilities with Tcl releases
8.5.0 - 8.5.7. Such possibilities should be checked, and if such
incompatibilities are present, suitable [package require] requirements
on the Tcl release should be put in place to keep such built code
[load]-ing only in Tcl interps that are compatible.
|
| |
|
|
|
|
| |
caused crashes. [Bug 2884203].
|
|
|
|
|
|
| |
0-length writes. When closing pipes which have already been closed
not skipping leads to spurious SIG_PIPE signals. Reported by
Mikhail Teterin <mi+thun@aldan.algebra.com>.
|
| |
|
|
|
|
|
|
|
| |
to permit reads to continue up to the string limits of Tcl values.
Before revisions, large read attempts could panic when as little as
half the limiting value length was reached. [Patch 2107634]
Thanks to Sean Morrison and Bob Parker for their roles in the fix.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
objThreadMap and lineCLPtr hashtables. Also make the names of the
continuation line information initialization and finalization
functions more consistent. Patch supplied by Joe Mistachkin
<joe@mistachkin.com>.
|
|
|
|
|
|
| |
constant 11 with the proper errno define, EAGAIN. What was I
thinking ? The BSD's have a different errno assignment and break
with the hardwired number. Reported by emiliano on the chat.
|
|
|
|
|
| |
* generic/tclTomMath.h: dependence on private headers, breaking use
* generic/tommath.h: by extensions [Bug 1941434].
|
|
|
|
|
|
|
| |
* generic/tclCkalloc.c: call stacks for memory allocation to
* generic/tclInt.h: guarantee that any size values computed
* generic/tclThreadAlloc.c: are within the domains of the routines
they get passed to. [Bugs 2557696 and 2557796].
|
|
|
|
| |
[format]. [Bug 2845535]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
EvalTokensStandard, Tcl_EvalEx, EvalEx, TclAdvanceContinuations,
TclEvalObjEx):
* generic/tclCmdMZ.c (Tcl_SwitchObjCmd, TclListLines):
* generic/tclCompCmds.c (*):
* generic/tclCompile.c (TclSetByteCodeFromAny, TclInitCompileEnv,
TclFreeCompileEnv, TclCompileScript):
* generic/tclCompile.h (CompileEnv):
* generic/tclInt.h (ContLineLoc, Interp):
* generic/tclObj.c (ThreadSpecificData, ContLineLocFree,
TclThreadFinalizeObjects, TclInitObjSubsystem,
TclContinuationsEnter, TclContinuationsEnterDerived,
TclContinuationsCopy, TclContinuationsGet, TclFreeObj):
* generic/tclParse.c (TclSubstTokens, Tcl_SubstObj):
* generic/tclProc.c (TclCreateProc):
* generic/tclVar.c (TclPtrSetVar):
* tests/info.test (info-30.0-24):
Extended parser, compiler, and execution with code and attendant
data structures tracking the positions of continuation lines which
are not visible in script Tcl_Obj*'s, to properly account for them
while counting lines for #280.
|
|
|
|
| |
* tests/fileName.test:
|
|
|
|
| |
matches something like ~foo. [Bug 2837800]
|
|
|
|
|
|
|
|
| |
starting with ~ in the "tail" part (normPathPtr field) of the path
intrep when PATHFLAGS != 0. This establishes the assumptions relied
on elsewhere that the name stored there is a relative path. Also
refactored to make an AppendPath() routine instead of the cut/paste
stanzas that were littered throughout.
|
| |
|
|
|
|
| |
* tests/fileName.test: [glob]. [Bug 2837800]
|
|
|
|
|
|
|
|
| |
* generic/tclIORChan.c: reflective channels (TIP 219, method
* tests/ioCmd.test: 'read'), enabling handlers to signal EAGAIN to
indicate 'no data, but not at EOF either', and other system
errors. Updated documentation, extended testsuite (New test cases
iocmd*-23.{9,10}).
|
|
|
|
|
| |
* tests/format.test: when format spec request large width
floating point values. Thanks to Clemens Misch. [Bug 2830354]
|
|
|
|
|
|
|
|
| |
* generic/tclPipe.c (FileForRedirect): for getHandleProc == NULL, this
is allowed. Provide a nice error message in the bypass area. Updated
caller to check the bypass for a mesage. Bug reported by Andy
Sonnenburg <andy22286@users.sourceforge.net>. Backported from CVS
head.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.c:
* generic/tclVar.c:
* unix/tclUnixChan.c:
* generic/tclScan.c: Typo in ACCEPT_NAN configuration.
* generic/tclStrToD.c: Set floating point control register on
MIPS systems so that the gradual underflow expected by Tcl is
in effect. [Bug 2819200]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TclArgumentBCRelease, TclArgumentGet):
* generic/tclCompile.c (EnterCmdWordIndex, TclCleanupByteCode,
TclInitCompileEnv, TclCompileScript):
* generic/tclCompile.h (ExtCmdLoc):
* generic/tclExecute.c (TclExecuteByteCode):
* generic/tclInt.h (ExtIndex, CFWordBC):
* tests/info.test (info-39.0):
Backport of some changes made to the Tcl head, to handle literal
sharing better. The code here is much simpler (trimmed down)
compared to the head as the 8.5 branch is not bytecode compiling
whole files, and doesn't compile eval'd code either.
Reworked the handling of literal command arguments in bytecode to
be saved (compiler) and used (execution) per command (See the
TCL_INVOKE_STK* instructions), and not per the whole bytecode.
This removes the problems with location data caused by literal
sharing in proc bodies. Simplified the associated datastructures
(ExtIndex is gone, as is the function EnterCmdWordIndex).
|
|
|
|
| |
(silence msvc6 warnings)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclProc.c: when compiling a proc survives too long. We
* tests/execute.test: only need it there long enough for the right
TclInitCompileEnv() call to re-stash it into envPtr->procPtr. Once
that is done, the CompileEnv controls. If we let the value of
iPtr->compiledProcPtr linger, though, then any other bytecode compile
operation that takes place will also have its CompileEnv initialized
with it, and that's not correct. The value is meant to control the
compile of the proc body only, not other compile tasks that happen
along. Thanks to Carlos Tasada for discovering and reporting the
problem. [Bug 2802881].
|
|
|
|
|
|
|
| |
integer calculations computing the length of the %ll formats of
really big integers. Also added protections so that [format]s that
would produce results overflowing the maximum string length of Tcl
values throw a normal Tcl error instead of a panic. [Bug 2801413]
|
|
|
|
|
|
|
|
|
|
| |
* library/clock.tcl: Bison parser (needed a %pure-parser
* tests/clock.test: declaration to avoid static variables).
Discovered that the %pure-parser declaration
allowed for returning the Bison error message
to the Tcl caller in the event of a syntax
error, so did so.
* generic/tclDate.c: bison 2.3
|
|
|
|
|
| |
a table of static constants in the lookup table for exponent operator
computations that fit in a 64 bit integer result.
|
|
|
|
| |
logic of the INST_EXPON instruction to fix [Bug 2798543].
|
|
|
|
|
| |
insure that a command in a deleted namespace cannot be found
through a cached name.
|
|
|
|
| |
[string repeat]. [Bug 2582327]
|
| |
|
| |
|
|
|
|
| |
"late exit handlers" for similar late process-wide cleanups.
|
|
|
|
| |
to set stringPtr->allocated to 0, leading to crashes.
|
| |
|
|
|
|
| |
by compiler warning about undefined "dst".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* unix/tclUnixChan.c: embedding into applications that
* unix/tclUnixEvent.c: already have a CFRunLoop running and
want to run the tcl event loop via
Tcl_ServiceModeHook(TCL_SERVICE_ALL).
* macosx/tclMacOSXNotify.c: add CFRunLoop based Tcl_Sleep() and
* unix/tclUnixChan.c: TclUnixWaitForFile() implementations
* unix/tclUnixEvent.c: and disable select() based ones in
CoreFoundation builds.
* unix/tclUnixNotify.c: simplify, sync with tclMacOSXNotify.c.
* generic/tclInt.decls: add TclMacOSXNotifierAddRunLoopMode()
* generic/tclIntPlatDecls.h: internal API, regen.
* generic/tclStubInit.c:
|
|
|
|
|
|
|
|
|
|
|
|
| |
* library/init.tcl:
* tools/tcl.wse.in:
* unix/configure.in:
* unix/tcl.spec:
* win/configure.in:
* README:
* unix/configure: autoconf-2.59
* win/configure:
|
|
|
|
| |
[Bug 2494093] and [Bug 2553906].
|
|
|
|
|
|
|
| |
* generic/tclTestObj.c: accesses when we append (some part of)
* tests/stringObj.test: a Tcl_Obj to itself. Added the
appendself and appendself2 subcommands to the [teststringobj] testing
command and added tests to the test suite. [Bug 2603158]
|