Fix negative denominator in `boost::rational` during exponentiation.

This commit is contained in:
Daniel Kirchner
2018-11-06 10:52:10 +01:00
parent 88aee34c22
commit e036133d1b
3 changed files with 16 additions and 2 deletions
+2 -2
View File
@@ -1144,10 +1144,10 @@ TypePointer RationalNumberType::binaryOperatorResult(Token _operator, TypePointe
bigint denominator = optimizedPow(m_value.denominator(), absExp);
if (exp >= 0)
value = rational(numerator, denominator);
value = makeRational(numerator, denominator);
else
// invert
value = rational(denominator, numerator);
value = makeRational(denominator, numerator);
}
break;
}