Retain IString str; inside the anonymous union in struct Value on non-MSVC compilers.