summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
diff options
context:
space:
mode:
authordgp <dgp@noemail.net>2016-06-28 21:17:28 (GMT)
committerdgp <dgp@noemail.net>2016-06-28 21:17:28 (GMT)
commitf03bcfd5a631b51dedffef86cc3e37cc8bff89f3 (patch)
tree4240f40e86f601e05a44778a481f5099a63580ad /generic/tclExecute.c
parent4add5f335a10f6e2339f4c0b786209a6282e8dfa (diff)
parent3edf6a470ace084408c016e355b1d20dec41ef43 (diff)
downloadtcl-f03bcfd5a631b51dedffef86cc3e37cc8bff89f3.zip
tcl-f03bcfd5a631b51dedffef86cc3e37cc8bff89f3.tar.gz
tcl-f03bcfd5a631b51dedffef86cc3e37cc8bff89f3.tar.bz2
Route all ensemble rewrite activity through a few utility routines.
FossilOrigin-Name: 5f7825d97201cef1c2c18dc8f4398bdaa0744d96
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r--generic/tclExecute.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 38924c6..355b667 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -2081,6 +2081,8 @@ TclNRExecuteByteCode(
* Push the callback for bytecode execution
*/
+ TclResetRewriteEnsemble(interp, 1);
+
TclNRAddCallback(interp, TEBCresume, TD, /* pc */ NULL,
/* cleanup */ INT2PTR(0), NULL);
return TCL_OK;
@@ -3172,9 +3174,8 @@ TEBCresume(
if (iPtr->flags & INTERP_DEBUG_FRAME) {
ArgumentBCEnter(interp, codePtr, TD, pc, objc, objv);
}
- iPtr->ensembleRewrite.sourceObjs = objv;
- iPtr->ensembleRewrite.numRemovedObjs = opnd;
- iPtr->ensembleRewrite.numInsertedObjs = 1;
+
+ TclInitRewriteEnsemble(interp, opnd, 1, objv);
DECACHE_STACK_INFO();
pc += 6;
TEBC_YIELD();