summaryrefslogtreecommitdiffhomepage
path: root/mrblib/compar.rb
diff options
context:
space:
mode:
authorksss <[email protected]>2014-03-21 11:58:47 +0900
committerksss <[email protected]>2014-03-21 11:58:47 +0900
commit72fe19225900d795a501755f4b492486e1bcb726 (patch)
tree1ef7d4abb8b08a9687de5c2dfc90226720382114 /mrblib/compar.rb
parent2c44f96e78832dd42e35a9cae6e90dccaf5c2178 (diff)
downloadmruby-72fe19225900d795a501755f4b492486e1bcb726.tar.gz
mruby-72fe19225900d795a501755f4b492486e1bcb726.zip
Fix behavior of Comparable methods
when <=> return nil
Diffstat (limited to 'mrblib/compar.rb')
-rw-r--r--mrblib/compar.rb8
1 files changed, 4 insertions, 4 deletions
diff --git a/mrblib/compar.rb b/mrblib/compar.rb
index 40fb2e7f0..44595974a 100644
--- a/mrblib/compar.rb
+++ b/mrblib/compar.rb
@@ -13,7 +13,7 @@ module Comparable
def < other
cmp = self <=> other
if cmp.nil?
- false
+ raise ArgumentError, "comparison of #{self.class} with #{other.class} failed"
elsif cmp < 0
true
else
@@ -30,7 +30,7 @@ module Comparable
def <= other
cmp = self <=> other
if cmp.nil?
- false
+ raise ArgumentError, "comparison of #{self.class} with #{other.class} failed"
elsif cmp <= 0
true
else
@@ -62,7 +62,7 @@ module Comparable
def > other
cmp = self <=> other
if cmp.nil?
- false
+ raise ArgumentError, "comparison of #{self.class} with #{other.class} failed"
elsif cmp > 0
true
else
@@ -79,7 +79,7 @@ module Comparable
def >= other
cmp = self <=> other
if cmp.nil?
- false
+ raise ArgumentError, "comparison of #{self.class} with #{other.class} failed"
elsif cmp >= 0
true
else