From d27177f503461d6e868ebc79d00179424f51836f Mon Sep 17 00:00:00 2001 From: dgp Date: Thu, 23 Aug 2007 17:20:05 +0000 Subject: * generic/tclCompExpr.c: Suppress the attempt to convert to numeric when pre-compiling a constant expresion indicates an error. --- ChangeLog | 5 +++++ generic/tclCompExpr.c | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 6e53d98..52f538c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2007-08-23 Don Porter + + * generic/tclCompExpr.c: Suppress the attempt to convert to + numeric when pre-compiling a constant expresion indicates an error. + 2007-08-22 Miguel Sofer * generic/tclExecute.c (TEBC): disable the new shortcut to frequent diff --git a/generic/tclCompExpr.c b/generic/tclCompExpr.c index b7e3404..74e5528 100644 --- a/generic/tclCompExpr.c +++ b/generic/tclCompExpr.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclCompExpr.c,v 1.78 2007/08/22 14:04:16 dgp Exp $ + * RCS: @(#) $Id: tclCompExpr.c,v 1.79 2007/08/23 17:20:07 dgp Exp $ */ #include "tclInt.h" @@ -2307,7 +2307,6 @@ CompileExprTree( Tcl_InterpState save = Tcl_SaveInterpState(interp, TCL_OK); if (ExecConstantExprTree(interp, nodes, next, litObjvPtr) == TCL_OK) { - convert = 0; TclEmitPush(TclAddLiteralObj(envPtr, Tcl_GetObjResult(interp), NULL), envPtr); } else { @@ -2331,6 +2330,7 @@ CompileExprTree( TclStackFree(interp, parsePtr); } Tcl_RestoreInterpState(interp, save); + convert = 0; } else { nodePtr = nodes + next; } -- cgit v0.12