From 34205d6ba3a234c616f1ffcbf5cf2fa2873295af Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Thu, 16 Oct 2025 16:34:01 +0900 Subject: [PATCH] mruby-task: fix integer conversion warning by using uint32_t for sleep functions change sleep_us_impl and sleep_ms_impl parameters from mrb_int to uint32_t. this makes the type requirement explicit and resolves msvc warning c4244. all type conversions happen at ruby boundary functions after validation. Co-authored-by: Claude --- mrbgems/mruby-task/src/task.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mrbgems/mruby-task/src/task.c b/mrbgems/mruby-task/src/task.c index 7565b8ddf..5deb5f468 100644 --- a/mrbgems/mruby-task/src/task.c +++ b/mrbgems/mruby-task/src/task.c @@ -483,7 +483,7 @@ mrb_task_run(mrb_state *mrb) */ static void -sleep_us_impl(mrb_state *mrb, mrb_int usec) +sleep_us_impl(mrb_state *mrb, uint32_t usec) { mrb_task *t; @@ -535,7 +535,7 @@ sleep_us_impl(mrb_state *mrb, mrb_int usec) } static void -sleep_ms_impl(mrb_state *mrb, mrb_int ms) +sleep_ms_impl(mrb_state *mrb, uint32_t ms) { sleep_us_impl(mrb, ms * 1000); } @@ -567,7 +567,7 @@ mrb_f_sleep(mrb_state *mrb, mrb_value self) } mrb_int ms = (mrb_int)(sec * 1000); - sleep_ms_impl(mrb, ms); + sleep_ms_impl(mrb, (uint32_t)ms); return mrb_fixnum_value((mrb_int)sec); } @@ -583,7 +583,7 @@ mrb_f_sleep_ms(mrb_state *mrb, mrb_value self) mrb_raise(mrb, E_ARGUMENT_ERROR, "time interval must be positive"); } - sleep_ms_impl(mrb, ms); + sleep_ms_impl(mrb, (uint32_t)ms); return mrb_nil_value(); } @@ -599,7 +599,7 @@ mrb_f_usleep(mrb_state *mrb, mrb_value self) mrb_raise(mrb, E_ARGUMENT_ERROR, "time interval must be positive"); } - sleep_us_impl(mrb, usec); + sleep_us_impl(mrb, (uint32_t)usec); return mrb_fixnum_value(usec); }