I did some analysis on WinNT and discovered no increase in size when
using the macro NS_GET_IID (which uses templates) over statically
defining the IID using the macro NS_DEFINE_IID. And as you might expect,
getting rid of statically defined IIDs does save some space.
The size analysis was done with a non-debug build.
I have a small app that has scrubbed all the source in layout and
removed all NS_DEFINE_IID macros where they could be replaced by
directly inserting NS_GET_IID(<class name>).
This is good for these reasons:
1) More code now uses a more standard calling convention
2) Unneeded NS_DEFINE_IID have been removed
3) Some size reduction
I have filed a bug:
http://bugzilla.mozilla.org/show_bug.cgi?id=61274
The diffs can be viewed with NS 6 at:
http://www.cableone.net/rnspears/getiid/index.html
Rod
S/MIME Cryptographic Signature