use one anonymous union on stack