Commit d632488a by Benjamin Kosnik Committed by Benjamin Kosnik

re PR libstdc++/44015 (template parameters not documented)

2012-05-02  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/44015
	* include/bits/basic_ios.h: Add tparam markup for
	* doxygen.  include/bits/basic_string.h: Same.
	* include/bits/forward_list.h: Same.
	* include/bits/stl_bvector.h: Same.
	* include/bits/stl_deque.h: Same.
	* include/bits/stl_list.h: Same.  include/bits/stl_map.h:
	* Same.  include/bits/stl_multimap.h: Same.
	* include/bits/stl_multiset.h: Same.
	* include/bits/stl_pair.h: Same.
	* include/bits/stl_queue.h: Same.
	* include/bits/stl_set.h: Same.
	* include/bits/stl_stack.h: Same.
	* include/bits/stl_vector.h: Same.
	* include/bits/unordered_map.h: Same.
	* include/bits/unordered_set.h: Same.  include/std/array:
	* Same.  include/std/atomic: Same.  include/std/fstream:
	* Same.  include/std/istream: Same.  include/std/ostream:
	* Same.  include/std/sstream: Same.
	* include/std/streambuf: Same.
	* testsuite/23_containers/deque/requirements/dr438/*:
          Adjust line numbers.
	* testsuite/23_containers/list/requirements/dr438/*: Same.
	* testsuite/23_containers/vector/requirements/dr438/*: Same.

From-SVN: r187066
parent daccad6d
2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/44015
* include/bits/basic_ios.h: Add tparam markup for
* doxygen. include/bits/basic_string.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_list.h: Same. include/bits/stl_map.h:
* Same. include/bits/stl_multimap.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_pair.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/unordered_map.h: Same.
* include/bits/unordered_set.h: Same. include/std/array:
* Same. include/std/atomic: Same. include/std/fstream:
* Same. include/std/istream: Same. include/std/ostream:
* Same. include/std/sstream: Same.
* include/std/streambuf: Same.
* testsuite/23_containers/deque/requirements/dr438/*:
Adjust line numbers.
* testsuite/23_containers/list/requirements/dr438/*: Same.
* testsuite/23_containers/vector/requirements/dr438/*: Same.
2012-05-02 DJ Delorie <dj@redhat.com> 2012-05-02 DJ Delorie <dj@redhat.com>
* crossconfig.m4: Since we know that all TPF builds are cross- * crossconfig.m4: Since we know that all TPF builds are cross-
......
// Iostreams base classes -*- C++ -*- // Iostreams base classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009, 2010, 2011 // 2006, 2007, 2008, 2009, 2010, 2011, 2012
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -52,11 +52,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -52,11 +52,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return *__f; return *__f;
} }
// 27.4.5 Template class basic_ios
/** /**
* @brief Virtual base class for all stream classes. * @brief Template class basic_ios, virtual base class for all
* stream classes.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* Most of the member functions called dispatched on stream objects * Most of the member functions called dispatched on stream objects
* (e.g., @c std::cout.foo(bar);) are consolidated in this class. * (e.g., @c std::cout.foo(bar);) are consolidated in this class.
*/ */
......
...@@ -55,6 +55,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -55,6 +55,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @ingroup strings * @ingroup strings
* @ingroup sequences * @ingroup sequences
* *
* @tparam _CharT Type of character
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
* @tparam _Alloc Allocator type, defaults to allocator<_CharT>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and a * <a href="tables.html#66">reversible container</a>, and a
* <a href="tables.html#67">sequence</a>. Of the * <a href="tables.html#67">sequence</a>. Of the
......
...@@ -376,6 +376,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -376,6 +376,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Alloc Allocator type, defaults to allocator<_Tp>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#67">sequence</a>, including the * <a href="tables.html#67">sequence</a>, including the
* <a href="tables.html#68">optional sequence requirements</a> with the * <a href="tables.html#68">optional sequence requirements</a> with the
......
...@@ -500,13 +500,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -500,13 +500,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* @brief A specialization of vector for booleans which offers fixed time * @brief A specialization of vector for booleans which offers fixed time
* access to individual elements in any order. * access to individual elements in any order.
* *
* @ingroup sequences
*
* @tparam _Alloc Allocator type.
*
* Note that vector<bool> does not actually meet the requirements for being * Note that vector<bool> does not actually meet the requirements for being
* a container. This is because the reference and pointer types are not * a container. This is because the reference and pointer types are not
* really references and pointers to bool. See DR96 for details. @see * really references and pointers to bool. See DR96 for details. @see
* vector for function documentation. * vector for function documentation.
* *
* @ingroup sequences
*
* In some terminology a %vector can be described as a dynamic * In some terminology a %vector can be described as a dynamic
* C-style array, it offers fast and efficient access to individual * C-style array, it offers fast and efficient access to individual
* elements in any order and saves the user from worrying about * elements in any order and saves the user from worrying about
......
...@@ -649,6 +649,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -649,6 +649,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Alloc Allocator type, defaults to allocator<_Tp>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and a * <a href="tables.html#66">reversible container</a>, and a
* <a href="tables.html#67">sequence</a>, including the * <a href="tables.html#67">sequence</a>, including the
......
...@@ -411,6 +411,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -411,6 +411,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Alloc Allocator type, defaults to allocator<_Tp>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and a * <a href="tables.html#66">reversible container</a>, and a
* <a href="tables.html#67">sequence</a>, including the * <a href="tables.html#67">sequence</a>, including the
......
...@@ -73,6 +73,12 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -73,6 +73,12 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup associative_containers * @ingroup associative_containers
* *
* @tparam _Key Type of key objects.
* @tparam _Tp Type of mapped objects.
* @tparam _Compare Comparison function object type, defaults to less<_Key>.
* @tparam _Alloc Allocator type, defaults to
* allocator<pair<const _Key, _Tp>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and an * <a href="tables.html#66">reversible container</a>, and an
* <a href="tables.html#69">associative container</a> (using unique keys). * <a href="tables.html#69">associative container</a> (using unique keys).
......
...@@ -72,6 +72,12 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -72,6 +72,12 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup associative_containers * @ingroup associative_containers
* *
* @tparam _Key Type of key objects.
* @tparam _Tp Type of mapped objects.
* @tparam _Compare Comparison function object type, defaults to less<_Key>.
* @tparam _Alloc Allocator type, defaults to
* allocator<pair<const _Key, _Tp>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and an * <a href="tables.html#66">reversible container</a>, and an
* <a href="tables.html#69">associative container</a> (using equivalent * <a href="tables.html#69">associative container</a> (using equivalent
......
...@@ -72,6 +72,11 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -72,6 +72,11 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup associative_containers * @ingroup associative_containers
* *
*
* @tparam _Key Type of key objects.
* @tparam _Compare Comparison function object type, defaults to less<_Key>.
* @tparam _Alloc Allocator type, defaults to allocator<_Key>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and an * <a href="tables.html#66">reversible container</a>, and an
* <a href="tables.html#69">associative container</a> (using equivalent * <a href="tables.html#69">associative container</a> (using equivalent
......
...@@ -83,7 +83,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -83,7 +83,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct _Index_tuple; struct _Index_tuple;
#endif #endif
/// Struct holding two objects of arbitrary type. /**
* @brief Struct holding two objects of arbitrary type.
*
* @tparam _T1 Type of first object.
* @tparam _T2 Type of second object.
*/
template<class _T1, class _T2> template<class _T1, class _T2>
struct pair struct pair
{ {
......
// Queue implementation -*- C++ -*- // Queue implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
// 2010, 2011 // 2010, 2011, 2012
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -70,6 +70,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -70,6 +70,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Sequence Type of underlying sequence, defaults to deque<_Tp>.
*
* Meets many of the requirements of a * Meets many of the requirements of a
* <a href="tables.html#65">container</a>, * <a href="tables.html#65">container</a>,
* but does not define anything to do with iterators. Very few of the * but does not define anything to do with iterators. Very few of the
...@@ -326,6 +329,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -326,6 +329,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Sequence Type of underlying sequence, defaults to vector<_Tp>.
* @tparam _Compare Comparison function object type, defaults to
* less<_Sequence::value_type>.
*
* This is not a true container, but an @e adaptor. It holds * This is not a true container, but an @e adaptor. It holds
* another container, and provides a wrapper interface to that * another container, and provides a wrapper interface to that
* container. The wrapper is what enforces priority-based sorting * container. The wrapper is what enforces priority-based sorting
......
...@@ -72,16 +72,16 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -72,16 +72,16 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup associative_containers * @ingroup associative_containers
* *
* @tparam _Key Type of key objects.
* @tparam _Compare Comparison function object type, defaults to less<_Key>.
* @tparam _Alloc Allocator type, defaults to allocator<_Key>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and an * <a href="tables.html#66">reversible container</a>, and an
* <a href="tables.html#69">associative container</a> (using unique keys). * <a href="tables.html#69">associative container</a> (using unique keys).
* *
* Sets support bidirectional iterators. * Sets support bidirectional iterators.
* *
* @tparam _Key Type of key objects.
* @tparam _Compare Comparison function object type, defaults to less<Key>.
* @tparam _Alloc Allocator type, defaults to allocator<Key>.
*
* The private tree data is declared exactly the same way for set and * The private tree data is declared exactly the same way for set and
* multiset; the distinction is made entirely in how the tree functions are * multiset; the distinction is made entirely in how the tree functions are
* called (*_unique versus *_equal, same as the standard). * called (*_unique versus *_equal, same as the standard).
......
// Stack implementation -*- C++ -*- // Stack implementation -*- C++ -*-
// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, // Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
// 2010, 2011 // 2010, 2011, 2012
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -70,6 +70,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -70,6 +70,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Sequence Type of underlying sequence, defaults to deque<_Tp>.
*
* Meets many of the requirements of a * Meets many of the requirements of a
* <a href="tables.html#65">container</a>, * <a href="tables.html#65">container</a>,
* but does not define anything to do with iterators. Very few of the * but does not define anything to do with iterators. Very few of the
......
...@@ -192,6 +192,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -192,6 +192,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup sequences * @ingroup sequences
* *
* @tparam _Tp Type of element.
* @tparam _Alloc Allocator type, defaults to allocator<_Tp>.
*
* Meets the requirements of a <a href="tables.html#65">container</a>, a * Meets the requirements of a <a href="tables.html#65">container</a>, a
* <a href="tables.html#66">reversible container</a>, and a * <a href="tables.html#66">reversible container</a>, and a
* <a href="tables.html#67">sequence</a>, including the * <a href="tables.html#67">sequence</a>, including the
......
...@@ -77,9 +77,6 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -77,9 +77,6 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup unordered_associative_containers * @ingroup unordered_associative_containers
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* @tparam _Key Type of key objects. * @tparam _Key Type of key objects.
* @tparam _Tp Type of mapped objects. * @tparam _Tp Type of mapped objects.
* @tparam _Hash Hashing function object type, defaults to hash<_Value>. * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
...@@ -87,6 +84,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -87,6 +84,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to equal_to<_Value>. * to equal_to<_Value>.
* @tparam _Alloc Allocator type, defaults to allocator<_Key>. * @tparam _Alloc Allocator type, defaults to allocator<_Key>.
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* The resulting value type of the container is std::pair<const _Key, _Tp>. * The resulting value type of the container is std::pair<const _Key, _Tp>.
* *
* Base is _Hashtable, dispatched at compile time via template * Base is _Hashtable, dispatched at compile time via template
...@@ -141,9 +141,6 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -141,9 +141,6 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup unordered_associative_containers * @ingroup unordered_associative_containers
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* @tparam _Key Type of key objects. * @tparam _Key Type of key objects.
* @tparam _Tp Type of mapped objects. * @tparam _Tp Type of mapped objects.
* @tparam _Hash Hashing function object type, defaults to hash<_Value>. * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
...@@ -151,6 +148,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -151,6 +148,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* to equal_to<_Value>. * to equal_to<_Value>.
* @tparam _Alloc Allocator type, defaults to allocator<_Key>. * @tparam _Alloc Allocator type, defaults to allocator<_Key>.
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* The resulting value type of the container is std::pair<const _Key, _Tp>. * The resulting value type of the container is std::pair<const _Key, _Tp>.
* *
* Base is _Hashtable, dispatched at compile time via template * Base is _Hashtable, dispatched at compile time via template
......
...@@ -72,9 +72,6 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -72,9 +72,6 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup unordered_associative_containers * @ingroup unordered_associative_containers
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* @tparam _Value Type of key objects. * @tparam _Value Type of key objects.
* @tparam _Hash Hashing function object type, defaults to hash<_Value>. * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
...@@ -83,6 +80,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -83,6 +80,9 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @tparam _Alloc Allocator type, defaults to allocator<_Key>. * @tparam _Alloc Allocator type, defaults to allocator<_Key>.
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* Base is _Hashtable, dispatched at compile time via template * Base is _Hashtable, dispatched at compile time via template
* alias __uset_hashtable. * alias __uset_hashtable.
*/ */
...@@ -135,15 +135,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER ...@@ -135,15 +135,15 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
* *
* @ingroup unordered_associative_containers * @ingroup unordered_associative_containers
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* @tparam _Value Type of key objects. * @tparam _Value Type of key objects.
* @tparam _Hash Hashing function object type, defaults to hash<_Value>. * @tparam _Hash Hashing function object type, defaults to hash<_Value>.
* @tparam _Pred Predicate function object type, defaults * @tparam _Pred Predicate function object type, defaults
* to equal_to<_Value>. * to equal_to<_Value>.
* @tparam _Alloc Allocator type, defaults to allocator<_Key>. * @tparam _Alloc Allocator type, defaults to allocator<_Key>.
* *
* Meets the requirements of a <a href="tables.html#65">container</a>, and
* <a href="tables.html#xx">unordered associative container</a>
*
* Base is _Hashtable, dispatched at compile time via template * Base is _Hashtable, dispatched at compile time via template
* alias __umset_hashtable. * alias __umset_hashtable.
*/ */
......
...@@ -55,8 +55,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -55,8 +55,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* *
* Sets support random access iterators. * Sets support random access iterators.
* *
* @param Tp Type of element. Required to be a complete type. * @tparam Tp Type of element. Required to be a complete type.
* @param N Number of elements. * @tparam N Number of elements.
*/ */
template<typename _Tp, std::size_t _Nm> template<typename _Tp, std::size_t _Nm>
struct array struct array
......
// -*- C++ -*- header. // -*- C++ -*- header.
// Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc. // Copyright (C) 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
...@@ -148,8 +148,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -148,8 +148,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}; };
/// atomic /**
/// 29.4.3, Generic atomic type, primary class template. * @brief Generic atomic type, primary class template.
*
* @tparam _Tp Type to be made atomic, must be trivally copyable.
*/
template<typename _Tp> template<typename _Tp>
struct atomic struct atomic
{ {
......
// File based streams -*- C++ -*- // File based streams -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009, 2010, 2011 // 2006, 2007, 2008, 2009, 2010, 2011, 2012
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -55,16 +55,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -55,16 +55,21 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief The actual work of input and output (for files). * @brief The actual work of input and output (for files).
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This class associates both its input and output sequence with an * This class associates both its input and output sequence with an
* external disk file, and maintains a joint file position for both * external disk file, and maintains a joint file position for both
* sequences. Many of its semantics are described in terms of similar * sequences. Many of its semantics are described in terms of similar
* behavior in the Standard C Library's @c FILE streams. * behavior in the Standard C Library's @c FILE streams.
*
* Requirements on traits_type, specific to this class:
* - traits_type::pos_type must be fpos<traits_type::state_type>
* - traits_type::off_type must be streamoff
* - traits_type::state_type must be Assignable and DefaultConstructible,
* - traits_type::state_type() must be the initial state for codecvt.
*/ */
// Requirements on traits_type, specific to this class:
// traits_type::pos_type must be fpos<traits_type::state_type>
// traits_type::off_type must be streamoff
// traits_type::state_type must be Assignable and DefaultConstructible,
// and traits_type::state_type() must be the initial state for codecvt.
template<typename _CharT, typename _Traits> template<typename _CharT, typename _Traits>
class basic_filebuf : public basic_streambuf<_CharT, _Traits> class basic_filebuf : public basic_streambuf<_CharT, _Traits>
{ {
...@@ -411,6 +416,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -411,6 +416,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Controlling input for files. * @brief Controlling input for files.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This class supports reading from named files, using the inherited * This class supports reading from named files, using the inherited
* functions from std::basic_istream. To control the associated * functions from std::basic_istream. To control the associated
* sequence, an instance of std::basic_filebuf is used, which this page * sequence, an instance of std::basic_filebuf is used, which this page
...@@ -579,6 +588,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -579,6 +588,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Controlling output for files. * @brief Controlling output for files.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This class supports reading from named files, using the inherited * This class supports reading from named files, using the inherited
* functions from std::basic_ostream. To control the associated * functions from std::basic_ostream. To control the associated
* sequence, an instance of std::basic_filebuf is used, which this page * sequence, an instance of std::basic_filebuf is used, which this page
...@@ -752,6 +765,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -752,6 +765,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Controlling input and output for files. * @brief Controlling input and output for files.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This class supports reading from and writing to named files, using * This class supports reading from and writing to named files, using
* the inherited functions from std::basic_iostream. To control the * the inherited functions from std::basic_iostream. To control the
* associated sequence, an instance of std::basic_filebuf is used, which * associated sequence, an instance of std::basic_filebuf is used, which
......
// Input streams -*- C++ -*- // Input streams -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009, 2010, 2011 // 2006, 2007, 2008, 2009, 2010, 2011, 2012
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -48,6 +48,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -48,6 +48,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Template class basic_istream. * @brief Template class basic_istream.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This is the base class for all input streams. It provides text * This is the base class for all input streams. It provides text
* formatting of all builtin types, and communicates with any class * formatting of all builtin types, and communicates with any class
* derived from basic_streambuf to do the actual input. * derived from basic_streambuf to do the actual input.
...@@ -782,6 +786,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -782,6 +786,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Template class basic_iostream * @brief Template class basic_iostream
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This class multiply inherits from the input and output stream classes * This class multiply inherits from the input and output stream classes
* simply to provide a single interface. * simply to provide a single interface.
*/ */
......
// Output streams -*- C++ -*- // Output streams -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009, 2010, 2011 // 2006, 2007, 2008, 2009, 2010, 2011, 2012
// Free Software Foundation, Inc. // Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // This file is part of the GNU ISO C++ Library. This library is free
...@@ -48,6 +48,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -48,6 +48,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Template class basic_ostream. * @brief Template class basic_ostream.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This is the base class for all output streams. It provides text * This is the base class for all output streams. It provides text
* formatting of all builtin types, and communicates with any class * formatting of all builtin types, and communicates with any class
* derived from basic_streambuf to do the actual output. * derived from basic_streambuf to do the actual output.
......
// String based streams -*- C++ -*- // String based streams -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. // 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
...@@ -48,6 +48,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -48,6 +48,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief The actual work of input and output (for std::string). * @brief The actual work of input and output (for std::string).
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
* @tparam _Alloc Allocator type, defaults to allocator<_CharT>.
*
* This class associates either or both of its input and output sequences * This class associates either or both of its input and output sequences
* with a sequence of characters, which can be initialized from, or made * with a sequence of characters, which can be initialized from, or made
* available as, a @c std::basic_string. (Paraphrased from [27.7.1]/1.) * available as, a @c std::basic_string. (Paraphrased from [27.7.1]/1.)
...@@ -254,6 +259,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -254,6 +259,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Controlling input for std::string. * @brief Controlling input for std::string.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
* @tparam _Alloc Allocator type, defaults to allocator<_CharT>.
*
* This class supports reading from objects of type std::basic_string, * This class supports reading from objects of type std::basic_string,
* using the inherited functions from std::basic_istream. To control * using the inherited functions from std::basic_istream. To control
* the associated sequence, an instance of std::basic_stringbuf is used, * the associated sequence, an instance of std::basic_stringbuf is used,
...@@ -364,6 +374,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -364,6 +374,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Controlling output for std::string. * @brief Controlling output for std::string.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
* @tparam _Alloc Allocator type, defaults to allocator<_CharT>.
*
* This class supports writing to objects of type std::basic_string, * This class supports writing to objects of type std::basic_string,
* using the inherited functions from std::basic_ostream. To control * using the inherited functions from std::basic_ostream. To control
* the associated sequence, an instance of std::basic_stringbuf is used, * the associated sequence, an instance of std::basic_stringbuf is used,
...@@ -474,6 +489,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -474,6 +489,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief Controlling input and output for std::string. * @brief Controlling input and output for std::string.
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
* @tparam _Alloc Allocator type, defaults to allocator<_CharT>.
*
* This class supports reading from and writing to objects of type * This class supports reading from and writing to objects of type
* std::basic_string, using the inherited functions from * std::basic_string, using the inherited functions from
* std::basic_iostream. To control the associated sequence, an instance * std::basic_iostream. To control the associated sequence, an instance
......
// Stream buffer classes -*- C++ -*- // Stream buffer classes -*- C++ -*-
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. // 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 // software; you can redistribute it and/or modify it under the
...@@ -56,6 +56,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -56,6 +56,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @brief The actual work of input and output (interface). * @brief The actual work of input and output (interface).
* @ingroup io * @ingroup io
* *
* @tparam _CharT Type of character stream.
* @tparam _Traits Traits for character type, defaults to
* char_traits<_CharT>.
*
* This is a base class. Derived stream buffers each control a * This is a base class. Derived stream buffers each control a
* pair of character sequences: one for input, and one for output. * pair of character sequences: one for input, and one for output.
* *
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1696 } // { dg-error "no matching" "" { target *-*-* } 1699 }
#include <deque> #include <deque>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1629 } // { dg-error "no matching" "" { target *-*-* } 1632 }
#include <deque> #include <deque>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1629 } // { dg-error "no matching" "" { target *-*-* } 1632 }
#include <deque> #include <deque>
#include <utility> #include <utility>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1780 } // { dg-error "no matching" "" { target *-*-* } 1783 }
#include <deque> #include <deque>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1568 } // { dg-error "no matching" "" { target *-*-* } 1571 }
#include <list> #include <list>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1524 } // { dg-error "no matching" "" { target *-*-* } 1527 }
#include <list> #include <list>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1524 } // { dg-error "no matching" "" { target *-*-* } 1527 }
#include <list> #include <list>
#include <utility> #include <utility>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1524 } // { dg-error "no matching" "" { target *-*-* } 1527 }
#include <list> #include <list>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1233 } // { dg-error "no matching" "" { target *-*-* } 1236 }
#include <vector> #include <vector>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1163 } // { dg-error "no matching" "" { target *-*-* } 1166 }
#include <vector> #include <vector>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1163 } // { dg-error "no matching" "" { target *-*-* } 1166 }
#include <vector> #include <vector>
#include <utility> #include <utility>
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
// <http://www.gnu.org/licenses/>. // <http://www.gnu.org/licenses/>.
// { dg-do compile } // { dg-do compile }
// { dg-error "no matching" "" { target *-*-* } 1274 } // { dg-error "no matching" "" { target *-*-* } 1277 }
#include <vector> #include <vector>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment