https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91761
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|FIXED |INVALID
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
> 1) It doesn't remove these assignments, instead it assigns to 0.
Same thing in reality ...
> 2) No any warning pointing to the unusable assignment.
There is no way for GCC to do that really.
-fsanitize=address -fsanitize=undefined might be able to detect this at
runtime; I have not checked.
> 3) No backward compatibility: worked code now stopped to run.
The code worked on accident. The code was undefined before and after the
change. It just happened to work.