fix strict aliasing error