From d43de333deae8734fcb115b018039f2ffbe58431 Mon Sep 17 00:00:00 2001 From: tadf Date: Wed, 8 Jul 2009 14:18:02 +0000 Subject: * 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 --- complex.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'complex.c') diff --git a/complex.c b/complex.c index 3ccc50974c..9d9e90c02e 100644 --- a/complex.c +++ b/complex.c @@ -758,8 +758,10 @@ f_divide(VALUE self, VALUE other, static VALUE 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(); +#endif return f_divide(self, other, f_quo, id_quo); } @@ -824,7 +826,7 @@ rb_fexpt(VALUE x, VALUE y) static VALUE 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); if (k_rational_p(other) && f_one_p(f_denominator(other))) -- cgit v1.2.3