diff options
Diffstat (limited to 'src/util/rational_gmp_imp.h')
-rw-r--r-- | src/util/rational_gmp_imp.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/util/rational_gmp_imp.h b/src/util/rational_gmp_imp.h index 0c8a46f33..b86dc32f2 100644 --- a/src/util/rational_gmp_imp.h +++ b/src/util/rational_gmp_imp.h @@ -111,6 +111,15 @@ public: d_value.canonicalize(); } +#ifdef CVC4_NEED_INT64_T_OVERLOADS + Rational(int64_t n) : d_value(static_cast<long>(n), 1) { + d_value.canonicalize(); + } + Rational(uint64_t n) : d_value(static_cast<unsigned long>(n), 1) { + d_value.canonicalize(); + } +#endif /* CVC4_NEED_INT64_T_OVERLOADS */ + /** * Constructs a canonical Rational from a numerator and denominator. */ @@ -127,6 +136,15 @@ public: d_value.canonicalize(); } +#ifdef CVC4_NEED_INT64_T_OVERLOADS + Rational(int64_t n, int64_t d) : d_value(static_cast<long>(n), static_cast<long>(d)) { + d_value.canonicalize(); + } + Rational(uint64_t n, uint64_t d) : d_value(static_cast<unsigned long>(n), static_cast<unsigned long>(d)) { + d_value.canonicalize(); + } +#endif /* CVC4_NEED_INT64_T_OVERLOADS */ + Rational(const Integer& n, const Integer& d) : d_value(n.get_mpz(), d.get_mpz()) { |