]> gcc.gnu.org Git - gcc.git/commitdiff
localename.cc: Standardize exception strings.
authorBenjamin Kosnik <bkoz@redhat.com>
Mon, 28 Apr 2003 23:05:57 +0000 (23:05 +0000)
committerBenjamin Kosnik <bkoz@gcc.gnu.org>
Mon, 28 Apr 2003 23:05:57 +0000 (23:05 +0000)
2003-04-28  Benjamin Kosnik  <bkoz@redhat.com>

* src/localename.cc: Standardize exception strings.
* src/locale.cc: Same.
* src/ios.cc: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/basic_ios.tcc: Same.
* include/std/std_bitset.h: Same.
* include/ext/ropeimpl.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_bvector.h: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.

* testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.

From-SVN: r66192

15 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/config/locale/generic/c_locale.cc
libstdc++-v3/config/locale/gnu/c_locale.cc
libstdc++-v3/config/locale/ieee_1003.1-2001/codecvt_specializations.h
libstdc++-v3/include/bits/basic_ios.tcc
libstdc++-v3/include/bits/basic_string.tcc
libstdc++-v3/include/bits/stl_bvector.h
libstdc++-v3/include/bits/stl_deque.h
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/ext/ropeimpl.h
libstdc++-v3/include/std/std_bitset.h
libstdc++-v3/src/ios.cc
libstdc++-v3/src/locale.cc
libstdc++-v3/src/localename.cc
libstdc++-v3/testsuite/testsuite_hooks.cc

index f8fd27b0e03d67ef6f2ced96abfe0fbb19d72af7..bf1f4bbf82e6dbb06ddcc541041823ebedff8a9a 100644 (file)
@@ -1,3 +1,21 @@
+2003-04-28  Benjamin Kosnik  <bkoz@redhat.com>
+
+       * src/localename.cc: Standardize exception strings.
+       * src/locale.cc: Same.
+       * src/ios.cc: Same.
+       * include/bits/basic_string.tcc: Same.
+       * include/bits/basic_ios.tcc: Same.
+       * include/std/std_bitset.h: Same.
+       * include/ext/ropeimpl.h: Same.
+       * include/bits/stl_vector.h: Same.
+       * include/bits/stl_deque.h: Same.
+       * include/bits/stl_bvector.h: Same.
+       * config/locale/generic/c_locale.cc: Same.
+       * config/locale/gnu/c_locale.cc: Same.
+       * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
+
+       * testsuite/testsuite_hooks.cc (__gnu_cxx_test): Modify.
+       
 2003-04-28  Paolo Carlini  <pcarlini@unitus.it>
 
        * include/std/std_streambuf.h (_M_buf_size): is currently
index 8a46ab8f4da0edddf0f12761f2ff3719a0cfdc4d..d8873ec21330ba0c71fce866a53f6ccdbb657140 100644 (file)
@@ -215,9 +215,12 @@ namespace std
   locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, 
                                    __c_locale)
   {
+    // Currently, the generic model only supports the "C" locale.
+    // See http://gcc.gnu.org/ml/libstdc++/2003-02/msg00345.html
     __cloc = NULL;
     if (strcmp(__s, "C"))
-      __throw_runtime_error("attempt to create locale from unhandled name in generic implementation; see http://gcc.gnu.org/ml/libstdc++/2003-02/msg00345.html");
+      __throw_runtime_error("locale::facet::_S_create_c_locale "
+                           "name not valid");
   }
 
   void
index 7dbf81102b47819429815071422e9633780c988a..4dd50d4f376ba5d77971986a01ccd3a0bccaf741 100644 (file)
@@ -172,7 +172,8 @@ namespace std
     if (!__cloc)
       {
        // This named locale is not supported by the underlying OS.
-       __throw_runtime_error("attempt to create locale from unknown name");
+       __throw_runtime_error("locale::facet::_S_create_c_locale "
+                             "name not valid");
       }
   }
   
index 9d204ed5d33d7b4d5837ce6068c9ae2918524b7f..38b57b5a960a0722ba3aa57ea60fded55a4fd2ac 100644 (file)
        {
          _M_in_desc = iconv_open(_M_int_enc, _M_ext_enc);
          if (_M_in_desc == __err)
-           __throw_runtime_error("creating iconv input descriptor failed.");
+           __throw_runtime_error("__enc_traits::_M_init "
+                                 "creating iconv input descriptor failed");
        }
       if (!_M_out_desc)
        {
          _M_out_desc = iconv_open(_M_ext_enc, _M_int_enc);
          if (_M_out_desc == __err)
-           __throw_runtime_error("creating iconv output descriptor failed.");
+           __throw_runtime_error("__enc_traits::_M_init "
+                                 "creating iconv output descriptor failed");
        }
     }
 
index 8ac1c6093225c59b2618475ec7a0bb4a5990f291..0c1e7357098cd78e9123cf8a321be658b89054c2 100644 (file)
@@ -43,7 +43,7 @@ namespace std
       else
          _M_streambuf_state = __state | badbit;
       if ((this->rdstate() & this->exceptions()))
-       __throw_ios_failure("basic_ios::clear(iostate) caused exception");
+       __throw_ios_failure("basic_ios::clear");
     }
   
   template<typename _CharT, typename _Traits>
index 657b997c7237aa9f2418f0fc183bd5b7889a8ef2..d649ed030984c7bff0935f3c99137efb6bb63140 100644 (file)
@@ -142,7 +142,7 @@ namespace std
 
        // NB: Not required, but considered best practice.
        if (__builtin_expect(__beg == _InIter(), 0))
-         __throw_logic_error("attempt to create string with null pointer");
+         __throw_logic_error("basic_string::_S_construct NULL not valid");
 
        size_type __dnew = static_cast<size_type>(std::distance(__beg, __end));
        
index 29fd692235d81a796000e68147c32efddfb3826b..586a1cfa34e23c827292154cec81b2596ff0f893 100644 (file)
@@ -480,7 +480,7 @@ template <typename _Alloc>
   
     void _M_range_check(size_type __n) const {
       if (__n >= this->size())
-        __throw_out_of_range(__N("vector<bool>"));
+        __throw_out_of_range(__N("vector<bool>::_M_range_check"));
     }
   
     reference at(size_type __n)
index 63257e2dd8fa7d2fd35d62bc4fac1540bdb090cf..5cef4ded120263cec1d5d83a16416ecb7092e79d 100644 (file)
@@ -940,7 +940,7 @@ namespace std
     _M_range_check(size_type __n) const
     {
       if (__n >= this->size())
-        __throw_out_of_range(__N("std::deque [] access out of range"));
+        __throw_out_of_range(__N("deque::_M_range_check"));
     }
   
   public:
index bf2881395c084ffc27fddee5ac6190b364814eb9..c90a476a75893a382dba27c3964970d3669679a9 100644 (file)
@@ -524,7 +524,7 @@ namespace std
       _M_range_check(size_type __n) const
       {
        if (__n >= this->size())
-         __throw_out_of_range(__N("std::vector [] access out of range"));
+         __throw_out_of_range(__N("vector::_M_range_check"));
       }
       
     public:
index 91bd5e0fc9e1fcb298f4724ea4b2677de0216cc9..a1fba6009003c190bc74c4023db7ef40193e9df5 100644 (file)
@@ -1121,7 +1121,7 @@ rope<_CharT,_Alloc>::_S_balance(_RopeRep* __r)
       }
 
     if (__result->_M_depth > _RopeRep::_S_max_rope_depth)
-      __throw_length_error("rope too long");
+      __throw_length_error("rope::_S_balance");
     return(__result);
 }
 
index 4292a4472dc409c4282885281768e233142a6efb..e2e2cc5625ed01332437003cec1d093be265ba0f 100644 (file)
@@ -264,7 +264,7 @@ namespace std
     {
       for (size_t __i = 1; __i < _Nw; ++__i)
        if (_M_w[__i])
-         __throw_overflow_error(__N("bitset value is too large to fit in unsigned long"));
+         __throw_overflow_error(__N("_Base_bitset::_M_do_to_ulong"));
       return _M_w[0];
     }
 
@@ -466,7 +466,10 @@ namespace std
       // localized to this single should-never-get-this-far function.
       _WordT&
       _M_getword(size_t) const
-      { __throw_out_of_range(__N("bitset is zero-length")); return *new _WordT; }
+      { 
+       __throw_out_of_range(__N("_Base_bitset::_M_getword")); 
+       return *new _WordT; 
+      }
 
       _WordT
       _M_hiword() const { return 0; }
@@ -706,8 +709,7 @@ namespace std
                      size_t __pos = 0) : _Base()
       {
        if (__pos > __s.size())
-         __throw_out_of_range("bitset -- initial position is larger than "
-                              "the string itself");
+         __throw_out_of_range("bitset::bitset initial position not valid");
        _M_copy_from_string(__s, __pos,
                            basic_string<_CharT, _Traits, _Alloc>::npos);
       }
@@ -726,8 +728,7 @@ namespace std
             size_t __pos, size_t __n) : _Base()
       {
        if (__pos > __s.size())
-         __throw_out_of_range("bitset -- initial position is larger than "
-                              "the string itself");
+         __throw_out_of_range("bitset::bitset initial position not valid");
        _M_copy_from_string(__s, __pos, __n);
       }
 
@@ -862,7 +863,7 @@ namespace std
     set(size_t __pos, bool __val = true)
     {
       if (__pos >= _Nb)
-       __throw_out_of_range(__N("bitset::set() argument too large"));
+       __throw_out_of_range(__N("bitset::set"));
       return _Unchecked_set(__pos, __val);
     }
 
@@ -887,7 +888,7 @@ namespace std
     reset(size_t __pos)
     {
       if (__pos >= _Nb)
-       __throw_out_of_range(__N("bitset::reset() argument too large"));
+       __throw_out_of_range(__N("bitset::reset"));
       return _Unchecked_reset(__pos);
     }
 
@@ -911,7 +912,7 @@ namespace std
     flip(size_t __pos)
     {
       if (__pos >= _Nb)
-       __throw_out_of_range(__N("bitset::flip() argument too large"));
+       __throw_out_of_range(__N("bitset::flip"));
       return _Unchecked_flip(__pos);
     }
 
@@ -1014,7 +1015,7 @@ namespace std
     test(size_t __pos) const
     {
       if (__pos >= _Nb)
-       __throw_out_of_range(__N("bitset::test() argument too large"));
+       __throw_out_of_range(__N("bitset::test"));
       return _Unchecked_test(__pos);
     }
 
@@ -1083,8 +1084,7 @@ namespace std
              set(__i);
              break;
            default:
-             __throw_invalid_argument("bitset -- string contains characters "
-                                      "which are neither 0 nor 1");
+             __throw_invalid_argument("bitset::_M_copy_from_string");
            }
        }
     }
index 7ce3339ccb356f8f01c00ae9fe0bbb2b1393456d..0adc4a9d80af3cfa0ab6720aee02b98e173db9f4 100644 (file)
@@ -279,7 +279,8 @@ namespace std
              {
                _M_streambuf_state |= badbit;
                if (_M_streambuf_state & _M_exception)
-                 __throw_ios_failure("ios_base::_M_grow_words failure");
+                 __throw_ios_failure("ios_base::_M_grow_words "
+                                     "allocation failed");
                return _M_word_zero;
              }
            for (int i = 0; i < _M_word_size; i++) 
@@ -294,7 +295,7 @@ namespace std
          {
            _M_streambuf_state |= badbit;
            if (_M_streambuf_state & _M_exception)
-             __throw_ios_failure("ios_base::_M_grow_words failure");
+             __throw_ios_failure("ios_base::_M_grow_words ix not valid");
            return _M_word_zero;
          }
       }
index 604bd86915d081398de72078c2feacb875934cc0..89ed9151d775e2d47e5c451cadf56f10365db74b 100644 (file)
@@ -279,7 +279,7 @@ namespace std
          }
       }
     else
-      __throw_runtime_error("attempt to create locale from NULL name");
+      __throw_runtime_error("locale::locale NULL not valid");
   }
 
   locale::locale(const locale& __base, const char* __s, category __cat)
@@ -434,7 +434,8 @@ namespace std
            __ret = all;
            break;
          default:
-           __throw_runtime_error("bad locale category");
+           __throw_runtime_error("locale::_S_normalize_category "
+                                 "category not found");
          }
       }
     return __ret;
index e8c7c5faf764fe2d193ff76621aa4e18e48417a3..c09900b628fcece62f26e5c61ebe85b72fd6843f 100644 (file)
@@ -321,7 +321,7 @@ namespace std
   {
     size_t __index = __idp->_M_id();
     if ((__index > (__imp->_M_facets_size - 1)) || !__imp->_M_facets[__index])
-      __throw_runtime_error("no locale facet");
+      __throw_runtime_error("locale::_Impl::_M_replace_facet");
     _M_install_facet(__idp, __imp->_M_facets[__index]); 
   }
 
index 988ef03620ee1ed6bc20cb0ef5b03a1e5706a223..9b8d48e18371e2649f4ce58aadb1a407ef522d83 100644 (file)
@@ -198,11 +198,8 @@ namespace __gnu_cxx_test
       }
     catch (std::runtime_error& ex)
       {
-       // Thrown by generic implemenation.
-       if (std::strstr(ex.what(), "unhandled name in generic implementation"))
-         exit(0);
-       // Thrown by gnu implemenation.
-       else if (std::strstr(ex.what(), "unknown name"))
+       // Thrown by generic and gnu implemenation if named locale fails.
+       if (std::strstr(ex.what(), "name not valid"))
          exit(0);
        else
          throw;
This page took 0.099584 seconds and 5 git commands to generate.