https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60770
--- Comment #5 from Marc Glisse <glisse at gcc dot gnu.org> --- Looking at comment #1 more closely, the problem is not with CCP, which produces: q = n_2(D); q ={v} {CLOBBER}; _6 = q; return _6; The problem is during the TODO, in execute_update_addresses_taken, which finds out that q does not need its address taken anymore, and /* For var ={v} {CLOBBER}; where var lost TREE_ADDRESSABLE just remove the stmt. */ Maybe it could instead create an uninitialized ssa_name for var.