diff options
author | Miguel Sofer <miguel.sofer@gmail.com> | 2006-09-30 17:56:45 (GMT) |
---|---|---|
committer | Miguel Sofer <miguel.sofer@gmail.com> | 2006-09-30 17:56:45 (GMT) |
commit | 7d238aee5a63e4f16bafa9863ec090f904e66df2 (patch) | |
tree | ad9a7220c6ca69cd16f1f4d0574ec34d46c1ad63 /generic/tclProc.c | |
parent | 858a806396de6a90554a6ebd0ce288b554f61ac7 (diff) | |
download | tcl-7d238aee5a63e4f16bafa9863ec090f904e66df2.zip tcl-7d238aee5a63e4f16bafa9863ec090f904e66df2.tar.gz tcl-7d238aee5a63e4f16bafa9863ec090f904e66df2.tar.bz2 |
* generic/tclCompile.c:
* generic/tclHistory.c:
* generic/tclInt.h:
* generic/tclProc.c: made Tcl_RecordAndEvalObj not call "history"
if it has been redefined to an empty proc, in order to reduce the
noise when debugging [FR 1190441]. Moved TclCompileNoOp from
tclProc.c to tclCompile.c
Diffstat (limited to 'generic/tclProc.c')
-rw-r--r-- | generic/tclProc.c | 47 |
1 files changed, 1 insertions, 46 deletions
diff --git a/generic/tclProc.c b/generic/tclProc.c index 2069ea9..035de96 100644 --- a/generic/tclProc.c +++ b/generic/tclProc.c @@ -11,7 +11,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclProc.c,v 1.91 2006/05/15 16:07:47 dgp Exp $ + * RCS: @(#) $Id: tclProc.c,v 1.92 2006/09/30 17:56:47 msofer Exp $ */ #include "tclInt.h" @@ -35,8 +35,6 @@ static void ProcBodyFree(Tcl_Obj *objPtr); static int ProcessProcResultCode(Tcl_Interp *interp, char *procName, int nameLen, int returnCode); static int SetLambdaFromAny(Tcl_Interp *interp, Tcl_Obj *objPtr); -static int TclCompileNoOp(Tcl_Interp *interp, Tcl_Parse *parsePtr, - struct CompileEnv *envPtr); static int ProcCompileProc (Tcl_Interp *interp, Proc *procPtr, Tcl_Obj *bodyPtr, Namespace *nsPtr, CONST char *description, CONST char *procName, @@ -1962,49 +1960,6 @@ ProcBodyFree( } /* - *---------------------------------------------------------------------- - * - * TclCompileNoOp -- - * - * Function called to compile no-op's - * - * Results: - * The return value is TCL_OK, indicating successful compilation. - * - * Side effects: - * Instructions are added to envPtr to execute a no-op at runtime. - * - *---------------------------------------------------------------------- - */ - -static int -TclCompileNoOp( - Tcl_Interp *interp, /* Used for error reporting. */ - Tcl_Parse *parsePtr, /* Points to a parse structure for the command - * created by Tcl_ParseCommand. */ - CompileEnv *envPtr) /* Holds resulting instructions. */ -{ - Tcl_Token *tokenPtr; - int i; - int savedStackDepth = envPtr->currStackDepth; - - tokenPtr = parsePtr->tokenPtr; - for(i = 1; i < parsePtr->numWords; i++) { - tokenPtr = tokenPtr + tokenPtr->numComponents + 1; - envPtr->currStackDepth = savedStackDepth; - - if (tokenPtr->type != TCL_TOKEN_SIMPLE_WORD) { - TclCompileTokens(interp, tokenPtr+1, tokenPtr->numComponents, - envPtr); - TclEmitOpcode(INST_POP, envPtr); - } - } - envPtr->currStackDepth = savedStackDepth; - TclEmitPush(TclRegisterNewLiteral(envPtr, "", 0), envPtr); - return TCL_OK; -} - -/* * LAMBDA and APPLY implementation. [TIP#194] */ |