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