summaryrefslogtreecommitdiff
path: root/bignum.c
diff options
context:
space:
mode:
authorcharliesome <charliesome@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-06-07 08:41:48 +0000
committercharliesome <charliesome@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-06-07 08:41:48 +0000
commitf8cf43706a4e4ac33a2223ed1d2d3405eea1d64e (patch)
tree633f4c9e4433d748fff98e06959af0c605aeb50d /bignum.c
parent97b825bdcf0144e12f9079c66d547a56aa86d2f7 (diff)
* bignum.c (rb_absint_size): explicit cast to BDIGIT to avoid implicit
64 bit to 32 bit shortening warning * bignum.c (rb_int_export): ditto * bignum.c (int_import_push_bits): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'bignum.c')
-rw-r--r--bignum.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/bignum.c b/bignum.c
index e076acbfb5..a1b9d30aec 100644
--- a/bignum.c
+++ b/bignum.c
@@ -472,7 +472,7 @@ rb_absint_size(VALUE val, int *number_of_leading_zero_bits)
fixbuf[0] = v;
#else
for (i = 0; i < (int)(sizeof(fixbuf)/sizeof(*fixbuf)); i++) {
- fixbuf[i] = v & ((1L << (SIZEOF_BDIGITS * CHAR_BIT)) - 1);
+ fixbuf[i] = (BDIGIT)(v & ((1L << (SIZEOF_BDIGITS * CHAR_BIT)) - 1));
v >>= SIZEOF_BDIGITS * CHAR_BIT;
}
#endif
@@ -623,7 +623,7 @@ rb_int_export(VALUE val, int *signp, size_t *wordcount_allocated, void *words, s
fixbuf[0] = v;
#else
for (i = 0; i < (int)(sizeof(fixbuf)/sizeof(*fixbuf)); i++) {
- fixbuf[i] = v & ((1L << (SIZEOF_BDIGITS * CHAR_BIT)) - 1);
+ fixbuf[i] = (BDIGIT)(v & ((1L << (SIZEOF_BDIGITS * CHAR_BIT)) - 1));
v >>= SIZEOF_BDIGITS * CHAR_BIT;
}
#endif
@@ -775,7 +775,7 @@ int_import_push_bits(int data, int numbits, BDIGIT_DBL *ddp, int *numbits_in_dd_
(*ddp) |= ((BDIGIT_DBL)data) << (*numbits_in_dd_p);
*numbits_in_dd_p += numbits;
while (SIZEOF_BDIGITS*CHAR_BIT <= *numbits_in_dd_p) {
- *(*dpp)++ = (*ddp) & (((BDIGIT_DBL)1 << (SIZEOF_BDIGITS*CHAR_BIT))-1);
+ *(*dpp)++ = (BDIGIT)((*ddp) & (((BDIGIT_DBL)1 << (SIZEOF_BDIGITS*CHAR_BIT))-1));
*ddp >>= SIZEOF_BDIGITS*CHAR_BIT;
*numbits_in_dd_p -= SIZEOF_BDIGITS*CHAR_BIT;
}