> > For functions marked with the "inline" keyword, as opposed to C++
> > inline class methods, can anyone give me a reason why we don't treat
> > the inline keyword as an always_inline attribute?
>
> I wholeheartedly second that. If I write "inline" in C I expect that to
happen
> as soon as the optimizer is turned on. If there is room for even more
> inlining after that, fine.
> So, for C "inline" should be mapped to "always_inline".
I think the inline keyword should be treated exactly in the same terms as
the register keyword. That is, as a hint to the compiler. As time goes
by the inline keyword will become increasingly meaningless, since the
compiler will be able to do a better job. Forcing the compiler to respect
inline regardless of the consequences is a mistake.