__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'; }