Following up my earlier response, size_t on Windows x64 is a 32-bit integer so the test program you used won't use a 64-bit integer. To obtain 64-bit integers you can use intmax_t and uintmax_t
I found it easy to add a 64-bit constructor to mpirxx.h (NOT gmpxx.h) and this program then gives the output '9223372036854775808' #include <cstdint> #include <iostream> #include "mpirxx.h" using namespace std; int main(void) { uintmax_t a = 1ull << 63; mpz_class b(a); cout << b.get_ux() << endl; return 0; } I have not yet added this to mpirxx.h in the SVN but I can do so if you want to try it. It seems like a useful addition - what do others think? Brian -- You received this message because you are subscribed to the Google Groups "mpir-devel" group. To view this discussion on the web visit https://groups.google.com/d/msg/mpir-devel/-/4skusI78kHAJ. 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.