diff mbox series

libcody: to_string is not always available [PR 98412]

Message ID 8f141e32-62eb-4c06-9d43-9882db4757ee@acm.org
State New
Headers show
Series libcody: to_string is not always available [PR 98412] | expand

Commit Message

Nathan Sidwell Dec. 21, 2020, 1:40 p.m. UTC
to_string is not always	available, so don't use	it.

         libcody/
         * buffer.cc (MessageBuffer::AppendInteger): Workaround
         to_string's non-ubiquity.
diff mbox series

Patch

diff --git i/libcody/buffer.cc w/libcody/buffer.cc
index 3256c37399b..85c066fef71 100644
--- i/libcody/buffer.cc
+++ w/libcody/buffer.cc
@@ -146,7 +146,13 @@  void MessageBuffer::Append (char c)
 
 void MessageBuffer::AppendInteger (unsigned u)
 {
-  std::string v (std::to_string (u));
+  // Sigh, even though std::to_string is C++11, we support building on
+  // gcc 4.8, which is a C++11 compiler lacking std::to_string.  so
+  // have something horrible.
+  std::string v (20, 0);
+  size_t len = snprintf (const_cast<char *> (v.data ()), v.size (), "%u", u);
+  v.erase (len);
+
   AppendWord (v);
 }