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