* rational.c: fix dangling if, else-if and else.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39732 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
10c5d6ee25
commit
5e04bb6697
@ -1,3 +1,7 @@
|
|||||||
|
Tue Mar 12 16:48:19 2013 TAKANO Mitsuhiro <tak@no32.tk>
|
||||||
|
|
||||||
|
* rational.c: fix dangling if, else-if and else.
|
||||||
|
|
||||||
Tue Mar 12 06:27:59 2013 Eric Hodel <drbrain@segment7.net>
|
Tue Mar 12 06:27:59 2013 Eric Hodel <drbrain@segment7.net>
|
||||||
|
|
||||||
* lib/rubygems/commands/setup_command.rb: Don't delete non-rubygems
|
* lib/rubygems/commands/setup_command.rb: Don't delete non-rubygems
|
||||||
|
18
rational.c
18
rational.c
@ -991,16 +991,22 @@ nurat_expt(VALUE self, VALUE other)
|
|||||||
/* Deal with special cases of 0**n and 1**n */
|
/* Deal with special cases of 0**n and 1**n */
|
||||||
if (k_numeric_p(other) && k_exact_p(other)) {
|
if (k_numeric_p(other) && k_exact_p(other)) {
|
||||||
get_dat1(self);
|
get_dat1(self);
|
||||||
if (f_one_p(dat->den))
|
if (f_one_p(dat->den)) {
|
||||||
if (f_one_p(dat->num))
|
if (f_one_p(dat->num)) {
|
||||||
return f_rational_new_bang1(CLASS_OF(self), ONE);
|
return f_rational_new_bang1(CLASS_OF(self), ONE);
|
||||||
else if (f_minus_one_p(dat->num) && k_integer_p(other))
|
}
|
||||||
|
else if (f_minus_one_p(dat->num) && k_integer_p(other)) {
|
||||||
return f_rational_new_bang1(CLASS_OF(self), INT2FIX(f_odd_p(other) ? -1 : 1));
|
return f_rational_new_bang1(CLASS_OF(self), INT2FIX(f_odd_p(other) ? -1 : 1));
|
||||||
else if (f_zero_p(dat->num))
|
}
|
||||||
if (FIX2INT(f_cmp(other, ZERO)) == -1)
|
else if (f_zero_p(dat->num)) {
|
||||||
|
if (FIX2INT(f_cmp(other, ZERO)) == -1) {
|
||||||
rb_raise_zerodiv();
|
rb_raise_zerodiv();
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
return f_rational_new_bang1(CLASS_OF(self), ZERO);
|
return f_rational_new_bang1(CLASS_OF(self), ZERO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* General case */
|
/* General case */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user