diff options
author | Miguel Sofer <miguel.sofer@gmail.com> | 2010-08-18 15:44:09 (GMT) |
---|---|---|
committer | Miguel Sofer <miguel.sofer@gmail.com> | 2010-08-18 15:44:09 (GMT) |
commit | 096e06e4b8606abecd8fe11c9919df4f35cf4d52 (patch) | |
tree | f997dd6e04e669fc5c94627f3ab580c39c22fc71 /generic/tclNamesp.c | |
parent | 8288b47f5e7647e90d8499bf5e45099b1651aa62 (diff) | |
download | tcl-096e06e4b8606abecd8fe11c9919df4f35cf4d52.zip tcl-096e06e4b8606abecd8fe11c9919df4f35cf4d52.tar.gz tcl-096e06e4b8606abecd8fe11c9919df4f35cf4d52.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:
Diffstat (limited to 'generic/tclNamesp.c')
-rw-r--r-- | generic/tclNamesp.c | 6 |
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); + } } /* |