From aabe66337672d378a748cb1ab2f577343727de92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89milie=20Feral?= Date: Tue, 10 Dec 2019 15:09:33 +0100 Subject: [PATCH] [poincare] Number: "12242" is parsed as a BasedInteger instead of a Rational --- poincare/include/poincare/based_integer.h | 3 +-- poincare/src/number.cpp | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/poincare/include/poincare/based_integer.h b/poincare/include/poincare/based_integer.h index 11b953cab..bfee17f28 100644 --- a/poincare/include/poincare/based_integer.h +++ b/poincare/include/poincare/based_integer.h @@ -52,6 +52,7 @@ public: /* The constructor build a irreductible fraction */ BasedInteger(const BasedIntegerNode * node) : Number(node) {} static BasedInteger Builder(const char * digits, size_t size, Integer::Base base); + static BasedInteger Builder(const Integer & m, Integer::Base base); // TreeNode BasedIntegerNode * node() const { return static_cast(Number::node()); } @@ -60,8 +61,6 @@ public: Integer integer() const { return node()->integer(); } private: - static BasedInteger Builder(const Integer & m, Integer::Base base); - BasedIntegerNode * node() { return static_cast(Number::node()); } /* Simplification */ diff --git a/poincare/src/number.cpp b/poincare/src/number.cpp index 2744b0e87..0136cb545 100644 --- a/poincare/src/number.cpp +++ b/poincare/src/number.cpp @@ -45,7 +45,7 @@ Number Number::ParseNumber(const char * integralPart, size_t integralLength, con if (exponentLength == 0 && decimalLenght == 0) { Integer i(integralPart, integralLength, false); if (!i.isOverflow()) { - return Rational::Builder(i); + return BasedInteger::Builder(i, Integer::Base::Decimal); } } int exp;