diff --git a/ChangeLog b/ChangeLog index 30e578818a..cb85a8a900 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sat Oct 24 12:47:47 2015 Martin Duerst + + * vm_insnhelper.c: improved error message for "wrong number + of arguments", distinguishing given and expected argument + numbers clearly. [Feature #9025] + Sat Oct 24 11:57:59 2015 Shugo Maeda * vm_insnhelper.c: remove the typedef redeclaration of diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 7f4a371423..07b7b02385 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -216,13 +216,13 @@ rb_arity_error_new(int argc, int min, int max) { VALUE err_mess = 0; if (min == max) { - err_mess = rb_sprintf("wrong number of arguments (%d for %d)", argc, min); + err_mess = rb_sprintf("wrong number of arguments (given %d, expected %d)", argc, min); } else if (max == UNLIMITED_ARGUMENTS) { - err_mess = rb_sprintf("wrong number of arguments (%d for %d+)", argc, min); + err_mess = rb_sprintf("wrong number of arguments (given %d, expected %d+)", argc, min); } else { - err_mess = rb_sprintf("wrong number of arguments (%d for %d..%d)", argc, min, max); + err_mess = rb_sprintf("wrong number of arguments (given %d, expected %d..%d)", argc, min, max); } return rb_exc_new3(rb_eArgError, err_mess); }