diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-12-09 16:14:12 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-12-09 16:14:12 +0900 |
| commit | 274884abe51d22aac673d37d11ebf22ce92b8d98 (patch) | |
| tree | 6dca20a6dbd30c4ac46a46949d9a4bdefcf2046c | |
| parent | 761218e70b99c9f42008692f70d2f3cd8551b76e (diff) | |
| download | mruby-274884abe51d22aac673d37d11ebf22ce92b8d98.tar.gz mruby-274884abe51d22aac673d37d11ebf22ce92b8d98.zip | |
Reduce VC++ compiler warnings.
| -rw-r--r-- | mrbgems/mruby-io/src/io.c | 4 | ||||
| -rw-r--r-- | mrbgems/mruby-pack/src/pack.c | 93 | ||||
| -rw-r--r-- | mrbgems/mruby-socket/src/socket.c | 42 |
3 files changed, 71 insertions, 68 deletions
diff --git a/mrbgems/mruby-io/src/io.c b/mrbgems/mruby-io/src/io.c index 1b6b3855b..c3c2e0b5b 100644 --- a/mrbgems/mruby-io/src/io.c +++ b/mrbgems/mruby-io/src/io.c @@ -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"); } diff --git a/mrbgems/mruby-pack/src/pack.c b/mrbgems/mruby-pack/src/pack.c index 67cb94eaf..2f762398b 100644 --- a/mrbgems/mruby-pack/src/pack.c +++ b/mrbgems/mruby-pack/src/pack.c @@ -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); diff --git a/mrbgems/mruby-socket/src/socket.c b/mrbgems/mruby-socket/src/socket.c index ff8980139..4fe934d9a 100644 --- a/mrbgems/mruby-socket/src/socket.c +++ b/mrbgems/mruby-socket/src/socket.c @@ -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); |
