diff --git a/poincare/src/number.cpp b/poincare/src/number.cpp index 7639e41f1..676f99f44 100644 --- a/poincare/src/number.cpp +++ b/poincare/src/number.cpp @@ -77,13 +77,13 @@ Number Number::FloatNumber(double d) { Number Number::BinaryOperation(const Number & i, const Number & j, IntegerBinaryOperation integerOp, RationalBinaryOperation rationalOp, DoubleBinaryOperation doubleOp) { if (i.node()->type() == ExpressionNode::Type::Integer && j.node()->type() == ExpressionNode::Type::Integer) { // Integer + Integer - Integer k = integerOp(Integer(static_cast(i.node())), Integer(static_cast(j.node()))); + Integer k = integerOp(static_cast(i), static_cast(j)); if (!k.isInfinity()) { return k; } } else if (i.node()->type() == ExpressionNode::Type::Integer && j.node()->type() == ExpressionNode::Type::Rational) { // Integer + Rational - Rational r = rationalOp(Rational(Integer(static_cast(i.node()))), Rational(static_cast(j.node()))); + Rational r = rationalOp(Rational(static_cast(i)), static_cast(j)); if (!r.numeratorOrDenominatorIsInfinity()) { return r; } @@ -92,7 +92,7 @@ Number Number::BinaryOperation(const Number & i, const Number & j, IntegerBinary return Number::BinaryOperation(j, i, integerOp, rationalOp, doubleOp); } else if (i.node()->type() == ExpressionNode::Type::Rational && j.node()->type() == ExpressionNode::Type::Rational) { // Rational + Rational - Rational a = rationalOp(Rational(static_cast(i.node())), Rational(static_cast(j.node()))); + Rational a = rationalOp(Rational(static_cast(i)), Rational(static_cast(j))); if (!a.numeratorOrDenominatorIsInfinity()) { return a; }