>例えばDWORDを使うWindowsのAPIとか、外部のインターフェースを
>直接扱えなくなるんじゃない?

当然使えないだろう。
カリカリにWindowsAPI回りをチューンしたい、
というなら違う事考えないとまずいだろうな。
でも日常的な利用なら、使う所で
(obj*)temp>>2
すれば特に問題無いと思う。
少なくとも
temp->val.ival
とかやるよかずっと早い気が。
結局ループの時のカウンタ等にポインタ辿るのが
嫌だ、という事では?