MSVS and g++ debug build both disable inline (presumably to ease debugging). The performance difference vis-a-vis release build is mostly due to this single factor, according to [[optimized c++]]
The same author asserts that inlining is probably the most powerful code optimization.
Stroustrup singled out inline as a key feature of c++.
In his low-latency seminar, Martin Thompson also quoted a computer scientist saying “Inlining is THE optimization”. This is now a memorable quote.
I think one of my java performance books singled out inlining as the single most effective optimization compiler can do.
Pimpl effectively disables inlining
vptr-based dispatch also disables inlining
C++faq gives many reasons for and against inline.