Use vnsprintf since _vnsprintf is technically private with GCC