https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69801
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- 26143 if (op2 == op1 || operand_equal_p (op2, op1, 0)) (gdb) p debug_generic_expr (op2) (char *) &(d != 0 ? b : c).c $3 = void (gdb) p debug_generic_expr (op1) (char *) &(d != 0 ? b : c).c case COND_EXPR: case VEC_COND_EXPR: case DOT_PROD_EXPR: return OP_SAME (0) && OP_SAME (1) && OP_SAME (2); obviously address-of should be masked for op0 of COND_EXPR. Testing a patch.