[Bug c++/108099] ICE when parsing signed __int128_t typedef
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Dec 14 12:23:54 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108099
Jonathan Wakely <redi at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Keywords| |ice-on-invalid-code
Last reconfirmed| |2022-12-14
Status|UNCONFIRMED |NEW
--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #1)
> __int128_t is already a typedef, so you can't add a signed or unsigned
> qualifier to it.
i.e. the same reason this doesn't work:
using I = int;
signed I i = 0;
> std::make_signed_t<__int128_t> works because that doesn't just add the
> 'signed' keyword to it.
i.e. the same reason this works:
using I = int;
std::make_signed_t<I> i = 0;
It shouldn't ICE though.
More information about the Gcc-bugs
mailing list