From d96b2c9a7624b86951bb7270e142ff05d6023629 Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Tue, 12 Dec 2017 00:47:56 +0900 Subject: Support MRB_WITHOUT_FLOAT to mruby-io and mruby-pack --- mrbgems/mruby-io/src/io.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'mrbgems/mruby-io/src') diff --git a/mrbgems/mruby-io/src/io.c b/mrbgems/mruby-io/src/io.c index c3c2e0b5b..b3166b11b 100644 --- a/mrbgems/mruby-io/src/io.c +++ b/mrbgems/mruby-io/src/io.c @@ -682,7 +682,11 @@ mrb_io_sysseek(mrb_state *mrb, mrb_value io) mrb_sys_fail(mrb, "sysseek"); } if (pos > MRB_INT_MAX) { +#ifndef MRB_WITHOUT_FLOAT return mrb_float_value(mrb, (mrb_float)pos); +#else + mrb_raise(mrb, E_IO_ERROR, "sysseek reached too far for MRB_WITHOUT_FLOAT"); +#endif } else { return mrb_fixnum_value(pos); } @@ -765,10 +769,12 @@ time2timeval(mrb_state *mrb, mrb_value time) t.tv_usec = 0; break; +#ifndef MRB_WITHOUT_FLOAT case MRB_TT_FLOAT: t.tv_sec = (time_t)mrb_float(time); t.tv_usec = (mrb_float(time) - t.tv_sec) * 1000000.0; break; +#endif default: mrb_raise(mrb, E_TYPE_ERROR, "wrong argument class"); -- cgit v1.2.3