OSDN Git Service

2006-08-22 Paolo Carlini <pcarlini@suse.de>
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / ChangeLog
index e5c4057..b3fac3e 100644 (file)
@@ -1,3 +1,285 @@
+2006-08-22  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (class subtract_with_carry_01): Add.
+       * include/tr1/random.tcc (subtract_with_carry_01<>::
+       seed(unsigned long), subtract_with_carry_01<>::
+       seed(_Gen&, false_type), subtract_with_carry_01<>::
+       operator(), operator<<(std::basic_ostream<>&, const
+       subtract_with_carry_01<>&), operator>>(std::basic_istream<>&,
+       subtract_with_carry_01<>&)): Define.
+       * testsuite/tr1/5_numerical_facilities/random/ranlux3_01.cc:
+       New.
+       * testsuite/tr1/5_numerical_facilities/random/ranlux4_01.cc:
+       Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/seed1.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/seed2.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/default.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/cons/gen1.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/requirements/typedefs.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/operators/equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/operators/not_equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry_01/operators/serialize.cc: Likewise.
+
+       * docs/html/ext/howto.html: Add two implemented TR1 issues.
+
+       * include/tr1/random.tcc (struct _To_Unsigned_Type): Move...
+       * include/tr1/random: ... here.
+       (class subtract_with_carry): Use it everywhere.
+
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/seed1.cc: Qualify 1 as 1UL.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/seed2.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/default.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/cons/gen1.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/requirements/typedefs.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/operators/equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/operators/not_equal.cc: Likewise.
+       * testsuite/tr1/5_numerical_facilities/random/
+       subtract_with_carry/operators/serialize.cc: Likewise.
+
+2006-08-20  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (gamma_distribution<>::_M_initialize,
+       gamma_distribution<>::_M_l_d): Add.
+       (gamma_distribution<>::gamma_distribution(const result_type&),
+       operator>>(std::basic_istream<>&, gamma_distribution&)): Use it.
+       include/tr1/random.tcc (gamma_distribution<>::_M_initialize):
+       Define.
+       (gamma_distribution<>::operator()): Adjust.
+
+       * include/tr1/random (geometric_distribution<>::_M_initialize): Add.
+       (geometric_distribution<>::geometric_distribution(const _RealType&),
+       operator>>(std::basic_istream<>&, geometric_distribution&)): Use it.
+
+2006-08-18  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (class binomial_distribution<>): Add.
+       * include/tr1/random.tcc (binomial_distribution<>::operator(),
+       operator<<(std::basic_ostream<>&, const binomial_distribution<>&),
+       operator>>(std::basic_istream<>&, binomial_distribution<>&,
+       binomial_distribution<>::_M_waiting(), binomial_distribution<>::
+       _M_initialize()): Define.
+       * testsuite/tr1/5_numerical_facilities/random/binomial_distribution/
+       requirements/typedefs.cc: New.
+
+       * include/tr1/random (geometric_distribution<>::
+       geometric_distribution(const _RealType&)): Fix DEBUG_ASSERT
+       limits.
+
+       * include/tr1/random (poisson_distribution): Add normal_distribution
+       member, adjust consistently; minor tweaks and rearrangements of the
+       arithmetic.
+       (operator>>(std::basic_istream<>&, poisson_distribution<>&)): Move
+       out of line.
+       * include/tr1/random.tcc: Adjust.
+
+       * include/tr1/random.tcc (normal_distribution<>::operator()): Minor
+       tweaks.
+
+2006-08-18  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28765
+       * include/ext/rc_string_base.h (_M_clear): New.
+       * include/ext/sso_string_base.h (_M_clear): Likewise.
+       * include/ext/vstring.h (clear): Use it.
+
+2006-08-15  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (poisson_distribution<>::_M_initialize): Add.
+       (poisson_distribution<>::poisson_distribution(const _RealType&):
+       Use it.
+       (operator>>(std::basic_istream<>&, poisson_distribution<>&)):
+       Likewise.
+       (poisson_distribution<>::_M_large): Remove.
+       * include/tr1/random.tcc (poisson_distribution<>::_M_initialize):
+       Define.
+       (operator<<(std::basic_ostream<>&, const poisson_distribution<>&)):
+       Do not output the constants.
+
+       * include/tr1/random (operator>>(std::basic_istream<>&,
+       gamma_distribution&)): Minor tweak.
+       
+       * include/tr1/random.tcc (poisson_distribution<>::operator()):
+       Minor tweak.
+
+       * include/tr1/random: Consistently, all data members private.
+
+2006-08-15  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (mersenne_twister<>::operator()): Revert
+       last change (per gcc-patches/2006-08/msg00484.html).
+
+2006-08-14  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random (class poisson_distribution<>): Add.
+       * include/tr1/random.tcc (poisson_distribution<>::operator(),
+       operator<<(std::basic_ostream<>&, const poisson_distribution<>&),
+       operator>>(std::basic_istream<>&, poisson_distribution<>&,
+       poisson_distribution<>::poisson_distribution(const _RealType&)):
+       Define.
+       * testsuite/tr1/5_numerical_facilities/random/poisson_distribution/
+       requirements/typedefs.cc: New.
+
+       * include/tr1/random.tcc (mersenne_twister<>::operator()): Tweak
+       a bit for efficiency.
+       
+       * include/tr1/random.tcc (operator<<(std::basic_ostream<>&,
+       const normal_distribution<>&), operator>>(std::basic_istream<>&,
+       normal_distribution<>&)): Do not output _M_saved unnecessarily.
+
+       * include/tr1/random: Trivial formatting fixes.
+       * include/tr1/cmath: Likewise.
+
+2006-08-11  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_bvector.h (__fill_bvector(_Bit_iterator,
+       _Bit_iterator, bool)): New.
+       (fill(_Bit_iterator, _Bit_iterator, const bool&)): Use it.
+
+2006-08-10  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/tr1/random.tcc (gamma_distribution<>::operator()): Fixes
+       from the Errata of Devroye's book.
+
+2006-08-10  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_bvector.h (_Bit_iterator_base::_M_incr(ptrdiff_t)):
+       Tidy a bit, thus reducing generated code size.
+
+2006-08-09  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_bvector.h (vector<bool>::_M_copy_aligned): New.
+       (vector<bool>::vector(const vector&), operator=(const vector&),
+       reserve(size_type), _M_fill_insert(iterator, size_type, bool),
+       _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
+       std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
+       * testsuite/performance/23_containers/copy_construct/
+       vector_bool.cc: New.
+
+       * testsuite/23_containers/vector/bool/cons/1.cc: New.
+       * testsuite/23_containers/vector/bool/cons/2.cc: Likewise.
+
+       * include/bits/stl_bvector.h (vector<bool>::_M_fill): Remove.
+       (fill(_Bit_iterator, _Bit_iterator, const bool&)): New.
+       (vector<bool>::_M_fill_insert(iterator, size_type, bool)): Adjust.
+
+       * include/bits/stl_bvector.h (_M_initialize_range(_InputIterator,
+       _InputIterator, std::input_iterator_tag)): Remove redundant
+       assignments.
+
+       * include/bits/stl_algo.h (find(istreambuf_iterator<>,
+       istreambuf_iterator<>, _CharT)): Adjust signature.
+       * include/bits/streambuf_iterator.h: Likewise.
+       * include/std/std_streambuf.h: Likewise.        
+
+2006-08-09  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_algobase.h (fill(const _Deque_iterator<>&,
+       const _Deque_iterator<>&, const _Tp&)): Move...
+       * include/bits/deque.tcc: ... here.
+       * include/bits/stl_deque.h: Declare.
+
+2006-08-06  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/16611
+       * include/bits/stl_bvector.h (vector<bool>::operator[],
+       vector<bool>::operator[] const): Do not use iterator::operator+,
+       hand code.
+
+2006-08-05  Paolo Carlini  <pcarlini@suse.de>
+
+       PR libstdc++/28587
+       * include/bits/stl_bvector.h (vector<bool>::_M_fill): New.
+       (vector<bool>::_M_fill_insert): Use it.
+       * testsuite/performance/23_containers/resize/vector_bool.cc: New.
+       
+       * testsuite/23_containers/vector/bool/modifiers/insert/1.cc: New.
+       * testsuite/23_containers/vector/bool/capacity/1.cc: Likewise.
+
+2006-08-04  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_queue.h (priority_queue<>::push,
+       priority_queue<>::pop): Remove try/catch, just follow the
+       letter of the Standard.
+
+2006-08-03  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_queue.h: Trivial formatting fixes.
+       * include/bits/stl_stack.h: Likewise.
+
+2006-08-01  Ed Smith-Rowland  <3dw4rd@verizon.net>
+
+       * docs/html/ext/tr1.html: Update.
+
+2006-07-31  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
+       Find the decimal point in cs, instead of ws; tidy.
+
+2006-07-30  Roger Sayle  <roger@eyesopen.com>
+
+       * include/ext/codevt_specializations.h (__iconv_adaptor): Use
+       identifier _Tp instead of _T in template argument to avoid conflict.
+
+2006-07-30  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/stl_algo.h (stable_sort): Uglify the buf variable.
+       * include/bits/stl_tempbuf.h (_Temporary_buffer<>::
+       _M_initialize_buffer): Uglify the val parameter.
+
+2006-07-27  Benjamin Kosnik  <bkoz@wells.artheist.org>
+
+       PR libstdc++/19664 round 3      
+       * include/Makefile.am (tr1_headers): Add hashtable_policy.h.
+       * include/Makefile.in: Regenerate.
+       * include/tr1/hashtable: Move policy classes into...
+       * include/tr1/hashtable_policy.h: ... this. New.
+       
+       * src/globals_locale.cc: Move contents....
+       * src/locale_init.cc: ... to here, put in anonymous namespace.
+       * src/Makefile.am: Remove globals_locale.cc.
+       * src/Makefile.in: Regenerate.
+
+       * src/locale.cc: Convert __gnu_internal to anonymous namespace.
+       * src/debug.cc: Same.
+       * src/ext-inst.cc: Same.
+       * src/mt_allocator.cc: Same.
+       * src/pool_allocator.cc: Same.
+       
+       * include/tr1/random: Convert std::tr1::_Private to anonymous
+       namespace.
+       * include/tr1/random.tcc: Same.
+
+       * include/tr1/hashtable: Move ::Internal to std::tr1::detail and
+       enclose bits that can actually be internal in in anonymous
+       namespace.
+       * include/tr1/unordered_set: Adjust explicit qualifications for
+       namespace changes.
+       * include/tr1/unordered_map: Same.
+
+       * include/tr1/cmath: Convert __gnu_internal to nested detail namespace.
+
+       * include/bits/cpp_type_traits.h: Move __type_type into anonymous
+       namespace.
+       
+       * include/ext/rope: Change _Rope_constants to anonymous namespace.
+       * include/ext/ropeimpl.h: Same.
+       * src/ext-inst.cc: Same.
+
 2006-07-24  Paolo Carlini  <pcarlini@suse.de>
 
        * include/tr1/cinttypes: Simply protect everything with
 
 2006-07-21  Jason Merrill  <jason@redhat.com>
 
+       PR libstdc++/19664 round 2      
        * libsupc++/eh_personality.cc: Wrap extern "C" function
        definitions in namespace __cxxabiv1.