summaryrefslogtreecommitdiffstats
path: root/generic/tclNamesp.c
diff options
context:
space:
mode:
authormsofer <msofer@noemail.net>2010-08-18 15:44:08 (GMT)
committermsofer <msofer@noemail.net>2010-08-18 15:44:08 (GMT)
commit18950c19fb504d66448719d22beb1ef0305d6ec9 (patch)
treef997dd6e04e669fc5c94627f3ab580c39c22fc71 /generic/tclNamesp.c
parenta1fb53112eb227e060f0cb08b6077428dba558db (diff)
downloadtcl-18950c19fb504d66448719d22beb1ef0305d6ec9.zip
tcl-18950c19fb504d66448719d22beb1ef0305d6ec9.tar.gz
tcl-18950c19fb504d66448719d22beb1ef0305d6ec9.tar.bz2
* generic/tclBasic.c: Redesign of [tailcall] to
* generic/tclCmdAH.c: (a) fix #3047235 * generic/tclCompile.h: (b) enable fix for #3046594 * generic/tclExecute.c: (c) enable recursive tailcalls * generic/tclInt.h: * generic/tclNamesp.c: * tests/tailcall.test: FossilOrigin-Name: beb3af88b5e286758fed136d9747338d89d5009d
Diffstat (limited to 'generic/tclNamesp.c')
-rw-r--r--generic/tclNamesp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/generic/tclNamesp.c b/generic/tclNamesp.c
index 12fb46e..401eea4 100644
--- a/generic/tclNamesp.c
+++ b/generic/tclNamesp.c
@@ -22,7 +22,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclNamesp.c,v 1.209 2010/06/08 12:54:38 dgp Exp $
+ * RCS: @(#) $Id: tclNamesp.c,v 1.210 2010/08/18 15:44:13 msofer Exp $
*/
#include "tclInt.h"
@@ -391,6 +391,10 @@ Tcl_PopCallFrame(
Tcl_DeleteNamespace((Tcl_Namespace *) nsPtr);
}
framePtr->nsPtr = NULL;
+
+ if (framePtr->tailcallPtr) {
+ TclSpliceTailcall(interp, framePtr->tailcallPtr);
+ }
}
/*