- inlining is not a universally "bad idea", it certainly won't decrease performance. It might significantly increase object size.
Incorrect. Increasing code size decreases cache hit rate, decreasing performance.
- Finally: inlining can be dangerous during multiple compile cycles if the function changes if dependent modules are not recompiled, since the old version of the function could have been inlined into another module, and you end up with module A having inlined version1 and module B inlined version2.
This is just silly. If this occurs, there is a bug in your build system.
No serious programmer worries about this.
- Declaring a function 'static' in a C program when that function is not declared in the header means that the symbol is not exported, and allows the compiler to inline as it see fit. 'inline' is utterly unnecessary to make the function be inlined.
[/list]