I think so. You should probably file that bug.
Cheers, Ehsan On Sep 3, 2011 11:08 AM, "[email protected]" <[email protected]> wrote: > Apologies if this gets double-posted > > Examining the contents of xpcomglue.lib (using dumpbin /symbols ) I get > the following > > lInker: public: virtual unsigned int __thiscall > nsCreateInstanceByContractID::operator()(struct nsID const &,void * *)const > lib: public: virtual unsigned int __fastcall > nsCreateInstanceByContractID::operator()(struct nsID const &,void * *)const > > The calling conventions are different for the 'missing' functions, they > are all marked as __fastcall when the library is built but somehow have > a different calling convention applied... > > once name mangling process is applied we get: > > ??RnsCreateInstanceByContractID@@UBEIABUnsID@@PAPAX@Z > ??RnsCreateInstanceByContractID@@UBIIABUnsID@@PAPAX@Z > > The cause is simple. In xpcom\base\nscore.h we have: > > #elif defined(XP_WIN) && !defined(_WIN64) > #define NS_FASTCALL __fastcall > #define NS_CONSTRUCTOR_FASTCALL > ... > > Why is this defined only when XP_WIN is defined? A bug? > > Thx > > J. > > > _______________________________________________ > dev-embedding mailing list > [email protected] > https://lists.mozilla.org/listinfo/dev-embedding _______________________________________________ dev-embedding mailing list [email protected] https://lists.mozilla.org/listinfo/dev-embedding
