summaryrefslogtreecommitdiffstats
path: root/generic/tclExecute.c
diff options
context:
space:
mode:
authordas <das>2009-09-07 07:28:38 (GMT)
committerdas <das>2009-09-07 07:28:38 (GMT)
commit71eeb99bfbfdcf1437799cb69d10b599f7633293 (patch)
tree9ce27be993bcf700cfffdd10f234b82b35f6c435 /generic/tclExecute.c
parentc70d85c03e5455903df2df0534bb0a8ac25b32ac (diff)
downloadtcl-71eeb99bfbfdcf1437799cb69d10b599f7633293.zip
tcl-71eeb99bfbfdcf1437799cb69d10b599f7633293.tar.gz
tcl-71eeb99bfbfdcf1437799cb69d10b599f7633293.tar.bz2
* generic/tclExecute.c: fix potential uninitialized variable use and
* generic/tclFCmd.c: null dereference flagged by clang static * generic/tclProc.c: analyzer. * generic/tclTimer.c: * generic/tclUtf.c: * generic/tclExecute.c: silence false positives from clang static * generic/tclIO.c: analyzer about potential null dereference. * generic/tclScan.c: * generic/tclCompExpr.c:
Diffstat (limited to 'generic/tclExecute.c')
-rw-r--r--generic/tclExecute.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 662d2a0..778b679 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -14,7 +14,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclExecute.c,v 1.445 2009/09/04 17:33:11 dgp Exp $
+ * RCS: @(#) $Id: tclExecute.c,v 1.446 2009/09/07 07:28:38 das Exp $
*/
#include "tclInt.h"
@@ -2850,6 +2850,7 @@ TclExecuteByteCode(
case INST_INVOKE_EXPANDED:
{
+ CLANG_ASSERT(auxObjList);
objc = CURR_DEPTH
- (ptrdiff_t) auxObjList->internalRep.twoPtrValue.ptr1;
POP_AUX_OBJ();
@@ -4546,7 +4547,7 @@ TclExecuteByteCode(
if (o != NULL) {
s2 = TclGetStringFromObj(o, &s2len);
} else {
- s2 = "";
+ s2 = ""; s2len = 0;
}
if (s1len == s2len) {
found = (strcmp(s1, s2) == 0);
@@ -7969,6 +7970,7 @@ TclExecuteByteCode(
(unsigned) CURR_DEPTH, (unsigned) 0);
Tcl_Panic("TclExecuteByteCode execution failure: end stack top < start stack top");
}
+ CLANG_ASSERT(bcFramePtr);
}
oldBottomPtr = bottomPtr->prevBottomPtr;