Whenever I see examples of union, they are always different types. For example, from MSDN:
// declaring_a_union.cpp union DATATYPE // Declare union type {
No, this won't cause any issues. The reason you don't see it more often is that it's pointless - both names refer to the same value of the same type.