Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-09 Thread Vincent Lefevre
On 2020-06-09 10:21:31 +0200, Marc Glisse wrote: > On Tue, 9 Jun 2020, Niels Möller wrote: > > > Marc Glisse writes: > > > > > On Sat, 6 Jun 2020, Mihai Preda wrote: > > > > > > > I would rather suggest to support intmax_t and uintmax_t. > > > > > > That's one possibility for C (and C++,

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-09 Thread Marc Glisse
On Tue, 9 Jun 2020, Niels Möller wrote: Marc Glisse writes: On Sat, 6 Jun 2020, Mihai Preda wrote: I would rather suggest to support intmax_t and uintmax_t. That's one possibility for C (and C++, although it is a bit more painful there), but not one that everyone agrees with. I think the

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-09 Thread Hans Åberg
> On 6 Jun 2020, at 06:28, Mihai Preda wrote: > > At this point the C++ compiler on windows (where long is 32-bit) > reports errors, see at the end. The problem is that the set of > constructors does not include one taking a 64-bit integer: > > #define __GMPXX_DEFINE_ARITHMETIC_CONSTRUCTORS

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-08 Thread Niels Möller
Marc Glisse writes: > On Sat, 6 Jun 2020, Mihai Preda wrote: > >> I would rather suggest to support intmax_t and uintmax_t. > > That's one possibility for C (and C++, although it is a bit more > painful there), but not one that everyone agrees with. I think the > majority in standard committees

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-08 Thread Marc Glisse
On Mon, 8 Jun 2020, Vincent Lefevre wrote: Couldn't the C interface *optionally* support more than C89? I think the policy has been to have one uniform interface, and requiring C99 for GMP is likely to happen. I am generally in favor of optional support for __int128, which wouldn't be

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-08 Thread Vincent Lefevre
On 2020-06-08 22:32:25 +0200, Marc Glisse wrote: > On Sat, 6 Jun 2020, Mihai Preda wrote: > > > At this point the C++ compiler on windows (where long is 32-bit) > > reports errors, see at the end. The problem is that the set of > > constructors does not include one taking a 64-bit integer: > >

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-08 Thread Marc Glisse
On Sat, 6 Jun 2020, Mihai Preda wrote: At this point the C++ compiler on windows (where long is 32-bit) reports errors, see at the end. The problem is that the set of constructors does not include one taking a 64-bit integer: The issue is that: 1) the C++ interface follows the C interface 2)

Re: Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-06 Thread Vincent Lefevre
On 2020-06-06 14:28:21 +1000, Mihai Preda wrote: > I'm using libgmp-dev 6.1.2 on Ubuntu myself, but the bug report > concerns an unspecified version of GMP on Windows. I have reasons to > suspect the bug is valid for the most recent GMP. Clear cause analysis > and proposed solution is included. >

Constructor taking 64-bit integer missing on (some) Windows C++ compilers

2020-06-06 Thread Mihai Preda
I'm using libgmp-dev 6.1.2 on Ubuntu myself, but the bug report concerns an unspecified version of GMP on Windows. I have reasons to suspect the bug is valid for the most recent GMP. Clear cause analysis and proposed solution is included. I'm not a Windows user myself. I develop an open-source