While C++14 is enforced throughout our CMake build, it is not enforced
for every subproject in the Autotools build. As a result, D5982 breaks the build
when UniValue is built with C++98 (thereby affecting Autotools builds on Xenial).
Normally, we wouldn't care because the Autotools build is no longer supported and
we enforce C++14. However, the UniValue library does not yet officially support
C++11 or later, so keeping our changes consistent with our upstream PRs will help
reduce maintenance costs in the long run.
This patch is the same I applied to my current upstream PR for the .write() perf improvements:
https://github.com/jgarzik/univalue/compare/d3a09e5e4a48417d5478a66dc343d7bf00146d5a..bb1c002bf540851551b33e76ad208baaf7ea5b11
While removing the std::move() call is not ideal, it does not appear to impact performance
in an easily measurable way.