Officially, the standard says that's "undefined behaviour", and all kinds of nasty things can happen.
In practice, it will work fine, but you still shouldn't do it. What does it buy you, other than confusing people that something is provided by the compiler?