It is an upstream patch.  I also introduced a few tweaks that allow us to store types that don't define streaming operators, that allow string literals to be stored, and that fix a missing assignment operator.