https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121693
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|forgets to clear the |forgets to clear the |padding bits when |padding bits when |converting a _BitInt(1) on |converting a _BitInt(1) on |x86_64 |x86_64 at -O1+ (SRA) Status|UNCONFIRMED |NEW Last reconfirmed| |2025-08-27 Ever confirmed|0 |1 --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Yep SRA changes: ``` v.c = c.1_2; _3 = v.i; _4 = (int) _3; ``` into: ``` c.1_2 = (unsigned char) c.0_1; v$c_11 = c.1_2; _3 = VIEW_CONVERT_EXPR<unsigned _BitInt(1)>(v$c_11); ``` Which is wrong for BitInt. It should have used a cast instead of a VCE.