as you said, reading it is just undefined. the compiler has to do something, and it's improbable that a read before write, followed by another read will result in two different values.
if you could produce a piece of code that exhibits the behaviour you describe, i'd very much like to see it.