On Mon, Mar 19, 2007 at 04:36:08PM +0100, Jean-Marc Lasgouttes wrote: > >>>>> "Andre" == Andre Poenitz <[EMAIL PROTECTED]> writes: > > >> Moreover, I cannot anymore compile with debugging symbols because I > >> get out of memory errors, and have to selectively compile single > >> files with -g. I think that with such large files I will not be > >> able to compile LyX. > > Andre> 2300 lines and "large files"? Just run the gcc -E ... | wc for > Andre> real numbers. > > The size of the .h file does not tell the whole story either. I > suspect that pure C stuff does not cost much, but it is the template > stuff that costs a lot.
The linker chokes on combined size of symbol names, btw (this relates to your point as templated symbols tend to have long mangled names). So _not_ using external symbols seems to be worth a try, too. Of course that'd mean 'static func()' instead of 'namespace { func() }' and that seems to be close blasphemy in this world as well... Usually I find template rather worth the trouble. Of course there are exceptions. Using a shared instead of a bald pointer as return value of InsetBase::clone() is pretty superfluous IMNSHO. Andre'