https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106878

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 53550
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53550&action=edit
gcc13-pr106878-1.patch

Ugh, this is a mess.  The verifiers do allow BIT_AND_EXPR (intentionally for
realignment) and BIT_{I,X}OR_EXPR (just because it is similar) on pointer
types,
but since r12-1608-g2f1686ff70b25f BIT_NOT_EXPR is rejected on pointers.

I'm afraid allowing just BIT_AND_EXPR and disallowing BIT_{I,X}OR_EXPR or
BIT_NOT_EXPR would be a lot of work, this patch is what I spotted during
skimming of match.pd to make BIT_{AND,IOR,XOR}_EXPR work on pointer types and
not BIT_NOT_EXPR.

Reply via email to