diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2019-09-26 06:31:07 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-09-26 06:31:07 +0900 |
| commit | 184aeb0694b235642a073c211ec1f7ddb21e6e41 (patch) | |
| tree | 6d816848b2bb743a41dd5731a17e683cd1b0f8ae | |
| parent | 0d661bcca62bb29b07924a4ceb84e6adfd04be79 (diff) | |
| parent | 84d9296c05308d8aca258ae59c06d90c942d382c (diff) | |
| download | mruby-184aeb0694b235642a073c211ec1f7ddb21e6e41.tar.gz mruby-184aeb0694b235642a073c211ec1f7ddb21e6e41.zip | |
Merge pull request #4732 from dearblue/inttypes
Use inttypes for `snprintf()`
| -rw-r--r-- | include/mruby/value.h | 3 | ||||
| -rw-r--r-- | mrbgems/mruby-pack/src/pack.c | 8 |
2 files changed, 7 insertions, 4 deletions
diff --git a/include/mruby/value.h b/include/mruby/value.h index 72059be63..b318e9042 100644 --- a/include/mruby/value.h +++ b/include/mruby/value.h @@ -41,12 +41,15 @@ struct mrb_state; #if defined _MSC_VER && _MSC_VER < 1800 # define PRIo64 "llo" # define PRId64 "lld" +# define PRIu64 "llu" # define PRIx64 "llx" # define PRIo16 "ho" # define PRId16 "hd" +# define PRIu16 "hu" # define PRIx16 "hx" # define PRIo32 "o" # define PRId32 "d" +# define PRIu32 "u" # define PRIx32 "x" #else # include <inttypes.h> diff --git a/mrbgems/mruby-pack/src/pack.c b/mrbgems/mruby-pack/src/pack.c index 159ba09ac..73b6ce635 100644 --- a/mrbgems/mruby-pack/src/pack.c +++ b/mrbgems/mruby-pack/src/pack.c @@ -237,7 +237,7 @@ unpack_l(mrb_state *mrb, const unsigned char *src, int srclen, mrb_value ary, un int32_t sl = ul; #ifndef MRB_INT64 if (!FIXABLE(sl)) { - snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %ld", (long)sl); + snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %" PRId32, sl); mrb_raise(mrb, E_RANGE_ERROR, msg); } #endif @@ -245,7 +245,7 @@ unpack_l(mrb_state *mrb, const unsigned char *src, int srclen, mrb_value ary, un } else { #ifndef MRB_INT64 if (!POSFIXABLE(ul)) { - snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %lu", (unsigned long)ul); + snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %" PRIu32, ul); mrb_raise(mrb, E_RANGE_ERROR, msg); } #endif @@ -307,13 +307,13 @@ unpack_q(mrb_state *mrb, const unsigned char *src, int srclen, mrb_value ary, un if (flags & PACK_FLAG_SIGNED) { int64_t sll = ull; if (!FIXABLE(sll)) { - snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %lld", (long long)sll); + snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %" PRId64, sll); mrb_raise(mrb, E_RANGE_ERROR, msg); } n = sll; } else { if (!POSFIXABLE(ull)) { - snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %llu", (unsigned long long)ull); + snprintf(msg, sizeof(msg), "cannot unpack to Fixnum: %" PRIu64, ull); mrb_raise(mrb, E_RANGE_ERROR, msg); } n = ull; |
