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