vsnprintf is not in std