mirror of
https://github.com/ruby/ruby.git
synced 2025-09-15 16:44:01 +02:00
range.c: Range#min with a beginless one now raise an explicit exception
[Bug #16450]
This commit is contained in:
parent
cd6c013b07
commit
81e377023c
2 changed files with 13 additions and 0 deletions
7
range.c
7
range.c
|
@ -1136,6 +1136,10 @@ range_last(int argc, VALUE *argv, VALUE range)
|
|||
static VALUE
|
||||
range_min(int argc, VALUE *argv, VALUE range)
|
||||
{
|
||||
if (NIL_P(RANGE_BEG(range))) {
|
||||
rb_raise(rb_eRangeError, "cannot get the minimum of beginless range");
|
||||
}
|
||||
|
||||
if (rb_block_given_p()) {
|
||||
if (NIL_P(RANGE_END(range))) {
|
||||
rb_raise(rb_eRangeError, "cannot get the minimum of endless range with custom comparison method");
|
||||
|
@ -1185,6 +1189,9 @@ range_max(int argc, VALUE *argv, VALUE range)
|
|||
}
|
||||
|
||||
if (rb_block_given_p() || (EXCL(range) && !nm) || argc) {
|
||||
if (NIL_P(RANGE_BEG(range))) {
|
||||
rb_raise(rb_eRangeError, "cannot get the maximum of beginless range with custom comparison method");
|
||||
}
|
||||
return rb_call_super(argc, argv);
|
||||
}
|
||||
else {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue