]> gcc.gnu.org Git - gcc.git/commitdiff
PR libstdc++/28080 (partial)
authorPaolo Carlini <pcarlini@suse.de>
Mon, 26 Feb 2007 09:36:39 +0000 (09:36 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Mon, 26 Feb 2007 09:36:39 +0000 (09:36 +0000)
2007-02-26  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/28080 (partial)
* include/std/bitset: Do not include <istream> and <ostream>,
<ios> is enough.
* include/std/iomanip: Do not include the whole <istream>,
<ios> is enough; do not include <functional>; reformat.
* include/std/functional: Do not include <cstddef>.
* include/std/list: Do not include <bits/stl_uninitialized.h>.
* include/std/numeric: Do not include the whole <iterator> and
<bits/stl_function.h>.
* include/std/valarray: Do not include <numeric>.
* include/bits/stl_numeric.h: Include <bits/concept_check.h>.
* src/iostream-inst.cc: Include <istream>.
* include/ext/functional: Include <cstddef>.
* testsuite/util/testsuite_hooks.h: Do not include <locale>,
<ctime> is enough; qualify tm.
* testsuite/util/testsuite_hooks.cc: Qualify tm.

2007-02-26  Paolo Carlini  <pcarlini@suse.de>

* include/bits/locale_facets.h (class ctype_byname<char>,
class ctype_byname<wchar_t>): Declare.
* src/ctype.cc (ctype_byname<wchar_t>::ctype_byname(const char*,
size_t), ctype_byname<wchar_t>::~ctype_byname): Define.
* config/locale/generic/ctype_members.cc (ctype_byname<char>::
ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
Likewise.
* config/locale/gnu/ctype_members.cc (ctype_byname<char>::
ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
Likewise.
* config/locale/darwin/ctype_members.cc (ctype_byname<char>::
ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
Likewise.
* testsuite/22_locale/headers/locale/synopsis.cc: Remove xfail.

From-SVN: r122329

18 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/config/locale/darwin/ctype_members.cc
libstdc++-v3/config/locale/generic/ctype_members.cc
libstdc++-v3/config/locale/gnu/ctype_members.cc
libstdc++-v3/include/bits/locale_facets.h
libstdc++-v3/include/bits/stl_numeric.h
libstdc++-v3/include/ext/functional
libstdc++-v3/include/std/bitset
libstdc++-v3/include/std/functional
libstdc++-v3/include/std/iomanip
libstdc++-v3/include/std/list
libstdc++-v3/include/std/numeric
libstdc++-v3/include/std/valarray
libstdc++-v3/src/ctype.cc
libstdc++-v3/src/iostream-inst.cc
libstdc++-v3/testsuite/22_locale/headers/locale/synopsis.cc
libstdc++-v3/testsuite/util/testsuite_hooks.cc
libstdc++-v3/testsuite/util/testsuite_hooks.h

index 5b7332a1d0d954f9dfdeaa1e626cb2a03c4cfe58..9d5103a273ad5d0aef60d8197aa9d71a6207e54e 100644 (file)
@@ -1,3 +1,39 @@
+2007-02-26  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28080 (partial)
+       * include/std/bitset: Do not include <istream> and <ostream>,
+       <ios> is enough.
+       * include/std/iomanip: Do not include the whole <istream>,
+       <ios> is enough; do not include <functional>; reformat.
+       * include/std/functional: Do not include <cstddef>.
+       * include/std/list: Do not include <bits/stl_uninitialized.h>.
+       * include/std/numeric: Do not include the whole <iterator> and
+       <bits/stl_function.h>.
+       * include/std/valarray: Do not include <numeric>.
+       * include/bits/stl_numeric.h: Include <bits/concept_check.h>.
+       * src/iostream-inst.cc: Include <istream>.
+       * include/ext/functional: Include <cstddef>.
+       * testsuite/util/testsuite_hooks.h: Do not include <locale>,
+       <ctime> is enough; qualify tm.
+       * testsuite/util/testsuite_hooks.cc: Qualify tm.
+
+2007-02-26  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.h (class ctype_byname<char>,
+       class ctype_byname<wchar_t>): Declare.
+       * src/ctype.cc (ctype_byname<wchar_t>::ctype_byname(const char*,
+       size_t), ctype_byname<wchar_t>::~ctype_byname): Define.
+       * config/locale/generic/ctype_members.cc (ctype_byname<char>::
+       ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
+       Likewise.
+       * config/locale/gnu/ctype_members.cc (ctype_byname<char>::
+       ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
+       Likewise.
+       * config/locale/darwin/ctype_members.cc (ctype_byname<char>::
+       ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
+       Likewise.
+       * testsuite/22_locale/headers/locale/synopsis.cc: Remove xfail.
+
 2007-02-25  Paolo Carlini  <pcarlini@suse.de>
 
        * testsuite/19_diagnostics/headers/cerrno/macros.cc: Include
index c2a5c4ac500a2dad2765e911892b36013c113d69..813ec7979dbce0f7ff0720e09a4939a4ad9796ed 100644 (file)
@@ -1,6 +1,7 @@
 // std::ctype implementation details, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -40,16 +41,19 @@ namespace std
 {
   // NB: The other ctype<char> specializations are in src/locale.cc and
   // various /config/os/* files.
-  template<>
-    ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
-    : ctype<char>(0, false, __refs) 
-    {          
-      if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
-       {
-         this->_S_destroy_c_locale(this->_M_c_locale_ctype);
-         this->_S_create_c_locale(this->_M_c_locale_ctype, __s); 
-       }
-    }
+
+  ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
+  : ctype<char>(0, false, __refs) 
+  {            
+    if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
+      {
+       this->_S_destroy_c_locale(this->_M_c_locale_ctype);
+       this->_S_create_c_locale(this->_M_c_locale_ctype, __s); 
+      }
+  }
+
+  ctype_byname<char>::~ctype_byname()
+  { }
 
 #ifdef _GLIBCXX_USE_WCHAR_T  
   ctype<wchar_t>::__wmask_type
index 3af4440da8f69f4403c4abef224b1f5690382003..0520c223874c380c13994412e31f8913110cfe9a 100644 (file)
@@ -1,6 +1,7 @@
 // std::ctype implementation details, generic version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -39,16 +40,18 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // NB: The other ctype<char> specializations are in src/locale.cc and
   // various /config/os/* files.
-  template<>
-    ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
-    : ctype<char>(0, false, __refs) 
-    {  
-      if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
-       {
-         this->_S_destroy_c_locale(this->_M_c_locale_ctype);
-         this->_S_create_c_locale(this->_M_c_locale_ctype, __s); 
-       }
-    }
+  ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
+  : ctype<char>(0, false, __refs) 
+  {    
+    if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
+      {
+       this->_S_destroy_c_locale(this->_M_c_locale_ctype);
+       this->_S_create_c_locale(this->_M_c_locale_ctype, __s); 
+      }
+  }
+
+  ctype_byname<char>::~ctype_byname()
+  { }
 
 #ifdef _GLIBCXX_USE_WCHAR_T  
   ctype<wchar_t>::__wmask_type
index cb2887d9b98c92839ee5d04343926040d9fec2c4..3aec312f89b378c7fbedb0e17e2a1f63e478c489 100644 (file)
@@ -1,6 +1,7 @@
 // std::ctype implementation details, GNU version -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -40,19 +41,21 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   // NB: The other ctype<char> specializations are in src/locale.cc and
   // various /config/os/* files.
-  template<>
-    ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
-    : ctype<char>(0, false, __refs) 
-    {          
-      if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
-       {
-         this->_S_destroy_c_locale(this->_M_c_locale_ctype);
-         this->_S_create_c_locale(this->_M_c_locale_ctype, __s); 
-         this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper;
-         this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower;
-         this->_M_table = this->_M_c_locale_ctype->__ctype_b;
-       }
-    }
+  ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
+  : ctype<char>(0, false, __refs) 
+  {            
+    if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
+      {
+       this->_S_destroy_c_locale(this->_M_c_locale_ctype);
+       this->_S_create_c_locale(this->_M_c_locale_ctype, __s); 
+       this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper;
+       this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower;
+       this->_M_table = this->_M_c_locale_ctype->__ctype_b;
+      }
+  }
+
+  ctype_byname<char>::~ctype_byname()
+  { }
 
 #ifdef _GLIBCXX_USE_WCHAR_T  
   ctype<wchar_t>::__wmask_type
index e31ae1751cc53a1f8b4139b2f1ce735d6b392528..0f7cdd3a3ff53fc91b4c1cd83c47958ace186b14 100644 (file)
@@ -1,6 +1,7 @@
 // Locale support -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+// 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -1510,7 +1511,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     class ctype_byname : public ctype<_CharT>
     {
     public:
-      typedef _CharT           char_type;
+      typedef typename ctype<_CharT>::mask  mask;
 
       explicit
       ctype_byname(const char* __s, size_t __refs = 0);
@@ -1522,10 +1523,30 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
 
   /// 22.2.1.4  Class ctype_byname specializations.
   template<>
-    ctype_byname<char>::ctype_byname(const char*, size_t refs);
+    class ctype_byname<char> : public ctype<char>
+    {
+    public:
+      explicit
+      ctype_byname(const char* __s, size_t __refs = 0);
 
+    protected:
+      virtual
+      ~ctype_byname();
+    };
+
+#ifdef _GLIBCXX_USE_WCHAR_T
   template<>
-    ctype_byname<wchar_t>::ctype_byname(const char*, size_t refs);
+    class ctype_byname<wchar_t> : public ctype<wchar_t>
+    {
+    public:
+      explicit
+      ctype_byname(const char* __s, size_t __refs = 0);
+
+    protected:
+      virtual
+      ~ctype_byname();
+    };
+#endif
 
 _GLIBCXX_END_NAMESPACE
 
index 82bee216d102d137fe5ea0d606fd97bfa53d4027..2c44b180840b8dbe2e803adc23bfe3d38159b852 100644 (file)
@@ -1,6 +1,7 @@
 // Numeric functions implementation -*- C++ -*-
 
-// Copyright (C) 2001, 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -61,6 +62,7 @@
 #ifndef _STL_NUMERIC_H
 #define _STL_NUMERIC_H 1
 
+#include <bits/concept_check.h>
 #include <debug/debug.h>
 
 _GLIBCXX_BEGIN_NAMESPACE(std)
index f159e11d639959c9c6a882fa5e8a6611a7a956ba..bc4ea5beb9edd5f4ed4a3f8d139d76c59457feec 100644 (file)
@@ -1,6 +1,7 @@
 // Functional extensions -*- C++ -*-
 
-// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -64,6 +65,7 @@
 #pragma GCC system_header
 
 #include <functional>
+#include <cstddef>
 
 _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
 
index 860e775cc6b42bbf3794ae9523e98ee7e79e2983..ec098175012fcc153073bcfe4ff3d6ffb3bef84e 100644 (file)
@@ -1,6 +1,6 @@
 // <bitset> -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
 
 #include <cstddef>     // For size_t
 #include <cstring>     // For memset
-#include <limits>      // For numeric_limits
 #include <string>
 #include <bits/functexcept.h>   // For invalid_argument, out_of_range,
                                 // overflow_error
-#include <ostream>     // For ostream (operator<<)
-#include <istream>     // For istream (operator>>)
+#include <ios>
 
-#define _GLIBCXX_BITSET_BITS_PER_WORD  numeric_limits<unsigned long>::digits
+#define _GLIBCXX_BITSET_BITS_PER_WORD  (__CHAR_BIT__ * sizeof(unsigned long))
 #define _GLIBCXX_BITSET_WORDS(__n) \
  ((__n) < 1 ? 0 : ((__n) + _GLIBCXX_BITSET_BITS_PER_WORD - 1) \
                   / _GLIBCXX_BITSET_BITS_PER_WORD)
index feadaa2252ad97bf54dbf46bb605081ea74439ce..18413142161fa4add3cb5ab2a07e940a09f82f56 100644 (file)
@@ -1,6 +1,7 @@
 // <functional> -*- C++ -*-
 
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -51,7 +52,6 @@
 #pragma GCC system_header
 
 #include <bits/c++config.h>
-#include <cstddef>
 #include <bits/stl_function.h>
 
 #endif /* _GLIBCXX_FUNCTIONAL */
index 13b21d579bd9bac7bb19db7719a62cbed3157df1..a1bb4149304d6ad16e4ec541bfad88d517d739c0 100644 (file)
@@ -1,6 +1,7 @@
 // Standard stream manipulators -*- C++ -*-
 
-// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2005
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+// 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -42,8 +43,7 @@
 #pragma GCC system_header
 
 #include <bits/c++config.h>
-#include <istream>
-#include <functional>
+#include <ios>
 
 _GLIBCXX_BEGIN_NAMESPACE(std)
 
@@ -68,16 +68,16 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 
   template<typename _CharT, typename _Traits>
-    inline basic_istream<_CharT,_Traits>& 
-    operator>>(basic_istream<_CharT,_Traits>& __is, _Resetiosflags __f)
+    inline basic_istream<_CharT, _Traits>& 
+    operator>>(basic_istream<_CharT, _Traits>& __is, _Resetiosflags __f)
     { 
       __is.setf(ios_base::fmtflags(0), __f._M_mask); 
       return __is; 
     }
 
   template<typename _CharT, typename _Traits>
-    inline basic_ostream<_CharT,_Traits>& 
-    operator<<(basic_ostream<_CharT,_Traits>& __os, _Resetiosflags __f)
+    inline basic_ostream<_CharT, _Traits>& 
+    operator<<(basic_ostream<_CharT, _Traits>& __os, _Resetiosflags __f)
     { 
       __os.setf(ios_base::fmtflags(0), __f._M_mask); 
       return __os; 
@@ -102,15 +102,15 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 
   template<typename _CharT, typename _Traits>
-    inline basic_istream<_CharT,_Traits>& 
-    operator>>(basic_istream<_CharT,_Traits>& __is, _Setiosflags __f)
+    inline basic_istream<_CharT, _Traits>& 
+    operator>>(basic_istream<_CharT, _Traits>& __is, _Setiosflags __f)
     { 
       __is.setf(__f._M_mask); 
       return __is; 
     }
 
   template<typename _CharT, typename _Traits>
-    inline basic_ostream<_CharT,_Traits>& 
+    inline basic_ostream<_CharT, _Traits>& 
     operator<<(basic_ostream<_CharT,_Traits>& __os, _Setiosflags __f)
     { 
       __os.setf(__f._M_mask); 
@@ -137,19 +137,19 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 
   template<typename _CharT, typename _Traits>
-    inline basic_istream<_CharT,_Traits>& 
-    operator>>(basic_istream<_CharT,_Traits>& __is, _Setbase __f)
+    inline basic_istream<_CharT, _Traits>& 
+    operator>>(basic_istream<_CharT, _Traits>& __is, _Setbase __f)
     {
       __is.setf(__f._M_base ==  8 ? ios_base::oct : 
-             __f._M_base == 10 ? ios_base::dec : 
-             __f._M_base == 16 ? ios_base::hex : 
-             ios_base::fmtflags(0), ios_base::basefield);
+               __f._M_base == 10 ? ios_base::dec : 
+               __f._M_base == 16 ? ios_base::hex : 
+               ios_base::fmtflags(0), ios_base::basefield);
       return __is; 
     }
   
   template<typename _CharT, typename _Traits>
-    inline basic_ostream<_CharT,_Traits>& 
-    operator<<(basic_ostream<_CharT,_Traits>& __os, _Setbase __f)
+    inline basic_ostream<_CharT, _Traits>& 
+    operator<<(basic_ostream<_CharT, _Traits>& __os, _Setbase __f)
     {
       __os.setf(__f._M_base ==  8 ? ios_base::oct : 
                __f._M_base == 10 ? ios_base::dec : 
@@ -179,16 +179,16 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
     }
 
   template<typename _CharT, typename _Traits>
-    inline basic_istream<_CharT,_Traits>& 
-    operator>>(basic_istream<_CharT,_Traits>& __is, _Setfill<_CharT> __f)
+    inline basic_istream<_CharT, _Traits>& 
+    operator>>(basic_istream<_CharT, _Traits>& __is, _Setfill<_CharT> __f)
     { 
       __is.fill(__f._M_c); 
       return __is; 
     }
 
   template<typename _CharT, typename _Traits>
-    inline basic_ostream<_CharT,_Traits>& 
-    operator<<(basic_ostream<_CharT,_Traits>& __os, _Setfill<_CharT> __f)
+    inline basic_ostream<_CharT, _Traits>& 
+    operator<<(basic_ostream<_CharT, _Traits>& __os, _Setfill<_CharT> __f)
     { 
       __os.fill(__f._M_c); 
       return __os; 
@@ -213,16 +213,16 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 
   template<typename _CharT, typename _Traits>
-    inline basic_istream<_CharT,_Traits>& 
-    operator>>(basic_istream<_CharT,_Traits>& __is, _Setprecision __f)
+    inline basic_istream<_CharT, _Traits>& 
+    operator>>(basic_istream<_CharT, _Traits>& __is, _Setprecision __f)
     { 
       __is.precision(__f._M_n); 
       return __is; 
     }
 
   template<typename _CharT, typename _Traits>
-    inline basic_ostream<_CharT,_Traits>& 
-    operator<<(basic_ostream<_CharT,_Traits>& __os, _Setprecision __f)
+    inline basic_ostream<_CharT, _Traits>& 
+    operator<<(basic_ostream<_CharT, _Traits>& __os, _Setprecision __f)
     { 
       __os.precision(__f._M_n); 
       return __os; 
@@ -247,16 +247,16 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   }
 
   template<typename _CharT, typename _Traits>
-    inline basic_istream<_CharT,_Traits>& 
-    operator>>(basic_istream<_CharT,_Traits>& __is, _Setw __f)
+    inline basic_istream<_CharT, _Traits>& 
+    operator>>(basic_istream<_CharT, _Traits>& __is, _Setw __f)
     { 
       __is.width(__f._M_n); 
       return __is; 
     }
 
   template<typename _CharT, typename _Traits>
-    inline basic_ostream<_CharT,_Traits>& 
-    operator<<(basic_ostream<_CharT,_Traits>& __os, _Setw __f)
+    inline basic_ostream<_CharT, _Traits>& 
+    operator<<(basic_ostream<_CharT, _Traits>& __os, _Setw __f)
     { 
       __os.width(__f._M_n); 
       return __os; 
index b46f65417ec618da01ed4cb247ad45b6abcf6754..0a1ce1376151fc7974d7b57c18a5924e9bad6d99 100644 (file)
@@ -1,6 +1,7 @@
 // <list> -*- C++ -*-
 
-// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -66,7 +67,6 @@
 #include <bits/stl_algobase.h>
 #include <bits/allocator.h>
 #include <bits/stl_construct.h>
-#include <bits/stl_uninitialized.h>
 #include <bits/stl_list.h>
 
 #ifndef _GLIBCXX_EXPORT_TEMPLATE
index 03f82dd6ab0c10304d8b68eaeeafb89b7023f049..55ab7a8e1ee84852fa4adbd55ed006a95787b2e4 100644 (file)
@@ -64,8 +64,7 @@
 
 #include <bits/c++config.h>
 #include <cstddef>
-#include <iterator>
-#include <bits/stl_function.h>
+#include <bits/stl_iterator_base_types.h>
 #include <bits/stl_numeric.h>
 
 #endif /* _GLIBCXX_NUMERIC */
index 50528bfa7fd2a1641b58d9b73e2edc7cd0127b61..6b9d63f03ce5ef8ddc8c12b8f1f8a6e23f529693 100644 (file)
@@ -1,6 +1,7 @@
 // The template and inlines for the -*- C++ -*- valarray class.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006, 2007
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+// 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -43,7 +44,6 @@
 #include <cstddef>
 #include <cmath>
 #include <cstdlib>
-#include <numeric>
 #include <algorithm>
 #include <debug/debug.h>
 
index 634c135b2f9b16378941f24878f527a9e622272f..71bf1e1116a08d21076b96ee40124b9647dbf01c 100644 (file)
@@ -1,4 +1,5 @@
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005,
+// 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -98,17 +99,20 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
   ctype<wchar_t>::~ctype() 
   { _S_destroy_c_locale(_M_c_locale_ctype); }
 
-  template<>
-    ctype_byname<wchar_t>::ctype_byname(const char* __s, size_t __refs)
-    : ctype<wchar_t>(__refs) 
-    {          
-      if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
-       {
-         this->_S_destroy_c_locale(this->_M_c_locale_ctype);
-         this->_S_create_c_locale(this->_M_c_locale_ctype, __s);
-         this->_M_initialize_ctype();
-       }
-    }
+  ctype_byname<wchar_t>::ctype_byname(const char* __s, size_t __refs)
+  : ctype<wchar_t>(__refs) 
+  {            
+    if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
+      {
+       this->_S_destroy_c_locale(this->_M_c_locale_ctype);
+       this->_S_create_c_locale(this->_M_c_locale_ctype, __s);
+       this->_M_initialize_ctype();
+      }
+  }
+
+  ctype_byname<wchar_t>::~ctype_byname() 
+  { }
+
 #endif
 
 _GLIBCXX_END_NAMESPACE
index 7e1df3d605ede66cac1fb03d26b5b28973e27ac2..5eef130a429c75329d7229799dd2bb13abb7a168 100644 (file)
@@ -1,6 +1,7 @@
 // Explicit instantiation file.
 
-// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2006
+// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+// 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -33,6 +34,7 @@
 //
 
 #include <iomanip>
+#include <istream>
 
 _GLIBCXX_BEGIN_NAMESPACE(std)
 
index a26eab1a70fff27eb34fd707b0ed3a2656952444..47a5653a06d0d5d2f8c3d76542cdea052618786a 100644 (file)
@@ -1,5 +1,4 @@
-// { dg-do compile { xfail *-*-* } }
-// { dg-excess-errors "" }
+// { dg-do compile }
 
 // Copyright (C) 2007 Free Software Foundation, Inc.
 //
index b649e9ba7d7e9b2e3725ea0f294891672b4234cc..bb63f68cd066b5d7d6865133168dd8348971b7c3 100644 (file)
@@ -2,7 +2,8 @@
 
 // Utility subroutines for the C++ library testsuite. 
 //
-// Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+// Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007
+// 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
@@ -314,11 +315,11 @@ namespace __gnu_test
   }
 
   // For use in 22_locale/time_get and time_put.
-  tm
+  std::tm
   test_tm(int sec, int min, int hour, int mday, int mon,
          int year, int wday, int yday, int isdst)
   {
-    static tm tmp;
+    static std::tm tmp;
     tmp.tm_sec = sec;
     tmp.tm_min = min;
     tmp.tm_hour = hour;
index b6c675b12e768621e0965a2603d060abdef9abe2..764c09ece31de87bc8dcbec73b2bca5ee4267911 100644 (file)
@@ -1,7 +1,7 @@
 // -*- C++ -*-
 // Utility subroutines for the C++ library testsuite. 
 //
-// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006
+// Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
 // Free Software Foundation, Inc.
 //
 // This file is part of the GNU ISO C++ Library.  This library is free
@@ -59,7 +59,8 @@
 #include <bits/c++config.h>
 #include <bits/functexcept.h>
 #include <cstddef>
-#include <locale>
+#include <ctime>
+
 #ifdef _GLIBCXX_HAVE_SYS_STAT_H
 #include <sys/stat.h>
 #endif
@@ -387,8 +388,8 @@ namespace __gnu_test
   };
 
   // For use in 22_locale/time_get and time_put.
-  tm test_tm(int sec, int min, int hour, int mday, int mon,
-            int year, int wday, int yday, int isdst);
+  std::tm test_tm(int sec, int min, int hour, int mday, int mon,
+                 int year, int wday, int yday, int isdst);
 
 } // namespace __gnu_test
 
This page took 0.095239 seconds and 5 git commands to generate.