1 2011-12-30 Jonathan Wakely <jwakely.gcc@gmail.com>
3 * doc/xml/manual/extensions.xml: Improve markup and note that some
4 extensions are included in C++11.
5 * doc/xml/manual/concurrency_extensions.xml: Likewise.
7 2011-12-30 Paolo Carlini <paolo.carlini@oracle.com>
10 * include/bits/regex.h (regex_replace): Fix thinko.
11 * testsuite/28_regex/algorithms/regex_replace/char/51711.cc: New.
12 * testsuite/28_regex/algorithms/regex_replace/wchar_t/51711.cc:
15 2011-12-29 Paolo Carlini <paolo.carlini@oracle.com>
17 * include/bits/hashtable_policy.h (struct _Ebo_helper<>): Don't use
18 _N, badname on Solaris; minor stylistic changes.
20 2011-12-29 François Dumont <fdumont@gcc.gnu.org>
23 * include/bits/hashtable_policy.h (_Equal_helper<>): New, change the
24 way the _Equal functor is used depending on whether hash code is
26 (_Ebo_helper<>): New helper type to introduce EBO when possible.
27 (_Hash_code_base): Use _Ebo_helper to limit memory footprint. Move
28 _Equal functor management...
29 (_Hashtable_base): ...here, new, use _Equal_helper.
30 (_Local_iterator_base<>, _Local_iterator<>, _Local_const_iterator<>):
31 New, use _Hash_code_base, implementation of...
32 * include/bits/hashtable.h (_Hashtable<>::local_iterator,
33 _Hashtable<>::const_local_iterator): ...those. Add static assertions
34 checking that some functors are empty depending on whether hash code
36 (_Hashtable<>::_M_bucket_index): New overloads using current bucket
37 count, use through out the _Hastable<> implementation.
38 * include/bits/unordered_set.h (__unordered_set<>,
39 __unordered_multiset<>): Cache hash code iff hash functor is not
41 * include/bits/unordered_map.h (__unordered_map<>,
42 __unordered_multimap<>): Likewise.
43 * include/debug/unordered_map
44 (unordered_map<>::_S_to_local, unordered_multimap<>::_S_to_local):
45 Adapt to match new local iterator implementation.
46 * include/debug/unordered_set (unordered_set<>::_S_to_local,
47 unordered_multiset<>::_S_to_local): Likewise.
48 * include/profile/unordered_map (unordered_map<>::_M_profile_destruct,
49 unordered_multimap<>::_M_profile_destruct): Enhance thanks to usage of
51 * include/profile/unordered_set (unordered_set<>::_M_profile_destruct,
52 unordered_multiset<>::_M_profile_destruct): Likewise.
53 * testsuite_files/23_containers/unordered_set/instantiation_neg.cc:
55 * testsuite_files/23_containers/unordered_set/final_hash.cc: New.
56 * testsuite_files/23_containers/unordered_multiset/final_hash.cc: New.
57 * testsuite_files/23_containers/unordered_map/final_hash.cc: New.
58 * testsuite_files/23_containers/unordered_multimap/final_hash.cc: New.
60 2011-12-29 Jonathan Wakely <jwakely.gcc@gmail.com>
63 * doc/xml/manual/extensions.xml (Input and Output): Remove reference
66 2011-12-23 Jonathan Wakely <jwakely.gcc@gmail.com>
68 * testsuite/tr1/2_general_utilities/shared_ptr/cons/
69 weak_ptr_expired.cc: Modify to PASS instead of XFAIL.
71 2011-12-23 Kai Tietz <ktietz@redhat.com>
73 * config/os/mingw32-w64/os_defines.h (__USE_MINGW_ANSI_STDIO): Define.
75 2011-12-23 Jonathan Wakely <jwakely.gcc@gmail.com>
77 * include/c_global/cinttypes: Update comments that refer to TR1.
79 2011-12-23 Jonathan Wakely <jwakely.gcc@gmail.com>
82 * include/std/future (future_errc): Implement LWG 2056.
84 2011-12-23 Jonathan Wakely <jwakely.gcc@gmail.com>
86 * include/bits/regex.h (match_results::size_type): Use
89 2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
92 * testsuite/libstdc++-prettyprinters/48362.cc: New.
94 2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
97 * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle empty
100 2011-12-20 Jonathan Wakely <jwakely.gcc@gmail.com>
103 * include/std/tuple (_Tuple_impl): Check __is_final as well as
105 * testsuite/20_util/tuple/51365.cc: New.
107 2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
109 * libsupc++/eh_tm.cc (free_any_cxa_exception): Use
110 __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.
112 2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
114 * testsuite/performance/25_algorithms/search_n.cc: Disambiguate
117 2011-12-18 Jonathan Wakely <jwakely.gcc@gmail.com>
119 * doc/xml/manual/iterators.xml: Replace "sect1" with "section".
120 * doc/xml/manual/algorithms.xml: Likewise.
121 * doc/html/manual/iterators.html: Likewise.
122 * doc/html/manual/algorithms.html: Likewise.
124 2011-12-15 Paolo Carlini <paolo.carlini@oracle.com>
125 Jonathan Wakely <jwakely.gcc@gmail.com>
128 * include/bits/functional_hash.h (struct hash): Add static_assert.
129 * src/compatibility-c++0x.cc: Adjust compatibility definitions.
130 * testsuite/23_containers/unordered_map/erase/51142.cc: Adjust.
131 * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
132 * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
133 * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
135 2011-12-15 Benjamin Kosnik <bkoz@redhat.com>
137 * testsuite/22_locale/num_put/put/char/9780-2.cc: Add test for "C"
138 locale, add sanity checks in case of grouping.
140 2011-12-15 Jonathan Wakely <jwakely.gcc@gmail.com>
143 * include/bits/stl_numeric.h (partial_sum): Adjust doxygen comments.
145 2011-12-12 Paolo Carlini <paolo.carlini@oracle.com>
148 2011-12-12 Kai Tietz <ktietz@redhat.com>
151 * libsupc++/cxxabi.h (__cxa_dtor_type): New type.
152 (__cxa_throw): Use it for destructor-argument.
153 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
154 * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
155 exceptionDestructor to __cxa_dtor_type.
156 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
158 (__cxa_dtor_type): Declare target secific type variant.
159 * config/os/mingw32/os_defines.h: Likewise.
161 2011-12-12 Kai Tietz <ktietz@redhat.com>
164 * libsupc++/cxxabi.h (__cxa_dtor_type): New type.
165 (__cxa_throw): Use it for destructor-argument.
166 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
167 * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
168 exceptionDestructor to __cxa_dtor_type.
169 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
171 (__cxa_dtor_type): Declare target secific type variant.
172 * config/os/mingw32/os_defines.h: Likewise.
174 2011-12-11 Jonathan Wakely <jwakely.gcc@gmail.com>
176 * doc/xml/manual/abi.xml: Replace gcc-x.y.z with GCC x.y.z or x.y,
177 remove excessive duplication of version information.
178 * doc/html/*: Regenerate.
180 2011-12-10 Benjamin Kosnik <bkoz@redhat.com>
182 * doc/doxygen/user.cfg.in: Add macros, directories.
183 * include/bits/locale_classes.h: Remove doxygen warnings, fix markup.
184 * include/bits/locale_classes.tcc: Same.
185 * include/bits/shared_ptr.h: Same.
186 * include/bits/stl_algo.h: Same.
187 * include/bits/stl_list.h: Same.
188 * include/bits/stl_numeric.h: Same.
189 * include/debug/safe_base.h: Same.
190 * include/parallel/equally_split.h: Same.
191 * include/std/bitset: Same.
192 * include/std/complex: Same.
193 * include/std/fstream: Same.
194 * include/std/istream: Same.
195 * include/std/ostream: Same.
196 * include/tr2/dynamic_bitset: Same.
197 * scripts/run_doxygen: Remove munging for names that no longer exist.
199 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
201 * testsuite/23_containers/list/requirements/dr438/
202 constructor_1_neg.cc: Same.
203 * testsuite/23_containers/list/requirements/dr438/
204 constructor_2_neg.cc: Same.
205 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
207 2011-12-10 François Dumont <fdumont@gcc.gnu.org>
209 * include/profile/unordered_set: Minor formatting changes.
210 (unordered_set<>::_M_profile_destruct,
211 unordered_multiset<>::_M_profile_destruct): Fix implementation to not
212 rely on normal implementation details anymore.
213 (unordered_set<>::_M_profile_resize,
214 unordered_multiset<>::_M_profile_resize): Implement consistently
215 accross all unordered containers.
216 (unordered_set<>::emplace, unordered_set<>::emplace_hint,
217 unordered_multiset<>::emplace, unordered_multset<>::emplace_hint): Add
218 to signal rehash to profiling system.
219 * include/profile/unordered_map: Likewise for unordered_map<> and
220 unordered_multimap<>.
222 2011-12-09 François Dumont <fdumont@gcc.gnu.org>
224 PR libstdc++/44436 (unordered containers emplace, emplace_hint bits)
225 * include/bits/hashtable.h (_Hashtable<>::emplace,
226 _Hashtable<>::emplace_hint): Add.
227 * include/debug/unordered_set (unordered_set<>::emplace,
228 unordered_set<>::emplace_hint, unordered_multiset<>::emplace,
229 unordered_multiset<>::emplace_hint): Add.
230 * include/profile/unordered_set: Likewise.
231 * include/debug/unordered_map (unordered_map<>::emplace,
232 unordered_map<>::emplace_hint, unordered_multimap<>::emplace,
233 unordered_multimap<>::emplace_hint): Add.
234 * include/profile/unordered_map: Likewise.
235 * testsuite/23_containers/unordered_map/modifiers/emplace.cc: New.
236 * testsuite/23_containers/unordered_multimap/modifiers/emplace.cc:
238 * testsuite/23_containers/unordered_set/modifiers/emplace.cc: New.
239 * testsuite/23_containers/unordered_multiset/modifiers/emplace.cc:
241 * testsuite/util/testsuite_container_traits.h
242 (traits_base::has_emplace): Add and defined as std::true_type for
243 unordered containers.
244 * testsuite/util/exception/safety.h (emplace, emplace_hint): Add and
245 use them in basic_safety exception test case.
246 * doc/xml/manual/status_cxx2011.xml: Update unordered containers
249 2011-12-08 Jonathan Wakely <jwakely.gcc@gmail.com>
251 * include/bits/atomic_base.h (__calculate_memory_order): Rename to...
252 (__cmpexch_failure_order): This, and rewrite as constexpr function.
253 (compare_exchange_strong, compare_exchange_weak): Use it.
254 * include/std/atomic (compare_exchange_strong, compare_exchange_weak):
257 2011-12-07 François Dumont <fdumont@gcc.gnu.org>
260 * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt):
261 Fix computation of _M_prev_resize so that hashtable do not keep on
262 being rehashed when _M_max_load_factor is lower than 1.
264 2011-12-06 Paolo Carlini <paolo.carlini@oracle.com>
267 * libsupc++/nested_exception.h (nested_exception::~nested_exception):
269 * libsupc++/nested_exception.cc: Adjust.
270 * testsuite/18_support/nested_exception/51438.cc: New.
271 * testsuite/18_support/nested_exception/throw_with_nested.cc: Adjust.
272 * testsuite/18_support/nested_exception/rethrow_if_nested.cc:
275 * src/shared_ptr.cc: Use noexcept where appropriate.
276 * include/std/system_error: Likewise.
277 * include/std/functional: Likewise.
278 * include/bits/shared_ptr_base.h: Likewise.
279 * src/stdexcept.cc: Use _GLIBCXX_USE_NOEXCEPT where appropriate.
280 * include/std/stdexcept: Likewise.
281 * libsupc++/bad_cast.cc: Likewise.
282 * libsupc++/bad_typeid.cc: Likewise.
283 * libsupc++/eh_exception.cc: Likewise.
284 * libsupc++/typeinfo: Likewise.
285 * libsupc++/exception: Likewise.
286 * libsupc++/eh_ptr.cc: Likewise.
287 * libsupc++/bad_alloc.cc: Likewise.
288 * libsupc++/exception_ptr.h: Likewise.
290 * include/std/chrono: Use noexcept where appropriate.
291 * src/chrono.cc: Likewise.
293 2011-12-06 Jonathan Wakely <jwakely.gcc@gmail.com>
294 Chris Jefferson <chris@bubblescope.net>
297 * include/std/stl_pair.h (pair<>::__cons, pair<>::__do_cons): Remove.
298 (pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Only declare.
299 (pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)):
301 * include/std/tuple (pair<>::__cons, pair<>::__do_cons): Remove.
302 (pair<>::pair(tuple<>&, tuple<>&, _Index_tuple<>, _Index_tuple<>)):
304 (pair<>::pair(piecewise_construct_t, tuple<>, tuple<>): Define,
305 delegating to the latter.
306 * testsuite/20_util/pair/piecewise2.cc: New.
308 2011-12-05 Paolo Carlini <paolo.carlini@oracle.com>
310 * libsupc++/initializer_list: Do not declare anything if
311 __GXX_EXPERIMENTAL_CXX0X__ is not defined.
313 2011-12-04 Jonathan Wakely <jwakely.gcc@gmail.com>
315 * include/std/type_traits: Doxygen improvements.
316 * include/bits/move.h: Likewise.
317 * include/tr1/type_traits: Likewise.
318 * include/tr2/type_traits: Likewise.
319 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
321 * testsuite/20_util/forward/c_neg.cc: Likewise.
322 * testsuite/20_util/forward/f_neg.cc: Likewise.
323 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
325 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
328 2011-12-04 Markus Trippelsdorf <markus@trippelsdorf.de>
329 Jonathan Wakely <jwakely.gcc@gmail.com>
331 * include/bits/stl_heap.h (pop_heap): Check for non-empty range in
332 overload taking a predicate.
333 * testsuite/25_algorithms/pop_heap/empty2_neg.cc: New.
335 2011-12-03 Jonathan Wakely <jwakely.gcc@gmail.com>
337 * include/debug/macros.h (__glibcxx_check_non_empty_range): Define.
338 * include/debug/debug.h (__glibcxx_requires_non_empty_range): Define.
339 * include/debug/formatter.h (__msg_non_empty_range): Add.
340 * src/debug.cc: Message text for __msg_non_empty_range.
341 * include/bits/stl_heap.h (pop_heap): Check for non-empty range.
342 * testsuite/25_algorithms/pop_heap/empty_neg.cc: New.
344 2011-12-03 Jonathan Wakely <jwakely.gcc@gmail.com>
346 * doc/xml/manual/utilities.xml: Remove outdated text.
348 2011-12-02 Paolo Carlini <paolo.carlini@oracle.com>
350 * include/std/iomanip (put_money): Fix thinko, use __err local,
351 like in, eg, basic_ostream::_M_insert.
353 2011-11-30 Benjamin Kosnik <bkoz@redhat.com>
355 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Remove
356 size-specific macros. _GLIBCXX_ATOMIC_BUILTINS_1,
357 _GLIBCXX_ATOMIC_BUILTINS_2, _GLIBCXX_ATOMIC_BUILTINS_4,
358 _GLIBCXX_ATOMIC_BUILTINS_8. Use _GLIBCXX_ATOMIC_BUILTINS to
359 indicate use of C++11 atomic builtins.
360 * config.h.in: Regenerate.
361 * configure: Regenerate.
362 * include/Makefile.am (bits_sup_headers): Add atomic_lockfree_defines.h.
363 * include/Makefile.in: Regenerate.
364 * libsupc++/Makefile.am: Compile C++11 support with -std=gnu++0x.
365 * libsupc++/Makefile.in: Regenerate.
367 * include/bits/atomic_base.h: Move lock-free property macros...
368 * libsupc++/atomic_lockfree_defines.h: ...here.
369 * include/std/future: Use C++11 macros.
370 * libsupc++/eh_ptr.cc: Same.
371 * libsupc++/eh_throw.cc: Same.
372 * libsupc++/exception: Same.
373 * libsupc++/exception_ptr.h: Same.
374 * libsupc++/guard.cc: Same.
375 * libsupc++/nested_exception.cc: Same.
376 * libsupc++/nested_exception.h: Same.
377 * src/future.cc: Same.
379 * include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS.
381 * doc/doxygen/user.cfg.in: Adjust.
382 * doc/xml/manual/concurrency_extensions.xml: Add note.
384 * testsuite/18_support/exception_ptr/lifespan.cc: Tweak.
385 * testsuite/lib/libstdc++.exp: Same.
387 2011-11-29 François Dumont <fdumont@gcc.gnu.org>
389 * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Remove code
390 useless now that the hashtable implementation put the hash code in
391 cache if the hash functor throws.
392 * testsuite/23_containers/unordered_set/erase/1.cc: Enhance test by
393 checking also distance between begin and end iterators to validate
394 underlying data model.
395 * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
396 * testsuire/23_containers/unordered_map/erase/1.cc: Likewise.
397 * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
398 * testsuite/23_containers/unordered_multiset/erase/2.cc: New.
399 * testsuite/23_containers/unordered_multimap/erase/2.cc: New.
401 2011-11-28 Andrew MacLeod <amacleod@redhat.com>
403 * include/bits/atomic_base.h (ATOMIC_*_LOCK_FREE): Use new cpp
405 * testsuite/29_atomics/headers/atomic/macros.cc: Add BOOL and POINTER
406 macro checks. Check for expected compile time values.
408 2011-11-28 Paolo Carlini <paolo.carlini@oracle.com>
411 * include/std/iomanip (get_money, put_money): Use sentry.
412 * testsuite/27_io/manipulators/extended/get_money/char/51288.cc: New.
413 * testsuite/27_io/manipulators/extended/get_money/wchar_t/51288.cc:
415 * testsuite/27_io/manipulators/extended/put_money/char/51288.cc:
417 * testsuite/27_io/manipulators/extended/put_money/wchar_t/51288.cc:
420 2011-11-27 Gerald Pfeifer <gerald@pfeifer.com>
422 * doc/xml/manual/using.xml (Prerequisites): Refer to x86 instead
425 2011-11-27 Gerald Pfeifer <gerald@pfeifer.com>
427 * scripts/run_doxygen (problematic): Change Linux reference to
430 2011-11-26 Gerald Pfeifer <gerald@pfeifer.com>
432 * doc/xml/manual/abi.xml (Prerequisites): Refer to GNU/Linux.
433 Fix reference to GCC.
435 2011-11-26 Jonathan Wakely <jwakely.gcc@gmail.com>
438 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
440 * testsuite/30_threads/future/cons/constexpr.cc: Disable debug
442 * testsuite/30_threads/shared_future/cons/constexpr.cc: Likewise.
444 2011-11-23 François Dumont <fdumont@gcc.gnu.org>
447 * include/bits/hashtable.h (_Hashtable<>): Major data model
448 modification to limit performance impact of empty buckets in
449 erase(iterator) implementation.
450 * include/bits/hashtable_policy.h (_Hashtable_iterator,
451 _Hashtable_const_iterator): Remove not used anymore.
452 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
453 _M_grow_factor, just use natural evolution of prime numbers. Add
454 _M_prev_size to know when the number of buckets can be reduced.
455 * include/bits/unordered_set.h (__unordered_set<>,
456 __unordered_multiset<>), unordered_map.h (__unordered_map<>,
457 __unordered_multimap<>): Change default value of cache hash code
458 template parameter, false for integral types with noexcept hash
459 functor, true otherwise.
460 * include/debug/unordered_map, unordered_set: Adapt transformation
461 from iterator/const_iterator to respectively
462 local_iterator/const_local_iterator.
463 * testsuite/performance/23_containers/copy_construct/unordered_set.cc:
465 * testsuite/23_containers/unordered_set/instantiation_neg.cc: New.
466 * testsuite/23_containers/unordered_set/hash_policy/rehash.cc: New.
467 * testsuite/23_containers/unordered_multiset/cons/copy.cc: New.
468 * testsuite/23_containers/unordered_multiset/erase/1.cc,
469 24061-multiset.cc: Add checks on the number of bucket elements.
470 * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc,
471 multiset_single.cc, multiset_single_move.cc: Likewise.
473 2011-11-21 Jonathan Wakely <jwakely.gcc@gmail.com>
475 * include/std/functional (is_placeholder, is_bind_expression): Add
476 partial specializations for cv-qualified types.
477 * include/tr1/functional (is_placeholder, is_bind_expression): Add
478 partial specializations for std::bind and std::placeholders and for
480 * testsuite/20_util/bind/cv_quals_3.cc: New.
481 * testsuite/tr1/3_function_objects/bind/cv_quals.cc: New.
482 * testsuite/tr1/3_function_objects/bind/mixed.cc: New.
484 2011-11-21 Andreas Tobler <andreast@fgznet.ch>
486 * configure: Regenerate.
488 2011-11-21 Daniel Krugler <daniel.kruegler@googlemail.com>
491 * include/std/type_traits (__is_base_to_derived_ref,
492 __is_lvalue_to_rvalue_ref): Fix.
493 * testsuite/20_util/is_constructible/51185.cc: New.
494 * testsuite/20_util/is_constructible/value-2.cc: Extend.
495 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
497 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
499 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc
502 2011-11-21 Paolo Carlini <paolo.carlini@oracle.com>
504 * include/std/tuple (__conv_types, __one_by_one_convertible,
505 __all_convertible): Remove.
506 (tuple<>::tuple(_UElements&&...),
507 tuple<>::tuple(const tuple<_UElements...>&),
508 tuple<>::tuple(tuple<_UElements...>&&)): Remove wa for c++/48322.
509 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
512 2011-11-20 Jason Merrill <jason@redhat.com>
515 * include/std/tuple (tuple(_UElements&&...)): Fix SFINAE.
517 * testsuite/20_util/bind/ref_neg.cc: Adjust error markings.
519 2011-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
521 * include/backward/binders.h: Fix examples in doxygen comments and
522 suggest using std::bind instead.
524 2011-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
526 * doc/xml/manual/status_cxx2011.xml: Fix docbook markup.
528 2011-11-20 Jonathan Wakely <jwakely.gcc@gmail.com>
530 * doc/xml/manual/appendix_contributing.xml: Do not use "here" as link
532 * doc/xml/faq.xml: Likewise. Do not request standard library issues
533 to be reported to the libstdc++ mailing list.
534 * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
536 * doc/xml/manual/status_cxxtr1.xml: Likewise.
537 * doc/xml/manual/utilities.xml: Fix grammar, probably caused by a
538 global search and replace of "part" by "chapter".
539 * doc/xml/manual/shared_ptr.xml: Remove outdated information.
540 * doc/xml/manual/messages.xml: Be more specific about systems where
541 using 'int' for catalog handle is not a problem, mention LWG issue.
543 2011-11-19 Paolo Carlini <paolo.carlini@oracle.com>
545 * include/debug/bitset (operator[](size_t) const): Declare constexpr.
546 * include/profile/bitset: Likewise.
547 * testsuite/23_containers/bitset/operations/constexpr.cc: Split out
548 non portable bits to...
549 * testsuite/23_containers/bitset/operations/constexpr-2.cc: ... here.
551 2011-11-18 Harti Brandt <hartmut.brandt@dlr.de>
554 * include/bits/hashtable.h (_Hashtable<>::_M_find_node): Return
555 nullptr when no node is found.
556 * include/tr1/hashtable.h (_Hashtable<>::_M_find_node): Return
557 zero when no node is found.
559 2011-11-18 Paolo Carlini <paolo.carlini@oracle.com>
561 * src/hash-long-double-aux.cc: Rename to...
562 * src/hash-long-double-tr1-aux.cc: ... this.
563 * src/compatibility-ldbl.cc: Adjust.
564 * src/hash_tr1.cc: Likewise.
565 * src/hash_c++0x.cc: Don't use src/hash-long-double-aux.cc.
566 * include/bits/functional_hash.h (hash<_Tp*>::operator(), specs
567 for integer types, hash<float>::operator(), hash<double>::operator(),
568 hash<long double>::operator()): Declare noexcept.
569 * include/debug/bitset (hash<__debug::bitset>::operator()): Likewise.
570 * include/debug/vector (hash<__debug::vector>::operator()): Likewise.
571 * include/std/system_error (hash<error_code>::operator()): Likewise.
572 * include/std/thread (hash<thread::id>::operator()): Likewise.
573 * include/std/bitset (hash<bitset>::operator()): Likewise.
574 * include/std/typeindex (hash<type_index>::operator()): Likewise.
575 * include/profile/bitset (hash<__profile::vector>::operator()):
577 * include/profile/vector (hash<__profile::vector>::operator()):
579 * include/ext/vstring.h (hash<__vstring>::operator(),
580 hash<__wvstring>::operator(), hash<__u16vstring>::operator(),
581 hash<__u32vstring>::operator()): Likewise.
582 * include/bits/shared_ptr.h (hash<shared_ptr>::operator()): Likewise.
583 * include/bits/shared_ptr_base.h (hash<__shared_ptr>::operator()):
585 * include/bits/unique_ptr.h (hash<unique_ptr>::operator()): Likewise.
586 * include/bits/basic_string.h (hash<string>::operator(),
587 hash<wstring>::operator(), hash<u16string>::operator(),
588 hash<u32string>::operator()): Likewise.
589 * include/bits/vector.tcc (hash<vector>::operator()): Likewise.
590 * include/bits/stl_bvector.h (hash<vector>::operator()): Likewise.
591 * libsupc++/typeinfo (type_info::hash_code): Use noexcept instead of
594 2011-11-17 Richard Henderson <rth@redhat.com>
597 * libsupc++/eh_tm.cc (free_any_cxa_exception): Protect the use
598 of __sync_sub_and_fetch with _GLIBCXX_ATOMIC_BUILTINS_4.
600 2011-11-18 Jonathan Wakely <jwakely.gcc@gmail.com>
602 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
605 2011-11-17 Jason Merrill <jason@redhat.com>
607 * testsuite/21_strings/basic_string/cons/char/moveable2.cc
608 (tstring): Add defaulted move assignment.
609 * testsuite/21_strings/basic_string/cons/wchar_t/moveable2.cc
610 (tstring): Add defaulted move assignment.
611 * testsuite/util/testsuite_tr1.h (NoexceptMoveConsClass): Add
612 defaulted move assignment operator.
613 (NoexceptMoveAssignClass): Add defaulted move constructor.
615 2011-11-17 Jonathan Wakely <jwakely.gcc@gmail.com>
617 * doc/xml/manual/status_cxx2011.xml: Status of piecewise construction
618 and ios_base::failure.
619 * doc/xml/manual/backwards_compatibility.xml: List headers in
622 2011-11-16 Andrew MacLeod <amacleod@redhat.com>
625 * include/bits/atomic_base.h (ATOMIC_BOOL_LOCK_FREE,
626 ATOMIC_POINTER_LOCK_FREE): New. Add missing macros.
628 2011-11-15 Paolo Carlini <paolo.carlini@oracle.com>
631 * include/debug/unordered_map (unordered_map<>::erase(iterator),
632 unordered_multimap<>::erase(iterator)): Add, consistently with
634 * include/debug/unordered_set (unordered_set<>::erase(iterator),
635 unordered_multiset<>::erase(iterator)): Likewise.
636 * include/debug/map.h (map<>::erase(iterator)): Likewise.
637 * include/debug/multimap.h (multimap<>::erase(iterator)): Likewise.
638 * include/profile/map.h (map<>::erase(iterator)): Likewise.
639 * include/profile/multimap.h (multimap<>::erase(iterator)): Likewise.
640 * include/bits/hashtable.h (_Hashtable<>::erase(iterator)): Likewise.
641 * include/bits/stl_map.h (map<>::erase(iterator)): Likewise.
642 * include/bits/stl_multimap.h (multimap<>::erase(iterator)): Likewise.
643 * include/bits/stl_tree.h (_Rb_tree<>::erase(iterator)): Likewise.
644 * testsuite/23_containers/unordered_map/erase/51142.cc: New.
645 * testsuite/23_containers/multimap/modifiers/erase/51142.cc: Likewise.
646 * testsuite/23_containers/set/modifiers/erase/51142.cc: Likewise.
647 * testsuite/23_containers/unordered_multimap/erase/51142.cc: Likewise.
648 * testsuite/23_containers/unordered_set/erase/51142.cc: Likewise.
649 * testsuite/23_containers/multiset/modifiers/erase/51142.cc: Likewise.
650 * testsuite/23_containers/unordered_multiset/erase/51142.cc: Likewise.
651 * testsuite/23_containers/map/modifiers/erase/51142.cc: Likewise.
653 2011-11-15 Jason Dick <dickphd@gmail.com>
656 * include/tr1/poly_hermite.tcc (__poly_hermite_recursion): Fix
657 wrong sign in recursion relation.
659 2011-11-14 Paolo Carlini <paolo.carlini@oracle.com>
661 * include/c_global/cmath (frexp, modf, remquo): Do not mark constexpr,
662 not viable anyway due to the pointer parameter.
664 2011-11-13 Paolo Carlini <paolo.carlini@oracle.com>
666 * include/c_global/cmath (atan2, fmod, pow, copysign, fdim,
667 fma, fmax, fmin, hypot, nextafter, remainder, remquo): Simplify
668 constraining on the return type.
669 * include/tr1/cmath (copysign, fdim, fma, fmax, fmin, hypot,
670 nextafter, remainder, remquo): Likewise.
672 2011-11-13 Gerald Pfeifer <gerald@pfeifer.com>
674 * using.xml: Use GNU/Linux.
676 2011-11-12 Jason Merrill <jason@redhat.com>
679 * testsuite/25_algorithms/max/1.cc (test01): Drop references.
680 * testsuite/25_algorithms/min/1.cc (test01): Drop references.
681 * testsuite/25_algorithms/minmax/1.cc (test01): Drop references.
683 2011-11-12 Jonathan Wakely <jwakely.gcc@gmail.com>
686 * include/ext/type_traits.h (__promote): Only define __type member
687 for integral and floating point types, to prevent math functions
688 participating in overload resolution for other types.
689 (__promote_2, __promote_3, __promote_4): Use __promote in default
690 template argument values, so deduction only succeeds for integral and
691 floating point types.
692 * testsuite/26_numerics/cmath/51083.cc: New.
693 * testsuite/26_numerics/complex/51083.cc: New.
694 * testsuite/tr1/8_c_compatibility/cmath/51083.cc: New.
695 * testsuite/tr1/8_c_compatibility/complex/51083.cc: New.
697 2011-11-10 Andrew MacLeod <amacleod@redhat.com>
700 * include/bits/atomic_base.h (atomic_thread_fence): Call built-in.
701 (atomic_signal_fence): Call built-in.
702 (test_and_set, clear): Call new atomic built-ins.
704 2011-11-09 Jonathan Wakely <jwakely.gcc@gmail.com>
706 * include/bits/allocator.h (__shrink_to_fit_aux::_S_do_it): Create
707 the new object with the same allocator.
708 * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: New.
710 2011-11-09 Jonathan Wakely <jwakely.gcc@gmail.com>
712 * include/profile/unordered_map: Add missing copy constructors.
713 * include/profile/unordered_set: Likewise.
715 2011-11-09 Dodji Seketeli <dodji@redhat.com>
718 * include/ext/pointer.h (rebind): Append missing ';'.
720 2011-11-09 Jonathan Wakely <jwakely.gcc@gmail.com>
722 * include/bits/stl_vector.h (vector::_Alloc_traits): Make private.
723 * include/debug/vector: Add allocator-extended constructors, ensure
724 move assignment and swap have same allocator propagation semantics
725 and exceptions specification as base class.
726 * include/profile/vector: Likewise.
727 (vector::push_back(_Tp&&)): Forward argument as rvalue.
728 * testsuite/23_containers/vector/debug/alloc_prop.cc: New.
729 * doc/xml/manual/status_cxx2011.xml: Clarify status of container
730 requirements with respect to allocators.
731 (status.iso.200x): Add anchor for old ID to preserve existing links.
733 2011-11-08 Jonathan Wakely <jwakely.gcc@gmail.com>
735 * include/bits/shared_ptr_base.h (_Sp_counted_ptr): Make 'final'.
736 (_Sp_counted_deleter): Make 'final'. Use allocator_traits.
737 (_Sp_counted_ptr_inplace): Make 'final'. Use allocator_traits.
738 Derive from _Sp_counted_ptr instead of _Sp_counted_deleter to use EBO
740 (__shared_count, __shared_ptr): Use allocator_traits.
741 * include/std/future (__future_base::_Result_alloc): Make 'final'. Use
743 (__future_base::_Task_state): Make 'final'.
744 (__future_base::_Deferred_state): Likewise.
745 (__future_base::_Async_state): Likewise.
746 * testsuite/20_util/shared_ptr/cons/alloc_min.cc: New.
747 * testsuite/20_util/shared_ptr/creation/alloc_min.cc: New.
748 * testsuite/20_util/shared_ptr/creation/private.cc: New.
749 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
750 * testsuite/30_threads/packaged_task/cons/alloc_min.cc: New.
751 * testsuite/30_threads/promise/cons/alloc_min.cc: New.
753 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com>
755 * acinclude.m4 ([GLIBCXX_ENABLE_VISIBILITY]): Rename to
756 [GLIBCXX_ENABLE_LIBSTDCXX_VISIBILITY], likewise for the
757 option itself, to --enable-libstdcxx-visibility.
758 * configure.ac: Adjust call.
759 * doc/xml/manual/configure.xml: Update.
760 * configure: Regenerate.
762 2011-11-08 Paolo Carlini <paolo.carlini@oracle.com>
764 * testsuite/29_atomics/headers/atomic/macros.cc: Avoid -Wall
766 * testsuite/29_atomics/atomic/cons/user_pod.cc: Likewise.
768 2011-11-08 Jonathan Wakely <jwakely.gcc@gmail.com>
771 * testsuite/30_threads/thread/native_handle/typesizes.cc: Do not run
774 2011-11-07 Aldy Hernandez <aldyh@redhat.com>
775 Richard Henderson <rth@redhat.com>
777 Merged from transactional-memory.
779 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_TM_1.
780 * libsupc++/eh_tm.cc: New file.
781 * libsupc++/unwind-cxx.h (__cxa_tm_cleanup): Declare.
782 * config/abi/pre/gnu.ver: Export __cxa_tm_cleanup.
783 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
784 * libsupc++/Makefile.am (sources): Add eh_tm.cc.
785 * libsupc++/Makefile.in: Rebuild.
787 2011-11-07 Paolo Carlini <paolo.carlini@oracle.com>
790 * include/profile/impl/profiler_node.h (__stack_hash::
791 operator()(__stack_t)): Just use std::size_t everywhere.
793 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
795 * include/std/future (__future_base::_Ptr): Use alias-declaration.
796 (__is_same_pkgdtask): Rename to __constrain_pkgdtask and use decay
797 instead of remove_reference so that cv-quals are removed.
799 2011-11-07 Ed Smith-Rowland <3dw4rd@verizon.net>
801 * include/precompiled/stdc++.h: Add cstdalign.
803 2011-11-07 Paolo Carlini <paolo.carlini@oracle.com>
805 * include/std/complex (complex<>::real(), complex<>::imag()):
806 Remove redundant const qualifiers.
808 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
810 * include/bits/ptr_traits.h (__rebind): Replace with...
811 (rebind): Implement using alias-declaration.
812 * include/ext/pointer.h (__rebind): Replace with...
813 (rebind): Implement using alias-declaration.
814 * include/bits/alloc_traits.h (__rebind_alloc, __rebind_traits):
816 (rebind_alloc, rebind_traits): Implement using alias-declaration.
817 * include/ext/alloc_traits.h (rebind): Use rebind_alloc instead of
819 * include/std/scoped_allocator (rebind): Likewise.
821 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
823 * include/std/mutex (call_once): Store closure in __once_functor
824 as bound function wrapper might not be copyable.
826 2011-11-07 Andrew MacLeod <amacleod@redhat.com>
828 * include/bits/atomic_base.h (atomic_thread_fence): Revert.
829 (atomic_signal_fence): Revert.
831 2011-11-07 Andrew MacLeod <amacleod@redhat.com>
833 * include/bits/atomic_base.h (atomic_thread_fence): Call builtin.
834 (atomic_signal_fence): Call builtin.
835 (atomic_flag::test_and_set): Call __atomic_exchange when it is lockfree,
836 otherwise fall back to call __sync_lock_test_and_set.
837 (atomic_flag::clear): Call __atomic_store when it is lockfree,
838 otherwise fall back to call __sync_lock_release.
840 2011-11-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
843 * include/Makefile.am (${host_builddir}/gthr-posix.h): Reflect
845 * include/Makefile.in: Regenerate.
847 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
849 * acinclude.m4 (GLIBCXX_CHECK_SC_NPROC_ONLN): Define.
850 (GLIBCXX_CHECK_PTHREADS_NUM_PROCESSORS_NP): Define.
851 (GLIBCXX_CHECK_SYSCTL_HW_NCPU): Define.
852 * configure.ac: Use new checks.
853 * configure: Regenerate.
854 * config.h.in: Regenerate.
855 * src/thread.cc: Check new config macros.
856 * testsuite/lib/libstdc++.exp: Likewise.
858 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
860 * config/abi/pre/gnu.ver: Fix exports for string::pop_back.
862 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
864 * acinclude.m4: Check for <stdalign.h>
865 * configure: Regenerate.
866 * config.h.in: Likewise.
867 * include/Makefile.am: Add <cstdalign>.
868 * include/Makefile.in: Regenerate.
869 * include/c_global/cstdalign: New.
870 * testsuite/18_support/headers/cstdalign/std_c++0x_neg.cc: New.
871 * doc/xml/manual/backwards_compatibility.xml: Update.
872 * doc/xml/manual/status_cxx2011.xml: Update.
874 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
877 * include/std/mutex (__once_proxy): Use void parameter list to
878 work on implicit extern "C" systems.
880 2011-11-07 Xinliang David Li <davidxl@google.com>
882 * include/backward/hashtable.h: Make __stl_prime_list
885 2011-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
887 * include/bits/basic_string.h (basic_string::at): Move adjacent to other
889 (basic_string::pop_back): Define.
890 * include/debug/string (__gnu_debug::basic_string::pop_back): Likewise.
891 * include/ext/vstring.h (__versa_string::pop_back): Likewise.
892 * config/abi/pre/gnu.ver: Add new symbols.
893 * testsuite/21_strings/basic_string/modifiers/char/pop_back.cc: New.
894 * testsuite/21_strings/basic_string/modifiers/wchar_t/pop_back.cc: New.
895 * testsuite/21_strings/basic_string/range_access.cc: Split to ...
896 * testsuite/21_strings/basic_string/range_access/char/1.cc: Here and ...
897 * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc: Here.
898 * testsuite/ext/vstring/modifiers/char/pop_back.cc: New.
899 * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: New.
901 2011-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
903 * doc/xml/manual/backwards_compatibility.xml: Fix autoconf tests for
904 C++11 compiler features and library headers. Add stable id
905 attributes. Use <filename> element for headers and surround in angle
906 brackets. Use <classname> for classes.
907 * doc/html/*: Regenerate.
909 2011-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
911 * doc/xml/manual/status_cxx2011.xml: Document <cuchar> and
912 <cstdalign> as missing.
914 2011-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
916 * doc/xml/faq.xml: Replace references to C++0x with C++11.
917 * doc/xml/manual/intro.xml: Likewise.
918 * doc/xml/manual/backwards_compatibility.xml: Likewise.
919 * doc/xml/manual/shared_ptr.xml: Likewise.
920 * doc/xml/manual/configure.xml: Likewise.
921 * doc/xml/manual/evolution.xml: Likewise.
922 * doc/xml/manual/using.xml: Likewise.
923 * doc/xml/manual/strings.xml: Likewise.
924 * doc/xml/manual/debug_mode.xml: Likewise.
925 * doc/xml/manual/policy_data_structures.xml: Likewise.
926 * doc/xml/manual/extensions.xml: Likewise.
927 * doc/xml/manual/diagnostics.xml: Likewise.
928 * doc/xml/manual/test.xml: Likewise.
929 * doc/xml/manual/status_cxx200x.xml: Likewise, and rename to...
930 * doc/xml/manual/status_cxx2011.xml: Here.
931 * doc/Makefile.am: Rename status_cxx200x.xml.
932 * doc/Makefile.in: Regenerate.
933 * doc/html/*: Regenerate.
935 2011-11-06 François Dumont <fdumont@gcc.gnu.org>
937 * testsuite/performance/23_containers/insert_erase/41975.cc: Add
938 tests to check performance with or without cache of hash code and with
939 string type that has a costlier hash functor than int type.
941 2011-11-06 Benjamin Kosnik <bkoz@redhat.com>
942 Andrew MacLeod <amacleod@redhat.com>
944 Merged from cxx-mem-model.
946 * include/Makefile.am (bits_headers): Remove atomic_0.h, atomic_2.h.
947 * include/Makefile.in: Regenerate.
948 * src/Makefile.am (sources): Rename atomic.cc to
949 compatibility-atomic-c++0x.cc.
950 * src/Makefile.in: Regenerate.
951 * include/bits/atomic_0.h: Remove.
952 * include/bits/atomic_2.h: Incorporate into...
953 * include/bits/atomic_base.h: ...this. Use new __atomic routines.
954 * include/std/atomic: Add generic atomic calls to basic atomic class.
955 * src/atomic.cc: Move...
956 * src/compatibility-atomic-c++0x.cc: ...here.
957 * src/compatibility-c++0x.cc: Tweak.
958 * testsuite/29_atomics/atomic/cons/user_pod.cc: Fix.
959 * testsuite/29_atomics/atomic/requirements/explicit_instantiation/1.cc:
961 * testsuite/29_atomics/headers/atomic/macros.cc: Same.
963 2011-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
965 * doc/xml/manual/test.xml: Fix dg-warning examples.
967 2011-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
970 * doc/xml/manual/status_cxx200x.xml: Document emplace members are
973 2011-11-05 Jonathan Wakely <jwakely.gcc@gmail.com>
977 * include/std/mutex (once_flag): Use NSDMI.
979 2011-11-04 Benjamin Kosnik <bkoz@redhat.com>
981 * scripts/run_doxygen: Fix sed quoting.
983 2011-11-03 Benjamin Kosnik <bkoz@redhat.com>
985 * doc/doxygen/doxygroups.cc: Add markup for namespace tr2.
986 * include/tr2/bool_set: Adjust doxygen markup.
987 * include/tr2/dynamic_bitset: Same.
988 * include/tr2/type_traits: Same.
990 2011-11-03 Benjamin Kosnik <bkoz@redhat.com>
992 * doc/html/*: Regenerate.
994 2011-11-02 Richard B. Kreckel <kreckel@ginac.de>
995 Paolo Carlini <paolo.carlini@oracle.com>
998 * include/std/complex (__complex_acosh): Fix in a better way,
1000 * include/tr1/complex (__complex_acosh): Likewise.
1002 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com>
1005 * include/bits/random.tcc (operator<<(basic_ostream<>&,
1006 const mersenne_twister_engine<>&): Output _M_p too.
1007 (operator<<(basic_ostream<>&, const
1008 subtract_with_carry_engine<>&): Likewise.
1009 (operator>>(basic_istream<>&, mersenne_twister_engine<>&):
1011 (operator>>(basic_istream<>&, subtract_with_carry_engine<>&):
1013 * include/bits/random.h (mersenne_twister_engine<>::operator==):
1015 (subtract_with_carry_engine<>::operator==): Compare _M_carry
1017 (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too.
1018 * testsuite/26_numerics/random/independent_bits_engine/
1019 operators/serialize.cc: Extend.
1020 * testsuite/26_numerics/random/subtract_with_carry_engine/
1021 operators/serialize.cc: Likewise.
1022 * testsuite/26_numerics/random/discard_block_engine/
1023 operators/serialize.cc: Likewise.
1024 * testsuite/26_numerics/random/mersenne_twister_engine/
1025 operators/serialize.cc: Likewise.
1026 * testsuite/26_numerics/random/linear_congruential_engine/
1027 operators/serialize.cc: Likewise.
1028 * testsuite/26_numerics/random/shuffle_order_engine/
1029 operators/serialize.cc: Likewise.
1031 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1033 * acinclude.m4 (GLIBCXX_CONFIGURE): Determine and substitute
1035 (GLIBCXX_ENABLE_THREADS): Remove glibcxx_thread_h,
1036 HAVE_GTHR_DEFAULT, enable_thread.
1037 (GLIBCXX_CHECK_GTHREADS): Reflect gthr move to libgcc.
1038 * include/Makefile.am (thread_host_headers): Remove
1039 ${host_builddir}/gthr-tpf.h.
1040 (${host_builddir}/gthr.h): Reflect gthr move to libgcc.
1042 (${host_builddir}/gthr-single.h): Likewise.
1043 (${host_builddir}/gthr-posix.h): Likewise.
1044 (${host_builddir}/gthr-tpf.h): Remove.
1045 (${host_builddir}/gthr-default.h): Likewise.
1046 * configure, config.h.in: Regenerate.
1047 * Makefile.in, doc/Makefile.in, include/Makefile.in,
1048 libsupc++/Makefile.in, po/Makefile.in, python/Makefile.in,
1049 src/Makefile.intestsuite/Makefile.in: Regenerate.
1051 2011-11-02 Benjamin Kosnik <bkoz@redhat.com>
1053 * include/bits/c++config: Add tr2 to versioned namespaces.
1054 * scripts/run_doxygen: Adjust generated man files as well.
1055 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
1057 2011-11-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1059 * include/std/future (promise): Add constructors for uses-allocator
1060 construction from rvalue promise.
1061 (packaged_task): Implement LWG 2067. Add additional constructors for
1062 uses-allocator construction.
1063 * testsuite/30_threads/packaged_task/cons/3.cc: New.
1064 * testsuite/30_threads/packaged_task/cons/alloc2.cc: New.
1065 * testsuite/30_threads/promise/cons/alloc2.cc: New.
1067 2011-10-31 Jason Merrill <jason@redhat.com>
1069 * include/Makefile.am (install-freestanding-headers): Install
1071 * libsupc++/initializer_list: Include it.
1073 2011-10-31 Gerald Pfeifer <gerald@pfeifer.com>
1075 * acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.
1076 * configure: Regenerate.
1078 2011-10-31 Jason Merrill <jason@redhat.com>
1081 * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11.
1083 2011-10-30 Gerald Pfeifer <gerald@pfeifer.com>
1085 * prerequisites.xml: Refer to GCC (instead of gcc) and GNU/Linux.
1086 Remove an obsolete reference to a Red Hat release we do not
1088 Refer to Debian GNU/Linux.
1090 2011-10-30 Gerald Pfeifer <gerald@pfeifer.com>
1092 * faq.xml (Who's in charge of it?): Refer to the Linux kernel
1093 instead of just Linux.
1094 (How do I install libstdc++?): Refer to GNU/Linux instead of
1097 2011-10-28 Paolo Carlini <paolo.carlini@oracle.com>
1099 * testsuite/30_threads/condition_variable_any/50862.cc: Trivial
1102 2011-10-28 Paolo Carlini <paolo.carlini@oracle.com>
1104 * testsuite/23_containers/unordered_map/operations/count.cc: New.
1105 * testsuite/23_containers/multimap/operations/count.cc: Likewise.
1106 * testsuite/23_containers/set/operations/count.cc: Likewise.
1107 * testsuite/23_containers/unordered_multimap/operations/count.cc:
1109 * testsuite/23_containers/unordered_set/operations/count.cc: Likewise.
1110 * testsuite/23_containers/multiset/operations/count.cc: Likewise.
1111 * testsuite/23_containers/unordered_multiset/operations/count.cc:
1113 * testsuite/23_containers/map/operations/count.cc: Likewise.
1115 2011-10-28 Richard B. Kreckel <kreckel@ginac.de>
1117 * include/std/complex (__complex_acosh): Just use '< _Tp()'.
1118 * include/tr1/complex (__complex_acosh): Likewise.
1120 2011-10-27 Richard B. Kreckel <kreckel@ginac.de>
1121 Paolo Carlini <paolo.carlini@oracle.com>
1124 * include/std/complex (__complex_acosh): Fix for __z.real() < 0.
1125 * include/tr1/complex (__complex_acosh): Likewise.
1126 * testsuite/26_numerics/complex/50880.cc: New.
1127 * testsuite/tr1/8_c_compatibility/complex/50880.cc: Likewise.
1129 2011-10-27 Jonathan Wakely <jwakely.gcc@gmail.com>
1132 * include/std/condition_variable (condition_variable_any::wait): Avoid
1133 terminating if relocking user mutex throws during stack-unwinding.
1134 * testsuite/30_threads/condition_variable_any/50862.cc: Add dg-require.
1136 2011-10-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1138 * include/std/condition_variable (condition_variable_any): Remove
1139 unused native_handle_type typedef.
1140 * src/condition_variable.cc (condition_variable): Add missing noexcept
1142 * testsuite/30_threads/condition_variable_any/requirements/
1143 typedefs.cc: Remove.
1145 2011-10-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1148 * include/std/condition_variable (condition_variable_any::wait): Fix
1149 deadlock and ensure _Lock::lock() is called on exit.
1150 (condition_variable_any::native_handle): Remove, as per LWG 1500.
1151 * testsuite/30_threads/condition_variable_any/50862.cc: New.
1153 2011-10-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1156 * include/std/mutex (__mutex_base,__recursive_mutex_base): Define new
1157 base classes to manage construction/destruction of native mutexes,
1158 using NSDMI when INIT macros are defined.
1159 (mutex,recursive_mutex,timed_mutex,recursive_timed_mutex): Derive from
1161 * include/std/condition_variable (condition_variable): Use NSDMI when
1162 INIT macro is defined. Use noexcept.
1163 * src/condition_variable.cc (condition_variable): Explicitly-default
1164 constructor/destructor when using NSDMI. Use noexcept.
1165 (condition_variable_any): Likewise.
1167 2011-10-24 Jonathan Wakely <jwakely.gcc@gmail.com>
1169 * testsuite/30_threads/async/49668.cc: Add missing dg-require.
1170 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
1172 2011-10-22 Jonathan Wakely <jwakely.gcc@gmail.com>
1175 * doc/xml/manual/using.xml: Update thread safety docs w.r.t. C++11.
1177 2011-10-22 Jonathan Wakely <jwakely.gcc@gmail.com>
1180 * acinclude.m4 (GLIBCXX_HAS_GTHREADS): Don't depend on _POSIX_TIMEOUTS.
1181 * configure: Regenerate.
1182 * include/std/mutex (timed_mutex, recursive_timed_mutex): Define
1183 conditionally on GTHREADS_HAS_MUTEX_TIMEDLOCK.
1184 * testsuite/lib/libstdc++.exp (check_v3_target_gthreads_timed): Define.
1185 * testsuite/lib/dg-options.exp (dg-require-gthreads-timed): Define.
1186 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
1187 Use dg-require-gthreads-timed instead of dg-require-gthreads.
1188 * testsuite/30_threads/recursive_timed_mutex/native_handle/
1189 typesizes.cc: Likewise.
1190 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
1192 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1194 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1196 * testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc:
1198 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
1199 * testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc:
1201 * testsuite/30_threads/recursive_timed_mutex/requirements/typedefs.cc:
1203 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
1204 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
1205 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
1206 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
1207 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
1208 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
1210 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
1212 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
1214 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
1215 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
1217 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1218 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1219 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1220 * testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Likewise.
1221 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1222 * testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Likewise.
1223 * testsuite/30_threads/timed_mutex/requirements/standard_layout.cc:
1225 * testsuite/30_threads/timed_mutex/requirements/typedefs.cc: Likewise.
1226 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1227 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1228 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1229 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1230 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1231 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1232 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1233 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1234 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1235 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1236 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1238 2011-10-19 Ed Smith-Rowland <3dw4rd@verizon.net>
1240 * include/tr2/bool_set (bool_set): New.
1241 * include/tr2/bool_set.tcc: New.
1242 * include/tr2/dynamic_bitset (dynamic_bitset): New.
1243 * include/tr2/ratio (kibi, mebi, gibi, tebi, pebi, exbi): New.
1244 * include/Makefile.am: Add files.
1245 * include/Makefile.in: Regenerate.
1247 2011-10-19 Benjamin Kosnik <bkoz@redhat.com>
1249 * doc/doxygen/user.cfg.in: Add tr2 files.
1250 * testsuite/tr2/headers/all.cc: New.
1251 * testsuite/tr2/headers/using_namespace_std_tr2.cc: New.
1253 * include/tr2/type_traits: Tweak.
1255 2011-10-18 Jason Merrill <jason@redhat.com>
1258 * include/bits/shared_ptr.h: Default copy ctor and assignment.
1259 * testsuite/util/testsuite_allocator.h: Define copy assignment.
1260 * testsuite/util/testsuite_rvalref.h: Default copy assignment.
1261 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Remove note tags.
1263 2011-10-17 Michael Spertus <mike_spertus@symantec.com>
1265 * include/tr2/type_traits (bases, direct_bases, typelist): New.
1267 2011-10-17 Benjamin Kosnik <bkoz@redhat.com>
1269 * libstdc++-v3/include/Makefile.am: Add tr2 directory and includes.
1270 * libstdc++-v3/include/Makefile.in: Regenerate.
1272 * scripts/create_testsuite_files: Search tr2 directory.
1273 * testsuite/libstdc++-dg/conformance.exp: Same.
1275 * testsuite/tr2/bases/requirements/explicit_instantiation.cc: New.
1276 * testsuite/tr2/bases/requirements/typedefs.cc: New.
1277 * testsuite/tr2/bases/value.cc: New.
1278 * testsuite/tr2/direct_bases/requirements/
1279 explicit_instantiation.cc: New.
1280 * testsuite/tr2/direct_bases/requirements/typedefs.cc: New.
1281 * testsuite/tr2/direct_bases/value.cc: New.
1283 2011-10-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1286 * config/abi/pre/gnu.ver (CXXABI_1.3.6): Remove duplicate
1287 __cxa_get_exception_ptr.
1289 2011-10-14 François Dumont <francois.cppdevs@free.fr>
1291 * testsuite/performance/23_containers/insert_erase/41975.cc: New.
1293 2011-10-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1295 * testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.
1297 2011-10-14 Jonathan Yong <jon_y@users.sourceforge.net>
1299 * configure.host: Use config/os/mingw32-w64 instead of
1300 config/os/mingw32 if vendor key is "w64".
1301 * config/os/mingw32-w64: Duplicate from config/os/mingw32.
1302 * config/os/mingw32-w64/os_defines.h: Enable
1303 _GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
1304 * acinclude.m4: Set fully-dynamic-string to 1 when enabled,
1305 0 when disabled or undefined if unset by user.
1306 * include/bits/basic_string.h: Check if
1307 _GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
1308 include/bits/basic_string.tcc: Likewise.
1309 * configure: Regenerated.
1310 * config.h.in: Likewise.
1312 2011-10-13 Paolo Carlini <paolo.carlini@oracle.com>
1315 * include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
1316 _M_c_locale_codecvt member.
1317 * testsuite/22_locale/codecvt_byname/50714.cc: New.
1319 2011-10-12 Paolo Carlini <paolo.carlini@oracle.com>
1322 * libsupc++/new (operator new, operator delete): Decorate with
1323 __attribute__((__externally_visible__)).
1324 * include/bits/c++config: Add _GLIBCXX_THROW.
1325 * libsupc++/del_op.cc: Adjust.
1326 * libsupc++/del_opv.cc: Likewise.
1327 * libsupc++/del_opnt.cc: Likewise.
1328 * libsupc++/del_opvnt.cc: Likewise.
1329 * libsupc++/new_op.cc: Likewise.
1330 * libsupc++/new_opv.cc: Likewise.
1331 * libsupc++/new_opnt.cc: Likewise.
1332 * libsupc++/new_opvnt.cc: Likewise.
1333 * testsuite/18_support/50594.cc: New.
1334 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error
1337 2011-10-11 Emil Wojak <emil@wojak.eu>
1340 * include/bits/stl_algobase.h (equal): Compare arrays of pointers
1343 2011-10-10 Benjamin Kosnik <bkoz@redhat.com>
1346 * config/abi/pre/gnu.ver (CXXABI_1.3.6): Add symbols.
1347 * testsuite/util/testsuite_abi.cc: Same.
1348 * libsupc++/unwind-cxx.h: Move required eh API...
1349 * libsupc++/cxxabi.h: ... to here. Add required forward declarations.
1350 Use _GLIBCXX_NOTHROW.
1351 * libsupc++/pure.cc (__cxa_deleted_virtual): Add.
1352 * libsupc++/eh_alloc.cc: Use _GLIBCXX_NOTHROW.
1353 * libsupc++/eh_catch.cc: Same.
1354 * libsupc++/eh_globals.cc: Same.
1355 * libsupc++/eh_type.cc: Same.
1357 2011-10-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1359 * testsuite/util/testsuite_allocator.h (uneq_allocator): Add
1360 propagate_on_container_swap typedef for C++0x testing.
1362 2011-10-06 Paolo Carlini <paolo.carlini@oracle.com>
1364 * testsuite/27_io/ios_base/cons/assign_neg.cc: Tidy dg- directives,
1365 for C++0x testing too.
1366 * testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
1367 * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
1368 * testsuite/24_iterators/istreambuf_iterator/requirements/
1369 base_classes.cc: Adjust for C++0x testing.
1370 * testsuite/ext/codecvt/char-1.cc: Avoid warnings in C++0x mode.
1371 * testsuite/ext/codecvt/char-2.cc: Likewise.
1372 * testsuite/ext/codecvt/wchar_t.cc: Likewise.
1374 2011-10-05 Paolo Carlini <paolo.carlini@oracle.com>
1376 * include/ext/pod_char_traits.h: Avoid warnings in C++0x mode
1377 when int_type is unsigned.
1379 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
1382 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
1384 (_List_base<>::_List_impl, _List_base<>::_M_get_node,
1385 _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
1386 list<>::size, list<>::swap, list<>::splice): Use it.
1387 (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
1388 * include/bits/list.tcc (list<>::erase): Likewise.
1389 (list<>::merge): Adjust in C++0x mode.
1390 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1391 Adjust dg-error line number.
1392 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1394 * testsuite/23_containers/list/requirements/dr438/
1395 constructor_1_neg.cc: Likewise.
1396 * testsuite/23_containers/list/requirements/dr438/
1397 constructor_2_neg.cc: Likewise.
1399 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
1401 * testsuite/20_util/bind/48698.cc (g): Fix return type, avoid -Wall
1404 2011-10-04 Jonathan Wakely <jwakely.gcc@gmail.com>
1406 * include/ext/alloc_traits.h (__alloc_traits::max_size): Define.
1407 (__alloc_traits::rebind): Define.
1408 * include/bits/stl_vector.h: Use them.
1409 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Define.
1410 * testsuite/23_containers/vector/allocator/minimal.cc: New.
1411 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1412 Adjust dg-error line numbers.
1413 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1415 * testsuite/23_containers/vector/requirements/dr438/
1416 constructor_1_neg.cc: Likewise.
1417 * testsuite/23_containers/vector/requirements/dr438/
1418 constructor_2_neg.cc: Likewise.
1420 2011-10-03 Jonathan Wakely <jwakely.gcc@gmail.com>
1422 * testsuite/20_util/pointer_traits/pointer_to.cc: Define equality
1425 2011-10-03 Paolo Carlini <paolo.carlini@oracle.com>
1427 * include/bits/hashtable.h (_Hashtable<>::insert(value_type&&),
1428 insert(const_iterator, value_type&&)): Don't define here...
1429 * include/bits/unordered_set.h (__unordered_set<>,
1430 __unordered_multiset<>): ... define here instead.
1432 2011-09-29 Jason Merrill <jason@redhat.com>
1434 * testsuite/util/testsuite_tr1.h (test_property): Avoid
1437 2011-10-01 François Dumont <fdumont@gcc.gnu.org>
1439 * include/debug/vector (vector<>::erase(iterator, iterator): Check
1440 iterators equality using normal iterators.
1441 * include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
1443 2011-09-29 Paolo Carlini <paolo.carlini@oracle.com>
1445 * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1446 Remove noexcept from declaration too.
1448 2011-09-27 Benjamin Kosnik <bkoz@redhat.com>
1450 * doc/html/*: Regenerate.
1452 * doc/Makefile.am: Un-nest the ext output directory.
1453 * doc/Makefile.in: Regenerate.
1454 * spine.xml: Remove authors, add abstract for short
1455 contents. Rename to index.html for html output.
1456 * manual/spine.xml: Authors here, manual starts with index.html.
1460 2011-09-27 Marcus Shawcroft <marcus.shawcroft@arm.com>
1462 * libsupc++/tinfo.cc (type_info::operator==): Test __name instead
1465 2011-09-26 Paolo Carlini <paolo.carlini@oracle.com>
1468 * include/bits/vector.tcc (vector<>::erase(iterator, iterator)):
1469 Fix to do nothing if the range is empty.
1470 * include/bits/stl_bvector.h: Likewise.
1471 * include/bits/deque.tcc: Likewise.
1472 * include/debug/vector: Adjust.
1473 * include/debug/deque: Likewise.
1474 * testsuite/23_containers/vector/modifiers/erase/50529.cc: New.
1475 * testsuite/23_containers/deque/modifiers/erase/50529.cc: Likewise.
1476 * testsuite/23_containers/deque/modifiers/erase/3.cc: Adjust.
1478 2011-09-25 Benjamin Kosnik <bkoz@redhat.com>
1479 Jonathan Wakely <jwakely.gcc@gmail.com>
1482 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Set libtool_VERSION here.
1483 * configure.ac: Move AC_SUBST of libtool_VERSION past call to
1484 GLIBCXX_ENABLE_SYMVERS.
1485 * configure: Regenerate.
1486 * include/bits/c++config: Use __7 as versioned namespace name.
1487 * config/abi/pre/gnu-versioned-namespace.ver: Change mangling as
1489 * include/c_global/cwchar: Adjust nested namespaces.
1490 * testsuite/20_util/bind/48698.cc: Add test case.
1491 * testsuite/ext/profile/mutex_extensions_neg.cc: Change line number.
1493 2011-09-25 Paolo Carlini <paolo.carlini@oracle.com>
1495 Revert (no longer necessary post r179130):
1497 2010-04-27 Fabien Chêne <fabien.chene@gmail.com>
1499 * testsuite/util/testsuite_error.h: Add empty default constructor
1500 to __gnu_test::test_category and
1501 __gnu_test::test_derived_category.
1502 * src/future.cc: Add empty default constructor to
1503 future_error_category.
1504 * src/system_error.cc: Add default ctor to generic_error_category
1505 and system_error_category.
1507 2011-09-24 John Salmon <john.salmon@deshaw.com>
1510 * include/bits/random.tcc (seed_seq::generate): Fix computation.
1512 2011-09-24 John Salmon <john.salmon@deshaw.com>
1515 * include/bits/random.tcc (seed_seq::generate): Fix computation.
1517 2011-09-21 Benjamin Kosnik <bkoz@redhat.com
1519 * doc/Makefile.am (stamp-epub-docbook): Fix image directory location.
1520 * doc/Makefile.in: Regenerate.
1522 2011-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1524 * src/limits.cc: Replace everywhere __int128_t -> __int128, and
1525 __uint128_t -> unsigned __int128.
1526 * include/std/type_traits: Likewise.
1527 * include/std/limits: Likewise.
1528 * testsuite/18_support/numeric_limits/dr559.cc: Likewise.
1529 * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
1530 * testsuite/18_support/numeric_limits/40856.cc: Likewise.
1531 * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
1532 * testsuite/util/testsuite_common_types.h: Likewise.
1533 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Likewise.
1534 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1535 * testsuite/20_util/is_floating_point/value.cc: Likewise.
1536 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
1537 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1538 * testsuite/20_util/is_signed/value.cc: Likewise.
1539 * testsuite/20_util/is_unsigned/value.cc: Likewise.
1540 * testsuite/20_util/is_integral/value.cc: Likewise.
1541 * config/abi/pre/gnu.ver: Likewise.
1542 * acinclude.m4: Likewise.
1543 * configure: Regenerate.
1544 * config.h.in: Likewise.
1546 2011-09-19 Paolo Carlini <paolo.carlini@oracle.com>
1549 * include/std/limits (numeric_limits<__int128_t>,
1550 numeric_limits<__uint128_t>): Add.
1551 * src/limits.cc:Define.
1552 * config/abi/pre/gnu.ver: Export.
1553 * include/ext/typelist.h (_GLIBCXX_TYPELIST_CHAIN16, 20): Add.
1554 * testsuite/util/testsuite_common_types.h (integral_types_gnu): Add
1555 (limits_tl): Use it.
1556 * testsuite/18_support/numeric_limits/requirements/
1557 constexpr_functions.cc: Likewise.
1558 * testsuite/18_support/numeric_limits/40856.cc: New.
1559 * testsuite/18_support/numeric_limits/dr559.cc: Extend.
1560 * testsuite/18_support/numeric_limits/lowest.cc: Likewise.
1561 * testsuite/18_support/numeric_limits/max_digits10.cc: Likewise.
1562 * testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust dg-error
1564 * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
1565 * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc: Likewise.
1566 * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
1567 * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
1569 * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
1571 * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1574 2011-09-17 Paolo Carlini <paolo.carlini@oracle.com>
1577 * acinclude.m4 ([GLIBCXX_ENABLE_INT128_FLOAT128]): Add.
1578 * configure.ac: Call it.
1579 * include/std/type_traits (__is_integral_helper<__int128_t>,
1580 __is_integral_helper<__uint128_t>,
1581 __is_floating_point_helper<__float128>,
1582 __make_unsigned<__int128_t>, __make_signed<__uint128_t>): Add.
1583 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Extend.
1584 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1585 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Likewise.
1586 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
1587 * testsuite/20_util/is_signed/value.cc: Likewise.
1588 * testsuite/20_util/is_unsigned/value.cc: Likewise.
1589 * testsuite/20_util/is_integral/value.cc: Likewise.
1590 * testsuite/20_util/is_floating_point/value.cc: New.
1591 * testsuite/20_util/is_floating_point/requirements/typedefs.cc:
1593 * testsuite/20_util/is_floating_point/requirements/
1594 explicit_instantiation.cc: Likewise.
1595 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
1596 dg-error line numbers.
1597 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1599 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1600 * configure: Regenerate.
1601 * config.h.in: Likewise.
1603 2011-09-17 François Dumont <fdumont@gcc.gnu.org>
1605 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy(const
1606 _RehashPolicy&)): Commit the modification of the policy only if no
1608 * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
1611 2011-09-16 Paolo Carlini <paolo.carlini@oracle.com>
1613 * testsuite/23_containers/array/comparison_operators/
1614 less_or_equal.cc: New.
1615 * testsuite/23_containers/array/comparison_operators/
1616 greater_or_equal.cc: Likewise.
1617 * testsuite/23_containers/array/comparison_operators/less.cc: Likewise.
1618 * testsuite/23_containers/array/comparison_operators/equal.cc: Likewise.
1619 * testsuite/23_containers/array/comparison_operators/not_equal.cc:
1621 * testsuite/23_containers/array/comparison_operators/greater.cc:
1623 * testsuite/23_containers/array/iterators/end_is_one_past.cc: Likewise.
1624 * testsuite/23_containers/array/capacity/empty.cc: Likewise.
1625 * testsuite/23_containers/array/capacity/max_size.cc: Likewise.
1626 * testsuite/23_containers/array/capacity/size.cc: Likewise.
1627 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
1629 * testsuite/23_containers/array/tuple_interface/tuple_size.cc:
1631 * testsuite/23_containers/array/element_access/at_out_of_range.cc:
1633 * testsuite/23_containers/array/element_access/back.cc: Likewise.
1634 * testsuite/23_containers/array/element_access/front.cc: Likewise.
1635 * testsuite/23_containers/array/element_access/data.cc: Likewise.
1636 * testsuite/23_containers/array/cons/aggregate_initialization.cc:
1638 * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
1640 * testsuite/23_containers/array/requirements/contiguous.cc: Likewise.
1641 * testsuite/23_containers/array/requirements/member_swap.cc: Likewise.
1642 * testsuite/23_containers/array/specialized_algorithms/swap.cc:
1644 * testsuite/23_containers/array/constexpr_get.cc: Move...
1645 * testsuite/23_containers/array/tuple_interface/constexpr_get.cc:
1647 * testsuite/23_containers/array/requirements/get.cc: Move...
1648 * testsuite/23_containers/array/tuple_interface/get: ... here.
1649 * testsuite/23_containers/array/at_neg.cc: Move...
1650 * testsuite/23_containers/array/element_access: ... here.
1651 * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1653 * testsuite/23_containers/array/capacity: ... here.
1654 * testsuite/23_containers/array/requirements/
1655 constexpr_element_access.cc: Move...
1656 * testsuite/23_containers/array/element_access: ... here.
1658 * testsuite/20_util/duration/cons/1_neg.cc: Avoid -Wall warnings.
1659 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Likewise.
1660 * testsuite/20_util/pair/make_pair/constexpr.cc: Likewise.
1661 * testsuite/20_util/time_point/nonmember/constexpr.cc: Likewise.
1662 * testsuite/23_containers/bitset/operations/constexpr.cc: Likewise.
1664 * testsuite/20_util/duration/cons/1_neg.cc: Discard bogus warning.
1665 * testsuite/20_util/forward/1_neg.cc: Likewise.
1667 2011-09-15 Paolo Carlini <paolo.carlini@oracle.com>
1669 * include/std/tuple (make_tuple, forward_as_tuple): Declare constexpr.
1670 (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&)): Likewise.
1671 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Enable
1673 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1676 2011-09-14 François Dumont <fdumont@gcc.gnu.org>
1677 Paolo Carlini <paolo.carlini@oracle.com>
1679 * include/bits/hashtable.h (_Hashtable<>::_M_rehash): Take and restore
1680 hash policy _M_prev_resize on exception.
1681 (_Hashtable<>::_M_insert_bucket): Capture hash policy next resize
1682 before using it and use latter method to have it restored on exception.
1683 (_Hashtable<>::_M_insert(_Arg&& __v, std::false_type): Likewise.
1684 (_Hashtable<>::insert(_InputIterator, _InputIterator): Likewise.
1685 (_Hashtable<>::rehash): Likewise.
1686 * testsuite/23_containers/unordered_set/insert/hash_policy.cc: New.
1687 * testsuite/23_containers/unordered_multiset/insert/hash_policy.cc:
1690 2011-09-13 Paul Brook <paul@codesourcery.com>
1692 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Add C6X implementation.
1693 * libsupc++/eh_call.cc (__cxa_call_unexpected): Set rtti_base.
1694 * libsupc++/eh_personality.cc (NO_SIZE_OF_ENCODED_VALUE): Remove
1695 __ARM_EABI_UNWINDER__ check.
1696 (parse_lsda_header): Check _GLIBCXX_OVERRIDE_TTYPE_ENCODING.
1697 (get_ttype_entry): Use generic implementation on ARM EABI.
1698 (check_exception_spec): Use _Unwind_decode_typeinfo_ptr and
1700 (PERSONALITY_FUNCTION): Set ttype_base.
1702 2011-09-12 Daniel Krugler <daniel.kruegler@googlemail.com>
1703 Paolo Carlini <paolo.carlini@oracle.com>
1705 * include/std/tuple (_Head_base<>::_M_head, _Head_base<>::_M_tail,
1706 _Tuple_impl<>::_M_head, _Tuple_impl<>::_M_tail): Change to static
1707 constexpr functions; adjust everywhere.
1708 (__get_helper, get): Declare constexpr all three overloads.
1709 (tuple_cat): Declare constexpr; use late return type to improve
1711 * include/std/utility (__pair_get<>::__get, __pair_get<>::__move_get,
1712 __pair_get<>::__const_get, get): Declare all constexpr.
1713 * include/std/array (get): Likewise.
1714 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Re-enable
1716 * testsuite/23_containers/array/constexpr_get.cc: New.
1717 * testsuite/20_util/tuple/element_access/constexpr_get.cc: Likewise.
1718 * testsuite/20_util/pair/constexpr_get.cc: Likewise.
1719 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
1722 2011-09-12 Jason Merrill <jason@redhat.com>
1724 * testsuite/20_util/is_constructible/value-2.cc: Adjust
1727 2011-09-11 Daniel Krugler <daniel.kruegler@googlemail.com>
1730 * include/std/tuple (tuple_cat): Reimplement according to the
1731 resolution of LWG 1385.
1732 * include/std/type_traits: Define __and_ and __or_ for zero
1733 arguments too; minor tweaks.
1734 * testsuite/20_util/tuple/creation_functions/tuple_cat.cc: New.
1735 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Disable
1736 for now tuple_cat test.
1737 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1739 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1740 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1742 * doc/xml/manual/status_cxx200x.xml: Update.
1744 2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1746 * include/std/tuple: Use everywhere std::size_t... instead of int...
1747 * include/std/functional: Likewise.
1748 * include/std/scoped_allocator: Likewise.
1749 * include/bits/stl_pair.h: Likewise.
1751 2011-09-09 Paolo Carlini <paolo.carlini@oracle.com>
1754 * include/bits/streambuf_iterator.h (class istreambuf_iterator):
1755 Implement LWG 445 in C++0x mode.
1756 * testsuite/24_iterators/istreambuf_iterator/requirements/dr445.cc:
1759 2011-09-08 Dodji Seketeli <dodji@redhat.com>
1761 PR c++/33255 - Support -Wunused-local-typedefs warning
1762 * include/ext/bitmap_allocator.h
1763 (__detail::__mini_vector::__lower_bound): Remove unused typedef.
1764 * src/istream.cc (std::operator>>(basic_istream<char>& __in,
1765 basic_string<char>& __str)): Likewise.
1766 (std::getline): Likewise.
1767 * src/valarray.cc (__valarray_product): Likewise.
1769 2011-09-07 François Dumont <francois.cppdevs@free.fr>
1771 * testsuite/23_containers/array/at.cc: Revert to...
1772 * testsuite/23_containers/array/at_neg.cc: ...this.
1774 2011-09-07 Jason Merrill <jason@redhat.com>
1776 * testsuite/20_util/bind/ref_neg.cc: Adjust errors.
1777 * testsuite/20_util/duration/cons/1_neg.cc: Adjust errors.
1779 2011-09-06 Benjamin Kosnik <bkoz@redhat.com>
1781 * include/std/tuple (_Tuple_impl::_M_head, _M_tail): Mark constexpr.
1782 (tuple(tuple&&)): Same.
1783 (tuple(const tuple<_UElements...>& __in)): Same.
1784 (tuple(tuple<_UElements...>&& __in)): Same.
1785 (tuple_cat(const tuple<_TElements...>&, const tuple<_UElements...>&)):
1788 * include/std/array: Consolidate array::data usage.
1789 * testsuite/23_containers/array/requirements/constexpr_functions.cc:
1790 Remove extra include.
1791 * testsuite/20_util/tuple/creation_functions/constexpr.cc: New.
1792 * testsuite/20_util/tuple/cons/constexpr-2.cc: Add tests.
1793 * testsuite/20_util/tuple/cons/constexpr-3.cc: Same.
1794 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
1796 2011-09-06 François Dumont <fdumont@gcc.gnu.org>
1797 Paolo Carlini <paolo.carlini@oracle.com>
1799 * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1800 _M_next_bkt): Cast _M_max_load_factor to long double.
1801 (_Prime_rehash_policy::_M_bkt_for_elements): Use _M_next_bkt.
1802 (_Prime_rehash_policy::_M_need_rehash): Likewise; cast all
1803 float quantities to long double.
1805 2011-09-06 Paolo Carlini <paolo.carlini@oracle.com>
1808 * include/bits/hashtable_policy.h (_Prime_rehash_policy::
1809 _M_next_bkt): Optimize for small argument.
1811 2011-09-02 François Dumont <fdumont@gcc.gnu.org>
1813 * testsuite/util/testsuite_allocator.h (tracker_allocator_counter::
1814 allocate): Update allocation count only if allocation succeeded.
1816 2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>
1818 * include/std/bitset: Trivial formatting fixes.
1820 2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>
1821 Marc Glisse <marc.glisse@normalesup.org>
1823 * include/std/bitset (_Base_bitset<>::_M_are_all_aux): Remove.
1824 (_Base_bitset<>::_M_are_all): Add.
1825 (bitset<>::all): Use the latter, improve implementation.
1827 2011-09-02 Paolo Carlini <paolo.carlini@oracle.com>
1828 Marc Glisse <marc.glisse@normalesup.org>
1831 * include/std/bitset (struct _Sanitize_val): Add.
1832 (bitset<>::bitset(unsigned long long)): Fix.
1833 * testsuite/23_containers/bitset/cons/50268.cc: New.
1835 2011-09-01 Paolo Carlini <paolo.carlini@oracle.com>
1837 * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
1838 Remove noexcept, the move constructor allocates memory; rearrange
1839 the code in the body to consistently update __ht._M_rehash_policy
1840 before using _M_next_bkt on it.
1841 * include/debug/unordered_map: Adjust.
1842 * include/debug/unordered_set: Likewise.
1843 * include/profile/unordered_map: Likewise.
1844 * include/profile/unordered_set: Likewise.
1845 * testsuite/23_containers/unordered_map/cons/
1846 noexcept_move_construct.cc: Remove.
1847 * testsuite/23_containers/unordered_set/cons/
1848 noexcept_move_construct.cc: Likewise.
1849 * testsuite/23_containers/unordered_multimap/cons/
1850 noexcept_move_construct.cc: Likewise.
1851 * testsuite/23_containers/unordered_multiset/cons/
1852 noexcept_move_construct.cc: Likewise.
1854 2011-08-31 Paolo Carlini <paolo.carlini@oracle.com>
1856 * include/std/chrono (operator*(const _Rep1&, const duration<>&)):
1857 Fix order of template parameters per LWG 2004.
1859 2011-08-30 Paolo Carlini <paolo.carlini@oracle.com>
1861 * include/bits/stl_iterator.h (make_move_iterator): Implement DR2061.
1862 * testsuite/24_iterators/move_iterator/dr2061.cc: New.
1863 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
1866 2011-08-30 Paolo Carlini <paolo.carlini@oracle.com>
1868 * config/os/mingw32/error_constants.h: Fix commas.
1870 2011-08-29 Benjamin Kosnik <bkoz@redhat.com>
1872 * testsuite/20_util/duration/arithmetic/constexpr.cc: Add.
1874 2011-08-29 Kai Tietz <ktietz@redhat.com>
1876 * configure: Regenerated.
1877 * config.h.in: Regenerated.
1878 * acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR) Add
1879 checks for ECHILD, ENOSPC, EPERM, ETIMEDOUT, and
1881 * config/os/mingw32/error_constants.h (errc): Add
1882 enumerator values no_child_process, no_space_on_device,
1883 not_supported, operation_not_permitted, operation_would_block,
1884 timed_out, and value_too_large,
1886 2011-08-29 Paolo Carlini <paolo.carlini@oracle.com>
1889 * include/bits/stl_list.h (_List_base<>::
1890 _List_base(const allocator_type&)): Remove.
1891 (_List_base<>::_List_base(const _Node_alloc_type&)): Add.
1892 (list<>:list(const allocator_type&), list(size_type, const
1893 value_type&, const allocator_type&),
1894 list(initializer_list<, const allocator_type&),
1895 list(_InputIterator, _InputIterator, const allocator_type&),
1896 insert(iterator, size_type, const value_type&),
1897 insert(iterator, _InputIterator, _InputIterator)): Adjust.
1898 * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(const _Compare&,
1899 const allocator_type&)): Fix.
1900 * include/bits/stl_map.h (map<>::map(const _Compare&,
1901 const allocator_type&), map(initializer_list<>,
1902 const _Compare&, const allocator_type&), map(_InputIterator,
1903 _InputIterator, const _Compare&, const allocator_type&),
1904 get_allocator): Adjust.
1905 * include/bits/stl_set.h (set<>::set(const _Compare&,
1906 const allocator_type&), set(initializer_list<>,
1907 const _Compare&, const allocator_type&), set(_InputIterator,
1908 _InputIterator, const _Compare&, const allocator_type&),
1909 get_allocator): Likewise.
1910 * include/bits/stl_multimap.h (multimap<>::multimap(const _Compare&,
1911 const allocator_type&), multimap(initializer_list<>,
1912 const _Compare&, const allocator_type&), multimap(_InputIterator,
1913 _InputIterator, const _Compare&, const allocator_type&),
1914 get_allocator): Likewise.
1915 * include/bits/stl_multiset.h (multiset<>::multiset(const _Compare&,
1916 const allocator_type&), multiset(initializer_list<>,
1917 const _Compare&, const allocator_type&), multiset(_InputIterator,
1918 _InputIterator, const _Compare&, const allocator_type&),
1919 get_allocator): Likewise.
1920 * include/bits/forward_list.h (_Fwd_list_base<>::
1921 _Fwd_list_base(const _Alloc&), _Fwd_list_base(const _Fwd_list_base&,
1922 const _Alloc&), _Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
1924 (_Fwd_list_base<>::_Fwd_list_base(const _Node_alloc_type&),
1925 _Fwd_list_base(const _Fwd_list_base&,
1926 const _Node_alloc_type&), _Fwd_list_base(_Fwd_list_base&&,
1927 const _Node_alloc_type&)): Add.
1928 (forward_list<>::forward_list(const _Alloc&),
1929 forward_list(const forward_list&, const _Alloc&),
1930 forward_list(forward_list&&, const _Alloc&),
1931 forward_list(size_type, const _Tp&, const _Alloc&),
1932 forward_list(_InputIterator, _InputIterator, const _Alloc&),
1933 forward_list(std::initializer_list<>, const _Alloc&),
1934 get_allocator): Adjust.
1935 * include/bits/forward_list.tcc: Adjust.
1936 * testsuite/util/testsuite_allocator.h (ExplicitConsAlloc): Add.
1937 * testsuite/23_containers/unordered_map/requirements/
1938 explicit_instantiation/5.cc: New.
1939 * testsuite/23_containers/multimap/requirements/
1940 explicit_instantiation/5.cc: Likewise.
1941 * testsuite/23_containers/multimap/requirements/
1942 explicit_instantiation/5_c++0x.cc: Likewise.
1943 * testsuite/23_containers/set/requirements/explicit_instantiation/
1945 * testsuite/23_containers/set/requirements/explicit_instantiation/
1946 5_c++0x.cc: Likewise.
1947 * testsuite/23_containers/unordered_multimap/requirements/
1948 explicit_instantiation/5.cc: Likewise.
1949 * testsuite/23_containers/forward_list/requirements/
1950 explicit_instantiation/5.cc: Likewise.
1951 * testsuite/23_containers/unordered_set/requirements/
1952 explicit_instantiation/5.cc: Likewise.
1953 testsuite/23_containers/multiset/requirements/explicit_instantiation/
1955 * testsuite/23_containers/multiset/requirements/
1956 explicit_instantiation/5_c++0x.cc: Likewise.
1957 * testsuite/23_containers/list/requirements/explicit_instantiation/
1958 5_c++0x.cc: Likewise.
1959 * testsuite/23_containers/list/requirements/explicit_instantiation/
1961 * testsuite/23_containers/unordered_multiset/requirements/
1962 explicit_instantiation/5.cc: Likewise.
1963 * testsuite/23_containers/map/requirements/explicit_instantiation/
1965 * testsuite/23_containers/map/requirements/explicit_instantiation/
1966 5_c++0x.cc: Likewise.
1967 * testsuite/23_containers/forward_list/requirements/dr438/
1968 assign_neg.cc: Adjust dg-error line number.
1969 * testsuite/23_containers/forward_list/requirements/dr438/
1970 insert_neg.cc: Likewise.
1971 * testsuite/23_containers/forward_list/requirements/dr438/
1972 constructor_1_neg.cc: Likewise.
1973 * testsuite/23_containers/forward_list/requirements/dr438/
1974 constructor_2_neg.cc: Likewise.
1975 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1977 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1979 * testsuite/23_containers/list/requirements/dr438/
1980 constructor_1_neg.cc: Likewise.
1981 * testsuite/23_containers/list/requirements/dr438/
1982 constructor_2_neg.cc: Likewise.
1984 2011-08-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1986 * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO)
1987 (GLIBCXX_CHECK_STDLIB_PROTO): New tests.
1988 * configure.ac (GLIBCXX_CHECK_MATH_PROTO)
1989 (GLIBCXX_CHECK_STDLIB_PROTO): Call them.
1990 * configure: Regenerate.
1991 * config.h.in: Regenerate.
1992 * config/os/solaris/solaris2.8/os_defines.h
1993 (__CORRECT_ISO_CPP_MATH_H_PROTO2): Don't define.
1994 * config/os/solaris/solaris2.9: Remove.
1995 * configure.host (solaris2.8): Merge with ...
1996 (solaris2.9, solaris2.1[0-9]): ... this.
1997 Always use os/solaris/solaris2.8.
1999 2011-08-28 Paolo Carlini <paolo.carlini@oracle.com>
2001 * include/bits/move.h (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Remove
2002 workaround for c++/49045.
2003 * include/bits/algorithmfwd.h: Likewise.
2005 2011-08-25 Tom Tromey <tromey@redhat.com>
2007 * testsuite/libstdc++-prettyprinters/simple.cc: New file.
2008 * testsuite/lib/gdb-test.exp: New file.
2009 * testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
2012 2011-08-18 Marc Glisse <marc.glisse@normalesup.org>
2014 * include/tr1/cmath: Extend/update comment.
2016 2011-08-18 Paolo Carlini <paolo.carlini@oracle.com>
2019 * include/bits/stl_algo.h (__copy_n(_InputIterator, _Size,
2020 _OutputIterator, input_iterator_tag)): Fix.
2021 * testsuite/25_algorithms/copy_n/50119.cc: New.
2023 2011-08-18 Marc Glisse <marc.glisse@normalesup.org>
2024 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2027 * config/os/solaris2.7: Rename to config/os/solaris2.9.
2028 * config/os/solaris/solaris2.9/os_defines.h
2029 (__CORRECT_ISO_CPP_MATH_H_PROTO1)
2030 (__CORRECT_ISO_CPP_STDLIB_H_PROTO)
2031 (__CORRECT_ISO_CPP_STRING_H_PROTO)
2032 (__CORRECT_ISO_CPP_WCHAR_H_PROTO): Define.
2033 * config/os/solaris2.8/ctype_base.h,
2034 config/os/solaris2.8/ctype_configure_char.cc,
2035 config/solaris2.8/ctype_inline.h,
2036 config/os/solaris2.8/os_defines.h: New files.
2038 * configure.host (solaris2.[89], solaris2.1[0-9]):
2040 (solaris2.8): ... this.
2041 Use os/solaris/solaris2.8.
2042 (solaris2.9, solaris2.1[0-9]): ... and this.
2043 Use os/solaris/solaris2.9.
2045 * include/c_global/cmath (double abs(double)): Wrap in
2046 !__CORRECT_ISO_CPP_MATH_H_PROTO1 &&
2047 !__CORRECT_ISO_CPP_MATH_H_PROTO2.
2048 (float abs(float), long double abs(long double): Wrap in
2049 !__CORRECT_ISO_CPP_MATH_H_PROTO1.
2050 (float acos(float), long double acos(long double)): Likewise.
2051 (float asin(float), long double asin(long double)): Likewise.
2052 (float atan(float), long double atan(long double)): Likewise.
2053 (float atan2(float, float), long double atan2(long double, long
2055 (float ceil(float), long double ceil(long double)): Likewise.
2056 (float cos(float), long double cos(long double)): Likewise.
2057 (float cosh(float), long double cosh(long double)): Likewise.
2058 (float exp(float), long double exp(long double)): Likewise.
2059 (float fabs(float), long double fabs(long double)): Likewise.
2060 (float floor(float), long double floor(long double)): Likewise.
2061 (float fmod(float, float), long double fmod(long double, long
2063 (float frexp(float, int*), long double frexp(long double, int*)):
2065 (float ldexp(float, int), long double ldexp(long double, int)):
2067 (float log(float), long double log(long double)): Likewise.
2068 (float log10(float), long double log10(long double)): Likewise.
2069 (float modf(float, float*), long double modf(long double, long
2070 double*))): Likewise.
2071 (float pow(float, float), long double pow(long double, long
2073 (float sin(float), long double sin(long double)): Likewise.
2074 (float sinh(float), long double sinh(long double)): Likewise.
2075 (float sqrt(float), long double sqrt(long double)): Likewise.
2076 (float tan(float), long double tan(long double)): Likewise.
2077 (float tanh(float), long double tanh(long double)): Likewise.
2078 * include/c_global/cstdlib (long abs(long), ldiv_t div(long,
2079 long)): Wrap in !__CORRECT_ISO_CPP_STDLIB_H_PROTO.
2080 * include/tr1/cmath (float fabs(float), long double fabs(long
2081 double)): Wrap in !__CORRECT_ISO_CPP_MATH_H_PROTO1.
2083 2011-08-14 Benjamin Kosnik <bkoz@redhat.com>
2085 * doc/xml/images/*: Image and image filename changes.
2087 2011-08-14 Benjamin Kosnik <bkoz@redhat.com>
2089 * testsuite/data/make_graph_test_infos.xml: Edit.
2090 * testsuite/data/make_graph_htmls.xml: Remove
2091 * scripts/make_graph.py: Edit, fix.
2092 * scripts/make_graphs.py: Remove.
2094 * doc/Makefile.am (doc-svg-performance): New.
2095 (doc-html-performance): Remove.
2096 * doc/Makefile.in: Regenerate.
2098 * doc/xml/manual/test_policy_data_structures.xml: Markup changes.
2099 * doc/xml/manual/policy_data_structures.xml: Same.
2100 * doc/xml/manual/locale.xml: Same.
2103 * performance/ext/pb_ds/priority_queue_text_modify_down_timing.cc:
2105 * performance/ext/pb_ds/random_int_find_timing.cc: Same.
2106 * performance/ext/pb_ds/multimap_text_insert_mem_usage.hpp
2107 * performance/ext/pb_ds/multimap_text_find_timing.hpp
2108 * performance/ext/pb_ds/priority_queue_random_int_push_timing.cc: Same.
2109 * performance/ext/pb_ds/priority_queue_text_modify_timing.hpp
2110 * performance/ext/pb_ds/tree_order_statistics_timing.cc: Same.
2111 * performance/ext/pb_ds/multimap_text_insert_mem_usage_large.cc: Same.
2112 * performance/ext/pb_ds/priority_queue_text_push_pop_timing.cc: Same.
2113 * performance/ext/pb_ds/priority_queue_text_join_timing.cc: Same.
2114 * performance/ext/pb_ds/multimap_text_insert_timing_small.cc: Same.
2115 * performance/ext/pb_ds/random_int_subscript_insert_timing.cc: Same.
2116 * performance/ext/pb_ds/tree_text_lor_find_timing.cc: Same.
2117 * performance/ext/pb_ds/priority_queue_text_pop_mem_usage.cc: Same.
2118 * performance/ext/pb_ds/multimap_text_find_timing_small.cc: Same.
2119 * performance/ext/pb_ds/text_find_timing.cc: Same.
2120 * performance/ext/pb_ds/tree_text_insert_timing.cc: Same.
2121 * performance/ext/pb_ds/hash_random_int_erase_mem_usage.cc: Same.
2122 * performance/ext/pb_ds/random_int_subscript_find_timing.cc: Same.
2123 * performance/ext/pb_ds/priority_queue_text_push_timing.cc: Same.
2124 * performance/ext/pb_ds/tree_split_join_timing.cc: Same.
2125 * performance/ext/pb_ds/multimap_text_insert_timing_large.cc: Same.
2126 * performance/ext/pb_ds/priority_queue_text_modify_up_timing.cc: Same.
2127 * performance/ext/pb_ds/multimap_text_find_timing_large.cc: Same.
2128 * performance/ext/pb_ds/priority_queue_random_int_push_pop_timing.cc:
2130 * performance/ext/pb_ds/multimap_text_insert_timing.hpp
2131 * performance/ext/pb_ds/multimap_text_insert_mem_usage_small.cc: Same.
2132 * performance/ext/pb_ds/hash_zlob_random_int_find_timing.cc: Same.
2134 * performance/ext/pb_ds/all_int_find.cc: To these new files...
2135 * performance/ext/pb_ds/all_int_subscript_find.cc: ...this.
2136 * performance/ext/pb_ds/all_int_subscript_insert.cc: ...this.
2137 * performance/ext/pb_ds/all_text_find.cc: ...this.
2138 * performance/ext/pb_ds/hash_int_erase_mem.cc: ...this.
2139 * performance/ext/pb_ds/hash_zlob_int_find.cc: ...this.
2140 * performance/ext/pb_ds/multimap_text_find.hpp
2141 * performance/ext/pb_ds/multimap_text_find_large.cc: ...this.
2142 * performance/ext/pb_ds/multimap_text_find_small.cc: ...this.
2143 * performance/ext/pb_ds/multimap_text_insert.hpp
2144 * performance/ext/pb_ds/multimap_text_insert_large.cc: ...this.
2145 * performance/ext/pb_ds/multimap_text_insert_mem.hpp
2146 * performance/ext/pb_ds/multimap_text_insert_mem_large.cc: ...this.
2147 * performance/ext/pb_ds/multimap_text_insert_mem_small.cc: ...this.
2148 * performance/ext/pb_ds/multimap_text_insert_small.cc: ...this.
2149 * performance/ext/pb_ds/priority_queue_int_push.cc: ...this.
2150 * performance/ext/pb_ds/priority_queue_int_push_pop.cc: ...this.
2151 * performance/ext/pb_ds/priority_queue_text_join.cc: ...this.
2152 * performance/ext/pb_ds/priority_queue_text_modify_down.cc: ...this.
2153 * performance/ext/pb_ds/priority_queue_text_modify.hpp
2154 * performance/ext/pb_ds/priority_queue_text_modify_up.cc: ...this.
2155 * performance/ext/pb_ds/priority_queue_text_pop_mem.cc: ...this.
2156 * performance/ext/pb_ds/priority_queue_text_push.cc: ...this.
2157 * performance/ext/pb_ds/priority_queue_text_push_pop.cc: ...this.
2158 * performance/ext/pb_ds/tree_order_statistics.cc: ...this.
2159 * performance/ext/pb_ds/tree_split_join.cc: ...this.
2160 * performance/ext/pb_ds/tree_text_insert.cc: ...this.
2161 * performance/ext/pb_ds/tree_text_lor_find.cc: ...this.
2163 * doc/xml/images/*: Image and image filename changes.
2165 2011-08-12 Paolo Carlini <paolo.carlini@oracle.com>
2167 * include/c_global/cmath (fmod(_Tp, _Up)): Add.
2168 * include/c_std/cmath: Likewise.
2170 2011-08-11 Paolo Carlini <paolo.carlini@oracle.com>
2172 * include/std/future: constexpr functions are implicitly inline.
2173 * include/std/chrono: Likewise.
2174 * include/std/complex: Likewise.
2175 * include/bits/move.h: Likewise.
2176 * include/bits/stl_pair.h: Likewise.
2178 2011-08-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2180 * include/bits/alloc_traits.h: Fix doxygen @headername.
2182 2011-08-06 Benjamin Kosnik <bkoz@redhat.com>
2184 * doc/doxygen/user.cfg.in (PDF_HYPERLINKS): To NO.
2186 2011-08-06 Benjamin Kosnik <bkoz@redhat.com>
2188 * doc/doxygen/user.cfg.in: Add scoped_allocator.
2190 * include/debug/safe_sequence.h: Fix doxygen markup.
2191 * include/debug/safe_unordered_base.h: Same.
2192 * include/debug/safe_local_iterator.tcc: Same.
2193 * include/debug/safe_unordered_container.h: Same.
2194 * include/std/valarray: Same.
2195 * include/std/iomanip: Same.
2196 * include/std/streambuf: Same.
2197 * include/std/bitset: Same.
2198 * include/std/fstream: Same.
2199 * include/std/functional: Same.
2200 * include/std/istream: Same.
2201 * include/std/ostream: Same.
2202 * include/std/scoped_allocator: Same.
2203 * include/std/sstream: Same.
2204 * include/parallel/multiway_merge.h: Same.
2205 * include/parallel/base.h: Same.
2206 * include/parallel/for_each_selectors.h: Same.
2207 * include/parallel/multiway_mergesort.h: Same.
2208 * include/parallel/search.h: Same.
2209 * include/parallel/partial_sum.h: Same.
2210 * include/parallel/queue.h: Same.
2211 * include/parallel/sort.h: Same.
2212 * include/parallel/random_number.h: Same.
2213 * include/ext/vstring.h: Same.
2214 * include/ext/algorithm: Same.
2215 * include/ext/pb_ds/assoc_container.h: Same.
2216 * include/ext/bitmap_allocator.h: Same.
2217 * include/ext/stdio_filebuf.h: Same.
2218 * include/ext/memory: Same.
2219 * include/ext/functional: Same.
2220 * include/bits/basic_ios.h: Same.
2221 * include/bits/stl_list.h: Same.
2222 * include/bits/stl_map.h: Same.
2223 * include/bits/stl_algobase.h: Same.
2224 * include/bits/stl_queue.h: Same.
2225 * include/bits/gslice.h: Same.
2226 * include/bits/locale_classes.h: Same.
2227 * include/bits/stl_set.h: Same.
2228 * include/bits/locale_facets.h: Same.
2229 * include/bits/stl_stack.h: Same.
2230 * include/bits/stl_heap.h: Same.
2231 * include/bits/forward_list.h: Same.
2232 * include/bits/stream_iterator.h: Same.
2233 * include/bits/basic_string.h: Same.
2234 * include/bits/stl_multimap.h: Same.
2235 * include/bits/stl_pair.h: Same.
2236 * include/bits/ios_base.h: Same.
2237 * include/bits/stl_numeric.h: Same.
2238 * include/bits/stl_vector.h: Same.
2239 * include/bits/stl_deque.h: Same.
2240 * include/bits/codecvt.h: Same.
2241 * include/bits/stl_multiset.h: Same.
2242 * include/bits/stl_uninitialized.h: Same.
2243 * include/bits/ptr_traits.h: Same.
2244 * include/bits/slice_array.h: Same.
2245 * include/bits/stl_iterator_base_funcs.h: Same.
2246 * include/bits/stl_algo.h: Same.
2247 * include/bits/stl_iterator.h: Same.
2248 * include/bits/stl_tempbuf.h: Same.
2249 * include/bits/regex.h: Same.
2250 * include/bits/range_access.h: Same.
2251 * include/bits/random.h: Same.
2252 * include/bits/alloc_traits.h: Same.
2253 * include/bits/regex_error.h: Same.
2254 * include/bits/locale_facets_nonio.h: Same.
2255 * include/bits/stl_relops.h: Same.
2256 * include/backward/auto_ptr.h: Same.
2257 * libsupc++/initializer_list: Same.
2259 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2260 Adjust line numbers.
2261 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
2262 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2264 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2267 2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2269 * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES
2270 to $(toplevel_srcdir)/libgcc.
2271 * configure: Regenerate.
2273 2011-08-04 Benjamin Kosnik <bkoz@redhat.com>
2275 * doc/xml/manual/build_hacking.xml: Use relative fileref for PNG
2277 * doc/xml/manual/test_policy_data_structures.xml: Same.
2278 * doc/xml/manual/policy_data_structures.xml: Same.
2280 * doc/Makefile.am (stamp-html-docbook-images)
2281 (stamp-html-docbook-lwg, stamp-html-docbook-data): New.
2282 (xml_extra): Add lwg html file dependencies.
2283 (xml_images): Add image html file dependencies.
2284 * doc/Makefile.in: Regenerate.
2285 (stamp-html): Change to stamp-html-docbook-data.
2286 (stamp-html-copy): Remove.
2288 2011-08-04 Paolo Carlini <paolo.carlini@oracle.com>
2290 * src/atomic.cc: Use noexcept.
2291 * include/std/atomic: Likewise.
2292 * include/bits/atomic_0.h: Likewise.
2293 * include/bits/atomic_2.h: Likewise.
2294 * include/bits/atomic_base.h: Likewise.
2296 2011-08-03 Benjamin Kosnik <bkoz@redhat.com>
2298 * testsuite/performance/27_io/filebuf_sputn_unbuf.cc: Include
2299 unistd.h for unlink.
2300 * testsuite/performance/27_io/ofstream_insert_int.cc: Same.
2301 * testsuite/performance/27_io/ifstream_extract_int.cc: Same.
2302 * testsuite/performance/27_io/ifstream_getline-2.cc: Same.
2303 * testsuite/performance/27_io/fstream_seek_write.cc: Same.
2304 * testsuite/performance/27_io/ifstream_extract_chars.cc: Same.
2305 * testsuite/performance/27_io/ofstream_insert_float.cc: Same.
2306 * testsuite/performance/27_io/ifstream_extract_float.cc: Same.
2307 * testsuite/performance/27_io/filebuf_sputc.cc: Same.
2309 2011-08-03 Benjamin Kosnik <bkoz@redhat.com>
2311 * include/std/tuple: Mark more constructors constexpr.
2312 * testsuite/20_util/tuple/cons/constexpr.cc: Split into and extend as:
2313 * testsuite/20_util/tuple/cons/constexpr-2.cc: ...this.
2314 * testsuite/20_util/tuple/cons/constexpr-3.cc: ... and this.
2315 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust line numbers.
2317 2011-08-03 Benjamin Kosnik <bkoz@redhat.com>
2318 François Dumont <francois.cppdevs@free.fr>
2320 * testsuite/23_containers/array/at_neg.cc: Move...
2321 * testsuite/23_containers/array/at.cc: ...here. Remove
2322 -fno-exceptions, call const at member function.
2324 2011-08-01 H.J. Lu <hongjiu.lu@intel.com>
2326 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Generated.
2328 2011-08-01 Paolo Carlini <paolo.carlini@oracle.com>
2331 * include/c_global/cmath (isinf): Remove workaround.
2333 2011-07-31 Paolo Carlini <paolo.carlini@oracle.com>
2336 * include/bits/shared_ptr.h (make_shared): Qualify allocate_shared
2338 * include/bits/shared_ptr_base.h (__make_shared): Likewise.
2340 2011-07-29 Benjamin Kosnik <bkoz@redhat.com>
2342 * doc/xml/manual/build_hacking.xml: Markup imagedata changes.
2343 * doc/xml/manual/policy_data_structures.xml: Same.
2345 * doc/xml/class.txml: Remove biblioid.
2346 * doc/xml/manual/allocator.xml: Same.
2347 * doc/xml/manual/ctype.xml: Same.
2348 * doc/xml/manual/codecvt.xml: Same.
2349 * doc/xml/manual/backwards_compatibility.xml: Same.
2350 * doc/xml/manual/abi.xml: Same.
2351 * doc/xml/manual/shared_ptr.xml: Same.
2352 * doc/xml/manual/using_exceptions.xml: Same.
2353 * doc/xml/manual/messages.xml: Same.
2355 2011-07-29 Benjamin Kosnik <bkoz@redhat.com>
2357 Docbook conversion of existing ext/pb_ds documentation.
2358 * doc/Makefile.am (xml_sources_manual): Add
2359 policy_data_structures.xml and
2360 test_policy_data_structures.xml.
2361 (stamp-html-copy): Remove special-case for ext/pb_ds directory.
2362 (XSLTPROC_FLAGS): Split into XSLT_FLAGS and XSLT_PARAM, use.
2363 * doc/Makefile.in: Regenerate.
2364 * doc/xml/manual/policy_data_structures.xml: New, adapted from
2365 previous html-only instance in doc/html/ext/pb_ds.
2366 * doc/xml/manual/test_policy_data_structures.xml: New, same as above.
2368 * doc/xml/spine.xml: Update copyright.
2369 * doc/xml/manual/spine.xml: Same.
2370 * doc/xml/manual/extensions.xml: Adjust set, chapter, sections.
2371 * doc/xml/manual/bitmap_allocator.xml: Same.
2372 * doc/xml/manual/mt_allocator.xml: Same.
2374 Populate image directory.
2375 * doc/xml/images/(pbds_balls_and_bins.png,
2376 pbds_binary_priority_queue_random_int_push_timing_test_local.pdf,
2377 pbds_binary_priority_queue_random_int_push_timing_test_local.png,
2378 pbds_binary_priority_queue_random_int_push_timing_test_local.svg,
2379 pbds_cc_hash_random_int_find_timing_test_local.pdf,
2380 pbds_cc_hash_random_int_find_timing_test_local.png,
2381 pbds_cc_hash_random_int_find_timing_test_local.svg,
2382 pbds_cc_hash_random_int_subscript_timing_test_find_local.pdf,
2383 pbds_cc_hash_random_int_subscript_timing_test_find_local.png,
2384 pbds_cc_hash_random_int_subscript_timing_test_find_local.svg,
2385 pbds_cc_hash_random_int_subscript_timing_test_insert_local.pdf,
2386 pbds_cc_hash_random_int_subscript_timing_test_insert_local.png,
2387 pbds_cc_hash_random_int_subscript_timing_test_insert_local.svg,
2388 pbds_container_tag_hierarchy.pdf,
2389 pbds_container_tag_hierarchy.png,
2390 pbds_container_tag_hierarchy.svg,
2391 pbds_different_underlying_dss_1.png,
2392 pbds_different_underlying_dss_2.png,
2393 pbds_embedded_lists_1.png, pbds_embedded_lists_2.png,
2394 pbds_embedded_lists_3.png, pbds_exception_hierarchy.pdf,
2395 pbds_exception_hierarchy.png, pbds_exception_hierarchy.svg,
2396 pbds_gp_hash_random_int_find_timing_test_local.pdf,
2397 pbds_gp_hash_random_int_find_timing_test_local.png,
2398 pbds_gp_hash_random_int_find_timing_test_local.svg,
2399 pbds_gp_hash_random_int_subscript_timing_test_find_local.pdf,
2400 pbds_gp_hash_random_int_subscript_timing_test_find_local.png,
2401 pbds_gp_hash_random_int_subscript_timing_test_find_local.svg,
2402 pbds_gp_hash_random_int_subscript_timing_test_insert_local.pdf,
2403 pbds_gp_hash_random_int_subscript_timing_test_insert_local.png,
2404 pbds_gp_hash_random_int_subscript_timing_test_insert_local.svg,
2405 pbds_hash_policy_cd.png,
2406 pbds_hash_random_int_erase_mem_usage_test_local.pdf,
2407 pbds_hash_random_int_erase_mem_usage_test_local.png,
2408 pbds_hash_random_int_erase_mem_usage_test_local.svg,
2409 pbds_hash_ranged_hash_range_hashing_fns.png,
2410 pbds_hash_range_hashing_seq_diagram2.png,
2411 pbds_hash_range_hashing_seq_diagram.png,
2412 pbds_hash_zlob_random_int_find_timing_test_local.pdf,
2413 pbds_hash_zlob_random_int_find_timing_test_local.png,
2414 pbds_hash_zlob_random_int_find_timing_test_local.svg,
2415 pbds_insert_resize_sequence_diagram1.png,
2416 pbds_insert_resize_sequence_diagram2.png,
2417 pbds_insert_resize_sequence_diagram3.png,
2418 pbds_invalidation_guarantee_erase.png,
2419 pbds_invalidation_tag_hierarchy.pdf,
2420 pbds_invalidation_tag_hierarchy.png,
2421 pbds_invalidation_tag_hierarchy.svg, pbds_list_update.png,
2422 pbds_multimap_text_find_timing_test_large_s2p_hash_local.pdf,
2423 pbds_multimap_text_find_timing_test_large_s2p_hash_local.png,
2424 pbds_multimap_text_find_timing_test_large_s2p_hash_local.svg,
2425 pbds_multimap_text_find_timing_test_large_s2p_tree_local.pdf,
2426 pbds_multimap_text_find_timing_test_large_s2p_tree_local.png,
2427 pbds_multimap_text_find_timing_test_large_s2p_tree_local.svg,
2428 pbds_multimap_text_find_timing_test_small_s2p_hash_local.pdf,
2429 pbds_multimap_text_find_timing_test_small_s2p_hash_local.png,
2430 pbds_multimap_text_find_timing_test_small_s2p_hash_local.svg,
2431 pbds_multimap_text_find_timing_test_small_s2p_tree_local.pdf,
2432 pbds_multimap_text_find_timing_test_small_s2p_tree_local.png,
2433 pbds_multimap_text_find_timing_test_small_s2p_tree_local.svg,
2434 pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.pdf,
2435 pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
2436 pbds_multimap_text_insert_mem_usage_test_large_s2p_hash_local.svg,
2437 pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.pdf,
2438 pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
2439 pbds_multimap_text_insert_mem_usage_test_large_s2p_tree_local.svg,
2440 pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.pdf,
2441 pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
2442 pbds_multimap_text_insert_mem_usage_test_small_s2p_hash_local.svg,
2443 pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.pdf,
2444 pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2445 pbds_multimap_text_insert_mem_usage_test_small_s2p_tree_local.svg,
2446 pbds_multimap_text_insert_timing_test_large_s2p_hash_local.pdf,
2447 pbds_multimap_text_insert_timing_test_large_s2p_hash_local.png,
2448 pbds_multimap_text_insert_timing_test_large_s2p_hash_local.svg,
2449 pbds_multimap_text_insert_timing_test_large_s2p_tree_local.pdf,
2450 pbds_multimap_text_insert_timing_test_large_s2p_tree_local.png,
2451 pbds_multimap_text_insert_timing_test_large_s2p_tree_local.svg,
2452 pbds_multimap_text_insert_timing_test_small_s2p_hash_local.pdf,
2453 pbds_multimap_text_insert_timing_test_small_s2p_hash_local.png,
2454 pbds_multimap_text_insert_timing_test_small_s2p_hash_local.svg,
2455 pbds_multimap_text_insert_timing_test_small_s2p_tree_local.pdf,
2456 pbds_multimap_text_insert_timing_test_small_s2p_tree_local.png,
2457 pbds_multimap_text_insert_timing_test_small_s2p_tree_local.svg,
2458 pbds_node_invariants.png,
2459 pbds_pairing_priority_queue_text_push_pop_timing_test_local.pdf,
2460 pbds_pairing_priority_queue_text_push_pop_timing_test_local.png,
2461 pbds_pairing_priority_queue_text_push_pop_timing_test_local.svg,
2462 pbds_pairing_priority_queue_text_push_timing_test_local.pdf,
2463 pbds_pairing_priority_queue_text_push_timing_test_local.png,
2464 pbds_pairing_priority_queue_text_push_timing_test_local.svg,
2465 pbds_pat_trie.png, pbds_point_iterator_hierarchy.png,
2466 pbds_point_iterators_range_ops_1.png,
2467 pbds_point_iterators_range_ops_2.png,
2468 pbds_priority_queue_different_underlying_dss.png,
2469 pbds_priority_queue_random_int_push_pop_timing_test_local.pdf,
2470 pbds_priority_queue_random_int_push_pop_timing_test_local.png,
2471 pbds_priority_queue_random_int_push_pop_timing_test_local.svg,
2472 pbds_priority_queue_random_int_push_timing_test_local.pdf,
2473 pbds_priority_queue_random_int_push_timing_test_local.png,
2474 pbds_priority_queue_random_int_push_timing_test_local.svg,
2475 pbds_priority_queue_tag_hierarchy.pdf,
2476 pbds_priority_queue_tag_hierarchy.png,
2477 pbds_priority_queue_tag_hierarchy.svg,
2478 pbds_priority_queue_text_join_timing_test_local.pdf,
2479 pbds_priority_queue_text_join_timing_test_local.png,
2480 pbds_priority_queue_text_join_timing_test_local.svg,
2481 pbds_priority_queue_text_modify_down_timing_test_local.pdf,
2482 pbds_priority_queue_text_modify_down_timing_test_local.png,
2483 pbds_priority_queue_text_modify_down_timing_test_local.svg,
2484 pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.pdf,
2485 pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2486 pbds_priority_queue_text_modify_down_timing_test_pairing_thin_local.svg,
2487 pbds_priority_queue_text_modify_up_timing_test_local.pdf,
2488 pbds_priority_queue_text_modify_up_timing_test_local.png,
2489 pbds_priority_queue_text_modify_up_timing_test_local.svg,
2490 pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.pdf,
2491 pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2492 pbds_priority_queue_text_modify_up_timing_test_pairing_thin_local.svg,
2493 pbds_priority_queue_text_pop_mem_usage_test_local.pdf,
2494 pbds_priority_queue_text_pop_mem_usage_test_local.png,
2495 pbds_priority_queue_text_pop_mem_usage_test_local.svg,
2496 pbds_priority_queue_text_push_pop_timing_test_local.pdf,
2497 pbds_priority_queue_text_push_pop_timing_test_local.png,
2498 pbds_priority_queue_text_push_pop_timing_test_local.svg,
2499 pbds_priority_queue_text_push_timing_test_local.pdf,
2500 pbds_priority_queue_text_push_timing_test_local.png,
2501 pbds_priority_queue_text_push_timing_test_local.svg,
2502 pbds_rationale_null_node_updator.png,
2503 pbds_resize_policy_cd.png, pbds_restoring_node_invariants.png,
2504 pbds_simple_list.png,
2505 pbds_text_find_timing_test_hash_local.pdf,
2506 pbds_text_find_timing_test_hash_local.png,
2507 pbds_text_find_timing_test_hash_local.svg,
2508 pbds_text_find_timing_test_tree_like_local.pdf,
2509 pbds_text_find_timing_test_tree_like_local.png,
2510 pbds_text_find_timing_test_tree_like_local.svg,
2511 pbds_tree_node_invalidations.png,
2512 pbds_tree_node_invariants.png,
2513 pbds_tree_node_updator_policy_cd.png,
2514 pbds_tree_order_statistics_timing_test_local.pdf,
2515 pbds_tree_order_statistics_timing_test_local.png,
2516 pbds_tree_order_statistics_timing_test_local.svg,
2517 pbds_tree_split_join_timing_test_local.pdf,
2518 pbds_tree_split_join_timing_test_local.png,
2519 pbds_tree_split_join_timing_test_local.svg,
2520 pbds_tree_text_insert_timing_test_node_tree_local.pdf,
2521 pbds_tree_text_insert_timing_test_node_tree_local.png,
2522 pbds_tree_text_insert_timing_test_node_tree_local.svg,
2523 pbds_tree_text_insert_timing_test_pat_trie_local.pdf,
2524 pbds_tree_text_insert_timing_test_pat_trie_local.png,
2525 pbds_tree_text_insert_timing_test_pat_trie_local.svg,
2526 pbds_tree_text_insert_timing_test_vector_tree_local.pdf,
2527 pbds_tree_text_insert_timing_test_vector_tree_local.png,
2528 pbds_tree_text_insert_timing_test_vector_tree_local.svg,
2529 pbds_tree_text_lor_find_timing_test_local.pdf,
2530 pbds_tree_text_lor_find_timing_test_local.png,
2531 pbds_tree_text_lor_find_timing_test_local.svg,
2532 pbds_trie_node_updator_policy_cd.png,
2533 pbds_update_seq_diagram.png): Add.
2535 * doc/html/ext/pb_ds: Remove.
2536 * doc/html/ext/pb_ds/(acks.html, assoc_container_tag_cd.png,
2537 assoc_container_tag_cd.svg, assoc_container_traits.html,
2538 assoc_design.html, assoc_examples.html,
2539 associative_container_tag.html, assoc_performance_tests.html,
2540 assoc_regression_tests.html, assoc_tests.html,
2541 balls_and_bins.png, basic_hash_table.html,
2542 basic_hash_tag.html, basic_invalidation_guarantee.html,
2543 basic_tree_assoc_container_const_node_iterator.html,
2544 basic_tree.html, basic_tree_tag.html, binary_heap_tag.html,
2545 binary_priority_queue_random_int_push_timing_test_gcc.png,
2546 binary_priority_queue_random_int_push_timing_test_local.png,
2547 binary_priority_queue_random_int_push_timing_test_msvc.png,
2548 binomial_heap_tag.html,
2549 ccgp_hash_random_int_subscript_timing_test_insert_gcc.png,
2550 ccgp_hash_random_int_subscript_timing_test_insert_local.png,
2551 ccgp_hash_random_int_subscript_timing_test_insert_msvc.png,
2552 cc_hash_max_collision_check_resize_trigger.html,
2553 cc_hash_random_int_find_timing_test_gcc.png,
2554 cc_hash_random_int_find_timing_test_local.png,
2555 cc_hash_random_int_find_timing_test_msvc.png,
2556 cc_hash_random_int_subscript_timing_test_find_gcc.png,
2557 cc_hash_random_int_subscript_timing_test_find_local.png,
2558 cc_hash_random_int_subscript_timing_test_find_msvc.png,
2559 cc_hash_random_int_subscript_timing_test_insert_gcc.png,
2560 cc_hash_random_int_subscript_timing_test_insert_local.png,
2561 cc_hash_random_int_subscript_timing_test_insert_msvc.png,
2562 cc_hash_table.html, cc_hash_tag.html, checked_by_tidy.gif
2563 concepts.html, contact.html, container_base.html,
2564 container_cd.png, container_cd.svg, container_tag.html,
2565 counter_lu_policy.html, design.html,
2566 different_underlying_dss.png, direct_mask_range_hashing.html,
2567 direct_mod_range_hashing.html, disclaimer.html, ds_gen.html,
2568 embedded_lists_1.png, embedded_lists_2.png,
2569 embedded_lists_3.png, examples.html, exceptions.html,
2570 gp_hash_random_int_find_timing_test_gcc.png,
2571 gp_hash_random_int_find_timing_test_local.png,
2572 gp_hash_random_int_find_timing_test_msvc.png,
2573 gp_hash_random_int_subscript_timing_test_find_gcc.png,
2574 gp_hash_random_int_subscript_timing_test_find_local.png,
2575 gp_hash_random_int_subscript_timing_test_find_msvc.png,
2576 gp_hash_random_int_subscript_timing_test_insert_gcc.png,
2577 gp_hash_random_int_subscript_timing_test_insert_local.png,
2578 gp_hash_random_int_subscript_timing_test_insert_msvc.png,
2579 gp_hash_table.html, gp_hash_tag.html,
2580 hash_based_containers.html, hash_exponential_size_policy.html,
2581 hash_load_check_resize_trigger.html, hash_policy_cd.png,
2582 hash_prime_size_policy.html,
2583 hash_random_int_erase_mem_usage_test_gcc.png,
2584 hash_random_int_erase_mem_usage_test.html,
2585 hash_random_int_erase_mem_usage_test_local.png,
2586 hash_random_int_erase_mem_usage_test_msvc.png,
2587 hash_random_int_find_find_timing_test.html,
2588 hash_random_int_subscript_find_timing_test.html,
2589 hash_random_int_subscript_insert_timing_test.html,
2590 hash_ranged_hash_range_hashing_fns.png,
2591 hash_range_hashing_seq_diagram2.png,
2592 hash_range_hashing_seq_diagram.png,
2593 hash_standard_resize_policy.html,
2594 hash_text_find_find_timing_test.html,
2595 hash_zlob_random_int_find_find_timing_test.html,
2596 hash_zlob_random_int_find_timing_test_gcc.png,
2597 hash_zlob_random_int_find_timing_test_local.png,
2598 hash_zlob_random_int_find_timing_test_msvc.png, index.html,
2599 insert_error.html, insert_resize_sequence_diagram1.png,
2600 insert_resize_sequence_diagram2.png,
2601 insert_resize_sequence_diagram3.png, interface.html,
2602 introduction.html, invalidation_guarantee_cd.png,
2603 invalidation_guarantee_erase.png, join_error.html,
2604 linear_probe_fn.html, list_update.html, list_update_tag.html,
2605 lu_based_containers.html, lu.png, misc.html, motivation.html,
2606 move_to_front_lu_policy.html,
2607 multimap_text_find_timing_test_large.html,
2608 multimap_text_find_timing_test_large_s2p_hash_gcc.png,
2609 multimap_text_find_timing_test_large_s2p_hash_local.png,
2610 multimap_text_find_timing_test_large_s2p_hash_msvc.png,
2611 multimap_text_find_timing_test_large_s2p_tree_gcc.png,
2612 multimap_text_find_timing_test_large_s2p_tree_local.png,
2613 multimap_text_find_timing_test_large_s2p_tree_msvc.png,
2614 multimap_text_find_timing_test_small.html,
2615 multimap_text_find_timing_test_small_s2p_hash_gcc.png,
2616 multimap_text_find_timing_test_small_s2p_hash_local.png,
2617 multimap_text_find_timing_test_small_s2p_hash_msvc.png,
2618 multimap_text_find_timing_test_small_s2p_tree_gcc.png,
2619 multimap_text_find_timing_test_small_s2p_tree_local.png,
2620 multimap_text_find_timing_test_small_s2p_tree_msvc.png,
2621 multimap_text_insert_mem_usage_test_large.html,
2622 multimap_text_insert_mem_usage_test_large_s2p_hash_gcc.png,
2623 multimap_text_insert_mem_usage_test_large_s2p_hash_local.png,
2624 multimap_text_insert_mem_usage_test_large_s2p_hash_msvc.png,
2625 multimap_text_insert_mem_usage_test_large_s2p_tree_gcc.png,
2626 multimap_text_insert_mem_usage_test_large_s2p_tree_local.png,
2627 multimap_text_insert_mem_usage_test_large_s2p_tree_msvc.png,
2628 multimap_text_insert_mem_usage_test_small.html,
2629 multimap_text_insert_mem_usage_test_small_s2p_hash_gcc.png,
2630 multimap_text_insert_mem_usage_test_small_s2p_hash_local.png,
2631 multimap_text_insert_mem_usage_test_small_s2p_hash_msvc.png,
2632 multimap_text_insert_mem_usage_test_small_s2p_tree_gcc.png,
2633 multimap_text_insert_mem_usage_test_small_s2p_tree_local.png,
2634 multimap_text_insert_mem_usage_test_small_s2p_tree_msvc.png,
2635 multimap_text_insert_timing_test_large.html,
2636 multimap_text_insert_timing_test_large_s2p_hash_gcc.png,
2637 multimap_text_insert_timing_test_large_s2p_hash_local.png,
2638 multimap_text_insert_timing_test_large_s2p_hash_msvc.png,
2639 multimap_text_insert_timing_test_large_s2p_tree_gcc.png,
2640 multimap_text_insert_timing_test_large_s2p_tree_local.png,
2641 multimap_text_insert_timing_test_large_s2p_tree_msvc.png,
2642 multimap_text_insert_timing_test_small.html,
2643 multimap_text_insert_timing_test_small_s2p_hash_gcc.png,
2644 multimap_text_insert_timing_test_small_s2p_hash_local.png,
2645 multimap_text_insert_timing_test_small_s2p_hash_msvc.png,
2646 multimap_text_insert_timing_test_small_s2p_tree_gcc.png,
2647 multimap_text_insert_timing_test_small_s2p_tree_local.png,
2648 multimap_text_insert_timing_test_small_s2p_tree_msvc.png,
2649 node_invariant_invalidations.png, node_invariants.png,
2650 null_hash_fn.html, null_lu_metadata.html,
2651 null_mapped_type.html, null_probe_fn.html,
2652 null_tree_node_update.html, null_trie_node_update.html,
2653 ov_tree_tag.html, pairing_heap_tag.html,
2654 pairing_priority_queue_text_push_pop_timing_test_gcc.png,
2655 pairing_priority_queue_text_push_pop_timing_test_local.png,
2656 pairing_priority_queue_text_push_pop_timing_test_msvc.png,
2657 pairing_priority_queue_text_push_timing_test_gcc.png,
2658 pairing_priority_queue_text_push_timing_test_local.png,
2659 pairing_priority_queue_text_push_timing_test_msvc.png,
2660 pat_trie.png, pat_trie_tag.html,
2661 point_invalidation_guarantee.html, point_iterators_cd.png,
2662 point_iterators_range_ops_1.png,
2663 point_iterators_range_ops_2.png, pq_container_traits.html,
2664 pq_design.html, pq_different_underlying_dss.png,
2665 pq_examples.html, pq_performance_tests.html,
2666 pq_regression_tests.html, pq_tests.html, prerequisites.html,
2667 priority_queue.html,
2668 priority_queue_random_int_push_pop_timing_test_gcc.png,
2669 priority_queue_random_int_push_pop_timing_test.html,
2670 priority_queue_random_int_push_pop_timing_test_local.png,
2671 priority_queue_random_int_push_pop_timing_test_msvc.png,
2672 priority_queue_random_int_push_timing_test_gcc.png,
2673 priority_queue_random_int_push_timing_test.html,
2674 priority_queue_random_int_push_timing_test_local.png,
2675 priority_queue_random_int_push_timing_test_msvc.png,
2676 priority_queue_tag_cd.png, priority_queue_tag_cd.svg,
2677 priority_queue_tag.html,
2678 priority_queue_text_join_timing_test_gcc.png,
2679 priority_queue_text_join_timing_test.html,
2680 priority_queue_text_join_timing_test_local.png,
2681 priority_queue_text_join_timing_test_msvc.png,
2682 priority_queue_text_modify_down_timing_test_gcc.png,
2683 priority_queue_text_modify_down_timing_test.html,
2684 priority_queue_text_modify_down_timing_test_local.png,
2685 priority_queue_text_modify_down_timing_test_msvc.png,
2686 priority_queue_text_modify_down_timing_test_pairing_thin_gcc.png,
2687 priority_queue_text_modify_down_timing_test_pairing_thin_local.png,
2688 priority_queue_text_modify_down_timing_test_pairing_thin_msvc.png,
2689 priority_queue_text_modify_up_timing_test_gcc.png,
2690 priority_queue_text_modify_up_timing_test.html,
2691 priority_queue_text_modify_up_timing_test_local.png,
2692 priority_queue_text_modify_up_timing_test_msvc.png,
2693 priority_queue_text_modify_up_timing_test_pairing_thin_gcc.png,
2694 priority_queue_text_modify_up_timing_test_pairing_thin_local.png,
2695 priority_queue_text_modify_up_timing_test_pairing_thin_msvc.png,
2696 priority_queue_text_pop_mem_usage_test_gcc.png,
2697 priority_queue_text_pop_mem_usage_test.html,
2698 priority_queue_text_pop_mem_usage_test_local.png,
2699 priority_queue_text_pop_mem_usage_test_msvc.png,
2700 priority_queue_text_push_pop_timing_test_gcc.png,
2701 priority_queue_text_push_pop_timing_test.html,
2702 priority_queue_text_push_pop_timing_test_local.png,
2703 priority_queue_text_push_pop_timing_test_msvc.png,
2704 priority_queue_text_push_timing_test_gcc.png,
2705 priority_queue_text_push_timing_test.html,
2706 priority_queue_text_push_timing_test_local.png,
2707 priority_queue_text_push_timing_test_msvc.png,
2708 PythonPoweredSmall.gif quadratic_probe_fn.html,
2709 random_int_find_find_timing_test_tree_gcc.png,
2710 random_int_find_find_timing_test_tree_local.png,
2711 random_int_find_find_timing_test_tree_msvc.png,
2712 range_invalidation_guarantee.html,
2713 rationale_null_node_updator.png, rb_tree_tag.html,
2714 rc_binomial_heap_tag.html, references.html, resize_error.html,
2715 resize_policy_cd.png, restoring_node_invariants.png,
2716 sample_probe_fn.html, sample_ranged_hash_fn.html,
2717 sample_ranged_probe_fn.html, sample_range_hashing.html,
2718 sample_resize_policy.html, sample_resize_trigger.html,
2719 sample_size_policy.html, sample_tree_node_update.html,
2720 sample_trie_access_traits.html, sample_trie_node_update.html,
2721 sample_update_policy.html, simple_list.png,
2722 splay_tree_tag.html, tests.html,
2723 text_find_timing_test_hash_gcc.png,
2724 text_find_timing_test_hash_local.png,
2725 text_find_timing_test_hash_msvc.png,
2726 text_find_timing_test_tree_like_gcc.png,
2727 text_find_timing_test_tree_like_local.png,
2728 text_find_timing_test_tree_like_msvc.png, thin_heap_tag.html,
2729 tree_based_containers.html, tree.html,
2730 tree_node_iterator.html, tree_node_updator_policy_cd.png,
2731 tree_order_statistics_node_update.html,
2732 tree_order_statistics_timing_test_gcc.png,
2733 tree_order_statistics_timing_test.html,
2734 tree_order_statistics_timing_test_local.png,
2735 tree_order_statistics_timing_test_msvc.png,
2736 tree_random_int_find_find_timing_test.html,
2737 tree_split_join_timing_test_gcc.png,
2738 tree_split_join_timing_test.html,
2739 tree_split_join_timing_test_local.png,
2740 tree_split_join_timing_test_msvc.png, tree_tag.html,
2741 tree_text_find_find_timing_test.html,
2742 tree_text_insert_timing_test.html,
2743 tree_text_insert_timing_test_node_tree_gcc.png,
2744 tree_text_insert_timing_test_node_tree_local.png,
2745 tree_text_insert_timing_test_node_tree_msvc.png,
2746 tree_text_insert_timing_test_pat_trie_gcc.png,
2747 tree_text_insert_timing_test_pat_trie_local.png,
2748 tree_text_insert_timing_test_pat_trie_msvc.png,
2749 tree_text_insert_timing_test_vector_tree_gcc.png,
2750 tree_text_insert_timing_test_vector_tree_local.png,
2751 tree_text_insert_timing_test_vector_tree_msvc.png,
2752 tree_text_lor_find_find_timing_test.html,
2753 tree_text_lor_find_timing_test_gcc.png,
2754 tree_text_lor_find_timing_test_local.png,
2755 tree_text_lor_find_timing_test_msvc.png,
2756 trie_based_containers.html, trie_const_node_iterator.html,
2757 trie.html, trie_node_iterator.html,
2758 trie_node_updator_policy_cd.png,
2759 trie_order_statistics_node_update.html,
2760 trie_prefix_search_node_update.html,
2761 trie_string_access_traits.html, trie_tag.html,
2762 trivial_iterator_tag.html, tutorial.html,
2763 update_policy_cd.png, update_seq_diagram.png): Remove.
2765 2011-07-27 Paolo Carlini <paolo.carlini@oracle.com>
2768 * include/c_global/cmath: Use _GLIBCXX_CONSTEXPR and constexpr.
2770 2011-07-27 Jeffrey Yasskin <jyasskin@google.com>
2772 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Updated.
2774 2011-07-25 Benjamin Kosnik <bkoz@redhat.com>
2776 * include/std/array (at): Remove constexpr when -fno-exceptions.
2777 * testsuite/23_containers/array/at_neg.cc: Test.
2779 2011-07-25 Paolo Carlini <paolo.carlini@oracle.com>
2780 Nathan Ridge <zeratul976@hotmail.com>
2783 * include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
2785 (vector<>::push_back(const value_type&)): Use it.
2786 * include/bits/vector.tcc: Define.
2787 (vector<>::emplace_back(_Args&&...)): Use it.
2788 * testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
2790 * testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
2791 * testsuite/23_containers/deque/modifiers/push_back/49836.cc:
2793 * testsuite/23_containers/deque/modifiers/push_front/49836.cc:
2795 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2796 Adjust dg-error line number.
2797 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2799 * testsuite/23_containers/vector/requirements/dr438/
2800 constructor_1_neg.cc: Likewise.
2801 * testsuite/23_containers/vector/requirements/dr438/
2802 constructor_2_neg.cc: Likewise.
2804 2011-07-24 Paolo Carlini <paolo.carlini@oracle.com>
2806 * include/bits/hashtable_policy.h (_Prime_rehash_policy::_M_next_bkt,
2807 _M_bkt_for_elements, _M_need_rehash): Fix typos in the last commit.
2809 2011-07-24 François Dumont <francois.cppdevs@free.fr>
2811 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Use
2812 __builtin_floor rather than __builtin_ceil to compute next resize
2814 * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
2817 2011-07-22 Benjamin Kosnik <bkoz@redhat.com>
2818 Daniel Krugler <daniel.kruegler@googlemail.com>
2820 * include/bits/move.h (move, forward): Mark constexpr.
2821 * include/bits/stl_pair.h (pair): Mark move ctors constexpr.
2822 * testsuite/20_util/pair/make_pair/constexpr.cc: New.
2823 * testsuite/20_util/pair/cons/constexpr.cc: Add tests.
2825 2011-07-22 Ian Lance Taylor <iant@google.com>
2827 * fragment.am (CONFIG_CXXFLAGS): Add -frandom-seed.
2828 * Makefile.in: Rebuild.
2829 * doc/Makefile.in: Rebuild.
2830 * include/Makefile.in: Rebuild.
2831 * libsupc++/Makefile.in: Rebuild.
2832 * po/Makefile.in: Rebuild.
2833 * python/Makefile.in: Rebuild.
2834 * src/Makefile.in: Rebuild.
2835 * testsuite/Makefile.in: Rebuild.
2837 2011-07-21 Benjamin Kosnik <bkoz@redhat.com>
2839 * testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Move...
2840 * testsuite/ext/pb_ds/regression/tree_set_rand.cc: ... here.
2841 * testsuite/ext/pb_ds/regression/tree_no_data_map_rand_debug.cc: Move...
2842 * testsuite/ext/pb_ds/regression/tree_set_rand_debug.cc: ... here.
2843 * testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Move...
2844 * testsuite/ext/pb_ds/regression/tree_map_rand.cc: ... here.
2845 * testsuite/ext/pb_ds/regression/tree_data_map_rand_debug.cc: Move...
2846 * testsuite/ext/pb_ds/regression/tree_map_rand_debug.cc: ... here.
2848 * testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Move...
2849 * testsuite/ext/pb_ds/regression/trie_set_rand.cc: ... here.
2850 * testsuite/ext/pb_ds/regression/trie_no_data_map_rand_debug.cc: Move...
2851 * testsuite/ext/pb_ds/regression/trie_set_rand_debug.cc: ... here.
2852 * testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Move...
2853 * testsuite/ext/pb_ds/regression/trie_map_rand.cc: ... here.
2854 * testsuite/ext/pb_ds/regression/trie_data_map_rand_debug.cc: Move...
2855 * testsuite/ext/pb_ds/regression/trie_map_rand_debug.cc: ... here.
2857 * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand.cc: Move.
2858 * testsuite/ext/pb_ds/regression/list_update_set_rand.cc: ...here.
2859 * testsuite/ext/pb_ds/regression/list_update_no_data_map_rand_debug.cc:
2861 * testsuite/ext/pb_ds/regression/list_update_set_rand_debug.cc: ...here.
2862 * testsuite/ext/pb_ds/regression/list_update_data_map_rand.cc: Move...
2863 * testsuite/ext/pb_ds/regression/list_update_map_rand.cc: ...here.
2864 * testsuite/ext/pb_ds/regression/list_update_data_map_rand_debug.cc:
2866 * testsuite/ext/pb_ds/regression/list_update_map_rand_debug.cc: ...here.
2868 * testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Move...
2869 * testsuite/ext/pb_ds/regression/hash_set_rand.cc: ...here.
2870 * testsuite/ext/pb_ds/regression/hash_no_data_map_rand_debug.cc: Move...
2871 * testsuite/ext/pb_ds/regression/hash_set_rand_debug.cc: ...here.
2873 * testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Move...
2874 * testsuite/ext/pb_ds/regression/hash_map_rand.cc: ...here.
2875 * testsuite/ext/pb_ds/regression/hash_data_map_rand_debug.cc: Move...
2876 * testsuite/ext/pb_ds/regression/hash_map_rand_debug.cc: ...here.
2878 2011-07-21 François Dumont <francois.cppdevs@free.fr>
2880 * include/debug/safe_unordered_sequence.h,
2881 safe_unordered_sequence.tcc: Rename respectively in...
2882 * include/debug/safe_unordered_container.h,
2883 safe_unordered_container.tcc: ...those. _Safe_unordered_sequence
2884 rename _Safe_unordered_container.
2885 * include/debug/safe_unordered_base.h: _Safe_unordered_sequence_base
2886 rename _Safe_unordered_container_base.
2887 * include/debug/unordered_map, unordered_set: Adapt to previous
2889 * config/abi/pre/gnu.ver: Likewise.
2890 * src/debug.cc: Likewise.
2891 * include/Makefile.am: Likewise.
2892 * include/Makefile.in: Regenerate.
2894 2011-07-21 Paolo Carlini <paolo.carlini@oracle.com>
2896 * include/std/mutex (timed_mutex, recursive_timed_mutex): Update
2897 to use steady_clock instead of monotonic_clock.
2898 * config/abi/pre/gnu.ver: Export steady_clock::now.
2900 2011-07-20 Benjamin Kosnik <bkoz@redhat.com>
2901 Daniel Krugler <daniel.kruegler@googlemail.com>
2903 * include/std/array (array::at, array::operator[]): Mark constexpr.
2904 * testsuite/23_containers/array/requirements/
2905 constexpr_element_access.cc: Add.
2907 2011-07-20 Benjamin Kosnik <bkoz@redhat.com>
2908 Daniel Krugler <daniel.kruegler@googlemail.com>
2910 * include/std/chrono: (system_clock::is_steady): Update to N3291
2912 (time_point): Mark nonmember arithmetic operators constexpr.
2913 * src/chrono.cc: Modify for above.
2914 * src/compatibility-c++0x.cc: Same.
2915 * testsuite/20_util/time_point/nonmember/constexpr.cc: New.
2916 * testsuite/20_util/time_point/1.cc: Modify.
2917 * testsuite/20_util/system_clock/constexpr_data.cc: Modify.
2918 * testsuite/20_util/system_clock/1.cc: Modify.
2919 * testsuite/20_util/monotonic_clock/constexpr_data.cc: Move to...
2920 * testsuite/20_util/steady_clock/constexpr_data.cc: ...here.
2921 * testsuite/30_threads/condition_variable/members/2.cc: Modify.
2922 * testsuite/30_threads/condition_variable_any/members/2.cc: Modify.
2924 2011-07-20 Paolo Carlini <paolo.carlini@oracle.com>
2926 * include/std/system_error: Use noexcept.
2927 * src/system_error.cc: Likewise.
2928 * testsuite/19_diagnostics/error_condition/modifiers/39881.cc: Adjust.
2929 * testsuite/19_diagnostics/error_condition/cons/39881.cc: Likewise.
2930 * testsuite/19_diagnostics/error_code/modifiers/39882.cc: Likewise.
2931 * testsuite/19_diagnostics/error_code/cons/39882.cc: Likewise.
2932 * testsuite/util/testsuite_error.h: Likewise.
2934 * include/std/system_error (error_code::error_code(_ErrorCodeEnum)):
2935 Use enable_if on template parameter default.
2936 (error_condition::error_condition(_ErrorConditionEnum)): Likewise.
2938 2011-07-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2940 * include/precompiled/stdc++.h: Add scoped_allocator.
2942 2011-07-20 Benjamin Kosnik <bkoz@redhat.com>
2944 * include/std/bitset (operator[]): Make constexpr.
2945 * testsuite/23_containers/bitset/operations/constexpr.cc: New.
2947 2011-07-20 Paolo Carlini <paolo.carlini@oracle.com>
2949 * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
2950 _Safe_local_iterator(const _Iterator&, size_type, const _Sequence*)):
2953 2011-07-19 François Dumont <francois.cppdevs@free.fr>
2955 * include/debug/safe_unordered_base.h, safe_unordered_sequence.h,
2956 safe_unordered_sequence.tcc, safe_local_iterator.h,
2957 safe_local_iterator.tcc: New, support for unordered sequence safe
2959 * include/Makefile.am: Add previous files.
2960 * include/Makefile.in: Regenerate.
2961 * include/debug/unordered_map, unordered_set: Implement
2962 _Safe_unordered_sequence and expose _Safe_local_iterator.
2963 * include/debug/safe_iterator.h, safe_iterator.tcc: Refactor
2964 _Safe_iterator::_M_get_distance static method to expose it as
2965 __get_distance function and use it in _Safe_local_iterator type.
2966 * include/debug/formatter.h: Add __msg_local_iter_compare_bad
2967 _Debug_msg_id enum entry to notify invalid comparison between local
2968 iterators from different buckets. Add _Parameter constructor from
2969 _Safe_local_iterator.
2970 * include/debug/functions.h: Add __valid_range overload for
2971 _Safe_local_iterator.
2972 * src/debug.cc: Add _Safe_unordered_sequence_base and
2973 _Safe_local_iterator_base methods implementations.
2974 * config/abi/pre/gnu.ver: Add export of some
2975 _Safe_unordered_sequence_base and _Safe_local_iterator_base methods.
2976 * testsuite/util/debug/checks.h: Add use_invalid_iterator function to
2977 simulate use of a singular iterator.
2978 * testsuite/util/debug/unordered_checks.h: New, several functions
2979 to simulate classic invalid usage of unordered sequence local
2981 * testsuite/23_containers/unordered_map/debug/
2982 use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2983 use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2984 invalid_local_iterator_compare_neg.cc: New.
2985 * testsuite/23_containers/unordered_multimap/debug/
2986 use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2987 use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2988 invalid_local_iterator_compare_neg.cc: New.
2989 * testsuite/23_containers/unordered_set/debug/
2990 use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2991 use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2992 invalid_local_iterator_compare_neg.cc: New.
2993 * testsuite/23_containers/unordered_multiset/debug/
2994 use_erased_local_iterator_neg.cc, invalid_local_iterator_range_neg.cc,
2995 use_invalid_local_iterator_neg.cc, use_invalid_iterator_neg.cc,
2996 invalid_local_iterator_compare_neg.cc: New.
2998 2011-07-18 Paolo Carlini <paolo.carlini@oracle.com>
3001 * include/bits/shared_ptr.h (struct hash<shared_ptr<>>): Use
3003 * include/bits/unique_ptr.h (struct hash<unique_ptr<>>): Likewise.
3005 2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3007 * crossconfig.m4 (*-netware): Remove.
3008 * configure: Regenerate.
3010 2011-07-15 Yufeng Zhang <yufeng.zhang@arm.com>
3012 * config/locale/newlib/ctype_members.cc: New file.
3013 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale
3014 kind: newlib. Configure to use the newlib specific
3015 ctype_members.cc when with_newlib is enabled.
3016 * configure: Regenerate.
3018 2011-07-15 Paolo Carlini <paolo.carlini@oracle.com>
3019 Jakub Jelinek <jakub@redhat.com>
3022 * acinclude.m4 ([GLIBCXX_CHECK_GTHREADS]): Check separately for
3023 _POSIX_TIMEOUTS and define _GTHREADS_USE_MUTEX_TIMEDLOCK.
3024 * libsupc++/guard.cc: Include <unistd.h>.
3025 * testsuite/17_intro/headers/c++1998/49745.cc: New.
3026 * configure: Regenerate.
3027 * config.h.in: Likewise.
3029 2011-07-11 Paolo Carlini <paolo.carlini@oracle.com>
3032 * include/bits/stl_algo.h (__move_merge_backward): Remove.
3033 (__move_merge_adaptive, __move_merge_adaptive_backward): New.
3034 (__merge_adaptive): Use the latter two.
3035 (__rotate_adaptive): Avoid self move-assignment.
3036 * include/bits/stl_algobase.h (move_backward): Fix comment.
3037 * testsuite/25_algorithms/stable_sort/49559.cc: New.
3038 * testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
3039 * testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
3040 * testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
3041 * testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
3042 (rvalstruct&&)): Check for self move-assignment.
3044 2011-07-11 Paolo Carlini <paolo.carlini@oracle.com>
3046 * testsuite/util/testsuite_allocator.h (propagating_allocator<>::
3047 operator=(const propagating_allocator<>&)): Retun *this.
3049 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3051 * include/Makefile.am: Add new header.
3052 * include/Makefile.in: Regenerate.
3053 * include/std/scoped_allocator: New.
3054 * doc/xml/manual/status_cxx200x.xml: Update.
3055 * testsuite/20_util/scoped_allocator/1.cc: New.
3056 * testsuite/20_util/scoped_allocator/propagation.cc: New.
3057 * testsuite/20_util/scoped_allocator/requirements/typedefs.cc: New.
3058 * testsuite/20_util/scoped_allocator/requirements/
3059 explicit_instantiation.cc: New.
3061 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3063 * include/bits/stl_vector.h: Use new allocator model in C++0x mode.
3064 * include/bits/vector.tcc: Likewise.
3065 * testsuite/util/testsuite_allocator.h (propagating_allocator): Define.
3066 * testsuite/23_containers/vector/allocator/copy_assign.cc: New.
3067 * testsuite/23_containers/vector/allocator/noexcept.cc: New.
3068 * testsuite/23_containers/vector/allocator/copy.cc: New.
3069 * testsuite/23_containers/vector/allocator/swap.cc: New.
3070 * testsuite/23_containers/vector/allocator/move_assign.cc: New.
3071 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
3072 Adjust dg-error line numbers.
3073 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
3075 * testsuite/23_containers/vector/requirements/dr438/
3076 constructor_1_neg.cc: Likewise.
3077 * testsuite/23_containers/vector/requirements/dr438/
3078 constructor_2_neg.cc: Likewise.
3080 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3082 * include/ext/alloc_traits.h (__allocator_always_compares_equal): New
3083 trait, provide partial specializations for known allocators.
3084 (__alloc_traits::construct, __alloc_traits::destroy): Overload for
3085 non-standard pointer types.
3086 (__alloc_traits::_S_always_equal): New trait for use with noexcept.
3087 (__alloc_traits::_S_nothrow_move): Likewise.
3088 (__alloc_traits::_S_nothrow_swap): Likewise.
3090 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3092 * include/ext/cast.h: Fix typo in include guard.
3093 * include/ext/pointer.h (_Unqualified_type): Remove redundant
3094 partial specializations for volatile types. Fix typos in comments.
3095 (pointer_traits<_Pointer_adaptor<Tp>>::pointer_to): Define.
3097 2011-07-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3100 * include/std/functional (__bind_simple): Define.
3101 * include/std/future (_Task_setter): Parameterize by type of result
3102 pointer instead of state object.
3103 (_S_task_setter): Type deduction helper.
3104 (_Task_state): Use _S_task_setter and __bind_simple.
3105 (_Deferred_state, _Async_state): Store call wrapper directly not as
3106 std::function. Use _S_task_setter and __bind_simple.
3107 (_S_make_deferred_state, _S_make_async_state): Type deduction helpers.
3108 (async): Use new functions and __bind_simple.
3109 * include/std/mutex (call_once): Use __bind_simple.
3110 * include/std/thread (thread): Likewise. Remove unused headers.
3111 * src/thread.cc: Add header.
3112 * testsuite/30_threads/async/49668.cc: New.
3113 * testsuite/30_threads/call_once/49668.cc: New.
3114 * testsuite/30_threads/thread/cons/49668.cc: New.
3115 * testsuite/30_threads/thread/cons/moveable.cc: Remove unused bool.
3117 2011-07-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3119 * configure.host (abi_baseline_subdir_switch): Describe.
3121 (*-*-solaris2.[89], *-*-solaris2.1[0-9]): Override.
3122 * acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Substitute
3123 baseline_subdir_switch.
3124 * testsuite/Makefile.am (site.exp): Emit it.
3125 (baseline_subdir): Use it.
3126 * testsuite/libstdc++-abi/abi.exp: Use it.
3127 * configure: Regenerate.
3128 * Makefile.in: Regenerate.
3129 * doc/Makefile.in: Regenerate.
3130 * include/Makefile.in: Regenerate.
3131 * libsupc++/Makefile.in: Regenerate.
3132 * po/Makefile.in: Regenerate.
3133 * python/Makefile.in: Regenerate.
3134 * src/Makefile.in: Regenerate.
3135 * testsuite/Makefile.in: Regenerate.
3137 2011-06-29 François Dumont <francois.cppdevs@free.fr>
3139 * include/debug/set.h, unordered_map, multiset.h, forward_list,
3140 unordered_set, vector, deque, string, list, multimap.h: Remove
3141 base class default constructor calls.
3142 * include/debug/map.h: Likewise and cleanup several redefinition of
3143 base iterator typedef.
3145 2011-06-29 Nathan Sidwell <nathan@codesourcery.com>
3147 * libsupc++/eh_arm.c (__cxa_type_match): Construct address of
3148 thrown object here. Return succeded_with_ptr_to_base for all
3151 2011-06-23 Jonathan Wakely <jwakely.gcc@gmail.com>
3153 * testsuite/tr1/6_containers/tuple/creation_functions/tie2.cc: Fix for
3155 * testsuite/25_algorithms/sort/35588.cc: Likewise.
3156 * testsuite/26_numerics/headers/complex/synopsis.cc: Likewise.
3158 2011-06-22 Jonathan Wakely <jwakely.gcc@gmail.com>
3160 * testsuite/20_util/bind/socket.cc: Use variable and remove attribute.
3162 2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>
3164 * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Avoid -Wall
3167 2011-06-22 Paolo Carlini <paolo.carlini@oracle.com>
3169 * testsuite/20_util/reference_wrapper/invoke.cc: Avoid -Wall warnings.
3170 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
3171 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
3172 * testsuite/20_util/allocator_traits/members/allocate_hint.cc:
3174 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3175 * testsuite/20_util/bind/socket.cc: Likewise.
3176 * testsuite/20_util/pointer_traits/pointer_to.cc: Likewise.
3177 * testsuite/util/testsuite_random.h: Likewise.
3179 2011-06-22 Jonathan Wakely <jwakely.gcc@gmail.com>
3181 * include/Makefile.am: Add alloc_traits.h headers.
3182 * include/Makefile.in: Regenerate.
3183 * include/std/memory: Include uses_allocator.h explicitly.
3184 * include/bits/allocator.h (allocator_traits): Move to ...
3185 * include/bits/alloc_traits.h: New header.
3186 * include/ext/alloc_traits.h (__alloc_traits): Extension to provide
3187 a common allocator interface for C++98 and C++0x.
3188 * include/bits/stl_construct.h: Use __alloc_traits.
3189 * include/bits/stl_uninitialized.h: Likewise.
3191 2011-06-22 Daniel Krugler <daniel.kruegler@googlemail.com>
3192 Paolo Carlini <paolo.carlini@oracle.com>
3194 * include/bits/move.h (__is_nothrow_swappable): Add.
3195 (swap(_Tp(&)[_Nm], _Tp(&)[_Nm])): Use noexcept.
3196 * include/bits/algorithmfwd.h: Adjust.
3197 * testsuite/25_algorithms/swap/noexcept.cc: New.
3199 2011-06-21 Jakub Jelinek <jakub@redhat.com>
3201 * testsuite/Makefile.am (check_DEJAGNU_normal_targets): Add
3202 check-DEJAGNUnormal[4-9].
3203 (check-DEJAGNU): Split into 10 jobs for parallel testing instead of 4.
3204 * testsuite/Makefile.in: Regenerated.
3206 2011-06-20 Daniel Krugler <daniel.kruegler@googlemail.com>
3207 Paolo Carlini <paolo.carlini@oracle.com>
3209 * include/std/tuple (__conv_types, __one_by_one_convertible,
3210 __all_convertible): Add.
3211 (tuple): Use the latter.
3212 (tuple<_T1>): Remove.
3213 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error
3215 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3217 2011-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
3219 * include/bits/ptr_traits.h (pointer_traits<T*>::pointer_to): Use
3222 2011-06-14 Paolo Carlini <paolo.carlini@oracle.com>
3224 * include/std/valarray (~valarray): Use noexcept.
3225 * include/bits/unique_ptr.h (~unique_ptr): Likewise.
3226 * testsuite/26_numerics/valarray/noexcept_move_construct.cc: New.
3227 * testsuite/20_util/shared_ptr/cons/noexcept_move_construct.cc:
3229 * testsuite/20_util/unique_ptr/cons/noexcept_move_construct.cc:
3231 * testsuite/20_util/weak_ptr/cons/noexcept_move_construct.cc:
3234 2011-06-14 Paolo Carlini <paolo.carlini@oracle.com>
3236 * include/std/functional: Use noexcept.
3237 * include/bits/stl_tempbuf.h: Likewise.
3239 2011-06-12 François Dumont <francois.cppdevs@free.fr>
3240 Paolo Carlini <paolo.carlini@oracle.com>
3242 * include/bits/allocator.h (__shrink_to_fit): Rename to
3243 __shrink_to_fit_aux, fix.
3244 * include/bits/stl_vector.h (_M_shrink_to_fit): Declare.
3245 (shrink_to_fit): Use the latter.
3246 * include/debug/vector (shrink_to_fit): Likewise.
3247 * include/bits/vector.tcc (_M_shrink_to_fit): Define.
3248 * include/bits/stl_deque.h (_M_shrink_to_fit): Declare.
3249 (shrink_to_fit): Use the latter.
3250 * include/debug/deque (shrink_to_fit): Likewise.
3251 * include/bits/deque.tcc (_M_shrink_to_fit): Define.
3252 * include/bits/vector.tcc (vector<bool>::_M_reallocate): Add.
3253 * include/bits/stl_bvector.h (_M_shrink_to_fit): Declare.
3254 (shrink_to_fit): Use the latter.
3255 (reserve): Use _M_reallocate, move inline.
3256 (_Bvector_base<>::_S_nword): Add, use it throughout.
3257 * include/debug/string (shrink_to_fit): Redo.
3258 * include/ext/vstring.h (shrink_to_fit): Optimize.
3259 * include/bits/basic_string.h (shrink_to_fit): Likewise.
3260 * testsuite/21_strings/debug/shrink_to_fit.cc: New.
3261 * testsuite/23_containers/vector/debug/shrink_to_fit.cc: Likewise.
3262 * testsuite/23_containers/vector/debug/bool/shrink_to_fit.cc:
3264 * testsuite/23_containers/vector/bool/capacity/shrink_to_fit.cc:
3266 * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
3268 2011-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
3270 * include/ext/extptr_allocator.h (construct, destroy): Fix for C++0x
3271 mode by overloading to take allocator's pointer type.
3272 * testsuite/23_containers/vector/ext_pointer/types/2.cc: New.
3273 * testsuite/23_containers/vector/ext_pointer/explicit_instantiation/
3276 2011-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
3278 * testsuite/20_util/allocator_traits/requirements/
3279 explicit_instantiation.cc: Add another instantiation.
3281 2011-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
3283 * testsuite/20_util/allocator_traits/requirements/typedefs.cc: Check
3284 for allocator_type and value_type.
3286 2011-06-11 Jonathan Wakely <jwakely.gcc@gmail.com>
3288 * testsuite/30_threads/packaged_task/uses_allocator.cc: New.
3289 * testsuite/30_threads/promise/uses_allocator.cc: Likewise.
3291 2011-06-10 Paolo Carlini <paolo.carlini@oracle.com>
3293 * include/ext/throw_allocator.h: Use noexcept.
3294 * include/ext/pool_allocator.h: Likewise.
3295 * include/ext/bitmap_allocator.h: Likewise.
3296 * include/ext/new_allocator.h: Likewise.
3297 * include/ext/malloc_allocator.h: Likewise.
3298 * include/ext/array_allocator.h: Likewise.
3299 * include/ext/mt_allocator.h: Likewise.
3300 * include/ext/extptr_allocator.h: Likewise.
3301 * testsuite/util/testsuite_allocator.h: Likewise; do not include
3302 <cassert> directly, include <testsuite_hooks.h> instead.
3304 2011-06-10 Benjamin Kosnik <bkoz@redhat.com>
3306 * include/ext/pb_ds/*: Doxygen markup redo.
3307 * include/Makefile.am: Fold in constructors_destructor_fn_imps.hpp.
3308 * include/Makefile.in: Regenerate.
3310 2011-06-10 Jason Merrill <jason@redhat.com>
3312 * testsuite/20_util/bind/ref_neg.cc: Remove wrong test lines.
3314 * testsuite/20_util/bind/ref_neg.cc: Remove dg-excess-errors,
3315 fix dg-error markup.
3317 2011-06-09 Jason Merrill <jason@redhat.com>
3319 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust.
3321 * testsuite/lib/prune.exp (libstdc++-dg-prune): Prune notes.
3322 * testsuite/20_util/duration/cons/1_neg.cc: Remove dg-excess-errors.
3323 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
3324 * testsuite/20_util/forward/1_neg.cc: Likewise.
3325 * testsuite/20_util/function/cmp/cmp_neg.cc: Likewise.
3326 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3327 * testsuite/20_util/reference_wrapper/ref_neg.cc: Likewise.
3328 * testsuite/20_util/tuple/comparison_operators/35480_neg.cc: Likewise.
3329 * testsuite/tr1/6_containers/tuple/comparison_operators/35480_neg.cc:
3331 * testsuite/20_util/shared_ptr/assign/auto_ptr_neg.cc: Likewise.
3332 * testsuite/20_util/shared_ptr/cons/unique_ptr_neg.cc: Likewise.
3333 * testsuite/20_util/shared_ptr/assign/unique_ptr_lvalue_neg.cc:
3335 * testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
3336 * testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Likewise.
3337 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
3339 * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3340 auto_ptr_rvalue_neg.cc: Likewise.
3341 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
3343 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
3344 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
3346 * testsuite/23_containers/deque/requirements/dr438/
3347 constructor_1_neg.cc: Likewise.
3348 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
3350 * testsuite/23_containers/forward_list/requirements/dr438/
3351 assign_neg.cc: Likewise.
3352 * testsuite/23_containers/forward_list/requirements/dr438/
3353 constructor_1_neg.cc: Likewise.
3354 * testsuite/23_containers/forward_list/requirements/dr438/
3355 constructor_2_neg.cc: Likewise.
3356 * testsuite/23_containers/forward_list/requirements/dr438/
3357 insert_neg.cc: Likewise.
3358 * testsuite/23_containers/list/requirements/dr438/
3359 assign_neg.cc: Likewise.
3360 * testsuite/23_containers/list/requirements/dr438/
3361 constructor_1_neg.cc: Likewise.
3362 * testsuite/23_containers/list/requirements/dr438/
3363 constructor_2_neg.cc: Likewise.
3364 * testsuite/23_containers/list/requirements/dr438/
3365 insert_neg.cc: Likewise.
3366 * testsuite/23_containers/vector/requirements/dr438/
3367 assign_neg.cc: Likewise.
3368 * testsuite/23_containers/vector/requirements/dr438/
3369 constructor_1_neg.cc: Likewise.
3370 * testsuite/23_containers/vector/requirements/dr438/
3371 constructor_2_neg.cc: Likewise.
3372 * testsuite/23_containers/vector/requirements/dr438/
3373 insert_neg.cc: Likewise.
3374 * testsuite/23_containers/map/operators/1_neg.cc: Likewise.
3375 * testsuite/29_atomics/atomic_integral/operators/
3376 bitwise_neg.cc: Likewise.
3377 * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
3378 * testsuite/decimal/mixed-mode-cmp_neg.cc: Likewise.
3379 * testsuite/decimal/operator_neg.cc: Likewise.
3381 2011-06-09 Simon Baldwin <simonb@google.com>
3383 * scripts/extract_symvers.in: Handle processor/OS specific or
3384 unknown symbol binding strings from readelf.
3386 2011-06-09 Paolo Carlini <paolo.carlini@oracle.com>
3388 * include/std/type_traits (__is_copy_assignable_impl,
3389 __is_nt_copy_assignable_impl): Fix typo.
3391 2011-06-08 Paolo Carlini <paolo.carlini@oracle.com>
3393 * include/ext/extptr_allocator.h: Include <ext/numeric_traits.h>
3394 instead of <limits>.
3395 * include/bits/allocator.h: Likewise.
3397 * include/std/chrono (duration_values<>::min): Call lowest, not min.
3399 2011-06-08 Paolo Carlini <paolo.carlini@oracle.com>
3401 * include/bits/allocator.h (__shrink_to_fit): Simplify.
3402 * include/bits/stl_vector.h (vector<>::shrink_to_fit): Adjust.
3403 * include/bits/stl_deque.h: Likewise.
3404 * include/bits/stl_bvector.h: Likewise.
3406 2011-06-07 Jason Merrill <jason@redhat.com>
3408 * testsuite/lib/prune.exp: s/required/instantiated/.
3409 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3410 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Likewise.
3411 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
3412 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
3413 * testsuite/20_util/forward/1_neg.cc: Likewise.
3414 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
3415 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3417 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3418 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
3419 * testsuite/20_util/shared_ptr/assign/shared_ptr_neg.cc: Likewise.
3420 * testsuite/ext/ext_pointer/1_neg.cc: Likewise.
3421 * testsuite/ext/pb_ds/example/hash_resize_neg.cc: Likewise.
3422 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
3423 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
3424 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
3425 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
3426 * testsuite/tr1/2_general_utilities/shared_ptr/assign/
3427 shared_ptr_neg.cc: Likewise.
3429 2011-06-07 Paolo Carlini <paolo.carlini@oracle.com>
3431 * include/bits/move.h (struct __move_if_noexcept_cond): Add.
3432 (move_if_noexcept): Use the latter.
3433 * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
3434 _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
3435 * include/bits/stl_uninitialized.h
3436 (__uninitialized_move_if_noexcept_a): Add.
3437 * include/bits/vector.tcc (vector<>::reserve): Use
3438 _GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
3439 (vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
3440 _M_range_insert): Use __uninitialized_move_if_noexcept_a.
3441 * testsuite/util/testsuite_rvalref.h (throwing_move_constructor):
3443 (copycounter::copycounter(copycounter&&)): Use noexcept.
3444 * testsuite/23_containers/vector/modifiers/moveable2.cc: New.
3445 * testsuite/23_containers/vector/capacity/resize/moveable2.cc:
3447 * testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
3450 2011-06-07 Paolo Carlini <paolo.carlini@oracle.com>
3453 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc: Tweak
3455 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc: Likewise.
3457 2011-06-06 Paolo Carlini <paolo.carlini@oracle.com>
3459 * include/bits/move.h (move_if_noexcept): Use __and_ and __not_.
3461 2011-06-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3463 * include/bits/ptr_traits.h (pointer_traits): Fix typos.
3464 * include/ext/pointer.h (pointer_traits): Add partial specialization
3465 for _Pointer_adapter.
3467 2011-06-04 Jonathan Wakely <jwakely.gcc@gmail.com>
3469 * testsuite/util/testsuite_allocator.h (tracker_allocator::construct):
3470 Update to C++0x definition using type to construct as template
3472 (tracker_allocator::destroy): Likewise for type to destroy.
3473 (uneq_allocator::construct, uneq_allocator::destroy): Likewise.
3475 2011-06-01 Paolo Carlini <paolo.carlini@oracle.com>
3477 * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)):
3478 Use std::move on the allocator, use noexcept.
3479 (_Hashtable<>::~_Hashtable): Use noexcept.
3480 * include/bits/stl_list.h: Likewise.
3481 * include/bits/forward_list.h: Likewise.
3482 * include/bits/stl_vector.h: Likewise.
3483 * include/bits/stl_bvector.h: Likewise.
3484 * include/bits/stl_map.h (map<>::map(map&&)): Use noexcept.
3485 * include/bits/stl_set.h: Likewise.
3486 * include/bits/stl_multimap.h: Likewise.
3487 * include/bits/stl_multiset.h: Likewise.
3488 * include/bits/stl_tree.h (_Rb_tree<>::_Rb_tree(_Rb_tree&&)): Use
3489 std::move on the allocator.
3490 (_Rb_tree<>::~_Rb_tree): Use noexcept.
3491 * include/bits/stl_deque.h: Likewise.
3492 * include/bits/basic_string.h (basic_string<>::~basic_string): Use
3494 * include/ext/vstring.h (__versa_string<>::~__versa_string): Likewise.
3495 * include/debug/set.h: Adjust.
3496 * include/debug/unordered_map: Likewise.
3497 * include/debug/multiset.h: Likewise.
3498 * include/debug/forward_list: Likewise.
3499 * include/debug/vector: Likewise.
3500 * include/debug/unordered_set: Likewise.
3501 * include/debug/deque: Likewise.
3502 * include/debug/map.h: Likewise.
3503 * include/debug/string: Likewise.
3504 * include/debug/list: Likewise.
3505 * include/debug/multimap.h: Likewise.
3506 * include/profile/set.h: Likewise.
3507 * include/profile/unordered_map: Likewise.
3508 * include/profile/multiset.h: Likewise.
3509 * include/profile/forward_list: Likewise.
3510 * include/profile/unordered_set: Likewise.
3511 * include/profile/vector: Likewise.
3512 * include/profile/deque: Likewise.
3513 * include/profile/map.h: Likewise.
3514 * include/profile/list: Likewise.
3515 * include/profile/multimap.h: Likewise.
3516 * testsuite/21_strings/basic_string/cons/wchar_t/
3517 noexcept_move_construct.cc: New.
3518 * testsuite/21_strings/basic_string/cons/char/
3519 noexcept_move_construct.cc: Likewise.
3520 * testsuite/ext/vstring/cons/noexcept_move_construct.cc: Likewise.
3521 * testsuite/23_containers/unordered_map/cons/
3522 noexcept_move_construct.cc: Likewise.
3523 * testsuite/23_containers/multimap/cons/
3524 noexcept_move_construct.cc: Likewise.
3525 * testsuite/23_containers/set/cons/
3526 noexcept_move_construct.cc: Likewise.
3527 * testsuite/23_containers/unordered_multimap/cons/
3528 noexcept_move_construct.cc: Likewise.
3529 * testsuite/23_containers/forward_list/cons/
3530 noexcept_move_construct.cc: Likewise.
3531 * testsuite/23_containers/unordered_set/cons/
3532 noexcept_move_construct.cc: Likewise.
3533 * testsuite/23_containers/vector/bool/cons/
3534 noexcept_move_construct.cc: Likewise.
3535 * testsuite/23_containers/vector/cons/
3536 noexcept_move_construct.cc: Likewise.
3537 * testsuite/23_containers/multiset/cons/
3538 noexcept_move_construct.cc: Likewise.
3539 * testsuite/23_containers/list/cons/
3540 noexcept_move_construct.cc: Likewise.
3541 * testsuite/23_containers/unordered_multiset/cons/
3542 noexcept_move_construct.cc: Likewise.
3543 * testsuite/23_containers/map/cons/noexcept_move_construct.cc
3544 * testsuite/23_containers/forward_list/requirements/dr438/
3545 assign_neg.cc: Adjust dg-error line numbers.
3546 * testsuite/23_containers/forward_list/requirements/dr438/
3547 insert_neg.cc: Likewise.
3548 * testsuite/23_containers/forward_list/requirements/dr438/
3549 constructor_1_neg.cc: Likewise.
3550 * testsuite/23_containers/forward_list/requirements/dr438/
3551 constructor_2_neg.cc: Likewise.
3552 * testsuite/23_containers/vector/requirements/dr438/
3553 assign_neg.cc: Likewise.
3554 * testsuite/23_containers/vector/requirements/dr438/
3555 insert_neg.cc: Likewise.
3556 * testsuite/23_containers/vector/requirements/dr438/
3557 constructor_1_neg.cc: Likewise.
3558 * testsuite/23_containers/vector/requirements/dr438/
3559 constructor_2_neg.cc: Likewise.
3560 * testsuite/23_containers/deque/requirements/dr438/
3561 assign_neg.cc: Likewise.
3562 * testsuite/23_containers/deque/requirements/dr438/
3563 insert_neg.cc: Likewise.
3564 * testsuite/23_containers/deque/requirements/dr438/
3565 constructor_1_neg.cc: Likewise.
3566 * testsuite/23_containers/deque/requirements/dr438/
3567 constructor_2_neg.cc: Likewise.
3568 * testsuite/23_containers/list/requirements/dr438/
3569 assign_neg.cc: Likewise.
3570 * testsuite/23_containers/list/requirements/dr438/
3571 insert_neg.cc: Likewise.
3572 * testsuite/23_containers/list/requirements/dr438/
3573 constructor_1_neg.cc: Likewise.
3574 * testsuite/23_containers/list/requirements/dr438/
3575 constructor_2_neg.cc: Likewise.
3577 * include/bits/move.h (swap): Use __and_ in the noexcept.
3578 * include/bits/algorithmfwd.h: Adjust.
3580 2011-05-31 Paolo Carlini <paolo.carlini@oracle.com>
3582 * include/bits/basic_string.h: Use noexcept per the FDIS (minus
3583 compare(const string&), which uses char_traits::compare, which
3584 isn't noexcept; also no noexcept in the move assignment operator
3585 and move assign, see c++std-lib-30855).
3586 * include/bits/basic_string.tcc: Likewise.
3587 * include/ext/vstring.h: Likewise.
3588 * include/ext/vstring.tcc: Likewise.
3589 * include/debug/string: Likewise.
3591 2011-05-31 Jonathan Wakely <jwakely.gcc@gmail.com>
3593 * doc/xml/manual/status_cxx200x.xml: Update.
3594 * doc/html/*: Regenerate.
3596 2011-05-30 Paolo Carlini <paolo.carlini@oracle.com>
3598 * include/std/type_traits (__or_, __and_): Add trivial definitions
3599 for a single element.
3600 * include/bits/stl_pair.h: Use __and_ in noexcept specs and
3602 (pair<>::pair(pair&&)): Define.
3603 (pair<>::pair(const pair<>&)): Constrain with is_convertible.
3604 (pair<>::pair(pair<>&&)): Likewise, remove noexcept.
3605 * include/std/tuple: Use __and_ in noexcept specs and constraints.
3606 (_Tuple_impl<>::_Tuple_impl(allocator_arg_t, const _Alloc&,
3607 _Tuple_impl&&)): Remove noexcept.
3608 (tuple<>::tuple(_UElements&&...), tuple(const tuple<_UElements...>&),
3609 tuple(tuple<_UElements...>&&), tuple(const pair<_U1, _U2>&),
3610 tuple(pair<_U1, _U2>&&)): Constrain with is_convertible.
3611 * testsuite/20_util/tuple/moveable2.cc: Use = delete.
3612 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
3613 Adjust dg-error line numbers.
3614 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
3616 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
3617 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Likewise.
3618 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.
3620 2011-05-31 Jonathan Wakely <jwakely.gcc@gmail.com>
3622 * include/std/tuple: Restore is_convertible constraint.
3623 * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: Remove.
3625 2011-05-30 Paolo Carlini <paolo.carlini@oracle.com>
3628 * testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-warning
3631 2011-05-30 Jonathan Wakely <jwakely.gcc@gmail.com>
3633 * include/std/tuple: Implement uses-allocator construction.
3634 * include/bits/allocator.h (uses_allocator): Move to ...
3635 * include/bits/uses_allocator.h: New file.
3636 * include/Makefile.am: Add new header.
3637 * include/Makefile.in: Regenerate.
3638 * testsuite/20_util/uses_allocator/cons_neg.cc: New.
3639 * testsuite/20_util/uses_allocator/construction.cc: New.
3640 * testsuite/20_util/tuple/cons/allocate_noncopyable.cc: New.
3641 * testsuite/20_util/tuple/cons/allocators.cc: New.
3643 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
3645 * testsuite/20_util/pointer_traits/pointer_to.cc: Fix.
3647 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
3649 * acinclude.m4: Define GLIBCXX_CHECK_GET_NPROCS and
3650 GLIBCXX_CHECK_SC_NPROCESSORS_ONLN.
3651 * configure.ac: Use them. Increase minor version.
3652 * configure: Regenerate.
3653 * config.h.in: Regenerate.
3654 * include/std/thread (thread::hardware_concurrency): Remove inline
3656 * src/thread.cc (thread::hardware_concurrency): Define.
3657 * config/abi/pre/gnu.ver: Export new symbol @3.4.17
3658 * testsuite/util/testsuite_abi.cc: Add new version.
3659 * testsuite/lib/libstdc++.exp (check_v3_target_nprocs): Add.
3660 * testsuite/lib/dg-options.exp (dg-require-nprocs): Add.
3661 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Use
3662 dg-require-nprocs and verify hardware_concurrency returns non-zero.
3664 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
3666 * testsuite/20_util/pointer_traits/pointer_to.cc: New.
3668 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
3670 * include/Makefile.am: Add new ptr_traits.h header.
3671 * include/Makefile.in: Regenerate.
3672 * include/bits/ptr_traits.h (pointer_traits): New.
3673 * include/bits/allocator.h (allocator_traits): Add.
3674 * include/ext/array_allocator.h (construct, destroy): Update C++0x
3676 * include/ext/bitmap_allocator.h (construct, destroy): Likewise.
3677 * include/ext/extptr_allocator.h (construct, destroy): Likewise.
3678 * include/ext/malloc_allocator.h (construct, destroy): Likewise.
3679 * include/ext/mt_allocator.h (construct, destroy): Likewise.
3680 * include/ext/new_allocator.h (construct, destroy): Likewise.
3681 * include/ext/pool_allocator.h (construct, destroy): Likewise.
3682 * include/ext/throw_allocator.h (construct, destroy): Likewise.
3683 * testsuite/20_util/allocator_traits/requirements/typedefs.cc: New.
3684 * testsuite/20_util/allocator_traits/requirements/
3685 explicit_instantiation.cc: New.
3686 * testsuite/20_util/allocator_traits/members/max_size.cc: New.
3687 * testsuite/20_util/allocator_traits/members/select.cc: New.
3688 * testsuite/20_util/allocator_traits/members/construct.cc: New.
3689 * testsuite/20_util/allocator_traits/members/allocate_hint.cc: New.
3690 * testsuite/20_util/allocator_traits/members/destroy.cc: New.
3691 * testsuite/20_util/pointer_traits/requirements/typedefs.cc: New.
3692 * testsuite/20_util/pointer_traits/requirements/
3693 explicit_instantiation.cc: New.
3695 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
3697 * include/std/future (launch): Update enumerators and define
3698 operators required for bitmask type. Remove trailing whitespace.
3699 * src/future.cc: Remove trailing whitespace.
3700 * testsuite/30_threads/async/any.cc: Adjust.
3701 * testsuite/30_threads/async/sync.cc: Adjust.
3702 * testsuite/30_threads/async/launch.cc: New.
3704 2011-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
3706 * include/std/future: Use noexcept.
3707 * src/future.cc: Likewise.
3709 2011-05-27 Jonathan Wakely <jwakely.gcc@gmail.com>
3711 * include/std/thread (this_thread::sleep_until): Move after sleep_for.