
AMDG Stewart, Robert wrote:
Steven Watanabe wrote:
Stewart, Robert wrote:
Sure, but that's not portable, which is the goal within Boost.
What do you mean by portable? You have no guarantee that the compiler does it? You don't have any guarantees anyway. The compiler is free to ignore inline.
Ah, but that's portable behavior by definition.
As written, the functions in question would only be inlined by a very few platforms. Marked inline in a header, it is the unlikely compiler that wouldn't inline those functions in an optimized build.
As far as I am concerned, this has nothing to do with portability as a goal for Boost. We're talking about optimizations that don't affect the observable behavior of any program. The compiler is free to do whatever it darn well pleases, regardless of whether you say inline or not. msvc has supported link time code generation for a while, and gcc now has -flto. In Christ, Steven Watanabe