nails cxx error

Torbjorn Granlund tg at
Sat Nov 8 19:38:08 CET 2008

jason at writes:

  Target: x86_64-pc-linux
  with: ../gcc-4.2.3/configure --prefix=/usr --enable-shared --enable-languages=ada,c,c++,fortran,java,objc --enable-threads=posix --enable-__cxa_atexit --disable-checking --disable-multilib --with-gnu-ld --verbose --build=x86_64-pc-linux --target=x86_64-pc-linux --host=x86_64-pc-linux
  Thread model: posix
  gcc version 4.2.3
  ./configure --enable-assert --enable-cxx && make && make check 
   this passes OK
  ./configure --enable-assert --enable-cxx --enable-nails=2 
  make && make check  
  fails with 
  PASS: t-assign
  PASS: t-binary
  PASS: t-cast
  PASS: t-constr
  PASS: t-headers
  PASS: t-istream
  PASS: t-locale
  PASS: t-misc
  PASS: t-ops
  PASS: t-ostream GNU MP assertion failed: __gmpf_eq(_a, _c, very_large_prec)
  /bin/sh: line 4: 22327 Aborted                 ${dir}$tst
  FAIL: t-prec
  PASS: t-rand
  PASS: t-ternary
  PASS: t-unary
  1 of 14 tests failed
  Please report to gmp-bugs at
  make[4]: *** [check-TESTS] Error 1
  I dont actually use nails , or C++ , so I'm afraid all I can do is report the 
Thanks for this report!

The error is that the tests/cxx/ test and mpf_eq do not
agree.  Since mpf_eq works like documented, one could argue that the
test is broken.

The present mpf_eq implementation compares more bits than asked for in
many cases; it compares just whole number of limbs.  But that naughty
behaviour is clearly documented.

I chose to change mpf_eq and its documentation, rather than the test

A patch is at <>.


More information about the gmp-bugs mailing list