| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
TclObjInvoke routine toward unification with the rest of the
evaluation stack.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TclEvalObjvInternal,Tcl_LogCommandInfo):
* generic/tclCmdAH.c (Tcl_CatchObjCmd):
* generic/tclEvent.c (BgError,Tcl_BackgroundError,HandleBgErrors):
* generic/tclInt.h (Interp, ERROR_CODE_SET):
* generic/tclNamesp.c
(Tcl_CreateNamespace,Tcl_DeleteNamespace,TclTeardownNamespace):
* generic/tclResult.c
(Tcl_ResetResult,Tcl_SetObjErrorCode,TclTransferResult):
* generic/tclTrace.c (CallVarTraces):
Reworked management of the "errorCode" data of an interp.
That information is now primarily stored in a new private
(Tcl_Obj *) field of the Interp struct, rather than using a
global variable ::errorCode as the primary storage. The
ERROR_CODE_SET flag bit value is no longer required to manage
the value in its new location, and is removed. Variable traces
are established to support compatibility for any code expecting
the ::errorCode variable to hold the information.
|
|
|
|
| |
workaround. That bug is now fixed.
|
|
|
|
|
|
| |
comparison of [clock scan] results with the :localtime time zone.
Now that [clock scan] uses the current time zone instead, the
antibug caused several tests to fail. [Bug 1038554]
|
|
|
|
| |
parser. [Bug 884830]
|
| |
|
| |
|
|
|
|
|
| |
in a straw poll. Also made T_DODone;T_DONext a non-fatal sequence, leading
to simplified code.
|
|
|
|
| |
of ::errorInfo and ::errorCode during global namespace teardown.
|
|
|
|
| |
as strings every time through. [Patch 1037357]
|
|
|
|
|
|
| |
* generic/tclInt.h (Interp): EXPR_INITIALIZED. It was set during
interp creation and never tested. Whatever purpose it had is in
the past.
|
|
|
|
|
|
|
| |
* generic/tclInt.h (Interp): USE_EVAL_DIRECT. It was used only
* generic/tcLTest.c (TestevalexObjCmd): in the testing command
* tests/parser.test (parse-9.2): [testevalex] and nothing in the
test suite made use of the capability it enabled.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdAH.c (Tcl_ErrorObjCmd): of the management of
* generic/tclCmdMZ.c (TclProcessReturn): the errorCode value.
* tests/error.test (error-6.4-9):
* generic/tclNamespace.c (TclTeardownNamespace): Tcl_Obj-ified
* tests/namespace.test (namespace-8.5,6): the save/restore
of ::errorInfo and ::errorCode during global namespace teardown.
Revised the comment to clarify why this is done, and added tests
that will fail if this is not done.
* generic/tclResult.c (TclTransferResult): Added safety
checks so that unexpected undefined ::errorInfo or ::errorCode
will not lead to a segfault.
* generic/tclTrace.c (TclCallVarTraces): Save/restore the flag
* tests/var.test (var-16.1): values that define part of the
interpreter state during variable traces. [Bug 10381021].
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
uninitialised variable.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclInt.decls: TclGlobalInvoke, TclObjInvokeGlobal and
* tests/basic.test: the portion of TclObjInvoke that handles
calls without TCL_INVOKE_HIDDEN enabled. None of this code is
called any longer within the core, and the superior public
interface, Tcl_EvalObjv, is available for any external callers.
* generic/tclIntDecls.h: make genstubs
* generic/tclStubInit.c:
* generic/tclEvent.c (HandleBgErrors): Updated [bgerror]
invocations to make use of Tcl_Obj based routines, dropping
the calls to TclGlobalInvoke()
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: regarding ERR_ALREADY_LOGGED. That commit
* generic/tclNamesp.c: caused Tk test send-10.7 to fail. Added
* tests/namespace.test (25.7,8): tests in the Tcl test suite
* tests/pkg.test (2.25,26): to catch this error without the
aid of Tk in the future.
|
|
|
|
|
|
| |
rule so that it does not delete all files when
SHLIB_SUFFIX is set to the empty string in a static build.
[Bug 1016726]
|
|
|
|
| |
of [expr] with a call to Tcl_ConcatObj.
|
|
|
|
|
|
|
| |
* generic/tclCompile.c (TclCompileScript): option to [return].
* tests/compile.test (16.23.*): Use that capability to defer reporting
* tests/misc.test (1.2): of parse errors until runtime.
Updated tests to reflect change. [Bug 1032805]
|
|
|
|
|
| |
* tests/proc.test (7.2-3): fix for [Bug 729692] was incorrect
whenever a loop exception was returned.
|
| |
|
|
|
|
|
| |
* tests/appendComp.test (8.1): at compile time, and allow runtime
to raise the error (or succeed if a redefined [append] allows).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.c: flag ERR_ALREADY_LOGGED, to reduce
* generic/tclExecute.c: its exposure. Still left several
* generic/tclNamesp.c: references that are just too nice
on performace to do away with. These changes also resolve
an inconsistency in the ::errorInfo values produced by
[namespace eval x error foo bar] and
[namespace eval x {error foo bar}].
* generic/tclExecute.c (TclCompEvalObj): Simplified
the TclCompEvalObj routine. Much housekeeping now reliably
happens elsewhere. [Patch 1031949]
|
|
|
|
|
| |
the TclCompEvalObj routine. Much housekeeping now reliably
happens elsewhere. [Patch 1031949]
|
| |
|
|
|
|
| |
::errorCode setting by/after a [catch].
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
of symbols like TCL_OK, TCL_ERROR, etc.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdAH.c ([catch], [error]):
* generic/tclCmdMZ.c ([return]):
* generic/tclProc.c (TclUpdateReturnInfo):
* generic/tclResult.c (Tcl_SetErrorCodeVA, Tcl_SetObjErrorCode
TclTransferResult): Refactored so that all errorCode setting
flows through Tcl_SetObjErrorCode(). This greatly reduces the
number of different places in the code that need to know details
about an internal bitflag field of the Interp struct. Also
places errorCode setting in one place for easier future mods.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* generic/tclInterp.c (TclPreventAliasLoop, AliasCreate):
* tests/interp.test (17.4-6, 19.3-4): fixing problems with
renaming of aliases [Bugs 707104 1026493]. Fix designed by dgp.
|
| |
|
|
|
|
|
|
|
|
|
| |
for error return from 'mktime'.
* generic/tclObj.c (Tcl_GetIntFromObj): Corrected a problem where
demoting a wide to an int failed on a big-endian machine.
[Bug 1026125].
* tests/clock.test (clock-43.1): Added regression test for
error return from 'mktime'.
|