diff --git a/binding-mri/binding-util.h b/binding-mri/binding-util.h index 1b758be..293996b 100644 --- a/binding-mri/binding-util.h +++ b/binding-mri/binding-util.h @@ -228,7 +228,7 @@ rb_float_arg(VALUE arg, double *out, int argPos = 0) break; default: - rb_raise(rb_eTypeError, "Argument %d: Expected float", argPos); + rb_raise(rb_eTypeError, "Argument %d: Expected float(got 0x%x)", argPos, rb_type(arg)); } } @@ -243,11 +243,12 @@ rb_int_arg(VALUE arg, int *out, int argPos = 0) break; case RUBY_T_FIXNUM : + case RUBY_T_RATIONAL : *out = FIX2INT(arg); break; default: - rb_raise(rb_eTypeError, "Argument %d: Expected fixnum", argPos); + rb_raise(rb_eTypeError, "Argument %d: Expected fixnum(got 0x%x)", argPos, rb_type(arg)); } }