summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2006-08-31 20:41:28 (GMT)
committerdgp <dgp@users.sourceforge.net>2006-08-31 20:41:28 (GMT)
commit882d4ad3cbe738f250c1adb5ca50bb9895712182 (patch)
tree51ba8986b3b1c4ea3c9189cc426df01dd4202d87
parentcb91df64f573a61f3fde281f8b65cccff6b51cff (diff)
downloadtcl-882d4ad3cbe738f250c1adb5ca50bb9895712182.zip
tcl-882d4ad3cbe738f250c1adb5ca50bb9895712182.tar.gz
tcl-882d4ad3cbe738f250c1adb5ca50bb9895712182.tar.bz2
* generic/tclCompExpr.c: Corrected flawed logic for
disabling the INST_TRY_CVT_TO_NUMERIC instruction at the end of an expression when function arguments contain operators. [Bug 1541274]
-rw-r--r--ChangeLog5
-rw-r--r--generic/tclCompExpr.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 732fe1c..b814953 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2006-08-31 Don Porter <dgp@users.sourceforge.net>
+ * generic/tclCompExpr.c: Corrected flawed logic for
+ disabling the INST_TRY_CVT_TO_NUMERIC instruction at the end
+ of an expression when function arguments contain operators.
+ [Bug 1541274]
+
* tests/expr-old.test: The remaining failing tests reported in
* tests/expr.test: [Bug 1381715] are all new in Tcl 8.5, so
there's really no issue of compatibility with Tcl 8.4 result to
diff --git a/generic/tclCompExpr.c b/generic/tclCompExpr.c
index 3c43e55..a4f2673 100644
--- a/generic/tclCompExpr.c
+++ b/generic/tclCompExpr.c
@@ -9,7 +9,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.32 2006/08/10 12:15:31 dkf Exp $
+ * RCS: @(#) $Id: tclCompExpr.c,v 1.33 2006/08/31 20:41:28 dgp Exp $
*/
#include "tclInt.h"
@@ -805,6 +805,7 @@ CompileMathFuncCall(
Tcl_Token *tokenPtr, *afterSubexprPtr;
int argCount;
int code = TCL_OK;
+ int saveHasOperators = infoPtr->hasOperators;
/*
* Prepend "tcl::mathfunc::" to the function name, to produce the name of
@@ -846,6 +847,7 @@ CompileMathFuncCall(
}
*endPtrPtr = afterSubexprPtr;
+ infoPtr->hasOperators = saveHasOperators;
return TCL_OK;
}