XPConnect requires some platform-specific code to do its magic [1]. There are around ~28 different copies of this code in xpcom/reflect/xptcall, which makes it very difficult to maintain.
Historically, we've handled this by treating xptcall as fixed and working around its deficiencies. Given the need to evolve our codebase, I don't believe this is the right trade-off for us today. Here's the plan going forward: * Developers may make breaking changes to xptcall, provided they keep the Tier-1 platforms on Treeherder green. * Such changes should be marked as blocking bug 1479807 (xptcall-changes), so that maintainers of Tier-3 platforms can easily follow along. * Any xptcall implementation that didn't build and run at the time of the most recent ESR release may be removed [2]. Please get in touch if you have any questions. Cheers, bholley [1] Specifically, to dynamically invoke C++ virtual methods from JS, and to allow JS objects to impersonate arbitrary XPCOM C++ objects. [2] The source is, of course still available via version history if somebody decides to support the platform again. _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform