https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127383
--- Comment #6 from Joseph S. Myers <jsm28 at gcc dot gnu.org> --- I would say that the /* Strip no-op conversions. */ orig_exp = exp; STRIP_TYPE_NOPS (exp); in default_conversion is incorrect when it affects the property of being a _BitInt bit-field (as used in perform_integral_promotions). That is, we need to define the rules for how (before integer promotions) the property of being a _BitInt bit-field is to be determined, ensure that casts remove that property, and ensure that implicit manipulations done before perform_integral_promotions do not affect that property.
