diff options
Diffstat (limited to 'src/object.c')
| -rw-r--r-- | src/object.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/object.c b/src/object.c index 0c6b86630..a44eab4bb 100644 --- a/src/object.c +++ b/src/object.c @@ -516,7 +516,10 @@ mrb_to_int(mrb_state *mrb, mrb_value val) return mrb_flo_to_fixnum(mrb, val); } #endif - mrb_raisef(mrb, E_TYPE_ERROR, "can't convert %Y to Integer", val); + if (mrb_string_p(val)) { + mrb_raise(mrb, E_TYPE_ERROR, "can't convert String to Integer"); + } + return mrb_type_convert(mrb, val, MRB_TT_INTEGER, MRB_SYM(to_i)); } return val; } |
