is it undefined baehvior to alias members using a union C++ Is it undefined behavior to alias members like this