[cfe-commits] [libcxx] r132337 - in /libcxx/trunk: include/__locale include/locale src/locale.cpp

Howard Hinnant hhinnant at apple.com
Tue May 31 08:34:58 PDT 2011


Author: hhinnant
Date: Tue May 31 10:34:58 2011
New Revision: 132337

URL: http://llvm.org/viewvc/llvm-project?rev=132337&view=rev
Log:
noexcept for Chapter 22 [localization].

Modified:
    libcxx/trunk/include/__locale
    libcxx/trunk/include/locale
    libcxx/trunk/src/locale.cpp

Modified: libcxx/trunk/include/__locale
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__locale?rev=132337&r1=132336&r2=132337&view=diff
==============================================================================
--- libcxx/trunk/include/__locale (original)
+++ libcxx/trunk/include/__locale Tue May 31 10:34:58 2011
@@ -27,7 +27,7 @@
 
 class locale;
 
-template <class _Facet> bool has_facet(const locale&) throw();
+template <class _Facet> bool has_facet(const locale&) _NOEXCEPT;
 template <class _Facet> const _Facet& use_facet(const locale&);
 
 class _LIBCPP_VISIBLE locale
@@ -49,8 +49,8 @@
         all = collate | ctype | monetary | numeric | time | messages;
 
     // construct/copy/destroy:
-    locale() throw();
-    locale(const locale&) throw();
+    locale()  _NOEXCEPT;
+    locale(const locale&)  _NOEXCEPT;
     explicit locale(const char*);
     explicit locale(const string&);
     locale(const locale&, const char*, category);
@@ -59,9 +59,9 @@
         _LIBCPP_INLINE_VISIBILITY locale(const locale&, _Facet*);
     locale(const locale&, const locale&, category);
 
-    ~locale() throw();
+    ~locale();
 
-    const locale& operator=(const locale&) throw();
+    const locale& operator=(const locale&)  _NOEXCEPT;
 
     template <class _Facet> locale combine(const locale&) const;
 
@@ -86,7 +86,7 @@
     bool has_facet(id&) const;
     const facet* use_facet(id&) const;
 
-    template <class _Facet> friend bool has_facet(const locale&) throw();
+    template <class _Facet> friend bool has_facet(const locale&)  _NOEXCEPT;
     template <class _Facet> friend const _Facet& use_facet(const locale&);
 };
 
@@ -146,7 +146,7 @@
 template <class _Facet>
 inline _LIBCPP_INLINE_VISIBILITY
 bool
-has_facet(const locale& __l) throw()
+has_facet(const locale& __l)  _NOEXCEPT
 {
     return __l.has_facet(_Facet::id);
 }
@@ -535,8 +535,8 @@
 #else
     static const size_t table_size = 256;  // FIXME: Don't hardcode this.
 #endif
-    _LIBCPP_ALWAYS_INLINE const mask* table() const throw() {return __tab_;}
-    static const mask* classic_table() throw();
+    _LIBCPP_ALWAYS_INLINE const mask* table() const  _NOEXCEPT {return __tab_;}
+    static const mask* classic_table()  _NOEXCEPT;
 
 protected:
     ~ctype();
@@ -755,13 +755,13 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int encoding() const throw()
+    int encoding() const  _NOEXCEPT
     {
         return do_encoding();
     }
 
     _LIBCPP_ALWAYS_INLINE
-    bool always_noconv() const throw()
+    bool always_noconv() const  _NOEXCEPT
     {
         return do_always_noconv();
     }
@@ -773,7 +773,7 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int max_length() const throw()
+    int max_length() const  _NOEXCEPT
     {
         return do_max_length();
     }
@@ -795,10 +795,10 @@
                          intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
     virtual result do_unshift(state_type& __st,
                               extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
-    virtual int do_encoding() const throw();
-    virtual bool do_always_noconv() const throw();
+    virtual int do_encoding() const  _NOEXCEPT;
+    virtual bool do_always_noconv() const  _NOEXCEPT;
     virtual int do_length(state_type& __st, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
-    virtual int do_max_length() const throw();
+    virtual int do_max_length() const  _NOEXCEPT;
 };
 
 // template <> class codecvt<wchar_t, char, mbstate_t>
@@ -840,13 +840,13 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int encoding() const throw()
+    int encoding() const  _NOEXCEPT
     {
         return do_encoding();
     }
 
     _LIBCPP_ALWAYS_INLINE
-    bool always_noconv() const throw()
+    bool always_noconv() const  _NOEXCEPT
     {
         return do_always_noconv();
     }
@@ -858,7 +858,7 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int max_length() const throw()
+    int max_length() const  _NOEXCEPT
     {
         return do_max_length();
     }
@@ -878,10 +878,10 @@
                          intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
     virtual result do_unshift(state_type& __st,
                               extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
-    virtual int do_encoding() const throw();
-    virtual bool do_always_noconv() const throw();
+    virtual int do_encoding() const  _NOEXCEPT;
+    virtual bool do_always_noconv() const  _NOEXCEPT;
     virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
-    virtual int do_max_length() const throw();
+    virtual int do_max_length() const  _NOEXCEPT;
 };
 
 // template <> class codecvt<char16_t, char, mbstate_t>
@@ -924,13 +924,13 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int encoding() const throw()
+    int encoding() const  _NOEXCEPT
     {
         return do_encoding();
     }
 
     _LIBCPP_ALWAYS_INLINE
-    bool always_noconv() const throw()
+    bool always_noconv() const  _NOEXCEPT
     {
         return do_always_noconv();
     }
@@ -942,7 +942,7 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int max_length() const throw()
+    int max_length() const  _NOEXCEPT
     {
         return do_max_length();
     }
@@ -964,10 +964,10 @@
                          intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
     virtual result do_unshift(state_type& __st,
                               extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
-    virtual int do_encoding() const throw();
-    virtual bool do_always_noconv() const throw();
+    virtual int do_encoding() const  _NOEXCEPT;
+    virtual bool do_always_noconv() const  _NOEXCEPT;
     virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
-    virtual int do_max_length() const throw();
+    virtual int do_max_length() const  _NOEXCEPT;
 };
 
 // template <> class codecvt<char32_t, char, mbstate_t>
@@ -1010,13 +1010,13 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int encoding() const throw()
+    int encoding() const  _NOEXCEPT
     {
         return do_encoding();
     }
 
     _LIBCPP_ALWAYS_INLINE
-    bool always_noconv() const throw()
+    bool always_noconv() const  _NOEXCEPT
     {
         return do_always_noconv();
     }
@@ -1028,7 +1028,7 @@
     }
 
     _LIBCPP_ALWAYS_INLINE
-    int max_length() const throw()
+    int max_length() const  _NOEXCEPT
     {
         return do_max_length();
     }
@@ -1050,10 +1050,10 @@
                          intern_type* __to, intern_type* __to_end, intern_type*& __to_nxt) const;
     virtual result do_unshift(state_type& __st,
                               extern_type* __to, extern_type* __to_end, extern_type*& __to_nxt) const;
-    virtual int do_encoding() const throw();
-    virtual bool do_always_noconv() const throw();
+    virtual int do_encoding() const  _NOEXCEPT;
+    virtual bool do_always_noconv() const  _NOEXCEPT;
     virtual int do_length(state_type&, const extern_type* __frm, const extern_type* __end, size_t __mx) const;
-    virtual int do_max_length() const throw();
+    virtual int do_max_length() const  _NOEXCEPT;
 };
 
 // template <class _InternT, class _ExternT, class _StateT> class codecvt_byname

Modified: libcxx/trunk/include/locale
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/locale?rev=132337&r1=132336&r2=132337&view=diff
==============================================================================
--- libcxx/trunk/include/locale (original)
+++ libcxx/trunk/include/locale Tue May 31 10:34:58 2011
@@ -36,8 +36,8 @@
         all = collate | ctype | monetary | numeric | time | messages;
 
     // construct/copy/destroy:
-    locale() throw();
-    locale(const locale& other) throw();
+    locale() noexcept;
+    locale(const locale& other) noexcept;
     explicit locale(const char* std_name);
     explicit locale(const string& std_name);
     locale(const locale& other, const char* std_name, category);
@@ -45,9 +45,9 @@
     template <class Facet> locale(const locale& other, Facet* f);
     locale(const locale& other, const locale& one, category);
 
-    ~locale() throw(); // not virtual
+    ~locale(); // not virtual
 
-    const locale& operator=(const locale& other) throw();
+    const locale& operator=(const locale& other) noexcept;
 
     template <class Facet> locale combine(const locale& other) const;
 
@@ -65,7 +65,7 @@
 };
 
 template <class Facet> const Facet& use_facet(const locale&);
-template <class Facet> bool has_facet(const locale&) throw();
+template <class Facet> bool has_facet(const locale&) noexcept;
 
 // 22.3.3, convenience interfaces:
 template <class charT> bool isspace (charT c, const locale& loc);

Modified: libcxx/trunk/src/locale.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/locale.cpp?rev=132337&r1=132336&r2=132337&view=diff
==============================================================================
--- libcxx/trunk/src/locale.cpp (original)
+++ libcxx/trunk/src/locale.cpp Tue May 31 10:34:58 2011
@@ -399,25 +399,25 @@
     return g;
 }
 
-locale::locale() throw()
+locale::locale()  _NOEXCEPT
     : __locale_(__global().__locale_)
 {
     __locale_->__add_shared();
 }
 
-locale::locale(const locale& l) throw()
+locale::locale(const locale& l)  _NOEXCEPT
     : __locale_(l.__locale_)
 {
     __locale_->__add_shared();
 }
 
-locale::~locale() throw()
+locale::~locale()
 {
     __locale_->__release_shared();
 }
 
 const locale&
-locale::operator=(const locale& other) throw()
+locale::operator=(const locale& other)  _NOEXCEPT
 {
     other.__locale_->__add_shared();
     __locale_->__release_shared();
@@ -895,7 +895,7 @@
 }
 
 const ctype<char>::mask*
-ctype<char>::classic_table() throw()
+ctype<char>::classic_table()  _NOEXCEPT
 {
 #ifdef __APPLE__
     return _DefaultRuneLocale.__runetype;
@@ -1164,13 +1164,13 @@
 }
 
 int
-codecvt<char, char, mbstate_t>::do_encoding() const throw()
+codecvt<char, char, mbstate_t>::do_encoding() const  _NOEXCEPT
 {
     return 1;
 }
 
 bool
-codecvt<char, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<char, char, mbstate_t>::do_always_noconv() const  _NOEXCEPT
 {
     return true;
 }
@@ -1183,7 +1183,7 @@
 }
 
 int
-codecvt<char, char, mbstate_t>::do_max_length() const throw()
+codecvt<char, char, mbstate_t>::do_max_length() const  _NOEXCEPT
 {
     return 1;
 }
@@ -1365,7 +1365,7 @@
 }
 
 int
-codecvt<wchar_t, char, mbstate_t>::do_encoding() const throw()
+codecvt<wchar_t, char, mbstate_t>::do_encoding() const  _NOEXCEPT
 {
 #ifdef __APPLE__
     if (mbtowc_l(0, 0, MB_LEN_MAX, __l) == 0)
@@ -1382,7 +1382,7 @@
 }
 
 bool
-codecvt<wchar_t, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<wchar_t, char, mbstate_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -1418,7 +1418,7 @@
 }
 
 int
-codecvt<wchar_t, char, mbstate_t>::do_max_length() const throw()
+codecvt<wchar_t, char, mbstate_t>::do_max_length() const  _NOEXCEPT
 {
 #ifdef __APPLE__
     return __l == 0 ? 1 : MB_CUR_MAX_L(__l);
@@ -2875,13 +2875,13 @@
 }
 
 int
-codecvt<char16_t, char, mbstate_t>::do_encoding() const throw()
+codecvt<char16_t, char, mbstate_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-codecvt<char16_t, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<char16_t, char, mbstate_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -2896,7 +2896,7 @@
 }
 
 int
-codecvt<char16_t, char, mbstate_t>::do_max_length() const throw()
+codecvt<char16_t, char, mbstate_t>::do_max_length() const  _NOEXCEPT
 {
     return 4;
 }
@@ -2952,13 +2952,13 @@
 }
 
 int
-codecvt<char32_t, char, mbstate_t>::do_encoding() const throw()
+codecvt<char32_t, char, mbstate_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-codecvt<char32_t, char, mbstate_t>::do_always_noconv() const throw()
+codecvt<char32_t, char, mbstate_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -2973,7 +2973,7 @@
 }
 
 int
-codecvt<char32_t, char, mbstate_t>::do_max_length() const throw()
+codecvt<char32_t, char, mbstate_t>::do_max_length() const  _NOEXCEPT
 {
     return 4;
 }
@@ -3025,13 +3025,13 @@
 }
 
 int
-__codecvt_utf8<wchar_t>::do_encoding() const throw()
+__codecvt_utf8<wchar_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf8<wchar_t>::do_always_noconv() const throw()
+__codecvt_utf8<wchar_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3046,7 +3046,7 @@
 }
 
 int
-__codecvt_utf8<wchar_t>::do_max_length() const throw()
+__codecvt_utf8<wchar_t>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 7;
@@ -3100,13 +3100,13 @@
 }
 
 int
-__codecvt_utf8<char16_t>::do_encoding() const throw()
+__codecvt_utf8<char16_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf8<char16_t>::do_always_noconv() const throw()
+__codecvt_utf8<char16_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3121,7 +3121,7 @@
 }
 
 int
-__codecvt_utf8<char16_t>::do_max_length() const throw()
+__codecvt_utf8<char16_t>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 6;
@@ -3175,13 +3175,13 @@
 }
 
 int
-__codecvt_utf8<char32_t>::do_encoding() const throw()
+__codecvt_utf8<char32_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf8<char32_t>::do_always_noconv() const throw()
+__codecvt_utf8<char32_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3196,7 +3196,7 @@
 }
 
 int
-__codecvt_utf8<char32_t>::do_max_length() const throw()
+__codecvt_utf8<char32_t>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 7;
@@ -3250,13 +3250,13 @@
 }
 
 int
-__codecvt_utf16<wchar_t, false>::do_encoding() const throw()
+__codecvt_utf16<wchar_t, false>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf16<wchar_t, false>::do_always_noconv() const throw()
+__codecvt_utf16<wchar_t, false>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3271,7 +3271,7 @@
 }
 
 int
-__codecvt_utf16<wchar_t, false>::do_max_length() const throw()
+__codecvt_utf16<wchar_t, false>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 6;
@@ -3325,13 +3325,13 @@
 }
 
 int
-__codecvt_utf16<wchar_t, true>::do_encoding() const throw()
+__codecvt_utf16<wchar_t, true>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf16<wchar_t, true>::do_always_noconv() const throw()
+__codecvt_utf16<wchar_t, true>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3346,7 +3346,7 @@
 }
 
 int
-__codecvt_utf16<wchar_t, true>::do_max_length() const throw()
+__codecvt_utf16<wchar_t, true>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 6;
@@ -3400,13 +3400,13 @@
 }
 
 int
-__codecvt_utf16<char16_t, false>::do_encoding() const throw()
+__codecvt_utf16<char16_t, false>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf16<char16_t, false>::do_always_noconv() const throw()
+__codecvt_utf16<char16_t, false>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3421,7 +3421,7 @@
 }
 
 int
-__codecvt_utf16<char16_t, false>::do_max_length() const throw()
+__codecvt_utf16<char16_t, false>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 4;
@@ -3475,13 +3475,13 @@
 }
 
 int
-__codecvt_utf16<char16_t, true>::do_encoding() const throw()
+__codecvt_utf16<char16_t, true>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf16<char16_t, true>::do_always_noconv() const throw()
+__codecvt_utf16<char16_t, true>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3496,7 +3496,7 @@
 }
 
 int
-__codecvt_utf16<char16_t, true>::do_max_length() const throw()
+__codecvt_utf16<char16_t, true>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 4;
@@ -3550,13 +3550,13 @@
 }
 
 int
-__codecvt_utf16<char32_t, false>::do_encoding() const throw()
+__codecvt_utf16<char32_t, false>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf16<char32_t, false>::do_always_noconv() const throw()
+__codecvt_utf16<char32_t, false>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3571,7 +3571,7 @@
 }
 
 int
-__codecvt_utf16<char32_t, false>::do_max_length() const throw()
+__codecvt_utf16<char32_t, false>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 6;
@@ -3625,13 +3625,13 @@
 }
 
 int
-__codecvt_utf16<char32_t, true>::do_encoding() const throw()
+__codecvt_utf16<char32_t, true>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf16<char32_t, true>::do_always_noconv() const throw()
+__codecvt_utf16<char32_t, true>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3646,7 +3646,7 @@
 }
 
 int
-__codecvt_utf16<char32_t, true>::do_max_length() const throw()
+__codecvt_utf16<char32_t, true>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 6;
@@ -3700,13 +3700,13 @@
 }
 
 int
-__codecvt_utf8_utf16<wchar_t>::do_encoding() const throw()
+__codecvt_utf8_utf16<wchar_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf8_utf16<wchar_t>::do_always_noconv() const throw()
+__codecvt_utf8_utf16<wchar_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3721,7 +3721,7 @@
 }
 
 int
-__codecvt_utf8_utf16<wchar_t>::do_max_length() const throw()
+__codecvt_utf8_utf16<wchar_t>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 7;
@@ -3775,13 +3775,13 @@
 }
 
 int
-__codecvt_utf8_utf16<char16_t>::do_encoding() const throw()
+__codecvt_utf8_utf16<char16_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf8_utf16<char16_t>::do_always_noconv() const throw()
+__codecvt_utf8_utf16<char16_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3796,7 +3796,7 @@
 }
 
 int
-__codecvt_utf8_utf16<char16_t>::do_max_length() const throw()
+__codecvt_utf8_utf16<char16_t>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 7;
@@ -3850,13 +3850,13 @@
 }
 
 int
-__codecvt_utf8_utf16<char32_t>::do_encoding() const throw()
+__codecvt_utf8_utf16<char32_t>::do_encoding() const  _NOEXCEPT
 {
     return 0;
 }
 
 bool
-__codecvt_utf8_utf16<char32_t>::do_always_noconv() const throw()
+__codecvt_utf8_utf16<char32_t>::do_always_noconv() const  _NOEXCEPT
 {
     return false;
 }
@@ -3871,7 +3871,7 @@
 }
 
 int
-__codecvt_utf8_utf16<char32_t>::do_max_length() const throw()
+__codecvt_utf8_utf16<char32_t>::do_max_length() const  _NOEXCEPT
 {
     if (_Mode_ & consume_header)
         return 7;





More information about the cfe-commits mailing list