[cfe-dev] COM ABI support?

Óscar Fuentes ofv at wanadoo.es
Thu Jul 11 06:46:27 PDT 2013


Nikola Smiljanic <popizdeh at gmail.com>
writes:

> On Thu, Jul 11, 2013 at 9:43 PM, Kim Gräsman <kim.grasman at gmail.com> wrote:
>> But the vtable ABI isn't standardized either, is it? Do all compilers
>> just happen to implement it the same way?
>
> All compilers try to follow the itanium ABI, except msvc :)

I realize that you are saying this tongue-in-cheek, but anyways...

MSVC++, Borland C++, Watcom C++... all they existed much before the
Itanium existed. When the Itanium C++ ABI came into existence, they
(specially MSVC++) had no incentives for switching to it. In the closed
source world changing the C++ ABI is a big issue. And using an ABI hard
to duplicate (i.e. undocumented) has its advantages from the competitive
POV.

As for COM, AFAIK it is fairly simple to comply with (when compared with
the full MSVC++ ABI.) IIRC it is fully documented too. A quick web
search should provide plenty of material.




More information about the cfe-dev mailing list