diff --git a/psys/include/p2c/p2c.h b/psys/include/p2c/p2c.h
index bb75519ed6f335341915e2f0ac2dc73e9c495816..51f72b2ba77627ebb57d7f70289320c8b5e822a6 100644
--- a/psys/include/p2c/p2c.h
+++ b/psys/include/p2c/p2c.h
@@ -181,7 +181,7 @@ typedef struct {
 /* packed arrays */   /* BEWARE: these are untested! */
 #define P_getbits_UB(a,i,n,L)   ((int)((a)[(i)>>((L)-(n))] >>   \
 				       (((~(i))&((1<<((L)-(n)))-1)) << (n)) &  \
-				       (1<<(1<<(n)))-1))
+				       ((1<<(1<<(n)))-1)))
 
 #define P_getbits_SB(a,i,n,L)   ((int)((a)[(i)>>((L)-(n))] <<   \
 				       (16 - ((((~(i))&((1<<((L)-(n)))-1))+1) <<\