diff --git a/Number_types/include/CGAL/Exact_integer.h b/Number_types/include/CGAL/Exact_integer.h index 5b6e0988d7b..3c3cb4713ec 100644 --- a/Number_types/include/CGAL/Exact_integer.h +++ b/Number_types/include/CGAL/Exact_integer.h @@ -50,6 +50,10 @@ typedef unspecified_type Exact_integer; #else // not DOXYGEN_RUNNING +#if BOOST_VERSION > 107700 && defined(CGAL_USE_BOOST_MP) +// TODO: That is used for testing, it must be removed when merging into master. +typedef BOOST_cpp_arithmetic_kernel::Integer Exact_integer; +#else // BOOST_VERSION <= 107700 #ifdef CGAL_USE_GMPXX typedef mpz_class Exact_integer; #elif defined(CGAL_USE_GMP) @@ -67,6 +71,7 @@ typedef CORE::BigInt Exact_integer; #else #error "ERROR: Cannot determine a BigInt type!" #endif // CGAL_USE_CORE +#endif // BOOST_VERSION <= 107700 #endif // not DOXYGEN_RUNNING diff --git a/Number_types/include/CGAL/Number_types/internal/Exact_type_selector.h b/Number_types/include/CGAL/Number_types/internal/Exact_type_selector.h index c9a2b122a71..def7a052ed7 100644 --- a/Number_types/include/CGAL/Number_types/internal/Exact_type_selector.h +++ b/Number_types/include/CGAL/Number_types/internal/Exact_type_selector.h @@ -55,6 +55,10 @@ namespace CGAL { namespace internal { template < typename > struct Exact_field_selector +#if BOOST_VERSION > 107700 && defined(CGAL_USE_BOOST_MP) +// TODO: That is used for testing, it must be removed when merging into master. +{ typedef BOOST_cpp_arithmetic_kernel::Rational Type; }; +#else // BOOST_VERSION <= 107700 #ifdef CGAL_USE_GMPXX { typedef mpq_class Type; }; #elif defined(CGAL_USE_GMP) @@ -80,6 +84,7 @@ struct Exact_field_selector #else { typedef Quotient Type; }; #endif +#endif // BOOST_VERSION <= 107700 // By default, a field is a safe choice of ring. template < typename T >