aboutsummaryrefslogtreecommitdiff
path: root/src/libmp/port/mptouv.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libmp/port/mptouv.c')
-rw-r--r--src/libmp/port/mptouv.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libmp/port/mptouv.c b/src/libmp/port/mptouv.c
index eb663f38..9cb74ea4 100644
--- a/src/libmp/port/mptouv.c
+++ b/src/libmp/port/mptouv.c
@@ -22,10 +22,16 @@ uvtomp(uvlong v, mpint *b)
return b;
for(s = 0; s < VLDIGITS && v != 0; s++){
b->p[s] = v;
+ /* !@*$&!@$ gcc gives warnings about the >> here
+ * when running on 64-bit machines, even though
+ * it's in dead code. fake it out with two shifts.
if(sizeof(mpdigit) == sizeof(uvlong))
v = 0;
else
v >>= sizeof(mpdigit)*8;
+ */
+ v >>= sizeof(mpdigit)*4;
+ v >>= sizeof(mpdigit)*4;
}
b->top = s;
return b;