Changes for version 0.37

  • Add Math::GMPf::__GNU_MP_RELEASE.
  • The gmp library incorrectly returns false for mpfr_fits_uint_p(x) for -1.0 < x < 0.0. (This should be fixed in versions of gmp later than 5.1.1.) Have Rmpf_fits_uint_p() return a correct result irrespective of the version of gmp being used - and have the Math:GMPf test suite test for this.
  • Alter V.xs to accommodate the possibility that the global constant gmp_version has not been set in gmp.h. I've assumed this can only happen if the gmp library version is earlier than 4.0.0. (The gmp ChangeLog indicates that this is so.)
  • Alter wrap_gmp_sprintf and wrap_gmp_snprintf to take an extra arg (length of buffer to which we write). This now means that Rmpf_sprintf and Rmpf_snprintf require an extra argument.
  • Remove Rmpf_sprintf_ret and Rmpf_snprintf_ret. (These now seem pointless in view of the changes to wrap_gmp_sprintf and wrap_gmp_snprintf.)
  • No longer include inttypes.h on the basis of USE_LONG_DOUBLE being defined. (Was harmless ... but didn't make much sense.)
  • Define PERL_NO_GET_CONTEXT (in XS code).

Modules

perl interface to the GMP library's floating point (mpf) functions.

Provides

in Random/Random.pm
in V/V.pm