because calling toString() is impure, can allocate memory and throw
Merge pull request #756 from WalterBright/xmmflag

because calling toString() in stdarg is slow, impure, can allocate memory and throw