// String based streams -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-// 2006, 2008 Free Software Foundation, Inc.
+// 2006, 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
// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 2, or (at your option)
+// 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,
// 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 COPYING. If not, write to
-// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
-// Boston, MA 02110-1301, USA.
+// Under Section 7 of GPL version 3, you are granted additional
+// permissions described in the GCC Runtime Library Exception, version
+// 3.1, as published by the Free Software Foundation.
-// As a special exception, you may use this file as part of a free software
-// library without restriction. Specifically, if other files instantiate
-// templates or use macros or inline functions from this file, or you compile
-// this file and link it with other files to produce an executable, this
-// file does not by itself cause the resulting executable to be covered by
-// the GNU General Public License. This exception does not however
-// invalidate any other reasons why the executable file might be covered by
-// the GNU General Public License.
+// You should have received a copy of the GNU General Public License and
+// a copy of the GCC Runtime Library Exception along with this program;
+// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+// <http://www.gnu.org/licenses/>.
/** @file sstream
* This is a Standard C++ Library header.
// [27.7.1] template class basic_stringbuf
/**
* @brief The actual work of input and output (for std::string).
+ * @ingroup io
*
* This class associates either or both of its input and output sequences
* with a sequence of characters, which can be initialized from, or made
* @brief Copying out the string buffer.
* @return A copy of one of the underlying sequences.
*
- * "If the buffer is only created in input mode, the underlying
+ * <em>If the buffer is only created in input mode, the underlying
* character sequence is equal to the input sequence; otherwise, it
- * is equal to the output sequence." [27.7.1.2]/1
+ * is equal to the output sequence.</em> [27.7.1.2]/1
*/
__string_type
str() const
*
* If no buffer has already been created, and both @a s and @a n are
* non-zero, then @c s is used as a buffer; see
- * http://gcc.gnu.org/onlinedocs/libstdc++/27_io/howto.html#2
+ * http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt11ch25s02.html
* for more.
*/
virtual __streambuf_type*
// [27.7.2] Template class basic_istringstream
/**
* @brief Controlling input for std::string.
+ * @ingroup io
*
* This class supports reading from objects of type std::basic_string,
* using the inherited functions from std::basic_istream. To control
// [27.7.3] Template class basic_ostringstream
/**
* @brief Controlling output for std::string.
+ * @ingroup io
*
* This class supports writing to objects of type std::basic_string,
* using the inherited functions from std::basic_ostream. To control
// [27.7.4] Template class basic_stringstream
/**
* @brief Controlling input and output for std::string.
+ * @ingroup io
*
* This class supports reading from and writing to objects of type
* std::basic_string, using the inherited functions from