title: Is `std::string(strerror(errno))` dangerous?
body: <p>At some places in my code, I print debug messages like this:</p>
  
  <pre><code>int ret = getLinkSpeed(device.getSysName(), linkSpeed);
  if (ret &lt; 0)
  {
      logDebug("Failed to obtain port speed for this device. Error: " + std::string(strerror(errno)));
  }
  </code></pre>
  
  <p>From the <a href="http://www.opengroup.org/onlinepubs/000095399/functions/strerror.html" rel="nofollow noreferrer">documentation</a> it is not entirely clear if strerror will return 0 under certain conditions (which would cause my code to crash). Does anyone know if it's safe?</p>