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