This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [v3] fix -pedantic, -fno-rtti build


patch

2010-02-16  Benjamin Kosnik  <bkoz@redhat.com>

	* src/ios_locale.cc: Fixes for -pedantic.
	* src/system_error.cc: Same.
	* src/locale.cc: Same.
	* src/list.cc: Same.
	* src/locale_facets.cc: Same.
	* src/locale_init.cc: Same.
	* src/ios.cc: Same.
	* config/locale/darwin/ctype_members.cc: Same.
	* config/locale/gnu/collate_members.cc: Same.
	* config/locale/gnu/ctype_members.cc: Same.
	* config/locale/gnu/c_locale.cc: Same.
	* config/locale/gnu/monetary_members.cc: Same.
	* config/locale/gnu/time_members.cc: Same.
	* config/locale/ieee_1003.1-2001/c_locale.cc: Same.
	* config/locale/generic/collate_members.cc: Same.
	* config/locale/generic/ctype_members.cc: Same.
	* config/locale/generic/c_locale.cc: Same.
	* config/locale/generic/monetary_members.cc: Same.
	* config/locale/generic/time_members.cc: Same.
	* config/io/basic_file_stdio.cc: Same.

	* libsupc++/pbase_type_info.cc: Fixes for -fno-rtti.
	* libsupc++/pointer_type_info.cc: Same.
	* libsupc++/eh_personality.cc: Same.

	* include/std/system_error: Throw spacing.
	* include/bits/locale_classes.h: Same.
	* include/bits/locale_facets.h: Same.
	* include/bits/ios_base.h: Same.

	* testsuite/17_intro/headers/c++200x/all_no_rtti.cc: New.
	* testsuite/17_intro/headers/c++1998/all_no_rtti.cc: New.


Index: src/ios_locale.cc
===================================================================
--- src/ios_locale.cc	(revision 156820)
+++ src/ios_locale.cc	(working copy)
@@ -1,6 +1,7 @@
 // Iostreams base classes -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2009
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005,
+// 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -33,19 +34,19 @@
 _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // Called only by basic_ios<>::init.
-  void 
-  ios_base::_M_init()   
+  void
+  ios_base::_M_init() throw()
   {
     // NB: May be called more than once
     _M_precision = 6;
     _M_width = 0;
     _M_flags = skipws | dec;
     _M_ios_locale = locale();
-  }  
-  
+  }
+
   // 27.4.2.3  ios_base locale functions
   locale
-  ios_base::imbue(const locale& __loc)
+  ios_base::imbue(const locale& __loc) throw()
   {
     locale __old = _M_ios_locale;
     _M_ios_locale = __loc;
Index: src/system_error.cc
===================================================================
--- src/system_error.cc	(revision 156820)
+++ src/system_error.cc	(working copy)
@@ -1,6 +1,6 @@
 // <system_error> implementation file
 
-// Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -69,10 +69,10 @@
 _GLIBCXX_BEGIN_NAMESPACE(std)
 
   const error_category& 
-  system_category() { return system_category_instance; }
+  system_category() throw() { return system_category_instance; }
 
   const error_category& 
-  generic_category() { return generic_category_instance; }
+  generic_category() throw() { return generic_category_instance; }
   
   system_error::~system_error() throw() { }
 
Index: src/locale.cc
===================================================================
--- src/locale.cc	(revision 156820)
+++ src/locale.cc	(working copy)
@@ -1,5 +1,5 @@
 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-// 2006, 2007, 2008, 2009
+// 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -217,7 +217,7 @@
   }
 
   const char*
-  locale::facet::_S_get_c_name()
+  locale::facet::_S_get_c_name() throw()
   { return _S_c_name; }
 
   locale::facet::
@@ -408,7 +408,7 @@
   _Atomic_word locale::id::_S_refcount;  // init'd to 0 by linker
 
   size_t
-  locale::id::_M_id() const
+  locale::id::_M_id() const throw()
   {
     if (!_M_index)
       {
Index: src/list.cc
===================================================================
--- src/list.cc	(revision 156820)
+++ src/list.cc	(working copy)
@@ -53,7 +53,7 @@
 _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD_D)
 
   void
-  _List_node_base::swap(_List_node_base& __x, _List_node_base& __y)
+  _List_node_base::swap(_List_node_base& __x, _List_node_base& __y) throw()
   {
     if ( __x._M_next != &__x )
     {
@@ -86,7 +86,7 @@
 
   void
   _List_node_base::_M_transfer(_List_node_base * const __first,
-			       _List_node_base * const __last)
+			       _List_node_base * const __last) throw()
   {
     if (this != __last)
     {
@@ -104,7 +104,7 @@
   }
 
   void
-  _List_node_base::_M_reverse()
+  _List_node_base::_M_reverse() throw()
   {
     _List_node_base* __tmp = this;
     do
@@ -118,7 +118,7 @@
   }
 
   void
-  _List_node_base::_M_hook(_List_node_base* const __position)
+  _List_node_base::_M_hook(_List_node_base* const __position) throw()
   {
     this->_M_next = __position;
     this->_M_prev = __position->_M_prev;
@@ -127,7 +127,7 @@
   }
 
   void
-  _List_node_base::_M_unhook()
+  _List_node_base::_M_unhook() throw()
   {
     _List_node_base* const __next_node = this->_M_next;
     _List_node_base* const __prev_node = this->_M_prev;
Index: src/locale_facets.cc
===================================================================
--- src/locale_facets.cc	(revision 156820)
+++ src/locale_facets.cc	(working copy)
@@ -1,5 +1,5 @@
 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-// 2006, 2007, 2008, 2009
+// 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -58,7 +58,8 @@
   // According to the resolution of DR 231, about 22.2.2.2.2, p11,
   // "str.precision() is specified in the conversion specification".
   void
-  __num_base::_S_format_float(const ios_base& __io, char* __fptr, char __mod)
+  __num_base::_S_format_float(const ios_base& __io, char* __fptr, 
+			      char __mod) throw()
   {
     ios_base::fmtflags __flags = __io.flags();
     *__fptr++ = '%';
@@ -88,7 +89,7 @@
 
   bool
   __verify_grouping(const char* __grouping, size_t __grouping_size,
-		    const string& __grouping_tmp)
+		    const string& __grouping_tmp) throw()
   {
     const size_t __n = __grouping_tmp.size() - 1;
     const size_t __min = std::min(__n, size_t(__grouping_size - 1));
Index: src/locale_init.cc
===================================================================
--- src/locale_init.cc	(revision 156820)
+++ src/locale_init.cc	(working copy)
@@ -1,5 +1,5 @@
 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 
-// 2009
+// 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -260,7 +260,7 @@
   }
 
   void
-  locale::_S_initialize_once()
+  locale::_S_initialize_once() throw()
   {
     // 2 references.
     // One reference for _S_classic, one for _S_global
Index: src/ios.cc
===================================================================
--- src/ios.cc	(revision 156820)
+++ src/ios.cc	(working copy)
@@ -1,7 +1,7 @@
 // Iostreams base classes -*- C++ -*-
 
 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-// 2006, 2007, 2008, 2009
+// 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -73,7 +73,7 @@
 
   bool ios_base::Init::_S_synced_with_stdio = true;
 
-  ios_base::ios_base() 
+  ios_base::ios_base() throw()
   : _M_precision(), _M_width(), _M_flags(), _M_exception(), 
   _M_streambuf_state(), _M_callbacks(0), _M_word_zero(), 
   _M_word_size(_S_local_word_size), _M_word(_M_local_word), _M_ios_locale()
@@ -175,7 +175,7 @@
   }
 
   void 
-  ios_base::_M_dispose_callbacks(void)
+  ios_base::_M_dispose_callbacks(void) throw()
   {
     _Callback_list* __p = _M_callbacks;
     while (__p && __p->_M_remove_reference() == 0)
Index: include/std/system_error
===================================================================
--- include/std/system_error	(revision 156820)
+++ include/std/system_error	(working copy)
@@ -103,8 +103,8 @@
   inline error_category::error_category() = default;
 
   // DR 890.
-  _GLIBCXX_CONST const error_category& system_category() throw ();
-  _GLIBCXX_CONST const error_category& generic_category() throw ();
+  _GLIBCXX_CONST const error_category& system_category() throw();
+  _GLIBCXX_CONST const error_category& generic_category() throw();
 
   error_code make_error_code(errc);
 
Index: include/bits/locale_classes.h
===================================================================
--- include/bits/locale_classes.h	(revision 156820)
+++ include/bits/locale_classes.h	(working copy)
@@ -222,7 +222,7 @@
      *		 copies, or have the same name.  False otherwise.
     */
     bool
-    operator==(const locale& __other) const throw ();
+    operator==(const locale& __other) const throw();
 
     /**
      *  @brief  Locale inequality.
@@ -231,7 +231,7 @@
      *  @return  ! (*this == other)
     */
     bool
-    operator!=(const locale& __other) const throw ()
+    operator!=(const locale& __other) const throw()
     { return !(this->operator==(__other)); }
 
     /**
@@ -313,7 +313,7 @@
     _S_initialize();
 
     static void
-    _S_initialize_once() throw ();
+    _S_initialize_once() throw();
 
     static category
     _S_normalize_category(category);
@@ -378,7 +378,7 @@
 		       __c_locale __old = 0);
 
     static __c_locale
-    _S_clone_c_locale(__c_locale& __cloc) throw ();
+    _S_clone_c_locale(__c_locale& __cloc) throw();
 
     static void
     _S_destroy_c_locale(__c_locale& __cloc);
@@ -392,7 +392,7 @@
     _S_get_c_locale();
 
     _GLIBCXX_CONST static const char*
-    _S_get_c_name() throw ();
+    _S_get_c_name() throw();
 
   private:
     void
@@ -441,7 +441,7 @@
 
     template<typename _Facet>
       friend bool
-      has_facet(const locale&) throw ();
+      has_facet(const locale&) throw();
 
     // NB: There is no accessor for _M_index because it may be used
     // before the constructor is run; the effect of calling a member
@@ -463,7 +463,7 @@
     id() { }
 
     size_t
-    _M_id() const throw ();
+    _M_id() const throw();
   };
 
 
@@ -703,10 +703,10 @@
 
       // Used to abstract out _CharT bits in virtual member functions, below.
       int
-      _M_compare(const _CharT*, const _CharT*) const throw ();
+      _M_compare(const _CharT*, const _CharT*) const throw();
 
       size_t
-      _M_transform(_CharT*, const _CharT*, size_t) const throw ();
+      _M_transform(_CharT*, const _CharT*, size_t) const throw();
 
   protected:
       /// Destructor.
@@ -765,20 +765,20 @@
   // Specializations.
   template<>
     int
-    collate<char>::_M_compare(const char*, const char*) const throw ();
+    collate<char>::_M_compare(const char*, const char*) const throw();
 
   template<>
     size_t
-    collate<char>::_M_transform(char*, const char*, size_t) const throw ();
+    collate<char>::_M_transform(char*, const char*, size_t) const throw();
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   template<>
     int
-    collate<wchar_t>::_M_compare(const wchar_t*, const wchar_t*) const throw ();
+    collate<wchar_t>::_M_compare(const wchar_t*, const wchar_t*) const throw();
 
   template<>
     size_t
-    collate<wchar_t>::_M_transform(wchar_t*, const wchar_t*, size_t) const throw ();
+    collate<wchar_t>::_M_transform(wchar_t*, const wchar_t*, size_t) const throw();
 #endif
 
   /// class collate_byname [22.2.4.2].
Index: include/bits/locale_facets.h
===================================================================
--- include/bits/locale_facets.h	(revision 156820)
+++ include/bits/locale_facets.h	(working copy)
@@ -70,17 +70,17 @@
   template<>
     void
     __convert_to_v(const char*, float&, ios_base::iostate&,
-		   const __c_locale&) throw ();
+		   const __c_locale&) throw();
 
   template<>
     void
     __convert_to_v(const char*, double&, ios_base::iostate&,
-		   const __c_locale&) throw ();
+		   const __c_locale&) throw();
 
   template<>
     void
     __convert_to_v(const char*, long double&, ios_base::iostate&,
-		   const __c_locale&) throw ();
+		   const __c_locale&) throw();
 
   // NB: __pad is a struct, rather than a function, so it can be
   // partially-specialized.
@@ -1219,7 +1219,7 @@
 
     protected:
       __wmask_type
-      _M_convert_to_wmask(const mask __m) const throw ();
+      _M_convert_to_wmask(const mask __m) const throw();
 
       /// Destructor
       virtual
@@ -1457,7 +1457,7 @@
 
       // For use at construction time only.
       void
-      _M_initialize_ctype() throw ();
+      _M_initialize_ctype() throw();
     };
 #endif //_GLIBCXX_USE_WCHAR_T
 
@@ -1557,7 +1557,7 @@
     // num_put
     // Construct and return valid scanf format for floating point types.
     static void
-    _S_format_float(const ios_base& __io, char* __fptr, char __mod) throw ();
+    _S_format_float(const ios_base& __io, char* __fptr, char __mod) throw();
   };
 
   template<typename _CharT>
Index: include/bits/ios_base.h
===================================================================
--- include/bits/ios_base.h	(revision 156820)
+++ include/bits/ios_base.h	(working copy)
@@ -521,7 +521,7 @@
     locale		_M_ios_locale;
 
     void
-    _M_init() throw ();
+    _M_init() throw();
 
   public:
 
@@ -680,7 +680,7 @@
      *  with imbue_event.
     */
     locale
-    imbue(const locale& __loc) throw ();
+    imbue(const locale& __loc) throw();
 
     /**
      *  @brief  Locale access
Index: libsupc++/pbase_type_info.cc
===================================================================
--- libsupc++/pbase_type_info.cc	(revision 156820)
+++ libsupc++/pbase_type_info.cc	(working copy)
@@ -1,4 +1,5 @@
-// Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2007, 2009
+// Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2007, 
+// 2009, 2010
 // Free Software Foundation
 //
 // This file is part of GCC.
@@ -37,8 +38,11 @@
 {
   if (*this == *thr_type)
     return true;      // same type
+
+#ifdef __GXX_RTTI
   if (typeid (*this) != typeid (*thr_type))
     return false;     // not both same kind of pointers
+#endif
   
   if (!(outer & 1))
     // We're not the same and our outer pointers are not all const qualified
Index: libsupc++/pointer_type_info.cc
===================================================================
--- libsupc++/pointer_type_info.cc	(revision 156820)
+++ libsupc++/pointer_type_info.cc	(working copy)
@@ -1,4 +1,5 @@
-// Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2007, 2009
+// Copyright (C) 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2007,
+// 2009, 2010
 // Free Software Foundation
 //
 // This file is part of GCC.
@@ -41,11 +42,13 @@
                  void **thr_obj,
                  unsigned outer) const
 {
+#ifdef __GXX_RTTI
   if (outer < 2 && *__pointee == typeid (void))
     {
       // conversion to void
       return !thrown_type->__pointee->__is_function_p ();
     }
+#endif
   
   return __pbase_type_info::__pointer_catch (thrown_type, thr_obj, outer);
 }
Index: libsupc++/eh_personality.cc
===================================================================
--- libsupc++/eh_personality.cc	(revision 156820)
+++ libsupc++/eh_personality.cc	(working copy)
@@ -1,5 +1,5 @@
 // -*- C++ -*- The GNU C++ exception personality routine.
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of GCC.
@@ -549,6 +549,7 @@
       else if (!foreign_exception)
 	thrown_ptr = __get_object_from_ue (ue_header);
 #else
+#ifdef __GXX_RTTI
       // During forced unwinding, match a magic exception type.
       if (actions & _UA_FORCE_UNWIND)
 	{
@@ -561,6 +562,7 @@
 	  throw_type = &typeid(abi::__foreign_exception);
 	}
       else
+#endif
         {
           thrown_ptr = __get_object_from_ue (ue_header);
           throw_type = __get_exception_header_from_obj
@@ -771,7 +773,7 @@
       // If the exception spec allows std::bad_exception, throw that.
       // We don't have a thrown object to compare against, but since
       // bad_exception doesn't have virtual bases, that's OK; just pass 0.
-#ifdef __EXCEPTIONS  
+#if defined(__EXCEPTIONS) && defined(__GXX_RTTI)
       const std::type_info &bad_exc = typeid (std::bad_exception);
       if (check_exception_spec (&info, &bad_exc, 0, xh_switch_value))
 	throw std::bad_exception();
Index: testsuite/17_intro/headers/c++200x/all_no_rtti.cc
===================================================================
--- testsuite/17_intro/headers/c++200x/all_no_rtti.cc	(revision 0)
+++ testsuite/17_intro/headers/c++200x/all_no_rtti.cc	(revision 0)
@@ -0,0 +1,21 @@
+// { dg-do compile }
+// { dg-options "-std=gnu++0x -fno-rtti" }
+
+// Copyright (C) 2010 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library.  This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING3.  If not see
+// <http://www.gnu.org/licenses/>.
+
+#include <bits/extc++.h>
Index: testsuite/17_intro/headers/c++1998/all_no_rtti.cc
===================================================================
--- testsuite/17_intro/headers/c++1998/all_no_rtti.cc	(revision 0)
+++ testsuite/17_intro/headers/c++1998/all_no_rtti.cc	(revision 0)
@@ -0,0 +1,21 @@
+// { dg-do compile }
+// { dg-options "-fno-rtti" }
+
+// Copyright (C) 2010 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library.  This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 3, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING3.  If not see
+// <http://www.gnu.org/licenses/>.
+
+#include <bits/extc++.h>
Index: config/locale/darwin/ctype_members.cc
===================================================================
--- config/locale/darwin/ctype_members.cc	(revision 156820)
+++ config/locale/darwin/ctype_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::ctype implementation details, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -55,7 +55,7 @@
 
 #ifdef _GLIBCXX_USE_WCHAR_T  
   ctype<wchar_t>::__wmask_type
-  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const
+  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const throw()
   {
     // Darwin uses the same codes for 'char' as 'wchar_t', so this routine
     // never gets called.
@@ -150,7 +150,7 @@
   }
 
   void
-  ctype<wchar_t>::_M_initialize_ctype()
+  ctype<wchar_t>::_M_initialize_ctype() throw()
   {
     wint_t __i;
     for (__i = 0; __i < 128; ++__i)
Index: config/locale/gnu/collate_members.cc
===================================================================
--- config/locale/gnu/collate_members.cc	(revision 156820)
+++ config/locale/gnu/collate_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::collate implementation details, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2005, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2005, 2009, 2010 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -37,7 +37,8 @@
   // be put there instead of here.
   template<>
     int 
-    collate<char>::_M_compare(const char* __one, const char* __two) const
+    collate<char>::_M_compare(const char* __one, 
+			      const char* __two) const throw()
     { 
       int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate);
       return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0);
@@ -46,14 +47,14 @@
   template<>
     size_t
     collate<char>::_M_transform(char* __to, const char* __from, 
-				size_t __n) const 
+				size_t __n) const throw()
     { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); }
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   template<>
     int 
     collate<wchar_t>::_M_compare(const wchar_t* __one, 
-				 const wchar_t* __two) const
+				 const wchar_t* __two) const throw()
     {
       int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate);
       return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0);
@@ -62,7 +63,7 @@
   template<>
     size_t
     collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from,
-				   size_t __n) const
+				   size_t __n) const throw()
     { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
 #endif
 
Index: config/locale/gnu/ctype_members.cc
===================================================================
--- config/locale/gnu/ctype_members.cc	(revision 156820)
+++ config/locale/gnu/ctype_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::ctype implementation details, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -55,7 +55,7 @@
 
 #ifdef _GLIBCXX_USE_WCHAR_T  
   ctype<wchar_t>::__wmask_type
-  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const
+  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const throw()
   {
     __wmask_type __ret;
     switch (__m)
@@ -267,7 +267,7 @@
   }
 
   void
-  ctype<wchar_t>::_M_initialize_ctype()
+  ctype<wchar_t>::_M_initialize_ctype() throw()
   {
 #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
     __c_locale __old = __uselocale(_M_c_locale_ctype);
Index: config/locale/gnu/c_locale.cc
===================================================================
--- config/locale/gnu/c_locale.cc	(revision 156820)
+++ config/locale/gnu/c_locale.cc	(working copy)
@@ -1,6 +1,6 @@
 // Wrapper for underlying C-language localization -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -40,7 +40,7 @@
   template<>
     void
     __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, 
-		   const __c_locale& __cloc)
+		   const __c_locale& __cloc) throw()
     {
       char* __sanity;
       __v = __strtof_l(__s, &__sanity, __cloc);
@@ -67,7 +67,7 @@
   template<>
     void
     __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, 
-		   const __c_locale& __cloc)
+		   const __c_locale& __cloc) throw()
     {
       char* __sanity;
       __v = __strtod_l(__s, &__sanity, __cloc);
@@ -94,7 +94,7 @@
   template<>
     void
     __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err,
-		   const __c_locale& __cloc)
+		   const __c_locale& __cloc) throw()
     {
       char* __sanity;
 #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
@@ -145,7 +145,7 @@
   }
 
   __c_locale
-  locale::facet::_S_clone_c_locale(__c_locale& __cloc)
+  locale::facet::_S_clone_c_locale(__c_locale& __cloc) throw()
   { return __duplocale(__cloc); }
 
   __c_locale
Index: config/locale/gnu/monetary_members.cc
===================================================================
--- config/locale/gnu/monetary_members.cc	(revision 156820)
+++ config/locale/gnu/monetary_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::moneypunct implementation details, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -37,7 +37,8 @@
   // Construct and return valid pattern consisting of some combination of:
   // space none symbol sign value
   money_base::pattern
-  money_base::_S_construct_pattern(char __precedes, char __space, char __posn)
+  money_base::_S_construct_pattern(char __precedes, char __space, 
+				   char __posn) throw()
   { 
     pattern __ret;
 
Index: config/locale/gnu/time_members.cc
===================================================================
--- config/locale/gnu/time_members.cc	(revision 156820)
+++ config/locale/gnu/time_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::time_get, std::time_put implementation, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -39,7 +39,7 @@
     void
     __timepunct<char>::
     _M_put(char* __s, size_t __maxlen, const char* __format, 
-	   const tm* __tm) const
+	   const tm* __tm) const throw()
     {
 #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
       const size_t __len = __strftime_l(__s, __maxlen, __format, __tm,
@@ -195,7 +195,7 @@
     void
     __timepunct<wchar_t>::
     _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, 
-	   const tm* __tm) const
+	   const tm* __tm) const throw()
     {
 #if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ > 2)
       const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm,
Index: config/locale/ieee_1003.1-2001/c_locale.cc
===================================================================
--- config/locale/ieee_1003.1-2001/c_locale.cc	(revision 156820)
+++ config/locale/ieee_1003.1-2001/c_locale.cc	(working copy)
@@ -1,6 +1,6 @@
 // Wrapper for underlying C-language localization -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2009, 2010 Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -41,7 +41,7 @@
   { }
 
   __c_locale
-  locale::facet::_S_clone_c_locale(__c_locale&)
+  locale::facet::_S_clone_c_locale(__c_locale&) throw()
   { return __c_locale(); }
 
   template<> 
Index: config/locale/generic/collate_members.cc
===================================================================
--- config/locale/generic/collate_members.cc	(revision 156820)
+++ config/locale/generic/collate_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::collate implementation details, generic version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -38,7 +38,8 @@
   // be put there instead of here.
   template<>
     int 
-    collate<char>::_M_compare(const char* __one, const char* __two) const
+    collate<char>::_M_compare(const char* __one, 
+			      const char* __two) const throw()
     { 
       int __cmp = strcoll(__one, __two);
       return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0);
@@ -47,14 +48,14 @@
   template<>
     size_t
     collate<char>::_M_transform(char* __to, const char* __from, 
-				size_t __n) const
+				size_t __n) const throw()
     { return strxfrm(__to, __from, __n); }
 
 #ifdef _GLIBCXX_USE_WCHAR_T
   template<>
     int 
     collate<wchar_t>::_M_compare(const wchar_t* __one, 
-				 const wchar_t* __two) const
+				 const wchar_t* __two) const throw()
     {
       int __cmp = wcscoll(__one, __two);
       return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0);
@@ -63,7 +64,7 @@
   template<>
     size_t
     collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from,
-				   size_t __n) const
+				   size_t __n) const throw()
     { return wcsxfrm(__to, __from, __n); }
 #endif
 
Index: config/locale/generic/ctype_members.cc
===================================================================
--- config/locale/generic/ctype_members.cc	(revision 156820)
+++ config/locale/generic/ctype_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::ctype implementation details, generic version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -53,7 +53,7 @@
 
 #ifdef _GLIBCXX_USE_WCHAR_T  
   ctype<wchar_t>::__wmask_type
-  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const
+  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const throw()
   {
     __wmask_type __ret;
     switch (__m)
@@ -239,7 +239,7 @@
   }
 
   void
-  ctype<wchar_t>::_M_initialize_ctype()
+  ctype<wchar_t>::_M_initialize_ctype() throw()
   {
     wint_t __i;
     for (__i = 0; __i < 128; ++__i)
Index: config/locale/generic/c_locale.cc
===================================================================
--- config/locale/generic/c_locale.cc	(revision 156820)
+++ config/locale/generic/c_locale.cc	(working copy)
@@ -1,6 +1,6 @@
 // Wrapper for underlying C-language localization -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -46,8 +46,8 @@
 
   template<>
     void
-    __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, 
-		   const __c_locale&) 	      
+    __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err,
+		   const __c_locale&) throw()
     {
       // Assumes __s formatted for "C" locale.
       char* __old = setlocale(LC_ALL, NULL);
@@ -111,8 +111,8 @@
 
   template<>
     void
-    __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err, 
-		   const __c_locale&) 
+    __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err,
+		   const __c_locale&) throw()
     {
       // Assumes __s formatted for "C" locale.
       char* __old = setlocale(LC_ALL, NULL);
@@ -139,7 +139,7 @@
 #if __DBL_HAS_INFINITY__
 	       __v == numeric_limits<double>::infinity()
 	       || __v == -numeric_limits<double>::infinity())
-#else          
+#else
 	       (__v > 1.0 || __v < -1.0) && errno == ERANGE)
 #endif
 	{
@@ -156,8 +156,8 @@
 
   template<>
     void
-    __convert_to_v(const char* __s, long double& __v, 
-		   ios_base::iostate& __err, const __c_locale&) 
+    __convert_to_v(const char* __s, long double& __v,
+		   ios_base::iostate& __err, const __c_locale&) throw()
     {
       // Assumes __s formatted for "C" locale.
       char* __old = setlocale(LC_ALL, NULL);
@@ -189,10 +189,10 @@
 	}
        else if (
 #if __LDBL_HAS_INFINITY__
-	        __v == numeric_limits<long double>::infinity()
-	        || __v == -numeric_limits<long double>::infinity())
+		__v == numeric_limits<long double>::infinity()
+		|| __v == -numeric_limits<long double>::infinity())
 #else
-	        (__v > 1.0l || __v < -1.0l) && errno == ERANGE)
+		(__v > 1.0l || __v < -1.0l) && errno == ERANGE)
 #endif
 	{
 	  if (__v > 0.0l)
@@ -207,7 +207,7 @@
     }
 
   void
-  locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s, 
+  locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s,
 				    __c_locale)
   {
     // Currently, the generic model only supports the "C" locale.
@@ -223,7 +223,7 @@
   { __cloc = NULL; }
 
   __c_locale
-  locale::facet::_S_clone_c_locale(__c_locale&)
+  locale::facet::_S_clone_c_locale(__c_locale&) throw()
   { return __c_locale(); }
 
   __c_locale
@@ -236,10 +236,10 @@
 
   const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
     {
-      "LC_CTYPE", 
+      "LC_CTYPE",
       "LC_NUMERIC",
-      "LC_TIME",   
-      "LC_COLLATE", 
+      "LC_TIME",
+      "LC_COLLATE",
       "LC_MONETARY",
       "LC_MESSAGES"
     };
Index: config/locale/generic/monetary_members.cc
===================================================================
--- config/locale/generic/monetary_members.cc	(revision 156820)
+++ config/locale/generic/monetary_members.cc	(working copy)
@@ -1,6 +1,7 @@
 // std::moneypunct implementation details, generic version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2009, 2010
+// Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 // software; you can redistribute it and/or modify it under the
@@ -35,10 +36,10 @@
   // Construct and return valid pattern consisting of some combination of:
   // space none symbol sign value
   money_base::pattern
-  money_base::_S_construct_pattern(char, char, char)
+  money_base::_S_construct_pattern(char, char, char) throw()
   { return _S_default_pattern; }
 
-  template<> 
+  template<>
     void
     moneypunct<char, true>::_M_initialize_moneypunct(__c_locale, const char*)
     {
@@ -64,7 +65,7 @@
 	_M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
     }
 
-  template<> 
+  template<>
     void
     moneypunct<char, false>::_M_initialize_moneypunct(__c_locale, const char*)
     {
@@ -90,18 +91,18 @@
 	_M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
     }
 
-  template<> 
+  template<>
     moneypunct<char, true>::~moneypunct()
     { delete _M_data; }
 
-  template<> 
+  template<>
     moneypunct<char, false>::~moneypunct()
     { delete _M_data; }
 
 #ifdef _GLIBCXX_USE_WCHAR_T
-  template<> 
+  template<>
     void
-    moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale, 
+    moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale,
 							const char*)
     {
       // "C" locale
@@ -115,9 +116,9 @@
       _M_data->_M_curr_symbol = L"";
       _M_data->_M_curr_symbol_size = 0;
       _M_data->_M_positive_sign = L"";
-      _M_data->_M_positive_sign_size = 0;      
+      _M_data->_M_positive_sign_size = 0;
       _M_data->_M_negative_sign = L"";
-      _M_data->_M_negative_sign_size = 0;      
+      _M_data->_M_negative_sign_size = 0;
       _M_data->_M_frac_digits = 0;
       _M_data->_M_pos_format = money_base::_S_default_pattern;
       _M_data->_M_neg_format = money_base::_S_default_pattern;
@@ -127,9 +128,9 @@
 	  static_cast<wchar_t>(money_base::_S_atoms[__i]);
     }
 
-  template<> 
+  template<>
     void
-    moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale, 
+    moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale,
 							 const char*)
     {
       // "C" locale
@@ -155,11 +156,11 @@
 	  static_cast<wchar_t>(money_base::_S_atoms[__i]);
     }
 
-  template<> 
+  template<>
     moneypunct<wchar_t, true>::~moneypunct()
     { delete _M_data; }
 
-  template<> 
+  template<>
     moneypunct<wchar_t, false>::~moneypunct()
     { delete _M_data; }
 #endif
Index: config/locale/generic/time_members.cc
===================================================================
--- config/locale/generic/time_members.cc	(revision 156820)
+++ config/locale/generic/time_members.cc	(working copy)
@@ -1,6 +1,6 @@
 // std::time_get, std::time_put implementation, generic version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -39,8 +39,8 @@
   template<>
     void
     __timepunct<char>::
-    _M_put(char* __s, size_t __maxlen, const char* __format, 
-	   const tm* __tm) const
+    _M_put(char* __s, size_t __maxlen, const char* __format,
+	   const tm* __tm) const throw()
     {
       char* __old = setlocale(LC_ALL, NULL);
       const size_t __llen = strlen(__old) + 1;
@@ -55,10 +55,10 @@
 	__s[0] = '\0';
     }
 
-  template<> 
+  template<>
     void
     __timepunct<char>::_M_initialize_timepunct(__c_locale)
-    { 
+    {
       // "C" locale.
       if (!_M_data)
 	_M_data = new __timepunct_cache<char>;
@@ -72,7 +72,7 @@
       _M_data->_M_am = "AM";
       _M_data->_M_pm = "PM";
       _M_data->_M_am_pm_format = "";
-	  
+
       // Day names, starting with "C"'s Sunday.
       _M_data->_M_day1 = "Sunday";
       _M_data->_M_day2 = "Monday";
@@ -124,8 +124,8 @@
   template<>
     void
     __timepunct<wchar_t>::
-    _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format, 
-	   const tm* __tm) const
+    _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format,
+	   const tm* __tm) const throw()
     {
       char* __old = setlocale(LC_ALL, NULL);
       const size_t __llen = strlen(__old) + 1;
@@ -137,10 +137,10 @@
       delete [] __sav;
       // Make sure __s is null terminated.
       if (__len == 0)
-	__s[0] = L'\0';      
+	__s[0] = L'\0';
     }
 
-  template<> 
+  template<>
     void
     __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale)
     {
Index: config/io/basic_file_stdio.cc
===================================================================
--- config/io/basic_file_stdio.cc	(revision 156820)
+++ config/io/basic_file_stdio.cc	(working copy)
@@ -1,6 +1,6 @@
 // Wrapper of C-language FILE struct -*- C++ -*-
 
-// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2009
+// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2009, 2010
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -182,7 +182,7 @@
 _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // Definitions for __basic_file<char>.
-  __basic_file<char>::__basic_file(__c_lock* /*__lock*/) 
+  __basic_file<char>::__basic_file(__c_lock* /*__lock*/) throw()
   : _M_cfile(NULL), _M_cfile_created(false) { }
 
   __basic_file<char>::~__basic_file()

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]