From 39a7aed37c2b4b822fc5ad8d89fd45df701dfb25 Mon Sep 17 00:00:00 2001 From: mcmartin Date: Wed, 18 Dec 2002 21:50:06 +0000 Subject: [PATCH] Workaround to avoid negative shifts, from Fizban git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@441 8092fc87-c524-0410-9efc-e669fe64eaf9 --- sc2/src/sc2code/globdata.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sc2/src/sc2code/globdata.h b/sc2/src/sc2code/globdata.h index 450267cda..206739b4e 100644 --- a/sc2/src/sc2code/globdata.h +++ b/sc2/src/sc2code/globdata.h @@ -695,7 +695,11 @@ END_GAME_STATE GLOBAL (GameState[END_##SName >> 3]) = \ (GLOBAL (GameState[END_##SName >> 3]) \ & (BYTE)~((1 << ((END_##SName & 7) + 1)) - 1)) \ - | (BYTE)((val) >> (END_##SName - SName - (END_##SName & 7))); \ + | (BYTE)((val) >> \ + /* multiply to silence negative shift warning when \ + * compiling with -O0 */ \ + (((SName >> 3) < (END_##SName >> 3)) * \ + (END_##SName - SName - (END_##SName & 7)))); \ } #define READ_SPEED_MASK ((1 << 3) - 1)