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