On Tue, 28 Aug 2018 at 19:06, Robert Ramey via Boost
Actually, I think the the impact of move semantics on performance of well written existing code is minimal. On new code which uses more types as values it's helpful.
I don't think it has anything to do with whether the code is well written, copying a pointer f.e. is not the same as copying a whole array of data, because that could [should be] be the difference between move assignment and copy assignment. Of course if the library were written today, it would all the new stuff.
I don't think it would be faster (unless it were made header only) but it would likely have have half the number of lines of code (or less).
Header only is of no interest, whatsoever, in terms of performance, that's not how things work (inlining could be affected, but that's about it, I would say) .
But the years long slog to address corner cases, workarounds for compiler bugs and standard library bugs, etc. And there would be design changes which would also create a bunch of ripple effects. So it would really end up as a whole re-write.
Yes, it's a major job, hence all the resentment. degski -- *“If something cannot go on forever, it will stop" - Herbert Stein* *“No, it isn’t truth. Truth isn’t truth" - Rudolph W. L. Giuliani*