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.

Reply via email to