summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--generic/tclExecute.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c
index 8963472..7e014d4 100644
--- a/generic/tclExecute.c
+++ b/generic/tclExecute.c
@@ -6379,10 +6379,10 @@ TEBCresume(
* Handle shifts within the native long range.
*/
- if ((size_t) shift < CHAR_BIT*sizeof(long) && (l1 != 0)
+ if (((size_t) shift < CHAR_BIT*sizeof(long))
&& !((l1>0 ? l1 : ~l1) &
- -(1L<<(CHAR_BIT*sizeof(long) - 1 - shift)))) {
- lResult = l1 << shift;
+ -(1UL<<(CHAR_BIT*sizeof(long) - 1 - shift)))) {
+ lResult = (unsigned long)l1 << shift;
goto longResultOfArithmetic;
}
}