From a5a12ecf21493f9ec821f473507ad5e872ef4465 Mon Sep 17 00:00:00 2001 From: pk-2000 <63214388+pk-2000@users.noreply.github.com> Date: Wed, 1 Sep 2021 00:09:15 +0300 Subject: [PATCH] Rational errors fix - Better debug information on float errors (lines 231 and 251). - line 246 fixes ruby rational errors --- binding-mri/binding-util.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) 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)); } }