summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
diff options
context:
space:
mode:
authorMiguel Sofer <miguel.sofer@gmail.com>2007-06-15 19:58:12 (GMT)
committerMiguel Sofer <miguel.sofer@gmail.com>2007-06-15 19:58:12 (GMT)
commit0ea1a219a60d3bc60a8ee100c215597ee9d3e9d7 (patch)
tree114caa92372378b34872fb87a22a3b9063b08f63 /generic/tclExecute.c
parent86011ea4066f2ab0939bb04f67619c14d867d7b3 (diff)
downloadtcl-0ea1a219a60d3bc60a8ee100c215597ee9d3e9d7.zip
tcl-0ea1a219a60d3bc60a8ee100c215597ee9d3e9d7.tar.gz
tcl-0ea1a219a60d3bc60a8ee100c215597ee9d3e9d7.tar.bz2
* generic/tclCompile.c: reverted TclEvalObjvInternal and
* generic/tclExecute.c: INST_INVOKE to essentially what they were * generic/tclBasic.c: previous to the commit of 2007-04-03 [Patch 1693802] and the subsequent optimisations, as they break the new trace tests described below. * generic/trace.test: added tests 36 to 38 for dynamic trace creation and addition. These tests expose a change in dynamics due to a recent round of optimisations. The "correct" behaviour is not described in docs nor TIP 62.
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r--generic/tclExecute.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 0071263..80ec09b 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclExecute.c,v 1.293 2007/06/14 15:56:06 dgp Exp $
+ * RCS: @(#) $Id: tclExecute.c,v 1.294 2007/06/15 19:58:13 msofer Exp $
*/
#include "tclInt.h"
@@ -1959,14 +1959,8 @@ TclExecuteByteCode(
cmdPtr = (Command *) Tcl_GetCommandFromObj(interp, objv[0]);
if (cmdPtr && !(cmdPtr->flags & CMD_HAS_EXEC_TRACES)
- && iPtr->tracePtr == NULL
- && (!checkInterp
- || (codePtr->compileEpoch == iPtr->compileEpoch))) {
- /*
- * No traces, the interp is ok: use the fast interface
- */
-
- result = TclEvalObjvKnownCommand(interp, objc, objv, cmdPtr);
+ && iPtr->tracePtr == NULL) {
+ result = TclEvalObjvInternal(interp, objc, objv, NULL, 0, 0);
} else {
/*
* If trace procedures will be called, we need a command