>>90
60 ではないですが ANSI C++ の規格書を調べてみました。

> 1.8 The C++ object model
> 5 Unless it is a bitfield (9.6), a most derived object shall have a nonzero size and shall occupy
> one or more bytes of storage. Base class subobjects may have zero size. (以下略)

ということで規格の上では sizeof(A) > 0 が要請されてますね。なぜ sizeof(A) == 0 ではまずい
のか、それと sizeof(void *) != 0 であることとの関係は謎ですが、そのあたりの解説は 60 氏が
帰ってきたらお願いしましょう。