On Tue, Nov 19, 2024 at 10:25:16AM +0100, Richard Biener wrote: > I think it's pretty clear and easy to describe to users what "m " and > what "mC" do. But with "pure" this is an odd intermediate state. For both > "m " and "mP" you suggest above the new/delete might modify their > global state but as you can't rely on the new/delete pair to prevail > you cannot rely on the modification to happen. But how do you explain > that
If we are willing to make the default not strictly conforming (i.e. basically revert PR101480 by default and make the GCC 11.1/11.2 behavior the default and allow -fno-sane-operators-new-delete to change to GCC 11.3/14.* behavior), I can live with it. But we need to make the documentation clear that the default is not strictly conforming. Jakub