Originally posted by CornedBee
Such code is created by VC++6, and it can't be different for Borland cpp builder or else the code wouldn't work.
Also, the compiler doesn't know if it is compiling a COM object, so they just can't get a special treating.
Somehow I get the feeling that we're talking two different things here.

I'm pointing out that just because MSVC has the vtable first doesn't mean you have to. I suppose it just means that any compiler that professes to create COM DLLs does it that way for everything.