1 2012-11-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3 * include/bits/stl_vector.h (vector(size_type)): Add missing allocator
5 * include/bits/stl_bvector.h: Likewise.
6 * include/debug/vector (vector(size_type)): Likewise.
7 * include/profile/vector (vector(size_type)): Likewise. Pass allocator
9 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
10 Adjust dg-error line numbers.
11 * testsuite/23_containers/vector/requirements/dr438/
12 constructor_1_neg.cc: Likewise.
13 * testsuite/23_containers/vector/requirements/dr438/
14 constructor_2_neg.cc: Likewise.
15 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
18 2012-11-06 Paolo Carlini <paolo.carlini@oracle.com>
21 * include/debug/array: New, debug-mode implementation.
22 * include/profile/array: New.
23 * include/std/array: Adjust.
24 * include/std/tuple: Just include <array>.
25 * include/Makefile.am: Add.
26 * include/Makefile.in: Regenerate.
27 * testsuite/23_containers/array/debug/front1_neg.cc: New.
28 * testsuite/23_containers/array/debug/
29 square_brackets_operator1_neg.cc: Likewise.
30 * testsuite/23_containers/array/debug/front2_neg.cc: Likewise.
31 * testsuite/23_containers/array/debug/
32 square_brackets_operator2_neg.cc: Likewise.
33 * testsuite/23_containers/array/debug/back1_neg.cc: Likewise.
34 * testsuite/23_containers/array/debug/back2_neg.cc: Likewise.
35 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Tweak
36 to run only in normal-mode.
37 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
39 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: New.
40 * testsuite/23_containers/array/tuple_interface/
41 tuple_element_debug_neg.cc: Likewise.
43 2012-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
45 * testsuite/20_util/shared_ptr/cons/55123.cc: Remove duplicate
48 2012-11-06 Paolo Carlini <paolo.carlini@oracle.com>
50 * include/bits/atomic_base.h: Don't include <cstddef>, use nullptr.
51 * include/std/atomic: Likewise.
52 * include/tr2/dynamic_bitset: Likewise.
54 * libsupc++/vec.cc (compute_size(std::size_t, std::size_t,
55 std::size_t)): Fix for -fno-exceptions.
57 2012-11-06 Jonathan Wakely <jwakely.gcc@gmail.com>
59 * include/profile/map.h (map::emplace_hint): Add missing return.
61 2012-11-05 Jonathan Wakely <jwakely.gcc@gmail.com>
63 * include/profile/deque: Constrain InputIterator parameters.
64 * include/profile/forward_list: Likewise.
65 * include/profile/list: Likewise.
66 * include/profile/map.h: Likewise.
67 * include/profile/multimap.h: Likewise.
68 * include/profile/set.h: Likewise.
69 * include/profile/multiset.h: Likewise.
70 * include/profile/vector: Likewise.
72 2012-11-05 Jonathan Wakely <jwakely.gcc@gmail.com>
74 * include/profile/forward_list: Update to meet allocator-aware
76 * include/debug/forward_list: Likewise.
77 * include/debug/vector: Verify allocators are swapped or equal.
78 * include/debug/macros.h (__glibcxx_check_equal_allocs): Define.
79 * include/debug/formatter.h: Add new debug message.
80 * src/c++11/debug.cc: Likewise.
81 * testsuite/23_containers/forward_list/allocator/swap.cc: Do not
82 swap containers with non-propagating, non-equal allocators.
83 * testsuite/23_containers/vector/allocator/swap.cc: Likewise.
85 2012-11-05 Benjamin Kosnik <bkoz@redhat.com>
86 Oleg Smolsky <oleg@smolsky.net>
89 * config/abi/pre/gnu-versioned-namespace.ver: Add symbols.
90 * testsuite/23_containers/unordered_multimap/insert/55028-debug.cc: New.
92 2012-10-05 François Dumont <fdumont@gcc.gnu.org>
94 * include/ext/throw_allocator.h (__throw_value_base): Add move
95 semantic, not throwing.
96 (__throw_value_limit): Likewise.
97 (__throw_value_random): Likewise.
98 * testsuite/util/exception/safety.h: Add validation of C++11
99 methods emplace/emplace_front/emplace_back/emplace_hint.
100 * testsuite/util/testsuite_container_traits.h: Signal emplace
101 support on deque, forward_list, list and vector.
102 * testsuite/23_containers/deque/requirements/exception/
103 propagation_consistent.cc: Remove dg-do run fail.
105 2012-11-05 Paolo Carlini <paolo.carlini@oracle.com>
108 * include/bits/random.tcc (mersenne_twister_engine<>::seed(_Sseq&)):
109 Assign state_size to _M_p.
110 * testsuite/26_numerics/random/mersenne_twister_engine/cons/55215.cc:
112 * testsuite/26_numerics/random/independent_bits_engine/cons/55215.cc:
114 * testsuite/26_numerics/random/shuffle_order_engine/cons/55215.cc:
116 * testsuite/26_numerics/random/subtract_with_carry_engine/cons/
118 * testsuite/26_numerics/random/discard_block_engine/cons/55215.cc:
120 * testsuite/26_numerics/random/linear_congruential_engine/cons/
123 2012-11-03 Florian Weimer <fweimer@redhat.com>
125 * libsupc++/vec.cc (compute_size): New.
126 (__cxa_vec_new2, __cxa_vec_new3): Use it.
127 * testsuite/18_support/cxa_vec.cc: New.
129 2012-11-03 Robert Mason <rbmj@verizon.net>
131 * config/os/vxworks/os_defines.h:
132 Keep vxWorks from defining min()/max() as macros
134 2012-11-03 Jonathan Wakely <jwakely.gcc@gmail.com>
136 * doc/html/*: Regenerate.
138 2012-11-02 Gerald Pfeifer <gerald@pfeifer.com>
140 * doc/xml/manual/configure.xml: Adjust GNU libc link.
142 * doc/xml/manual/debug.xml: Adjust GDB documentation link.
143 Use GCC instead of gcc.
145 * doc/xml/manual/prerequisites.xml: Remove detailed reference
146 to binutils downloads.
148 2012-11-02 Paolo Carlini <paolo.carlini@oracle.com>
151 * include/bits/random.h: Remove all uses of param().
152 (chi_squared_distribution<>::__generate_impl(_ForwardIterator,
153 _ForwardIterator, _UniformRandomNumberGenerator&)): Declare
154 * include/bits/random.tcc: ... define.
155 * include/ext/random: Remove all uses of param().
157 2012-11-02 Gerald Pfeifer <gerald@pfeifer.com>
159 * doc/xml/manual/allocator.xml: Update reference to Hoard.
160 Update reference to Berger's OOPSLA 2002 paper.
162 2012-11-02 Jonathan Wakely <jwakely.gcc@gmail.com>
164 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
165 (StdForwardListPrinter): Likewise.
167 2012-11-02 Jonathan Wakely <jwakely.gcc@gmail.com>
169 * include/bits/forward_list.h (forward_list(size_type)): Add missing
171 (_Fwd_list_node_base): Use NSDMI and define constructor as defaulted.
172 (_Fwd_list_node::_M_value): Replace with uninitialized storage.
173 (_Fwd_list_node::_M_valptr()): Define functions to access storage.
174 (_Fwd_list_iterator, _Fwd_list_const_iterator): Use _M_valptr.
175 (_Fwd_list_base::_M_create_node): Only use allocator to construct the
176 element not the node.
177 * include/bits/forward_list.tcc (_Fwd_list_base::_M_erase_after): Only
178 use allocator to destroy the element not the node.
179 * testsuite/23_containers/forward_list/cons/11.cc: Remove unused
181 * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
182 * testsuite/23_containers/forward_list/cons/13.cc: New.
183 * testsuite/23_containers/forward_list/cons/14.cc: New.
185 2012-11-02 Gerald Pfeifer <gerald@pfeifer.com>
187 * doc/xml/manual/codecvt.xml: Fix reference to Austin Common
188 Standards Revision Group.
189 * doc/xml/manual/messages.xml: Ditto.
190 * doc/xml/manual/using_exceptions.xml: Ditto.
192 * doc/xml/manual/messages.xml: Fix reference to GNU gettext.
194 * doc/xml/manual/policy_data_structures.xml: Fix reference to
196 Update reference to COM at Microsoft.
197 Update reference to Worst-case efficient priority queues at ACM.
199 2012-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
201 * testsuite/18_support/initializer_list/range_access.cc: Fix copying
202 permission statement.
203 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
205 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
206 move_iterators/1.cc: Likewise.
207 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
208 move_iterators/1.cc: Likewise.
209 * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
211 * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
213 * testsuite/21_strings/basic_string/range_access/char/1.cc: Likewise.
214 * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
216 * testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
217 * testsuite/23_containers/array/range_access.cc: Likewise.
218 * testsuite/23_containers/deque/capacity/29134-2.cc: Likewise.
219 * testsuite/23_containers/deque/capacity/29134.cc: Likewise.
220 * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
221 * testsuite/23_containers/deque/range_access.cc: Likewise.
222 * testsuite/23_containers/deque/requirements/do_the_right_thing.cc:
224 * testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
225 * testsuite/23_containers/forward_list/cons/1.cc: Likewise.
226 * testsuite/23_containers/forward_list/cons/10.cc: Likewise.
227 * testsuite/23_containers/forward_list/cons/11.cc: Likewise.
228 * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
229 * testsuite/23_containers/forward_list/cons/2.cc: Likewise.
230 * testsuite/23_containers/forward_list/cons/3.cc: Likewise.
231 * testsuite/23_containers/forward_list/cons/4.cc: Likewise.
232 * testsuite/23_containers/forward_list/cons/5.cc: Likewise.
233 * testsuite/23_containers/forward_list/cons/6.cc: Likewise.
234 * testsuite/23_containers/forward_list/cons/7.cc: Likewise.
235 * testsuite/23_containers/forward_list/cons/8.cc: Likewise.
236 * testsuite/23_containers/forward_list/cons/9.cc: Likewise.
237 * testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
238 * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
240 * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
242 * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
244 * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
246 * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
248 * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
250 * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
252 * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
254 * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
256 * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
258 * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
260 * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
262 * testsuite/23_containers/forward_list/debug/move_constructor.cc:
264 * testsuite/23_containers/forward_list/debug/splice_after.cc: Likewise.
265 * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
267 * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
269 * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
271 * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
273 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
275 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
277 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
279 * testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
280 * testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
281 * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
282 * testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
283 * testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
284 * testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
285 * testsuite/23_containers/forward_list/modifiers/6.cc: Likewise.
286 * testsuite/23_containers/forward_list/operations/1.cc: Likewise.
287 * testsuite/23_containers/forward_list/operations/2.cc: Likewise.
288 * testsuite/23_containers/forward_list/operations/3.cc: Likewise.
289 * testsuite/23_containers/forward_list/operations/4.cc: Likewise.
290 * testsuite/23_containers/forward_list/operations/5.cc: Likewise.
291 * testsuite/23_containers/forward_list/operations/6.cc: Likewise.
292 * testsuite/23_containers/forward_list/operations/7.cc: Likewise.
293 * testsuite/23_containers/forward_list/range_access.cc: Likewise.
294 * testsuite/23_containers/forward_list/requirements/
295 do_the_right_thing.cc: Likewise.
296 * testsuite/23_containers/list/capacity/1.cc: Likewise.
297 * testsuite/23_containers/list/capacity/1.h: Likewise.
298 * testsuite/23_containers/list/capacity/29134.cc: Likewise.
299 * testsuite/23_containers/list/modifiers/1.cc: Likewise.
300 * testsuite/23_containers/list/modifiers/1.h: Likewise.
301 * testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
302 * testsuite/23_containers/list/modifiers/2.cc: Likewise.
303 * testsuite/23_containers/list/modifiers/2.h: Likewise.
304 * testsuite/23_containers/list/modifiers/3.cc: Likewise.
305 * testsuite/23_containers/list/modifiers/3.h: Likewise.
306 * testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise.
307 * testsuite/23_containers/list/modifiers/insert/25288.h: Likewise.
308 * testsuite/23_containers/list/operations/1.cc: Likewise.
309 * testsuite/23_containers/list/operations/1.h: Likewise.
310 * testsuite/23_containers/list/operations/2.cc: Likewise.
311 * testsuite/23_containers/list/operations/2.h: Likewise.
312 * testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
313 * testsuite/23_containers/list/operations/3.cc: Likewise.
314 * testsuite/23_containers/list/operations/3.h: Likewise.
315 * testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
316 * testsuite/23_containers/list/operations/4.cc: Likewise.
317 * testsuite/23_containers/list/operations/4.h: Likewise.
318 * testsuite/23_containers/list/operations/42352.cc: Likewise.
319 * testsuite/23_containers/list/operations/5.cc: Likewise.
320 * testsuite/23_containers/list/operations/5.h: Likewise.
321 * testsuite/23_containers/list/range_access.cc: Likewise.
322 * testsuite/23_containers/list/requirements/do_the_right_thing.cc:
324 * testsuite/23_containers/map/capacity/29134.cc: Likewise.
325 * testsuite/23_containers/map/range_access.cc: Likewise.
326 * testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
327 * testsuite/23_containers/multimap/range_access.cc: Likewise.
328 * testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
329 * testsuite/23_containers/multiset/range_access.cc: Likewise.
330 * testsuite/23_containers/set/capacity/29134.cc: Likewise.
331 * testsuite/23_containers/set/range_access.cc: Likewise.
332 * testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
333 * testsuite/23_containers/unordered_map/observers.cc: Likewise.
334 * testsuite/23_containers/unordered_map/range_access.cc: Likewise.
335 * testsuite/23_containers/unordered_map/requirements/52942.cc:
337 * testsuite/23_containers/unordered_map/requirements/53067.cc:
339 * testsuite/23_containers/unordered_map/requirements/53339.cc:
341 * testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
342 * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
343 * testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
344 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
346 * testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
347 * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
348 * testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
349 * testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
350 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
351 * testsuite/23_containers/unordered_set/observers.cc: Likewise.
352 * testsuite/23_containers/unordered_set/range_access.cc: Likewise.
353 * testsuite/23_containers/unordered_set/requirements/52942.cc:
355 * testsuite/23_containers/unordered_set/requirements/53067.cc:
357 * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
358 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
360 * testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
361 * testsuite/23_containers/vector/capacity/29134.cc: Likewise.
362 * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
363 * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
364 * testsuite/23_containers/vector/range_access.cc: Likewise.
365 * testsuite/23_containers/vector/requirements/do_the_right_thing.cc:
367 * testsuite/24_iterators/range_access.cc: Likewise.
368 * testsuite/25_algorithms/copy/1.cc: Likewise.
369 * testsuite/25_algorithms/copy/2.cc: Likewise.
370 * testsuite/25_algorithms/copy/3.cc: Likewise.
371 * testsuite/25_algorithms/copy/34595.cc: Likewise.
372 * testsuite/25_algorithms/copy/4.cc: Likewise.
373 * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
374 * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
375 * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
376 * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
377 * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
378 * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
379 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
381 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
383 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
385 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
387 * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
388 * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
389 * testsuite/25_algorithms/copy_n/1.cc: Likewise.
390 * testsuite/25_algorithms/copy_n/2.cc: Likewise.
391 * testsuite/25_algorithms/copy_n/3.cc: Likewise.
392 * testsuite/25_algorithms/copy_n/4.cc: Likewise.
393 * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
394 * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
395 * testsuite/25_algorithms/fill/4.cc: Likewise.
396 * testsuite/25_algorithms/fill_n/1.cc: Likewise.
397 * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc:
399 * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc:
401 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
403 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
405 * testsuite/25_algorithms/heap/1.cc: Likewise.
406 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
407 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
408 * testsuite/25_algorithms/is_heap/1.cc: Likewise.
409 * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
410 * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
411 * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
412 * testsuite/25_algorithms/move/1.cc: Likewise.
413 * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
414 * testsuite/25_algorithms/move_backward/1.cc: Likewise.
415 * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
416 * testsuite/25_algorithms/partition/1.cc: Likewise.
417 * testsuite/25_algorithms/partition/moveable.cc: Likewise.
418 * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
419 * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
420 * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
421 * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
422 * testsuite/25_algorithms/stable_partition/pr52822.cc: Likewise.
423 * testsuite/26_numerics/valarray/range_access.cc: Likewise.
424 * testsuite/28_regex/range_access.cc: Likewise.
425 * testsuite/ext/vstring/capacity/29134.cc: Likewise.
426 * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
427 * testsuite/ext/vstring/hash/char/1.cc: Likewise.
428 * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
429 * testsuite/ext/vstring/range_access.cc: Likewise.
430 * testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
431 * testsuite/performance/25_algorithms/copy_backward_deque_iterators.cc:
433 * testsuite/performance/25_algorithms/copy_deque_iterators.cc:
435 * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
437 * testsuite/tr1/6_containers/unordered_multimap/capacity/
438 29134-multimap.cc: Likewise.
439 * testsuite/tr1/6_containers/unordered_multiset/capacity/
440 29134-multiset.cc: Likewise.
441 * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
444 2012-11-01 François Dumont <fdumont@gcc.gnu.org>
446 * include/bits/hashtable_policy.h (__details::_Before_begin<>):
447 New, combine a base node instance and an allocator.
448 * include/bits/hashtable.h (_Hashtable<>::_M_node_allocator): Remove.
449 (_Hashtable<>::_M_before_begin): Rename into _M_bbegin and type
450 modified to __detail::_Before_begin<>.
451 (_Hashtable<>::_M_node_allocator()): New, get the node allocator
453 (_Hashtable<>::_M_before_begin()): New, get the before begin node
455 (_Hashtable<>): Adapt to use latter.
457 2012-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
459 * include/bits/forward_list.h (forward_list::assign): Dispatch to new
460 functions based on assignability of elements.
461 (forward_list::_M_assign): Add overloaded functions for assigning
462 via assignment or via clearing and insertion.
463 (forward_list::_M_assign_val): Likewise.
464 (forward_list::_M_move_assign(forward_list&&, false_type)): Do not
465 erase elements that are not moved.
466 * include/bits/forward_list.tcc (forward_list::operator=): Call
467 assign() to copy elements.
468 * testsuite/23_containers/forward_list/cons/10.cc: New.
469 * testsuite/23_containers/forward_list/cons/11.cc: New.
470 * testsuite/23_containers/forward_list/cons/12.cc: New.
472 2012-10-31 Jonathan Yong <jon_y@users.sourceforge.net>
474 * config/os/mingw32-w64/os_defines.h: Do not define anymore
475 _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
477 2012-10-31 Jonathan Wakely <jwakely.gcc@gmail.com>
479 * include/bits/forward_list.h (forward_list): Adjust comments.
480 (forward_list(const forward_list&, const _Alloc&)): Use
481 _M_range_initialize to copy elements.
482 (forward_list(forward_list&&, const _Alloc&)): Add exception
484 (_Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&)):
486 * include/bits/forward_list.tcc (_Fwd_list_base(const _Fwd_list_base&,
487 const _Node_alloc_type&)): Remove.
488 (_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Fix
489 memory leak when allocators are not equal.
491 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
494 * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
495 Do not instantiate allocator with element_type.
496 * testsuite/20_util/shared_ptr/cons/55123.cc: New.
498 2012-10-28 Jonathan Wakely <jwakely.gcc@gmail.com>
501 * python/libstdcxx/v6/printers.py (Tr1UnorderedMapPrinter): Update
502 to handle hashtable as member of unordered_map not base class.
503 (Tr1UnorderedSetPrinter): Likewise.
505 2012-10-27 François Dumont <fdumont@gcc.gnu.org>
507 * include/bits/unordered_map.h (unordered_map<>): Prefer
508 aggregation to inheritance with _Hashtable.
509 (unordered_multimap<>): Likewise.
510 * include/bits/unordered_set.h
511 (unordered_set<>(const unordered_set&)): Use default
513 (unordered_set<>(unordered_set&&)): Likewise.
514 (unordered_set<>::operator=(const unordered_set&)): Likewise.
515 (unordered_set<>::operator=(unordered_set&&)): Likewise.
516 (unordered_multiset<>(const unordered_multiset&)): Likewise.
517 (unordered_multiset<>(unordered_multiset&&)): Likewise.
518 (unordered_multiset<>::operator=(const unordered_multiset&)):
520 (unordered_multiset<>::operator=(unordered_multiset&&)): Likewise.
521 * include/debug/unordered_map (operator==): Adapt.
522 * include/profile/unordered_map (operator==): Adapt.
524 2012-10-24 Daniel Krugler <daniel.kruegler@gmail.com>
526 * include/std/type_traits (common_type): Implement LWG 2141.
527 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
529 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
530 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
532 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
534 * testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
536 2012-10-24 Haakan Younes <hyounes@google.com>
537 Paolo Carlini <paolo.carlini@oracle.com>
540 * include/bits/random.h (exponential_distribution<>::operator):
541 Fix formula to std::log(result_type(1) - __aurng()).
542 * include/bits/random.tcc: Likewise, everywhere.
544 2012-10-23 Yufeng Zhang <yufeng.zhang@arm.com>
546 * config/cpu/aarch64/cxxabi_tweaks.h: New file.
547 * configure.host: Enable aarch64.
549 2012-10-22 François Dumont <fdumont@gcc.gnu.org>
551 * include/bits/unordered_set.h (unordered_set<>): Prefer
552 aggregation to inheritance with _Hashtable.
553 (unordered_multiset<>): Likewise.
554 * include/debug/unordered_set (operator==): Adapt.
555 * include/profile/unordered_set (operator==): Adapt.
557 2012-10-22 Yufeng Zhang <yufeng.zhang@arm.com>
558 Jonathan Wakely <jwakely.gcc@gmail.com>
560 * doc/xml/manual/configure.xml (--enable-clocale): Document the
561 'newlib' and 'darwin' options. Minor stylistic improvements.
563 2012-10-21 François Dumont <fdumont@gcc.gnu.org>
565 * include/profile/map.h (map::emplace_hint): Remove invalid
568 2012-10-21 Hans-Peter Nilsson <hp@bitrange.com>
570 * testsuite/23_containers/bitset/45713.cc: Skip for mmix-*-*.
571 Tweak sizetype-related comment.
573 2012-10-20 Jonathan Wakely <jwakely.gcc@gmail.com>
575 * include/std/scoped_allocator: Avoid badname.
577 2012-10-19 Jonathan Wakely <jwakely.gcc@gmail.com>
579 * doc/xml/manual/status_cxx2011.xml: Update.
581 2012-10-19 Jonathan Wakely <jwakely.gcc@gmail.com>
583 * include/std/scoped_allocator (__outermost_alloc_traits): Define.
584 (scoped_allocator_adaptor::destroy): Use it.
585 (scoped_allocator_adaptor::construct): Likewise. Overload for
586 piecewise construction of std::pair objects.
587 * testsuite/20_util/scoped_allocator/2.cc: New.
588 * doc/xml/manual/status_cxx2011.xml: Update.
590 2012-10-18 Jonathan Wakely <jwakely.gcc@gmail.com>
592 * include/bits/forward_list.h: Add C++11 allocator support.
593 * include/bits/forward_list.tcc: Likewise.
594 * doc/xml/manual/status_cxx2011.xml: Update.
595 * testsuite/23_containers/forward_list/allocator/copy.cc: New.
596 * testsuite/23_containers/forward_list/allocator/copy_assign.cc: New.
597 * testsuite/23_containers/forward_list/allocator/minimal.cc: New.
598 * testsuite/23_containers/forward_list/allocator/move_assign.cc: New.
599 * testsuite/23_containers/forward_list/allocator/noexcept.cc: New.
600 * testsuite/23_containers/forward_list/allocator/swap.cc: New.
602 2012-10-18 François Dumont <fdumont@gcc.gnu.org>
604 * include/debug/formatter.h (_Debug_msg_id): Add
605 __msg_valid_load_factor.
606 * include/debug/macros.h (__glibcxx_check_max_load_factor): New.
607 * include/debug/unordered_set
608 (unordered_set<>::max_load_factor(float)): Check max load factor
610 (unordered_multiset<>::max_load_factor(float)): Likewise.
611 * include/debug/unordered_map
612 (unordered_map<>::max_load_factor(float)): Likewise.
613 (unordered_multimap<>::max_load_factor(float)): Likewise.
614 * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
616 * testsuite/23_containers/unordered_multimap/debug/
617 max_load_factor_neg.cc: New.
618 * testsuite/23_containers/unordered_set/debug/max_load_factor_neg.cc:
620 * testsuite/23_containers/unordered_multiset/debug/
621 max_load_factor_neg.cc: New.
623 2012-10-17 Benjamin Kosnik <bkoz@redhat.com>
625 * include/bits/move.h (move_if_noexcept): Mark constexpr.
626 * include/std/array (front, back): Same.
627 * include/std/chrono: Add comment.
628 * include/std/tuple (__tuple_compare): Mark __eq, __less constexpr.
629 (operator ==, <, >, !=, <=, >=): Same.
630 * testsuite/20_util/forward/c_neg.cc: Adjust line numbers.
631 * testsuite/20_util/forward/f_neg.cc: Same.
632 * testsuite/20_util/move_if_noexcept/constexpr.cc: New.
633 * testsuite/20_util/tuple/comparison_operators/constexpr.cc: New.
634 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Add.
635 * testsuite/23_containers/array/element_access/
636 constexpr_element_access.cc: Same.
637 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
639 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
642 * testsuite/20_util/tuple/comparison_operators/35480_neg.cc:
643 Temporarily add dg-excess-errors.
645 2012-10-16 François Dumont <fdumont@gcc.gnu.org>
647 * include/debug/formatter.h (_Debug_msg_id): Add
648 __msg_bucket_index_oob.
649 * include/debug/macros.h (__glibcxx_check_bucket_index): New.
650 * include/debug/unordered_set (unordered_set<>::begin(size_type)):
651 Add check on bucket index.
652 (unordered_set<>::begin(size_type) const): Likewise.
653 (unordered_set<>::cbegin(size_type) const): Likewise.
654 (unordered_set<>::end(size_type)): Likewise.
655 (unordered_set<>::end(size_type) const): Likewise.
656 (unordered_set<>::cend(size_type) const): Likewise.
657 (unordered_set<>::bucket_size(size_type)): Likewise.
658 (unordered_multiset<>::begin(size_type)): Likewise.
659 (unordered_multiset<>::begin(size_type) const): Likewise.
660 (unordered_multiset<>::cbegin(size_type) const): Likewise.
661 (unordered_multiset<>::end(size_type)): Likewise.
662 (unordered_multiset<>::end(size_type) const): Likewise.
663 (unordered_multiset<>::cend(size_type) const): Likewise.
664 (unordered_multiset<>::bucket_size(size_type)): Likewise.
665 * include/debug/unordered_map (unordered_map<>::begin(size_type)):
667 (unordered_map<>::begin(size_type) const): Likewise.
668 (unordered_map<>::cbegin(size_type) const): Likewise.
669 (unordered_map<>::end(size_type)): Likewise.
670 (unordered_map<>::end(size_type) const): Likewise.
671 (unordered_map<>::cend(size_type) const): Likewise.
672 (unordered_map<>::bucket_size(size_type)): Likewise.
673 (unordered_multimap<>::begin(size_type)): Likewise.
674 (unordered_multimap<>::begin(size_type) const): Likewise.
675 (unordered_multimap<>::cbegin(size_type) const): Likewise.
676 (unordered_multimap<>::end(size_type)): Likewise.
677 (unordered_multimap<>::end(size_type) const): Likewise.
678 (unordered_multimap<>::cend(size_type) const): Likewise.
679 (unordered_multimap<>::bucket_size(size_type)): Likewise.
680 * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
682 * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: New.
683 * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: New.
684 * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: New.
685 * testsuite/23_containers/unordered_map/debug/end1_neg.cc: New.
686 * testsuite/23_containers/unordered_map/debug/end2_neg.cc: New.
687 * testsuite/23_containers/unordered_map/debug/cend_neg.cc: New.
688 * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
690 * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: New.
691 * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: New.
692 * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: New.
693 * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: New.
694 * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: New.
695 * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: New.
696 * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
698 * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: New.
699 * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: New.
700 * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: New.
701 * testsuite/23_containers/unordered_set/debug/end1_neg.cc: New.
702 * testsuite/23_containers/unordered_set/debug/end2_neg.cc: New.
703 * testsuite/23_containers/unordered_set/debug/cend_neg.cc: New.
704 * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
706 * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc: New.
707 * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc: New.
708 * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc: New.
709 * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: New.
710 * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: New.
711 * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc: New.
713 2012-10-15 Matthias Klose <doko@ubuntu.com>
715 * configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
716 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
717 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
719 2012-10-15 Pavel Chupin <pavel.v.chupin@intel.com>
721 * Makefile.in: Regenerate.
722 * acinclude.m4: Replace code with GCC_AC_THREAD_HEADER use.
723 * configure: Regenerate.
724 * doc/Makefile.in: Regenerate.
725 * include/Makefile.am: Regenerate.
726 * include/Makefile.in: Rename variable.
727 * libsupc++/Makefile.in: Regenerate.
728 * po/Makefile.in: Regenerate.
729 * python/Makefile.in: Regenerate.
730 * src/Makefile.in: Regenerate.
731 * src/c++11/Makefile.in: Regenerate.
732 * src/c++98/Makefile.in: Regenerate.
733 * testsuite/Makefile.in: Regenerate.
735 2012-10-14 Jason Merrill <jason@redhat.com>
738 * libsupc++/atexit_thread.cc: Rewrite to keep the cleanup list
739 with get/setspecific. Destroy the key on dlclose.
741 2012-10-12 Edward Smith-Rowland <3dw4rd@verizon.net>
743 * include/ext/random: Add __gnu_cxx::arcsine_distribution<>
744 and __gnu_cxx::hoyt_distribution<> classes.
745 * include/ext/random.tcc: Add out-of-line functions for
746 __gnu_cxx::arcsine_distribution<> and __gnu_cxx::hoyt_distribution<>.
747 * testsuite/ext/random/hoyt_distribution/cons/parms.cc: New file.
748 * testsuite/ext/random/hoyt_distribution/cons/default.cc: New file.
749 * testsuite/ext/random/hoyt_distribution/requirements/
750 explicit_instantiation/1.cc: New file.
751 * testsuite/ext/random/hoyt_distribution/requirements/typedefs.cc:
753 * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: New file.
754 * testsuite/ext/random/hoyt_distribution/operators/equal.cc: New file.
755 * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
757 * testsuite/ext/random/arcsine_distribution/cons/parms.cc: New file.
758 * testsuite/ext/random/arcsine_distribution/cons/default.cc: New file.
759 * testsuite/ext/random/arcsine_distribution/requirements/
760 explicit_instantiation/1.cc: New file.
761 * testsuite/ext/random/arcsine_distribution/requirements/typedefs.cc:
763 * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
765 * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
767 * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
770 2012-10-12 Paolo Carlini <paolo.carlini@oracle.com>
772 * include/bits/hashtable_policy.h: Revert libstdc++/53067 quick
773 hacks thanks to the resolution of c++/51213.
775 2012-10-11 Paolo Carlini <paolo.carlini@oracle.com>
777 * testsuite/23_containers/bitset/45713.cc: Tweak.
779 2012-10-11 Hans-Peter Nilsson <hp@axis.com>
782 * testsuite/23_containers/bitset/45713.cc: Skip for avr*-*-*
783 cris*-*-* h8300*-*-* mcore*-*-* moxie*-*-*.
785 2012-10-11 Daniel Krugler <daniel.kruegler@gmail.com>
787 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
789 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
791 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
794 2012-10-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
797 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11) [!__sun__ && !__svr4__]:
798 Don't export _ZNSt12system_errorC*.
800 2012-10-10 Jack Howarth <howarth@bromo.med.uc.edu>
801 Jonathan Wakely <jwakely.gcc@gmail.com>
804 * config/os/bsd/darwin/os_defines.h: Define _GLIBCXX_USE_NANOSLEEP
805 and _GLIBCXX_USE_SCHED_YIELD.
806 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add comment.
808 2012-10-10 Mark Kettenis <kettenis@openbsd.org>
810 * configure.host (*-*-openbsd*) Set cpu_include_dir.
811 * config/os/bsd/openbsd/ctype_base.h: New file.
812 * config/os/bsd/openbsd/ctype_configure_char.cc: New file.
813 * config/os/bsd/openbsd/ctype_inline.h: New file.
814 * config/os/bsd/openbsd/os_defines.h: New file.
815 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use newlib locale model
817 * configure: Regenerated.
819 2012-10-10 Paolo Carlini <paolo.carlini@oracle.com>
821 * include/std/type_traits (__do_common_type_impl): Revert for now
822 LWG 2141-related change.
823 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
824 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
827 2012-10-09 Daniel Krugler <daniel.kruegler@gmail.com>
829 * include/std/type_traits (common_type): Provide "SFINAE-friendly"
831 (__success_type, __failure_type): Fix.
832 * include/std/chrono (common_type): Likewise for the chrono::time_point
834 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc: New.
835 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
837 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
839 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Adjust wrt
841 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
842 dg-error line numbers.
843 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
844 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
845 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
846 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
848 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
850 * testsuite/20_util/result_of/sfinae_friendly_1.cc: Trivial stylistic
852 * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
854 2012-10-09 Andrew MacLeod <amacleod@redhat.com>
857 * include/bits/atomic_base.h (atomic_signal_fence): Call
858 __atomic_signal_fence instead of __atomic_thread_fence.
860 2012-10-09 Benjamin Kosnik <bkoz@redhat.com>
862 * testsuite/20_util/specialized_algorithms/uninitialized_copy/808590.cc:
865 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
868 * include/ext/random (simd_fast_mersenne_twister_engine): Provide
869 only for little endian targets.
870 * include/ext/random.tcc: Likewise.
871 * config/cpu/i486/opt/ext/opt_random.h: Likewise.
872 * testsuite/lib/libstdc++.exp (check_v3_target_little_endian): Add.
873 * testsuite/lib/dg-options.exp (dg-require-little-endian): Add.
874 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
875 operators/equal.cc: Use the latter.
876 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
877 operators/serialize.cc: Likewise.
878 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
879 operators/inequal.cc: Likewise.
880 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
881 cons/copy.cc: Likewise.
882 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
883 cons/seed1.cc: Likewise.
884 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
885 cons/seed2.cc: Likewise.
886 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
887 cons/default.cc: Likewise.
888 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
889 cons/seed_seq.cc: Likewise.
891 2012-10-09 Jonathan Wakely <jwakely.gcc@gmail.com>
894 * include/parallel/compatibility.h: Use atomic built-ins when they are
897 2012-10-09 Uros Bizjak <ubizjak@gmail.com>
899 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.7.
901 2012-10-08 Jason Merrill <jason@redhat.com>
903 * libsupc++/cxxabi.h: Declare __cxa_thread_atexit.
904 * libsupc++/atexit_thread.cc: New.
905 * libsupc++/Makefile.am (nested_exception.lo): Add it.
906 * config/abi/pre/gnu.ver: Add __cxa_thread_atexit.
908 2012-10-07 Matthias Klose <doko@ubuntu.com>
910 * testsuite/28_regex/algorithms/match/basic: Remove empty directory.
911 * testsuite/28_regex/algorithms/match/extended: Likewise.
912 * testsuite/28_regex/algorithms/match: Likewise.
914 2012-10-06 Paolo Carlini <paolo.carlini@oracle.com>
917 * include/c_global/cstdint: Remove __STDC_LIMIT_MACROS and
918 __STDC_CONSTANT_MACROS related macros.
920 2012-10-06 Joe Seymour <jseymour@codesourcery.com>
922 * include/tr2/dynamic_bitset: Fix cxxabi_forced.h include path.
924 2012-10-05 Benjamin Kosnik <bkoz@redhat.com>
926 * testsuite/28_regex/algorithms/match: Rename to...
927 * testsuite/28_regex/algorithms/regex_match: ...this.
928 * testsuite/28_regex/basic_regex/regex.cc: Rename to...
929 * testsuite/28_regex/basic_regex/ctors/basic/default.cc: ...this.
930 * testsuite/util/testsuite_regex.h: New.
931 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: New.
933 2012-10-05 Jakub Jelinek <jakub@redhat.com>
935 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line
938 2012-10-05 Marc Glisse <marc.glisse@inria.fr>
941 * include/c_global/cstdlib (abs(long long)): Define with
942 __builtin_llabs when we have long long.
943 (abs(long)): Use __builtin_labs.
944 (abs(__int128)): Define when we have __int128.
946 2012-10-05 Paolo Carlini <paolo.carlini@oracle.com>
948 * include/c_global/cstdlib: Remove redundant pasto code protected
949 by __GXX_EXPERIMENTAL_CXX0X__.
950 * include/c_global/cwctype: Likewise.
951 * include/c_global/ccomplex: Remove uses of obsolete macro
952 _GLIBCXX_INCLUDE_AS_TR1.
953 * include/c_global/cfloat: Likewise.
955 2012-10-05 Marc Glisse <marc.glisse@inria.fr>
958 * include/c_std/cstdlib (abs(long long)): Define with
959 __builtin_llabs when we have long long.
960 (abs(long)): Use __builtin_labs.
961 (abs(__int128)): Define when we have __int128.
962 * testsuite/26_numerics/headers/cstdlib/54686.c: New file.
964 2012-10-03 Paolo Carlini <paolo.carlini@oracle.com>
967 * include/std/array (__array_traits<>): Add.
968 (array<>): Allow for zero-size arrays of non default-constructible
970 * testsuite/23_containers/array/requirements/
971 non_default_constructible.cc: New.
972 * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
974 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
975 dg-error line numbers.
976 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
979 2012-10-02 Jonathan Wakely <jwakely.gcc@gmail.com>
982 * include/std/mutex (__recursive_mutex_base::~__recursive_mutex_base):
983 Use __gthread_recursive_mutex_destroy.
984 (__recursive_mutex_base::_S_destroy): Remove.
985 (__recursive_mutex_base::_S_destroy_win32): Likewise.
986 * include/ext/concurrence.h (__recursive_mutex::~__recursive_mutex):
987 Use __gthread_recursive_mutex_destroy.
988 (__recursive_mutex::_S_destroy): Remove.
989 (__recursive_mutex::_S_destroy_win32): Likewise.
991 2012-10-01 Benjamin Kosnik <bkoz@redhat.com>
993 * config/abi/pre/gnu-versioned-namespace.ver: Add more
994 typeinfo/vtable exports.
996 2012-10-01 Paolo Carlini <paolo.carlini@oracle.com>
999 * include/ext/random (rice_distribution<>::operator()): Use std::hypot
1000 only if _GLIBCXX_USE_C99_MATH_TR1.
1001 * include/ext/random.tcc (rice_distribution<>::__generate_impl):
1004 2012-10-01 Daniel Krugler <daniel.kruegler@gmail.com>
1006 * include/std/type_traits (result_of): Provide "SFINAE-friendly"
1007 (see N3436) implementation.
1008 * testsuite/20_util/result_of/sfinae_friendly_1.cc: New.
1009 * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
1010 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Tweak
1011 dg-error line numbers.
1012 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1014 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1016 2012-09-30 Benjamin Kosnik <bkoz@redhat.com>
1018 * doc/doxygen/user.cfg.in: Update to doxygen 1.8.2.
1020 2012-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
1022 * include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
1024 * testsuite/ext/rope/5.cc: New.
1026 2012-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
1029 * doc/xml/manual/status_cxx2011.xml: N2350 changes are missing from
1030 sequence containers.
1031 * doc/html/*: Regenerate.
1033 2012-09-29 Jonathan Wakely <jwakely.gcc@gmail.com>
1036 * include/parallel/compatibility.h: Remove non-GCC code.
1038 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
1040 * fragment.am (CONFIG_CXXFLAGS): Remove EXTRA_CXX_FLAGS.
1041 * libsupc++/Makefile.am (LTCXXCOMPILE): Add EXTRA_CXX_FLAGS here.
1042 * src/Makefile.am: Same.
1043 * src/c++98/Makefile.am: Same.
1044 * src/c++11/Makefile.am: Same.
1045 * Makefile.in: Regenerated.
1046 * src/Makefile.am: Same.
1047 * src/c++11/Makefile.in: Same.
1048 * src/c++98/Makefile.in: Same.
1049 * include/Makefile.in: Same.
1050 * po/Makefile.in: Same.
1051 * python/Makefile.in: Same.
1052 * testsuite/Makefile.in: Same.
1054 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
1056 * src/c++98/Makefile.am: Fixup PARALLEL_FLAGS.
1058 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
1060 * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Remove ENABLE_PARALLEL.
1061 * include/Makefile.am: Same.
1062 * src/c++98/Makefile.am: Same.
1063 * src/Makefile.am: Same.
1064 * Makefile.in: Regenerated.
1067 * doc/Makefile.in: Same.
1068 * include/Makefile.in: Same.
1069 * libsupc++/Makefile.in: Same.
1070 * po/Makefile.in: Same.
1071 * python/Makefile.in: Same.
1072 * src/Makefile.in: Same.
1073 * testsuite/Makefile.in: Same.
1074 * src/c++11/Makefile.in: Same.
1075 * src/c++98/Makefile.in: Same.
1077 * src/c++98/compatibility-debug_list-2.cc: Update comments.
1078 * src/c++98/compatibility-debug_list.cc: Same.
1079 * src/c++98/compatibility-list-2.cc: Renamed to src/c++98/list-aux-2.cc
1080 * src/c++98/compatibility-list.cc: Renamed to src/c++98/list-aux.cc
1081 * src/c++98/compatibility-parallel_list-2.cc: Renamed to
1082 src/c++98/list_associated-2.cc.
1083 * src/c++98/compatibility-parallel_list.cc: Renamed to
1084 src/c++98/list_associated.cc.
1086 2012-09-27 Paolo Carlini <paolo.carlini@oracle.com>
1089 * config/cpu/i486/opt/bits/opt_random.h: Avoid UINT64_C.
1091 2012-09-26 Paolo Carlini <paolo.carlini@oracle.com>
1093 * include/ext/random: Add include checks for c++11 and <cstdint>.
1095 2012-09-26 Benjamin Kosnik <bkoz@redhat.com>
1098 * config/abi/pre/gnu.ver: Add vtable exports.
1099 * config/abi/pre/gnu-versioned-namespace.ver: Same.
1101 2012-09-26 Akira Takahashi <faithandbrave@gmail.com>
1104 * include/bits/stl_iterator_base_funcs.h (__advance(_InputIterator&,
1105 _Distance, input_iterator_tag)): Add _GLIBCXX_DEBUG_ASSERT(__n >= 0).
1107 2012-09-26 Ulrich Drepper <drepper@gmail.com>
1109 Optimize bulk mode for normal_distribution<double> for SSE3.
1110 * configure.host: Define cpu_opt_bits_random.
1111 * configure.ac: Substitute CPU_OPT_BITS_RANDOM.
1112 * include/Makefile.am (bits_headers): Add ${bits_host_headers}.
1113 (bits_host_headers): Define.
1114 * include/bits/random.tcc: Move __details::_Power_of_2 to...
1115 * include/bits/random.h: ...here.
1116 * include/std/random: Include <bits/opt_random.h>.
1117 * config/cpu/i486/opt/bits/opt_random.h: New file.
1118 * config/cpu/generic/opt/bits/opt_random.h: New file.
1119 * configure: Regenerated.
1120 * Makefile.in: Regenerated.
1121 * aclocal.m4: Regenerated.
1122 * doc/Makefile.in: Regenerated.
1123 * include/Makefile.in: Regenerated.
1124 * libsupc++/Makefile.in: Regenerated.
1125 * po/Makefile.in: Regenerated.
1126 * python/Makefile.in: Regenerated.
1127 * src/Makefile.in: Regenerated.
1128 * src/c++11/Makefile.in: Regenerated.
1129 * src/c++98/Makefile.in: Regenerated.
1130 * testsuite/Makefile.in: Regenerated.
1132 * config/cpu/generic/opt/ext/opt_random.h: Fix comment.
1134 2012-09-25 Paolo Carlini <paolo.carlini@oracle.com>
1136 * doc/xml/manual/status_cxx2011.xml: Update vs PR 44436.
1138 2012-09-24 Edward Smith-Rowland <3dw4rd@verizon.net>
1140 * include/ext/random: Add __gnu_cxx::k_distribution<> class.
1141 * include/ext/random.tcc: Add out-of-line functions for
1142 __gnu_cxx::k_distribution<>.
1143 * testsuite/ext/random/k_distribution/operators/equal.cc: New file.
1144 * testsuite/ext/random/k_distribution/operators/serialize.cc: New file.
1145 * testsuite/ext/random/k_distribution/operators/inequal.cc: New file.
1146 * testsuite/ext/random/k_distribution/cons/parms.cc: New file.
1147 * testsuite/ext/random/k_distribution/cons/default.cc: New file.
1148 * testsuite/ext/random/k_distribution/requirements/typedefs.cc:
1150 * testsuite/ext/random/k_distribution/requirements/
1151 explicit_instantiation/1.cc: New file.
1153 2012-09-24 François Dumont <fdumont@gcc.gnu.org>
1156 * include/bits/stl_tree.h
1157 (_Rb_tree<>::_M_insert_): Take _Base_ptr rather than
1159 (_Rb_tree<>::_M_insert_node): New.
1160 (_Rb_tree<>::_M_get_insert_unique_pos): New, search code of
1161 _M_insert_unique method.
1162 (_Rb_tree<>::_M_insert_unique): Use latter.
1163 (_Rb_tree<>::_M_emplace_unique): New, likewise.
1164 (_Rb_tree<>::_M_get_insert_equal_pos): New, search code of
1165 _M_insert_equal method.
1166 (_Rb_tree<>::_M_insert_equal): Use latter.
1167 (_Rb_tree<>::_M_emplace_equal): New, likewise.
1168 (_Rb_tree<>::_M_get_insert_hint_unique_pos): New, search code of
1169 _M_insert_unique_ method.
1170 (_Rb_tree<>::_M_insert_unique_): Use latter.
1171 (_Rb_tree<>::_M_emplace_hint_unique): New, likewise.
1172 (_Rb_tree<>::_M_get_insert_hint_equal_pos): New, search code of
1173 _M_insert_equal_ method.
1174 (_Rb_tree<>::_M_insert_equal_): Use latter.
1175 (_Rb_tree<>::_M_emplace_hint_equal): New, likewise.
1176 (_Rb_tree<>::_M_insert_lower): Remove first _Base_ptr parameter,
1177 useless as always null.
1178 * include/bits/stl_map.h: Include <tuple> in C++11.
1179 (map<>::operator[](const key_type&)): Use
1180 _Rb_tree<>::_M_emplace_hint_unique in C++11.
1181 (map<>::operator[](key_type&&)): Likewise.
1182 (map<>::emplace): New.
1183 (map<>::emplace_hint): New.
1184 * include/bits/stl_multimap.h (multimap<>::emplace): New.
1185 (multimap<>::emplace_hint): New.
1186 * include/bits/stl_set.h (set<>::emplace): New.
1187 (set<>::emplace_hint): New.
1188 * include/bits/stl_multiset.h (multiset<>::emplace): New.
1189 (multiset<>::emplace_hint): New.
1190 * include/debug/map.h (std::__debug::map<>::emplace): New.
1191 (std::__debug::map<>::emplace_hint): New.
1192 * include/debug/multimap.h (std::__debug::multimap<>::emplace):
1194 (std::__debug::multimap<>::emplace_hint): New.
1195 * include/debug/set.h (std::__debug::set<>::emplace): New.
1196 (std::__debug::set<>::emplace_hint): New.
1197 * include/debug/multiset.h (std::__debug::multiset<>::emplace):
1199 (std::__debug::multiset<>::emplace_hint): New.
1200 * include/profile/map.h (std::__profile::map<>::emplace): New.
1201 (std::__profile::map<>::emplace_hint): New.
1202 * include/profile/multimap.h (std::__profile::multimap<>::emplace):
1204 (std::__profile::multimap<>::emplace_hint): New.
1205 * include/profile/set.h (std::__profile::set<>::emplace): New.
1206 (std::__profile::set<>::emplace_hint): New.
1207 * include/profile/multiset.h (std::__profile::multiset<>::emplace):
1209 (std::__profile::multiset<>::emplace_hint): New.
1210 * testsuite/util/testsuite_container_traits.h: Signal that emplace
1211 and emplace_hint are available on std::map, std::multimap,
1212 std::set and std::multiset in C++11.
1213 * testsuite/23_containers/map/operators/2.cc: New.
1214 * testsuite/23_containers/map/modifiers/emplace/1.cc: New.
1215 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: New.
1216 * testsuite/23_containers/set/modifiers/emplace/1.cc: New.
1217 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: New.
1219 2012-09-24 François Dumont <fdumont@gcc.gnu.org>
1221 * testsuite/performance/23_containers/insert_erase/41975.cc: Use
1222 __uset_hashtable rather than removed __unordered_set.
1224 2012-09-23 Paolo Carlini <paolo.carlini@oracle.com>
1227 2012-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1229 * include/bits/stl_algobase.h (max, min): Use conditional operator.
1231 2012-09-23 Uros Bizjak <ubizjak@gmail.com>
1234 * include/ext/random: Avoid the badname __alpha (and, for
1235 consistency, __mu, __nu, __sigma and __omega too).
1236 * include/bits/random.tcc: Likewise.
1238 2012-09-21 Edward Smith-Rowland <3dw4rd@verizon.net>
1240 * include/ext/random: Add __gnu_cxx::pareto_distribution<> class.
1241 * include/ext/random.tcc: Add out-of-line functions for
1242 __gnu_cxx::pareto_distribution<>.
1243 * testsuite/ext/random/pareto_distribution/operators/equal.cc: New file.
1244 * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
1246 * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
1248 * testsuite/ext/random/pareto_distribution/cons/parms.cc: New file.
1249 * testsuite/ext/random/pareto_distribution/cons/default.cc: New file.
1250 * testsuite/ext/random/pareto_distribution/requirements/typedefs.cc:
1252 * testsuite/ext/random/pareto_distribution/requirements/
1253 explicit_instantiation/1.cc: New file.
1255 2012-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1257 * include/bits/stl_algobase.h (max, min): Use conditional operator.
1259 2012-09-18 Benjamin Kosnik <bkoz@redhat.com>
1263 * configure.ac (glibcxx_lt_pic_flag,
1264 glibcxx_compiler_pic_flag,
1265 glibcxx_compiler_shared_flag): New. Use them.
1266 (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
1267 (pic_mode): Set to default.
1268 (PIC_CXXFLAGS): Remove.
1269 * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
1270 * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
1271 glibcxx_compiler_shared_flag. Comment.
1272 * src/c++11/Makefile.am: Same.
1273 * src/c++98/Makefile.am: Same.
1274 * src/Makefile.am: Use glibcxx_compiler_pic_flag.
1276 * Makefile.in: Regenerated.
1279 * doc/Makefile.in: Same.
1280 * include/Makefile.in: Same.
1281 * libsupc++/Makefile.in: Same.
1282 * po/Makefile.in: Same.
1283 * python/Makefile.in: Same.
1284 * src/Makefile.in: Same.
1285 * src/c++11/Makefile.in: Same.
1286 * src/c++98/Makefile.in: Same.
1287 * testsuite/Makefile.in: Same.
1289 * src/c++11/compatibility-atomic-c++0x.cc: Use
1290 _GLIBCXX_SHARED instead of PIC to designate shared-only
1292 * src/c++11/compatibility-c++0x.cc: Same.
1293 * src/c++11/compatibility-thread-c++0x.cc: Same.
1294 * src/c++98/compatibility-list-2.cc: Same.
1295 * src/c++98/compatibility.cc: : Same.
1297 * testsuite/17_intro/shared_with_static_deps.cc: New.
1299 * doc/xml/manual/build_hacking.xml: Separate configure from
1300 make/build issues, add build details.
1302 2012-09-18 Edward Smith-Rowland <3dw4rd@verizon.net>
1304 * include/ext/random: Add __gnu_cxx::nakagami_distribution<> class.
1305 * include/ext/random.tcc: Add out-of-line functions for
1306 __gnu_cxx::nakagami_distribution<>.
1307 * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
1309 * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
1311 * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
1313 * testsuite/ext/random/nakagami_distribution/cons/parms.cc: New file.
1314 * testsuite/ext/random/nakagami_distribution/cons/default.cc: New file.
1315 * testsuite/ext/random/nakagami_distribution/requirements/typedefs.cc:
1317 * testsuite/ext/random/nakagami_distribution/requirements/
1318 explicit_instantiation/1.cc: New file.
1320 2012-09-18 Paolo Carlini <paolo.carlini@oracle.com>
1323 * include/ext/random.tcc (operator==
1324 (const __gnu_cxx::simd_fast_mersenne_twister_engine<>&,
1325 const __gnu_cxx::simd_fast_mersenne_twister_engine<>&)): Fix
1327 * config/cpu/i486/opt/ext/opt_random.h: Guard with __SSE2__.
1329 2012-09-17 Ulrich Drepper <drepper@gmail.com>
1331 * configure.ac: Substitute CPU_OPT_EXT_RANDOM.
1332 * configure.host: Define cpu_opt_ext_random to location of the
1333 optimized version of <ext/random>.
1334 * include/Makefile.am (ext_headers): Add ${ext_host_headers}.
1335 (ext_host_headers): Define.
1336 * include/ext/random (simd_fast_mersenne_twister_engine<>
1337 ::operator==): Don't define function here.
1338 * include/ext/random.tcc (simd_fast_mersenne_twister_engine): Don't
1339 define code using SSE2 here. Define generic code only if
1340 _GLIBCXX_OPT_HAVE_RANDOM_SFMT_GEN_READ is not defined.
1341 (simd_fast_mersenne_twister_engine<>
1342 ::operator==): Define here if
1343 _GLIBCXX_OPT_HAVE_RANDOM_SFMT_OPERATOREQUAL is not defined.
1344 * config/cpu/generic/opt/ext/opt_random.h: New file.
1345 * config/cpu/i486/opt/ext/opt_random.h: New file.
1346 * libsupc++/Makefile.in: Regenerated.
1347 * testsuite/Makefile.in: Regenerated.
1348 * po/Makefile.in: Regenerated.
1349 * configure: Regenerated.
1350 * Makefile.in: Regenerated.
1351 * doc/Makefile.in: Regenerated.
1352 * aclocal.m4: Regenerated.
1353 * python/Makefile.in: Regenerated.
1354 * include/Makefile.in: Regenerated.
1355 * src/c++98/Makefile.in: Regenerated.
1356 * src/c++11/Makefile.in: Regenerated.
1357 * src/Makefile.in: Regenerated.
1359 2012-09-16 Edward Smith-Rowland <3dw4rd@verizon.net>
1361 * include/ext/random.tcc (__gnu_cxx::rice_distribution<>
1362 ::__generate_impl): Remove bogus _Adaptor usage.
1364 2012-09-16 Paolo Carlini <paolo.carlini@oracle.com>
1366 * include/ext/random (rice_distribution<>::operator==): Change
1367 inline friend definition to non-template.
1368 * testsuite/ext/random/rice_distribution/requirements/
1369 explicit_instantiation/1.cc: New.
1371 * testsuite/26_numerics/random/normal_mv_distribution: Move...
1372 * testsuite/ext/random/normal_mv_distribution: ... here.
1373 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine:
1375 * testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here.
1376 * testsuite/26_numerics/random/beta_distribution: Move...
1377 * testsuite/ext/random/beta_distribution: ... here.
1378 * testsuite/26_numerics/random/rice_distribution: Move...
1379 * testsuite/ext/random/rice_distribution: ... here.
1381 2012-09-14 Edward Smith-Rowland <3dw4rd@verizon.net>
1383 * include/ext/random: Add __gnu_cxx::rice_distribution<> class.
1384 * include/ext/random.tcc: Add out-of-line functions for
1385 __gnu_cxx::rice_distribution<>.
1386 * testsuite/26_numerics/random/rice_distribution/
1387 operators/equal.cc: New file.
1388 * testsuite/26_numerics/random/rice_distribution/
1389 operators/serialize.cc: New file.
1390 * testsuite/26_numerics/random/rice_distribution/
1391 operators/inequal.cc: New file.
1392 * testsuite/26_numerics/random/rice_distribution/
1393 cons/parms.cc: New file.
1394 * testsuite/26_numerics/random/rice_distribution/
1395 cons/default.cc: New file.
1396 * testsuite/26_numerics/random/rice_distribution/
1397 requirements/typedefs.cc: New file.
1399 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
1401 * configure: Regenerated.
1403 2012-09-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1404 H.J. Lu <hongjiu.lu@intel.com>
1407 * src/c++11/random.cc: Check if _GLIBCXX_USE_C99_STDINT_TR1 is defined.
1409 2012-09-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1411 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
1412 * configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
1413 * fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
1414 * configure: Regenerate.
1415 * Makefile.in: Regenerate.
1416 * doc/Makefile.in: Regenerate.
1417 * include/Makefile.in: Regenerate.
1418 * libsupc++/Makefile.in: Regenerate.
1419 * po/Makefile.in: Regenerate.
1420 * python/Makefile.in: Regenerate.
1421 * src/Makefile.in: Regenerate.
1422 * src/c++11/Makefile.in: Regenerate.
1423 * src/c++98/Makefile.in: Regenerate.
1424 * testsuite/Makefile.in: Regenerate.
1426 2012-09-11 Jakub Jelinek <jakub@redhat.com>
1429 * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
1430 argument of the first __atomic_compare_exchange_n.
1432 2012-09-10 Sebastian Huber <sebastian.huber@embedded-brains.de>
1433 Jonathan Wakely <jwakely.gcc@gmail.com>
1436 * acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
1437 * configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
1438 * config.h.in: Regenerate.
1439 * configure: Likewise.
1440 * libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
1441 * libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
1442 * doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
1443 * doc/html/manual/configure.html: Regenerate.
1445 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1448 * acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
1449 * configure: Regenerated.
1451 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1454 * include/std/array (array::at() const): Ensure lvalue result.
1455 * testsuite/23_containers/array/element_access/54388.cc: New.
1456 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1457 dg-error line numbers.
1458 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1461 2012-09-09 Ulrich Drepper <drepper@gmail.com>
1462 Dominique d'Humieres <dominiq@lps.ens.fr>
1463 Jack Howarth <howarth@bromo.med.uc.edu>
1466 * acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
1467 * configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
1468 support in assembler.
1469 * src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
1470 (random_device::_M_init): Likewise.
1471 (random_device::_M_getval): Likewise.
1472 * configure: Regenerated.
1473 * config.h.in: Regenerated.
1475 2012-09-09 Ulrich Drepper <drepper@gmail.com>
1477 * src/c++11/random.cc (random_device::_M_init): Use new macro
1478 signature_INTEL_ebx to check for Intel processors.
1480 2012-09-06 Thiago Macieira <thiago.macieira@intel.com>
1483 * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
1484 we detect that another thread has had success. Don't compare_exchange
1485 from a finished state back to a waiting state. Comment.
1487 2012-09-05 François Dumont <fdumont@gcc.gnu.org>
1490 * include/bits/hashtable.h (_M_erase(size_type, __node_base*,
1491 __node_type*)): New.
1492 (erase(const_iterator)): Use latter.
1493 (_M_erase(std::true_type, const key_type&)): New, likewise.
1494 (_M_erase(std::false_type, const key_type&)): New. Find all nodes
1495 matching the key before deallocating them so that the key doesn't
1497 (erase(const key_type&)): Use the new member functions.
1498 * testsuite/23_containers/unordered_map/erase/54296.cc: New.
1499 * testsuite/23_containers/unordered_multimap/erase/54296.cc: New.
1501 2012-09-05 Ulrich Drepper <drepper@gmail.com>
1503 * src/c++11/random.cc (random_device::_M_init): Check whether cpuid
1504 instruction is available by using __get_cpuid_max.
1506 * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)
1507 (operator()): Use __generate() function of _M_nd.
1509 * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.
1510 * include/ext/random.tccAdd out-of-line functions for
1511 __gnu_cxx::normal_mv_distribution<>.
1512 * testsuite/26_numerics/random/normal_mv_distribution/
1513 operators/equal.cc: New file.
1514 * testsuite/26_numerics/random/normal_mv_distribution/
1515 operators/serialize.cc: New file.
1516 * testsuite/26_numerics/random/normal_mv_distribution/
1517 operators/inequal.cc: New file.
1518 * testsuite/26_numerics/random/normal_mv_distribution/
1519 cons/default.cc: New file.
1520 * testsuite/26_numerics/random/normal_mv_distribution/
1521 cons/parms.cc: New file.
1522 * testsuite/26_numerics/random/normal_mv_distribution/
1523 requirements/explicit_instantiation/1.cc: New file.
1524 * testsuite/26_numerics/random/normal_mv_distribution/
1525 requirements/typedefs.cc: New file.
1527 2012-09-04 Ulrich Drepper <drepper@gmail.com>
1529 * include/ext/random: Add __gnu_cxx::beta_distribution<> class.
1530 * include/ext/random.tcc: Add out-of-line functions for
1531 __gnu_cxx::beta_distribution<>.
1532 * testsuite/26_numerics/random/beta_distribution/
1533 operators/equal.cc: New file.
1534 * testsuite/26_numerics/random/beta_distribution/
1535 operators/serialize.cc: New file.
1536 * testsuite/26_numerics/random/beta_distribution/
1537 operators/inequal.cc: New file.
1538 * testsuite/26_numerics/random/beta_distribution/
1539 cons/parms.cc: New file.
1540 * testsuite/26_numerics/random/beta_distribution/
1541 cons/default.cc: New file.
1542 * testsuite/26_numerics/random/beta_distribution/
1543 requirements/typedefs.cc: New file.
1544 * testsuite/26_numerics/random/beta_distribution/
1545 requirements/explicit_instantiation/1.cc: New file.
1547 2012-09-04 Steven Bosscher <steven@gcc.gnu.org>
1550 * include/Makefile.am: Fix regex.
1551 * include/Makefile.in: Regenerate.
1553 2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
1555 PR libstdc++/54005 continued
1556 * include/std/atomic: Use __atomic_lock_free with NULL.
1557 * include/bits/atomic_base.h: Same.
1559 2012-08-30 Ulrich Drepper <drepper@gmail.com>
1561 * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
1562 Remove 'return' from constructor.
1564 2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
1566 * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
1568 2012-08-29 Ulrich Drepper <drepper@gmail.com>
1570 * include/bits/random.h (random_device): Move implementation to...
1571 * src/c++11/random.cc: ...here. New file.
1572 * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18. Export
1573 std::random_device::* symbols.
1574 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
1575 * src/c++11/Makefile.am (sources): Add random.cc.
1576 * src/c++11/Makefile.in: Regenerated.
1578 Add simd_fast_mersenne_twister_engine class.
1579 * include/ext/random: New file.
1580 * include/ext/random.tcc: New file.
1581 * include/Makefile.am (ext_headers): Add random and random.tcc.
1582 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1583 operators/inequal.cc: New file.
1584 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1585 operators/equal.cc: New file.
1586 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1587 operators/serialize.cc: New file.
1588 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1589 cons/seed2.cc: New file.
1590 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1591 cons/default.cc: New file.
1592 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1593 cons/seed_seq.cc: New file.
1594 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1595 cons/copy.cc: New file.
1596 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1597 cons/seed1.cc: New file.
1599 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1601 PR libstdc++/54102, part 2
1602 * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
1603 * doc/Makefile.in: Regenerate.
1606 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1608 * doc/html/*: Regenerate.
1610 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1613 * doc/xsl/customization.xsl.in: New.
1614 * configure.ac: Output local copy of customization xsl.
1615 * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
1616 (stamp-html-docbook): Set stringparam to UTF-8.
1617 * Makefile.in: Regenerated.
1619 * doc/Makefile.in: Same.
1621 2012-08-27 Ulrich Drepper <drepper@gmail.com>
1623 Add interfaces to retrieve random numbers in bulk.
1624 * include/bits/random.h (uniform_int_distribution<>): Add __generate
1625 and __generate_impl functions.
1626 (uniform_real_distribution<>): Likewise.
1627 (bernoulli_distribution): Likewise.
1628 (geometric_distribution<>): Likewise.
1629 (negative_binomial_distribution<>): Likewise.
1630 (poisson_distribution<>): Likewise.
1631 (exponential_distribution<>): Likewise.
1632 (normal_distribution<>): Likewise.
1633 (lognormal_distribution<>): Likewise.
1634 (chi_squared_distribution<>): Likewise.
1635 (cauchy_distribution<>): Likewise.
1636 (fisher_f_distribution<>): Likewise.
1637 (student_t_distribution<>): Likewise.
1638 (gamma_distribution<>): Likewise.
1639 (weibull_distribution<>): Likewise.
1640 (extreme_value_distribution<>): Likewise.
1641 (discrete_distribution<>): Likewise.
1642 (piecewise_constant_distribution<>): Likewise.
1643 (piecewise_linear_distribution<>): Likewise.
1644 * include/bits/random.tcc (__detail::_Power_of_2): New function.
1645 (uniform_int_distribution<>::__generate_impl): New function.
1646 (uniform_real_distribution<>::__generate_impl): New function.
1647 (bernoulli_distribution::__generate_impl): New function.
1648 (geometric_distribution<>::__generate_impl): New function.
1649 (negative_binomial_distribution<>::__generate_impl): New function.
1650 (poisson_distribution<>::__generate_impl): New function.
1651 (exponential_distribution<>::__generate_impl): New function.
1652 (normal_distribution<>::__generate_impl): New function.
1653 (lognormal_distribution<>::__generate_impl): New function.
1654 (chi_squared_distribution<>::__generate_impl): New function.
1655 (cauchy_distribution<>::__generate_impl): New function.
1656 (fisher_f_distribution<>::__generate_impl): New function.
1657 (student_t_distribution<>::__generate_impl): New function.
1658 (gamma_distribution<>::__generate_impl): New function.
1659 (weibull_distribution<>::__generate_impl): New function.
1660 (extreme_value_distribution<>::__generate_impl): New function.
1661 (discrete_distribution<>::__generate_impl): New function.
1662 (piecewise_constant_distribution<>::__generate_impl): New function.
1663 (piecewise_linear_distribution<>::__generate_impl): New function.
1665 2012-08-22 Ulrich Drepper <drepper@gmail.com>
1667 * include/bits/random.h (mersenne_twister_engine): Don't inline
1668 discard here. New member function _M_gen_rand.
1669 * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
1670 New function. Extracted from operator().
1671 (mersenne_twister_engine<>::discard): New implementation which
1672 skips in large steps.
1673 (mersenne_twister_engine<>::operator()): Use _M_gen_rand.
1675 2012-08-26 Marc Glisse <marc.glisse@inria.fr>
1676 Paolo Carlini <paolo.carlini@oracle.com>
1679 * include/bits/random.h (lognormal_distribution<>::operator==,
1680 gamma_distribution<>::operator==,
1681 chi_squared_distribution<>::operator==,
1682 fisher_f_distribution<>::operator==,
1683 student_t_distribution<>::operator==,
1684 binomial_distribution<>::operator==,
1685 negative_binomial_distribution<>::operator==,
1686 poisson_distribution<>::operator==): Change inline friend definition
1688 * testsuite/26_numerics/random/binomial_distribution/requirements/
1689 explicit_instantiation/1.cc: New.
1690 * testsuite/26_numerics/random/cauchy_distribution/requirements/
1691 explicit_instantiation/1.cc: Likewise.
1692 * testsuite/26_numerics/random/chi_squared_distribution/
1693 requirements/explicit_instantiation/1.cc: Likewise.
1694 * testsuite/26_numerics/random/discrete_distribution/requirements/
1695 explicit_instantiation/1.cc: Likewise.
1696 * testsuite/26_numerics/random/exponential_distribution/
1697 requirements/explicit_instantiation/1.cc: Likewise.
1698 * testsuite/26_numerics/random/extreme_value_distribution/
1699 requirements/explicit_instantiation/1.cc: Likewise.
1700 * testsuite/26_numerics/random/fisher_f_distribution/requirements/
1701 explicit_instantiation/1.cc: Likewise.
1702 * testsuite/26_numerics/random/gamma_distribution/requirements/
1703 explicit_instantiation/1.cc: Likewise.
1704 * testsuite/26_numerics/random/geometric_distribution/requirements/
1705 explicit_instantiation/1.cc: Likewise.
1706 * testsuite/26_numerics/random/lognormal_distribution/requirements/
1707 explicit_instantiation/1.cc: Likewise.
1708 * testsuite/26_numerics/random/negative_binomial_distribution/
1709 requirements/explicit_instantiation/1.cc: Likewise.
1710 * testsuite/26_numerics/random/normal_distribution/requirements/
1711 explicit_instantiation/1.cc: Likewise.
1712 * testsuite/26_numerics/random/piecewise_constant_distribution/
1713 requirements/explicit_instantiation/1.cc: Likewise.
1714 * testsuite/26_numerics/random/piecewise_linear_distribution/
1715 requirements/explicit_instantiation/1.cc: Likewise.
1716 * testsuite/26_numerics/random/poisson_distribution/requirements/
1717 explicit_instantiation/1.cc: Likewise.
1718 * testsuite/26_numerics/random/student_t_distribution/requirements/
1719 explicit_instantiation/1.cc: Likewise.
1720 * testsuite/26_numerics/random/uniform_int_distribution/
1721 requirements/explicit_instantiation/1.cc: Likewise.
1722 * testsuite/26_numerics/random/uniform_real_distribution/
1723 requirements/explicit_instantiation/1.cc: Likewise.
1724 * testsuite/26_numerics/random/weibull_distribution/requirements/
1725 explicit_instantiation/1.cc: Likewise.
1727 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1729 * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
1731 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1734 * src/c++11/future.cc (~_Async_state_common): Move to...
1735 * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
1737 (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
1738 * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
1740 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1741 Geoff Romer <gromer@google.com>
1744 * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
1746 (unique_ptr<T[]>::~unique_ptr()): Likewise.
1747 * testsuite/20_util/unique_ptr/54351.cc: New.
1748 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1751 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1754 * include/std/future (~_Async_state_impl): Join thread before
1755 derived class members are destroyed.
1756 (~_Async_state_common): Only define non-trivial destructor when
1757 included from future.cc for ABI compatibility reasons.
1758 * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
1759 * testsuite/30_threads/async/54297.cc: New.
1761 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1764 * include/bits/concept_check.h: Replace references to boost
1767 2012-08-23 Jonathan Wakely <jwakely.gcc@gmail.com>
1770 * doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
1771 * doc/html/*: Regenerate.
1773 2012-08-15 Tom Tromey <tromey@redhat.com>
1775 * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
1777 (global): New global.
1778 (main): Add test for unique_ptr.
1779 * python/libstdcxx/v6/printers.py
1780 (UniquePointerPrinter.to_string): Extract the pointer and also
1783 2012-08-13 David Adler <d.adler.s@gmail.com>
1786 * src/c++11/condition_variable.cc (condition_variable): Always
1787 destroy native type in destructor.
1788 * testsuite/30_threads/condition_variable/54185.cc: New.
1790 2012-08-13 François Dumont <fdumont@gcc.gnu.org>
1791 Ollie Wild <aaw@google.com>
1793 * include/bits/hashtable.h
1794 (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
1795 (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
1796 (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
1797 (_Hashtable<>::_M_insert_bucket): Replace by ...
1798 (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
1800 (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
1801 (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
1802 * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
1803 latter, emplace the value_type rather than insert.
1804 * include/std/unordered_map: Include tuple.
1805 * include/std/unordered_set: Likewise.
1806 * testsuite/util/testsuite_counter_type.h: New.
1807 * testsuite/23_containers/unordered_map/operators/2.cc: New.
1809 2012-08-13 Marc Glisse <marc.glisse@inria.fr>
1812 * include/c_compatibility/complex.h: Undefine complex, always
1813 include system's complex.h if present.
1814 * testsuite/26_numerics/complex/c99.cc: New testcase.
1815 * testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
1816 * doc/xml/manual/numerics.xml: Document it.
1818 2012-08-12 Jonathan Wakely <jwakely.gcc@gmail.com>
1821 * src/c++11/thread.cc (thread::_M_start_thread): Improve error text
1822 when threads are not enabled.
1824 2012-08-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1826 * acinclude.m4: Update references to final C++11 standard.
1827 * include/bits/shared_ptr.h: Likewise.
1828 * include/bits/shared_ptr_base.h: Likewise.
1829 * include/bits/unique_ptr.h: Likewise.
1830 * include/std/chrono: Likewise.
1831 * include/std/thread: Likewise.
1833 2012-08-07 Benjamin Kosnik <bkoz@redhat.com>
1836 * include/std/atomic: Use __atomic_always_lock_free.
1837 * include/bits/atomic_base.h: Same.
1839 2012-08-06 Paolo Carlini <paolo.carlini@oracle.com>
1841 * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
1843 * testsuite/decimal/unary-arith.cc: Likewise.
1844 * testsuite/decimal/ctor.cc: Likewise.
1845 * testsuite/decimal/conversion-to-integral.cc: Likewise.
1846 * testsuite/decimal/make-decimal.cc: Likewise.
1847 * testsuite/decimal/comparison.cc: Likewise.
1848 * testsuite/decimal/incdec-memfunc.cc: Likewise.
1849 * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
1850 * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
1851 * testsuite/decimal/cast_neg.cc: Likewise.
1852 * testsuite/decimal/incdec.cc: Likewise.
1853 * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
1854 * testsuite/decimal/binary-arith.cc: Likewise.
1855 * testsuite/decimal/conversion-from-float.cc: Likewise.
1856 * testsuite/decimal/conversion-from-integral.cc: Likewise.
1857 * testsuite/decimal/compound-assignment.cc: Likewise.
1859 2012-08-06 Peter Bergner <bergner@vnet.ibm.com>
1862 * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
1864 * testsuite/decimal/pr54036-1.cc: New test.
1865 * testsuite/decimal/pr54036-2.cc: Likewise.
1866 * testsuite/decimal/pr54036-3.cc: Likewise.
1868 2012-08-04 Paolo Carlini <paolo.carlini@oracle.com>
1871 2012-08-03 Ollie Wild <aaw@google.com>
1872 Richard Smith <richardsmith@google.com>
1874 * include/bits/stl_map.h (operator[](key_type&&)): Replace
1875 std::make_pair with value_type.
1876 * testsuite/23_containers/map/operators/2.cc: New test.
1878 2012-08-03 François Dumont <fdumont@gcc.gnu.org>
1880 * include/debug/functions.h (__check_partition_lower_aux): Remove
1881 redundant comparison with pivot value.
1882 (__check_partition_upper_aux): Likewise.
1884 2012-08-03 Ollie Wild <aaw@google.com>
1885 Richard Smith <richardsmith@google.com>
1887 * include/bits/stl_map.h (operator[](key_type&&)): Replace
1888 std::make_pair with value_type.
1889 * testsuite/23_containers/map/operators/2.cc: New test.
1891 2012-08-03 Jonathan Wakely <jwakely.gcc@gmail.com>
1893 * include/std/memory: Include auto_ptr.h later.
1894 * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
1896 * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
1898 * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
1899 * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
1900 (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
1901 * include/std/future: Reduce header dependencies.
1902 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1904 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
1905 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1907 2012-07-30 François Dumont <fdumont@gcc.gnu.org>
1909 * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix
1911 (_GLIBCXX_END_NAMESPACE_ALGO): Likewise.
1913 2012-07-29 François Dumont <fdumont@gcc.gnu.org>
1916 * include/bits/hashtable_policy.h
1917 (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
1918 to boost growth in the number of buckets.
1919 * testsuite/performance/23_containers/insert/unordered_set.cc: New.
1921 2012-07-25 François Dumont <fdumont@gcc.gnu.org>
1924 * include/bits/hashtable.h
1925 (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
1926 size_type, ...): Remove std::max usage to guarantee that hashtable
1927 state is consistent with hash policy state.
1928 (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
1929 the hashtable shrinking on next insertion.
1930 * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
1931 * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
1932 * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
1933 * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
1935 2012-07-20 Chip Salzenberg <chip@pobox.com>
1936 Jonathan Wakely <jwakely.gcc@gmail.com>
1939 * include/std/chrono (duration<>::duration): Fix per C++11.
1940 * testsuite/20_util/duration/cons/54025.cc: New.
1941 * testsuite/20_util/duration/cons/constexpr.cc: Adjust.
1943 2012-07-20 Paolo Carlini <paolo.carlini@oracle.com>
1945 * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
1947 2012-07-19 Tristan Gingold <gingold@adacore.com>
1948 Richard Henderson <rth@redhat.com>
1950 * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
1952 * config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
1954 2012-07-18 Paolo Carlini <paolo.carlini@oracle.com>
1957 * testsuite/20_util/pair/noncopyable.cc: New.
1959 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1962 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
1963 NSDMI in C++98 mode too.
1964 * include/ext/rope: Add system_header pragma.
1965 (_Refcount_Base, _Rope_RopeRep): Use NSDMI.
1966 (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.
1968 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1971 * include/bits/alloc_traits.h (allocator_traits): Define static
1973 * include/bits/ptr_traits.h (pointer_traits): Likewise.
1974 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1977 2012-07-13 Paolo Carlini <paolo.carlini@oracle.com>
1980 * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
1982 * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
1983 (const_iterator, _Pair&&)): Constrain with std::is_constructible,
1985 * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
1986 multimap<>::insert(const_iterator, _Pair&&)): Likewise.
1987 * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
1988 _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
1989 * include/debug/unordered_map: Adjust.
1990 * include/debug/map.h: Likewise.
1991 * include/debug/multimap.h: Likewise.
1992 * include/profile/unordered_map: Likewise.
1993 * include/profile/map.h: Likewise.
1994 * include/profile/multimap.h: Likewise.
1996 2012-07-06 Paolo Carlini <paolo.carlini@oracle.com>
1999 * include/std/thread (thread::_M_make_routine): Qualify make_shared
2001 * testsuite/30_threads/thread/adl.cc: New.
2003 2012-07-05 Jonathan Wakely <jwakely.gcc@gmail.com>
2005 * include/std/condition_variable: Update copyright years.
2007 2012-07-04 Jonathan Wakely <jwakely.gcc@gmail.com>
2010 * include/std/condition_variable (condition_variable_any::wait):
2011 Move _Unlock type to class scope.
2012 (condition_variable_any::wait_until): Reuse it.
2013 * testsuite/30_threads/condition_variable_any/53830.cc: New.
2015 2012-07-04 Matthias Klose <doko@ubuntu.com>
2017 * testsuite/28_regex/headers/04_header: Remove empty directory.
2018 * testsuite/28_regex/algorithms/02_match: Likewise.
2020 2012-07-03 Paolo Carlini <paolo.carlini@oracle.com>
2023 * include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
2024 ratio_subtract): Use template aliases.
2025 * include/std/chrono (duration<>::duration(const duration<>&),
2026 duration_cast): Adjust.
2027 * testsuite/20_util/ratio/operations/53840.cc: New.
2028 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
2029 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
2030 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
2031 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
2033 2012-07-02 Paolo Carlini <paolo.carlini@oracle.com>
2036 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
2039 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
2041 (_List_base<>::_List_impl, _List_base<>::_M_get_node,
2042 _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
2043 list<>::size, list<>::swap, list<>::splice): Use it.
2044 (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
2045 * include/bits/list.tcc (list<>::erase): Likewise.
2046 (list<>::merge): Adjust in C++0x mode.
2047 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2048 Adjust dg-error line number.
2049 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2051 * testsuite/23_containers/list/requirements/dr438/
2052 constructor_1_neg.cc: Likewise.
2053 * testsuite/23_containers/list/requirements/dr438/
2054 constructor_2_neg.cc: Likewise.
2056 2012-06-27 Benjamin Kosnik <bkoz@redhat.com>
2058 * include/bits/c++config: Remove __regex nested namespace.
2059 * include/bits/regex_compiler.h: Change __regex to
2060 __detail. Adjust doxygen markup, add regex-details group.
2061 * include/bits/regex_constants.h: Same.
2062 * include/bits/regex_cursor.h: Same.
2063 * include/bits/regex_error.h: Same.
2064 * include/bits/regex_grep_matcher.h: Same.
2065 * include/bits/regex_grep_matcher.tcc: Same.
2066 * include/bits/regex_nfa.h: Same.
2067 * include/bits/regex_nfa.tcc: Same.
2068 * include/bits/regex.h: Same. Remove static from global constants.
2070 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
2072 * include/bits/locale_classes.tcc: Add use_facet, has_facet to
2075 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net>
2077 * include/tr2/bool_set (count, size, num_blocks, empty, max_size):
2080 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net>
2082 * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size):
2085 2012-06-25 Benjamin Kosnik <bkoz@redhat.com>
2087 * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
2089 2012-06-24 Benjamin Kosnik <bkoz@redhat.com>
2091 * testsuite/28_regex/algorithms/02_match: To...
2092 * testsuite/28_regex/algorithms/match: ...this.
2093 * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
2096 2012-06-18 Jörg Sonnenberger <joerg@britannica.bec.de>
2097 Jonathan Wakely <jwakely.gcc@gmail.com>
2100 * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
2101 * testsuite/22_locale/ctype_base/53678.cc: New.
2103 2012-06-15 Jonathan Wakely <jwakely.gcc@gmail.com>
2106 * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
2107 narrowing conversion.
2108 * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
2110 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2113 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
2114 NSDMI in C++11 mode.
2115 * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
2116 destructor when initialized by function.
2118 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2121 * include/std/tuple (__empty_not_final): Do not use EBO for tuples.
2122 * testsuite/20_util/tuple/53648.cc: New.
2123 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
2126 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2128 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
2130 2012-06-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2132 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
2134 2012-05-31 Benjamin Kosnik <bkoz@redhat.com>
2137 * include/bits/hashtable_policy.h (_Insert::__is_convertible):
2138 Rename to __is_conv to avoid clash with clang built-in.
2140 2012-05-29 François Dumont <fdumont@gcc.gnu.org>
2142 * include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
2143 (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
2144 with iterator returning rvalue.
2145 * testsuite/25_algorithms/stable_sort/3.cc: New.
2147 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
2150 * testsuite/26_numerics/headers/cmath/53503.cc: New.
2152 2012-05-22 Dodji Seketeli <dodji@redhat.com>
2155 * include/bits/stl_algobase.h (lower_bound)
2156 (lexicographical_compare): Do not declare unused local typedefs
2157 here when Concepts are turned off.
2159 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
2161 * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
2162 * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
2163 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
2165 * testsuite/23_containers/unordered_map/observers.cc: Likewise.
2166 * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
2167 * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
2168 * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
2169 * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
2170 * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
2171 * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
2172 * testsuite/23_containers/unordered_set/observers.cc: Likewise.
2173 * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
2174 * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
2175 * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
2176 * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
2177 * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
2179 * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
2181 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
2184 * testsuite/23_containers/array/cons/53361.cc: New.
2186 2012-05-17 Paolo Carlini <paolo.carlini@oracle.com>
2189 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
2190 dg-error line number.
2192 2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
2194 * configure: Regenerated.
2196 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
2199 * include/bits/hashtable_policy.h (__detail::_Identity,
2200 __detail::_Select1st): Add.
2201 (_Map_base, _Hashtable_base): Use the latter, adjust parameters.
2202 * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
2203 * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
2205 * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
2207 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
2208 Unconditionally derive from unary_function.
2209 * include/ext/functional (identity, select1st, select2nd): Remove
2210 #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
2211 * testsuite/23_containers/unordered_map/requirements/53339.cc: New.
2212 * testsuite/23_containers/unordered_multimap/requirements/
2215 2012-05-11 François Dumont <fdumont@gcc.gnu.org>
2218 * include/debug/safe_iterator.h (__gnu_debug::__base): Move...
2219 * include/debug/functions.h: ... Here.
2220 (__check_sorted_aux): Add overload for random access safe
2222 (__check_partition_lower_aux): New.
2223 (__check_partition_lower): Use latter.
2224 (__check_partition_upper_aux): New.
2225 (__check_partition_upper): Use latter.
2226 * include/debug/macros.h (__glibcxx_check_heap)
2227 (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range.
2229 2012-05-10 DJ Delorie <dj@redhat.com>
2231 * include/bits/random.tcc (seed_seq::generate): Cast max()
2232 operands to size_t to ensure a template match.
2233 * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
2234 size_t to ensure a template match.
2236 2012-05-03 Benjamin Kosnik <bkoz@redhat.com>
2238 * scripts/testsuite_flags.in (cxxflags): Remove
2239 -ftrack-macro-expansion=0.
2241 2012-05-03 Jonathan Wakely <jwakely.gcc@gmail.com>
2243 * doc/xml/faq.xml: Update outdated allocator documentation.
2244 * doc/xml/manual/allocator.xml: Likewise.
2245 * doc/xml/manual/debug.xml: Likewise.
2246 * doc/xml/manual/evolution.xml: Likewise.
2247 * doc/xml/manual/using.xml: Likewise.
2249 2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
2252 * include/bits/basic_ios.h: Add tparam markup for
2253 * doxygen. include/bits/basic_string.h: Same.
2254 * include/bits/forward_list.h: Same.
2255 * include/bits/stl_bvector.h: Same.
2256 * include/bits/stl_deque.h: Same.
2257 * include/bits/stl_list.h: Same. include/bits/stl_map.h:
2258 * Same. include/bits/stl_multimap.h: Same.
2259 * include/bits/stl_multiset.h: Same.
2260 * include/bits/stl_pair.h: Same.
2261 * include/bits/stl_queue.h: Same.
2262 * include/bits/stl_set.h: Same.
2263 * include/bits/stl_stack.h: Same.
2264 * include/bits/stl_vector.h: Same.
2265 * include/bits/unordered_map.h: Same.
2266 * include/bits/unordered_set.h: Same. include/std/array:
2267 * Same. include/std/atomic: Same. include/std/fstream:
2268 * Same. include/std/istream: Same. include/std/ostream:
2269 * Same. include/std/sstream: Same.
2270 * include/std/streambuf: Same.
2271 * testsuite/23_containers/deque/requirements/dr438/*:
2272 Adjust line numbers.
2273 * testsuite/23_containers/list/requirements/dr438/*: Same.
2274 * testsuite/23_containers/vector/requirements/dr438/*: Same.
2276 2012-05-02 DJ Delorie <dj@redhat.com>
2278 * crossconfig.m4: Since we know that all TPF builds are cross-
2279 builds and cannot run configuration-time link tests, do not
2280 allow it; just go with known supported linker options.
2281 * configure: Regenerate (called as GLIBCXX_CROSSCONFIG).
2283 2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
2285 * include/bits/hashtable_policy.h: Correct namepace nesting for
2286 _Hashtable forward declaration.
2288 2012-05-01 François Dumont <fdumont@gcc.gnu.org>
2291 * include/bits/hashtable.h
2292 (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
2293 after insertion of several equivalent elements.
2294 * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
2295 * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
2297 2012-04-29 Marc Glisse <marc.glisse@inria.fr>
2298 Paolo Carlini <paolo.carlini@oracle.com>
2301 * include/bits/stl_algobase.h (__lg<>(_Size)): Remove.
2302 (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long),
2303 __lg(long long), __lg(unsigned long long)): Define constexpr.
2304 * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm
2307 (linear_congruential): Remove FIXME static_assert.
2308 * include/bits/random.tcc (_Mod<>): Adjust.
2309 * testsuite/26_numerics/random/linear_congruential_engine/operators/
2312 2012-04-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2314 * include/std/functional (function::function(F)): LWG 2132: Disable
2315 constructor if argument isn't callable.
2316 * testsuite/20_util/function/cons/callable.cc: New.
2318 2012-04-29 Marc Glisse <marc.glisse@inria.fr>
2321 * include/std/limits (numeric_limits<>::is_modulo): False for
2324 2012-04-25 Benjamin Kosnik <bkoz@redhat.com>
2326 * include/bits/hashtable.h: Adjust doxygen markup for base
2328 * include/bits/hashtable_policy.h: Same.
2330 2012-04-25 Benjamin Kosnik <bkoz@redhat.com>
2333 * testsuite/17_intro/static.cc: Fix.
2334 * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New.
2335 * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New.
2337 2012-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
2339 * include/std/scoped_allocator (scoped_allocator::__outermost): Do
2340 not pass non-POD to varargs function.
2341 * testsuite/20_util/scoped_allocator/1.cc: Fix test.
2343 2012-04-24 Benjamin Kosnik <bkoz@redhat.com>
2346 * testsuite/17_intro/static.cc: New.
2348 2012-04-23 Daniel Krugler <daniel.kruegler@gmail.com>
2350 * include/std/type_traits (is_nothrow_destructible): Implement.
2351 (is_destructible): Implement LWG 2049.
2352 * testsuite/util/testsuite_tr1.h: Add tests.
2353 * testsuite/20_util/is_nothrow_destructible/value.cc: New.
2354 * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
2355 * testsuite/20_util/is_nothrow_destructible/requirements/
2356 explicit_instantiation.cc: Likewise.
2357 * testsuite/20_util/is_destructible/value.cc: Adjust and extend.
2358 * testsuite/20_util/is_default_constructible/value.cc: Tweak.
2359 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
2360 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2361 dg-error line numbers.
2362 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2364 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2366 2012-04-23 Paolo Carlini <paolo.carlini@oracle.com>
2369 * include/std/array (tuple_element, get): static_assert I < N.
2370 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
2372 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
2373 * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
2375 2012-04-23 Chris Jefferson <chris@bubblescope.net>
2378 * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
2380 * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
2382 2012-04-22 Paolo Carlini <paolo.carlini@oracle.com>
2385 * include/bits/hashtable_policy.h: Change inheritances to public.
2386 * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
2387 * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
2389 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2391 * include/ext/alloc_traits.h (__alloc_traits::difference_type):
2394 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2397 * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
2398 * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
2401 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2403 * include/debug/forward_list (forward_list::splice_after): Check
2404 allocators are equal.
2405 * src/c++11/debug.cc: Fix spelling.
2406 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
2408 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
2410 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
2413 2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
2416 * include/std/type_traits (is_explicitly_convertible): Remove.
2417 * testsuite/20_util/is_explicitly_convertible: Likewise.
2418 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2419 Adjust dg-error line numbers.
2420 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2422 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2424 2012-04-17 Benjamin Kosnik <bkoz@redhat.com>
2426 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
2429 2012-04-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2431 * testsuite/util/testsuite_abi.cc (compare_symbols): Change
2432 summary header to avoid confusion with DejaGnu header.
2434 2012-04-15 Paolo Carlini <paolo.carlini@oracle.com>
2437 * include/std/type_traits (is_trivially_destructible): Add.
2438 (has_trivial_destructor): Remove.
2439 * testsuite/util/testsuite_common_types.h: Adjust.
2440 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
2441 * testsuite/20_util/pair/requirements/dr801.cc: Likewise.
2442 * testsuite/20_util/is_trivially_destructible/value.cc: New.
2443 * testsuite/20_util/is_trivially_destructible/requirements/
2444 typedefs.cc: Likewise.
2445 * testsuite/20_util/is_trivially_destructible/requirements/
2446 explicit_instantiation.cc: Likewise.
2447 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2448 Adjust dg-error line numbers.
2449 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2451 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2453 2012-04-14 Paolo Carlini <paolo.carlini@oracle.com>
2456 * include/bits/random.tcc (independent_bits_engine<>::operator()())
2457 Avoid various overflows; use common_type on result_type and
2458 _RandomNumberEngine::result_type; avoid floating point computations;
2459 other smaller tweaks.
2461 * include/bits/random.tcc (uniform_int_distribution<>::operator())
2462 Use common_type; assume _UniformRandomNumberGenerator::result_type
2465 * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
2466 __lg(unsigned long long)): Add.
2468 2012-04-14 Alan Modra <amodra@gmail.com>
2471 * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
2472 glibcxx_cv_atomic_long_long.
2473 * configure: Regenerate.
2475 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
2477 * testsuite/26_numerics/cmath/51083.cc: Move...
2478 * testsuite/26_numerics/headers/cmath/51083.cc: ... here.
2480 2012-04-13 Laurent Alfonsi <laurent.alfonsi@st.com>
2483 * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer.
2485 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
2487 * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
2488 _S_Is_Beginnest): Add.
2489 * include/debug/forward_list (_BeforeBeginHelper<>::
2490 _S_Is_Beginnest): Likewise.
2491 (_Safe_iterator<>::_M_is_beginnest): Add.
2492 * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
2494 * testsuite/23_containers/forward_list/debug/splice_after.cc:
2497 2012-04-12 Benjamin Kosnik <bkoz@redhat.com>
2499 * include/bits/unordered_map.h (__unordered_map): Remove.
2500 (__unordered_multimap): Remove.
2501 Add aliases for __umap_traits, __umap_hashtable, __ummap_traits,
2503 (unordered_map): Derive from __umap_hashtable.
2504 (unordered_multimap): Derive from __ummap_hashtable.
2505 * include/bits/unordered_set.h (__unordered_set): Remove.
2506 (__unordered_multiset): Remove.
2507 Add aliases for __uset_traits, __uset_hashtable, __umset_traits,
2509 (unordered_set): Derive from __uset_hashtable.
2510 (unordered_multiset): Derive from __umset_hashtable.
2511 * include/bits/hashtable.h (__cache_default): New, consolidated
2512 cache defaults for _Hashtable. Adjust comments for doxygen.
2513 (_Hashtable): Consolidate bool template parameters into new,
2514 _Traits class. Inherited base classes synthesize _Hashtable in
2515 CRTP via original 10 parameters. Prefer using declarations to
2516 typedefs, add __node_type, __bucket_type, etc. Push many nested
2517 types down hierarchy to _Hashtable_base. Add constructors
2518 necessary for top-level unordered_containers. Consolidate insert
2519 member functions and logic in new base class, __detail::_Insert
2520 and __detail::_Insert_base.
2521 (_Hashtable::operator=(initializer_list)): Add.
2522 * include/bits/hashtable_policy.h: Convert to doxygen markup.
2523 (_Hashtable_traits) New. Consolidate bool template parameters here.
2524 (_Insert, _Insert_base): New, consolidated insert member functions.
2525 (_Map_base, _Equality, _Rehash_base): Adjust template parameters,
2527 (_Hashtable_base): Move type declarations useful to other base
2528 classes into this class.
2529 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
2530 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2531 Adjust traits, line numbers.
2533 2012-04-12 Jeffrey Yasskin <jyasskin@google.com>
2536 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
2537 (__find_if_not_n): Like __find_if_not, but works on and updates a
2538 counted range instead of a bounded range.
2539 (stable_partition): Guarantee !__pred(*__first) in call to
2540 __stable_partition_adaptive() or __inplace_stable_partition().
2541 (__stable_partition_adaptive): Use new precondition to avoid
2542 moving/copying objects onto themselves. Guarantee new
2543 precondition to recursive calls.
2544 (__inplace_stable_partition): Use new precondition to simplify
2545 base case, remove __last parameter. Guarantee new precondition to
2547 * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
2548 Test a sequence that starts with a value matching the predicate.
2549 * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
2550 vectors, which have a destructive self-move-assignment.
2552 2012-04-12 Andreas Schwab <schwab@linux-m68k.org>
2554 * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
2556 * testsuite/Makefile.in: Regenerated.
2558 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
2561 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
2562 In C++11 mode do not derive from std::unary_function.
2563 * include/ext/functional (identity, select1st, select2nd): Adjust.
2564 * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
2565 * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
2567 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2570 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
2571 user-defined destructor.
2572 (_Sp_counted_inplace): Likewise.
2573 * testsuite/20_util/shared_ptr/cons/52924.cc: New.
2574 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
2577 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2579 * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
2580 Re-arrange text slightly.
2582 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2584 * testsuite/performance/30_threads/future/polling.cc: Adjust.
2586 2012-04-11 Paolo Carlini <paolo.carlini@oracle.com>
2588 * include/bits/forward_list.h (splice_after(const_iterator,
2589 forward_list&), splice_after(const_iterator, forward_list&,
2590 const_iterator), splice_after(const_iterator, forward_list&,
2591 const_iterator, const_iterator), merge(forward_list&),
2592 merge(forward_list&, _Comp)): Add per C++11 as published (and
2594 * include/debug/forward_list: Adjust.
2596 * include/bits/forward_list.h (splice_after(const_iterator,
2597 forward_list&&, const_iterator)): Only declare.
2598 (_M_transfer_after): Remove.
2599 (_M_splice_after(const_iterator, forward_list&&)): Change signature.
2600 (splice_after(const_iterator, forward_list&&, const_iterator,
2601 const_iterator)): Use the latter.
2602 * include/bits/forward_list.tcc (splice_after(const_iterator,
2603 forward_list&&, const_iterator)): Define here.
2604 (_M_splice_after): Define, use throughout.
2606 * include/bits/forward_list.h (insert_after(const_iterator,
2607 std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
2608 _InputIterator, _InputIterator).
2609 * include/bits/forward_list.tcc: Remove definition.
2611 * testsuite/23_containers/forward_list/modifiers/6.cc: New.
2612 * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
2614 2012-04-11 Paolo Carlini <paolo.carlini@oracle.com>
2617 * include/bits/functional_hash.h (struct hash): Remove definition.
2618 * testsuite/20_util/hash/52931.cc: New.
2620 2012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2623 * testsuite/lib/prune.exp: Handle caret.
2625 2012-04-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2628 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2631 * src/c++98/compatibility-list.cc: Same.
2633 2012-04-05 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2636 * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
2638 * src/Makefile.in: Adjust as per above.
2640 2012-04-04 Uros Bizjak <ubizjak@gmail.com>
2643 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2646 * src/c++98/compatibility-ldbl.cc: Guard with PIC
2648 2012-04-02 Tristan Gingold <gingold@adacore.com>
2650 * crossconfig.m4 (*-*-*vms*): Add.
2651 * configure: Regenerate.
2653 2012-04-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2656 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
2657 to _M_move_assign depending on whether allocator is moved.
2658 (vector::_M_move_assign): Add overloaded functions.
2659 * testsuite/23_containers/vector/52591.cc: New.
2660 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2661 Adjust dg-error line number.
2662 * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
2664 * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
2666 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2669 2012-04-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2671 * include/std/functional (__callable_functor): Overload for
2672 volatile-qualified pointers.
2673 * testsuite/20_util/function/10.cc: New.
2675 2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
2676 Paolo Carlini <paolo.carlini@oracle.com>
2679 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
2680 -> emplace_front, and likewise for *_back.
2681 * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
2682 * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
2683 * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
2685 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2688 * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2689 * libsupc++/Makefile.in: Regenerated.
2690 * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2691 (libstdc___la_SOURCES): Add in compatiblity files, with content
2692 that varies with -DPIC.
2693 * src/Makefile.in: Regenerated.
2694 * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2695 * src/c++11/Makefile.in: Regenerated.
2696 * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
2697 * src/c++11/compatibility-c++0x.cc: Same.
2698 * src/c++11/future.cc: Consolidate compatibility bits into..
2699 * src/c++11/mutex.cc: Consolidate compatibility bits into..
2700 * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
2701 * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2702 * src/c++98/Makefile.in: Regenerated.
2703 * src/c++98/compatibility-ldbl.cc: Guard with PIC
2704 * src/c++98/compatibility-list-2.cc: Same.
2705 * src/c++98/compatibility-list.cc: Same.
2706 * src/c++98/compatibility.cc: Tweak comments.
2708 2012-03-28 Terry Guo <terry.guo@arm.com>
2710 * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
2711 * testsuite/Makefile.in: Regenerated.
2713 2012-03-27 Jonathan Wakely <jwakely.gcc@gmail.com>
2715 * include/std/functional (mem_fn): Qualify to prevent ADL.
2716 * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
2718 2012-03-27 Jonathan Wakely <jwakely.gcc@gmail.com>
2720 * include/std/type_traits (result_of): Fix handling of cv-quals.
2721 * testsuite/20_util/result_of/1.cc: New.
2722 * testsuite/20_util/result_of/2.cc: New.
2723 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
2725 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2727 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2730 2012-03-23 David S. Miller <davem@davemloft.net>
2732 * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
2734 2012-03-23 Benjamin Kosnik <bkoz@redhat.com>
2736 * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
2737 * testsuite/lib/libstdc++.exp: Same.
2739 2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
2741 * include/bits/forward_list.h: Slightly tweak two comments.
2743 2012-03-22 Benjamin Kosnik <bkoz@redhat.com>
2745 * doc/Makefile.am: XML output names have only .xml suffix.
2746 * doc/Makefile.in: Regenerate.
2748 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
2750 * include/std/array (array<>::at(size_type) const): Fix version
2751 for undefined __EXCEPTIONS.
2753 2013-03-21 Andreas Tobler <andreast@fgznet.ch>
2755 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
2756 Skip this test on powerpc64-*-freebsd*.
2758 2012-03-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2760 * include/bits/stl_list.h (list::_M_size): Use NSDMI.
2761 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2762 Adjust line numbers.
2763 * testsuite/23_containers/list/requirements/dr438/
2764 constructor_1_neg.cc: Likewise.
2765 * testsuite/23_containers/list/requirements/dr438/
2766 constructor_2_neg.cc: Likewise.
2767 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2770 2012-03-19 Paweł Sikora <pawel.sikora@agmk.net>
2773 * include/Makefile.am (c++config.h): Fix sed rule to not break
2774 the _GLIBCXX_EXTERN_TEMPLATE redefinition.
2775 * include/Makefile.in: Regenerate.
2777 2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2779 * testsuite/Makefile.in: Regenerate.
2781 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
2783 * include/bits/allocator.h (std::allocator): Base class is
2785 (uses_allocator): Add to sub-grouping.
2786 * include/ext/new_allocator.h: Doxygen markup for tparm.
2788 * config/allocator/bitmap_allocator_base.h: Use __allocator_base
2789 template alias in C++11.
2790 * config/allocator/malloc_allocator_base.h: Same.
2791 * config/allocator/mt_allocator_base.h: Same.
2792 * config/allocator/new_allocator_base.h: Same.
2793 * config/allocator/pool_allocator_base.h: Same.
2795 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
2797 * include/ext/pb_ds/detail/pat_trie_/
2798 constructors_destructor_fn_imps.hpp: Increment after recursion.
2799 * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
2800 node_type markup from brief.
2802 2012-03-16 François Dumont <fdumont@gcc.gnu.org>
2805 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
2806 (_Hashtable<>::_M_rehash): Use the latter.
2807 * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
2808 * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
2810 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2812 * config/os/solaris/solaris2.8: Rename to ...
2813 * config/os/solaris/solaris2.9: ... this.
2814 * config/abi/post/solaris2.8: Rename to ...
2815 * config/abi/post/solaris2.9: ... this.
2816 * configure.host (os_include_dir): Remove solaris2.8.
2818 (abi_baseline_pair): Remove *-*-solaris2.8.
2821 * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
2822 (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2823 * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
2824 (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2825 (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
2826 * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
2828 * configure: Regenerate.
2829 * config.h.in: Regenerate.
2831 * config/os/solaris/solaris2.9/os_defines.h
2832 (__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
2833 (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
2834 * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
2835 to __CORRECT_ISO_CPP_MATH_H_PROTO.
2836 [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
2837 * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
2838 __CORRECT_ISO_CPP_MATH_H_PROTO.
2840 * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
2841 Remove Solaris 8 reference.
2843 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
2844 Don't xfail on *-*-solaris2.8.
2845 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
2847 * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
2850 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2852 * configure.host (irix6.5*): Remove.
2853 * config/os/irix: Remove.
2854 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
2855 [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
2857 * doc/xml/faq.xml: Remove IRIX reference.
2858 * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
2859 Remove IRIX example.
2861 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
2862 Remove mips-sgi-irix6* handling.
2863 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2864 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
2865 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
2866 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
2867 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
2868 * testsuite/23_containers/list/pthread1.cc: Likewise.
2869 * testsuite/23_containers/list/pthread5.cc: Likewise.
2870 * testsuite/23_containers/map/pthread6.cc: Likewise.
2871 * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
2872 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
2873 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
2874 * testsuite/30_threads/async/42819.cc: Likewise.
2875 * testsuite/30_threads/async/49668.cc: Likewise.
2876 * testsuite/30_threads/async/any.cc: Likewise.
2877 * testsuite/30_threads/async/async.cc: Likewise.
2878 * testsuite/30_threads/async/launch.cc: Likewise.
2879 * testsuite/30_threads/async/sync.cc: Likewise.
2880 * testsuite/30_threads/call_once/39909.cc: Likewise.
2881 * testsuite/30_threads/call_once/49668.cc: Likewise.
2882 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2883 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2884 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2885 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2886 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
2888 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
2889 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2890 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2891 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2892 * testsuite/30_threads/future/cons/move.cc: Likewise.
2893 * testsuite/30_threads/future/members/45133.cc: Likewise.
2894 * testsuite/30_threads/future/members/get.cc: Likewise.
2895 * testsuite/30_threads/future/members/get2.cc: Likewise.
2896 * testsuite/30_threads/future/members/share.cc: Likewise.
2897 * testsuite/30_threads/future/members/valid.cc: Likewise.
2898 * testsuite/30_threads/future/members/wait.cc: Likewise.
2899 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2900 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2901 * testsuite/30_threads/lock/1.cc: Likewise.
2902 * testsuite/30_threads/lock/2.cc: Likewise.
2903 * testsuite/30_threads/lock/3.cc: Likewise.
2904 * testsuite/30_threads/lock/4.cc: Likewise.
2905 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2906 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2907 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2908 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2909 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2910 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
2911 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2912 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2913 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2914 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
2915 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2916 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2917 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
2918 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2919 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2920 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2921 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2922 * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
2923 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2924 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
2925 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
2926 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
2927 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2928 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
2929 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2930 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2931 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2932 * testsuite/30_threads/promise/cons/1.cc: Likewise.
2933 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
2934 * testsuite/30_threads/promise/cons/move.cc: Likewise.
2935 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2936 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2937 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
2938 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
2939 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
2940 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2941 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2942 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2943 * testsuite/30_threads/promise/members/swap.cc: Likewise.
2944 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2945 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2947 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2948 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2949 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
2951 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2952 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2953 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2954 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2955 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2957 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2958 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2959 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2961 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
2963 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2964 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2965 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2967 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2969 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2971 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2973 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2975 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2976 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
2977 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2978 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2979 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2980 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2981 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
2982 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2983 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2984 * testsuite/30_threads/this_thread/1.cc: Likewise.
2985 * testsuite/30_threads/this_thread/2.cc: Likewise.
2986 * testsuite/30_threads/this_thread/3.cc: Likewise.
2987 * testsuite/30_threads/this_thread/4.cc: Likewise.
2988 * testsuite/30_threads/thread/cons/1.cc: Likewise.
2989 * testsuite/30_threads/thread/cons/2.cc: Likewise.
2990 * testsuite/30_threads/thread/cons/3.cc: Likewise.
2991 * testsuite/30_threads/thread/cons/4.cc: Likewise.
2992 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
2993 * testsuite/30_threads/thread/cons/5.cc: Likewise.
2994 * testsuite/30_threads/thread/cons/6.cc: Likewise.
2995 * testsuite/30_threads/thread/cons/7.cc: Likewise.
2996 * testsuite/30_threads/thread/cons/8.cc: Likewise.
2997 * testsuite/30_threads/thread/cons/9.cc: Likewise.
2998 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
2999 * testsuite/30_threads/thread/members/1.cc: Likewise.
3000 * testsuite/30_threads/thread/members/2.cc: Likewise.
3001 * testsuite/30_threads/thread/members/3.cc: Likewise.
3002 * testsuite/30_threads/thread/members/4.cc: Likewise.
3003 * testsuite/30_threads/thread/members/5.cc: Likewise.
3004 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3005 * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
3006 * testsuite/30_threads/thread/swap/1.cc: Likewise.
3007 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3008 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3009 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3010 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3011 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3012 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3013 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3014 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3015 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3016 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3017 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3018 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3019 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3020 * testsuite/30_threads/try_lock/1.cc: Likewise.
3021 * testsuite/30_threads/try_lock/2.cc: Likewise.
3022 * testsuite/30_threads/try_lock/3.cc: Likewise.
3023 * testsuite/30_threads/try_lock/4.cc: Likewise.
3024 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3025 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3026 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3027 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3028 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3029 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3030 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3031 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3032 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3033 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3034 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3035 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3036 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3037 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3038 default_weaktoshared.cc: Likewise.
3039 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3040 mutex_weaktoshared.cc: Likewise.
3042 * testsuite/23_containers/vector/capacity/resize/1.cc: Remove
3043 dg-options for mips*-*-irix6*.
3045 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
3046 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
3047 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
3049 * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
3052 2012-03-14 Paolo Carlini <paolo.carlini@oracle.com>
3054 * include/bits/forward_list.h: Fix comments.
3056 2012-03-13 Terry Guo <terry.guo@arm.com>
3058 * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New.
3060 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3062 * configure.host: Remove osf* handling.
3063 * config/os/osf: Remove.
3064 * doc/xml/manual/using.xml: Remove OSF reference.
3066 * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling.
3067 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
3068 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
3069 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
3070 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
3071 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
3072 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
3073 * testsuite/23_containers/list/pthread1.cc: Likewise.
3074 * testsuite/23_containers/list/pthread5.cc: Likewise.
3075 * testsuite/23_containers/map/pthread6.cc: Likewise.
3076 * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
3077 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
3078 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
3079 * testsuite/30_threads/async/42819.cc: Likewise.
3080 * testsuite/30_threads/async/49668.cc: Likewise.
3081 * testsuite/30_threads/async/any.cc: Likewise.
3082 * testsuite/30_threads/async/async.cc: Likewise.
3083 * testsuite/30_threads/async/launch.cc: Likewise.
3084 * testsuite/30_threads/async/sync.cc: Likewise.
3085 * testsuite/30_threads/call_once/39909.cc: Likewise.
3086 * testsuite/30_threads/call_once/49668.cc: Likewise.
3087 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3088 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
3089 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
3090 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
3091 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
3093 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
3094 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
3095 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
3096 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
3097 * testsuite/30_threads/future/cons/move.cc: Likewise.
3098 * testsuite/30_threads/future/members/45133.cc: Likewise.
3099 * testsuite/30_threads/future/members/get.cc: Likewise.
3100 * testsuite/30_threads/future/members/get2.cc: Likewise.
3101 * testsuite/30_threads/future/members/share.cc: Likewise.
3102 * testsuite/30_threads/future/members/valid.cc: Likewise.
3103 * testsuite/30_threads/future/members/wait.cc: Likewise.
3104 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3105 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3106 * testsuite/30_threads/lock/1.cc: Likewise.
3107 * testsuite/30_threads/lock/2.cc: Likewise.
3108 * testsuite/30_threads/lock/3.cc: Likewise.
3109 * testsuite/30_threads/lock/4.cc: Likewise.
3110 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3111 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3112 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3113 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3114 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3115 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3116 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3117 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3118 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3119 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
3120 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
3121 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
3122 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
3123 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
3124 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
3125 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
3126 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
3127 * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
3128 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
3129 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
3130 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
3131 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
3132 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
3133 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
3134 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
3135 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
3136 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
3137 * testsuite/30_threads/promise/cons/1.cc: Likewise.
3138 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
3139 * testsuite/30_threads/promise/cons/move.cc: Likewise.
3140 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
3141 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
3142 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
3143 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
3144 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
3145 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
3146 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3147 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3148 * testsuite/30_threads/promise/members/swap.cc: Likewise.
3149 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
3150 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
3152 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
3153 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
3154 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
3156 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
3157 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
3158 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
3159 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
3160 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
3162 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
3163 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
3164 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
3166 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
3168 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
3169 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
3170 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
3172 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
3174 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
3176 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
3178 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
3180 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
3181 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
3182 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
3183 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
3184 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
3185 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
3186 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
3187 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3188 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3189 * testsuite/30_threads/this_thread/1.cc: Likewise.
3190 * testsuite/30_threads/this_thread/2.cc: Likewise.
3191 * testsuite/30_threads/this_thread/3.cc: Likewise.
3192 * testsuite/30_threads/this_thread/4.cc: Likewise.
3193 * testsuite/30_threads/thread/cons/1.cc: Likewise.
3194 * testsuite/30_threads/thread/cons/2.cc: Likewise.
3195 * testsuite/30_threads/thread/cons/3.cc: Likewise.
3196 * testsuite/30_threads/thread/cons/4.cc: Likewise.
3197 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
3198 * testsuite/30_threads/thread/cons/5.cc: Likewise.
3199 * testsuite/30_threads/thread/cons/6.cc: Likewise.
3200 * testsuite/30_threads/thread/cons/7.cc: Likewise.
3201 * testsuite/30_threads/thread/cons/8.cc: Likewise.
3202 * testsuite/30_threads/thread/cons/9.cc: Likewise.
3203 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3204 * testsuite/30_threads/thread/members/1.cc: Likewise.
3205 * testsuite/30_threads/thread/members/2.cc: Likewise.
3206 * testsuite/30_threads/thread/members/3.cc: Likewise.
3207 * testsuite/30_threads/thread/members/4.cc: Likewise.
3208 * testsuite/30_threads/thread/members/5.cc: Likewise.
3209 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3210 * testsuite/30_threads/thread/swap/1.cc: Likewise.
3211 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3212 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3213 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3214 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3215 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3216 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3217 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3218 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3219 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3220 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3221 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3222 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3223 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3224 * testsuite/30_threads/try_lock/1.cc: Likewise.
3225 * testsuite/30_threads/try_lock/2.cc: Likewise.
3226 * testsuite/30_threads/try_lock/3.cc: Likewise.
3227 * testsuite/30_threads/try_lock/4.cc: Likewise.
3228 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3229 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3230 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3231 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3232 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3233 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3234 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3235 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3236 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3237 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3238 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3239 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3240 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3241 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3242 default_weaktoshared.cc: Likewise.
3243 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3244 mutex_weaktoshared.cc: Likewise.
3246 2012-03-12 Paolo Carlini <paolo.carlini@oracle.com>
3249 * libsupc++/typeinfo (type_info::name, before, operator==,
3250 operator!=): Mark noexcept in C++11 mode.
3251 * libsupc++/tinfo.cc (type_info::operator==): Adjust.
3252 * libsupc++/tinfo2.cc (type_info::before): Likewise.
3253 * testsuite/18_support/type_info/52562.cc: New.
3255 2012-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3257 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
3258 symbols added in last change.
3261 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
3263 2012-03-09 Andreas Schwab <schwab@linux-m68k.org>
3265 * config/locale/gnu/monetary_members.cc
3266 (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
3268 (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
3269 * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
3272 2012-03-09 Paolo Carlini <paolo.carlini@oracle.com>
3274 * include/debug/formatter.h (enum _Debug_msg_id): Add
3275 __msg_self_move_assign.
3276 * include/debug/macros.h (__glibcxx_check_self_move_assign): Add.
3277 * src/c++11/debug.cc (_S_debug_messages): Update.
3278 * include/debug/safe_iterator.h (_Safe_iterator<>::operator=
3279 (_Safe_iterator&&)): Add check for self move assignment.
3280 * include/debug/set.h: Likewise.
3281 * include/debug/unordered_map: Likewise.
3282 * include/debug/multiset.h: Likewise.
3283 * include/debug/forward_list: Likewise.
3284 * include/debug/unordered_set: Likewise.
3285 * include/debug/vector: Likewise.
3286 * include/debug/map.h: Likewise.
3287 * include/debug/deque: Likewise.
3288 * include/debug/string: Likewise.
3289 * include/debug/list: Likewise.
3290 * include/debug/multimap.h: Likewise.
3291 * testsuite/21_strings/debug/self_move_assign_neg.cc: New.
3292 * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise.
3293 * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
3295 * testsuite/23_containers/unordered_map/debug/
3296 iterator_self_move_assign_neg.cc: Likewise.
3297 * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
3299 * testsuite/23_containers/multimap/debug/
3300 iterator_self_move_assign_neg.cc: Likewise.
3301 * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
3302 * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
3304 * testsuite/23_containers/unordered_multimap/debug/
3305 self_move_assign_neg.cc: Likewise.
3306 * testsuite/23_containers/unordered_multimap/debug/
3307 iterator_self_move_assign_neg.cc: Likewise.
3308 * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
3310 * testsuite/23_containers/forward_list/debug/
3311 iterator_self_move_assign_neg.cc: Likewise.
3312 * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
3314 * testsuite/23_containers/unordered_set/debug/
3315 iterator_self_move_assign_neg.cc: Likewise.
3316 * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
3318 * testsuite/23_containers/vector/debug/
3319 iterator_self_move_assign_neg.cc: Likewise.
3320 * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
3321 * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
3323 * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
3325 * testsuite/23_containers/multiset/debug/
3326 iterator_self_move_assign_neg.cc: Likewise.
3327 * testsuite/23_containers/list/debug/self_move_assign_neg.cc:
3329 * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
3331 * testsuite/23_containers/unordered_multiset/debug/
3332 self_move_assign_neg.cc: Likewise.
3333 * testsuite/23_containers/unordered_multiset/debug/
3334 iterator_self_move_assign_neg.cc: Likewise.
3335 * testsuite/23_containers/map/debug/self_move_assign_neg.cc:
3337 * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
3340 2012-03-08 Benjamin Kosnik <bkoz@redhat.com>
3342 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0.
3343 * include/bits/locale_facets.h: Adjust markup to avoid warnings.
3344 * include/ext/pb_ds/assoc_container.hpp: Same.
3345 * include/ext/pb_ds/priority_queue.hpp: Same.
3346 * include/std/fstream: Same.
3347 * include/std/ratio: Same.
3348 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
3350 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
3352 2012-03-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3355 * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks
3356 to move constructor and move assignment operator.
3358 2012-03-05 Paolo Carlini <paolo.carlini@oracle.com>
3360 * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply
3362 * include/bits/stl_bvector.h (swap(_Bit_reference,
3363 _Bit_reference), swap(_Bit_reference, bool&),
3364 swap(bool&, _Bit_reference)): Add.
3365 * testsuite/23_containers/vector/bool/swap.cc: New.
3367 2012-03-04 Paolo Carlini <paolo.carlini@oracle.com>
3368 Jonathan Wakely <jwakely.gcc@gmail.com>
3371 * include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
3372 * include/ext/vstring.h (__versa_string<>::__versa_string
3373 (_InputIterator, _InputIterator, const _Alloc&),
3374 __versa_string<>::append(_InputIterator, _InputIterator),
3375 __versa_string<>::assign(_InputIterator, _InputIterator),
3376 __versa_string<>::insert(iterator, _InputIterator,
3377 _InputIterator), __versa_string<>::replace(iterator, iterator,
3378 _InputIterator, _InputIterator)): Use it.
3379 * include/bits/stl_list.h (list<>::list(_InputIterator,
3380 _InputIterator, const allocator_type&), list<>::assign(_InputIterator,
3381 _InputIterator), list<>::insert(iterator, _InputIterator,
3382 _InputIterator)): Likewise.
3383 * include/bits/stl_vector.h (vector<>::vector(_InputIterator,
3384 _InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
3385 _InputIterator), vectort<>::insert(iterator, _InputIterator,
3386 _InputIterator)): Likewise.
3387 * include/bits/stl_deque.h (deque<>::deque(_InputIterator,
3388 _InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
3389 _InputIterator), deque<>::insert(iterator, _InputIterator,
3390 _InputIterator)): Likewise.
3391 * include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
3392 _InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
3393 _InputIterator), vector<>::insert(iterator, _InputIterator,
3394 _InputIterator)): Likewise.
3395 * include/bits/forward_list.h (forward_list<>::forward_list
3396 (_InputIterator, _InputIterator, const allocator_type&),
3397 forward_list<>::assign(_InputIterator, _InputIterator),
3398 forward_list<>::insert_after(const_iterator, _InputIterator,
3399 _InputIterator)): Likewise.
3400 (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
3401 (forward_list<>::_M_range_initialize): Add, adjust everywhere.
3402 * include/bits/forward_list.tcc: Adjust.
3403 * include/debug/forward_list: Adjust.
3404 * include/debug/vector: Likewise.
3405 * include/debug/deque: Likewise.
3406 * include/debug/list: Likewise.
3407 * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
3408 * testsuite/23_containers/forward_list/requirements/
3409 do_the_right_thing.cc: Likewise.
3410 * testsuite/23_containers/vector/requirements/
3411 do_the_right_thing.cc: Likewise.
3412 * testsuite/23_containers/deque/requirements/
3413 do_the_right_thing.cc: Likewise.
3414 * testsuite/23_containers/list/requirements/
3415 do_the_right_thing.cc: Likewise.
3416 * testsuite/23_containers/forward_list/requirements/dr438/
3417 assign_neg.cc: Adjust dg-error line number.
3418 * testsuite/23_containers/forward_list/requirements/dr438/
3419 insert_neg.cc: Likewise.
3420 * testsuite/23_containers/forward_list/requirements/dr438/
3421 constructor_1_neg.cc: Likewise.
3422 * testsuite/23_containers/forward_list/requirements/dr438/
3423 constructor_2_neg.cc: Likewise.
3424 * testsuite/23_containers/vector/requirements/dr438/
3425 assign_neg.cc: Likewise.
3426 * testsuite/23_containers/vector/requirements/dr438/
3427 insert_neg.cc: Likewise.
3428 * testsuite/23_containers/vector/requirements/dr438/
3429 constructor_1_neg.cc: Likewise.
3430 * testsuite/23_containers/vector/requirements/dr438/
3431 constructor_2_neg.cc: Likewise.
3432 * testsuite/23_containers/deque/requirements/dr438/
3433 assign_neg.cc: Likewise.
3434 * testsuite/23_containers/deque/requirements/dr438/
3435 insert_neg.cc: Likewise.
3436 * testsuite/23_containers/deque/requirements/dr438/
3437 constructor_1_neg.cc: Likewise.
3438 * testsuite/23_containers/deque/requirements/dr438/
3439 constructor_2_neg.cc: Likewise.
3440 * testsuite/23_containers/list/requirements/dr438/
3441 assign_neg.cc: Likewise.
3442 * testsuite/23_containers/list/requirements/dr438/
3443 insert_neg.cc: Likewise.
3444 * testsuite/23_containers/list/requirements/dr438/
3445 constructor_1_neg.cc: Likewise.
3446 * testsuite/23_containers/list/requirements/dr438/
3447 constructor_2_neg.cc: Likewise.
3449 2012-03-04 Jonathan Wakely <jwakely.gcc@gmail.com>
3452 * include/debug/safe_iterator.h (_Safe_iterator): Add move
3453 constructor and move assignment operator.
3454 * testsuite/23_containers/vector/debug/52433.cc: New.
3456 2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
3458 * include/std/limits (numeric_limits): Fix returns per C++11.
3459 * testsuite/18_support/numeric_limits/primary.cc: New.
3461 2012-03-02 Benjamin Kosnik <bkoz@redhat.com>
3463 * include/c_global/cstdio: Remove extraneous extern.
3464 * include/c_std/cstdio: Same.
3466 2012-03-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3468 * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
3469 * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3470 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
3471 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3472 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3474 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
3475 Ramana Radhakrishnan <ramana@gcc.gnu.org>
3478 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
3479 * configure.ac: Call it.
3480 * configure: Regenerate.
3481 * config.h.in: Same.
3482 * config/os/gnu-linux/os_defines.h: Conditionally undefine
3484 * include/c_global/cstdio: Conditionally declare deprecated gets.
3485 * include/c_std/cstdio: Same.
3487 2012-03-01 Michael Spertus <mike_spertus@symantec.com>
3489 * include/tr2/type_traits (typelist): To __reflection_typelist.
3490 (first, rest, empty): Remove.
3492 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
3494 * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
3495 * testsuite/Makefile.in: Regenerate.
3497 2012-02-29 H.J. Lu <hongjiu.lu@intel.com>
3499 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
3501 2012-02-28 Benjamin Kosnik <bkoz@redhat.com>
3504 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
3505 symbols added into the latest version. Mark tls entities as
3508 2012-02-28 Jakub Jelinek <jakub@redhat.com>
3511 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
3512 if they are at the beginning of lines (with optional whitespace before
3514 * src/Makefile.in: Regenerated.
3516 2012-02-27 Jakub Jelinek <jakub@redhat.com>
3518 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3519 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3520 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3522 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3523 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3524 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3525 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3526 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3527 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3529 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3532 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
3533 Remove ENABLE_SYMVERS_SOL2.
3534 * configure: Regenerate.
3535 * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
3536 Postprocess mapfile.
3537 [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
3538 * src/Makefile.in: Regenerate.
3540 * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
3542 _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
3544 2012-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3547 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
3548 Require atomic builtins.
3549 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
3551 2012-02-23 Jason Merrill <jason@redhat.com>
3553 * include/bits/locale_facets.h (class num_get): Undo reordering of
3554 do_get virtual functions.
3556 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net>
3558 * testsuite/26_numerics/random/
3559 uniform_real_distribution/requirements/typedefs.cc: Check param_type.
3560 * testsuite/26_numerics/random/
3561 piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
3562 * testsuite/26_numerics/random/
3563 chi_squared_distribution/requirements/typedefs.cc: Ditto.
3564 * testsuite/26_numerics/random/
3565 normal_distribution/requirements/typedefs.cc: Ditto.
3566 * testsuite/26_numerics/random/
3567 uniform_int_distribution/requirements/typedefs.cc: Ditto.
3568 * testsuite/26_numerics/random/
3569 poisson_distribution/requirements/typedefs.cc: Ditto.
3570 * testsuite/26_numerics/random/
3571 bernoulli_distribution/requirements/typedefs.cc: Ditto.
3572 * testsuite/26_numerics/random/
3573 discrete_distribution/requirements/typedefs.cc: Ditto.
3574 * testsuite/26_numerics/random/
3575 weibull_distribution/requirements/typedefs.cc: Ditto.
3576 * testsuite/26_numerics/random/
3577 cauchy_distribution/requirements/typedefs.cc: Ditto.
3578 * testsuite/26_numerics/random/
3579 negative_binomial_distribution/requirements/typedefs.cc: Ditto.
3580 * testsuite/26_numerics/random/
3581 gamma_distribution/requirements/typedefs.cc: Ditto.
3582 * testsuite/26_numerics/random/
3583 fisher_f_distribution/requirements/typedefs.cc: Ditto.
3584 * testsuite/26_numerics/random/
3585 exponential_distribution/requirements/typedefs.cc: Ditto.
3586 * testsuite/26_numerics/random/
3587 binomial_distribution/requirements/typedefs.cc: Ditto.
3588 * testsuite/26_numerics/random/
3589 lognormal_distribution/requirements/typedefs.cc: Ditto.
3590 * testsuite/26_numerics/random/
3591 extreme_value_distribution/requirements/typedefs.cc: Ditto.
3592 * testsuite/26_numerics/random/
3593 piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
3594 * testsuite/26_numerics/random/
3595 student_t_distribution/requirements/typedefs.cc: Ditto.
3596 * testsuite/26_numerics/random/
3597 geometric_distribution/requirements/typedefs.cc: Ditto.
3599 2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
3602 * config/abi/pre/gnu.ver: Only one local.
3603 * config/abi/pre/gnu-versioned-namespace.ver: Same.
3605 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
3607 PR libstdc++/52317 (cont)
3608 * include/profile/unordered_map: Ad Library Exception comment.
3609 * include/profile/set: Likewise.
3610 * include/profile/base.h: Likewise.
3611 * include/profile/impl/profiler_list_to_slist.h: Likewise.
3612 * include/profile/impl/profiler_container_size.h: Likewise.
3613 * include/profile/impl/profiler_vector_size.h: Likewise.
3614 * include/profile/impl/profiler_hash_func.h: Likewise.
3615 * include/profile/impl/profiler_trace.h: Likewise.
3616 * include/profile/impl/profiler_list_to_vector.h: Likewise.
3617 * include/profile/impl/profiler_vector_to_list.h: Likewise.
3618 * include/profile/impl/profiler.h: Likewise.
3619 * include/profile/impl/profiler_state.h: Likewise.
3620 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3621 * include/profile/impl/profiler_algos.h: Likewise.
3622 * include/profile/impl/profiler_hashtable_size.h: Likewise.
3623 * include/profile/impl/profiler_node.h: Likewise.
3624 * include/profile/vector: Likewise.
3625 * include/profile/unordered_set: Likewise.
3626 * include/profile/map.h: Likewise.
3627 * include/profile/map: Likewise.
3629 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
3632 * python/Makefile.am: Update boilerplate license text to GPLv3.
3633 * include/profile/unordered_map: Likewise.
3634 * include/profile/set: Likewise.
3635 * include/profile/base.h: Likewise.
3636 * include/profile/impl/profiler_list_to_slist.h: Likewise.
3637 * include/profile/impl/profiler_container_size.h: Likewise.
3638 * include/profile/impl/profiler_vector_size.h: Likewise.
3639 * include/profile/impl/profiler_hash_func.h: Likewise.
3640 * include/profile/impl/profiler_trace.h: Likewise.
3641 * include/profile/impl/profiler_list_to_vector.h: Likewise.
3642 * include/profile/impl/profiler_vector_to_list.h: Likewise.
3643 * include/profile/impl/profiler.h: Likewise.
3644 * include/profile/impl/profiler_state.h: Likewise.
3645 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3646 * include/profile/impl/profiler_algos.h: Likewise.
3647 * include/profile/impl/profiler_hashtable_size.h: Likewise.
3648 * include/profile/impl/profiler_node.h: Likewise.
3649 * include/profile/vector: Likewise.
3650 * include/profile/unordered_set: Likewise.
3651 * include/profile/map.h: Likewise.
3652 * include/profile/map: Likewise.
3653 * testsuite/21_strings/basic_string/numeric_conversions/
3654 wchar_t/dr1261.cc: Likewise.
3655 * testsuite/21_strings/basic_string/numeric_conversions/
3656 char/dr1261.cc: Likewise.
3657 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
3659 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
3662 * src/c++98/tree.cc (local_Rb_tree_increment,
3663 local_Rb_tree_decrement): Add.
3664 (_Rb_tree_increment(const _Rb_tree_node_base*),
3665 _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
3666 (_Rb_tree_increment(_Rb_tree_node_base*),
3667 _Rb_tree_decrement(_Rb_tree_node_base*)): New.
3669 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
3672 * include/bits/hashtable_policy.h (_Equality_base<, true,>::
3673 _M_equal(const _Hashtable&)): Compare values with operator==.
3674 * testsuite/23_containers/unordered_set/operators/52309.cc: New.
3676 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
3678 PR libstdc++/51798 continued.
3679 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
3680 __atomic_, not __sync.
3681 * configure: Regenerated.
3683 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
3686 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
3687 (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
3688 * configure.ac: Use it.
3689 * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
3690 * configure: Regenerate.
3691 * python/Makefile.in: Same.
3692 * Makefile.in: Same.
3693 * doc/Makefile.in: Same.
3694 * include/Makefile.in: Same.
3695 * po/Makefile.in: Same.
3696 * python/Makefile.in: Same.
3697 * src/Makefile.in: Same.
3698 * src/c++11/Makefile.in: Same.
3699 * src/c++98/Makefile.in: Same.
3700 * testsuite/Makefile.in: Same.
3702 2012-02-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3705 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
3706 --enable-libstdcxx-threads.
3707 Disable on Solaris 8/9 with symbol versioning.
3708 * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
3709 GLIBCXX_ENABLE_SYMVERS.
3710 * configure: Regenerate.
3711 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
3713 2012-02-15 DJ Delorie <dj@redhat.com>
3715 * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
3717 2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
3720 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
3721 * configure.ac: Use it.
3722 * python/Makefile.am: Same.
3723 * configure: Regenerate.
3724 * python/Makefile.in: Regenerate.
3725 * Makefile.in: Same.
3726 * doc/Makefile.in: Same.
3727 * include/Makefile.in: Same.
3728 * po/Makefile.in: Same.
3729 * src/Makefile.in: Same.
3730 * src/c++11/Makefile.in: Same.
3731 * src/c++98/Makefile.in: Same.
3732 * testsuite/Makefile.in: Same.
3734 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com>
3736 * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
3738 2012-02-14 Tom Tromey <tromey@redhat.com>
3740 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
3742 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
3744 (Tr1HashtableIterator.update): Remove.
3745 (Tr1HashtableIterator.next): Rewrite.
3747 2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
3749 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3750 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3752 2012-02-13 Richard Henderson <rth@redhat.com>
3754 PR libstdc++/51798 continued.
3755 * include/bits/shared_ptr_base.h
3756 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
3757 outside compare_exchange loop.
3758 * include/tr1/shared_ptr.h: Same.
3759 * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
3760 version of compare_exchange.
3761 (__compare_and_swap_64): Same.
3762 * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
3763 * libsupc++/guard.cc (__cxa_guard_acquire): Same.
3765 2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
3766 Jonathan Wakely <jwakely.gcc@gmail.com>
3768 PR libstdc++/51798 continued.
3769 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
3770 builtins instead of __sync_* builtins for atomic functionality.
3771 * include/bits/shared_ptr_base.h: Same.
3772 * include/parallel/compatibility.h: Same.
3773 * include/profile/impl/profiler_state.h: Same.
3774 * include/tr1/shared_ptr.h: Same.
3775 * libsupc++/eh_ptr.cc: Same.
3776 * libsupc++/eh_throw.cc: Same.
3777 * libsupc++/eh_tm.cc: Same.
3778 * libsupc++/guard.cc: Same.
3779 * configure: Regenerated.
3780 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3781 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3783 2012-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3786 * config/os/osf/ctype_base.h,
3787 config/os/osf/ctype_configure_char.cc,
3788 config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
3789 Copy from config/os/generic.
3790 * config/os/osf/os_defines.h: Likewise.
3791 (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
3793 * configure.host <osf*>: Use os/osf for os_include_dir.
3795 2012-02-10 Uros Bizjak <ubizjak@gmail.com>
3797 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
3799 2012-02-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3801 * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
3803 2012-02-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3805 * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
3807 2012-02-07 Benjamin Kosnik <bkoz@redhat.com>
3809 * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
3810 * doc/xml/manual/documentation_hacking.xml: Update.
3812 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3814 * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
3816 * testsuite/30_threads/call_once/49668.cc: Likewise.
3817 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3818 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3819 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3820 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3821 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3822 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3823 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3824 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3825 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3826 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3827 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3828 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3829 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3830 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3831 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3832 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3833 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3834 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3835 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3836 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3837 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3838 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3840 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3843 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
3844 * src/c++11/condition_variable.cc (condition_variable): Use macro for
3845 initializer function.
3848 * config/os/bsd/darwin/os_defines.h: Disable static initializer for
3851 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com>
3854 * src/c++11/future.cc: Add explicit instantiation.
3856 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
3858 * include/debug/safe_iterator.h
3859 (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
3860 creation of a _Safe_iterator instance to do the check.
3862 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3865 * include/std/future (__future_base::_Async_state_common): Define
3866 destructor inline for targets without TLS.
3867 * src/c++11/future.cc (__future_base::_Async_state_common): Only
3868 define destructor for TLS targets.
3870 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3873 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
3874 (SharedPointerPrinter): This. Also show weak count.
3875 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
3877 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3879 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
3880 PASS instead of XFAIL.
3882 2012-02-05 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
3883 Paolo Carlini <paolo.carlini@oracle.com>
3886 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
3888 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
3891 * testsuite/29_atomics/atomic/cons/49445.cc: Add.
3893 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
3896 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
3897 * testsuite/29_atomics/atomic/operators/51811.cc: New.
3898 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
3900 2012-02-03 Jakub Jelinek <jakub@redhat.com>
3902 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3903 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3904 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3906 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3907 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3908 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3909 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3910 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3911 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3913 2012-02-02 Benjamin Kosnik <bkoz@redhat.com>
3916 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
3917 libc__11_la_SOURCES): Remove.
3918 * src/c++11/Makefile.in: Regenerate.
3919 * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
3920 libc__98_la_SOURCES): Remove.
3921 * src/c++98/Makefile.in: Regenerate.
3923 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
3926 * include/std/future (__future_base::_State_base::wait()): Use lambda
3927 expression for predicate and remove redundant test.
3928 (__future_base::_State_base::wait_for()): Return future_status and
3929 use lambda expression for predicate.
3930 (__future_base::_State_base::wait_until()): Likewise.
3931 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
3932 (__future_base::_Async_state): Replace with _Async_state_common
3933 class for non-dependent functionality and _Async_state_impl class
3934 template for dependent functionality.
3935 (__future_base::_Async_state_common::_M_join): Serialize attempts to
3937 (__future_base::_Async_state_common::_M_run_deferred): Join.
3938 (__future_base::_Async_state::_M_do_run): Replace with lambda.
3939 * src/c++11/future.cc (__future_base::_Async_state_common): Define
3940 destructor, so key function is in the library.
3941 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
3942 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
3943 future_status return instead of bool.
3944 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3945 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3946 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3947 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3948 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3949 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3950 * testsuite/30_threads/promise/members/swap.cc: Likewise.
3952 2012-01-30 Tom Tromey <tromey@redhat.com>
3955 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
3956 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
3957 (note-test): Update.
3958 (gdb-test): Handle regexp tests. Add some logging.
3959 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
3960 (placeholder, use): Remove.
3961 (main): Add tests for deque, list, map, and set iterators. Add
3962 tests for slist and slist iterator.
3963 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
3965 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
3966 the type's _Node typedef.
3967 (StdListIteratorPrinter.to_string): Change how node type is
3969 (StdSlistPrinter.children): Use the type's _Node typedef.
3970 (StdSlistIteratorPrinter.to_string): Likewise.
3971 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
3973 (StdMapPrinter.children): Change how the node's type is computed.
3974 (StdSetPrinter.children): Likewise.
3975 (StdForwardListPrinter.children): Use the type's _Node typedef.
3976 (Printer.add_version): New method.
3977 (Printer.add_container): New method.
3978 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
3980 (find_type): New function.
3982 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
3985 * include/bits/random.h (linear_congruential_generator): Add
3986 static_assert preventing instantiation for values of 'a' and 'm'
3987 currently handled incorrectly by _Mod::__calc.
3988 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
3989 uses of _Mod::__calc.
3991 2012-01-27 Jakub Jelinek <jakub@redhat.com>
3994 * config/cpu/generic/atomicity_builtins/atomicity.h
3995 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
3996 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
3997 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
4000 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
4002 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
4003 pop with #pragma GCC visibility push.
4005 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
4006 Matthias Klose <doko@ubuntu.com>
4008 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
4009 * configure.in: Regenerated.
4010 * src/Makefile.am (all-once, install-data-once): New rules.
4011 (all-local, install-data-local): Use them.
4012 (build-debug, install-debug): Tweak.
4013 * src/Makefile.in: Regenerate.
4015 2012-01-27 Richard Henderson <rth@redhat.com>
4017 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
4018 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
4019 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
4020 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
4022 2012-01-26 Jakub Jelinek <jakub@redhat.com>
4025 * src/c++98/Makefile.am (libc__98_la_SOURCES,
4026 libc__98convenience_la_SOURCES): Remove $(inst_sources).
4027 * src/c++98/Makefile.in: Regenerated.
4029 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
4031 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
4032 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
4033 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
4034 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
4035 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
4037 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
4038 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
4039 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
4040 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
4042 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
4044 2012-01-25 Matthias Klose <doko@ubuntu.com>
4046 * testsuite/30_threads/condition_variable_any/requirements: Remove
4049 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
4051 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
4052 * src/Makefile.in: Regenerate.
4054 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
4057 Add libc++98convenience.la, libc++11convenience.la.
4058 * src/c++98: New directory.
4059 * src/c++11: New directory.
4060 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
4061 * configure: Regenerated.
4062 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
4063 * Makefile.in: Regenerate.
4064 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
4065 -fno-implicit-templates.
4066 * libsupc++/Makefile.in: Regenerate.
4067 * src/Makefile.am (inst_sources): Move... C++11 files into
4068 separate directory for libstdc++11convenience.la. Files are:
4069 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
4070 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
4071 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
4072 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
4073 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
4074 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
4075 (libstdc++convenience.la): Add new target.
4076 (SUBDIRS): Add c++11, c++98.
4077 * src/Makefile.in: Regenerate.
4078 * src/c++11/Makefile.am: New.
4079 * src/c++11/Makefile.in: Generate.
4080 * src/c++98/Makefile.am: New, C++98 files.
4081 * src/c++98/Makefile.in: Generate.
4083 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4086 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
4087 32-bit Solaris 10/x86.
4088 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
4090 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
4093 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
4095 2012-01-19 Jakub Jelinek <jakub@redhat.com>
4098 * include/bits/hashtable.h
4099 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
4100 _M_buckets[__n_bkt] if __is_bucket_begin.
4101 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
4104 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
4106 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
4108 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
4110 * configure.ac: Move epub checks...
4111 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
4112 test -f instead of AC_CHECK_FILES.
4114 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
4115 Roman Kononov <roman@binarylife.net>
4118 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
4119 Do not keep a reference to a potentially moved instance.
4120 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
4121 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
4123 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
4125 * doc/html/*: Regenerate.
4127 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
4129 * configure.ac (BUILD_EPUB): Adjust for epub3.
4130 * configure: Regenerate.
4131 * Makefile.in: Same.
4132 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
4133 * doc/Makefile.in: Regenerate.
4134 * include/Makefile.in: Same.
4135 * libsupc++/Makefile.in: Same.
4136 * po/Makefile.in: Same.
4137 * python/Makefile.in: Same.
4138 * src/Makefile.in: Same.
4139 * testsuite/Makefile.in: Same.
4141 * doc/xml/manual/documentation_hacking.xml: Update.
4143 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
4146 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
4148 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
4150 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
4152 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
4154 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
4156 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
4157 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
4158 by _M_before_begin. Review implementation so that we do not need to
4159 look for previous non-empty bucket when inserting nodes.
4161 2012-01-09 Kai Tietz <ktietz@redhat.com>
4163 PR libstc++/51673 part 2
4164 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
4165 operators signature for LLP64 size_t, and adjusted signatures for
4166 mt-allocator using size_t.
4168 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
4170 PR libstc++/51673 part 1
4171 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
4174 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
4176 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
4177 * Makefile.in: Regenerate.
4178 * doc/Makefile.in: Same.
4179 * include/Makefile.in: Same.
4180 * libsupc++/Makefile.in: Same.
4181 * src/Makefile.in: Same.
4182 * testsuite/Makefile.in: Same.
4183 * po/Makefile.in: Same.
4184 * python/Makefile.in: Same.
4186 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
4188 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
4189 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
4191 2012-01-06 Jason Merrill <jason@redhat.com>
4193 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
4194 expected demangling.
4196 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
4199 * doc/xml/manual/debug.xml: Suggest using symbol interposition
4200 to override symbols using annotation macros.
4202 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
4204 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
4205 protected rather than private, use it...
4206 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
4207 * testsuite/23_containers/unordered_set/observers.cc: New.
4208 * testsuite/23_containers/unordered_multiset/observers.cc: New.
4209 * testsuite/23_containers/unordered_map/observers.cc: New.
4210 * testsuite/23_containers/unordered_multimap/observers.cc: New.
4212 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
4214 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
4215 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
4216 to private inheritance.
4218 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
4221 * testsuite/23_containers/map/element_access/39901.cc: New.