From 9f843aecc23981aec6ed1eaa8be06e6786a47f0d Mon Sep 17 00:00:00 2001 From: Roberto Bagnara Date: Wed, 19 Dec 2012 08:42:19 +0100 Subject: [PATCH] GMP version 5.1.0 (and, presumably, later versions) defines std::numeric_limits. --- src/mp_std_bits.cc | 6 ++++++ src/mp_std_bits_defs.hh | 6 ++++++ 2 files changed, 12 insertions(+), 0 deletions(-) --- src/mp_std_bits.cc +++ src/mp_std_bits.cc @@ -25,6 +25,9 @@ site: http://bugseng.com/products/ppl/ . */ #include "ppl-config.h" #include "mp_std_bits_defs.hh" +#if __GNU_MP_VERSION < 5 \ + || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) + const bool std::numeric_limits::is_specialized; const int std::numeric_limits::digits; const int std::numeric_limits::digits10; @@ -70,3 +73,6 @@ const bool std::numeric_limits::is_modulo; const bool std::numeric_limits::traps; const bool std::numeric_limits::tininess_before; const std::float_round_style std::numeric_limits::round_style; + +#endif // __GNU_MP_VERSION < 5 + // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) --- src/mp_std_bits.defs.hh.orig 2013-02-16 17:19:52.254341676 +0100 +++ src/mp_std_bits.defs.hh 2013-02-16 17:20:49.171965855 +0100 @@ -38,6 +38,9 @@ void swap(mpz_class& x, mpz_class& y); #endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS) void swap(mpq_class& x, mpq_class& y); +#if __GNU_MP_VERSION < 5 \ + || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) + namespace std { #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS @@ -164,6 +167,9 @@ public: } // namespace std +#endif // __GNU_MP_VERSION < 5 + // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1 + #include "mp_std_bits.inlines.hh" #endif // !defined(PPL_mp_std_bits_defs_hh)