OSDN Git Service

2003-07-16 Benjamin Kosnik <bkoz@redhat.com>
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 17 Jul 2003 04:01:28 +0000 (04:01 +0000)
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 17 Jul 2003 04:01:28 +0000 (04:01 +0000)
* include/ext/pod_char_traits.h: Add state template argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69492 138bc75d-0d04-0410-961f-82ee72b054a4

libstdc++-v3/ChangeLog
libstdc++-v3/include/ext/pod_char_traits.h

index 6510aa0..cf0e5e3 100644 (file)
@@ -1,5 +1,9 @@
 2003-07-16  Benjamin Kosnik  <bkoz@redhat.com>
 
+       * include/ext/pod_char_traits.h: Add state template argument.
+
+2003-07-16  Benjamin Kosnik  <bkoz@redhat.com>
+
        * include/bits/locale_facets.h (__num_base::_S_atoms_in): Add -+xX.
        (num_get::_M_convert_int): To _M_insert_int.
        (num_get::_M_convert_float): To _M_insert_float.        
index 0145a48..04bc0dd 100644 (file)
 
 namespace __gnu_cxx
 {
-  template<typename V, typename I>
+  template<typename V, typename I, typename S = mbstate_t>
     struct character
     {
       typedef V        value_type;
       typedef I        int_type;
+      typedef S        state_type;
       value_type       value;
     };
   
@@ -59,19 +60,18 @@ namespace __gnu_cxx
 namespace std
 {
   // Provide std::char_traits specialization.
-  template<typename V, typename I>
-    struct char_traits<__gnu_cxx::character<V, I> >
+  template<typename V, typename I, typename S>
+    struct char_traits<__gnu_cxx::character<V, I, S> >
     {
-      typedef __gnu_cxx::character<V, I>       char_type;
+      typedef __gnu_cxx::character<V, I, S>    char_type;
 
       // NB: This type should be bigger than char_type, so as to
       // properly hold EOF values in addition to the full range of
       // char_type values.
       typedef typename char_type::int_type     int_type;
-
+      typedef typename char_type::state_type   state_type;
       typedef streampos                        pos_type;
       typedef streamoff                        off_type;
-      typedef mbstate_t                        state_type;
       
       static void 
       assign(char_type& __c1, const char_type& __c2)