> i think by using a union you are explictly specifying your punning, so > gcc can know what you are up to and take account accordingly. A union whose members are pointers is not any different than casting the pointer type, I don't think. A union helps when it's the type of the memory being pointed to.