https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113692
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- My bet you could get the same error with: _BitInt(129) i; void * foo(void) { void *ret = 0; ret = (void *)(__SIZETYPE__)(i & 1); return ret; }