* tree-eh.c (tree_could_trap_p): Handle VIEW_CONVERT_EXPR.
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobeb1a05b3161c773eb0b2b337ca8f3b42e31cc6dc
1 2007-02-18  Paolo Carlini  <pcarlini@suse.de>
3         PR libstdc++/28080 (partial)
4         * include/bits/stl_algobase.h: Do not include <climits>, use
5         std::numeric_limits.
6         * include/bits/stl_bvector.h: Use __CHAR_BIT__.
7         * config/locale/gnu/codecvt_members.cc: Include <climits>.
8         * config/locale/generic/codecvt_members.cc: Likewise.
9         * include/std/string: Do not include <algorithm>; do not include
10         <memory>, include <bits/allocator.h> instead.
11         * include/ext/vstring_fwd.h: Likewise.
12         * include/ext/vstring_util.h: Do not include <algorithm>.
13         * include/tr1/hashtable_policy.h: Include <algorithm>.
14         * testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
15         * testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
16         * testsuite/23_containers/bitset/cons/1.cc: Likewise.
17         * testsuite/util/testsuite_character.h: Likewise.
19         * config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
20         for MB_CUR_MAX.
21         * config/locale/generic/codecvt_members.cc: Likewise.
23 2007-02-16  Paolo Carlini  <pcarlini@suse.de>
25         Revert.
26         2007-02-14  Hans-Peter Nilsson  <hp@axis.com>
28         PR middle-end/30768
29         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc:
30         Xfail ICE for cris-*-*.
32 2007-02-14  Hans-Peter Nilsson  <hp@axis.com>
34         PR middle-end/30768
35         * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc:
36         Xfail ICE for cris-*-*.
38 2007-02-14  Benjamin Kosnik  <bkoz@redhat.com>
40         * configure.ac: Move AM_ICONV to native-only, add HAVE_ICONV for
41         newlib.
42         * configure: Regenerate.
44 2007-02-13  Dirk Mueller  <dmueller@suse.de>
46         * include/bits/locale_facets.tcc (num_get<>::do_get): Avoid
47         warning about ambiguous else.
49 2007-02-12  Paolo Carlini  <pcarlini@suse.de>
51         PR libstdc++/21172
52         * include/bits/stl_heap.h (__adjust_heap(_RandomAccessIterator,
53         _Distance, _Distance, _Tp), __adjust_heap(_RandomAccessIterator,
54         _Distance, _Distance, _Tp, _Compare)): Avoid potential integer
55         overflow.
57         * include/bits/stl_heap.h (__is_heap(_RandomAccessIterator,
58         _RandomAccessIterator), __is_heap(_RandomAccessIterator,
59         _RandomAccessIterator, _StrictWeakOrdering): Mark inline.
60         (make_heap(_RandomAccessIterator, _RandomAccessIterator,
61         _Compare)): Do not mark inline.
63         * include/bits/stl_heap.h (push_heap(_RandomAccessIterator,
64         _RandomAccessIterator), sort_heap(_RandomAccessIterator,
65         _RandomAccessIterator)): Uncomment __glibcxx_requires_heap.
67 2007-02-09  Richard Sandiford  <richard@codesourcery.com>
69         * testsuite/22_locale/time_put/put/wchar_t/1.cc: XFAIL if
70         dummy_wcsftime.
71         * testsuite/22_locale/time_put/put/wchar_t/5.cc: Likewise.
72         * testsuite/22_locale/time_put/put/wchar_t/9.cc: Likewise.
73         * testsuite/22_locale/time_put/put/wchar_t/10.cc: Likewise.
74         * testsuite/22_locale/num_get/get/wchar_t/2.cc: XFAIL if lax_strtofp.
75         * testsuite/22_locale/num_get/get/char/2.cc: Likewise.
76         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
77         Likewise.
78         * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/09.cc:
79         Likewise.
80         * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
81         Likewise.
82         * testsuite/27_io/basic_istream/extractors_arithmetic/char/09.cc:
83         Likewise.
84         * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/6.cc:
85         Likewise.
86         * testsuite/27_io/basic_ostream/inserters_arithmetic/char/6.cc:
87         Likewise.
88         * testsuite/26_numerics/cmath/c99_classification_macros_c++.cc: XFAIL
89         for uClibc.
90         * testsuite/26_numerics/cmath/c99_classification_macros_c.cc: Likewise.
92 2007-02-09  Paolo Carlini  <pcarlini@suse.de>
94         * scripts/testsuite_flags.in: Add back @LIBICONV@ to SECTIONLDFLAGS.
96 2007-02-08  Howard Hinnant  <hhinnant@apple.com>
98         PR libstdc++/17012
99         * include/bits/list.tcc (list<>::remove): Take care of
100         &*__first == &__value.
101         * docs/html/ext/howto.html: Add an entry for DR 526.
103 2007-02-07  Jakub Jelinek  <jakub@redhat.com>
105         PR libgomp/28468
106         * configure: Regenerate.
108 2007-02-07  Hans-Peter Nilsson  <hp@axis.com>
110         PR testsuite/28870
111         * testsuite/27_io/basic_stringbuf/overflow/char/1.cc: Use only
112         10000 iterations for simulator targets.
113         * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Use only 5
114         iterations for simulator targets.
115         * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Ditto.
116         * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Ditto.
117         * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Ditto.
118         * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Ditto.
119         * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Ditto.
120         * testsuite/ext/pb_ds/regression/priority_queue_rand.cc: Ditto.
121         * testsuite/23_containers/set/modifiers/16728.cc: Use only 10
122         iterations for simulator targets.
124 2007-02-06  Benjamin Kosnik  <bkoz@redhat.com>
125             Marco Trudel  <mtrudel@gmx.ch>
127         * include/precompiled/extc++.h: Guard include files that assume
128         iconv support is present from precompilation via
129         _GLIBCXX_HAVE_ICONV.
131 2007-02-05  Paolo Carlini  <pcarlini@suse.de>
133         * include/bits/stl_deque.h (operator<): Qualify call.
135 2007-02-02  Benjamin Kosnik  <bkoz@redhat.com>
137         * include/bits/c++config: Consistent macro guards for config includes.
138         * config/locale/gnu/c_locale.h: Same.
139         * config/locale/generic/c_locale.h: Same.
140         * config/allocator/mt_allocator_base.h: Same.
141         * config/allocator/malloc_allocator_base.h: Same.
142         * config/allocator/new_allocator_base.h: Same.
143         * config/allocator/pool_allocator_base.h: Same.
144         * config/allocator/bitmap_allocator_base.h: Same.
145         * config/os/vxworks/os_defines.h: Same.
146         * config/cpu/sh/atomicity.h: Same.
147         * config/io/c_io_stdio.h: Same.
148         * config/io/basic_file_stdio.h: Same.
150 2007-02-01  Paolo Carlini  <pcarlini@suse.de>
152         PR libstdc++/14493
153         * libsupc++/typeinfo (bad_cast::what, bad_typeid::what): Declare.
154         * libsupc++/tinfo.cc: Define.   
155         * libsupc++/exception (bad_exception::what): Declare.
156         * libsupc++/eh_exception.cc: Define.
157         (exception::what): Adjust, don't use typeid.
158         * libsupc++/new (bad_alloc::what): Declare.
159         * libsupc++/new_handler.cc: Define.
160         * config/abi/pre/gnu.ver: Export the new methods @3.4.9; adjust
161         existing 3.4.10 exports to 3.4.9.
162         * configure.ac: Adjust to 6.0.9.
163         * configure: Regenerate.
164         * testsuite/util/testsuite_abi.cc: Update.
165         * testsuite/18_support/14493.cc: New.
167 2007-02-01  Ben Elliston  <bje@au.ibm.com>
169         * libsupc++/eh_alloc.cc (__cxa_free_exception): Don't refer to the
170         emergency_buffer using `&array[0][0]' notation, use `array'.
172 2007-01-30  Benjamin Kosnik  <bkoz@redhat.com>
174         PR libstdc++/30571
175         * include/ext/pb_ds/detail/type_utils.hpp: Use C++0x
176         static_assert if available, if not, centralize PB_DS_STATIC_ASSERT
177         definition here.
178         * include/ext/pb_ds/detail/resize_policy/
179         cc_hash_max_collision_check_resize_trigger_imp.hpp: Remove
180         PB_DS_STATIC_ASSERT definition.
181         * include/ext/pb_ds/detail/resize_policy/
182         hash_load_check_resize_trigger_imp.hpp: Same.
183         * include/ext/pb_ds/detail/resize_policy/
184         hash_standard_resize_policy_imp.hpp: Same.
185         * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp: Same.
186         * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp: Same.
187         * include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
188         * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Same.
189         * include/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp: Same.
190         * include/ext/pb_ds/trie_policy.hpp: Same.
191         * testsuite/util/performance/assoc/timing/
192         tree_order_statistics_test.hpp: Same.
193         * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Adjust line numbers.
194         * testsuite/17_intro/headers_c++_c++0x_compat.cc: New.
195         
196         * include/precompiled/extc++.h: Update to current list of ext files.
198 2007-01-29  Paolo Carlini  <pcarlini@suse.de>
200         * include/bits/stl_uninitialized.h (uninitialized_copy(const char*,
201         const char*, char*), uninitialized_copy(const wchar_t*, const wchar_t*,
202         wchar_t*)): Remove, just forward to std::copy.
204 2007-01-29  Benjamin Kosnik  <bkoz@redhat.com>
206         * include/ext/enc_filebuf.h: Resurrect, update.
207         * include/ext/codecvt_specializations.h: Remove
208         _GLIBCXX_USE_ICONV, _GLIBCXX_USE_ENCODING_STATE.
209         * include/bits/localefwd.h: Remove declaration for __enc_traits.
210         * docs/html/22_locale/codecvt.html: Change __enc_traits to
211         encoding_state.
212         * scripts/testsuite_flags.in: Remove ICONV.
214         * configure.ac: Remove GLIBCXX_CHECK_ICONV_SUPPORT.
215         * acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove.
216         * crossconfig.m4: Remove use of GLIBCXX_CHECK_ICONV_SUPPORT.
217         * config.h.in: Remove HAVE_ICONV_CLOSE, HAVE_ICONV_OPEN,
218         HAVE_NL_LANGINFO, _GLIBCXX_USE_ICONV.
219         * include/Makefile.am: Uglify ICONV_CONST.
220         * configure: Regenerate.
221         * aclocal.m4: Regenerate.
222         * Makefile.in: Regenerate.
223         * src/Makefile.in: Regenerate.
224         * po/Makefile.in: Regenerate.
225         * libmath/Makefile.in: Regenerate.
226         * include/Makefile.in: Regenerate.
227         * libsupc++/Makefile.in: Regenerate.
228         * testsuite/Makefile.in: Regenerate.
230         * testsuite/ext/enc_filebuf/wchar_t/13189.cc: Use
231         dg-require-iconv, fix up for encoding_state changes.
232         * testsuite/ext/enc_filebuf/char/13189.cc: Same.
233         * testsuite/ext/enc_filebuf/char/13598.cc: Same.
234         * testsuite/22_locale/codecvt/unicode: Move...
235         * testsuite/22_locale/codecvt/unicode/char.cc: Move...
236         * testsuite/22_locale/codecvt/unicode/1.cc: Move...
237         * testsuite/22_locale/codecvt/unicode/wchar_t.cc: Move...
238         * testsuite/ext/codecvt: New.
239         * testsuite/ext/codecvt/char-1.cc: ...here. Also, use dg-require-iconv.
240         * testsuite/ext/codecvt/char-2.cc: ...here. Same.
241         * testsuite/ext/codecvt/1.cc: ...here. Same.
242         * testsuite/ext/codecvt/wchar_t.cc: ...here. Same.
243         * testsuite/22_locale/locale/cons/unicode: Delete directory.
244         * testsuite/22_locale/locale/cons/unicode/1.cc: Move...
245         * testsuite/22_locale/locale/cons/unicode.cc: ...here.
247 2007-01-28  Paolo Carlini  <pcarlini@suse.de>
249         * include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
250         iter_type, ios_base&, ios_base::iostate&, bool&),
251         num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT)):
252         -Wconversion and -Woverflow fixes.
253         * include/bits/istream.tcc (operator>>(int&), operator>>(short&)):
254         Likewise.
255         * include/std/valarray (valarray<>::shift, cshift): Likewise.
257 2007-01-26  Paolo Carlini  <pcarlini@suse.de>
259         PR libstdc++/30586
260         * config/cpu/ia64/atomic_word.h: Just include <bits/cxxabi_tweaks.h>.
261         * testsuite/abi/30586.cc: New.
263 2007-01-25  Nathan Myers  <ncm@cantrip.org>
265         * include/bits/streambuf_iterator.h (istreambuf_iterator<>::equal):
266         Simplify.
268 2007-01-24   Steve LoBasso <slobasso@yahoo.com>
269              Paolo Carlini  <pcarlini@suse.de>
271         * include/bits/deque.tcc (deque<>::erase(iterator, iterator)):
272         Fix condition.
273         * testsuite/23_containers/deque/modifiers/erase/3.cc: New.
275 2007-01-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>
277         * libsupc++/eh_personality.cc  (PERSONALITY_FUNCTION): Replace
278         _Unwind_Word with _uleb128_t in the SJLJ context.
280 2007-01-24  Benjamin Kosnik  <bkoz@redhat.com>
282         PR libstdc++/29722 continued
283         * testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Add
284         libsupc++ library directory.
285         * testsuite/abi/cxx_runtime_only_linkage.cc: Remove hard-coded
286         path specification.
287         
288 2007-01-24  Andreas Krebbel  <krebbel1@de.ibm.com>
290         * libsupc++/eh_personality.cc (parse_lsda_header, check_exception_spec,
291         get_ttype_entry, empty_exception_spec, PERSONALITY_FUNCTION): Replaced
292         _Unwind_Word with _uleb128_t and _Unwind_SWord with _sleb128_t.
294 2007-01-22  Paolo Carlini  <pcarlini@suse.de>
296         * include/bits/stl_algobase.h (__fill_aux(unsigned char*,
297         unsigned char*, const unsigned char&), __fill_aux(signed char*,
298         signed char*, const signed char&), __fill_aux(char*, char*,
299         const char&), __fill_aux(wchar_t*, wchar_t*, const wchar_t&)):
300         Take the character by value.
301         (__fill_n_aux): Likewise.
303 2007-01-21  Paolo Carlini  <pcarlini@suse.de>
305         PR libstdc++/30449 (fill, fill_n)
306         * include/bits/stl_algobase.h (__fill_aux(wchar_t*, wchar_t*,
307         const wchar_t&), __fill_n_aux(wchar_t*, _Size, const wchar_t&)): New.
308         (fill(signed char*, signed char*, const signed char&),
309         fill(unsigned char*, unsigned char*, const unsigned char&),
310         fill(char*, char*, char&), fill_n(signed char*, _Size,
311         const signed char&), fill_n(unsigned char*, _Size,
312         const unsigned char&), fill_n(char*, _Size, char&)): Rename to
313         __*_aux.
314         (__fill_normal, __fill_n_normal): New, call the latter.
315         (fill, fill_n): Adjust, call the latter.        
316         * testsuite/25_algorithms/fill/4.cc: New.
317         * testsuite/25_algorithms/fill/5.cc: New.
319 2007-01-18  Paolo Carlini  <pcarlini@suse.de>
321         * include/bits/basic_string.h (basic_string<>::_S_compare): Add.
322         (compare(const basic_string&)): Use it.
323         * include/bits/basic_string.tcc (compare(size_type, size_type,
324         const basic_string&), compare(size_type, size_type,
325         const basic_string&, size_type, size_type), compare(const _CharT*),
326         compare(size_type, size_type, const _CharT*), compare(size_type,
327         size_type, const _CharT*, size_type)): Likewise.
328         * include/ext/vstring_util.h (__vstring_utility<>::_S_compare): Add.
329         * include/ext/vstring.h (compare(const __versa_string&)): Use it.
330         * include/ext/vstring.tcc (compare(size_type, size_type,
331         const __versa_string&), compare(size_type, size_type,
332         const __versa_string&, size_type, size_type), compare(const _CharT*),
333         compare(size_type, size_type, const _CharT*), compare(size_type,
334         size_type, const _CharT*, size_type)): Likewise.
336 2007-01-15  Ian Lance Taylor  <iant@google.com>
337             Paolo Carlini  <pcarlini@suse.de>
339         * include/ext/type_traits.h: Fix __glibcxx_max macro.
340         * include/std/limits: Likewise.
342 2007-01-15  Paolo Carlini  <pcarlini@suse.de>
344         * include/std/valarray (valarray<>::cshift): Fix typo.
346 2007-01-14  Paolo Carlini  <pcarlini@suse.de>
348         * include/bits/stl_algobase.h (fill_n(char*, _Size,
349         const signed char&)): Fix signature.
350         * testsuite/25_algorithms/fill/3.cc: New.
352 2007-01-13  John David Anglin  <dave.anglin@nrc-cnrc.gc>
354         * config/cpu/hppa/atomicity.h (__exchange_and_add): Don't use ordered
355         store.
356         (__atomic_add): Likewise.
358 2007-01-13  Paolo Carlini  <pcarlini@suse.de>
360         PR libstdc++/14991
361         * docs/html/17_intro/porting-howto.html ([3]): Mention stdio_filebuf.
362         * docs/html/17_intro/porting-howto.xml: Remove.
364         * docs/html/17_intro/porting-howto.html: Remove spurious end tags
365         pointed out by validator.w3.org.
367 2007-01-12  Paolo Carlini  <pcarlini@suse.de>
369         PR libstdc++/30416 (continued)
370         * include/std/valarray (valarray<>::shift, valarray<>::cshift):
371         Allways return the same variable, thus facilitating NRVO.
373 2007-01-12  Paolo Carlini  <pcarlini@suse.de>
375         PR libstdc++/30416
376         * include/std/valarray (valarray<>::shift, valarray<>::cshift):
377         Do not segfault when |n| > size.
378         * testsuite/26_numerics/valarray/30416.cc: New.
380 2007-01-06  Paolo Carlini  <pcarlini@suse.de>
382         PR libstdc++/30365
383         * crossconfig.m4 (case *-linux*): Run GLIBCXX_CHECK_LFS.
384         * configure: Regenerate.
386 2007-01-06  Matthias Klose  <doko@debian.org>
388         * include/tr1/random (gamma_distribution): Fix typo in formula.
389         * docs/doxygen/user.cfg.in: Use package amsmath.