__Named_exception::__Named_exception(const string& __str) {
  size_t __size = strlen(_STLP_PRIV __get_c_string(__str)) + 1;
  if (__size > _S_bufsize) {
    _M_name = __STATIC_CAST(char*, malloc(__size * sizeof(char)));
    if (!_M_name) {
      __size = _S_bufsize;
      _M_name = _M_static_name;
    }
    else {
      *(local_cast(&_M_static_name[0])) = __size * sizeof(char);
    }
  }
__Named_exception::__Named_exception(const string& __str) {
  strncpy(_M_name, __get_c_string(__str), _S_bufsize);
  _M_name[_S_bufsize - 1] = '\0';
}