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