Well, you can also write:
int x = 123;
delete &x;
and that would compile. But it's not a very good idea and you should be able to, well, not do that.In modern C++, we avoid allocating and deallocating ourselves, as much as possible. But of course, if you jump to arbitrary code, or overwrite something that's due as input for deallocation with the wrong address, or similar shenanigans, then - it could happen.