-OoDEADSTORE takes on too much.
I [said](https://gitlab.com/freepascal.org/fpc/source/-/issues/25587#note_1080215448) that “`-OoDEADSTORE` breaks almost every piece of my code”, and you asked for examples. This code compiled with `-O4 -OoDEADSTORE` cuts out the `srcp := pInt32(src);` operation, with all the consequences. ```pascal var src: array[0 .. 9] of int32; srcp: pInt32; begin srcp := pInt32(src); srcp[0] := 1; end. ``` (Sometimes a platform-specific push to the falling can be added for more obvious effect, like calling ```pascal function ClobberAX: int32; noinline; begin result := 5; end; ``` first on `i386/win32`.)
issue