summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2006-09-21 17:54:50 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2006-09-21 17:54:50 +0000
commit2263cabb2435ba6d32677b087122b943202b39b0 (patch)
tree7f6dcc8aee5b7259218680fba1642dee808d4dd1 /libstdc++-v3
parent5d820dff6ab4788677dc025979e5b16c0fb07995 (diff)
downloadgcc-2263cabb2435ba6d32677b087122b943202b39b0.tar.gz
2006-09-21 Paolo Carlini <pcarlini@suse.de>
* include/ext/hash_map: Remove forward declaration of equality operator, not needed for friendship of all its instances. * include/ext/hash_set: Likewise. * include/bits/stl_set.h: Likewise for equality operator and operator less. * include/bits/stl_multiset.h: Likewise. * include/bits/stl_multimap.h: Likewise. * include/bits/stl_queue.h: Likewise. * include/bits/stl_stack.h: Likewise. * include/bits/streambuf_iterator.h: Likewise for copy. * include/std/std_streambuf.h: Likewise for __copy_aux and find. * include/tr1/boost_shared_ptr.h: Likewise for get_deleter. * include/tr1/random: Likewise, remove all forward declarations of inserters and extractors. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117116 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog17
-rw-r--r--libstdc++-v3/include/bits/stl_multimap.h21
-rw-r--r--libstdc++-v3/include/bits/stl_multiset.h18
-rw-r--r--libstdc++-v3/include/bits/stl_queue.h14
-rw-r--r--libstdc++-v3/include/bits/stl_set.h18
-rw-r--r--libstdc++-v3/include/bits/stl_stack.h15
-rw-r--r--libstdc++-v3/include/bits/streambuf_iterator.h6
-rw-r--r--libstdc++-v3/include/ext/hash_map31
-rw-r--r--libstdc++-v3/include/ext/hash_set32
-rw-r--r--libstdc++-v3/include/std/std_streambuf.h12
-rw-r--r--libstdc++-v3/include/tr1/boost_shared_ptr.h5
-rw-r--r--libstdc++-v3/include/tr1/random205
12 files changed, 39 insertions, 355 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index ca26e47959b..e85e75a6131 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,22 @@
2006-09-21 Paolo Carlini <pcarlini@suse.de>
+ * include/ext/hash_map: Remove forward declaration of equality
+ operator, not needed for friendship of all its instances.
+ * include/ext/hash_set: Likewise.
+ * include/bits/stl_set.h: Likewise for equality operator and
+ operator less.
+ * include/bits/stl_multiset.h: Likewise.
+ * include/bits/stl_multimap.h: Likewise.
+ * include/bits/stl_queue.h: Likewise.
+ * include/bits/stl_stack.h: Likewise.
+ * include/bits/streambuf_iterator.h: Likewise for copy.
+ * include/std/std_streambuf.h: Likewise for __copy_aux and find.
+ * include/tr1/boost_shared_ptr.h: Likewise for get_deleter.
+ * include/tr1/random: Likewise, remove all forward declarations
+ of inserters and extractors.
+
+2006-09-21 Paolo Carlini <pcarlini@suse.de>
+
* include/ext/sso_string_base.h (__sso_string_base<>::_M_max_size(),
_M_destroy, _M_create): Use _M_get_allocator.
diff --git a/libstdc++-v3/include/bits/stl_multimap.h b/libstdc++-v3/include/bits/stl_multimap.h
index 41e93a2ef30..b11b6e409d5 100644
--- a/libstdc++-v3/include/bits/stl_multimap.h
+++ b/libstdc++-v3/include/bits/stl_multimap.h
@@ -65,23 +65,6 @@
_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
- // Forward declaration of operators < and ==, needed for friend declaration.
-
- template <typename _Key, typename _Tp,
- typename _Compare = std::less<_Key>,
- typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
- class multimap;
-
- template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
- inline bool
- operator==(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
- const multimap<_Key, _Tp, _Compare, _Alloc>& __y);
-
- template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
- inline bool
- operator<(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
- const multimap<_Key, _Tp, _Compare, _Alloc>& __y);
-
/**
* @brief A standard container made up of (key,value) pairs, which can be
* retrieved based on a key, in logarithmic time.
@@ -103,7 +86,9 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
* called (*_unique versus *_equal, same as the standard).
* @endif
*/
- template <typename _Key, typename _Tp, typename _Compare, typename _Alloc>
+ template <typename _Key, typename _Tp,
+ typename _Compare = std::less<_Key>,
+ typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
class multimap
{
public:
diff --git a/libstdc++-v3/include/bits/stl_multiset.h b/libstdc++-v3/include/bits/stl_multiset.h
index dd6e976117c..8c499c3690f 100644
--- a/libstdc++-v3/include/bits/stl_multiset.h
+++ b/libstdc++-v3/include/bits/stl_multiset.h
@@ -65,21 +65,6 @@
_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
- // Forward declaration of operators < and ==, needed for friend declaration.
- template <class _Key, class _Compare = std::less<_Key>,
- class _Alloc = std::allocator<_Key> >
- class multiset;
-
- template <class _Key, class _Compare, class _Alloc>
- inline bool
- operator==(const multiset<_Key, _Compare, _Alloc>& __x,
- const multiset<_Key, _Compare, _Alloc>& __y);
-
- template <class _Key, class _Compare, class _Alloc>
- inline bool
- operator<(const multiset<_Key, _Compare, _Alloc>& __x,
- const multiset<_Key, _Compare, _Alloc>& __y);
-
/**
* @brief A standard container made up of elements, which can be retrieved
* in logarithmic time.
@@ -100,7 +85,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
* called (*_unique versus *_equal, same as the standard).
* @endif
*/
- template <class _Key, class _Compare, class _Alloc>
+ template <class _Key, class _Compare = std::less<_Key>,
+ class _Alloc = std::allocator<_Key> >
class multiset
{
// concept requirements
diff --git a/libstdc++-v3/include/bits/stl_queue.h b/libstdc++-v3/include/bits/stl_queue.h
index 84c003540ed..04e3a7b46e0 100644
--- a/libstdc++-v3/include/bits/stl_queue.h
+++ b/libstdc++-v3/include/bits/stl_queue.h
@@ -67,18 +67,6 @@
_GLIBCXX_BEGIN_NAMESPACE(std)
- // Forward declarations of operators < and ==, needed for friend declaration.
- template<typename _Tp, typename _Sequence = deque<_Tp> >
- class queue;
-
- template<typename _Tp, typename _Seq>
- inline bool
- operator==(const queue<_Tp, _Seq>&, const queue<_Tp, _Seq>&);
-
- template<typename _Tp, typename _Seq>
- inline bool
- operator<(const queue<_Tp, _Seq>&, const queue<_Tp, _Seq>&);
-
/**
* @brief A standard container giving FIFO behavior.
*
@@ -103,7 +91,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
* which is a typedef for the second Sequence parameter, and @c push and
* @c pop, which are standard %queue/FIFO operations.
*/
- template<typename _Tp, typename _Sequence>
+ template<typename _Tp, typename _Sequence = deque<_Tp> >
class queue
{
// concept requirements
diff --git a/libstdc++-v3/include/bits/stl_set.h b/libstdc++-v3/include/bits/stl_set.h
index ed362f13c1e..b61106aef65 100644
--- a/libstdc++-v3/include/bits/stl_set.h
+++ b/libstdc++-v3/include/bits/stl_set.h
@@ -65,21 +65,6 @@
_GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
- // Forward declarations of operators < and ==, needed for friend declaration.
- template<class _Key, class _Compare = std::less<_Key>,
- class _Alloc = std::allocator<_Key> >
- class set;
-
- template<class _Key, class _Compare, class _Alloc>
- inline bool
- operator==(const set<_Key, _Compare, _Alloc>& __x,
- const set<_Key, _Compare, _Alloc>& __y);
-
- template<class _Key, class _Compare, class _Alloc>
- inline bool
- operator<(const set<_Key, _Compare, _Alloc>& __x,
- const set<_Key, _Compare, _Alloc>& __y);
-
/**
* @brief A standard container made up of unique keys, which can be
* retrieved in logarithmic time.
@@ -103,7 +88,8 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(std, _GLIBCXX_STD)
* called (*_unique versus *_equal, same as the standard).
* @endif
*/
- template<class _Key, class _Compare, class _Alloc>
+ template<class _Key, class _Compare = std::less<_Key>,
+ class _Alloc = std::allocator<_Key> >
class set
{
// concept requirements
diff --git a/libstdc++-v3/include/bits/stl_stack.h b/libstdc++-v3/include/bits/stl_stack.h
index a6b5533f563..f5b41facb03 100644
--- a/libstdc++-v3/include/bits/stl_stack.h
+++ b/libstdc++-v3/include/bits/stl_stack.h
@@ -67,19 +67,6 @@
_GLIBCXX_BEGIN_NAMESPACE(std)
- // Forward declarations of operators == and <, needed for friend
- // declaration.
- template<typename _Tp, typename _Sequence = deque<_Tp> >
- class stack;
-
- template<typename _Tp, typename _Seq>
- inline bool
- operator==(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y);
-
- template<typename _Tp, typename _Seq>
- inline bool
- operator<(const stack<_Tp, _Seq>& __x, const stack<_Tp, _Seq>& __y);
-
/**
* @brief A standard container giving FILO behavior.
*
@@ -107,7 +94,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
* push, @c pop, and @c top, which are standard %stack/FILO
* operations.
*/
- template<typename _Tp, typename _Sequence>
+ template<typename _Tp, typename _Sequence = deque<_Tp> >
class stack
{
// concept requirements
diff --git a/libstdc++-v3/include/bits/streambuf_iterator.h b/libstdc++-v3/include/bits/streambuf_iterator.h
index 8c76013d324..a1cf234a387 100644
--- a/libstdc++-v3/include/bits/streambuf_iterator.h
+++ b/libstdc++-v3/include/bits/streambuf_iterator.h
@@ -43,12 +43,6 @@
_GLIBCXX_BEGIN_NAMESPACE(std)
- template<typename _CharT>
- typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
- ostreambuf_iterator<_CharT> >::__type
- copy(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
- ostreambuf_iterator<_CharT>);
-
// 24.5.3 Template class istreambuf_iterator
/// Provides input iterator semantics for streambufs.
template<typename _CharT, typename _Traits>
diff --git a/libstdc++-v3/include/ext/hash_map b/libstdc++-v3/include/ext/hash_map
index 2367c77415e..b6855ebb3be 100644
--- a/libstdc++-v3/include/ext/hash_map
+++ b/libstdc++-v3/include/ext/hash_map
@@ -72,23 +72,13 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT)
using std::pair;
using std::_Select1st;
- // Forward declaration of equality operator; needed for friend
- // declaration.
- template<class _Key, class _Tp, class _HashFn = hash<_Key>,
- class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp> >
- class hash_map;
-
- template<class _Key, class _Tp, class _HashFn, class _EqKey, class _Alloc>
- inline bool
- operator==(const hash_map<_Key, _Tp, _HashFn, _EqKey, _Alloc>&,
- const hash_map<_Key, _Tp, _HashFn, _EqKey, _Alloc>&);
-
/**
* This is an SGI extension.
* @ingroup SGIextensions
* @doctodo
*/
- template<class _Key, class _Tp, class _HashFn, class _EqualKey, class _Alloc>
+ template<class _Key, class _Tp, class _HashFn = hash<_Key>,
+ class _EqualKey = equal_to<_Key>, class _Alloc = allocator<_Tp> >
class hash_map
{
private:
@@ -295,25 +285,16 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT)
hash_map<_Key, _Tp, _HashFn, _EqlKey, _Alloc>& __hm2)
{ __hm1.swap(__hm2); }
- // Forward declaration of equality operator; needed for friend declaration.
- template<class _Key, class _Tp,
- class _HashFn = hash<_Key>,
- class _EqualKey = equal_to<_Key>,
- class _Alloc = allocator<_Tp> >
- class hash_multimap;
-
- template<class _Key, class _Tp, class _HF, class _EqKey, class _Alloc>
- inline bool
- operator==(const hash_multimap<_Key, _Tp, _HF, _EqKey, _Alloc>& __hm1,
- const hash_multimap<_Key, _Tp, _HF, _EqKey, _Alloc>& __hm2);
/**
* This is an SGI extension.
* @ingroup SGIextensions
* @doctodo
*/
- template<class _Key, class _Tp, class _HashFn, class _EqualKey,
- class _Alloc>
+ template<class _Key, class _Tp,
+ class _HashFn = hash<_Key>,
+ class _EqualKey = equal_to<_Key>,
+ class _Alloc = allocator<_Tp> >
class hash_multimap
{
// concept requirements
diff --git a/libstdc++-v3/include/ext/hash_set b/libstdc++-v3/include/ext/hash_set
index 02cc99fb96e..668fe13bd2a 100644
--- a/libstdc++-v3/include/ext/hash_set
+++ b/libstdc++-v3/include/ext/hash_set
@@ -72,24 +72,14 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT)
using std::pair;
using std::_Identity;
- // Forward declaration of equality operator; needed for friend
- // declaration.
- template<class _Value, class _HashFcn = hash<_Value>,
- class _EqualKey = equal_to<_Value>,
- class _Alloc = allocator<_Value> >
- class hash_set;
-
- template<class _Value, class _HashFcn, class _EqualKey, class _Alloc>
- inline bool
- operator==(const hash_set<_Value, _HashFcn, _EqualKey, _Alloc>& __hs1,
- const hash_set<_Value, _HashFcn, _EqualKey, _Alloc>& __hs2);
-
/**
* This is an SGI extension.
* @ingroup SGIextensions
* @doctodo
*/
- template<class _Value, class _HashFcn, class _EqualKey, class _Alloc>
+ template<class _Value, class _HashFcn = hash<_Value>,
+ class _EqualKey = equal_to<_Value>,
+ class _Alloc = allocator<_Value> >
class hash_set
{
// concept requirements
@@ -285,24 +275,16 @@ _GLIBCXX_BEGIN_NESTED_NAMESPACE(__gnu_cxx, _GLIBCXX_EXT)
hash_set<_Val, _HashFcn, _EqualKey, _Alloc>& __hs2)
{ __hs1.swap(__hs2); }
- template<class _Value,
- class _HashFcn = hash<_Value>,
- class _EqualKey = equal_to<_Value>,
- class _Alloc = allocator<_Value> >
- class hash_multiset;
-
- template<class _Val, class _HashFcn, class _EqualKey, class _Alloc>
- inline bool
- operator==(const hash_multiset<_Val, _HashFcn, _EqualKey, _Alloc>& __hs1,
- const hash_multiset<_Val, _HashFcn, _EqualKey, _Alloc>& __hs2);
-
/**
* This is an SGI extension.
* @ingroup SGIextensions
* @doctodo
*/
- template<class _Value, class _HashFcn, class _EqualKey, class _Alloc>
+ template<class _Value,
+ class _HashFcn = hash<_Value>,
+ class _EqualKey = equal_to<_Value>,
+ class _Alloc = allocator<_Value> >
class hash_multiset
{
// concept requirements
diff --git a/libstdc++-v3/include/std/std_streambuf.h b/libstdc++-v3/include/std/std_streambuf.h
index 5a5ca869289..67ffaf335f6 100644
--- a/libstdc++-v3/include/std/std_streambuf.h
+++ b/libstdc++-v3/include/std/std_streambuf.h
@@ -60,18 +60,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
__copy_streambufs_eof(basic_streambuf<_CharT, _Traits>*,
basic_streambuf<_CharT, _Traits>*, bool&);
- template<typename _CharT>
- typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
- _CharT*>::__type
- __copy_aux(istreambuf_iterator<_CharT>,
- istreambuf_iterator<_CharT>, _CharT*);
-
- template<typename _CharT>
- typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
- istreambuf_iterator<_CharT> >::__type
- find(istreambuf_iterator<_CharT>, istreambuf_iterator<_CharT>,
- const _CharT&);
-
/**
* @brief The actual work of input and output (interface).
*
diff --git a/libstdc++-v3/include/tr1/boost_shared_ptr.h b/libstdc++-v3/include/tr1/boost_shared_ptr.h
index dfe5f171b6d..bc8028d08c7 100644
--- a/libstdc++-v3/include/tr1/boost_shared_ptr.h
+++ b/libstdc++-v3/include/tr1/boost_shared_ptr.h
@@ -483,11 +483,6 @@ template<_Lock_policy _Lp>
{ }
-// Function get_deleter must be declared before friend declaration by
-// shared_ptr.
-template<typename _Del, typename _Tp, _Lock_policy _Lp>
- _Del* get_deleter(const __shared_ptr<_Tp, _Lp>&);
-
/**
* @class shared_ptr <tr1/memory>
*
diff --git a/libstdc++-v3/include/tr1/random b/libstdc++-v3/include/tr1/random
index b926c5bf439..05286ee17dd 100644
--- a/libstdc++-v3/include/tr1/random
+++ b/libstdc++-v3/include/tr1/random
@@ -296,21 +296,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* The size of the state is @f$ 1 @f$.
*/
template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m>
- class linear_congruential;
-
- template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const linear_congruential<_UIntType, __a, __c, __m>& __lcr);
-
- template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- linear_congruential<_UIntType, __a, __c, __m>& __lcr);
-
- template<class _UIntType, _UIntType __a, _UIntType __c, _UIntType __m>
class linear_congruential
{
__glibcxx_class_requires(_UIntType, _UnsignedIntegerConcept)
@@ -506,29 +491,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
template<class _UIntType, int __w, int __n, int __m, int __r,
_UIntType __a, int __u, int __s, _UIntType __b, int __t,
_UIntType __c, int __l>
- class mersenne_twister;
-
- template<class _UIntType, int __w, int __n, int __m, int __r,
- _UIntType __a, int __u, int __s, _UIntType __b, int __t,
- _UIntType __c, int __l,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const mersenne_twister<_UIntType, __w, __n, __m,
- __r, __a, __u, __s, __b, __t, __c, __l>& __x);
-
- template<class _UIntType, int __w, int __n, int __m, int __r,
- _UIntType __a, int __u, int __s, _UIntType __b, int __t,
- _UIntType __c, int __l,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- mersenne_twister<_UIntType, __w, __n, __m,
- __r, __a, __u, __s, __b, __t, __c, __l>& __x);
-
- template<class _UIntType, int __w, int __n, int __m, int __r,
- _UIntType __a, int __u, int __s, _UIntType __b, int __t,
- _UIntType __c, int __l>
class mersenne_twister
{
__glibcxx_class_requires(_UIntType, _UnsignedIntegerConcept)
@@ -707,21 +669,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* @endif
*/
template<typename _IntType, _IntType __m, int __s, int __r>
- class subtract_with_carry;
-
- template<typename _IntType, _IntType __m, int __s, int __r,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const subtract_with_carry<_IntType, __m, __s, __r>& __x);
-
- template<typename _IntType, _IntType __m, int __s, int __r,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- subtract_with_carry<_IntType, __m, __s, __r>& __x);
-
- template<typename _IntType, _IntType __m, int __s, int __r>
class subtract_with_carry
{
__glibcxx_class_requires(_IntType, _IntegerConcept)
@@ -899,21 +846,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* @endif
*/
template<typename _RealType, int __w, int __s, int __r>
- class subtract_with_carry_01;
-
- template<typename _RealType, int __w, int __s, int __r,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const subtract_with_carry_01<_RealType, __w, __s, __r>& __x);
-
- template<typename _RealType, int __w, int __s, int __r,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- subtract_with_carry_01<_RealType, __w, __s, __r>& __x);
-
- template<typename _RealType, int __w, int __s, int __r>
class subtract_with_carry_01
{
public:
@@ -1105,22 +1037,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* 0 <= @p __r <= @p __p
*/
template<class _UniformRandomNumberGenerator, int __p, int __r>
- class discard_block;
-
- template<class _UniformRandomNumberGenerator, int __p, int __r,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const discard_block<_UniformRandomNumberGenerator,
- __p, __r>& __x);
-
- template<class _UniformRandomNumberGenerator, int __p, int __r,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- discard_block<_UniformRandomNumberGenerator, __p, __r>& __x);
-
- template<class _UniformRandomNumberGenerator, int __p, int __r>
class discard_block
{
// __glibcxx_class_requires(typename base_type::result_type,
@@ -1327,26 +1243,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
*/
template<class _UniformRandomNumberGenerator1, int __s1,
class _UniformRandomNumberGenerator2, int __s2>
- class xor_combine;
-
- template<class _UniformRandomNumberGenerator1, int __s1,
- class _UniformRandomNumberGenerator2, int __s2,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const xor_combine<_UniformRandomNumberGenerator1, __s1,
- _UniformRandomNumberGenerator2, __s2>& __x);
-
- template<class _UniformRandomNumberGenerator1, int __s1,
- class _UniformRandomNumberGenerator2, int __s2,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- xor_combine<_UniformRandomNumberGenerator1, __s1,
- _UniformRandomNumberGenerator2, __s2>& __x);
-
- template<class _UniformRandomNumberGenerator1, int __s1,
- class _UniformRandomNumberGenerator2, int __s2>
class xor_combine
{
// __glibcxx_class_requires(typename _UniformRandomNumberGenerator1::
@@ -1616,19 +1512,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* probability throughout the range.
*/
template<typename _IntType = int>
- class uniform_int;
-
- template<typename _IntType, typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const uniform_int<_IntType>& __x);
-
- template<typename _IntType, typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- uniform_int<_IntType>& __x);
-
- template<typename _IntType>
class uniform_int
{
__glibcxx_class_requires(_IntType, _IntegerConcept)
@@ -1758,13 +1641,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* Generates a sequence of true and false values with likelihood @f$ p @f$
* that true will come up and @f$ (1 - p) @f$ that false will appear.
*/
- class bernoulli_distribution;
-
- template<typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const bernoulli_distribution& __x);
-
class bernoulli_distribution
{
public:
@@ -1855,15 +1731,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* distribution.
*/
template<typename _IntType = int, typename _RealType = double>
- class geometric_distribution;
-
- template<typename _IntType, typename _RealType,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const geometric_distribution<_IntType, _RealType>& __x);
-
- template<typename _IntType, typename _RealType>
class geometric_distribution
{
public:
@@ -1951,21 +1818,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* parameter of the distribution.
*/
template<typename _IntType = int, typename _RealType = double>
- class poisson_distribution;
-
- template<typename _IntType, typename _RealType,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const poisson_distribution<_IntType, _RealType>& __x);
-
- template<typename _IntType, typename _RealType,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- poisson_distribution<_IntType, _RealType>& __x);
-
- template<typename _IntType, typename _RealType>
class poisson_distribution
{
public:
@@ -2053,21 +1905,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* and @f$ p @f$ are the parameters of the distribution.
*/
template<typename _IntType = int, typename _RealType = double>
- class binomial_distribution;
-
- template<typename _IntType, typename _RealType,
- typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const binomial_distribution<_IntType, _RealType>& __x);
-
- template<typename _IntType, typename _RealType,
- typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- binomial_distribution<_IntType, _RealType>& __x);
-
- template<typename _IntType, typename _RealType>
class binomial_distribution
{
public:
@@ -2176,19 +2013,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* deliver number in the range [0, 1).
*/
template<typename _RealType = double>
- class uniform_real;
-
- template<typename _RealType, typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const uniform_real<_RealType>& __x);
-
- template<typename _RealType, typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- uniform_real<_RealType>& __x);
-
- template<typename _RealType>
class uniform_real
{
public:
@@ -2278,14 +2102,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* </table>
*/
template<typename _RealType = double>
- class exponential_distribution;
-
- template<typename _RealType, typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const exponential_distribution<_RealType>& __x);
-
- template<typename _RealType>
class exponential_distribution
{
public:
@@ -2369,19 +2185,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* e^{- \frac{{x - mean}^ {2}}{2 \sigma ^ {2}} } @f$.
*/
template<typename _RealType = double>
- class normal_distribution;
-
- template<typename _RealType, typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const normal_distribution<_RealType>& __x);
-
- template<typename _RealType, typename _CharT, typename _Traits>
- std::basic_istream<_CharT, _Traits>&
- operator>>(std::basic_istream<_CharT, _Traits>& __is,
- normal_distribution<_RealType>& __x);
-
- template<typename _RealType>
class normal_distribution
{
public:
@@ -2471,14 +2274,6 @@ _GLIBCXX_BEGIN_NAMESPACE(tr1)
* @f$ p(x) = \frac{1}{\Gamma(\alpha)} x^{\alpha - 1} e^{-x} } @f$.
*/
template<typename _RealType = double>
- class gamma_distribution;
-
- template<typename _RealType, typename _CharT, typename _Traits>
- std::basic_ostream<_CharT, _Traits>&
- operator<<(std::basic_ostream<_CharT, _Traits>& __os,
- const gamma_distribution<_RealType>& __x);
-
- template<typename _RealType>
class gamma_distribution
{
public: