| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdIL.c: immediately, without search. Reworked setup
* generic/tclCompile.c: of eoFramePtr, doesn't need the line
* tests/info.test: information, more sensible to have everything
on line 1 when eval'ing a pure list. Updated the users of the line
information to special case this based on the frame type (i.e.
TCL_LOCATION_EVAL_LIST). Added a testcase demonstrating the new
behaviour.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclCompile.c: for #280 to fix the abysmal performance
* generic/tclCompile.h: for deep recursion, replaced the linear
* generic/tclExecute.c: search through the whole stack with
* generic/tclInt.h: another hashtable and simplified the data
structure used by the compiler (array instead of hashtable).
Incidentially this also fixes the memory leak reported via [Bug
2024937].
|
|
|
|
|
|
|
|
|
|
|
| |
* 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:
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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/Makefile: enable DTrace support.
* unix/configure: autoconf-2.13
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
TCL_TIP280.
* 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:
|
|
|
|
|
|
|
|
|
| |
in the presence of execution traces that delete it.
* generic/tclBasic.c (TEOVI):
* tests/trace.test (trace-21.11): fix for [Bug 1590232], execution
traces may cause a second command resolution in the wrong
namespace.
|
|
|
|
|
|
| |
registered core version when TIP#268 features are
activated. Better compatibility with existing packages.
Like Tk.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBasic.c: Define TCL_TIP268 to activate the new
* generic/tclDecls.h: features.
* generic/tclInt.h:
* generic/tclPkg.c:
* generic/tclStubInit.c:
* generic/tclTest.c:
* library/init.tcl
* library/package.tcl:
* tests/pkg.test:
* tests/platform.test:
* tests/safe.test:
* doc/PkgRequire.3:
|
| |
|
|
|
|
|
| |
* tests/parse.test: simplify TclEvalObjvInternal and to correct
the auto-loading of alias targets (parse-8.12). [Bug 1444291].
|
|
|
|
|
|
| |
* tests/parse.test: evaluations act the same as [uplevel #0]
* tests/trace.test: evaluations, even when execution traces or
invocations of [::unknown] are present. [Bug 1439836].
|
|
|
|
|
|
|
|
| |
* generic/tclCmdMZ.c (TraceCommandProc):
* generic/tclInt.h (NS_KILLED):
* generic/tclNamesp.c (Tcl_DeleteNamespace
* tests/namespace.test (namespace-7.3-6):
* tests/trace.test (trace-20.13-16): fix [Bugs 1355942/1355342].
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* generic/tclBinary.c:
* generic/tclCmdAH.c:
* generic/tclCmdIL.c:
* generic/tclCmdMZ.c:
* generic/tclExecute.c:
* generic/tclLink.c:
* generic/tclMain.c:
* generic/tclProc.c:
* generic/tclScan.c:
* generic/tclTest.c:
* generic/tclVar.c:
* mac/tclMacInit.c:
* unix/tclUnixInit.c:
* win/tclWinInit.c: Insure that the core never calls TclPtrSetVar,
Tcl_SetVar2Ex, Tcl_ObjSetVar2 or Tcl_SetObjErrorCode with a 0-ref
new value. It is not possible to handle error returns correctly in
that case [Bug 1334947], one has the choice of leaking the object
in some cases, or else risk crashing in some others.
|
|
|
|
|
| |
per-thread counter, rather than a process global one that required
mutex protection. [RFE 1077194]
|
|
|
|
|
|
| |
* generic/tclCmdMZ.c: of the direction of trace scanning, so the
* generic/tclInt.h: proper correction can be made. [Bug 1224585]
* tests/trace.test (trace-34.2,3):
|
|
|
|
|
| |
* tests/trace.test (trace-34.1): list of active traces to
cleanup references to traces being deleted. [Bug 1201035]
|
|
|
|
|
|
|
|
|
| |
* generic/tclCmdMZ.c (Tcl_SubstObj):
* tests/basic.test (basic-46.4): Restored recursion limit
* tests/parse.test (parse-19.*): testing in nested command
substitutions within direct script evaluation (Tcl_EvalEx)
that got lost in the parser reforms of Tcl 8.1. Added tests for
correct behavior. [Bug 1115904]
|
| |
|
|
|
|
|
|
| |
* tests/basic.test (basic-26.2): preserve the arguments passed to
TEOV in the pure-list branch, in case the list shimmers away. Fix
for [Bug 1119369], reported by Peter MacDonald.
|
|
|
|
| |
(Tcl_ExprLong): Fix to recognize Tcl_WideInt type. [Bug 1109484]
|
| |
|
|
|
|
|
|
| |
* tests/basic.test (basic-46.1): to incomplete scripts
as part of multi-line script construction. Do not add an extra
trailing newline to the complete script. [Bug 833150]
|
|
|
|
|
|
|
| |
control the state of errorCode and errorInfo management when calling
"leave" execution traces, so that all error information of the traced
command is still available whether traced or not. [Bug 760947]
Thanks to Yahalom Emet.
|
|
|
|
|
| |
* generic/tclCmdMZ.c: and execution traces that caused access to
freed memory in trace-32.1. [Bug 811483].
|
|
|
|
|
|
|
|
| |
* tests/trace.test: masking to prevent any of the bit values
TCL_TRACE_*_EXEC from leaking into the flags field of any
Command struct. This does not fix [Bug 811483] but helps to
contain some of its worst symptoms. Also backported the corrections
to test trace-28.4 from Vince Darley.
|
|
|
|
|
|
|
| |
* generic/tclCompile.c: truncation of UTF-8 strings that might
* generic/tclProc.c: break apart a multi-byte character.
* library/init.tcl: [Bug 760872]
* tests/init.test:
|
|
|
|
|
|
|
| |
* generic/tclExecute.c: let TclExecuteObjvInternal call
TclInterpReady instead of relying on its callers to do so; fix for
the part of [Bug 495830] that is new in 8.4.
* tests/interp.test: Added tests 18.9 (knownbug) and 18.10
|
|
|
|
|
| |
longer set to NULL (Tcl_CreateObjCommand docs already say that it
should not be accessed).
|
| |
|
|
|
|
|
|
| |
TCL_EVAL_GLOBAL flag when resolving command names. Tcl_EvalEx
passed a string rep including leading whitespace and comments
to TclEvalObjvInternal().
|
|
|
|
| |
commit.
|
|
|
|
|
| |
not being freed on all function exits, causing a memory leak
[Bug 684756]
|
| |
|
|
|
|
|
|
|
|
|
|
| |
callbacks get fully qualified names of the command. [Bug
651271]. ***POTENTIAL INCOMPATIBILITY***
* tests/trace.test: Modified the test cases for [trace add
command] to expect fully qualified names on the 'rename'
callbacks. Added a case for renaming a proc within a namespace.
* doc/trace.n: Added language about use of fully qualified names
in trace callbacks.
|
| |
|
|
|
|
|
|
| |
* tests/trace.test (trace-27.1): Corrected memory leak when a rename
trace deleted the command being traced. Test added. Thanks to
Hemang Lavana for the fix. [Bug 604609]
|
|
|
|
|
| |
* generic/tclCmdMZ.c: fix for freed memory r/w in delete traces
[Bug 589863], patch by Hemang Lavana.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/Concat.3: all remaining public interfaces of Tcl.
* doc/CrtCommand.3: Notably, the parser no longer writes on
* doc/CrtSlave.3: the string it is parsing, so it is no
* doc/CrtTrace.3: longer necessary for Tcl_Eval() to be
* doc/Eval.3: given a writable string. Also, the
* doc/ExprLong.3: refactoring of the Tcl_*Var* routines
* doc/LinkVar.3: by Miguel Sofer is included, so that the
* doc/ParseCmd.3: "part1" argument for them no longer needs
* doc/SetVar.3: to be writable either.
* doc/TraceVar.3:
* doc/UpVar.3: Compatibility support has been enhanced so
* generic/tcl.decls that a #define of USE_NON_CONST will remove
* generic/tcl.h all possible source incompatibilities with
* generic/tclBasic.c the 8.3 version of the header file(s).
* generic/tclCmdMZ.c The new #define of USE_COMPAT_CONST now does
* generic/tclCompCmds.c what USE_NON_CONST used to do -- disable
* generic/tclCompExpr.c only those new CONST's that introduce
* generic/tclCompile.c irreconcilable incompatibilities.
* generic/tclCompile.h
* generic/tclDecls.h Several bugs are also fixed by this patch.
* generic/tclEnv.c [Bugs 584051,580433] [Patches 585105,582429]
* generic/tclEvent.c
* generic/tclInt.decls
* generic/tclInt.h
* generic/tclIntDecls.h
* generic/tclInterp.c
* generic/tclLink.c
* generic/tclObj.c
* generic/tclParse.c
* generic/tclParseExpr.c
* generic/tclProc.c
* generic/tclTest.c
* generic/tclUtf.c
* generic/tclUtil.c
* generic/tclVar.c
* mac/tclMacTest.c
* tests/expr-old.test
* tests/parseExpr.test
* unix/tclUnixTest.c
* unix/tclXtTest.c
* win/tclWinTest.c
|
| |
|
|
|
|
| |
command. Optimisation of alias invocation.
|
|
|
|
| |
have file-scope.
|
|
|
|
| |
the FQ old name of the command. [Bug 582532] (Don Porter)
|
|
|
|
| |
results in (Tcl_AddObjErrorInfo) and (TclUpdateReturnInfo)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* doc/trace.n: execution tracing [FR #462580] (lavana).
* generic/tcl.h: This includes enter/leave tracing as well
* generic/tclBasic.c: as inter-procedure stepping.
* generic/tclCmdMZ.c:
* generic/tclCompile.c:
* generic/tclExecute.c:
* generic/tclInt.decls:
* generic/tclInt.h:
* generic/tclIntDecls.h:
* generic/tclStubInit.c:
* generic/tclVar.c:
* tests/trace.test:
|
| |
|
| |
|