cxx11.cc: Include <memory>.
[gcc.git] / libstdc++-v3 / ChangeLog
1 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
2
3 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
4
5 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
6
7 * include/Makefile.am: Add ext/aligned_buffer.h
8 * include/Makefile.in: Regenerate.
9 * include/ext/aligned_buffer.h: New.
10 * include/std/future (_Result): Use __aligned_buffer.
11 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
12 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
13 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
14 number.
15
16 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
17
18 * include/bits/forward_list.h: Only include required headers.
19 (forward_list::reference): Define directly, not using __alloc_traits.
20 (forward_list::const_reference): Likewise.
21
22 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
23
24 * include/std/functional (_Derives_from_unary_function): Remove.
25 (_Derives_from_binary_function): Remove.
26 * include/std/type_traits (__sfinae_types): Remove.
27 (__is_assignable_helper): Adapt.
28 (__is_convertible_helper): Adapt.
29 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
30 Remove several explicit instantiations of integral_constant.
31 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
32 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
33 Adapt dg-error line number.
34 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
35 Likewise.
36 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
37 * testsuite/20_util/bind/ref_neg.cc: Likewise.
38
39 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
40
41 PR libstdc++/56841
42 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
43 get_terminate() accessors.
44 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
45 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
46 available.
47 * libsupc++/new_handler.cc: Likewise.
48
49 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
50
51 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
52
53 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
54
55 PR libstdc++/56834
56 * include/debug/array (tuple_size, tuple_element): Do not declare.
57 * include/profile/array: Likewise.
58 * testsuite/23_containers/array/tuple_interface/
59 tuple_element_debug_neg.cc: Adjust dg-error line number.
60
61 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
62
63 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
64 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
65 Define.
66 (set_terminate(terminate_handler)): Set atomically.
67 (set_unexpected(terminate_handler)): Likewise.
68 * libsupc++/new (get_new_handler()): Declare.
69 * libsupc++/new_handler.cc (get_new_handler()): Define.
70 (set_new_handler(new_handler)): Set atomically.
71 (__new_handler): Use internal linkage.
72 * libsupc++/new_op.cc (operator new): Use get_new_handler().
73 * libsupc++/new_opnt.cc (operator new): Likewise.
74 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
75 * configure: Regenerate.
76 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
77 * libsupc++/Makefile.in: Regenerate.
78 * config/abi/pre/gnu.ver: Add new exports.
79 * doc/xml/manual/status_cxx2011.xml: Update.
80 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
81 for handlers.
82 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
83 * testsuite/18_support/new_handler.cc: New.
84 * testsuite/18_support/terminate_handler.cc: New.
85 * testsuite/18_support/unexpected_handler.cc: New.
86
87 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
88
89 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
90 defer to general documentation on contributing to GCC.
91 * doc/html/*: Regenerate.
92
93 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
94
95 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
96
97 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
98 Coding Standards.
99
100 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
101
102 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
103
104 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
105
106 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
107
108 * doc/xml/manual/policy_data_structures: Remove direct link to
109 IBM Haifa Research Labs.
110
111 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
112 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
113 Remove direct link to IBM Haifa Research Labs.
114
115 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
116 papers.
117
118 * doc/xml/manual/shared_ptr.xml: Use canonical address for
119 www.boost.org.
120
121 2013-03-27 Kai Tietz <ktietz@redhat.com>
122
123 * crossconfig.m4: Add support for cygwin x64 target.
124 * configure: Regenerated.
125
126 2013-03-25 Kai Tietz <ktietz@redhat.com>
127
128 * testsuite/18_support/50594.cc: For mingw-targets use only static
129 libstdc++-version.
130 * testsuite/19_diagnostics/error_category/operators/equal.cc
131 * testsuite/19_diagnostics/error_code/cons/1.cc
132 * testsuite/19_diagnostics/error_code/operators/bool.cc
133 * testsuite/19_diagnostics/error_code/operators/equal.cc
134 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
135 * testsuite/19_diagnostics/error_condition/cons/1.cc
136 * testsuite/19_diagnostics/error_condition/operators/bool.cc
137 * testsuite/19_diagnostics/error_condition/operators/equal.cc
138 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
139 * testsuite/23_containers/set/requirements/exception/basic.cc
140 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
141 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
142
143 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
144
145 PR libstdc++/56170
146 * include/ext/debug_allocator.h (debug_allocator): Add missing members
147 to meet allocator requirements.
148 * testsuite/ext/debug_allocator/56170.cc: New.
149
150 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
151
152 PR libstdc++/56678
153 * include/std/chrono (__is_ratio): Uglify T.
154
155 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
156
157 PR libstdc++/55977 (partial, std::vector and std::deque bits)
158 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
159 _InputIterator, std::input_iterator_tag)): Use emplace_back.
160 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
161 _InputIterator, std::input_iterator_tag)): Likewise.
162 * testsuite/23_containers/vector/cons/55977.cc: New.
163 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
164 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
165 Adjust dg-error line number.
166 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
167 Likewise.
168
169 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
170
171 PR libstdc++/55979
172 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
173 _InputIterator, __false_type)): Use emplace_back.
174 * testsuite/23_containers/list/cons/55979.cc: New.
175 * testsuite/23_containers/list/modifiers/1.h: Adjust.
176 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
177 Adjust dg-error line number.
178
179 2013-03-16 Jason Merrill <jason@redhat.com>
180
181 PR c++/55017
182 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
183
184 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
185
186 PR libstdc++/56468
187 * libsupc++/exception_ptr.h (type_info): Declare.
188
189 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
190
191 PR libstdc++/56002
192 * include/std/mutex (lock_guard, unique_lock, lock): Define without
193 depending on _GLIBCXX_HAS_GTHREADS.
194 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
195
196 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
197
198 PR libstdc++/56492
199 * include/std/future (__future_base::_Result): Add result_type
200 typedef.
201 (__future_base::_S_allocate_result): Overload for std::allocator.
202 (__future_base::_Task_setter): Use _Result::result_type instead of
203 deducing the type from the task.
204 (__future_base::_Task_state): Store allocator to allow shared state
205 to be reset. Replace std::function with member of target object type
206 accessed via ...
207 (__future_base::_Task_state_base): New abstract base class.
208 (__future_base::_Task_state_base::_M_run): New virtual function to
209 invoke type-erased target object.
210 (__future_base::_Task_state_base::_M_reset): New virtual function to
211 create new shared_state using same target object and allocator.
212 (__future_base::__create_task_state): Allocate a new _Task_state.
213 (packaged_task::packaged_task): Use __create_task_state.
214 (packaged_task::reset): Use _Task_state_base::_M_reset.
215 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
216
217 2013-03-15 Tom Tromey <tromey@redhat.com>
218
219 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
220 (PROBE2): New macro.
221 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
222 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
223 * configure.ac: Check for sys/sdt.h.
224 * configure, config.h.in: Rebuild.
225
226 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
227
228 PR libstdc++/56613
229 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
230 allocator_traits instead of calling construct directly.
231 * testsuite/23_containers/map/56613.cc: New.
232
233 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
234
235 * doc/html/*: Regenerate.
236
237 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
238
239 PR libstdc++/56609
240 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
241 * testsuite/20_util/is_fundamental/value.cc: Extend.
242 * testsuite/20_util/is_compound/value.cc: Likewise.
243
244 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
245
246 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
247 -Wunused warnings.
248
249 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
250
251 * include/bits/memoryfwd.h: New. Centralize forward declarations.
252 * include/bits/algorithmfwd.h: Consistent comments.
253 * include/bits/localefwd.h: Same.
254 * include/ext/vstring_fwd.h: Same.
255 * include/parallel/algorithmfwd.h: Same.
256 * include/parallel/numericfwd.h: Same.
257 * include/std/iosfwd: Same.
258
259 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
260 forward decl.
261 * include/ext/alloc_traits.h: Remove allocator forward decl.
262 * include/bits/stl_construct.h: Same.
263 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
264 forward decl. Consistent comments.
265
266 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
267
268 * include/Makefile.am (bits_headers): Add memoryfwd.h.
269 * include/Makefile.in: Regenerate.
270 * configure: Same.
271
272 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
273
274 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
275 Reset pointers after deallocation when memory can be reused.
276 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
277 elements to really challenge C++11 allocator integration.
278 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
279 * testsuite/23_containers/vector/allocator/copy_assign.cc:
280 Likewise.
281 * testsuite/23_containers/vector/allocator/move_assign.cc:
282 Likewise.
283 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
284 swap vector back before checks on memory/personality mapping are
285 performed.
286 * testsuite/23_containers/forward_list/allocator/minimal.cc:
287 Insert element to really challenge C++11 allocator integration.
288 * testsuite/23_containers/forward_list/allocator/copy.cc:
289 Likewise.
290 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
291 Likewise.
292 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
293 Likewise.
294 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
295 and swap forward_list back before checks on memory/personality
296 mapping are performed.
297
298 2013-03-07 Jakub Jelinek <jakub@redhat.com>
299
300 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
301 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
302 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
303 Likewise.
304 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
305 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
306 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
307 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
308 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
309 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
310
311 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
312
313 * scripts/extract_symvers.pl: Omit symbols bound to base
314 versions.
315 * scripts/extract_symvers.in: Likewise.
316 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
317 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
318 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
319 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
320 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
321
322 2013-03-04 Ulrich Drepper <drepper@gmail.com>
323
324 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
325 Optimize generation function by pulling computation of __r into the
326 constructor for param_type. Also compare _M_mu in operator==.
327 Fix comment.
328
329 2013-03-02 Ulrich Drepper <drepper@gmail.com>
330
331 Add triangular and von Mises distributions.
332 * include/ext/random: Include <ext/cmath>.
333 Add __gnu_cxx::triangular_distribution<> and
334 __gnu_cxx::von_mises_distribution<> classes.
335 * include/ext/random.tcc: Add out-of-line functions for
336 __gnu_cxx::triangular_distribution<> and
337 __gnu_cxx::von_mises_distribution<>.
338 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
339 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
340 * testsuite/ext/triangular_distribution/operators/serialize.cc:
341 New file.
342 * testsuite/ext/triangular_distribution/operators/equal.cc:
343 New file.
344 * testsuite/ext/triangular_distribution/operators/inequal.cc:
345 New file.
346 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
347 New file.
348 * testsuite/ext/triangular_distribution/requirements/
349 explicit_instantiation/1.cc: New file.
350 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
351 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
352 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
353 New file.
354 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
355 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
356 New file.
357 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
358 New file.
359 * testsuite/ext/von_mises_distribution/requirements/
360 explicit_instantiation/1.cc: New file.
361
362 Add math constants.
363 * include/Makefile.am (ext_headers): Add cmath.
364 * include/Makefile.in: Regenerated.
365 * include/ext/cmath: New file.
366
367 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
368
369 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
370 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
371 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
372 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
373 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
374
375 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
376
377 PR libstdc++/56012
378 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
379 * testsuite/29_atomics/atomic/operators/56012.cc: New.
380
381 PR libstdc++/56011
382 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
383 missing overload.
384 * testsuite/29_atomics/atomic/operators/56011.cc: New.
385
386 2013-02-25 Jason Merrill <jason@redhat.com>
387
388 * configure.ac: Check for __cxa_thread_atexit_impl.
389 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
390 to it if available.
391 * config.h.in, configure: Regenerate.
392
393 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
394
395 * include/std/streambuf (basic_streambuf): Use injected class name
396 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
397 group.
398
399 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
400
401 * doc/html/faq.html: Fix spelling.
402 * doc/xml/faq.xml: Likewise.
403 * include/bits/basic_ios.h: Likewise.
404 * include/bits/regex.h: Likewise.
405 * include/std/istream: Likewise.
406 * include/std/streambuf: Likewise.
407
408 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
409
410 * testsuite/23_containers/unordered_set/55043.cc: Add missing
411 namespace qualification.
412 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
413
414 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
415
416 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
417 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
418 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
419 * include/bits/stl_pair.h: Add to utilities group.
420 * include/std/tuple: Same.
421 * include/std/typeindex: Same.
422
423 * include/bits/stringfwd.h: Fix markup.
424 * include/std/limits: Same.
425 * include/std/type_traits: Same.
426 * include/tr1/memory: Same.
427 * include/tr1/regex: Same.
428 * scripts/run_doxygen: Comment.
429 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
430
431 2013-02-14 Jason Merrill <jason@redhat.com>
432
433 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
434 test if unsupported.
435
436 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
437
438 PR libstdc++/56111
439 * include/std/complex (complex): Undefine.
440 * include/c_compatibility/complex.h (complex): Only undefine if
441 <complex> has been included.
442 * testsuite/26_numerics/complex/56111.cc: New testcase.
443
444 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
445
446 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
447 default constructor protected.
448 * include/bits/hashtable.h: static assert that _Hash_code_base has
449 a default constructor available through inheritance.
450
451 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
452
453 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
454 C++11 mode.
455
456 2013-02-12 Julian Brown <julian@codesourcery.com>
457
458 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
459 Don't expect dots after abbreviated weekday names for ru_RU for
460 glibc versions >= 2.17.
461 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
462 Likewise.
463
464 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
465
466 * include/bits/random.tcc (__transform): Remove.
467 (__normalize): Add.
468 (discrete_distribution<>::param_type::_M_initialize): Adjust.
469 (piecewise_constant_distribution<>::param_type::_M_initialize):
470 Likewise.
471 (piecewise_linear_distribution<>::param_type::_M_initialize):
472 Likewise.
473
474 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
475
476 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
477 Use -fimplicit-templates.
478 * src/c++11/Makefile.in: Regenerate.
479 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
480 std::lower_bound template.
481
482 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
483
484 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
485 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
486 in C++11 mode and if available in the underlying C library.
487 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
488 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
489 _GLIBCXX_HAVE_QUICK_EXIT.
490
491 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
492
493 * doc/html/*: Regenerate.
494
495 2013-02-11 Jason Merrill <jason@redhat.com>
496
497 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
498 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
499 * config.h.in, configure: Regenerate.
500 * include/c_std/cstdlib: Add atexit and at_quick_exit.
501 * include/c_global/cstdlib: Add atexit and at_quick_exit.
502 * testsuite/18_support/quick_exit/quick_exit.cc: New.
503
504 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
505
506 PR libstdc++/56282
507 Revert:
508 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
509
510 PR libstdc++/56193
511 * include/bits/basic_ios.h: Replace operator void*() const
512 with explicit operator bool() const in C++11 and greater.
513 * testsuite/27_io/basic_ios/pr56193.cc: New file.
514
515 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
516 Jonathan Wakely <jwakely.gcc@gmail.com>
517
518 * doc/xml/manual/containers.xml: Add section on unordered containers.
519 * doc/xml/manual/using.xml: Fix incomplete sentence.
520
521 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
522
523 PR libstdc++/56267
524 * include/bits/hashtable.h (__cache_default): Check if hash function
525 is copy assignable.
526 * testsuite/23_containers/unordered_set/56267.cc: New.
527 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
528 dg-error line number.
529 * testsuite/23_containers/unordered_set/
530 not_default_constructible_hash_neg.cc: Likewise.
531
532 PR libstdc++/56278
533 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
534 constructor public.
535 * testsuite/23_containers/unordered_set/56278.cc: New.
536
537 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
538
539 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
540 simplification.
541
542 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
543
544 PR libstdc++/56216
545 * include/tr1/special_function_util.h: Remove spurious const
546 from numeric arguments.
547 * include/tr1/riemann_zeta.tcc: Likewise.
548 * include/tr1/exp_integral.tcc: Likewise.
549 * include/tr1/bessel_function.tcc: Likewise.
550 * include/tr1/hypergeometric.tcc: Likewise.
551 * include/tr1/modified_bessel_func.tcc: Likewise.
552 * include/tr1/poly_laguerre.tcc: Likewise.
553 * include/tr1/gamma.tcc: Likewise.
554 * include/tr1/legendre_function.tcc: Likewise.
555 * include/tr1/poly_hermite.tcc: Likewise.
556 * include/tr1/ell_integral.tcc: Likewise.
557 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
558 If argument is zero return function value.
559 * testsuite/tr1/5_numerical_facilities/special_functions/
560 08_cyl_bessel_i/pr56216.cc: New.
561
562 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
563
564 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
565
566 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
567
568 PR libstdc++/56193
569 * include/bits/basic_ios.h: Replace operator void*() const
570 with explicit operator bool() const in C++11 and greater.
571 * testsuite/27_io/basic_ios/pr56193.cc: New file.
572
573 2013-02-04 Dodji Seketeli <dodji@redhat.com>
574
575 Add missing explicit instantiation for std::lower_bound template
576 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
577 missing instantiation for std::lower_bound template.
578
579 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
580
581 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
582 * include/bits/basic_string.h: Specialize previous to mark
583 std::hash for string types as slow.
584 * include/bits/hashtable.h (__cache_default): Replace is_integral
585 with __is_fast_hash.
586 * src/c++11/hash_c++0x.cc: Add type_traits include.
587 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
588 Adapt dg-error line number.
589 * testsuite/23_containers/unordered_set/
590 not_default_constructible_hash_neg.cc: Likewise.
591
592 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
593 Paolo Carlini <paolo.carlini@oracle.com>
594
595 PR libstdc++/56202 (again)
596 * include/bits/random.tcc (binomial_distribution<>::
597 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
598 in previous commit.
599
600 * include/bits/random.h: Fix comment typo.
601
602 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
603 Paolo Carlini <paolo.carlini@oracle.com>
604
605 PR libstdc++/56202
606 * include/bits/random.tcc (binomial_distribution<>::
607 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
608 division by zero.
609
610 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
611
612 Update copyright years.
613 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
614 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
615 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
616 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
617 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
618 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
619 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
620 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
621 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
622 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
623 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
624 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
625 testsuite/29_atomics/atomic/cons/assign_neg.cc,
626 testsuite/29_atomics/atomic/cons/copy_neg.cc,
627 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
628 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
629 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
630 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
631 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
632 Update lines in dg error matches.
633
634 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
635
636 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
637
638 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
639
640 * include/bits/hashtable_policy.h
641 (_Prime_rehash_policy::_M_next_bkt)
642 (_Prime_rehash_policy::_M_need_rehash): Move definition...
643 * src/c++11/hashtable_c++0x.cc: ... here.
644 * src/shared/hashtable-aux.cc: Remove c++config.h include.
645 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
646 symbols.
647
648 2013-01-29 Jason Merrill <jason@redhat.com>
649
650 PR libstdc++/54314
651 * config/abi/pre/gnu.ver: Don't export construction vtables.
652 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
653
654 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
655
656 PR libstdc++/56112
657 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
658 to construct value_type explicitly before trying to extract the key.
659 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
660
661 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
662
663 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
664 _Hashtable_ebo_helper to embed functors into the local_iterator
665 when necessary. Pass information about functors involved in hash
666 code by copy.
667 * include/bits/hashtable.h (__cache_default): Do not cache for
668 builtin integral types unless the hash functor is not noexcept
669 qualified or is not default constructible. Adapt static assertions
670 and local iterator instantiations.
671 * include/debug/unordered_set
672 (std::__debug::unordered_set<>::erase): Detect local iterators to
673 invalidate using contained node rather than generating a dummy
674 local_iterator instance.
675 (std::__debug::unordered_multiset<>::erase): Likewise.
676 * include/debug/unordered_map
677 (std::__debug::unordered_map<>::erase): Likewise.
678 (std::__debug::unordered_multimap<>::erase): Likewise.
679 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
680 std::tr1 and std versions of unordered_set regardless of any
681 macro. Add test on default cache behavior.
682 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
683 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
684 Adapt line number.
685 * testsuite/23_containers/unordered_set/
686 not_default_constructible_hash_neg.cc: New.
687 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
688
689 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
690
691 PR libstdc++/56085
692 * include/std/complex (pow(const complex<>&, int)): Avoid __n
693 signed overflow.
694
695 2013-01-22 Jakub Jelinek <jakub@redhat.com>
696
697 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
698 Tightten scan-assembler-times regexps, add dg-additional-options for
699 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
700 dg-options.
701
702 2013-01-12 Andi Kleen <ak@linux.intel.com>
703 Jonathan Wakely <jwakely.gcc@gmail.com>
704
705 PR libstdc++/55233
706 * include/bits/atomic_base.h (__memory_order_modifier): Add
707 __memory_order_mask, __memory_order_modifier_mask,
708 __memory_order_hle_acquire, __memory_order_hle_release.
709 (operator|,operator&): Add.
710 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
711 (__cmpexch_failure_order): Add.
712 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
713 Handle flags.
714 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
715 Add.
716
717 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
718
719 PR libstdc++/55861
720 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
721 Fix return type.
722 (__basic_future::_M_get_result()): Const qualify.
723 (shared_future::get()): Likewise.
724 * testsuite/30_threads/shared_future/members/get.cc: Use const
725 objects.
726
727 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
728
729 PR libstdc++/55043 (again)
730 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
731 unless construction would be well-formed.
732 (__allow_copy_cons, __check_copy_constructible): Define.
733 * include/bits/unordered_map.h (__check_copy_constructible): Use as
734 base class so copy constructor will be deleted if appropriate.
735 (is_copy_constructible): Remove specialization.
736 * include/bits/unordered_set.h: Likewise.
737 * include/debug/unordered_map.h: Undo previous commit. Default copy
738 and move constructors.
739 * include/debug/unordered_set.h: Likewise.
740 * include/profile/unordered_map.h: Undo previous commit.
741 * include/profile/unordered_set.h: Likewise.
742 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
743 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
744 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
745 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
746 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
747 cannot support incomplete types.
748 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
749 Likewise.
750
751 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
752
753 PR libstdc++/55043
754 * include/std/unordered_map: Include alloc_traits.h
755 * include/std/unordered_set: Likewise.
756 * include/bits/alloc_traits.h: Define __is_copy_insertable.
757 * include/bits/unordered_map.h: Use it.
758 * include/bits/unordered_set.h: Likewise.
759 * include/debug/unordered_map.h: Likewise.
760 * include/debug/unordered_set.h: Likewise.
761 * include/profile/unordered_map.h: Likewise.
762 * include/profile/unordered_set.h: Likewise.
763 * include/bits/hashtable.h: Fix comment typos.
764 * testsuite/23_containers/unordered_map/55043.cc: New.
765 * testsuite/23_containers/unordered_multimap/55043.cc: New.
766 * testsuite/23_containers/unordered_multiset/55043.cc: New.
767 * testsuite/23_containers/unordered_set/55043.cc: New.
768
769 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
770
771 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
772 gdb command.
773
774 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
775
776 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
777
778 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
779
780 PR libstdc++/55908
781 * include/std/functional (_Mem_fn::operator()): Fix constraints to
782 avoid ambiguity.
783 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
784 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
785
786 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
787
788 PR libstdc++/55594
789 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
790 Solaris targets.
791 * configure: Regenerate.
792
793 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
794
795 PR libstdc++/55847
796 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
797 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
798 string.
799
800 PR libstdc++/55728
801 * include/std/functional (bad_function_call::what()): Declare.
802 * src/c++11/functional.cc (bad_function_call::what()): Define.
803 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
804 * testsuite/20_util/bad_function_call/what.cc: New.
805
806 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
807
808 * include/bits/unordered_map.h: Fix typo in comments.
809 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
810 counts for unordered associative containers.
811
812 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
813
814 * doc/xml/manual/abi.xml: Update library and symbol versions.
815
816 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
817
818 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
819 in copyright years.
820 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
821
822 \f
823 Copyright (C) 2013 Free Software Foundation, Inc.
824
825 Copying and distribution of this file, with or without modification,
826 are permitted in any medium without royalty provided the copyright
827 notice and this notice are preserved.