| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
| | |
| | |
| | |
| | |
| | | |
a fix for [Bug 1482718]. This is not needed at least since
varReform, where the local variable data at runtime is read from
the CallFrame and/or the LocalCache.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
unrefernced everywhere but in macosx/Tcl.xcodeproj/project.pbxproj: some
knowledgeable maintainer please remove tclNRE.h after making sure it
doesn't break the build on macosx
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
of location for uplevel scripts. Resolved merge conflict on
info-37.0, switched !singleTestInterp constraint to glob matching
instead. Ditto info-22.8, removed constraint, more glob matching,
and reduced the depth of the stack we check. More is coming, right
now I want to commit the bug fixes.
* tests/oo.test: Updated oo-22.1 for expanded location tracking.
* generic/tclCompile.c (TclInitCompileEnv): Reorganized the
initialization of the #280 location information to match the flow
in TclEvalObjEx to get more absolute contexts.
* generic/tclBasic.c (TclEvalObjEx): Added missing cleanup of
extended location information.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclCmdAH.c: frame), added the ability to track the
* generic/tclCompCmds.c: absolute location of literal procedure
* generic/tclCompile.c: arguments, and making this information
* generic/tclCompile.h: available to uplevel, eval, and
* generic/tclInterp.c: siblings. This allows proper tracking of
* generic/tclInt.h: absolute location through custom (Tcl-coded)
* generic/tclNamesp.c: control structures based on uplevel, etc.
* generic/tclProc.c:
* tests/info.test:
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclExecute.c: from the callbacks. Completely
* generic/tclInt.h: redone tailcall implementation
* generic/tclNRE.h: using the new feature.
* generic/tclProc.c:
* tests/NRE.test:
|
| | | |
|
| | |
| | |
| | |
| | | |
Tcl_NRAddCallback
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tcl.h: TclNR_foo to Tcl_NRfoo
* generic/tclBasic.c:
* generic/tclDecls.h:
* generic/tclDictObj.c:
* generic/tclExecute.c:
* generic/tclInterp.c:
* generic/tclNRE.h:
* generic/tclNamesp.c:
* generic/tclOO.c:
* generic/tclOOBasic.c:
* generic/tclOOCall.c:
* generic/tclOOMethod.c:
* generic/tclProc.c:
* generic/tclStubInit.c:
|
| | | |
|
| | |
| | |
| | |
| | | |
referred to in callback implementations anyway.
|
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclExecute.c: TclResetCancellation lying around: it
* generic/tclProc.c: only needs to be called prior to any
iPtr->numLevels++. Thanks mistachkin.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* generic/tclCompCmds.c: non-body compiled scripts to access the
* generic/tclCompile.c: LVT (but not to extend it) and enable the
* generic/tclCompile.h: canonical list opt to sidestep the
* generic/tclExecute.c: compiler. This is [Patch 1973096]
* generic/tclProc.c:
* tests/uplevel.test:
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| |
| | |
THIS PATCH WAS REVERTED: initial (mis)measurements overstated the
perfomance wins, which turn out to be tiny. Not worth the
complication.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclExecute.c: bit INTERP_RESULT_UNCLEAN: shortcut for
* generic/tclInt.h: Tcl_ResetResult for the "normal" case:
* generic/tclProc.c: TCL_OK, no return options, no errorCode
* generic/tclResult.c: nor errorInfo, return at normal level.
* generic/tclStubLib.c: [Patch 1830184]
* generic/tclUtil.c:
|
| |
| |
| |
| | |
objTypes.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclCompile.h: tracing of proc and command entry &
* generic/tclBasic.c: return, bytecode execution, object
* generic/tclExecute.c: allocation and more; with essentially
* generic/tclInt.h: zero cost when tracing is inactive;
* generic/tclObj.c: enable with --enable-dtrace configure
* generic/tclProc.c: arg (disabled by default, will only
* unix/Makefile.in: enable if DTrace is present).
* unix/configure.in: [Patch 1793984]
* macosx/GNUmakefile: enable DTrace support.
* macosx/Tcl-Common.xcconfig:
* macosx/Tcl.xcodeproj/project.pbxproj:
* unix/configure: autoconf-2.59
* unix/tclConfig.h.in: autoheader-2.59
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclNamesp.c: registered set. Revised the management of
* generic/tclObj.c: the intrep of that Tcl_ObjType. Revised the
* tests/obj.test: TclGetNamespaceFromObj() routine to return
TCL_ERROR and write a consistent error message when a namespace is
not found. [Bug 1588842. Patch 1686862]
***POTENTIAL INCOMPATIBILITY***
For callers of Tcl_GetObjType() on the name "nsName".
* generic/tclExecute.c: Update TclGetNamespaceFromObj() callers.
* generic/tclProc.c:
* tests/apply.test: Updated tests to expect new consistent
* tests/namespace-old.test: error message when a namespace is not
* tests/namespace.test: found.
* tests/upvar.test:
|
| |
| |
| |
| |
| | |
resolved variables was being managed without checking if they were
Var or VarInHash: itcl [Bug 1790184]
|
| |
| |
| |
| | |
required varflag values when loading precompiled procs.
|
| |
| |
| |
| | |
procPtr. codePtr->procPtr == NULL exposed by tbcload.
|
| |
| |
| |
| | |
is not called in the normal case.
|
| |
| |
| |
| |
| |
| | |
that flag bit does not exist any longer.
* generic/tclProc.c (InitCompiledLocals): removed optimisation for
non-resolved case, as the function is never called in that case.
|
| | |
|
| |
| |
| |
| | |
*** POTENTIAL INCOMPATIBILITY *** (tclInt.h and tclCompile.h)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclExecute.c: TclStackAlloc and TclStackFree to make them
easier for callers to use (or more precisely, harder to misuse).
TclStackFree now takes a (void *) argument which is the pointer
intended to be freed. TclStackFree will panic if that's not actually
the memory the call will free. TSA/TSF also now tolerate receiving
(interp == NULL), in which case they simply fall back to be calls to
Tcl_Alloc/Tcl_Free.
* generic/tclIntDecls.h: make genstubs
* generic/tclBasic.c: Updated callers
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCompCmds.c:
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclFCmd.c:
* generic/tclFileName.c:
* generic/tclIOCmd.c:
* generic/tclIndexObj.c:
* generic/tclInterp.c:
* generic/tclNamesp.c:
* generic/tclProc.c:
* generic/tclTrace.c:
* unix/tclUnixPipe.c:
|
| |
| |
| |
| |
| |
| |
| | |
* generic/tclCmdMZ.c (Tcl_SwitchObjCmd):
* generic/tclCompile.c (TclInitCompileEnv):
* generic/tclProc.c (Tcl_ProcObjCmd, SetLambdaFromAny): Moved the
CmdFrame off the C stack and onto the Tcl stack.
|
| | |
|
| |
| |
| |
| | |
chain of if's for a modest performance gain and a little more clarity.
|
| |
| |
| |
| |
| |
| |
| | |
* generic/tclInt.h: TclObjInterpProc to reduce stack
* generic/tclIntDecls.h: consumption and improve task
* generic/tclProc.c: separation. Changes the interface of
TclObjInterpProcCore (patching TclOO simultaneously).
|
| |
| |
| |
| | |
management in wrongNumArgs calls.
|
| | |
|
| |
| |
| |
| |
| | |
* generic/tclExecute.c: any code other than TCL_OK, so remove code
* generic/tclProc.c: that formerly handled exceptional codes.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
is always a valid frame".
* generic/tclProc.c (TclObjInterpProcCore): call TEBC directly
instead of going through TclCompEvalObj - no need to check the
compilation's freshness, this has already been done. This improves
speed and should also provide some relief to [Bug 1066755].
|
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclInt.h: control the timing with which the global
* generic/tclNamesp.c: variables ::errorCode and ::errorInfo get
* generic/tclProc.c: updated after an error. This keeps more
* generic/tclResult.c: precise compatibility with Tcl 8.4.
* tests/result.test (result-6.2): [Bug 1649062]
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
reference count mismanagement on the name of the source file in
the TIP 280 code. [Bug 1705778, leak K02 among other manifestations]
|
| | |
|
| |
| |
| |
| | |
efficient). After [Patch 1529526] (afredd)
|
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclNamespace.c (NsEnsembleImplementationCmd):
* generic/tclProc.c (InitCompiledLocals, ObjInterpProcEx,
TclObjInterpProcCore, ProcCompileProc): code reordering to reduce
branching and improve branch prediction (assume that forward
branches are typically not taken).
|
| |
| |
| |
| |
| |
| | |
* tests/apply.test (9.3): Fixed Tcl_Obj leak on error return; an
unneeded ref to lambdaPtr was being set and not released on an
error return path.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCmdMZ.c:
* generic/tclCompCmds.c:
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclCompile.h:
* generic/tclExecute.c:
* generic/tclIOUtil.c:
* generic/tclInt.h:
* generic/tclInterp.c:
* generic/tclNamesp.c:
* generic/tclObj.c:
* generic/tclProc.c:
* tests/compile.test:
* tests/info.test:
* tests/platform.test:
* tests/safe.test:
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* generic/tcl.decls: New public routines Tcl_ObjPrintf,
* generic/tclStringObj.c: Tcl_AppendObjToErrorInfo, Tcl_Format,
* generic/tclInt.h: Tcl_AppendLimitedToObj,
Tcl_AppendFormatToObj and Tcl_AppendPrintfToObj. Former internal
versions removed.
* generic/tclDecls.h: make genstubs
* generic/tclStubInit.c:
* generic/tclBasic.c: Updated callers.
* generic/tclCkalloc.c:
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCmdMZ.c:
* generic/tclCompExpr.c:
* generic/tclCompile.c:
* generic/tclDictObj.c:
* generic/tclExecute.c:
* generic/tclIORChan.c:
* generic/tclIOUtil.c:
* generic/tclMain.c:
* generic/tclNamesp.c:
* generic/tclObj.c:
* generic/tclPkg.c:
* generic/tclProc.c:
* generic/tclStrToD.c:
* generic/tclTimer.c:
* generic/tclUtil.c:
* unix/tclUnixFCmd.c:
|