> Pass-By-Value: Detect const-ref parameters that would benefit from using the pass-by-value idiom.<p>I don't get why to make this change and the justification (after following 2 links deep: Want Speed? Pass by Value) is a 404.<p>Move constructors are great and it's awesome that a bunch of what used to be copy-constructor overuse in C++03 can now be done without deep copies in C++11. But I don't understand why explicitly move from something that is explicit and guaranteed to be cheap (pass by reference) to something that might be cheap if everything has reasonable move-ctors or (if not all ducks are in a row) might simply degrade to incurring the C++03-style over-copies. Does not seem like a strict improvement to me. Seems instead like blindly applying this to existing code will slow it down in some cases, possibly dramatically.