unionで一致しない可能性を挙げるなら
struct vec3{float x,y,z;};
sizeof(float[3])==sizeof(vec3)
にならない可能性がある合理的な理由、もしくは現時点で実在する処理系をあげてもらわないと。
>>454 で俺はそんな処理系存在しないだろうから考慮する必要ないと述べた、いや、ある!というならその理由を述べてくれってだけの話だよ。

規格で許されてるんだからアラインメントも関係なく間にパディング入れるコンパイラが今後出現するかもしれない、と理由もなくフワッとした感じで主張するなら、
そんな扱いづらいコンパイラを使う日が来ないことを祈るよとしか言えないけど