On 1/10/24 04:22, Ken Matsui wrote:
+/* Return true if T is an integral type.  With __STRICT_ANSI__, __int128 and
+   unsigned __int128 are not integral types.  */

This really needs a rationale, since they are actually integer types. I know __int128 is considered an extension rather than an extended integer type under the standard, but is there a writeup we can point to for why?

And even if we don't want to subject it to all the standard requirements of an extended integer type, why not still say it's an integral type? flag_iso is only supposed to disable features that could conflict with obscure but standard-conforming code, and since __int128 is in the reserved namespace, I'd think it should be safe to support (to the degree that we do) regardless of flag_iso.

Jason

Reply via email to