https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113887

--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Jens Gustedt from comment #7)
> (In reply to Joseph S. Myers from comment #5)
> > ... including __INT128_C and __UINT128_C
> > defined to use an appropriate constant suffix.
> 
> You don't need a specific suffix for these types if you have `_BitInt(128)`,
> there is no need to invest thoughts or development time in this.
> Something like
> 
> #define INT128_C(N) ((__int128)+ N ## W)

You mean WB?

> With that observation you easily also create `MIN` and `MAX` macros
> 
> #define INT128_MAX (INT128_C(1) << 126)

That is certainly not the right INT128_MAX.  The right value is
INT128_C (170141183460469231731687303715884105727)
while INT128_C(1) << 126 is just
INT128_C (85070591730234615865843651857942052864).

Reply via email to