J.C. Pizarro wrote:
A) When they are using "nested" templates.
B) When there are "cyclic" dependences of compilation beetwen 2 or more files.
C) When there are "overloading" of methods and functions, virtual and
non-virtual.
D) When there are macros in C++.
E) When there are __atributes__ in C++.
Without turning this into (too much of) a language war. No, because I
write maintainable easy to read C programs (which through structs get
the benefits of anonymous implementations of interfaces).
I understand it, but GCC compiler doesn't understand the "refactoring" meaning.
GCC only understands the difference between splittled and non-splitted files,
and how to affect him in terms of compile-time and optimization-gainining.
And I'm saying that profiling and careful limited use of macros and
static inlined functions will get you the same performance without all
the mess.
I say this as the author of competitive cryptographic and mathematical
libraries (the latter of which holds the rank as worlds fastest public
domain crypto math library).
Tom