mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* complex.c (nucomp_div): omitted zero division check.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
855d0d1a1a
commit
d43de333de
2 changed files with 8 additions and 2 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
Wed Jul 8 23:13:54 2009 Tadayoshi Funaba <tadf@dotrb.org>
|
||||||
|
|
||||||
|
* complex.c (nucomp_div): omitted zero division check.
|
||||||
|
|
||||||
Wed Jul 8 21:00:37 2009 Keiju Ishitsuka <keiju@emperor2.pendome>
|
Wed Jul 8 21:00:37 2009 Keiju Ishitsuka <keiju@emperor2.pendome>
|
||||||
|
|
||||||
* lib/irb/inspector.rb: forget svn add.
|
* lib/irb/inspector.rb: forget svn add.
|
||||||
|
|
|
@ -758,8 +758,10 @@ f_divide(VALUE self, VALUE other,
|
||||||
static VALUE
|
static VALUE
|
||||||
nucomp_div(VALUE self, VALUE other)
|
nucomp_div(VALUE self, VALUE other)
|
||||||
{
|
{
|
||||||
if (f_zero_p(other))
|
#if 0 /* too much cost */
|
||||||
|
if (f_zero_p(other) && k_exact_p(self) && k_exact_p(other))
|
||||||
rb_raise_zerodiv();
|
rb_raise_zerodiv();
|
||||||
|
#endif
|
||||||
return f_divide(self, other, f_quo, id_quo);
|
return f_divide(self, other, f_quo, id_quo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -824,7 +826,7 @@ rb_fexpt(VALUE x, VALUE y)
|
||||||
static VALUE
|
static VALUE
|
||||||
nucomp_expt(VALUE self, VALUE other)
|
nucomp_expt(VALUE self, VALUE other)
|
||||||
{
|
{
|
||||||
if (k_exact_p(other) && f_zero_p(other))
|
if (f_zero_p(other) && k_exact_p(other))
|
||||||
return f_complex_new_bang1(CLASS_OF(self), ONE);
|
return f_complex_new_bang1(CLASS_OF(self), ONE);
|
||||||
|
|
||||||
if (k_rational_p(other) && f_one_p(f_denominator(other)))
|
if (k_rational_p(other) && f_one_p(f_denominator(other)))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue