Hi layout folks,
Arnaud Sourioux has generated a ~500k patch that removes the NS_IMETHOD
cruft from all nsIFrame.h-defined methods, in this bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=919806
The patch expands NS_IMETHOD & friends to the equivalent C++ code
('virtual nsresult'), without the calling-convention parts.
This touches every frame class, so it will likely cause bitrot in some
folks' in-progress layout patches. However, I'm hoping it'll be easy to
rebase any such patches -- with any luck, most/all patches will still
apply with fuzz. And if fuzz doesn't help for some reason, you should
be able to hand-edit any problematic chunks of your patches to do
s/NS_IMETHOD/virtual nsresult/ & similar.
roc implicitly signed off on the idea in
https://bugzilla.mozilla.org/show_bug.cgi?id=919806#c3
and I'm partway through patch-review. I also checked with dbaron to be
sure this doesn't break his XUL function-renaming [discussed in an
earlier thread here], and he said to proceed.
So: I'm mostly just posting as a "heads up", but if anyone has any
thoughts/concerns, feel free to state them.
Thanks!
~Daniel