Reduce VC++ compiler warnings.

parent 761218e7
......@@ -454,7 +454,7 @@ mrb_io_initialize(mrb_state *mrb, mrb_value io)
DATA_TYPE(io) = &mrb_io_type;
DATA_PTR(io) = fptr;
fptr->fd = fd;
fptr->fd = (int)fd;
fptr->readable = ((flags & FMODE_READABLE) != 0);
fptr->writable = ((flags & FMODE_WRITABLE) != 0);
fptr->sync = 0;
......@@ -677,7 +677,7 @@ mrb_io_sysseek(mrb_state *mrb, mrb_value io)
}
fptr = (struct mrb_io *)mrb_get_datatype(mrb, io, &mrb_io_type);
pos = lseek(fptr->fd, offset, (int)whence);
pos = lseek(fptr->fd, (off_t)offset, (int)whence);
if (pos == -1) {
mrb_sys_fail(mrb, "sysseek");
}
......
......@@ -104,9 +104,9 @@ make_base64_dec_tab(void)
}
static mrb_value
str_len_ensure(mrb_state *mrb, mrb_value str, int len)
str_len_ensure(mrb_state *mrb, mrb_value str, mrb_int len)
{
int n = RSTRING_LEN(str);
mrb_int n = RSTRING_LEN(str);
if (len > n) {
do {
n *= 2;
......@@ -121,7 +121,7 @@ static int
pack_c(mrb_state *mrb, mrb_value o, mrb_value str, mrb_int sidx, unsigned int flags)
{
str = str_len_ensure(mrb, str, sidx + 1);
RSTRING_PTR(str)[sidx] = mrb_fixnum(o);
RSTRING_PTR(str)[sidx] = (char)mrb_fixnum(o);
return 1;
}
......@@ -138,10 +138,10 @@ unpack_c(mrb_state *mrb, const void *src, int srclen, mrb_value ary, unsigned in
static int
pack_s(mrb_state *mrb, mrb_value o, mrb_value str, mrb_int sidx, unsigned int flags)
{
unsigned short n;
uint16_t n;
str = str_len_ensure(mrb, str, sidx + 2);
n = mrb_fixnum(o);
n = (uint16_t)mrb_fixnum(o);
if (flags & PACK_FLAG_LITTLEENDIAN) {
RSTRING_PTR(str)[sidx+0] = n % 256;
RSTRING_PTR(str)[sidx+1] = n / 256;
......@@ -172,19 +172,20 @@ unpack_s(mrb_state *mrb, const unsigned char *src, int srclen, mrb_value ary, un
static int
pack_l(mrb_state *mrb, mrb_value o, mrb_value str, mrb_int sidx, unsigned int flags)
{
unsigned long n;
uint32_t n;
str = str_len_ensure(mrb, str, sidx + 4);
n = mrb_fixnum(o);
n = (uint32_t)mrb_fixnum(o);
if (flags & PACK_FLAG_LITTLEENDIAN) {
RSTRING_PTR(str)[sidx+0] = n & 0xff;
RSTRING_PTR(str)[sidx+1] = n >> 8;
RSTRING_PTR(str)[sidx+2] = n >> 16;
RSTRING_PTR(str)[sidx+3] = n >> 24;
RSTRING_PTR(str)[sidx+0] = (char)(n & 0xff);
RSTRING_PTR(str)[sidx+1] = (char)(n >> 8);
RSTRING_PTR(str)[sidx+2] = (char)(n >> 16);
RSTRING_PTR(str)[sidx+3] = (char)(n >> 24);
} else {
RSTRING_PTR(str)[sidx+0] = n >> 24;
RSTRING_PTR(str)[sidx+1] = n >> 16;
RSTRING_PTR(str)[sidx+2] = n >> 8;
RSTRING_PTR(str)[sidx+3] = n & 0xff;
RSTRING_PTR(str)[sidx+0] = (char)(n >> 24);
RSTRING_PTR(str)[sidx+1] = (char)(n >> 16);
RSTRING_PTR(str)[sidx+2] = (char)(n >> 8);
RSTRING_PTR(str)[sidx+3] = (char)(n & 0xff);
}
return 4;
}
......@@ -228,27 +229,28 @@ unpack_l(mrb_state *mrb, const unsigned char *src, int srclen, mrb_value ary, un
static int
pack_q(mrb_state *mrb, mrb_value o, mrb_value str, mrb_int sidx, unsigned int flags)
{
unsigned long long n;
uint64_t n;
str = str_len_ensure(mrb, str, sidx + 8);
n = mrb_fixnum(o);
n = (uint64_t)mrb_fixnum(o);
if (flags & PACK_FLAG_LITTLEENDIAN) {
RSTRING_PTR(str)[sidx+0] = n & 0xff;
RSTRING_PTR(str)[sidx+1] = n >> 8;
RSTRING_PTR(str)[sidx+2] = n >> 16;
RSTRING_PTR(str)[sidx+3] = n >> 24;
RSTRING_PTR(str)[sidx+4] = n >> 32;
RSTRING_PTR(str)[sidx+5] = n >> 40;
RSTRING_PTR(str)[sidx+6] = n >> 48;
RSTRING_PTR(str)[sidx+7] = n >> 56;
RSTRING_PTR(str)[sidx+0] = (char)(n & 0xff);
RSTRING_PTR(str)[sidx+1] = (char)(n >> 8);
RSTRING_PTR(str)[sidx+2] = (char)(n >> 16);
RSTRING_PTR(str)[sidx+3] = (char)(n >> 24);
RSTRING_PTR(str)[sidx+4] = (char)(n >> 32);
RSTRING_PTR(str)[sidx+5] = (char)(n >> 40);
RSTRING_PTR(str)[sidx+6] = (char)(n >> 48);
RSTRING_PTR(str)[sidx+7] = (char)(n >> 56);
} else {
RSTRING_PTR(str)[sidx+0] = n >> 56;
RSTRING_PTR(str)[sidx+1] = n >> 48;
RSTRING_PTR(str)[sidx+2] = n >> 40;
RSTRING_PTR(str)[sidx+3] = n >> 32;
RSTRING_PTR(str)[sidx+4] = n >> 24;
RSTRING_PTR(str)[sidx+5] = n >> 16;
RSTRING_PTR(str)[sidx+6] = n >> 8;
RSTRING_PTR(str)[sidx+7] = n & 0xff;
RSTRING_PTR(str)[sidx+0] = (char)(n >> 56);
RSTRING_PTR(str)[sidx+1] = (char)(n >> 48);
RSTRING_PTR(str)[sidx+2] = (char)(n >> 40);
RSTRING_PTR(str)[sidx+3] = (char)(n >> 32);
RSTRING_PTR(str)[sidx+4] = (char)(n >> 24);
RSTRING_PTR(str)[sidx+5] = (char)(n >> 16);
RSTRING_PTR(str)[sidx+6] = (char)(n >> 8);
RSTRING_PTR(str)[sidx+7] = (char)(n & 0xff);
}
return 8;
}
......@@ -357,7 +359,7 @@ pack_float(mrb_state *mrb, mrb_value o, mrb_value str, mrb_int sidx, unsigned in
float f;
uint8_t *buffer = (uint8_t *)&f;
str = str_len_ensure(mrb, str, sidx + 4);
f = mrb_float(o);
f = (float)mrb_float(o);
if (flags & PACK_FLAG_LITTLEENDIAN) {
#ifdef MRB_ENDIAN_BIG
......@@ -414,12 +416,12 @@ pack_utf8(mrb_state *mrb, mrb_value o, mrb_value str, mrb_int sidx, long count,
{
char utf8[4];
int len = 0;
unsigned long c = 0;
uint32_t c = 0;
if (mrb_float_p(o)) {
goto range_error;
}
c = mrb_fixnum(o);
c = (uint32_t)mrb_fixnum(o);
/* Unicode character */
/* from mruby-compiler gem */
......@@ -533,7 +535,7 @@ unpack_utf8(mrb_state *mrb, const unsigned char * src, int srclen, mrb_value ary
static int
pack_a(mrb_state *mrb, mrb_value src, mrb_value dst, mrb_int didx, long count, unsigned int flags)
{
int copylen, slen, padlen;
mrb_int copylen, slen, padlen;
char *dptr, *dptr0, pad, *sptr;
sptr = RSTRING_PTR(src);
......@@ -604,7 +606,7 @@ static int
pack_h(mrb_state *mrb, mrb_value src, mrb_value dst, mrb_int didx, long count, unsigned int flags)
{
unsigned int a, ashift, b, bshift;
int slen;
mrb_int slen;
char *dptr, *dptr0, *sptr;
sptr = RSTRING_PTR(src);
......@@ -641,7 +643,7 @@ pack_h(mrb_state *mrb, mrb_value src, mrb_value dst, mrb_int didx, long count, u
*dptr++ = (a << ashift) + (b << bshift);
}
return dptr - dptr0;
return (int)(dptr - dptr0);
}
static int
......@@ -688,7 +690,7 @@ unpack_h(mrb_state *mrb, const void *src, int slen, mrb_value ary, int count, un
dst = mrb_str_resize(mrb, dst, dptr - dptr0);
mrb_ary_push(mrb, ary, dst);
return sptr - sptr0;
return (int)(sptr - sptr0);
}
......@@ -697,7 +699,7 @@ pack_m(mrb_state *mrb, mrb_value src, mrb_value dst, mrb_int didx, long count, u
{
mrb_int dstlen;
unsigned long l;
int column, srclen;
mrb_int column, srclen;
char *srcptr, *dstptr, *dstptr0;
srcptr = RSTRING_PTR(src);
......@@ -755,7 +757,7 @@ pack_m(mrb_state *mrb, mrb_value src, mrb_value dst, mrb_int didx, long count, u
*dstptr++ = '\n';
}
return dstptr - dstptr0;
return (int)(dstptr - dstptr0);
}
static int
......@@ -811,7 +813,7 @@ unpack_m(mrb_state *mrb, const void *src, int slen, mrb_value ary, unsigned int
done:
dst = mrb_str_resize(mrb, dst, dptr - dptr0);
mrb_ary_push(mrb, ary, dst);
return sptr - sptr0;
return (int)(sptr - sptr0);
}
static int
......@@ -851,7 +853,7 @@ has_tmpl(const struct tmpl *tmpl)
static void
read_tmpl(mrb_state *mrb, struct tmpl *tmpl, int *dirp, int *typep, int *sizep, long *countp, unsigned int *flagsp)
{
int ch, dir, t, tlen, type;
mrb_int ch, dir, t, tlen, type;
int size = 0;
long count = 1;
unsigned int flags = 0;
......@@ -1166,7 +1168,8 @@ mrb_pack_unpack(mrb_state *mrb, mrb_value str)
struct tmpl tmpl;
long count;
unsigned int flags;
int dir, size, srcidx, srclen, type;
int dir, size, type;
mrb_int srcidx, srclen;
const unsigned char *sptr;
prepare_tmpl(mrb, &tmpl);
......
......@@ -131,14 +131,14 @@ mrb_addrinfo_getaddrinfo(mrb_state *mrb, mrb_value klass)
}
memset(&hints, 0, sizeof(hints));
hints.ai_flags = flags;
hints.ai_flags = (int)flags;
if (mrb_fixnum_p(family)) {
hints.ai_family = mrb_fixnum(family);
hints.ai_family = (int)mrb_fixnum(family);
}
if (mrb_fixnum_p(socktype)) {
hints.ai_socktype = mrb_fixnum(socktype);
hints.ai_socktype = (int)mrb_fixnum(socktype);
}
lastai = mrb_cv_get(mrb, klass, mrb_intern_lit(mrb, "_lastai"));
......@@ -182,7 +182,7 @@ mrb_addrinfo_getnameinfo(mrb_state *mrb, mrb_value self)
if (!mrb_string_p(sastr)) {
mrb_raise(mrb, E_SOCKET_ERROR, "invalid sockaddr");
}
error = getnameinfo((struct sockaddr *)RSTRING_PTR(sastr), (socklen_t)RSTRING_LEN(sastr), RSTRING_PTR(host), NI_MAXHOST, RSTRING_PTR(serv), NI_MAXSERV, flags);
error = getnameinfo((struct sockaddr *)RSTRING_PTR(sastr), (socklen_t)RSTRING_LEN(sastr), RSTRING_PTR(host), NI_MAXHOST, RSTRING_PTR(serv), NI_MAXSERV, (int)flags);
if (error != 0) {
mrb_raisef(mrb, E_SOCKET_ERROR, "getnameinfo: %s", gai_strerror(error));
}
......@@ -243,7 +243,7 @@ sa2addrlist(mrb_state *mrb, const struct sockaddr *sa, socklen_t salen)
static int
socket_fd(mrb_state *mrb, mrb_value sock)
{
return mrb_fixnum(mrb_funcall(mrb, sock, "fileno", 0));
return (int)mrb_fixnum(mrb_funcall(mrb, sock, "fileno", 0));
}
static int
......@@ -319,7 +319,7 @@ mrb_basicsocket_getsockopt(mrb_state *mrb, mrb_value self)
mrb_get_args(mrb, "ii", &level, &optname);
s = socket_fd(mrb, self);
optlen = sizeof(opt);
if (getsockopt(s, level, optname, opt, &optlen) == -1)
if (getsockopt(s, (int)level, (int)optname, opt, &optlen) == -1)
mrb_sys_fail(mrb, "getsockopt");
c = mrb_const_get(mrb, mrb_obj_value(mrb_class_get(mrb, "Socket")), mrb_intern_lit(mrb, "Option"));
family = socket_family(s);
......@@ -336,7 +336,7 @@ mrb_basicsocket_recv(mrb_state *mrb, mrb_value self)
mrb_get_args(mrb, "i|i", &maxlen, &flags);
buf = mrb_str_buf_new(mrb, maxlen);
n = recv(socket_fd(mrb, self), RSTRING_PTR(buf), maxlen, flags);
n = recv(socket_fd(mrb, self), RSTRING_PTR(buf), (size_t)maxlen, (int)flags);
if (n == -1)
mrb_sys_fail(mrb, "recv");
mrb_str_resize(mrb, buf, n);
......@@ -355,7 +355,7 @@ mrb_basicsocket_recvfrom(mrb_state *mrb, mrb_value self)
buf = mrb_str_buf_new(mrb, maxlen);
socklen = sizeof(struct sockaddr_storage);
sa = mrb_str_buf_new(mrb, socklen);
n = recvfrom(socket_fd(mrb, self), RSTRING_PTR(buf), maxlen, flags, (struct sockaddr *)RSTRING_PTR(sa), &socklen);
n = recvfrom(socket_fd(mrb, self), RSTRING_PTR(buf), (size_t)maxlen, (int)flags, (struct sockaddr *)RSTRING_PTR(sa), &socklen);
if (n == -1)
mrb_sys_fail(mrb, "recvfrom");
mrb_str_resize(mrb, buf, n);
......@@ -376,9 +376,9 @@ mrb_basicsocket_send(mrb_state *mrb, mrb_value self)
dest = mrb_nil_value();
mrb_get_args(mrb, "Si|S", &mesg, &flags, &dest);
if (mrb_nil_p(dest)) {
n = send(socket_fd(mrb, self), RSTRING_PTR(mesg), RSTRING_LEN(mesg), flags);
n = send(socket_fd(mrb, self), RSTRING_PTR(mesg), (size_t)RSTRING_LEN(mesg), (int)flags);
} else {
n = sendto(socket_fd(mrb, self), RSTRING_PTR(mesg), RSTRING_LEN(mesg), flags, (const struct sockaddr*)RSTRING_PTR(dest), RSTRING_LEN(dest));
n = sendto(socket_fd(mrb, self), RSTRING_PTR(mesg), (size_t)RSTRING_LEN(mesg), (int)flags, (const struct sockaddr*)RSTRING_PTR(dest), RSTRING_LEN(dest));
}
if (n == -1)
mrb_sys_fail(mrb, "send");
......@@ -417,8 +417,8 @@ mrb_basicsocket_setnonblock(mrb_state *mrb, mrb_value self)
static mrb_value
mrb_basicsocket_setsockopt(mrb_state *mrb, mrb_value self)
{
int argc, s;
mrb_int level = 0, optname;
int s;
mrb_int argc, level = 0, optname;
mrb_value optval, so;
argc = mrb_get_args(mrb, "o|io", &so, &optname, &optval);
......@@ -434,7 +434,7 @@ mrb_basicsocket_setsockopt(mrb_state *mrb, mrb_value self)
optval = mrb_str_new(mrb, (char*)&i, sizeof(i));
} else if (mrb_fixnum_p(optval)) {
if (optname == IP_MULTICAST_TTL || optname == IP_MULTICAST_LOOP) {
char uc = mrb_fixnum(optval);
char uc = (char)mrb_fixnum(optval);
optval = mrb_str_new(mrb, &uc, sizeof(uc));
} else {
mrb_int i = mrb_fixnum(optval);
......@@ -454,7 +454,7 @@ mrb_basicsocket_setsockopt(mrb_state *mrb, mrb_value self)
}
s = socket_fd(mrb, self);
if (setsockopt(s, level, optname, RSTRING_PTR(optval), RSTRING_LEN(optval)) == -1)
if (setsockopt(s, (int)level, (int)optname, RSTRING_PTR(optval), (size_t)RSTRING_LEN(optval)) == -1)
mrb_sys_fail(mrb, "setsockopt");
return mrb_fixnum_value(0);
}
......@@ -465,7 +465,7 @@ mrb_basicsocket_shutdown(mrb_state *mrb, mrb_value self)
mrb_int how = SHUT_RDWR;
mrb_get_args(mrb, "|i", &how);
if (shutdown(socket_fd(mrb, self), how) != 0)
if (shutdown(socket_fd(mrb, self), (int)how) != 0)
mrb_sys_fail(mrb, "shutdown");
return mrb_fixnum_value(0);
}
......@@ -479,7 +479,7 @@ mrb_ipsocket_ntop(mrb_state *mrb, mrb_value klass)
mrb_get_args(mrb, "is", &af, &addr, &n);
if ((af == AF_INET && n != 4) || (af == AF_INET6 && n != 16))
mrb_raise(mrb, E_ARGUMENT_ERROR, "invalid address");
if (inet_ntop(af, addr, buf, sizeof(buf)) == NULL)
if (inet_ntop((int)af, addr, buf, sizeof(buf)) == NULL)
mrb_raise(mrb, E_ARGUMENT_ERROR, "invalid address");
return mrb_str_new_cstr(mrb, buf);
}
......@@ -520,15 +520,15 @@ mrb_ipsocket_recvfrom(mrb_state *mrb, mrb_value self)
struct sockaddr_storage ss;
socklen_t socklen;
mrb_value a, buf, pair;
mrb_int flags, maxlen, n;
int fd;
mrb_int flags, maxlen;
int n, fd;
fd = socket_fd(mrb, self);
flags = 0;
mrb_get_args(mrb, "i|i", &maxlen, &flags);
buf = mrb_str_buf_new(mrb, maxlen);
socklen = sizeof(ss);
n = recvfrom(fd, RSTRING_PTR(buf), maxlen, flags,
n = recvfrom(fd, RSTRING_PTR(buf), (size_t)maxlen, (int)flags,
(struct sockaddr *)&ss, &socklen);
if (n == -1) {
mrb_sys_fail(mrb, "recvfrom");
......@@ -552,7 +552,7 @@ mrb_socket_gethostname(mrb_state *mrb, mrb_value cls)
#else
bufsize = 256;
#endif
buf = mrb_str_buf_new(mrb, bufsize);
buf = mrb_str_buf_new(mrb, (mrb_int)bufsize);
if (gethostname(RSTRING_PTR(buf), bufsize) != 0)
mrb_sys_fail(mrb, "gethostname");
mrb_str_resize(mrb, buf, strlen(RSTRING_PTR(buf)));
......@@ -692,7 +692,7 @@ mrb_socket_socket(mrb_state *mrb, mrb_value klass)
int s;
mrb_get_args(mrb, "iii", &domain, &type, &protocol);
s = (int)socket(domain, type, protocol);
s = (int)socket((int)domain, (int)type, (int)protocol);
if (s == -1)
mrb_sys_fail(mrb, "socket");
return mrb_fixnum_value(s);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment