mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
force fixable
* complex.c (nucomp_hash): force hash values fixable. [ruby-core:85224] [Bug #14420] * rational.c (nurat_hash): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
5af43b1ec2
commit
3f7221ad3d
4 changed files with 11 additions and 5 deletions
|
@ -1253,7 +1253,7 @@ nucomp_hash(VALUE self)
|
||||||
n = rb_hash(dat->imag);
|
n = rb_hash(dat->imag);
|
||||||
h[1] = NUM2LONG(n);
|
h[1] = NUM2LONG(n);
|
||||||
v = rb_memhash(h, sizeof(h));
|
v = rb_memhash(h, sizeof(h));
|
||||||
return LONG2FIX(v);
|
return ST2FIX(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* :nodoc: */
|
/* :nodoc: */
|
||||||
|
|
|
@ -1783,7 +1783,7 @@ nurat_hash(VALUE self)
|
||||||
n = rb_hash(dat->den);
|
n = rb_hash(dat->den);
|
||||||
h[1] = NUM2LONG(n);
|
h[1] = NUM2LONG(n);
|
||||||
v = rb_memhash(h, sizeof(h));
|
v = rb_memhash(h, sizeof(h));
|
||||||
return LONG2FIX(v);
|
return ST2FIX(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
static VALUE
|
static VALUE
|
||||||
|
|
|
@ -48,8 +48,12 @@ class Complex_Test < Test::Unit::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_hash
|
def test_hash
|
||||||
assert_kind_of(Integer, Complex(1,2).hash)
|
h = Complex(1,2).hash
|
||||||
assert_kind_of(Integer, Complex(1.0,2.0).hash)
|
assert_kind_of(Integer, h)
|
||||||
|
assert_nothing_raised {h.to_s}
|
||||||
|
h = Complex(1.0,2.0).hash
|
||||||
|
assert_kind_of(Integer, h)
|
||||||
|
assert_nothing_raised {h.to_s}
|
||||||
|
|
||||||
h = {}
|
h = {}
|
||||||
h[Complex(0)] = 0
|
h[Complex(0)] = 0
|
||||||
|
|
|
@ -42,7 +42,9 @@ class Rational_Test < Test::Unit::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_hash
|
def test_hash
|
||||||
assert_kind_of(Integer, Rational(1,2).hash)
|
h = Rational(1,2).hash
|
||||||
|
assert_kind_of(Integer, h)
|
||||||
|
assert_nothing_raised {h.to_s}
|
||||||
|
|
||||||
h = {}
|
h = {}
|
||||||
h[Rational(0)] = 0
|
h[Rational(0)] = 0
|
||||||
|
|
Loading…
Reference in a new issue