diff options
-rw-r--r-- | numeric.c | 9 | ||||
-rw-r--r-- | version.h | 2 |
2 files changed, 8 insertions, 3 deletions
@@ -235,9 +235,14 @@ NORETURN(static void coerce_failed(VALUE x, VALUE y)); static void coerce_failed(VALUE x, VALUE y) { + if (SPECIAL_CONST_P(y) || BUILTIN_TYPE(y) == T_FLOAT) { + y = rb_inspect(y); + } + else { + y = rb_obj_class(y); + } rb_raise(rb_eTypeError, "%"PRIsVALUE" can't be coerced into %"PRIsVALUE, - (rb_special_const_p(y)? rb_inspect(y) : rb_obj_class(y)), - rb_obj_class(x)); + y, rb_obj_class(x)); } static VALUE @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.0.0" #define RUBY_RELEASE_DATE "2015-01-30" -#define RUBY_PATCHLEVEL 629 +#define RUBY_PATCHLEVEL 630 #define RUBY_RELEASE_YEAR 2015 #define RUBY_RELEASE_MONTH 1 |