Hello,

I've just found out that there are namespace collisions between
FLINT's ulong_extras module and some internal MPIR functions with an
"n_" prefix defined in likely_prime_p.c. This wouldn't cause too much
problem if the functions were equivalent, but unfortunately, the MPIR
functions don't seem to handle all input correctly, and this causes
mysterious errors for some FLINT users (e.g. me) when FLINT ends up
calling the wrong functions.

In particular, the MPIR n_sqrt returns 9223372036854775808 when given
0 as input on (at least some) 64-bit systems.

I found that I could get the right versions by compiling code with
-lflint -lmpir and not the other way around, but I'm not sure if this
is reliable.

It seems that the easiest way to fix this problem would be to make the
MPIR functions static.

Fredrik

-- 
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-devel@googlegroups.com.
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en.

Reply via email to