Gerald Pfeifer : wpp: Add explicit casts when mixing signed and unsigned integers.

Alexandre Julliard julliard at winehq.org
Wed Feb 16 11:14:11 CST 2011


Module: wine
Branch: master
Commit: 7a3226be4696a01ddf4f9fe8494224455a6c9a0a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=7a3226be4696a01ddf4f9fe8494224455a6c9a0a

Author: Gerald Pfeifer <gerald at pfeifer.com>
Date:   Wed Feb 16 02:50:46 2011 +0100

wpp: Add explicit casts when mixing signed and unsigned integers.

---

 libs/wpp/ppy.y |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libs/wpp/ppy.y b/libs/wpp/ppy.y
index 5f1566e..b50e120 100644
--- a/libs/wpp/ppy.y
+++ b/libs/wpp/ppy.y
@@ -59,7 +59,7 @@
 	if(cv_signed(v1) && cv_signed(v2))		\
 		r.val.si = v1.val.si OP v2.val.si;	\
 	else if(cv_signed(v1) && !cv_signed(v2))	\
-		r.val.si = v1.val.si OP v2.val.ui;	\
+		r.val.si = v1.val.si OP (signed) v2.val.ui; \
 	else if(!cv_signed(v1) && cv_signed(v2))	\
 		r.val.si = v1.val.ui OP v2.val.si;	\
 	else						\
@@ -70,7 +70,7 @@
 	if(cv_signed(v1) && cv_signed(v2))		\
 		r.val.sl = v1.val.sl OP v2.val.sl;	\
 	else if(cv_signed(v1) && !cv_signed(v2))	\
-		r.val.sl = v1.val.sl OP v2.val.ul;	\
+		r.val.sl = v1.val.sl OP (signed long) v2.val.ul; \
 	else if(!cv_signed(v1) && cv_signed(v2))	\
 		r.val.sl = v1.val.ul OP v2.val.sl;	\
 	else						\
@@ -81,7 +81,7 @@
 	if(cv_signed(v1) && cv_signed(v2))		\
 		r.val.sll = v1.val.sll OP v2.val.sll;	\
 	else if(cv_signed(v1) && !cv_signed(v2))	\
-		r.val.sll = v1.val.sll OP v2.val.ull;	\
+		r.val.sll = v1.val.sll OP (wrc_sll_t) v2.val.ull; \
 	else if(!cv_signed(v1) && cv_signed(v2))	\
 		r.val.sll = v1.val.ull OP v2.val.sll;	\
 	else						\




More information about the wine-cvs mailing list