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