In C90 6.3.2.3p5(with my emphasis)
With one exception, if a member of a union object is accessed after a value has been stored in a different mem