Patchwork Fix libstdc++ doxygen page for basic_streambuf

login
register
mail settings
Submitter Jonathan Wakely
Date Feb. 20, 2013, 10:45 p.m.
Message ID <CAH6eHdRpYCmj3JkMiOm=r0-3hCRD4grX6Rh6UXCjBo3EGn8FOg@mail.gmail.com>
Download mbox | patch
Permalink /patch/222159/
State New
Headers show

Comments

Jonathan Wakely - Feb. 20, 2013, 10:45 p.m.
This removes an unclosed @{ group marker so that Doxygen doesn't put
half the members of basic_streambuf in the "Friends" section (see
http://stackoverflow.com/q/14988997/981959)

I also changed uses of __streambuf_type to basic_streambuf, which
makes the Doxygen page look better because it doesn't use the
non-standard name.

        * include/std/streambuf (basic_streambuf): Use injected class name
        instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
        group.

Tested x86_64-linux, committed to trunk.  I'll also make a smaller
change to 4.6 and 4.7 to just fix the doxygen group markup.
commit 8180df2e135e7a8957069bc50cf240900c9eb1c9
Author: Jonathan Wakely <jwakely.gcc@gmail.com>
Date:   Wed Feb 20 22:13:32 2013 +0000

    	* include/std/streambuf (basic_streambuf): Use injected class name
    	instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
    	group.

Patch

diff --git a/libstdc++-v3/include/std/streambuf b/libstdc++-v3/include/std/streambuf
index 00b3dd1..26a3871 100644
--- a/libstdc++-v3/include/std/streambuf
+++ b/libstdc++-v3/include/std/streambuf
@@ -145,7 +145,7 @@  _GLIBCXX_BEGIN_NAMESPACE_VERSION
       friend class ostreambuf_iterator<char_type, traits_type>;
 
       friend streamsize
-      __copy_streambufs_eof<>(__streambuf_type*, __streambuf_type*, bool&);
+      __copy_streambufs_eof<>(basic_streambuf*, basic_streambuf*, bool&);
 
       template<bool _IsMove, typename _CharT2>
         friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value, 
@@ -174,20 +174,19 @@  _GLIBCXX_BEGIN_NAMESPACE_VERSION
 		basic_string<_CharT2, _Traits2, _Alloc>&, _CharT2);
 
     protected:
-      //@{
-      /**
+      /*
        *  This is based on _IO_FILE, just reordered to be more consistent,
        *  and is intended to be the most minimal abstraction for an
        *  internal buffer.
        *  -  get == input == read
        *  -  put == output == write
       */
-      char_type* 		_M_in_beg;     // Start of get area. 
-      char_type* 		_M_in_cur;     // Current read area. 
-      char_type* 		_M_in_end;     // End of get area. 
-      char_type* 		_M_out_beg;    // Start of put area. 
-      char_type* 		_M_out_cur;    // Current put area. 
-      char_type* 		_M_out_end;    // End of put area.
+      char_type* 		_M_in_beg;     ///< Start of get area.
+      char_type* 		_M_in_cur;     ///< Current read area.
+      char_type* 		_M_in_end;     ///< End of get area.
+      char_type* 		_M_out_beg;    ///< Start of put area.
+      char_type* 		_M_out_cur;    ///< Current put area.
+      char_type* 		_M_out_end;    ///< End of put area.
 
       /// Current locale setting.
       locale 			_M_buf_locale;	
@@ -236,7 +235,7 @@  _GLIBCXX_BEGIN_NAMESPACE_VERSION
        *  derived @c foo member functions, passing the arguments (if any)
        *  and returning the result unchanged.
       */
-      __streambuf_type* 
+      basic_streambuf*
       pubsetbuf(char_type* __s, streamsize __n) 
       { return this->setbuf(__s, __n); }
 
@@ -800,15 +799,15 @@  _GLIBCXX_BEGIN_NAMESPACE_VERSION
     private:
       // _GLIBCXX_RESOLVE_LIB_DEFECTS
       // Side effect of DR 50. 
-      basic_streambuf(const __streambuf_type& __sb)
+      basic_streambuf(const basic_streambuf& __sb)
       : _M_in_beg(__sb._M_in_beg), _M_in_cur(__sb._M_in_cur), 
       _M_in_end(__sb._M_in_end), _M_out_beg(__sb._M_out_beg), 
       _M_out_cur(__sb._M_out_cur), _M_out_end(__sb._M_out_cur),
       _M_buf_locale(__sb._M_buf_locale) 
       { }
 
-      __streambuf_type& 
-      operator=(const __streambuf_type&) { return *this; };
+      basic_streambuf&
+      operator=(const basic_streambuf&) { return *this; };
     };
 
   // Explicit specialization declarations, defined in src/streambuf.cc.