https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102760
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |minor Keywords| |ice-checking Ever confirmed|0 |1 Last reconfirmed| |2021-10-15 Status|UNCONFIRMED |NEW --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- There is a types which are not the same issue. (gdb) p debug_tree(*expr_p) <init_expr 0x7ffff737de88 type <integer_type 0x7ffff725f5e8 int public SI size <integer_cst 0x7ffff7244f78 constant 32> unit-size <integer_cst 0x7ffff7244f90 constant 4> align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff725f5e8 precision:32 min <integer_cst 0x7ffff7244f30 -2147483648> max <integer_cst 0x7ffff7244f48 2147483647> pointer_to_this <pointer_type 0x7ffff7267a80>> side-effects arg:0 <ssa_name 0x7ffff724fe10 type <integer_type 0x7ffff725f5e8 int> def_stmt _2 = _1 & -128; version:2> arg:1 <bit_and_expr 0x7ffff737de60 type <integer_type 0x7ffff725f5e8 int> arg:0 <ssa_name 0x7ffff724fdc8 type <integer_type 0x7ffff725f3f0 char> def_stmt _1 = *type; version:1> arg:1 <integer_cst 0x7ffff7263420 constant -128>> t.c:3:18 start: t.c:3:18 finish: t.c:3:31> This shows up in GCC 11 (with checking enabled).