6e73bd340931d50bbba648d4344887ebe29b4cb9
[gcc.git] / libstdc++-v3 / ChangeLog
1 2012-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2
3 * testsuite/18_support/initializer_list/range_access.cc: Fix copying
4 permission statement.
5 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
6 808590.cc: Likewise.
7 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
8 move_iterators/1.cc: Likewise.
9 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
10 move_iterators/1.cc: Likewise.
11 * testsuite/21_strings/basic_string/capacity/char/shrink_to_fit.cc:
12 Likewise.
13 * testsuite/21_strings/basic_string/capacity/wchar_t/shrink_to_fit.cc:
14 Likewise.
15 * testsuite/21_strings/basic_string/range_access/char/1.cc: Likewise.
16 * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
17 Likewise.
18 * testsuite/23_containers/array/element_access/at_neg.cc: Likewise.
19 * testsuite/23_containers/array/range_access.cc: Likewise.
20 * testsuite/23_containers/deque/capacity/29134-2.cc: Likewise.
21 * testsuite/23_containers/deque/capacity/29134.cc: Likewise.
22 * testsuite/23_containers/deque/capacity/shrink_to_fit.cc: Likewise.
23 * testsuite/23_containers/deque/range_access.cc: Likewise.
24 * testsuite/23_containers/deque/requirements/do_the_right_thing.cc:
25 Likewise.
26 * testsuite/23_containers/forward_list/capacity/1.cc: Likewise.
27 * testsuite/23_containers/forward_list/cons/1.cc: Likewise.
28 * testsuite/23_containers/forward_list/cons/10.cc: Likewise.
29 * testsuite/23_containers/forward_list/cons/11.cc: Likewise.
30 * testsuite/23_containers/forward_list/cons/12.cc: Likewise.
31 * testsuite/23_containers/forward_list/cons/2.cc: Likewise.
32 * testsuite/23_containers/forward_list/cons/3.cc: Likewise.
33 * testsuite/23_containers/forward_list/cons/4.cc: Likewise.
34 * testsuite/23_containers/forward_list/cons/5.cc: Likewise.
35 * testsuite/23_containers/forward_list/cons/6.cc: Likewise.
36 * testsuite/23_containers/forward_list/cons/7.cc: Likewise.
37 * testsuite/23_containers/forward_list/cons/8.cc: Likewise.
38 * testsuite/23_containers/forward_list/cons/9.cc: Likewise.
39 * testsuite/23_containers/forward_list/debug/clear.cc: Likewise.
40 * testsuite/23_containers/forward_list/debug/erase_after1_neg.cc:
41 Likewise.
42 * testsuite/23_containers/forward_list/debug/erase_after2_neg.cc:
43 Likewise.
44 * testsuite/23_containers/forward_list/debug/erase_after3_neg.cc:
45 Likewise.
46 * testsuite/23_containers/forward_list/debug/erase_after4_neg.cc:
47 Likewise.
48 * testsuite/23_containers/forward_list/debug/erase_after5_neg.cc:
49 Likewise.
50 * testsuite/23_containers/forward_list/debug/erase_after6_neg.cc:
51 Likewise.
52 * testsuite/23_containers/forward_list/debug/erase_after7_neg.cc:
53 Likewise.
54 * testsuite/23_containers/forward_list/debug/erase_after8_neg.cc:
55 Likewise.
56 * testsuite/23_containers/forward_list/debug/erase_after9_neg.cc:
57 Likewise.
58 * testsuite/23_containers/forward_list/debug/insert_after1_neg.cc:
59 Likewise.
60 * testsuite/23_containers/forward_list/debug/insert_after2_neg.cc:
61 Likewise.
62 * testsuite/23_containers/forward_list/debug/insert_after3_neg.cc:
63 Likewise.
64 * testsuite/23_containers/forward_list/debug/move_constructor.cc:
65 Likewise.
66 * testsuite/23_containers/forward_list/debug/splice_after.cc: Likewise.
67 * testsuite/23_containers/forward_list/debug/splice_after1_neg.cc:
68 Likewise.
69 * testsuite/23_containers/forward_list/debug/splice_after2_neg.cc:
70 Likewise.
71 * testsuite/23_containers/forward_list/debug/splice_after3_neg.cc:
72 Likewise.
73 * testsuite/23_containers/forward_list/debug/splice_after4_neg.cc:
74 Likewise.
75 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
76 Likewise.
77 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
78 Likewise.
79 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
80 Likewise.
81 * testsuite/23_containers/forward_list/debug/swap.cc: Likewise.
82 * testsuite/23_containers/forward_list/modifiers/1.cc: Likewise.
83 * testsuite/23_containers/forward_list/modifiers/2.cc: Likewise.
84 * testsuite/23_containers/forward_list/modifiers/3.cc: Likewise.
85 * testsuite/23_containers/forward_list/modifiers/4.cc: Likewise.
86 * testsuite/23_containers/forward_list/modifiers/5.cc: Likewise.
87 * testsuite/23_containers/forward_list/modifiers/6.cc: Likewise.
88 * testsuite/23_containers/forward_list/operations/1.cc: Likewise.
89 * testsuite/23_containers/forward_list/operations/2.cc: Likewise.
90 * testsuite/23_containers/forward_list/operations/3.cc: Likewise.
91 * testsuite/23_containers/forward_list/operations/4.cc: Likewise.
92 * testsuite/23_containers/forward_list/operations/5.cc: Likewise.
93 * testsuite/23_containers/forward_list/operations/6.cc: Likewise.
94 * testsuite/23_containers/forward_list/operations/7.cc: Likewise.
95 * testsuite/23_containers/forward_list/range_access.cc: Likewise.
96 * testsuite/23_containers/forward_list/requirements/
97 do_the_right_thing.cc: Likewise.
98 * testsuite/23_containers/list/capacity/1.cc: Likewise.
99 * testsuite/23_containers/list/capacity/1.h: Likewise.
100 * testsuite/23_containers/list/capacity/29134.cc: Likewise.
101 * testsuite/23_containers/list/modifiers/1.cc: Likewise.
102 * testsuite/23_containers/list/modifiers/1.h: Likewise.
103 * testsuite/23_containers/list/modifiers/1_c++0x.cc: Likewise.
104 * testsuite/23_containers/list/modifiers/2.cc: Likewise.
105 * testsuite/23_containers/list/modifiers/2.h: Likewise.
106 * testsuite/23_containers/list/modifiers/3.cc: Likewise.
107 * testsuite/23_containers/list/modifiers/3.h: Likewise.
108 * testsuite/23_containers/list/modifiers/insert/25288.cc: Likewise.
109 * testsuite/23_containers/list/modifiers/insert/25288.h: Likewise.
110 * testsuite/23_containers/list/operations/1.cc: Likewise.
111 * testsuite/23_containers/list/operations/1.h: Likewise.
112 * testsuite/23_containers/list/operations/2.cc: Likewise.
113 * testsuite/23_containers/list/operations/2.h: Likewise.
114 * testsuite/23_containers/list/operations/2_c++0x.cc: Likewise.
115 * testsuite/23_containers/list/operations/3.cc: Likewise.
116 * testsuite/23_containers/list/operations/3.h: Likewise.
117 * testsuite/23_containers/list/operations/3_c++0x.cc: Likewise.
118 * testsuite/23_containers/list/operations/4.cc: Likewise.
119 * testsuite/23_containers/list/operations/4.h: Likewise.
120 * testsuite/23_containers/list/operations/42352.cc: Likewise.
121 * testsuite/23_containers/list/operations/5.cc: Likewise.
122 * testsuite/23_containers/list/operations/5.h: Likewise.
123 * testsuite/23_containers/list/range_access.cc: Likewise.
124 * testsuite/23_containers/list/requirements/do_the_right_thing.cc:
125 Likewise.
126 * testsuite/23_containers/map/capacity/29134.cc: Likewise.
127 * testsuite/23_containers/map/range_access.cc: Likewise.
128 * testsuite/23_containers/multimap/capacity/29134.cc: Likewise.
129 * testsuite/23_containers/multimap/range_access.cc: Likewise.
130 * testsuite/23_containers/multiset/capacity/29134.cc: Likewise.
131 * testsuite/23_containers/multiset/range_access.cc: Likewise.
132 * testsuite/23_containers/set/capacity/29134.cc: Likewise.
133 * testsuite/23_containers/set/range_access.cc: Likewise.
134 * testsuite/23_containers/unordered_map/final_hash.cc: Likewise.
135 * testsuite/23_containers/unordered_map/observers.cc: Likewise.
136 * testsuite/23_containers/unordered_map/range_access.cc: Likewise.
137 * testsuite/23_containers/unordered_map/requirements/52942.cc:
138 Likewise.
139 * testsuite/23_containers/unordered_map/requirements/53067.cc:
140 Likewise.
141 * testsuite/23_containers/unordered_map/requirements/53339.cc:
142 Likewise.
143 * testsuite/23_containers/unordered_multimap/final_hash.cc: Likewise.
144 * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
145 * testsuite/23_containers/unordered_multimap/range_access.cc: Likewise.
146 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
147 Likewise.
148 * testsuite/23_containers/unordered_multiset/final_hash.cc: Likewise.
149 * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
150 * testsuite/23_containers/unordered_multiset/range_access.cc: Likewise.
151 * testsuite/23_containers/unordered_set/final_hash.cc: Likewise.
152 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
153 * testsuite/23_containers/unordered_set/observers.cc: Likewise.
154 * testsuite/23_containers/unordered_set/range_access.cc: Likewise.
155 * testsuite/23_containers/unordered_set/requirements/52942.cc:
156 Likewise.
157 * testsuite/23_containers/unordered_set/requirements/53067.cc:
158 Likewise.
159 * testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
160 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
161 Likewise.
162 * testsuite/23_containers/vector/capacity/29134-2.cc: Likewise.
163 * testsuite/23_containers/vector/capacity/29134.cc: Likewise.
164 * testsuite/23_containers/vector/capacity/shrink_to_fit.cc: Likewise.
165 * testsuite/23_containers/vector/capacity/shrink_to_fit2.cc: Likewise.
166 * testsuite/23_containers/vector/range_access.cc: Likewise.
167 * testsuite/23_containers/vector/requirements/do_the_right_thing.cc:
168 Likewise.
169 * testsuite/24_iterators/range_access.cc: Likewise.
170 * testsuite/25_algorithms/copy/1.cc: Likewise.
171 * testsuite/25_algorithms/copy/2.cc: Likewise.
172 * testsuite/25_algorithms/copy/3.cc: Likewise.
173 * testsuite/25_algorithms/copy/34595.cc: Likewise.
174 * testsuite/25_algorithms/copy/4.cc: Likewise.
175 * testsuite/25_algorithms/copy/deque_iterators/1.cc: Likewise.
176 * testsuite/25_algorithms/copy/move_iterators/1.cc: Likewise.
177 * testsuite/25_algorithms/copy/streambuf_iterators/char/1.cc: Likewise.
178 * testsuite/25_algorithms/copy/streambuf_iterators/char/2.cc: Likewise.
179 * testsuite/25_algorithms/copy/streambuf_iterators/char/3.cc: Likewise.
180 * testsuite/25_algorithms/copy/streambuf_iterators/char/4.cc: Likewise.
181 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/1.cc:
182 Likewise.
183 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/2.cc:
184 Likewise.
185 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/3.cc:
186 Likewise.
187 * testsuite/25_algorithms/copy/streambuf_iterators/wchar_t/4.cc:
188 Likewise.
189 * testsuite/25_algorithms/copy_backward/deque_iterators/1.cc: Likewise.
190 * testsuite/25_algorithms/copy_backward/move_iterators/1.cc: Likewise.
191 * testsuite/25_algorithms/copy_n/1.cc: Likewise.
192 * testsuite/25_algorithms/copy_n/2.cc: Likewise.
193 * testsuite/25_algorithms/copy_n/3.cc: Likewise.
194 * testsuite/25_algorithms/copy_n/4.cc: Likewise.
195 * testsuite/25_algorithms/copy_n/50119.cc: Likewise.
196 * testsuite/25_algorithms/copy_n/move_iterators/1.cc: Likewise.
197 * testsuite/25_algorithms/fill/4.cc: Likewise.
198 * testsuite/25_algorithms/fill_n/1.cc: Likewise.
199 * testsuite/25_algorithms/find/istreambuf_iterators/char/1.cc:
200 Likewise.
201 * testsuite/25_algorithms/find/istreambuf_iterators/char/2.cc:
202 Likewise.
203 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/1.cc:
204 Likewise.
205 * testsuite/25_algorithms/find/istreambuf_iterators/wchar_t/2.cc:
206 Likewise.
207 * testsuite/25_algorithms/heap/1.cc: Likewise.
208 * testsuite/25_algorithms/heap/moveable.cc: Likewise.
209 * testsuite/25_algorithms/heap/moveable2.cc: Likewise.
210 * testsuite/25_algorithms/is_heap/1.cc: Likewise.
211 * testsuite/25_algorithms/is_heap_until/1.cc: Likewise.
212 * testsuite/25_algorithms/is_sorted/1.cc: Likewise.
213 * testsuite/25_algorithms/is_sorted_until/1.cc: Likewise.
214 * testsuite/25_algorithms/move/1.cc: Likewise.
215 * testsuite/25_algorithms/move/deque_iterators/1.cc: Likewise.
216 * testsuite/25_algorithms/move_backward/1.cc: Likewise.
217 * testsuite/25_algorithms/move_backward/deque_iterators/1.cc: Likewise.
218 * testsuite/25_algorithms/partition/1.cc: Likewise.
219 * testsuite/25_algorithms/partition/moveable.cc: Likewise.
220 * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise.
221 * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise.
222 * testsuite/25_algorithms/stable_partition/1.cc: Likewise.
223 * testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
224 * testsuite/25_algorithms/stable_partition/pr52822.cc: Likewise.
225 * testsuite/26_numerics/valarray/range_access.cc: Likewise.
226 * testsuite/28_regex/range_access.cc: Likewise.
227 * testsuite/ext/vstring/capacity/29134.cc: Likewise.
228 * testsuite/ext/vstring/capacity/shrink_to_fit.cc: Likewise.
229 * testsuite/ext/vstring/hash/char/1.cc: Likewise.
230 * testsuite/ext/vstring/hash/wchar_t/1.cc: Likewise.
231 * testsuite/ext/vstring/range_access.cc: Likewise.
232 * testsuite/ext/vstring/requirements/do_the_right_thing.cc: Likewise.
233 * testsuite/performance/25_algorithms/copy_backward_deque_iterators.cc:
234 Likewise.
235 * testsuite/performance/25_algorithms/copy_deque_iterators.cc:
236 Likewise.
237 * testsuite/tr1/6_containers/unordered_map/capacity/29134-map.cc:
238 Likewise.
239 * testsuite/tr1/6_containers/unordered_multimap/capacity/
240 29134-multimap.cc: Likewise.
241 * testsuite/tr1/6_containers/unordered_multiset/capacity/
242 29134-multiset.cc: Likewise.
243 * testsuite/tr1/6_containers/unordered_set/capacity/29134-set.cc:
244 Likewise.
245
246 2012-11-01 François Dumont <fdumont@gcc.gnu.org>
247
248 * include/bits/hashtable_policy.h (__details::_Before_begin<>):
249 New, combine a base node instance and an allocator.
250 * include/bits/hashtable.h (_Hashtable<>::_M_node_allocator): Remove.
251 (_Hashtable<>::_M_before_begin): Rename into _M_bbegin and type
252 modified to __detail::_Before_begin<>.
253 (_Hashtable<>::_M_node_allocator()): New, get the node allocator
254 part of _M_bbegin.
255 (_Hashtable<>::_M_before_begin()): New, get the before begin node
256 part of _M_bbegin.
257 (_Hashtable<>): Adapt to use latter.
258
259 2012-11-01 Jonathan Wakely <jwakely.gcc@gmail.com>
260
261 * include/bits/forward_list.h (forward_list::assign): Dispatch to new
262 functions based on assignability of elements.
263 (forward_list::_M_assign): Add overloaded functions for assigning
264 via assignment or via clearing and insertion.
265 (forward_list::_M_assign_val): Likewise.
266 (forward_list::_M_move_assign(forward_list&&, false_type)): Do not
267 erase elements that are not moved.
268 * include/bits/forward_list.tcc (forward_list::operator=): Call
269 assign() to copy elements.
270 * testsuite/23_containers/forward_list/cons/10.cc: New.
271 * testsuite/23_containers/forward_list/cons/11.cc: New.
272 * testsuite/23_containers/forward_list/cons/12.cc: New.
273
274 2012-10-31 Jonathan Yong <jon_y@users.sourceforge.net>
275
276 * config/os/mingw32-w64/os_defines.h: Do not define anymore
277 _GLIBCXX_HAVE_BROKEN_VSWPRINTF.
278
279 2012-10-31 Jonathan Wakely <jwakely.gcc@gmail.com>
280
281 * include/bits/forward_list.h (forward_list): Adjust comments.
282 (forward_list(const forward_list&, const _Alloc&)): Use
283 _M_range_initialize to copy elements.
284 (forward_list(forward_list&&, const _Alloc&)): Add exception
285 specification.
286 (_Fwd_list_base(const _Fwd_list_base&, const _Node_alloc_type&)):
287 Remove.
288 * include/bits/forward_list.tcc (_Fwd_list_base(const _Fwd_list_base&,
289 const _Node_alloc_type&)): Remove.
290 (_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Fix
291 memory leak when allocators are not equal.
292
293 2012-10-29 Jonathan Wakely <jwakely.gcc@gmail.com>
294
295 PR libstdc++/55123
296 * include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
297 Do not instantiate allocator with element_type.
298 * testsuite/20_util/shared_ptr/cons/55123.cc: New.
299
300 2012-10-28 Jonathan Wakely <jwakely.gcc@gmail.com>
301
302 PR libstdc++/55041
303 * python/libstdcxx/v6/printers.py (Tr1UnorderedMapPrinter): Update
304 to handle hashtable as member of unordered_map not base class.
305 (Tr1UnorderedSetPrinter): Likewise.
306
307 2012-10-27 François Dumont <fdumont@gcc.gnu.org>
308
309 * include/bits/unordered_map.h (unordered_map<>): Prefer
310 aggregation to inheritance with _Hashtable.
311 (unordered_multimap<>): Likewise.
312 * include/bits/unordered_set.h
313 (unordered_set<>(const unordered_set&)): Use default
314 implementation.
315 (unordered_set<>(unordered_set&&)): Likewise.
316 (unordered_set<>::operator=(const unordered_set&)): Likewise.
317 (unordered_set<>::operator=(unordered_set&&)): Likewise.
318 (unordered_multiset<>(const unordered_multiset&)): Likewise.
319 (unordered_multiset<>(unordered_multiset&&)): Likewise.
320 (unordered_multiset<>::operator=(const unordered_multiset&)):
321 Likewise.
322 (unordered_multiset<>::operator=(unordered_multiset&&)): Likewise.
323 * include/debug/unordered_map (operator==): Adapt.
324 * include/profile/unordered_map (operator==): Adapt.
325
326 2012-10-24 Daniel Krugler <daniel.kruegler@gmail.com>
327
328 * include/std/type_traits (common_type): Implement LWG 2141.
329 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
330 Update.
331 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
332 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
333 Likewise.
334 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
335 Likewise.
336 * testsuite/20_util/common_type/requirements/typedefs-2.cc: Likewise.
337
338 2012-10-24 Haakan Younes <hyounes@google.com>
339 Paolo Carlini <paolo.carlini@oracle.com>
340
341 PR libstdc++/55047
342 * include/bits/random.h (exponential_distribution<>::operator):
343 Fix formula to std::log(result_type(1) - __aurng()).
344 * include/bits/random.tcc: Likewise, everywhere.
345
346 2012-10-23 Yufeng Zhang <yufeng.zhang@arm.com>
347
348 * config/cpu/aarch64/cxxabi_tweaks.h: New file.
349 * configure.host: Enable aarch64.
350
351 2012-10-22 François Dumont <fdumont@gcc.gnu.org>
352
353 * include/bits/unordered_set.h (unordered_set<>): Prefer
354 aggregation to inheritance with _Hashtable.
355 (unordered_multiset<>): Likewise.
356 * include/debug/unordered_set (operator==): Adapt.
357 * include/profile/unordered_set (operator==): Adapt.
358
359 2012-10-22 Yufeng Zhang <yufeng.zhang@arm.com>
360 Jonathan Wakely <jwakely.gcc@gmail.com>
361
362 * doc/xml/manual/configure.xml (--enable-clocale): Document the
363 'newlib' and 'darwin' options. Minor stylistic improvements.
364
365 2012-10-21 François Dumont <fdumont@gcc.gnu.org>
366
367 * include/profile/map.h (map::emplace_hint): Remove invalid
368 parenthesis.
369
370 2012-10-21 Hans-Peter Nilsson <hp@bitrange.com>
371
372 * testsuite/23_containers/bitset/45713.cc: Skip for mmix-*-*.
373 Tweak sizetype-related comment.
374
375 2012-10-20 Jonathan Wakely <jwakely.gcc@gmail.com>
376
377 * include/std/scoped_allocator: Avoid badname.
378
379 2012-10-19 Jonathan Wakely <jwakely.gcc@gmail.com>
380
381 * doc/xml/manual/status_cxx2011.xml: Update.
382
383 2012-10-19 Jonathan Wakely <jwakely.gcc@gmail.com>
384
385 * include/std/scoped_allocator (__outermost_alloc_traits): Define.
386 (scoped_allocator_adaptor::destroy): Use it.
387 (scoped_allocator_adaptor::construct): Likewise. Overload for
388 piecewise construction of std::pair objects.
389 * testsuite/20_util/scoped_allocator/2.cc: New.
390 * doc/xml/manual/status_cxx2011.xml: Update.
391
392 2012-10-18 Jonathan Wakely <jwakely.gcc@gmail.com>
393
394 * include/bits/forward_list.h: Add C++11 allocator support.
395 * include/bits/forward_list.tcc: Likewise.
396 * doc/xml/manual/status_cxx2011.xml: Update.
397 * testsuite/23_containers/forward_list/allocator/copy.cc: New.
398 * testsuite/23_containers/forward_list/allocator/copy_assign.cc: New.
399 * testsuite/23_containers/forward_list/allocator/minimal.cc: New.
400 * testsuite/23_containers/forward_list/allocator/move_assign.cc: New.
401 * testsuite/23_containers/forward_list/allocator/noexcept.cc: New.
402 * testsuite/23_containers/forward_list/allocator/swap.cc: New.
403
404 2012-10-18 François Dumont <fdumont@gcc.gnu.org>
405
406 * include/debug/formatter.h (_Debug_msg_id): Add
407 __msg_valid_load_factor.
408 * include/debug/macros.h (__glibcxx_check_max_load_factor): New.
409 * include/debug/unordered_set
410 (unordered_set<>::max_load_factor(float)): Check max load factor
411 is positive.
412 (unordered_multiset<>::max_load_factor(float)): Likewise.
413 * include/debug/unordered_map
414 (unordered_map<>::max_load_factor(float)): Likewise.
415 (unordered_multimap<>::max_load_factor(float)): Likewise.
416 * testsuite/23_containers/unordered_map/debug/max_load_factor_neg.cc:
417 New.
418 * testsuite/23_containers/unordered_multimap/debug/
419 max_load_factor_neg.cc: New.
420 * testsuite/23_containers/unordered_set/debug/max_load_factor_neg.cc:
421 New.
422 * testsuite/23_containers/unordered_multiset/debug/
423 max_load_factor_neg.cc: New.
424
425 2012-10-17 Benjamin Kosnik <bkoz@redhat.com>
426
427 * include/bits/move.h (move_if_noexcept): Mark constexpr.
428 * include/std/array (front, back): Same.
429 * include/std/chrono: Add comment.
430 * include/std/tuple (__tuple_compare): Mark __eq, __less constexpr.
431 (operator ==, <, >, !=, <=, >=): Same.
432 * testsuite/20_util/forward/c_neg.cc: Adjust line numbers.
433 * testsuite/20_util/forward/f_neg.cc: Same.
434 * testsuite/20_util/move_if_noexcept/constexpr.cc: New.
435 * testsuite/20_util/tuple/comparison_operators/constexpr.cc: New.
436 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Add.
437 * testsuite/23_containers/array/element_access/
438 constexpr_element_access.cc: Same.
439 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
440 line numbers.
441 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
442 Same.
443
444 * testsuite/20_util/tuple/comparison_operators/35480_neg.cc:
445 Temporarily add dg-excess-errors.
446
447 2012-10-16 François Dumont <fdumont@gcc.gnu.org>
448
449 * include/debug/formatter.h (_Debug_msg_id): Add
450 __msg_bucket_index_oob.
451 * include/debug/macros.h (__glibcxx_check_bucket_index): New.
452 * include/debug/unordered_set (unordered_set<>::begin(size_type)):
453 Add check on bucket index.
454 (unordered_set<>::begin(size_type) const): Likewise.
455 (unordered_set<>::cbegin(size_type) const): Likewise.
456 (unordered_set<>::end(size_type)): Likewise.
457 (unordered_set<>::end(size_type) const): Likewise.
458 (unordered_set<>::cend(size_type) const): Likewise.
459 (unordered_set<>::bucket_size(size_type)): Likewise.
460 (unordered_multiset<>::begin(size_type)): Likewise.
461 (unordered_multiset<>::begin(size_type) const): Likewise.
462 (unordered_multiset<>::cbegin(size_type) const): Likewise.
463 (unordered_multiset<>::end(size_type)): Likewise.
464 (unordered_multiset<>::end(size_type) const): Likewise.
465 (unordered_multiset<>::cend(size_type) const): Likewise.
466 (unordered_multiset<>::bucket_size(size_type)): Likewise.
467 * include/debug/unordered_map (unordered_map<>::begin(size_type)):
468 Likewise.
469 (unordered_map<>::begin(size_type) const): Likewise.
470 (unordered_map<>::cbegin(size_type) const): Likewise.
471 (unordered_map<>::end(size_type)): Likewise.
472 (unordered_map<>::end(size_type) const): Likewise.
473 (unordered_map<>::cend(size_type) const): Likewise.
474 (unordered_map<>::bucket_size(size_type)): Likewise.
475 (unordered_multimap<>::begin(size_type)): Likewise.
476 (unordered_multimap<>::begin(size_type) const): Likewise.
477 (unordered_multimap<>::cbegin(size_type) const): Likewise.
478 (unordered_multimap<>::end(size_type)): Likewise.
479 (unordered_multimap<>::end(size_type) const): Likewise.
480 (unordered_multimap<>::cend(size_type) const): Likewise.
481 (unordered_multimap<>::bucket_size(size_type)): Likewise.
482 * testsuite/23_containers/unordered_map/debug/bucket_size_neg.cc:
483 New.
484 * testsuite/23_containers/unordered_map/debug/begin1_neg.cc: New.
485 * testsuite/23_containers/unordered_map/debug/begin2_neg.cc: New.
486 * testsuite/23_containers/unordered_map/debug/cbegin_neg.cc: New.
487 * testsuite/23_containers/unordered_map/debug/end1_neg.cc: New.
488 * testsuite/23_containers/unordered_map/debug/end2_neg.cc: New.
489 * testsuite/23_containers/unordered_map/debug/cend_neg.cc: New.
490 * testsuite/23_containers/unordered_multimap/debug/bucket_size_neg.cc:
491 New.
492 * testsuite/23_containers/unordered_multimap/debug/begin1_neg.cc: New.
493 * testsuite/23_containers/unordered_multimap/debug/begin2_neg.cc: New.
494 * testsuite/23_containers/unordered_multimap/debug/cbegin_neg.cc: New.
495 * testsuite/23_containers/unordered_multimap/debug/end1_neg.cc: New.
496 * testsuite/23_containers/unordered_multimap/debug/end2_neg.cc: New.
497 * testsuite/23_containers/unordered_multimap/debug/cend_neg.cc: New.
498 * testsuite/23_containers/unordered_set/debug/bucket_size_neg.cc:
499 New.
500 * testsuite/23_containers/unordered_set/debug/begin1_neg.cc: New.
501 * testsuite/23_containers/unordered_set/debug/begin2_neg.cc: New.
502 * testsuite/23_containers/unordered_set/debug/cbegin_neg.cc: New.
503 * testsuite/23_containers/unordered_set/debug/end1_neg.cc: New.
504 * testsuite/23_containers/unordered_set/debug/end2_neg.cc: New.
505 * testsuite/23_containers/unordered_set/debug/cend_neg.cc: New.
506 * testsuite/23_containers/unordered_multiset/debug/bucket_size_neg.cc:
507 New.
508 * testsuite/23_containers/unordered_multiset/debug/begin1_neg.cc: New.
509 * testsuite/23_containers/unordered_multiset/debug/begin2_neg.cc: New.
510 * testsuite/23_containers/unordered_multiset/debug/cbegin_neg.cc: New.
511 * testsuite/23_containers/unordered_multiset/debug/end1_neg.cc: New.
512 * testsuite/23_containers/unordered_multiset/debug/end2_neg.cc: New.
513 * testsuite/23_containers/unordered_multiset/debug/cend_neg.cc: New.
514
515 2012-10-15 Matthias Klose <doko@ubuntu.com>
516
517 * configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
518 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
519 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
520
521 2012-10-15 Pavel Chupin <pavel.v.chupin@intel.com>
522
523 * Makefile.in: Regenerate.
524 * acinclude.m4: Replace code with GCC_AC_THREAD_HEADER use.
525 * configure: Regenerate.
526 * doc/Makefile.in: Regenerate.
527 * include/Makefile.am: Regenerate.
528 * include/Makefile.in: Rename variable.
529 * libsupc++/Makefile.in: Regenerate.
530 * po/Makefile.in: Regenerate.
531 * python/Makefile.in: Regenerate.
532 * src/Makefile.in: Regenerate.
533 * src/c++11/Makefile.in: Regenerate.
534 * src/c++98/Makefile.in: Regenerate.
535 * testsuite/Makefile.in: Regenerate.
536
537 2012-10-14 Jason Merrill <jason@redhat.com>
538
539 PR target/54908
540 * libsupc++/atexit_thread.cc: Rewrite to keep the cleanup list
541 with get/setspecific. Destroy the key on dlclose.
542
543 2012-10-12 Edward Smith-Rowland <3dw4rd@verizon.net>
544
545 * include/ext/random: Add __gnu_cxx::arcsine_distribution<>
546 and __gnu_cxx::hoyt_distribution<> classes.
547 * include/ext/random.tcc: Add out-of-line functions for
548 __gnu_cxx::arcsine_distribution<> and __gnu_cxx::hoyt_distribution<>.
549 * testsuite/ext/random/hoyt_distribution/cons/parms.cc: New file.
550 * testsuite/ext/random/hoyt_distribution/cons/default.cc: New file.
551 * testsuite/ext/random/hoyt_distribution/requirements/
552 explicit_instantiation/1.cc: New file.
553 * testsuite/ext/random/hoyt_distribution/requirements/typedefs.cc:
554 New file.
555 * testsuite/ext/random/hoyt_distribution/operators/inequal.cc: New file.
556 * testsuite/ext/random/hoyt_distribution/operators/equal.cc: New file.
557 * testsuite/ext/random/hoyt_distribution/operators/serialize.cc:
558 New file.
559 * testsuite/ext/random/arcsine_distribution/cons/parms.cc: New file.
560 * testsuite/ext/random/arcsine_distribution/cons/default.cc: New file.
561 * testsuite/ext/random/arcsine_distribution/requirements/
562 explicit_instantiation/1.cc: New file.
563 * testsuite/ext/random/arcsine_distribution/requirements/typedefs.cc:
564 New file.
565 * testsuite/ext/random/arcsine_distribution/operators/inequal.cc:
566 New file.
567 * testsuite/ext/random/arcsine_distribution/operators/equal.cc:
568 New file.
569 * testsuite/ext/random/arcsine_distribution/operators/serialize.cc:
570 New file.
571
572 2012-10-12 Paolo Carlini <paolo.carlini@oracle.com>
573
574 * include/bits/hashtable_policy.h: Revert libstdc++/53067 quick
575 hacks thanks to the resolution of c++/51213.
576
577 2012-10-11 Paolo Carlini <paolo.carlini@oracle.com>
578
579 * testsuite/23_containers/bitset/45713.cc: Tweak.
580
581 2012-10-11 Hans-Peter Nilsson <hp@axis.com>
582
583 PR testsuite/54897
584 * testsuite/23_containers/bitset/45713.cc: Skip for avr*-*-*
585 cris*-*-* h8300*-*-* mcore*-*-* moxie*-*-*.
586
587 2012-10-11 Daniel Krugler <daniel.kruegler@gmail.com>
588
589 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
590 Update / extend.
591 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
592 Likewise.
593 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
594 Likewise.
595
596 2012-10-11 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
597
598 PR libstdc++/54872
599 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11) [!__sun__ && !__svr4__]:
600 Don't export _ZNSt12system_errorC*.
601
602 2012-10-10 Jack Howarth <howarth@bromo.med.uc.edu>
603 Jonathan Wakely <jwakely.gcc@gmail.com>
604
605 PR libstdc++/54847
606 * config/os/bsd/darwin/os_defines.h: Define _GLIBCXX_USE_NANOSLEEP
607 and _GLIBCXX_USE_SCHED_YIELD.
608 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add comment.
609
610 2012-10-10 Mark Kettenis <kettenis@openbsd.org>
611
612 * configure.host (*-*-openbsd*) Set cpu_include_dir.
613 * config/os/bsd/openbsd/ctype_base.h: New file.
614 * config/os/bsd/openbsd/ctype_configure_char.cc: New file.
615 * config/os/bsd/openbsd/ctype_inline.h: New file.
616 * config/os/bsd/openbsd/os_defines.h: New file.
617 * acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Use newlib locale model
618 for OpenBSD.
619 * configure: Regenerated.
620
621 2012-10-10 Paolo Carlini <paolo.carlini@oracle.com>
622
623 * include/std/type_traits (__do_common_type_impl): Revert for now
624 LWG 2141-related change.
625 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Likewise.
626 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
627 Adjust.
628
629 2012-10-09 Daniel Krugler <daniel.kruegler@gmail.com>
630
631 * include/std/type_traits (common_type): Provide "SFINAE-friendly"
632 implementation.
633 (__success_type, __failure_type): Fix.
634 * include/std/chrono (common_type): Likewise for the chrono::time_point
635 specialization.
636 * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc: New.
637 * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
638 Likewise.
639 * testsuite/20_util/duration/requirements/sfinae_friendly_1.cc:
640 Likewise.
641 * testsuite/20_util/common_type/requirements/typedefs-1.cc: Adjust wrt
642 LWG 2141.
643 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust
644 dg-error line numbers.
645 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
646 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
647 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
648 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
649 Likewise.
650 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
651
652 * testsuite/20_util/result_of/sfinae_friendly_1.cc: Trivial stylistic
653 tweaks.
654 * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
655
656 2012-10-09 Andrew MacLeod <amacleod@redhat.com>
657
658 PR libstdc++/54861
659 * include/bits/atomic_base.h (atomic_signal_fence): Call
660 __atomic_signal_fence instead of __atomic_thread_fence.
661
662 2012-10-09 Benjamin Kosnik <bkoz@redhat.com>
663
664 * testsuite/20_util/specialized_algorithms/uninitialized_copy/808590.cc:
665 Fix constant value.
666
667 2012-10-09 Paolo Carlini <paolo.carlini@oracle.com>
668
669 PR libstdc++/54869
670 * include/ext/random (simd_fast_mersenne_twister_engine): Provide
671 only for little endian targets.
672 * include/ext/random.tcc: Likewise.
673 * config/cpu/i486/opt/ext/opt_random.h: Likewise.
674 * testsuite/lib/libstdc++.exp (check_v3_target_little_endian): Add.
675 * testsuite/lib/dg-options.exp (dg-require-little-endian): Add.
676 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
677 operators/equal.cc: Use the latter.
678 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
679 operators/serialize.cc: Likewise.
680 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
681 operators/inequal.cc: Likewise.
682 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
683 cons/copy.cc: Likewise.
684 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
685 cons/seed1.cc: Likewise.
686 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
687 cons/seed2.cc: Likewise.
688 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
689 cons/default.cc: Likewise.
690 * testsuite/ext/random/simd_fast_mersenne_twister_engine/
691 cons/seed_seq.cc: Likewise.
692
693 2012-10-09 Jonathan Wakely <jwakely.gcc@gmail.com>
694
695 PR libstdc++/54754
696 * include/parallel/compatibility.h: Use atomic built-ins when they are
697 lock-free.
698
699 2012-10-09 Uros Bizjak <ubizjak@gmail.com>
700
701 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.7.
702
703 2012-10-08 Jason Merrill <jason@redhat.com>
704
705 * libsupc++/cxxabi.h: Declare __cxa_thread_atexit.
706 * libsupc++/atexit_thread.cc: New.
707 * libsupc++/Makefile.am (nested_exception.lo): Add it.
708 * config/abi/pre/gnu.ver: Add __cxa_thread_atexit.
709
710 2012-10-07 Matthias Klose <doko@ubuntu.com>
711
712 * testsuite/28_regex/algorithms/match/basic: Remove empty directory.
713 * testsuite/28_regex/algorithms/match/extended: Likewise.
714 * testsuite/28_regex/algorithms/match: Likewise.
715
716 2012-10-06 Paolo Carlini <paolo.carlini@oracle.com>
717
718 PR c++/52764
719 * include/c_global/cstdint: Remove __STDC_LIMIT_MACROS and
720 __STDC_CONSTANT_MACROS related macros.
721
722 2012-10-06 Joe Seymour <jseymour@codesourcery.com>
723
724 * include/tr2/dynamic_bitset: Fix cxxabi_forced.h include path.
725
726 2012-10-05 Benjamin Kosnik <bkoz@redhat.com>
727
728 * testsuite/28_regex/algorithms/match: Rename to...
729 * testsuite/28_regex/algorithms/regex_match: ...this.
730 * testsuite/28_regex/basic_regex/regex.cc: Rename to...
731 * testsuite/28_regex/basic_regex/ctors/basic/default.cc: ...this.
732 * testsuite/util/testsuite_regex.h: New.
733 * testsuite/28_regex/basic_regex/ctors/basic/raw_string.cc: New.
734
735 2012-10-05 Jakub Jelinek <jakub@redhat.com>
736
737 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line
738 numbers.
739
740 2012-10-05 Marc Glisse <marc.glisse@inria.fr>
741
742 PR libstdc++/54686
743 * include/c_global/cstdlib (abs(long long)): Define with
744 __builtin_llabs when we have long long.
745 (abs(long)): Use __builtin_labs.
746 (abs(__int128)): Define when we have __int128.
747
748 2012-10-05 Paolo Carlini <paolo.carlini@oracle.com>
749
750 * include/c_global/cstdlib: Remove redundant pasto code protected
751 by __GXX_EXPERIMENTAL_CXX0X__.
752 * include/c_global/cwctype: Likewise.
753 * include/c_global/ccomplex: Remove uses of obsolete macro
754 _GLIBCXX_INCLUDE_AS_TR1.
755 * include/c_global/cfloat: Likewise.
756
757 2012-10-05 Marc Glisse <marc.glisse@inria.fr>
758
759 PR libstdc++/54686
760 * include/c_std/cstdlib (abs(long long)): Define with
761 __builtin_llabs when we have long long.
762 (abs(long)): Use __builtin_labs.
763 (abs(__int128)): Define when we have __int128.
764 * testsuite/26_numerics/headers/cstdlib/54686.c: New file.
765
766 2012-10-03 Paolo Carlini <paolo.carlini@oracle.com>
767
768 PR libstdc++/53248
769 * include/std/array (__array_traits<>): Add.
770 (array<>): Allow for zero-size arrays of non default-constructible
771 elements.
772 * testsuite/23_containers/array/requirements/
773 non_default_constructible.cc: New.
774 * testsuite/23_containers/array/requirements/zero_sized_arrays.cc:
775 Adjust.
776 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
777 dg-error line numbers.
778 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
779 Likewise.
780
781 2012-10-02 Jonathan Wakely <jwakely.gcc@gmail.com>
782
783 PR other/53889
784 * include/std/mutex (__recursive_mutex_base::~__recursive_mutex_base):
785 Use __gthread_recursive_mutex_destroy.
786 (__recursive_mutex_base::_S_destroy): Remove.
787 (__recursive_mutex_base::_S_destroy_win32): Likewise.
788 * include/ext/concurrence.h (__recursive_mutex::~__recursive_mutex):
789 Use __gthread_recursive_mutex_destroy.
790 (__recursive_mutex::_S_destroy): Remove.
791 (__recursive_mutex::_S_destroy_win32): Likewise.
792
793 2012-10-01 Benjamin Kosnik <bkoz@redhat.com>
794
795 * config/abi/pre/gnu-versioned-namespace.ver: Add more
796 typeinfo/vtable exports.
797
798 2012-10-01 Paolo Carlini <paolo.carlini@oracle.com>
799
800 PR libstdc++/54757
801 * include/ext/random (rice_distribution<>::operator()): Use std::hypot
802 only if _GLIBCXX_USE_C99_MATH_TR1.
803 * include/ext/random.tcc (rice_distribution<>::__generate_impl):
804 Likewise.
805
806 2012-10-01 Daniel Krugler <daniel.kruegler@gmail.com>
807
808 * include/std/type_traits (result_of): Provide "SFINAE-friendly"
809 (see N3436) implementation.
810 * testsuite/20_util/result_of/sfinae_friendly_1.cc: New.
811 * testsuite/20_util/result_of/sfinae_friendly_2.cc: Likewise.
812 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Tweak
813 dg-error line numbers.
814 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
815 Likewise.
816 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
817
818 2012-09-30 Benjamin Kosnik <bkoz@redhat.com>
819
820 * doc/doxygen/user.cfg.in: Update to doxygen 1.8.2.
821
822 2012-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
823
824 * include/ext/ropeimpl.h (__uninitialized_fill_n_a): Fix using
825 declaration.
826 * testsuite/ext/rope/5.cc: New.
827
828 2012-09-30 Jonathan Wakely <jwakely.gcc@gmail.com>
829
830 PR libstdc++/54577
831 * doc/xml/manual/status_cxx2011.xml: N2350 changes are missing from
832 sequence containers.
833 * doc/html/*: Regenerate.
834
835 2012-09-29 Jonathan Wakely <jwakely.gcc@gmail.com>
836
837 PR libstdc++/34106
838 * include/parallel/compatibility.h: Remove non-GCC code.
839
840 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
841
842 * fragment.am (CONFIG_CXXFLAGS): Remove EXTRA_CXX_FLAGS.
843 * libsupc++/Makefile.am (LTCXXCOMPILE): Add EXTRA_CXX_FLAGS here.
844 * src/Makefile.am: Same.
845 * src/c++98/Makefile.am: Same.
846 * src/c++11/Makefile.am: Same.
847 * Makefile.in: Regenerated.
848 * src/Makefile.am: Same.
849 * src/c++11/Makefile.in: Same.
850 * src/c++98/Makefile.in: Same.
851 * include/Makefile.in: Same.
852 * po/Makefile.in: Same.
853 * python/Makefile.in: Same.
854 * testsuite/Makefile.in: Same.
855
856 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
857
858 * src/c++98/Makefile.am: Fixup PARALLEL_FLAGS.
859
860 2012-09-28 Benjamin Kosnik <bkoz@redhat.com>
861
862 * acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): Remove ENABLE_PARALLEL.
863 * include/Makefile.am: Same.
864 * src/c++98/Makefile.am: Same.
865 * src/Makefile.am: Same.
866 * Makefile.in: Regenerated.
867 * aclocal.m4: Same.
868 * configure: Same.
869 * doc/Makefile.in: Same.
870 * include/Makefile.in: Same.
871 * libsupc++/Makefile.in: Same.
872 * po/Makefile.in: Same.
873 * python/Makefile.in: Same.
874 * src/Makefile.in: Same.
875 * testsuite/Makefile.in: Same.
876 * src/c++11/Makefile.in: Same.
877 * src/c++98/Makefile.in: Same.
878
879 * src/c++98/compatibility-debug_list-2.cc: Update comments.
880 * src/c++98/compatibility-debug_list.cc: Same.
881 * src/c++98/compatibility-list-2.cc: Renamed to src/c++98/list-aux-2.cc
882 * src/c++98/compatibility-list.cc: Renamed to src/c++98/list-aux.cc
883 * src/c++98/compatibility-parallel_list-2.cc: Renamed to
884 src/c++98/list_associated-2.cc.
885 * src/c++98/compatibility-parallel_list.cc: Renamed to
886 src/c++98/list_associated.cc.
887
888 2012-09-27 Paolo Carlini <paolo.carlini@oracle.com>
889
890 PR libstdc++/54727
891 * config/cpu/i486/opt/bits/opt_random.h: Avoid UINT64_C.
892
893 2012-09-26 Paolo Carlini <paolo.carlini@oracle.com>
894
895 * include/ext/random: Add include checks for c++11 and <cstdint>.
896
897 2012-09-26 Benjamin Kosnik <bkoz@redhat.com>
898
899 PR libstdc++/54314
900 * config/abi/pre/gnu.ver: Add vtable exports.
901 * config/abi/pre/gnu-versioned-namespace.ver: Same.
902
903 2012-09-26 Akira Takahashi <faithandbrave@gmail.com>
904
905 PR libstdc++/53515
906 * include/bits/stl_iterator_base_funcs.h (__advance(_InputIterator&,
907 _Distance, input_iterator_tag)): Add _GLIBCXX_DEBUG_ASSERT(__n >= 0).
908
909 2012-09-26 Ulrich Drepper <drepper@gmail.com>
910
911 Optimize bulk mode for normal_distribution<double> for SSE3.
912 * configure.host: Define cpu_opt_bits_random.
913 * configure.ac: Substitute CPU_OPT_BITS_RANDOM.
914 * include/Makefile.am (bits_headers): Add ${bits_host_headers}.
915 (bits_host_headers): Define.
916 * include/bits/random.tcc: Move __details::_Power_of_2 to...
917 * include/bits/random.h: ...here.
918 * include/std/random: Include <bits/opt_random.h>.
919 * config/cpu/i486/opt/bits/opt_random.h: New file.
920 * config/cpu/generic/opt/bits/opt_random.h: New file.
921 * configure: Regenerated.
922 * Makefile.in: Regenerated.
923 * aclocal.m4: Regenerated.
924 * doc/Makefile.in: Regenerated.
925 * include/Makefile.in: Regenerated.
926 * libsupc++/Makefile.in: Regenerated.
927 * po/Makefile.in: Regenerated.
928 * python/Makefile.in: Regenerated.
929 * src/Makefile.in: Regenerated.
930 * src/c++11/Makefile.in: Regenerated.
931 * src/c++98/Makefile.in: Regenerated.
932 * testsuite/Makefile.in: Regenerated.
933
934 * config/cpu/generic/opt/ext/opt_random.h: Fix comment.
935
936 2012-09-25 Paolo Carlini <paolo.carlini@oracle.com>
937
938 * doc/xml/manual/status_cxx2011.xml: Update vs PR 44436.
939
940 2012-09-24 Edward Smith-Rowland <3dw4rd@verizon.net>
941
942 * include/ext/random: Add __gnu_cxx::k_distribution<> class.
943 * include/ext/random.tcc: Add out-of-line functions for
944 __gnu_cxx::k_distribution<>.
945 * testsuite/ext/random/k_distribution/operators/equal.cc: New file.
946 * testsuite/ext/random/k_distribution/operators/serialize.cc: New file.
947 * testsuite/ext/random/k_distribution/operators/inequal.cc: New file.
948 * testsuite/ext/random/k_distribution/cons/parms.cc: New file.
949 * testsuite/ext/random/k_distribution/cons/default.cc: New file.
950 * testsuite/ext/random/k_distribution/requirements/typedefs.cc:
951 New file.
952 * testsuite/ext/random/k_distribution/requirements/
953 explicit_instantiation/1.cc: New file.
954
955 2012-09-24 François Dumont <fdumont@gcc.gnu.org>
956
957 PR libstdc++/44436
958 * include/bits/stl_tree.h
959 (_Rb_tree<>::_M_insert_): Take _Base_ptr rather than
960 _Const_Base_ptr.
961 (_Rb_tree<>::_M_insert_node): New.
962 (_Rb_tree<>::_M_get_insert_unique_pos): New, search code of
963 _M_insert_unique method.
964 (_Rb_tree<>::_M_insert_unique): Use latter.
965 (_Rb_tree<>::_M_emplace_unique): New, likewise.
966 (_Rb_tree<>::_M_get_insert_equal_pos): New, search code of
967 _M_insert_equal method.
968 (_Rb_tree<>::_M_insert_equal): Use latter.
969 (_Rb_tree<>::_M_emplace_equal): New, likewise.
970 (_Rb_tree<>::_M_get_insert_hint_unique_pos): New, search code of
971 _M_insert_unique_ method.
972 (_Rb_tree<>::_M_insert_unique_): Use latter.
973 (_Rb_tree<>::_M_emplace_hint_unique): New, likewise.
974 (_Rb_tree<>::_M_get_insert_hint_equal_pos): New, search code of
975 _M_insert_equal_ method.
976 (_Rb_tree<>::_M_insert_equal_): Use latter.
977 (_Rb_tree<>::_M_emplace_hint_equal): New, likewise.
978 (_Rb_tree<>::_M_insert_lower): Remove first _Base_ptr parameter,
979 useless as always null.
980 * include/bits/stl_map.h: Include <tuple> in C++11.
981 (map<>::operator[](const key_type&)): Use
982 _Rb_tree<>::_M_emplace_hint_unique in C++11.
983 (map<>::operator[](key_type&&)): Likewise.
984 (map<>::emplace): New.
985 (map<>::emplace_hint): New.
986 * include/bits/stl_multimap.h (multimap<>::emplace): New.
987 (multimap<>::emplace_hint): New.
988 * include/bits/stl_set.h (set<>::emplace): New.
989 (set<>::emplace_hint): New.
990 * include/bits/stl_multiset.h (multiset<>::emplace): New.
991 (multiset<>::emplace_hint): New.
992 * include/debug/map.h (std::__debug::map<>::emplace): New.
993 (std::__debug::map<>::emplace_hint): New.
994 * include/debug/multimap.h (std::__debug::multimap<>::emplace):
995 New.
996 (std::__debug::multimap<>::emplace_hint): New.
997 * include/debug/set.h (std::__debug::set<>::emplace): New.
998 (std::__debug::set<>::emplace_hint): New.
999 * include/debug/multiset.h (std::__debug::multiset<>::emplace):
1000 New.
1001 (std::__debug::multiset<>::emplace_hint): New.
1002 * include/profile/map.h (std::__profile::map<>::emplace): New.
1003 (std::__profile::map<>::emplace_hint): New.
1004 * include/profile/multimap.h (std::__profile::multimap<>::emplace):
1005 New.
1006 (std::__profile::multimap<>::emplace_hint): New.
1007 * include/profile/set.h (std::__profile::set<>::emplace): New.
1008 (std::__profile::set<>::emplace_hint): New.
1009 * include/profile/multiset.h (std::__profile::multiset<>::emplace):
1010 New.
1011 (std::__profile::multiset<>::emplace_hint): New.
1012 * testsuite/util/testsuite_container_traits.h: Signal that emplace
1013 and emplace_hint are available on std::map, std::multimap,
1014 std::set and std::multiset in C++11.
1015 * testsuite/23_containers/map/operators/2.cc: New.
1016 * testsuite/23_containers/map/modifiers/emplace/1.cc: New.
1017 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: New.
1018 * testsuite/23_containers/set/modifiers/emplace/1.cc: New.
1019 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: New.
1020
1021 2012-09-24 François Dumont <fdumont@gcc.gnu.org>
1022
1023 * testsuite/performance/23_containers/insert_erase/41975.cc: Use
1024 __uset_hashtable rather than removed __unordered_set.
1025
1026 2012-09-23 Paolo Carlini <paolo.carlini@oracle.com>
1027
1028 Revert:
1029 2012-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1030
1031 * include/bits/stl_algobase.h (max, min): Use conditional operator.
1032
1033 2012-09-23 Uros Bizjak <ubizjak@gmail.com>
1034
1035 PR libstdc++/54675
1036 * include/ext/random: Avoid the badname __alpha (and, for
1037 consistency, __mu, __nu, __sigma and __omega too).
1038 * include/bits/random.tcc: Likewise.
1039
1040 2012-09-21 Edward Smith-Rowland <3dw4rd@verizon.net>
1041
1042 * include/ext/random: Add __gnu_cxx::pareto_distribution<> class.
1043 * include/ext/random.tcc: Add out-of-line functions for
1044 __gnu_cxx::pareto_distribution<>.
1045 * testsuite/ext/random/pareto_distribution/operators/equal.cc: New file.
1046 * testsuite/ext/random/pareto_distribution/operators/serialize.cc:
1047 New file.
1048 * testsuite/ext/random/pareto_distribution/operators/inequal.cc:
1049 New file.
1050 * testsuite/ext/random/pareto_distribution/cons/parms.cc: New file.
1051 * testsuite/ext/random/pareto_distribution/cons/default.cc: New file.
1052 * testsuite/ext/random/pareto_distribution/requirements/typedefs.cc:
1053 New file.
1054 * testsuite/ext/random/pareto_distribution/requirements/
1055 explicit_instantiation/1.cc: New file.
1056
1057 2012-09-21 Paolo Carlini <paolo.carlini@oracle.com>
1058
1059 * include/bits/stl_algobase.h (max, min): Use conditional operator.
1060
1061 2012-09-18 Benjamin Kosnik <bkoz@redhat.com>
1062
1063 PR libstdc++/28811
1064 PR libstdc++/54482
1065 * configure.ac (glibcxx_lt_pic_flag,
1066 glibcxx_compiler_pic_flag,
1067 glibcxx_compiler_shared_flag): New. Use them.
1068 (lt_prog_compiler_pic_CXX): Set via glibcxx_*_flag(s) above.
1069 (pic_mode): Set to default.
1070 (PIC_CXXFLAGS): Remove.
1071 * Makefile.am (PICFLAG, PICFLAG_FOR_TARGET): Remove. Comment.
1072 * libsupc++/Makefile.am: Use glibcxx_ld_pic_flag and
1073 glibcxx_compiler_shared_flag. Comment.
1074 * src/c++11/Makefile.am: Same.
1075 * src/c++98/Makefile.am: Same.
1076 * src/Makefile.am: Use glibcxx_compiler_pic_flag.
1077
1078 * Makefile.in: Regenerated.
1079 * aclocal.m4: Same.
1080 * configure: Same.
1081 * doc/Makefile.in: Same.
1082 * include/Makefile.in: Same.
1083 * libsupc++/Makefile.in: Same.
1084 * po/Makefile.in: Same.
1085 * python/Makefile.in: Same.
1086 * src/Makefile.in: Same.
1087 * src/c++11/Makefile.in: Same.
1088 * src/c++98/Makefile.in: Same.
1089 * testsuite/Makefile.in: Same.
1090
1091 * src/c++11/compatibility-atomic-c++0x.cc: Use
1092 _GLIBCXX_SHARED instead of PIC to designate shared-only
1093 code blocks.
1094 * src/c++11/compatibility-c++0x.cc: Same.
1095 * src/c++11/compatibility-thread-c++0x.cc: Same.
1096 * src/c++98/compatibility-list-2.cc: Same.
1097 * src/c++98/compatibility.cc: : Same.
1098
1099 * testsuite/17_intro/shared_with_static_deps.cc: New.
1100
1101 * doc/xml/manual/build_hacking.xml: Separate configure from
1102 make/build issues, add build details.
1103
1104 2012-09-18 Edward Smith-Rowland <3dw4rd@verizon.net>
1105
1106 * include/ext/random: Add __gnu_cxx::nakagami_distribution<> class.
1107 * include/ext/random.tcc: Add out-of-line functions for
1108 __gnu_cxx::nakagami_distribution<>.
1109 * testsuite/ext/random/nakagami_distribution/operators/equal.cc:
1110 New file.
1111 * testsuite/ext/random/nakagami_distribution/operators/serialize.cc:
1112 New file.
1113 * testsuite/ext/random/nakagami_distribution/operators/inequal.cc:
1114 New file.
1115 * testsuite/ext/random/nakagami_distribution/cons/parms.cc: New file.
1116 * testsuite/ext/random/nakagami_distribution/cons/default.cc: New file.
1117 * testsuite/ext/random/nakagami_distribution/requirements/typedefs.cc:
1118 New file.
1119 * testsuite/ext/random/nakagami_distribution/requirements/
1120 explicit_instantiation/1.cc: New file.
1121
1122 2012-09-18 Paolo Carlini <paolo.carlini@oracle.com>
1123
1124 PR libstdc++/54612
1125 * include/ext/random.tcc (operator==
1126 (const __gnu_cxx::simd_fast_mersenne_twister_engine<>&,
1127 const __gnu_cxx::simd_fast_mersenne_twister_engine<>&)): Fix
1128 state_size use.
1129 * config/cpu/i486/opt/ext/opt_random.h: Guard with __SSE2__.
1130
1131 2012-09-17 Ulrich Drepper <drepper@gmail.com>
1132
1133 * configure.ac: Substitute CPU_OPT_EXT_RANDOM.
1134 * configure.host: Define cpu_opt_ext_random to location of the
1135 optimized version of <ext/random>.
1136 * include/Makefile.am (ext_headers): Add ${ext_host_headers}.
1137 (ext_host_headers): Define.
1138 * include/ext/random (simd_fast_mersenne_twister_engine<>
1139 ::operator==): Don't define function here.
1140 * include/ext/random.tcc (simd_fast_mersenne_twister_engine): Don't
1141 define code using SSE2 here. Define generic code only if
1142 _GLIBCXX_OPT_HAVE_RANDOM_SFMT_GEN_READ is not defined.
1143 (simd_fast_mersenne_twister_engine<>
1144 ::operator==): Define here if
1145 _GLIBCXX_OPT_HAVE_RANDOM_SFMT_OPERATOREQUAL is not defined.
1146 * config/cpu/generic/opt/ext/opt_random.h: New file.
1147 * config/cpu/i486/opt/ext/opt_random.h: New file.
1148 * libsupc++/Makefile.in: Regenerated.
1149 * testsuite/Makefile.in: Regenerated.
1150 * po/Makefile.in: Regenerated.
1151 * configure: Regenerated.
1152 * Makefile.in: Regenerated.
1153 * doc/Makefile.in: Regenerated.
1154 * aclocal.m4: Regenerated.
1155 * python/Makefile.in: Regenerated.
1156 * include/Makefile.in: Regenerated.
1157 * src/c++98/Makefile.in: Regenerated.
1158 * src/c++11/Makefile.in: Regenerated.
1159 * src/Makefile.in: Regenerated.
1160
1161 2012-09-16 Edward Smith-Rowland <3dw4rd@verizon.net>
1162
1163 * include/ext/random.tcc (__gnu_cxx::rice_distribution<>
1164 ::__generate_impl): Remove bogus _Adaptor usage.
1165
1166 2012-09-16 Paolo Carlini <paolo.carlini@oracle.com>
1167
1168 * include/ext/random (rice_distribution<>::operator==): Change
1169 inline friend definition to non-template.
1170 * testsuite/ext/random/rice_distribution/requirements/
1171 explicit_instantiation/1.cc: New.
1172
1173 * testsuite/26_numerics/random/normal_mv_distribution: Move...
1174 * testsuite/ext/random/normal_mv_distribution: ... here.
1175 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine:
1176 Move...
1177 * testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here.
1178 * testsuite/26_numerics/random/beta_distribution: Move...
1179 * testsuite/ext/random/beta_distribution: ... here.
1180 * testsuite/26_numerics/random/rice_distribution: Move...
1181 * testsuite/ext/random/rice_distribution: ... here.
1182
1183 2012-09-14 Edward Smith-Rowland <3dw4rd@verizon.net>
1184
1185 * include/ext/random: Add __gnu_cxx::rice_distribution<> class.
1186 * include/ext/random.tcc: Add out-of-line functions for
1187 __gnu_cxx::rice_distribution<>.
1188 * testsuite/26_numerics/random/rice_distribution/
1189 operators/equal.cc: New file.
1190 * testsuite/26_numerics/random/rice_distribution/
1191 operators/serialize.cc: New file.
1192 * testsuite/26_numerics/random/rice_distribution/
1193 operators/inequal.cc: New file.
1194 * testsuite/26_numerics/random/rice_distribution/
1195 cons/parms.cc: New file.
1196 * testsuite/26_numerics/random/rice_distribution/
1197 cons/default.cc: New file.
1198 * testsuite/26_numerics/random/rice_distribution/
1199 requirements/typedefs.cc: New file.
1200
1201 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
1202
1203 * configure: Regenerated.
1204
1205 2012-09-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1206 H.J. Lu <hongjiu.lu@intel.com>
1207
1208 PR libstdc++/54576
1209 * src/c++11/random.cc: Check if _GLIBCXX_USE_C99_STDINT_TR1 is defined.
1210
1211 2012-09-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1212
1213 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
1214 * configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
1215 * fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
1216 * configure: Regenerate.
1217 * Makefile.in: Regenerate.
1218 * doc/Makefile.in: Regenerate.
1219 * include/Makefile.in: Regenerate.
1220 * libsupc++/Makefile.in: Regenerate.
1221 * po/Makefile.in: Regenerate.
1222 * python/Makefile.in: Regenerate.
1223 * src/Makefile.in: Regenerate.
1224 * src/c++11/Makefile.in: Regenerate.
1225 * src/c++98/Makefile.in: Regenerate.
1226 * testsuite/Makefile.in: Regenerate.
1227
1228 2012-09-11 Jakub Jelinek <jakub@redhat.com>
1229
1230 PR libstdc++/54172
1231 * libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
1232 argument of the first __atomic_compare_exchange_n.
1233
1234 2012-09-10 Sebastian Huber <sebastian.huber@embedded-brains.de>
1235 Jonathan Wakely <jwakely.gcc@gmail.com>
1236
1237 PR libstdc++/43852
1238 * acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
1239 * configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
1240 * config.h.in: Regenerate.
1241 * configure: Likewise.
1242 * libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
1243 * libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
1244 * doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
1245 * doc/html/manual/configure.html: Regenerate.
1246
1247 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1248
1249 PR bootstrap/54419
1250 * acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
1251 * configure: Regenerated.
1252
1253 2012-09-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1254
1255 PR libstdc++/54388
1256 * include/std/array (array::at() const): Ensure lvalue result.
1257 * testsuite/23_containers/array/element_access/54388.cc: New.
1258 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
1259 dg-error line numbers.
1260 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1261 Likewise.
1262
1263 2012-09-09 Ulrich Drepper <drepper@gmail.com>
1264 Dominique d'Humieres <dominiq@lps.ens.fr>
1265 Jack Howarth <howarth@bromo.med.uc.edu>
1266
1267 PR bootstrap/54419
1268 * acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
1269 * configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
1270 support in assembler.
1271 * src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
1272 (random_device::_M_init): Likewise.
1273 (random_device::_M_getval): Likewise.
1274 * configure: Regenerated.
1275 * config.h.in: Regenerated.
1276
1277 2012-09-09 Ulrich Drepper <drepper@gmail.com>
1278
1279 * src/c++11/random.cc (random_device::_M_init): Use new macro
1280 signature_INTEL_ebx to check for Intel processors.
1281
1282 2012-09-06 Thiago Macieira <thiago.macieira@intel.com>
1283
1284 PR libstdc++/54172
1285 * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
1286 we detect that another thread has had success. Don't compare_exchange
1287 from a finished state back to a waiting state. Comment.
1288
1289 2012-09-05 François Dumont <fdumont@gcc.gnu.org>
1290
1291 PR libstdc++/54296
1292 * include/bits/hashtable.h (_M_erase(size_type, __node_base*,
1293 __node_type*)): New.
1294 (erase(const_iterator)): Use latter.
1295 (_M_erase(std::true_type, const key_type&)): New, likewise.
1296 (_M_erase(std::false_type, const key_type&)): New. Find all nodes
1297 matching the key before deallocating them so that the key doesn't
1298 get invalidated.
1299 (erase(const key_type&)): Use the new member functions.
1300 * testsuite/23_containers/unordered_map/erase/54296.cc: New.
1301 * testsuite/23_containers/unordered_multimap/erase/54296.cc: New.
1302
1303 2012-09-05 Ulrich Drepper <drepper@gmail.com>
1304
1305 * src/c++11/random.cc (random_device::_M_init): Check whether cpuid
1306 instruction is available by using __get_cpuid_max.
1307
1308 * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)
1309 (operator()): Use __generate() function of _M_nd.
1310
1311 * include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.
1312 * include/ext/random.tccAdd out-of-line functions for
1313 __gnu_cxx::normal_mv_distribution<>.
1314 * testsuite/26_numerics/random/normal_mv_distribution/
1315 operators/equal.cc: New file.
1316 * testsuite/26_numerics/random/normal_mv_distribution/
1317 operators/serialize.cc: New file.
1318 * testsuite/26_numerics/random/normal_mv_distribution/
1319 operators/inequal.cc: New file.
1320 * testsuite/26_numerics/random/normal_mv_distribution/
1321 cons/default.cc: New file.
1322 * testsuite/26_numerics/random/normal_mv_distribution/
1323 cons/parms.cc: New file.
1324 * testsuite/26_numerics/random/normal_mv_distribution/
1325 requirements/explicit_instantiation/1.cc: New file.
1326 * testsuite/26_numerics/random/normal_mv_distribution/
1327 requirements/typedefs.cc: New file.
1328
1329 2012-09-04 Ulrich Drepper <drepper@gmail.com>
1330
1331 * include/ext/random: Add __gnu_cxx::beta_distribution<> class.
1332 * include/ext/random.tcc: Add out-of-line functions for
1333 __gnu_cxx::beta_distribution<>.
1334 * testsuite/26_numerics/random/beta_distribution/
1335 operators/equal.cc: New file.
1336 * testsuite/26_numerics/random/beta_distribution/
1337 operators/serialize.cc: New file.
1338 * testsuite/26_numerics/random/beta_distribution/
1339 operators/inequal.cc: New file.
1340 * testsuite/26_numerics/random/beta_distribution/
1341 cons/parms.cc: New file.
1342 * testsuite/26_numerics/random/beta_distribution/
1343 cons/default.cc: New file.
1344 * testsuite/26_numerics/random/beta_distribution/
1345 requirements/typedefs.cc: New file.
1346 * testsuite/26_numerics/random/beta_distribution/
1347 requirements/explicit_instantiation/1.cc: New file.
1348
1349 2012-09-04 Steven Bosscher <steven@gcc.gnu.org>
1350
1351 PR bootstrap/54453
1352 * include/Makefile.am: Fix regex.
1353 * include/Makefile.in: Regenerate.
1354
1355 2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
1356
1357 PR libstdc++/54005 continued
1358 * include/std/atomic: Use __atomic_lock_free with NULL.
1359 * include/bits/atomic_base.h: Same.
1360
1361 2012-08-30 Ulrich Drepper <drepper@gmail.com>
1362
1363 * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
1364 Remove 'return' from constructor.
1365
1366 2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
1367
1368 * testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
1369
1370 2012-08-29 Ulrich Drepper <drepper@gmail.com>
1371
1372 * include/bits/random.h (random_device): Move implementation to...
1373 * src/c++11/random.cc: ...here. New file.
1374 * config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18. Export
1375 std::random_device::* symbols.
1376 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
1377 * src/c++11/Makefile.am (sources): Add random.cc.
1378 * src/c++11/Makefile.in: Regenerated.
1379
1380 Add simd_fast_mersenne_twister_engine class.
1381 * include/ext/random: New file.
1382 * include/ext/random.tcc: New file.
1383 * include/Makefile.am (ext_headers): Add random and random.tcc.
1384 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1385 operators/inequal.cc: New file.
1386 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1387 operators/equal.cc: New file.
1388 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1389 operators/serialize.cc: New file.
1390 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1391 cons/seed2.cc: New file.
1392 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1393 cons/default.cc: New file.
1394 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1395 cons/seed_seq.cc: New file.
1396 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1397 cons/copy.cc: New file.
1398 * testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
1399 cons/seed1.cc: New file.
1400
1401 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1402
1403 PR libstdc++/54102, part 2
1404 * doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
1405 * doc/Makefile.in: Regenerate.
1406 * doc/html/*: Same.
1407
1408 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1409
1410 * doc/html/*: Regenerate.
1411
1412 2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
1413
1414 PR libstdc++/54102
1415 * doc/xsl/customization.xsl.in: New.
1416 * configure.ac: Output local copy of customization xsl.
1417 * doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
1418 (stamp-html-docbook): Set stringparam to UTF-8.
1419 * Makefile.in: Regenerated.
1420 * configure: Same.
1421 * doc/Makefile.in: Same.
1422
1423 2012-08-27 Ulrich Drepper <drepper@gmail.com>
1424
1425 Add interfaces to retrieve random numbers in bulk.
1426 * include/bits/random.h (uniform_int_distribution<>): Add __generate
1427 and __generate_impl functions.
1428 (uniform_real_distribution<>): Likewise.
1429 (bernoulli_distribution): Likewise.
1430 (geometric_distribution<>): Likewise.
1431 (negative_binomial_distribution<>): Likewise.
1432 (poisson_distribution<>): Likewise.
1433 (exponential_distribution<>): Likewise.
1434 (normal_distribution<>): Likewise.
1435 (lognormal_distribution<>): Likewise.
1436 (chi_squared_distribution<>): Likewise.
1437 (cauchy_distribution<>): Likewise.
1438 (fisher_f_distribution<>): Likewise.
1439 (student_t_distribution<>): Likewise.
1440 (gamma_distribution<>): Likewise.
1441 (weibull_distribution<>): Likewise.
1442 (extreme_value_distribution<>): Likewise.
1443 (discrete_distribution<>): Likewise.
1444 (piecewise_constant_distribution<>): Likewise.
1445 (piecewise_linear_distribution<>): Likewise.
1446 * include/bits/random.tcc (__detail::_Power_of_2): New function.
1447 (uniform_int_distribution<>::__generate_impl): New function.
1448 (uniform_real_distribution<>::__generate_impl): New function.
1449 (bernoulli_distribution::__generate_impl): New function.
1450 (geometric_distribution<>::__generate_impl): New function.
1451 (negative_binomial_distribution<>::__generate_impl): New function.
1452 (poisson_distribution<>::__generate_impl): New function.
1453 (exponential_distribution<>::__generate_impl): New function.
1454 (normal_distribution<>::__generate_impl): New function.
1455 (lognormal_distribution<>::__generate_impl): New function.
1456 (chi_squared_distribution<>::__generate_impl): New function.
1457 (cauchy_distribution<>::__generate_impl): New function.
1458 (fisher_f_distribution<>::__generate_impl): New function.
1459 (student_t_distribution<>::__generate_impl): New function.
1460 (gamma_distribution<>::__generate_impl): New function.
1461 (weibull_distribution<>::__generate_impl): New function.
1462 (extreme_value_distribution<>::__generate_impl): New function.
1463 (discrete_distribution<>::__generate_impl): New function.
1464 (piecewise_constant_distribution<>::__generate_impl): New function.
1465 (piecewise_linear_distribution<>::__generate_impl): New function.
1466
1467 2012-08-22 Ulrich Drepper <drepper@gmail.com>
1468
1469 * include/bits/random.h (mersenne_twister_engine): Don't inline
1470 discard here. New member function _M_gen_rand.
1471 * include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
1472 New function. Extracted from operator().
1473 (mersenne_twister_engine<>::discard): New implementation which
1474 skips in large steps.
1475 (mersenne_twister_engine<>::operator()): Use _M_gen_rand.
1476
1477 2012-08-26 Marc Glisse <marc.glisse@inria.fr>
1478 Paolo Carlini <paolo.carlini@oracle.com>
1479
1480 PR libstdc++/54376
1481 * include/bits/random.h (lognormal_distribution<>::operator==,
1482 gamma_distribution<>::operator==,
1483 chi_squared_distribution<>::operator==,
1484 fisher_f_distribution<>::operator==,
1485 student_t_distribution<>::operator==,
1486 binomial_distribution<>::operator==,
1487 negative_binomial_distribution<>::operator==,
1488 poisson_distribution<>::operator==): Change inline friend definition
1489 to non-template.
1490 * testsuite/26_numerics/random/binomial_distribution/requirements/
1491 explicit_instantiation/1.cc: New.
1492 * testsuite/26_numerics/random/cauchy_distribution/requirements/
1493 explicit_instantiation/1.cc: Likewise.
1494 * testsuite/26_numerics/random/chi_squared_distribution/
1495 requirements/explicit_instantiation/1.cc: Likewise.
1496 * testsuite/26_numerics/random/discrete_distribution/requirements/
1497 explicit_instantiation/1.cc: Likewise.
1498 * testsuite/26_numerics/random/exponential_distribution/
1499 requirements/explicit_instantiation/1.cc: Likewise.
1500 * testsuite/26_numerics/random/extreme_value_distribution/
1501 requirements/explicit_instantiation/1.cc: Likewise.
1502 * testsuite/26_numerics/random/fisher_f_distribution/requirements/
1503 explicit_instantiation/1.cc: Likewise.
1504 * testsuite/26_numerics/random/gamma_distribution/requirements/
1505 explicit_instantiation/1.cc: Likewise.
1506 * testsuite/26_numerics/random/geometric_distribution/requirements/
1507 explicit_instantiation/1.cc: Likewise.
1508 * testsuite/26_numerics/random/lognormal_distribution/requirements/
1509 explicit_instantiation/1.cc: Likewise.
1510 * testsuite/26_numerics/random/negative_binomial_distribution/
1511 requirements/explicit_instantiation/1.cc: Likewise.
1512 * testsuite/26_numerics/random/normal_distribution/requirements/
1513 explicit_instantiation/1.cc: Likewise.
1514 * testsuite/26_numerics/random/piecewise_constant_distribution/
1515 requirements/explicit_instantiation/1.cc: Likewise.
1516 * testsuite/26_numerics/random/piecewise_linear_distribution/
1517 requirements/explicit_instantiation/1.cc: Likewise.
1518 * testsuite/26_numerics/random/poisson_distribution/requirements/
1519 explicit_instantiation/1.cc: Likewise.
1520 * testsuite/26_numerics/random/student_t_distribution/requirements/
1521 explicit_instantiation/1.cc: Likewise.
1522 * testsuite/26_numerics/random/uniform_int_distribution/
1523 requirements/explicit_instantiation/1.cc: Likewise.
1524 * testsuite/26_numerics/random/uniform_real_distribution/
1525 requirements/explicit_instantiation/1.cc: Likewise.
1526 * testsuite/26_numerics/random/weibull_distribution/requirements/
1527 explicit_instantiation/1.cc: Likewise.
1528
1529 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1530
1531 * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
1532
1533 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1534
1535 PR libstdc++/54297
1536 * src/c++11/future.cc (~_Async_state_common): Move to...
1537 * src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
1538 Here.
1539 (_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
1540 * include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.
1541
1542 2012-08-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1543 Geoff Romer <gromer@google.com>
1544
1545 PR libstdc++/54351
1546 * include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
1547 reset().
1548 (unique_ptr<T[]>::~unique_ptr()): Likewise.
1549 * testsuite/20_util/unique_ptr/54351.cc: New.
1550 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
1551 line numbers.
1552
1553 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1554
1555 PR libstdc++/54297
1556 * include/std/future (~_Async_state_impl): Join thread before
1557 derived class members are destroyed.
1558 (~_Async_state_common): Only define non-trivial destructor when
1559 included from future.cc for ABI compatibility reasons.
1560 * src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
1561 * testsuite/30_threads/async/54297.cc: New.
1562
1563 2012-08-25 Jonathan Wakely <jwakely.gcc@gmail.com>
1564
1565 PR libstdc++/54248
1566 * include/bits/concept_check.h: Replace references to boost
1567 namespace.
1568
1569 2012-08-23 Jonathan Wakely <jwakely.gcc@gmail.com>
1570
1571 PR libstdc++/54354
1572 * doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
1573 * doc/html/*: Regenerate.
1574
1575 2012-08-15 Tom Tromey <tromey@redhat.com>
1576
1577 * testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
1578 New.
1579 (global): New global.
1580 (main): Add test for unique_ptr.
1581 * python/libstdcxx/v6/printers.py
1582 (UniquePointerPrinter.to_string): Extract the pointer and also
1583 print its type.
1584
1585 2012-08-13 David Adler <d.adler.s@gmail.com>
1586
1587 PR libstdc++/54185
1588 * src/c++11/condition_variable.cc (condition_variable): Always
1589 destroy native type in destructor.
1590 * testsuite/30_threads/condition_variable/54185.cc: New.
1591
1592 2012-08-13 François Dumont <fdumont@gcc.gnu.org>
1593 Ollie Wild <aaw@google.com>
1594
1595 * include/bits/hashtable.h
1596 (_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
1597 (_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
1598 (_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
1599 (_Hashtable<>::_M_insert_bucket): Replace by ...
1600 (_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
1601 ... this, new.
1602 (_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
1603 (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
1604 * include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
1605 latter, emplace the value_type rather than insert.
1606 * include/std/unordered_map: Include tuple.
1607 * include/std/unordered_set: Likewise.
1608 * testsuite/util/testsuite_counter_type.h: New.
1609 * testsuite/23_containers/unordered_map/operators/2.cc: New.
1610
1611 2012-08-13 Marc Glisse <marc.glisse@inria.fr>
1612
1613 PR libstdc++/54112
1614 * include/c_compatibility/complex.h: Undefine complex, always
1615 include system's complex.h if present.
1616 * testsuite/26_numerics/complex/c99.cc: New testcase.
1617 * testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
1618 * doc/xml/manual/numerics.xml: Document it.
1619
1620 2012-08-12 Jonathan Wakely <jwakely.gcc@gmail.com>
1621
1622 PR libstdc++/52681
1623 * src/c++11/thread.cc (thread::_M_start_thread): Improve error text
1624 when threads are not enabled.
1625
1626 2012-08-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1627
1628 * acinclude.m4: Update references to final C++11 standard.
1629 * include/bits/shared_ptr.h: Likewise.
1630 * include/bits/shared_ptr_base.h: Likewise.
1631 * include/bits/unique_ptr.h: Likewise.
1632 * include/std/chrono: Likewise.
1633 * include/std/thread: Likewise.
1634
1635 2012-08-07 Benjamin Kosnik <bkoz@redhat.com>
1636
1637 PR libstdc++/54005
1638 * include/std/atomic: Use __atomic_always_lock_free.
1639 * include/bits/atomic_base.h: Same.
1640
1641 2012-08-06 Paolo Carlini <paolo.carlini@oracle.com>
1642
1643 * testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
1644 tweaks.
1645 * testsuite/decimal/unary-arith.cc: Likewise.
1646 * testsuite/decimal/ctor.cc: Likewise.
1647 * testsuite/decimal/conversion-to-integral.cc: Likewise.
1648 * testsuite/decimal/make-decimal.cc: Likewise.
1649 * testsuite/decimal/comparison.cc: Likewise.
1650 * testsuite/decimal/incdec-memfunc.cc: Likewise.
1651 * testsuite/decimal/conversion-to-generic-float.cc: Likewise.
1652 * testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
1653 * testsuite/decimal/cast_neg.cc: Likewise.
1654 * testsuite/decimal/incdec.cc: Likewise.
1655 * testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
1656 * testsuite/decimal/binary-arith.cc: Likewise.
1657 * testsuite/decimal/conversion-from-float.cc: Likewise.
1658 * testsuite/decimal/conversion-from-integral.cc: Likewise.
1659 * testsuite/decimal/compound-assignment.cc: Likewise.
1660
1661 2012-08-06 Peter Bergner <bergner@vnet.ibm.com>
1662
1663 PR libstdc++/54036
1664 * include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
1665 a unary operator.
1666 * testsuite/decimal/pr54036-1.cc: New test.
1667 * testsuite/decimal/pr54036-2.cc: Likewise.
1668 * testsuite/decimal/pr54036-3.cc: Likewise.
1669
1670 2012-08-04 Paolo Carlini <paolo.carlini@oracle.com>
1671
1672 Revert:
1673 2012-08-03 Ollie Wild <aaw@google.com>
1674 Richard Smith <richardsmith@google.com>
1675
1676 * include/bits/stl_map.h (operator[](key_type&&)): Replace
1677 std::make_pair with value_type.
1678 * testsuite/23_containers/map/operators/2.cc: New test.
1679
1680 2012-08-03 François Dumont <fdumont@gcc.gnu.org>
1681
1682 * include/debug/functions.h (__check_partition_lower_aux): Remove
1683 redundant comparison with pivot value.
1684 (__check_partition_upper_aux): Likewise.
1685
1686 2012-08-03 Ollie Wild <aaw@google.com>
1687 Richard Smith <richardsmith@google.com>
1688
1689 * include/bits/stl_map.h (operator[](key_type&&)): Replace
1690 std::make_pair with value_type.
1691 * testsuite/23_containers/map/operators/2.cc: New test.
1692
1693 2012-08-03 Jonathan Wakely <jwakely.gcc@gmail.com>
1694
1695 * include/std/memory: Include auto_ptr.h later.
1696 * include/bits/shared_ptr.h (shared_ptr(auto_ptr<_Up>&&): Remove
1697 definition.
1698 * include/bits/shared_ptr_base.h (__shared_ptr(auto_ptr<_Up>&&):
1699 Likewise.
1700 * include/bits/unique_ptr.h (unique_ptr(auto_ptr<_Up>&&): Likewise.
1701 * include/backward/auto_ptr.h (unique_ptr(auto_ptr<_Up>&&): Define.
1702 (shared_ptr(auto_ptr<_Up>&&, __shared_ptr(auto_ptr<_Up>&&): Likewise.
1703 * include/std/future: Reduce header dependencies.
1704 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1705 numbers.
1706 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
1707 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1708
1709 2012-07-30 François Dumont <fdumont@gcc.gnu.org>
1710
1711 * include/bits/c++config (_GLIBCXX_END_NAMESPACE_CONTAINER): Fix
1712 order of closures.
1713 (_GLIBCXX_END_NAMESPACE_ALGO): Likewise.
1714
1715 2012-07-29 François Dumont <fdumont@gcc.gnu.org>
1716
1717 PR libstdc++/54075
1718 * include/bits/hashtable_policy.h
1719 (_Prime_rehash_policy::_M_next_bkt): Add a growth factor set to 2
1720 to boost growth in the number of buckets.
1721 * testsuite/performance/23_containers/insert/unordered_set.cc: New.
1722
1723 2012-07-25 François Dumont <fdumont@gcc.gnu.org>
1724
1725 PR libstdc++/54075
1726 * include/bits/hashtable.h
1727 (_Hashtable<>::_Hashtable(_InputIterator, _InputIterator,
1728 size_type, ...): Remove std::max usage to guarantee that hashtable
1729 state is consistent with hash policy state.
1730 (_Hashtable<>::rehash): Likewise. Set _M_prev_resize to 0 to avoid
1731 the hashtable shrinking on next insertion.
1732 * testsuite/23_containers/unordered_set/modifiers/reserve.cc: New.
1733 * testsuite/23_containers/unordered_multiset/modifiers/reserve.cc: New.
1734 * testsuite/23_containers/unordered_map/modifiers/reserve.cc: New.
1735 * testsuite/23_containers/unordered_multimap/modifiers/reserve.cc: New.
1736
1737 2012-07-20 Chip Salzenberg <chip@pobox.com>
1738 Jonathan Wakely <jwakely.gcc@gmail.com>
1739
1740 PR libstdc++/54025
1741 * include/std/chrono (duration<>::duration): Fix per C++11.
1742 * testsuite/20_util/duration/cons/54025.cc: New.
1743 * testsuite/20_util/duration/cons/constexpr.cc: Adjust.
1744
1745 2012-07-20 Paolo Carlini <paolo.carlini@oracle.com>
1746
1747 * testsuite/30_threads/thread/adl.cc: Add missing dg-requires.
1748
1749 2012-07-19 Tristan Gingold <gingold@adacore.com>
1750 Richard Henderson <rth@redhat.com>
1751
1752 * libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
1753 Adjust for SEH.
1754 * config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
1755
1756 2012-07-18 Paolo Carlini <paolo.carlini@oracle.com>
1757
1758 PR c++/51213
1759 * testsuite/20_util/pair/noncopyable.cc: New.
1760
1761 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1762
1763 PR libstdc++/53270
1764 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
1765 NSDMI in C++98 mode too.
1766 * include/ext/rope: Add system_header pragma.
1767 (_Refcount_Base, _Rope_RopeRep): Use NSDMI.
1768 (_Rope_RopeRep::~_Rope_RopeRep): Destroy mutex.
1769
1770 2012-07-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1771
1772 PR libstdc++/53978
1773 * include/bits/alloc_traits.h (allocator_traits): Define static
1774 constants.
1775 * include/bits/ptr_traits.h (pointer_traits): Likewise.
1776 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1777 Likewise.
1778
1779 2012-07-13 Paolo Carlini <paolo.carlini@oracle.com>
1780
1781 PR libstdc++/53657
1782 * include/bits/stl_pair.h (pair<>::pair(pair&&)): Declare defaulted,
1783 per C++11.
1784 * include/bits/stl_map.h (map<>::insert(_Pair&&), map<>::insert
1785 (const_iterator, _Pair&&)): Constrain with std::is_constructible,
1786 per LWG2005.
1787 * include/bits/stl_multimap.h (multimap<>::insert(_Pair&&),
1788 multimap<>::insert(const_iterator, _Pair&&)): Likewise.
1789 * include/bits/hashtable_policy.h (_Insert<>::insert(_Pair&&),
1790 _Insert<>::insert(const_iterator, _Pair&&)): Likewise.
1791 * include/debug/unordered_map: Adjust.
1792 * include/debug/map.h: Likewise.
1793 * include/debug/multimap.h: Likewise.
1794 * include/profile/unordered_map: Likewise.
1795 * include/profile/map.h: Likewise.
1796 * include/profile/multimap.h: Likewise.
1797
1798 2012-07-06 Paolo Carlini <paolo.carlini@oracle.com>
1799
1800 PR libstdc++/53872
1801 * include/std/thread (thread::_M_make_routine): Qualify make_shared
1802 to prevent ADL.
1803 * testsuite/30_threads/thread/adl.cc: New.
1804
1805 2012-07-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1806
1807 * include/std/condition_variable: Update copyright years.
1808
1809 2012-07-04 Jonathan Wakely <jwakely.gcc@gmail.com>
1810
1811 PR libstdc++/53830
1812 * include/std/condition_variable (condition_variable_any::wait):
1813 Move _Unlock type to class scope.
1814 (condition_variable_any::wait_until): Reuse it.
1815 * testsuite/30_threads/condition_variable_any/53830.cc: New.
1816
1817 2012-07-04 Matthias Klose <doko@ubuntu.com>
1818
1819 * testsuite/28_regex/headers/04_header: Remove empty directory.
1820 * testsuite/28_regex/algorithms/02_match: Likewise.
1821
1822 2012-07-03 Paolo Carlini <paolo.carlini@oracle.com>
1823
1824 PR libstdc++/53840
1825 * include/std/ratio (ratio_multiply, ratio_divide, ratio_add,
1826 ratio_subtract): Use template aliases.
1827 * include/std/chrono (duration<>::duration(const duration<>&),
1828 duration_cast): Adjust.
1829 * testsuite/20_util/ratio/operations/53840.cc: New.
1830 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1831 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
1832 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
1833 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Likewise.
1834
1835 2012-07-02 Paolo Carlini <paolo.carlini@oracle.com>
1836
1837 Revert:
1838 2011-10-04 Paolo Carlini <paolo.carlini@oracle.com>
1839
1840 PR libstdc++/49561
1841 * include/bits/stl_list.h (_List_base<>::_List_impl::_M_size):
1842 Add in C++0x mode.
1843 (_List_base<>::_List_impl, _List_base<>::_M_get_node,
1844 _List_base<>::_M_put_node, _List_base<>::_List_base(_List_base&&),
1845 list<>::size, list<>::swap, list<>::splice): Use it.
1846 (operator==(const list<>&, const list<>&)): Rewrite in C++0x mode.
1847 * include/bits/list.tcc (list<>::erase): Likewise.
1848 (list<>::merge): Adjust in C++0x mode.
1849 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1850 Adjust dg-error line number.
1851 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1852 Likewise.
1853 * testsuite/23_containers/list/requirements/dr438/
1854 constructor_1_neg.cc: Likewise.
1855 * testsuite/23_containers/list/requirements/dr438/
1856 constructor_2_neg.cc: Likewise.
1857
1858 2012-06-27 Benjamin Kosnik <bkoz@redhat.com>
1859
1860 * include/bits/c++config: Remove __regex nested namespace.
1861 * include/bits/regex_compiler.h: Change __regex to
1862 __detail. Adjust doxygen markup, add regex-details group.
1863 * include/bits/regex_constants.h: Same.
1864 * include/bits/regex_cursor.h: Same.
1865 * include/bits/regex_error.h: Same.
1866 * include/bits/regex_grep_matcher.h: Same.
1867 * include/bits/regex_grep_matcher.tcc: Same.
1868 * include/bits/regex_nfa.h: Same.
1869 * include/bits/regex_nfa.tcc: Same.
1870 * include/bits/regex.h: Same. Remove static from global constants.
1871
1872 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers.
1873
1874 * include/bits/locale_classes.tcc: Add use_facet, has_facet to
1875 locales group.
1876
1877 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net>
1878
1879 * include/tr2/bool_set (count, size, num_blocks, empty, max_size):
1880 Add noexcept.
1881
1882 2012-06-25 Edward Smith-Rowland <3dw4rd@verizon.net>
1883
1884 * include/tr2/dynamic_bitset (count, size, num_blocks, empty, max_size):
1885 Add noexcept.
1886
1887 2012-06-25 Benjamin Kosnik <bkoz@redhat.com>
1888
1889 * doc/doxygen/user.cfg.in: Change COMPACT_LATEX to NO.
1890
1891 2012-06-24 Benjamin Kosnik <bkoz@redhat.com>
1892
1893 * testsuite/28_regex/algorithms/02_match: To...
1894 * testsuite/28_regex/algorithms/match: ...this.
1895 * testsuite/28_regex/headers/04_header/regex/std_c++0x_neg.cc: Remove
1896 duplicate.
1897
1898 2012-06-18 Jörg Sonnenberger <joerg@britannica.bec.de>
1899 Jonathan Wakely <jwakely.gcc@gmail.com>
1900
1901 PR libstdc++/53678
1902 * config/os/bsd/netbsd/ctype_base.h: Check for _CTYPE_U.
1903 * testsuite/22_locale/ctype_base/53678.cc: New.
1904
1905 2012-06-15 Jonathan Wakely <jwakely.gcc@gmail.com>
1906
1907 PR libstdc++/53578
1908 * include/ext/concurrence.h (__recursive_mutex::_S_destroy): Fix
1909 narrowing conversion.
1910 * include/std/mutex (__recursive_mutex_base::_S_destroy): Likewise.
1911
1912 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1913
1914 PR libstdc++/53270
1915 * include/ext/concurrence.h (__mutex, __recursive_mutex, __cond): Use
1916 NSDMI in C++11 mode.
1917 * include/ext/rope (_Refcount_Base): Likewise. Destroy mutex in
1918 destructor when initialized by function.
1919
1920 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1921
1922 PR libstdc++/53648
1923 * include/std/tuple (__empty_not_final): Do not use EBO for tuples.
1924 * testsuite/20_util/tuple/53648.cc: New.
1925 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line
1926 number.
1927
1928 2012-06-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1929
1930 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
1931
1932 2012-06-01 Jonathan Wakely <jwakely.gcc@gmail.com>
1933
1934 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status table.
1935
1936 2012-05-31 Benjamin Kosnik <bkoz@redhat.com>
1937
1938 PR libstdc++/53543
1939 * include/bits/hashtable_policy.h (_Insert::__is_convertible):
1940 Rename to __is_conv to avoid clash with clang built-in.
1941
1942 2012-05-29 François Dumont <fdumont@gcc.gnu.org>
1943
1944 * include/bits/stl_tempbuf.h (__uninitialized_construct_buf)
1945 (__uninitialized_construct_buf_dispatch<>::__ucr): Fix to work
1946 with iterator returning rvalue.
1947 * testsuite/25_algorithms/stable_sort/3.cc: New.
1948
1949 2012-05-28 Paolo Carlini <paolo.carlini@oracle.com>
1950
1951 PR c++/53503
1952 * testsuite/26_numerics/headers/cmath/53503.cc: New.
1953
1954 2012-05-22 Dodji Seketeli <dodji@redhat.com>
1955
1956 PR c++/53322
1957 * include/bits/stl_algobase.h (lower_bound)
1958 (lexicographical_compare): Do not declare unused local typedefs
1959 here when Concepts are turned off.
1960
1961 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
1962
1963 * testsuite/22_locale/num_put/put/char/9780-2.cc: Avoid -Wall warnings.
1964 * testsuite/29_atomics/atomic/cons/49445.cc: Likewise.
1965 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
1966 * Likewise.
1967 * testsuite/23_containers/unordered_map/observers.cc: Likewise.
1968 * testsuite/23_containers/unordered_map/erase/1.cc: Likewise.
1969 * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise.
1970 * testsuite/23_containers/unordered_multimap/erase/2.cc: Likewise.
1971 * testsuite/23_containers/unordered_multimap/insert/53115.cc: Likewise.
1972 * testsuite/23_containers/unordered_multimap/observers.cc: Likewise.
1973 * testsuite/23_containers/vector/debug/alloc_prop.cc: Likewise.
1974 * testsuite/23_containers/unordered_set/observers.cc: Likewise.
1975 * testsuite/23_containers/unordered_set/erase/1.cc: Likewise.
1976 * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise.
1977 * testsuite/23_containers/unordered_multiset/erase/2.cc: Likewise.
1978 * testsuite/23_containers/unordered_multiset/insert/53115.cc: Likewise.
1979 * testsuite/23_containers/unordered_multiset/insert/multiset_range.cc:
1980 * Likewise.
1981 * testsuite/23_containers/unordered_multiset/observers.cc: Likewise.
1982
1983 2012-05-21 Paolo Carlini <paolo.carlini@oracle.com>
1984
1985 PR c++/53361
1986 * testsuite/23_containers/array/cons/53361.cc: New.
1987
1988 2012-05-17 Paolo Carlini <paolo.carlini@oracle.com>
1989
1990 PR c++/44516
1991 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust
1992 dg-error line number.
1993
1994 2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
1995
1996 * configure: Regenerated.
1997
1998 2012-05-15 Paolo Carlini <paolo.carlini@oracle.com>
1999
2000 PR libstdc++/53339
2001 * include/bits/hashtable_policy.h (__detail::_Identity,
2002 __detail::_Select1st): Add.
2003 (_Map_base, _Hashtable_base): Use the latter, adjust parameters.
2004 * include/bits/hashtable.h (_Hashtable::__key_extract): Adjust.
2005 * include/bits/unordered_set.h (__uset_hashtable, __umset_hashtable):
2006 Likewise.
2007 * include/bits/unordered_map.h (__umap_hashtable, __ummap_hashtable):
2008 Likewise.
2009 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd)
2010 Unconditionally derive from unary_function.
2011 * include/ext/functional (identity, select1st, select2nd): Remove
2012 #ifdef __GXX_EXPERIMENTAL_CXX0X__ bits.
2013 * testsuite/23_containers/unordered_map/requirements/53339.cc: New.
2014 * testsuite/23_containers/unordered_multimap/requirements/
2015 53339.cc: Likewise.
2016
2017 2012-05-11 François Dumont <fdumont@gcc.gnu.org>
2018
2019 PR libstdc++/53263
2020 * include/debug/safe_iterator.h (__gnu_debug::__base): Move...
2021 * include/debug/functions.h: ... Here.
2022 (__check_sorted_aux): Add overload for random access safe
2023 iterators.
2024 (__check_partition_lower_aux): New.
2025 (__check_partition_lower): Use latter.
2026 (__check_partition_upper_aux): New.
2027 (__check_partition_upper): Use latter.
2028 * include/debug/macros.h (__glibcxx_check_heap)
2029 (__glibcxx_check_heap_pred): Use __gnu_debug::__base on iterator range.
2030
2031 2012-05-10 DJ Delorie <dj@redhat.com>
2032
2033 * include/bits/random.tcc (seed_seq::generate): Cast max()
2034 operands to size_t to ensure a template match.
2035 * include/std/bitset (_M_copy_from_ptr): Cast min() operands to
2036 size_t to ensure a template match.
2037
2038 2012-05-03 Benjamin Kosnik <bkoz@redhat.com>
2039
2040 * scripts/testsuite_flags.in (cxxflags): Remove
2041 -ftrack-macro-expansion=0.
2042
2043 2012-05-03 Jonathan Wakely <jwakely.gcc@gmail.com>
2044
2045 * doc/xml/faq.xml: Update outdated allocator documentation.
2046 * doc/xml/manual/allocator.xml: Likewise.
2047 * doc/xml/manual/debug.xml: Likewise.
2048 * doc/xml/manual/evolution.xml: Likewise.
2049 * doc/xml/manual/using.xml: Likewise.
2050
2051 2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
2052
2053 PR libstdc++/44015
2054 * include/bits/basic_ios.h: Add tparam markup for
2055 * doxygen. include/bits/basic_string.h: Same.
2056 * include/bits/forward_list.h: Same.
2057 * include/bits/stl_bvector.h: Same.
2058 * include/bits/stl_deque.h: Same.
2059 * include/bits/stl_list.h: Same. include/bits/stl_map.h:
2060 * Same. include/bits/stl_multimap.h: Same.
2061 * include/bits/stl_multiset.h: Same.
2062 * include/bits/stl_pair.h: Same.
2063 * include/bits/stl_queue.h: Same.
2064 * include/bits/stl_set.h: Same.
2065 * include/bits/stl_stack.h: Same.
2066 * include/bits/stl_vector.h: Same.
2067 * include/bits/unordered_map.h: Same.
2068 * include/bits/unordered_set.h: Same. include/std/array:
2069 * Same. include/std/atomic: Same. include/std/fstream:
2070 * Same. include/std/istream: Same. include/std/ostream:
2071 * Same. include/std/sstream: Same.
2072 * include/std/streambuf: Same.
2073 * testsuite/23_containers/deque/requirements/dr438/*:
2074 Adjust line numbers.
2075 * testsuite/23_containers/list/requirements/dr438/*: Same.
2076 * testsuite/23_containers/vector/requirements/dr438/*: Same.
2077
2078 2012-05-02 DJ Delorie <dj@redhat.com>
2079
2080 * crossconfig.m4: Since we know that all TPF builds are cross-
2081 builds and cannot run configuration-time link tests, do not
2082 allow it; just go with known supported linker options.
2083 * configure: Regenerate (called as GLIBCXX_CROSSCONFIG).
2084
2085 2012-05-02 Benjamin Kosnik <bkoz@redhat.com>
2086
2087 * include/bits/hashtable_policy.h: Correct namepace nesting for
2088 _Hashtable forward declaration.
2089
2090 2012-05-01 François Dumont <fdumont@gcc.gnu.org>
2091
2092 PR libstdc++/53115
2093 * include/bits/hashtable.h
2094 (_Hashtable<>::_M_rehash_aux(size_type, false_type)): Fix buckets
2095 after insertion of several equivalent elements.
2096 * testsuite/23_containers/unordered_multiset/insert/53115.cc: New.
2097 * testsuite/23_containers/unordered_multimap/insert/53115.cc: New.
2098
2099 2012-04-29 Marc Glisse <marc.glisse@inria.fr>
2100 Paolo Carlini <paolo.carlini@oracle.com>
2101
2102 PR libstdc++/51795
2103 * include/bits/stl_algobase.h (__lg<>(_Size)): Remove.
2104 (__lg(int), __lg(unsigned), __lg(long), __lg(unsigned long),
2105 __lg(long long), __lg(unsigned long long)): Define constexpr.
2106 * include/bits/random.h (_Mod<>): Overcome Schrage's algorithm
2107 limitations.
2108 (__mod): Adjust.
2109 (linear_congruential): Remove FIXME static_assert.
2110 * include/bits/random.tcc (_Mod<>): Adjust.
2111 * testsuite/26_numerics/random/linear_congruential_engine/operators/
2112 51795.cc: New.
2113
2114 2012-04-29 Jonathan Wakely <jwakely.gcc@gmail.com>
2115
2116 * include/std/functional (function::function(F)): LWG 2132: Disable
2117 constructor if argument isn't callable.
2118 * testsuite/20_util/function/cons/callable.cc: New.
2119
2120 2012-04-29 Marc Glisse <marc.glisse@inria.fr>
2121
2122 PR libstdc++/22200
2123 * include/std/limits (numeric_limits<>::is_modulo): False for
2124 signed types.
2125
2126 2012-04-25 Benjamin Kosnik <bkoz@redhat.com>
2127
2128 * include/bits/hashtable.h: Adjust doxygen markup for base
2129 classes.
2130 * include/bits/hashtable_policy.h: Same.
2131
2132 2012-04-25 Benjamin Kosnik <bkoz@redhat.com>
2133
2134 PR libstdc++/52689
2135 * testsuite/17_intro/static.cc: Fix.
2136 * testsuite/lib/dg-options.exp (dg-require-static-libstdcxx): New.
2137 * testsuite/lib/libstdc++.exp (check_v3_target_static_libstdcxx): New.
2138
2139 2012-04-25 Jonathan Wakely <jwakely.gcc@gmail.com>
2140
2141 * include/std/scoped_allocator (scoped_allocator::__outermost): Do
2142 not pass non-POD to varargs function.
2143 * testsuite/20_util/scoped_allocator/1.cc: Fix test.
2144
2145 2012-04-24 Benjamin Kosnik <bkoz@redhat.com>
2146
2147 PR libstdc++/52689
2148 * testsuite/17_intro/static.cc: New.
2149
2150 2012-04-23 Daniel Krugler <daniel.kruegler@gmail.com>
2151
2152 * include/std/type_traits (is_nothrow_destructible): Implement.
2153 (is_destructible): Implement LWG 2049.
2154 * testsuite/util/testsuite_tr1.h: Add tests.
2155 * testsuite/20_util/is_nothrow_destructible/value.cc: New.
2156 * testsuite/20_util/is_nothrow_destructible/requirements/typedefs.cc:
2157 * testsuite/20_util/is_nothrow_destructible/requirements/
2158 explicit_instantiation.cc: Likewise.
2159 * testsuite/20_util/is_destructible/value.cc: Adjust and extend.
2160 * testsuite/20_util/is_default_constructible/value.cc: Tweak.
2161 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
2162 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust
2163 dg-error line numbers.
2164 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2165 Likewise.
2166 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2167
2168 2012-04-23 Paolo Carlini <paolo.carlini@oracle.com>
2169
2170 PR libstdc++/53080
2171 * include/std/array (tuple_element, get): static_assert I < N.
2172 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
2173 New.
2174 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
2175 * testsuite/23_containers/array/tuple_interface/tuple_element.cc: Fix.
2176
2177 2012-04-23 Chris Jefferson <chris@bubblescope.net>
2178
2179 PR testsuite/53046
2180 * testsuite/25_algorithms/stable_partition/mem_check.cc: Fix size
2181 of array A.
2182 * testsuite/25_algorithms/stable_sort/mem_check.cc: Likewise.
2183
2184 2012-04-22 Paolo Carlini <paolo.carlini@oracle.com>
2185
2186 PR libstdc++/53067
2187 * include/bits/hashtable_policy.h: Change inheritances to public.
2188 * testsuite/23_containers/unordered_map/requirements/53067.cc: New.
2189 * testsuite/23_containers/unordered_set/requirements/53067.cc: Likewise.
2190
2191 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2192
2193 * include/ext/alloc_traits.h (__alloc_traits::difference_type):
2194 Define.
2195
2196 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2197
2198 PR libstdc++/53027
2199 * include/bits/ptr_traits.h (pointer_traits::rebind): Make public.
2200 * testsuite/20_util/pointer_traits/requirements/typedefs.cc: Check
2201 rebind works.
2202
2203 2012-04-22 Jonathan Wakely <jwakely.gcc@gmail.com>
2204
2205 * include/debug/forward_list (forward_list::splice_after): Check
2206 allocators are equal.
2207 * src/c++11/debug.cc: Fix spelling.
2208 * testsuite/23_containers/forward_list/debug/splice_after5_neg.cc:
2209 New.
2210 * testsuite/23_containers/forward_list/debug/splice_after6_neg.cc:
2211 Likewise.
2212 * testsuite/23_containers/forward_list/debug/splice_after7_neg.cc:
2213 Likewise.
2214
2215 2012-04-20 Paolo Carlini <paolo.carlini@oracle.com>
2216
2217 PR libstdc++/53052
2218 * include/std/type_traits (is_explicitly_convertible): Remove.
2219 * testsuite/20_util/is_explicitly_convertible: Likewise.
2220 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2221 Adjust dg-error line numbers.
2222 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2223 Likewise.
2224 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2225
2226 2012-04-17 Benjamin Kosnik <bkoz@redhat.com>
2227
2228 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
2229 808590.cc: New.
2230
2231 2012-04-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2232
2233 * testsuite/util/testsuite_abi.cc (compare_symbols): Change
2234 summary header to avoid confusion with DejaGnu header.
2235
2236 2012-04-15 Paolo Carlini <paolo.carlini@oracle.com>
2237
2238 PR libstdc++/52702
2239 * include/std/type_traits (is_trivially_destructible): Add.
2240 (has_trivial_destructor): Remove.
2241 * testsuite/util/testsuite_common_types.h: Adjust.
2242 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
2243 * testsuite/20_util/pair/requirements/dr801.cc: Likewise.
2244 * testsuite/20_util/is_trivially_destructible/value.cc: New.
2245 * testsuite/20_util/is_trivially_destructible/requirements/
2246 typedefs.cc: Likewise.
2247 * testsuite/20_util/is_trivially_destructible/requirements/
2248 explicit_instantiation.cc: Likewise.
2249 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2250 Adjust dg-error line numbers.
2251 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2252 Likewise.
2253 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2254
2255 2012-04-14 Paolo Carlini <paolo.carlini@oracle.com>
2256
2257 PR libstdc++/52699
2258 * include/bits/random.tcc (independent_bits_engine<>::operator()())
2259 Avoid various overflows; use common_type on result_type and
2260 _RandomNumberEngine::result_type; avoid floating point computations;
2261 other smaller tweaks.
2262
2263 * include/bits/random.tcc (uniform_int_distribution<>::operator())
2264 Use common_type; assume _UniformRandomNumberGenerator::result_type
2265 unsigned; tidy.
2266
2267 * include/bits/stl_algobase.h (__lg(unsigned), __lg(unsigned long),
2268 __lg(unsigned long long)): Add.
2269
2270 2012-04-14 Alan Modra <amodra@gmail.com>
2271
2272 PR libstdc++/52839
2273 * acinclude.m4 (_GLIBCXX_ATOMIC_BUILTINS): Do not depend on
2274 glibcxx_cv_atomic_long_long.
2275 * configure: Regenerate.
2276
2277 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
2278
2279 * testsuite/26_numerics/cmath/51083.cc: Move...
2280 * testsuite/26_numerics/headers/cmath/51083.cc: ... here.
2281
2282 2012-04-13 Laurent Alfonsi <laurent.alfonsi@st.com>
2283
2284 PR libstdc++/52604
2285 * src/c++98/mt_allocator.cc: (__freelist::~__freelist): Reset pointer.
2286
2287 2012-04-13 Paolo Carlini <paolo.carlini@oracle.com>
2288
2289 * include/debug/safe_iterator.h (_BeforeBeginHelper<>::
2290 _S_Is_Beginnest): Add.
2291 * include/debug/forward_list (_BeforeBeginHelper<>::
2292 _S_Is_Beginnest): Likewise.
2293 (_Safe_iterator<>::_M_is_beginnest): Add.
2294 * include/debug/safe_iterator.tcc (_Safe_iterator<>::_M_valid_range):
2295 Use the latter.
2296 * testsuite/23_containers/forward_list/debug/splice_after.cc:
2297 Add test.
2298
2299 2012-04-12 Benjamin Kosnik <bkoz@redhat.com>
2300
2301 * include/bits/unordered_map.h (__unordered_map): Remove.
2302 (__unordered_multimap): Remove.
2303 Add aliases for __umap_traits, __umap_hashtable, __ummap_traits,
2304 __ummap_hashtable.
2305 (unordered_map): Derive from __umap_hashtable.
2306 (unordered_multimap): Derive from __ummap_hashtable.
2307 * include/bits/unordered_set.h (__unordered_set): Remove.
2308 (__unordered_multiset): Remove.
2309 Add aliases for __uset_traits, __uset_hashtable, __umset_traits,
2310 __umset_hashtable.
2311 (unordered_set): Derive from __uset_hashtable.
2312 (unordered_multiset): Derive from __umset_hashtable.
2313 * include/bits/hashtable.h (__cache_default): New, consolidated
2314 cache defaults for _Hashtable. Adjust comments for doxygen.
2315 (_Hashtable): Consolidate bool template parameters into new,
2316 _Traits class. Inherited base classes synthesize _Hashtable in
2317 CRTP via original 10 parameters. Prefer using declarations to
2318 typedefs, add __node_type, __bucket_type, etc. Push many nested
2319 types down hierarchy to _Hashtable_base. Add constructors
2320 necessary for top-level unordered_containers. Consolidate insert
2321 member functions and logic in new base class, __detail::_Insert
2322 and __detail::_Insert_base.
2323 (_Hashtable::operator=(initializer_list)): Add.
2324 * include/bits/hashtable_policy.h: Convert to doxygen markup.
2325 (_Hashtable_traits) New. Consolidate bool template parameters here.
2326 (_Insert, _Insert_base): New, consolidated insert member functions.
2327 (_Map_base, _Equality, _Rehash_base): Adjust template parameters,
2328 use base types.
2329 (_Hashtable_base): Move type declarations useful to other base
2330 classes into this class.
2331 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Update.
2332 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2333 Adjust traits, line numbers.
2334
2335 2012-04-12 Jeffrey Yasskin <jyasskin@google.com>
2336
2337 PR libstdc++/52822
2338 * include/bits/stl_algo.h (__find_if_not): Expose in C++98 mode.
2339 (__find_if_not_n): Like __find_if_not, but works on and updates a
2340 counted range instead of a bounded range.
2341 (stable_partition): Guarantee !__pred(*__first) in call to
2342 __stable_partition_adaptive() or __inplace_stable_partition().
2343 (__stable_partition_adaptive): Use new precondition to avoid
2344 moving/copying objects onto themselves. Guarantee new
2345 precondition to recursive calls.
2346 (__inplace_stable_partition): Use new precondition to simplify
2347 base case, remove __last parameter. Guarantee new precondition to
2348 recursive calls.
2349 * testsuite/25_algorithms/stable_partition/moveable.cc (test02):
2350 Test a sequence that starts with a value matching the predicate.
2351 * testsuite/25_algorithms/stable_partition/pr52822.cc: Test
2352 vectors, which have a destructive self-move-assignment.
2353
2354 2012-04-12 Andreas Schwab <schwab@linux-m68k.org>
2355
2356 * testsuite/Makefile.am (check_DEJAGNUnormal0): Run
2357 prettyprinters.exp.
2358 * testsuite/Makefile.in: Regenerated.
2359
2360 2012-04-12 Paolo Carlini <paolo.carlini@oracle.com>
2361
2362 PR libstdc++/52942
2363 * include/bits/stl_function.h (_Identity, _Select1st, _Select2nd):
2364 In C++11 mode do not derive from std::unary_function.
2365 * include/ext/functional (identity, select1st, select2nd): Adjust.
2366 * testsuite/23_containers/unordered_map/requirements/52942.cc: New.
2367 * testsuite/23_containers/unordered_set/requirements/52942.cc: Likewise.
2368
2369 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2370
2371 PR libstdc++/52924
2372 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Add
2373 user-defined destructor.
2374 (_Sp_counted_inplace): Likewise.
2375 * testsuite/20_util/shared_ptr/cons/52924.cc: New.
2376 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
2377 line numbers.
2378
2379 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2380
2381 * doc/xml/manual/debug.xml (Debug Versions of Library Binary Files):
2382 Re-arrange text slightly.
2383
2384 2012-04-11 Jonathan Wakely <jwakely.gcc@gmail.com>
2385
2386 * testsuite/performance/30_threads/future/polling.cc: Adjust.
2387
2388 2012-04-11 Paolo Carlini <paolo.carlini@oracle.com>
2389
2390 * include/bits/forward_list.h (splice_after(const_iterator,
2391 forward_list&), splice_after(const_iterator, forward_list&,
2392 const_iterator), splice_after(const_iterator, forward_list&,
2393 const_iterator, const_iterator), merge(forward_list&),
2394 merge(forward_list&, _Comp)): Add per C++11 as published (and
2395 LWG 1310).
2396 * include/debug/forward_list: Adjust.
2397
2398 * include/bits/forward_list.h (splice_after(const_iterator,
2399 forward_list&&, const_iterator)): Only declare.
2400 (_M_transfer_after): Remove.
2401 (_M_splice_after(const_iterator, forward_list&&)): Change signature.
2402 (splice_after(const_iterator, forward_list&&, const_iterator,
2403 const_iterator)): Use the latter.
2404 * include/bits/forward_list.tcc (splice_after(const_iterator,
2405 forward_list&&, const_iterator)): Define here.
2406 (_M_splice_after): Define, use throughout.
2407
2408 * include/bits/forward_list.h (insert_after(const_iterator,
2409 std::initializer_list<_Tp>)): Forward to insert_after(const_iterator,
2410 _InputIterator, _InputIterator).
2411 * include/bits/forward_list.tcc: Remove definition.
2412
2413 * testsuite/23_containers/forward_list/modifiers/6.cc: New.
2414 * testsuite/23_containers/forward_list/operations/1.cc: Adjust.
2415
2416 2012-04-11 Paolo Carlini <paolo.carlini@oracle.com>
2417
2418 PR libstdc++/52931
2419 * include/bits/functional_hash.h (struct hash): Remove definition.
2420 * testsuite/20_util/hash/52931.cc: New.
2421
2422 2012-04-11 Manuel López-Ibáñez <manu@gcc.gnu.org>
2423
2424 PR 24985
2425 * testsuite/lib/prune.exp: Handle caret.
2426
2427 2012-04-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2428
2429 Partially revert:
2430 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2431
2432 PR libstdc++/52689
2433 * src/c++98/compatibility-list.cc: Same.
2434
2435 2012-04-05 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2436
2437 PR bootstrap/52840
2438 * src/Makefile.am (build-debug): Do not adjust vpath dir, remove
2439 Makefile.tmp
2440 * src/Makefile.in: Adjust as per above.
2441
2442 2012-04-04 Uros Bizjak <ubizjak@gmail.com>
2443
2444 Partially revert:
2445 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2446
2447 PR libstdc++/52689
2448 * src/c++98/compatibility-ldbl.cc: Guard with PIC
2449
2450 2012-04-02 Tristan Gingold <gingold@adacore.com>
2451
2452 * crossconfig.m4 (*-*-*vms*): Add.
2453 * configure: Regenerate.
2454
2455 2012-04-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2456
2457 PR libstdc++/52591
2458 * include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
2459 to _M_move_assign depending on whether allocator is moved.
2460 (vector::_M_move_assign): Add overloaded functions.
2461 * testsuite/23_containers/vector/52591.cc: New.
2462 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2463 Adjust dg-error line number.
2464 * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
2465 Likewise.
2466 * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
2467 Likewise.
2468 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2469 Likewise.
2470
2471 2012-04-01 Jonathan Wakely <jwakely.gcc@gmail.com>
2472
2473 * include/std/functional (__callable_functor): Overload for
2474 volatile-qualified pointers.
2475 * testsuite/20_util/function/10.cc: New.
2476
2477 2012-03-30 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
2478 Paolo Carlini <paolo.carlini@oracle.com>
2479
2480 PR libstdc++/52799
2481 * include/bits/deque.tcc (emplace): Fix thinko, replace push_front
2482 -> emplace_front, and likewise for *_back.
2483 * testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
2484 * testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
2485 * testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.
2486
2487 2012-03-28 Benjamin Kosnik <bkoz@redhat.com>
2488
2489 PR libstdc++/52689
2490 * libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2491 * libsupc++/Makefile.in: Regenerated.
2492 * src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2493 (libstdc___la_SOURCES): Add in compatiblity files, with content
2494 that varies with -DPIC.
2495 * src/Makefile.in: Regenerated.
2496 * src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2497 * src/c++11/Makefile.in: Regenerated.
2498 * src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
2499 * src/c++11/compatibility-c++0x.cc: Same.
2500 * src/c++11/future.cc: Consolidate compatibility bits into..
2501 * src/c++11/mutex.cc: Consolidate compatibility bits into..
2502 * src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
2503 * src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
2504 * src/c++98/Makefile.in: Regenerated.
2505 * src/c++98/compatibility-ldbl.cc: Guard with PIC
2506 * src/c++98/compatibility-list-2.cc: Same.
2507 * src/c++98/compatibility-list.cc: Same.
2508 * src/c++98/compatibility.cc: Tweak comments.
2509
2510 2012-03-28 Terry Guo <terry.guo@arm.com>
2511
2512 * testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
2513 * testsuite/Makefile.in: Regenerated.
2514
2515 2012-03-27 Jonathan Wakely <jwakely.gcc@gmail.com>
2516
2517 * include/std/functional (mem_fn): Qualify to prevent ADL.
2518 * testsuite/20_util/function_objects/mem_fn/adl.cc: New.
2519
2520 2012-03-27 Jonathan Wakely <jwakely.gcc@gmail.com>
2521
2522 * include/std/type_traits (result_of): Fix handling of cv-quals.
2523 * testsuite/20_util/result_of/1.cc: New.
2524 * testsuite/20_util/result_of/2.cc: New.
2525 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
2526 line numbers.
2527 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2528 Likewise.
2529 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2530 Likewise.
2531
2532 2012-03-23 David S. Miller <davem@davemloft.net>
2533
2534 * config/abi/post/sparc-linux-gnu/baseline_symbols.txt: Update.
2535
2536 2012-03-23 Benjamin Kosnik <bkoz@redhat.com>
2537
2538 * scripts/testsuite_flags.in (--cxxflags): Let CXXFLAGS set -g -O2.
2539 * testsuite/lib/libstdc++.exp: Same.
2540
2541 2012-03-23 Paolo Carlini <paolo.carlini@oracle.com>
2542
2543 * include/bits/forward_list.h: Slightly tweak two comments.
2544
2545 2012-03-22 Benjamin Kosnik <bkoz@redhat.com>
2546
2547 * doc/Makefile.am: XML output names have only .xml suffix.
2548 * doc/Makefile.in: Regenerate.
2549
2550 2012-03-22 Paolo Carlini <paolo.carlini@oracle.com>
2551
2552 * include/std/array (array<>::at(size_type) const): Fix version
2553 for undefined __EXCEPTIONS.
2554
2555 2013-03-21 Andreas Tobler <andreast@fgznet.ch>
2556
2557 * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc:
2558 Skip this test on powerpc64-*-freebsd*.
2559
2560 2012-03-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2561
2562 * include/bits/stl_list.h (list::_M_size): Use NSDMI.
2563 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2564 Adjust line numbers.
2565 * testsuite/23_containers/list/requirements/dr438/
2566 constructor_1_neg.cc: Likewise.
2567 * testsuite/23_containers/list/requirements/dr438/
2568 constructor_2_neg.cc: Likewise.
2569 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2570 Likewise.
2571
2572 2012-03-19 Paweł Sikora <pawel.sikora@agmk.net>
2573
2574 PR libstdc++/52540
2575 * include/Makefile.am (c++config.h): Fix sed rule to not break
2576 the _GLIBCXX_EXTERN_TEMPLATE redefinition.
2577 * include/Makefile.in: Regenerate.
2578
2579 2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
2580
2581 * testsuite/Makefile.in: Regenerate.
2582
2583 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
2584
2585 * include/bits/allocator.h (std::allocator): Base class is
2586 __allocator_base.
2587 (uses_allocator): Add to sub-grouping.
2588 * include/ext/new_allocator.h: Doxygen markup for tparm.
2589
2590 * config/allocator/bitmap_allocator_base.h: Use __allocator_base
2591 template alias in C++11.
2592 * config/allocator/malloc_allocator_base.h: Same.
2593 * config/allocator/mt_allocator_base.h: Same.
2594 * config/allocator/new_allocator_base.h: Same.
2595 * config/allocator/pool_allocator_base.h: Same.
2596
2597 2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
2598
2599 * include/ext/pb_ds/detail/pat_trie_/
2600 constructors_destructor_fn_imps.hpp: Increment after recursion.
2601 * include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
2602 node_type markup from brief.
2603
2604 2012-03-16 François Dumont <fdumont@gcc.gnu.org>
2605
2606 PR libstdc++/52476
2607 * include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
2608 (_Hashtable<>::_M_rehash): Use the latter.
2609 * testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
2610 * testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
2611
2612 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2613
2614 * config/os/solaris/solaris2.8: Rename to ...
2615 * config/os/solaris/solaris2.9: ... this.
2616 * config/abi/post/solaris2.8: Rename to ...
2617 * config/abi/post/solaris2.9: ... this.
2618 * configure.host (os_include_dir): Remove solaris2.8.
2619 Reflect renaming.
2620 (abi_baseline_pair): Remove *-*-solaris2.8.
2621 Reflect renaming.
2622
2623 * configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
2624 (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2625 * acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
2626 (GLIBCXX_CHECK_STDLIB_PROTO): Remove.
2627 (GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
2628 * crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
2629 handling.
2630 * configure: Regenerate.
2631 * config.h.in: Regenerate.
2632
2633 * config/os/solaris/solaris2.9/os_defines.h
2634 (__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
2635 (__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
2636 * include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
2637 to __CORRECT_ISO_CPP_MATH_H_PROTO.
2638 [!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
2639 * include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
2640 __CORRECT_ISO_CPP_MATH_H_PROTO.
2641
2642 * doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
2643 Remove Solaris 8 reference.
2644
2645 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
2646 Don't xfail on *-*-solaris2.8.
2647 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
2648 Likewise.
2649 * testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
2650 *-*-solaris2.8.
2651
2652 2012-03-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2653
2654 * configure.host (irix6.5*): Remove.
2655 * config/os/irix: Remove.
2656 * config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
2657 [_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
2658
2659 * doc/xml/faq.xml: Remove IRIX reference.
2660 * doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
2661 Remove IRIX example.
2662
2663 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
2664 Remove mips-sgi-irix6* handling.
2665 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2666 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
2667 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
2668 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
2669 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
2670 * testsuite/23_containers/list/pthread1.cc: Likewise.
2671 * testsuite/23_containers/list/pthread5.cc: Likewise.
2672 * testsuite/23_containers/map/pthread6.cc: Likewise.
2673 * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
2674 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
2675 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
2676 * testsuite/30_threads/async/42819.cc: Likewise.
2677 * testsuite/30_threads/async/49668.cc: Likewise.
2678 * testsuite/30_threads/async/any.cc: Likewise.
2679 * testsuite/30_threads/async/async.cc: Likewise.
2680 * testsuite/30_threads/async/launch.cc: Likewise.
2681 * testsuite/30_threads/async/sync.cc: Likewise.
2682 * testsuite/30_threads/call_once/39909.cc: Likewise.
2683 * testsuite/30_threads/call_once/49668.cc: Likewise.
2684 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2685 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2686 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2687 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2688 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
2689 Likewise.
2690 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
2691 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2692 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2693 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2694 * testsuite/30_threads/future/cons/move.cc: Likewise.
2695 * testsuite/30_threads/future/members/45133.cc: Likewise.
2696 * testsuite/30_threads/future/members/get.cc: Likewise.
2697 * testsuite/30_threads/future/members/get2.cc: Likewise.
2698 * testsuite/30_threads/future/members/share.cc: Likewise.
2699 * testsuite/30_threads/future/members/valid.cc: Likewise.
2700 * testsuite/30_threads/future/members/wait.cc: Likewise.
2701 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2702 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2703 * testsuite/30_threads/lock/1.cc: Likewise.
2704 * testsuite/30_threads/lock/2.cc: Likewise.
2705 * testsuite/30_threads/lock/3.cc: Likewise.
2706 * testsuite/30_threads/lock/4.cc: Likewise.
2707 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2708 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2709 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2710 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2711 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2712 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
2713 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2714 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2715 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2716 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
2717 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2718 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2719 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
2720 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2721 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2722 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2723 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2724 * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
2725 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2726 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
2727 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
2728 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
2729 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2730 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
2731 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2732 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2733 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2734 * testsuite/30_threads/promise/cons/1.cc: Likewise.
2735 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
2736 * testsuite/30_threads/promise/cons/move.cc: Likewise.
2737 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2738 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2739 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
2740 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
2741 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
2742 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2743 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2744 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2745 * testsuite/30_threads/promise/members/swap.cc: Likewise.
2746 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2747 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2748 Likewise.
2749 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2750 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2751 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
2752 Likewise.
2753 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2754 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2755 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2756 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2757 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2758 Likewise.
2759 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2760 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2761 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2762 Likewise.
2763 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
2764 Likewise.
2765 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2766 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2767 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2768 Likewise.
2769 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2770 Likewise.
2771 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2772 Likewise.
2773 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2774 Likewise.
2775 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2776 Likewise.
2777 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2778 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
2779 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2780 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2781 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2782 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2783 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
2784 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2785 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2786 * testsuite/30_threads/this_thread/1.cc: Likewise.
2787 * testsuite/30_threads/this_thread/2.cc: Likewise.
2788 * testsuite/30_threads/this_thread/3.cc: Likewise.
2789 * testsuite/30_threads/this_thread/4.cc: Likewise.
2790 * testsuite/30_threads/thread/cons/1.cc: Likewise.
2791 * testsuite/30_threads/thread/cons/2.cc: Likewise.
2792 * testsuite/30_threads/thread/cons/3.cc: Likewise.
2793 * testsuite/30_threads/thread/cons/4.cc: Likewise.
2794 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
2795 * testsuite/30_threads/thread/cons/5.cc: Likewise.
2796 * testsuite/30_threads/thread/cons/6.cc: Likewise.
2797 * testsuite/30_threads/thread/cons/7.cc: Likewise.
2798 * testsuite/30_threads/thread/cons/8.cc: Likewise.
2799 * testsuite/30_threads/thread/cons/9.cc: Likewise.
2800 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
2801 * testsuite/30_threads/thread/members/1.cc: Likewise.
2802 * testsuite/30_threads/thread/members/2.cc: Likewise.
2803 * testsuite/30_threads/thread/members/3.cc: Likewise.
2804 * testsuite/30_threads/thread/members/4.cc: Likewise.
2805 * testsuite/30_threads/thread/members/5.cc: Likewise.
2806 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
2807 * testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
2808 * testsuite/30_threads/thread/swap/1.cc: Likewise.
2809 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
2810 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
2811 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
2812 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
2813 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
2814 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
2815 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
2816 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
2817 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
2818 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
2819 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
2820 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
2821 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
2822 * testsuite/30_threads/try_lock/1.cc: Likewise.
2823 * testsuite/30_threads/try_lock/2.cc: Likewise.
2824 * testsuite/30_threads/try_lock/3.cc: Likewise.
2825 * testsuite/30_threads/try_lock/4.cc: Likewise.
2826 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
2827 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
2828 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
2829 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
2830 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
2831 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
2832 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
2833 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
2834 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
2835 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
2836 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
2837 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
2838 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
2839 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2840 default_weaktoshared.cc: Likewise.
2841 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
2842 mutex_weaktoshared.cc: Likewise.
2843
2844 * testsuite/23_containers/vector/capacity/resize/1.cc: Remove
2845 dg-options for mips*-*-irix6*.
2846
2847 * testsuite/27_io/ios_base/storage/1.cc: Likewise.
2848 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
2849 * testsuite/27_io/ios_base/storage/3.cc: Likewise.
2850
2851 * testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
2852 workaround.
2853
2854 2012-03-14 Paolo Carlini <paolo.carlini@oracle.com>
2855
2856 * include/bits/forward_list.h: Fix comments.
2857
2858 2012-03-13 Terry Guo <terry.guo@arm.com>
2859
2860 * testsuite/Makefile.in (TEST_GCC_EXEC_PREFIX): New.
2861
2862 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2863
2864 * configure.host: Remove osf* handling.
2865 * config/os/osf: Remove.
2866 * doc/xml/manual/using.xml: Remove OSF reference.
2867
2868 * testsuite/18_support/pthread_guard.cc: Remove alpha*-*-osf* handling.
2869 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Likewise.
2870 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2871 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
2872 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
2873 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
2874 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
2875 * testsuite/23_containers/list/pthread1.cc: Likewise.
2876 * testsuite/23_containers/list/pthread5.cc: Likewise.
2877 * testsuite/23_containers/map/pthread6.cc: Likewise.
2878 * testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
2879 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
2880 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
2881 * testsuite/30_threads/async/42819.cc: Likewise.
2882 * testsuite/30_threads/async/49668.cc: Likewise.
2883 * testsuite/30_threads/async/any.cc: Likewise.
2884 * testsuite/30_threads/async/async.cc: Likewise.
2885 * testsuite/30_threads/async/launch.cc: Likewise.
2886 * testsuite/30_threads/async/sync.cc: Likewise.
2887 * testsuite/30_threads/call_once/39909.cc: Likewise.
2888 * testsuite/30_threads/call_once/49668.cc: Likewise.
2889 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
2890 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
2891 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
2892 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
2893 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
2894 Likewise.
2895 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
2896 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
2897 * testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
2898 * testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
2899 * testsuite/30_threads/future/cons/move.cc: Likewise.
2900 * testsuite/30_threads/future/members/45133.cc: Likewise.
2901 * testsuite/30_threads/future/members/get.cc: Likewise.
2902 * testsuite/30_threads/future/members/get2.cc: Likewise.
2903 * testsuite/30_threads/future/members/share.cc: Likewise.
2904 * testsuite/30_threads/future/members/valid.cc: Likewise.
2905 * testsuite/30_threads/future/members/wait.cc: Likewise.
2906 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
2907 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
2908 * testsuite/30_threads/lock/1.cc: Likewise.
2909 * testsuite/30_threads/lock/2.cc: Likewise.
2910 * testsuite/30_threads/lock/3.cc: Likewise.
2911 * testsuite/30_threads/lock/4.cc: Likewise.
2912 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
2913 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
2914 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
2915 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
2916 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
2917 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
2918 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
2919 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
2920 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
2921 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
2922 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
2923 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
2924 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
2925 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
2926 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
2927 * testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
2928 * testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
2929 * testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
2930 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
2931 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
2932 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
2933 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
2934 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
2935 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
2936 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
2937 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
2938 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
2939 * testsuite/30_threads/promise/cons/1.cc: Likewise.
2940 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
2941 * testsuite/30_threads/promise/cons/move.cc: Likewise.
2942 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
2943 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
2944 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
2945 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
2946 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
2947 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
2948 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2949 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
2950 * testsuite/30_threads/promise/members/swap.cc: Likewise.
2951 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
2952 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
2953 Likewise.
2954 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
2955 * testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
2956 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
2957 Likewise.
2958 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
2959 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
2960 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
2961 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
2962 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
2963 Likewise.
2964 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
2965 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
2966 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
2967 Likewise.
2968 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
2969 Likewise.
2970 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
2971 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
2972 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
2973 Likewise.
2974 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
2975 Likewise.
2976 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
2977 Likewise.
2978 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
2979 Likewise.
2980 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
2981 Likewise.
2982 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
2983 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
2984 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
2985 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
2986 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2987 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
2988 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
2989 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
2990 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
2991 * testsuite/30_threads/this_thread/1.cc: Likewise.
2992 * testsuite/30_threads/this_thread/2.cc: Likewise.
2993 * testsuite/30_threads/this_thread/3.cc: Likewise.
2994 * testsuite/30_threads/this_thread/4.cc: Likewise.
2995 * testsuite/30_threads/thread/cons/1.cc: Likewise.
2996 * testsuite/30_threads/thread/cons/2.cc: Likewise.
2997 * testsuite/30_threads/thread/cons/3.cc: Likewise.
2998 * testsuite/30_threads/thread/cons/4.cc: Likewise.
2999 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
3000 * testsuite/30_threads/thread/cons/5.cc: Likewise.
3001 * testsuite/30_threads/thread/cons/6.cc: Likewise.
3002 * testsuite/30_threads/thread/cons/7.cc: Likewise.
3003 * testsuite/30_threads/thread/cons/8.cc: Likewise.
3004 * testsuite/30_threads/thread/cons/9.cc: Likewise.
3005 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
3006 * testsuite/30_threads/thread/members/1.cc: Likewise.
3007 * testsuite/30_threads/thread/members/2.cc: Likewise.
3008 * testsuite/30_threads/thread/members/3.cc: Likewise.
3009 * testsuite/30_threads/thread/members/4.cc: Likewise.
3010 * testsuite/30_threads/thread/members/5.cc: Likewise.
3011 * testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
3012 * testsuite/30_threads/thread/swap/1.cc: Likewise.
3013 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
3014 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
3015 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
3016 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
3017 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
3018 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
3019 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
3020 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
3021 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
3022 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
3023 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
3024 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
3025 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
3026 * testsuite/30_threads/try_lock/1.cc: Likewise.
3027 * testsuite/30_threads/try_lock/2.cc: Likewise.
3028 * testsuite/30_threads/try_lock/3.cc: Likewise.
3029 * testsuite/30_threads/try_lock/4.cc: Likewise.
3030 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3031 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3032 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3033 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3034 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3035 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3036 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3037 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3038 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3039 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3040 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3041 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3042 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
3043 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3044 default_weaktoshared.cc: Likewise.
3045 * testsuite/tr1/2_general_utilities/shared_ptr/thread/
3046 mutex_weaktoshared.cc: Likewise.
3047
3048 2012-03-12 Paolo Carlini <paolo.carlini@oracle.com>
3049
3050 PR libstdc++/52562
3051 * libsupc++/typeinfo (type_info::name, before, operator==,
3052 operator!=): Mark noexcept in C++11 mode.
3053 * libsupc++/tinfo.cc (type_info::operator==): Adjust.
3054 * libsupc++/tinfo2.cc (type_info::before): Likewise.
3055 * testsuite/18_support/type_info/52562.cc: New.
3056
3057 2012-03-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3058
3059 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
3060 symbols added in last change.
3061
3062 PR libstdc++/52456
3063 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
3064
3065 2012-03-09 Andreas Schwab <schwab@linux-m68k.org>
3066
3067 * config/locale/gnu/monetary_members.cc
3068 (moneypunct<char,true>::_M_initialize_moneypunct): Throw caught
3069 exception again.
3070 (moneypunct<char,false>::_M_initialize_moneypunct): Likewise.
3071 * testsuite/22_locale/locale/cons/12352.cc: Also test en_US
3072 locale.
3073
3074 2012-03-09 Paolo Carlini <paolo.carlini@oracle.com>
3075
3076 * include/debug/formatter.h (enum _Debug_msg_id): Add
3077 __msg_self_move_assign.
3078 * include/debug/macros.h (__glibcxx_check_self_move_assign): Add.
3079 * src/c++11/debug.cc (_S_debug_messages): Update.
3080 * include/debug/safe_iterator.h (_Safe_iterator<>::operator=
3081 (_Safe_iterator&&)): Add check for self move assignment.
3082 * include/debug/set.h: Likewise.
3083 * include/debug/unordered_map: Likewise.
3084 * include/debug/multiset.h: Likewise.
3085 * include/debug/forward_list: Likewise.
3086 * include/debug/unordered_set: Likewise.
3087 * include/debug/vector: Likewise.
3088 * include/debug/map.h: Likewise.
3089 * include/debug/deque: Likewise.
3090 * include/debug/string: Likewise.
3091 * include/debug/list: Likewise.
3092 * include/debug/multimap.h: Likewise.
3093 * testsuite/21_strings/debug/self_move_assign_neg.cc: New.
3094 * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Likewise.
3095 * testsuite/23_containers/unordered_map/debug/self_move_assign_neg.cc:
3096 Likewise.
3097 * testsuite/23_containers/unordered_map/debug/
3098 iterator_self_move_assign_neg.cc: Likewise.
3099 * testsuite/23_containers/multimap/debug/self_move_assign_neg.cc:
3100 Likewise.
3101 * testsuite/23_containers/multimap/debug/
3102 iterator_self_move_assign_neg.cc: Likewise.
3103 * testsuite/23_containers/set/debug/self_move_assign_neg.cc: Likewise.
3104 * testsuite/23_containers/set/debug/iterator_self_move_assign_neg.cc:
3105 Likewise.
3106 * testsuite/23_containers/unordered_multimap/debug/
3107 self_move_assign_neg.cc: Likewise.
3108 * testsuite/23_containers/unordered_multimap/debug/
3109 iterator_self_move_assign_neg.cc: Likewise.
3110 * testsuite/23_containers/forward_list/debug/self_move_assign_neg.cc:
3111 Likewise.
3112 * testsuite/23_containers/forward_list/debug/
3113 iterator_self_move_assign_neg.cc: Likewise.
3114 * testsuite/23_containers/unordered_set/debug/self_move_assign_neg.cc:
3115 Likewise.
3116 * testsuite/23_containers/unordered_set/debug/
3117 iterator_self_move_assign_neg.cc: Likewise.
3118 * testsuite/23_containers/vector/debug/self_move_assign_neg.cc:
3119 Likewise.
3120 * testsuite/23_containers/vector/debug/
3121 iterator_self_move_assign_neg.cc: Likewise.
3122 * testsuite/23_containers/deque/debug/self_move_assign_neg.cc: Likewise.
3123 * testsuite/23_containers/deque/debug/iterator_self_move_assign_neg.cc:
3124 Likewise.
3125 * testsuite/23_containers/multiset/debug/self_move_assign_neg.cc:
3126 Likewise.
3127 * testsuite/23_containers/multiset/debug/
3128 iterator_self_move_assign_neg.cc: Likewise.
3129 * testsuite/23_containers/list/debug/self_move_assign_neg.cc:
3130 Likewise.
3131 * testsuite/23_containers/list/debug/iterator_self_move_assign_neg.cc:
3132 Likewise.
3133 * testsuite/23_containers/unordered_multiset/debug/
3134 self_move_assign_neg.cc: Likewise.
3135 * testsuite/23_containers/unordered_multiset/debug/
3136 iterator_self_move_assign_neg.cc: Likewise.
3137 * testsuite/23_containers/map/debug/self_move_assign_neg.cc:
3138 Likewise.
3139 * testsuite/23_containers/map/debug/iterator_self_move_assign_neg.cc:
3140 Likewise.
3141
3142 2012-03-08 Benjamin Kosnik <bkoz@redhat.com>
3143
3144 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.0.
3145 * include/bits/locale_facets.h: Adjust markup to avoid warnings.
3146 * include/ext/pb_ds/assoc_container.hpp: Same.
3147 * include/ext/pb_ds/priority_queue.hpp: Same.
3148 * include/std/fstream: Same.
3149 * include/std/ratio: Same.
3150 * testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Adjust line
3151 numbers.
3152 * testsuite/20_util/ratio/operations/ops_overflow_neg.cc: Same.
3153
3154 2012-03-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3155
3156 PR libstdc++/52433
3157 * include/debug/safe_iterator.h (_Safe_iterator): Add debug checks
3158 to move constructor and move assignment operator.
3159
3160 2012-03-05 Paolo Carlini <paolo.carlini@oracle.com>
3161
3162 * include/bits/stl_algobase.h (iter_swap): In C++11 mode simply
3163 call swap.
3164 * include/bits/stl_bvector.h (swap(_Bit_reference,
3165 _Bit_reference), swap(_Bit_reference, bool&),
3166 swap(bool&, _Bit_reference)): Add.
3167 * testsuite/23_containers/vector/bool/swap.cc: New.
3168
3169 2012-03-04 Paolo Carlini <paolo.carlini@oracle.com>
3170 Jonathan Wakely <jwakely.gcc@gmail.com>
3171
3172 PR libstdc++/43813
3173 * include/bits/stl_iterator_base_types.h (_RequireInputIter): New.
3174 * include/ext/vstring.h (__versa_string<>::__versa_string
3175 (_InputIterator, _InputIterator, const _Alloc&),
3176 __versa_string<>::append(_InputIterator, _InputIterator),
3177 __versa_string<>::assign(_InputIterator, _InputIterator),
3178 __versa_string<>::insert(iterator, _InputIterator,
3179 _InputIterator), __versa_string<>::replace(iterator, iterator,
3180 _InputIterator, _InputIterator)): Use it.
3181 * include/bits/stl_list.h (list<>::list(_InputIterator,
3182 _InputIterator, const allocator_type&), list<>::assign(_InputIterator,
3183 _InputIterator), list<>::insert(iterator, _InputIterator,
3184 _InputIterator)): Likewise.
3185 * include/bits/stl_vector.h (vector<>::vector(_InputIterator,
3186 _InputIterator, const allocator_type&), vector<>::assign(_InputIterator,
3187 _InputIterator), vectort<>::insert(iterator, _InputIterator,
3188 _InputIterator)): Likewise.
3189 * include/bits/stl_deque.h (deque<>::deque(_InputIterator,
3190 _InputIterator, const allocator_type&), deque<>::deque(_InputIterator,
3191 _InputIterator), deque<>::insert(iterator, _InputIterator,
3192 _InputIterator)): Likewise.
3193 * include/bits/stl_bvector.h (vector<>::vector(_InputIterator,
3194 _InputIterator, const allocator_type&), vector<>::deque(_InputIterator,
3195 _InputIterator), vector<>::insert(iterator, _InputIterator,
3196 _InputIterator)): Likewise.
3197 * include/bits/forward_list.h (forward_list<>::forward_list
3198 (_InputIterator, _InputIterator, const allocator_type&),
3199 forward_list<>::assign(_InputIterator, _InputIterator),
3200 forward_list<>::insert_after(const_iterator, _InputIterator,
3201 _InputIterator)): Likewise.
3202 (forward_list<>::_M_initialize_dispatch(,, __true_type): Remove.
3203 (forward_list<>::_M_range_initialize): Add, adjust everywhere.
3204 * include/bits/forward_list.tcc: Adjust.
3205 * include/debug/forward_list: Adjust.
3206 * include/debug/vector: Likewise.
3207 * include/debug/deque: Likewise.
3208 * include/debug/list: Likewise.
3209 * testsuite/ext/vstring/requirements/do_the_right_thing.cc: New.
3210 * testsuite/23_containers/forward_list/requirements/
3211 do_the_right_thing.cc: Likewise.
3212 * testsuite/23_containers/vector/requirements/
3213 do_the_right_thing.cc: Likewise.
3214 * testsuite/23_containers/deque/requirements/
3215 do_the_right_thing.cc: Likewise.
3216 * testsuite/23_containers/list/requirements/
3217 do_the_right_thing.cc: Likewise.
3218 * testsuite/23_containers/forward_list/requirements/dr438/
3219 assign_neg.cc: Adjust dg-error line number.
3220 * testsuite/23_containers/forward_list/requirements/dr438/
3221 insert_neg.cc: Likewise.
3222 * testsuite/23_containers/forward_list/requirements/dr438/
3223 constructor_1_neg.cc: Likewise.
3224 * testsuite/23_containers/forward_list/requirements/dr438/
3225 constructor_2_neg.cc: Likewise.
3226 * testsuite/23_containers/vector/requirements/dr438/
3227 assign_neg.cc: Likewise.
3228 * testsuite/23_containers/vector/requirements/dr438/
3229 insert_neg.cc: Likewise.
3230 * testsuite/23_containers/vector/requirements/dr438/
3231 constructor_1_neg.cc: Likewise.
3232 * testsuite/23_containers/vector/requirements/dr438/
3233 constructor_2_neg.cc: Likewise.
3234 * testsuite/23_containers/deque/requirements/dr438/
3235 assign_neg.cc: Likewise.
3236 * testsuite/23_containers/deque/requirements/dr438/
3237 insert_neg.cc: Likewise.
3238 * testsuite/23_containers/deque/requirements/dr438/
3239 constructor_1_neg.cc: Likewise.
3240 * testsuite/23_containers/deque/requirements/dr438/
3241 constructor_2_neg.cc: Likewise.
3242 * testsuite/23_containers/list/requirements/dr438/
3243 assign_neg.cc: Likewise.
3244 * testsuite/23_containers/list/requirements/dr438/
3245 insert_neg.cc: Likewise.
3246 * testsuite/23_containers/list/requirements/dr438/
3247 constructor_1_neg.cc: Likewise.
3248 * testsuite/23_containers/list/requirements/dr438/
3249 constructor_2_neg.cc: Likewise.
3250
3251 2012-03-04 Jonathan Wakely <jwakely.gcc@gmail.com>
3252
3253 PR libstdc++/52433
3254 * include/debug/safe_iterator.h (_Safe_iterator): Add move
3255 constructor and move assignment operator.
3256 * testsuite/23_containers/vector/debug/52433.cc: New.
3257
3258 2012-03-02 Paolo Carlini <paolo.carlini@oracle.com>
3259
3260 * include/std/limits (numeric_limits): Fix returns per C++11.
3261 * testsuite/18_support/numeric_limits/primary.cc: New.
3262
3263 2012-03-02 Benjamin Kosnik <bkoz@redhat.com>
3264
3265 * include/c_global/cstdio: Remove extraneous extern.
3266 * include/c_std/cstdio: Same.
3267
3268 2012-03-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3269
3270 * config/abi/post/solaris2.8/baseline_symbols.txt: Regenerate.
3271 * config/abi/post/solaris2.8/sparcv9/baseline_symbols.txt: Likewise.
3272 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
3273 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
3274 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
3275
3276 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
3277 Ramana Radhakrishnan <ramana@gcc.gnu.org>
3278
3279 PR libstdc++/51785
3280 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): New.
3281 * configure.ac: Call it.
3282 * configure: Regenerate.
3283 * config.h.in: Same.
3284 * config/os/gnu-linux/os_defines.h: Conditionally undefine
3285 _GLIBCXX_HAVE_GETS.
3286 * include/c_global/cstdio: Conditionally declare deprecated gets.
3287 * include/c_std/cstdio: Same.
3288
3289 2012-03-01 Michael Spertus <mike_spertus@symantec.com>
3290
3291 * include/tr2/type_traits (typelist): To __reflection_typelist.
3292 (first, rest, empty): Remove.
3293
3294 2012-03-01 Benjamin Kosnik <bkoz@redhat.com>
3295
3296 * testsuite/Makefile.am (CLEANFILES): Add *.gdb.
3297 * testsuite/Makefile.in: Regenerate.
3298
3299 2012-02-29 H.J. Lu <hongjiu.lu@intel.com>
3300
3301 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
3302
3303 2012-02-28 Benjamin Kosnik <bkoz@redhat.com>
3304
3305 PR libstdc++/52191
3306 * testsuite/util/testsuite_abi.cc (compare_symbols): Check new
3307 symbols added into the latest version. Mark tls entities as
3308 undesignated.
3309
3310 2012-02-28 Jakub Jelinek <jakub@redhat.com>
3311
3312 PR bootstrap/52414
3313 * src/Makefile.am (libstdc++-symbols.ver): Only remove comment lines
3314 if they are at the beginning of lines (with optional whitespace before
3315 #).
3316 * src/Makefile.in: Regenerated.
3317
3318 2012-02-27 Jakub Jelinek <jakub@redhat.com>
3319
3320 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3321 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3322 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3323 Likewise.
3324 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3325 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3326 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3327 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3328 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3329 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3330
3331 2012-02-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3332
3333 PR libstdc++/52188
3334 * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
3335 Remove ENABLE_SYMVERS_SOL2.
3336 * configure: Regenerate.
3337 * src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
3338 Postprocess mapfile.
3339 [ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
3340 * src/Makefile.in: Regenerate.
3341
3342 * config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
3343 Don't export
3344 _ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
3345
3346 2012-02-25 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
3347
3348 PR testsuite/52201
3349 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
3350 Require atomic builtins.
3351 * testsuite/29_atomics/atomic/operators/51811.cc: Likewise.
3352
3353 2012-02-23 Jason Merrill <jason@redhat.com>
3354
3355 * include/bits/locale_facets.h (class num_get): Undo reordering of
3356 do_get virtual functions.
3357
3358 2012-02-14 Edward Smith-Rowland <3dw4rd@verizon.net>
3359
3360 * testsuite/26_numerics/random/
3361 uniform_real_distribution/requirements/typedefs.cc: Check param_type.
3362 * testsuite/26_numerics/random/
3363 piecewise_constant_distribution/requirements/typedefs.cc: Ditto.
3364 * testsuite/26_numerics/random/
3365 chi_squared_distribution/requirements/typedefs.cc: Ditto.
3366 * testsuite/26_numerics/random/
3367 normal_distribution/requirements/typedefs.cc: Ditto.
3368 * testsuite/26_numerics/random/
3369 uniform_int_distribution/requirements/typedefs.cc: Ditto.
3370 * testsuite/26_numerics/random/
3371 poisson_distribution/requirements/typedefs.cc: Ditto.
3372 * testsuite/26_numerics/random/
3373 bernoulli_distribution/requirements/typedefs.cc: Ditto.
3374 * testsuite/26_numerics/random/
3375 discrete_distribution/requirements/typedefs.cc: Ditto.
3376 * testsuite/26_numerics/random/
3377 weibull_distribution/requirements/typedefs.cc: Ditto.
3378 * testsuite/26_numerics/random/
3379 cauchy_distribution/requirements/typedefs.cc: Ditto.
3380 * testsuite/26_numerics/random/
3381 negative_binomial_distribution/requirements/typedefs.cc: Ditto.
3382 * testsuite/26_numerics/random/
3383 gamma_distribution/requirements/typedefs.cc: Ditto.
3384 * testsuite/26_numerics/random/
3385 fisher_f_distribution/requirements/typedefs.cc: Ditto.
3386 * testsuite/26_numerics/random/
3387 exponential_distribution/requirements/typedefs.cc: Ditto.
3388 * testsuite/26_numerics/random/
3389 binomial_distribution/requirements/typedefs.cc: Ditto.
3390 * testsuite/26_numerics/random/
3391 lognormal_distribution/requirements/typedefs.cc: Ditto.
3392 * testsuite/26_numerics/random/
3393 extreme_value_distribution/requirements/typedefs.cc: Ditto.
3394 * testsuite/26_numerics/random/
3395 piecewise_linear_distribution/requirements/typedefs.cc: Ditto.
3396 * testsuite/26_numerics/random/
3397 student_t_distribution/requirements/typedefs.cc: Ditto.
3398 * testsuite/26_numerics/random/
3399 geometric_distribution/requirements/typedefs.cc: Ditto.
3400
3401 2012-02-21 Benjamin Kosnik <bkoz@redhat.com>
3402
3403 PR libstdc++/50349
3404 * config/abi/pre/gnu.ver: Only one local.
3405 * config/abi/pre/gnu-versioned-namespace.ver: Same.
3406
3407 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
3408
3409 PR libstdc++/52317 (cont)
3410 * include/profile/unordered_map: Ad Library Exception comment.
3411 * include/profile/set: Likewise.
3412 * include/profile/base.h: Likewise.
3413 * include/profile/impl/profiler_list_to_slist.h: Likewise.
3414 * include/profile/impl/profiler_container_size.h: Likewise.
3415 * include/profile/impl/profiler_vector_size.h: Likewise.
3416 * include/profile/impl/profiler_hash_func.h: Likewise.
3417 * include/profile/impl/profiler_trace.h: Likewise.
3418 * include/profile/impl/profiler_list_to_vector.h: Likewise.
3419 * include/profile/impl/profiler_vector_to_list.h: Likewise.
3420 * include/profile/impl/profiler.h: Likewise.
3421 * include/profile/impl/profiler_state.h: Likewise.
3422 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3423 * include/profile/impl/profiler_algos.h: Likewise.
3424 * include/profile/impl/profiler_hashtable_size.h: Likewise.
3425 * include/profile/impl/profiler_node.h: Likewise.
3426 * include/profile/vector: Likewise.
3427 * include/profile/unordered_set: Likewise.
3428 * include/profile/map.h: Likewise.
3429 * include/profile/map: Likewise.
3430
3431 2012-02-21 Paolo Carlini <paolo.carlini@oracle.com>
3432
3433 PR libstdc++/52317
3434 * python/Makefile.am: Update boilerplate license text to GPLv3.
3435 * include/profile/unordered_map: Likewise.
3436 * include/profile/set: Likewise.
3437 * include/profile/base.h: Likewise.
3438 * include/profile/impl/profiler_list_to_slist.h: Likewise.
3439 * include/profile/impl/profiler_container_size.h: Likewise.
3440 * include/profile/impl/profiler_vector_size.h: Likewise.
3441 * include/profile/impl/profiler_hash_func.h: Likewise.
3442 * include/profile/impl/profiler_trace.h: Likewise.
3443 * include/profile/impl/profiler_list_to_vector.h: Likewise.
3444 * include/profile/impl/profiler_vector_to_list.h: Likewise.
3445 * include/profile/impl/profiler.h: Likewise.
3446 * include/profile/impl/profiler_state.h: Likewise.
3447 * include/profile/impl/profiler_map_to_unordered_map.h: Likewise.
3448 * include/profile/impl/profiler_algos.h: Likewise.
3449 * include/profile/impl/profiler_hashtable_size.h: Likewise.
3450 * include/profile/impl/profiler_node.h: Likewise.
3451 * include/profile/vector: Likewise.
3452 * include/profile/unordered_set: Likewise.
3453 * include/profile/map.h: Likewise.
3454 * include/profile/map: Likewise.
3455 * testsuite/21_strings/basic_string/numeric_conversions/
3456 wchar_t/dr1261.cc: Likewise.
3457 * testsuite/21_strings/basic_string/numeric_conversions/
3458 char/dr1261.cc: Likewise.
3459 * testsuite/20_util/reference_wrapper/invoke-2.cc: Likewise.
3460
3461 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
3462
3463 PR libstdc++/52241
3464 * src/c++98/tree.cc (local_Rb_tree_increment,
3465 local_Rb_tree_decrement): Add.
3466 (_Rb_tree_increment(const _Rb_tree_node_base*),
3467 _Rb_tree_decrement(const _Rb_tree_node_base*)): Use the latter.
3468 (_Rb_tree_increment(_Rb_tree_node_base*),
3469 _Rb_tree_decrement(_Rb_tree_node_base*)): New.
3470
3471 2012-02-20 Paolo Carlini <paolo.carlini@oracle.com>
3472
3473 PR libstdc++/52309
3474 * include/bits/hashtable_policy.h (_Equality_base<, true,>::
3475 _M_equal(const _Hashtable&)): Compare values with operator==.
3476 * testsuite/23_containers/unordered_set/operators/52309.cc: New.
3477
3478 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
3479
3480 PR libstdc++/51798 continued.
3481 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Grep for
3482 __atomic_, not __sync.
3483 * configure: Regenerated.
3484
3485 2012-02-17 Benjamin Kosnik <bkoz@redhat.com>
3486
3487 PR libstdc++/47058
3488 * acinclude.m4 (GLIBCXX_ENABLE_WERROR): New.
3489 (GLIBCXX_EXPORT_FLAGS): Add -Wabi to WARN_FLAGS
3490 * configure.ac: Use it.
3491 * fragment.am: Set WERROR_FLAG conditionally on --disable-werror.
3492 * configure: Regenerate.
3493 * python/Makefile.in: Same.
3494 * Makefile.in: Same.
3495 * doc/Makefile.in: Same.
3496 * include/Makefile.in: Same.
3497 * po/Makefile.in: Same.
3498 * python/Makefile.in: Same.
3499 * src/Makefile.in: Same.
3500 * src/c++11/Makefile.in: Same.
3501 * src/c++98/Makefile.in: Same.
3502 * testsuite/Makefile.in: Same.
3503
3504 2012-02-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3505
3506 PR libstdc++/52189
3507 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Handle
3508 --enable-libstdcxx-threads.
3509 Disable on Solaris 8/9 with symbol versioning.
3510 * configure.ac (GLIBCXX_CHECK_GTHREADS): Move after
3511 GLIBCXX_ENABLE_SYMVERS.
3512 * configure: Regenerate.
3513 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads): Explain.
3514
3515 2012-02-15 DJ Delorie <dj@redhat.com>
3516
3517 * src/c++98/locale.cc (locale::facet::_S_get_c_locale): Fix typo.
3518
3519 2012-02-15 Benjamin Kosnik <bkoz@redhat.com>
3520
3521 PR libstdc++/51368
3522 * acinclude.m4 (GLIBCXX_ENABLE_PYTHON): New.
3523 * configure.ac: Use it.
3524 * python/Makefile.am: Same.
3525 * configure: Regenerate.
3526 * python/Makefile.in: Regenerate.
3527 * Makefile.in: Same.
3528 * doc/Makefile.in: Same.
3529 * include/Makefile.in: Same.
3530 * po/Makefile.in: Same.
3531 * src/Makefile.in: Same.
3532 * src/c++11/Makefile.in: Same.
3533 * src/c++98/Makefile.in: Same.
3534 * testsuite/Makefile.in: Same.
3535
3536 2012-02-14 Jonathan Wakely <jwakely.gcc@gmail.com>
3537
3538 * 30_threads/thread/native_handle/typesizes.cc: Do not run on cygwin.
3539
3540 2012-02-14 Tom Tromey <tromey@redhat.com>
3541
3542 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add new
3543 tests.
3544 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator.__init__):
3545 Rewrite.
3546 (Tr1HashtableIterator.update): Remove.
3547 (Tr1HashtableIterator.next): Rewrite.
3548
3549 2012-02-13 Benjamin Kosnik <bkoz@redhat.com>
3550
3551 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3552 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3553
3554 2012-02-13 Richard Henderson <rth@redhat.com>
3555
3556 PR libstdc++/51798 continued.
3557 * include/bits/shared_ptr_base.h
3558 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock): Hoist initial load
3559 outside compare_exchange loop.
3560 * include/tr1/shared_ptr.h: Same.
3561 * include/parallel/compatibility.h (__compare_and_swap_32): Use strong
3562 version of compare_exchange.
3563 (__compare_and_swap_64): Same.
3564 * include/profile/impl/profiler_state.h (__gnu_profile::__turn): Same.
3565 * libsupc++/guard.cc (__cxa_guard_acquire): Same.
3566
3567 2012-02-10 Benjamin Kosnik <bkoz@redhat.com>
3568 Jonathan Wakely <jwakely.gcc@gmail.com>
3569
3570 PR libstdc++/51798 continued.
3571 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Use __atomic_*
3572 builtins instead of __sync_* builtins for atomic functionality.
3573 * include/bits/shared_ptr_base.h: Same.
3574 * include/parallel/compatibility.h: Same.
3575 * include/profile/impl/profiler_state.h: Same.
3576 * include/tr1/shared_ptr.h: Same.
3577 * libsupc++/eh_ptr.cc: Same.
3578 * libsupc++/eh_throw.cc: Same.
3579 * libsupc++/eh_tm.cc: Same.
3580 * libsupc++/guard.cc: Same.
3581 * configure: Regenerated.
3582 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line numbers.
3583 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc: Same.
3584
3585 2012-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3586
3587 PR libstdc++/51296
3588 * config/os/osf/ctype_base.h,
3589 config/os/osf/ctype_configure_char.cc,
3590 config/os/osf/ctype_inline.h, config/os/osf/error_constants.h:
3591 Copy from config/os/generic.
3592 * config/os/osf/os_defines.h: Likewise.
3593 (_GTHREAD_USE_MUTEX_INIT_FUNC, _GTHREAD_USE_COND_INIT_FUNC):
3594 Define.
3595 * configure.host <osf*>: Use os/osf for os_include_dir.
3596
3597 2012-02-10 Uros Bizjak <ubizjak@gmail.com>
3598
3599 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Regenerated.
3600
3601 2012-02-09 Jonathan Wakely <jwakely.gcc@gmail.com>
3602
3603 * doc/xml/manual/documentation_hacking.xml: Fix invalid attribute.
3604
3605 2012-02-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3606
3607 * doc/xml/manual/status_cxx2011.xml: Update C++11 status table.
3608
3609 2012-02-07 Benjamin Kosnik <bkoz@redhat.com>
3610
3611 * doc/doxygen/user.cfg.in: Update to doxygen 1.7.6.1.
3612 * doc/xml/manual/documentation_hacking.xml: Update.
3613
3614 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3615
3616 * testsuite/30_threads/call_once/39909.cc: Remove duplicate target
3617 selector.
3618 * testsuite/30_threads/call_once/49668.cc: Likewise.
3619 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
3620 * testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
3621 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
3622 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
3623 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
3624 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
3625 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
3626 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
3627 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
3628 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
3629 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
3630 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
3631 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
3632 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
3633 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
3634 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
3635 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
3636 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
3637 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
3638 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
3639 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
3640 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
3641
3642 2012-02-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3643
3644 PR libstdc++/51296
3645 * include/std/mutex (__mutex_base::~__mutex_base): Declare noexcept.
3646 * src/c++11/condition_variable.cc (condition_variable): Use macro for
3647 initializer function.
3648
3649 PR libstdc++/51906
3650 * config/os/bsd/darwin/os_defines.h: Disable static initializer for
3651 recursive mutexes.
3652
3653 2012-02-06 Jonathan Wakely <jwakely.gcc@gmail.com>
3654
3655 PR libstdc++/52128
3656 * src/c++11/future.cc: Add explicit instantiation.
3657
3658 2012-02-06 François Dumont <fdumont@gcc.gnu.org>
3659
3660 * include/debug/safe_iterator.h
3661 (_Safe_iterator::_M_before_dereferenceable): Avoid the expensive
3662 creation of a _Safe_iterator instance to do the check.
3663
3664 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3665
3666 PR libstdc++/52104
3667 * include/std/future (__future_base::_Async_state_common): Define
3668 destructor inline for targets without TLS.
3669 * src/c++11/future.cc (__future_base::_Async_state_common): Only
3670 define destructor for TLS targets.
3671
3672 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3673
3674 PR libstdc++/51956
3675 * python/libstdcxx/v6/printers.py (StdPointerPrinter): Rename to...
3676 (SharedPointerPrinter): This. Also show weak count.
3677 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: New.
3678
3679 2012-02-05 Jonathan Wakely <jwakely.gcc@gmail.com>
3680
3681 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Modify to
3682 PASS instead of XFAIL.
3683
3684 2012-02-05 Jeffrey Yasskin <jyasskin@gcc.gnu.org>
3685 Paolo Carlini <paolo.carlini@oracle.com>
3686
3687 PR libstdc++/52119
3688 * include/std/limits (__glibcxx_min): Fix to avoid undefined behavior.
3689
3690 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
3691
3692 PR libstdc++/49445
3693 * testsuite/29_atomics/atomic/cons/49445.cc: Add.
3694
3695 2012-02-03 Benjamin Kosnik <bkoz@redhat.com>
3696
3697 PR libstdc++/51811
3698 * include/bits/atomic_base.h (atomic<_Tp*>): Fix offsets.
3699 * testsuite/29_atomics/atomic/operators/51811.cc: New.
3700 * testsuite/29_atomics/atomic/operators/pointer_partial_void.cc: New.
3701
3702 2012-02-03 Jakub Jelinek <jakub@redhat.com>
3703
3704 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
3705 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
3706 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
3707 Likewise.
3708 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
3709 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
3710 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
3711 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
3712 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
3713 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
3714
3715 2012-02-02 Benjamin Kosnik <bkoz@redhat.com>
3716
3717 PR libstdc++/52068
3718 * src/c++11/Makefile.am (toolexeclib_LTLIBRARIES,
3719 libc__11_la_SOURCES): Remove.
3720 * src/c++11/Makefile.in: Regenerate.
3721 * src/c++98/Makefile.am (toolexeclib_LTLIBRARIES,
3722 libc__98_la_SOURCES): Remove.
3723 * src/c++98/Makefile.in: Regenerate.
3724
3725 2012-02-01 Jonathan Wakely <jwakely.gcc@gmail.com>
3726
3727 PR libstdc++/49204
3728 * include/std/future (__future_base::_State_base::wait()): Use lambda
3729 expression for predicate and remove redundant test.
3730 (__future_base::_State_base::wait_for()): Return future_status and
3731 use lambda expression for predicate.
3732 (__future_base::_State_base::wait_until()): Likewise.
3733 (__basic_future::wait_for(), __basic_future::wait_until()): Likewise.
3734 (__future_base::_Async_state): Replace with _Async_state_common
3735 class for non-dependent functionality and _Async_state_impl class
3736 template for dependent functionality.
3737 (__future_base::_Async_state_common::_M_join): Serialize attempts to
3738 join thread.
3739 (__future_base::_Async_state_common::_M_run_deferred): Join.
3740 (__future_base::_Async_state::_M_do_run): Replace with lambda.
3741 * src/c++11/future.cc (__future_base::_Async_state_common): Define
3742 destructor, so key function is in the library.
3743 * config/abi/pre/gnu.ver: Add exports for ~_Async_state_common.
3744 * testsuite/30_threads/packaged_task/members/get_future.cc: Expect
3745 future_status return instead of bool.
3746 * testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
3747 * testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
3748 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
3749 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
3750 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
3751 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
3752 * testsuite/30_threads/promise/members/swap.cc: Likewise.
3753
3754 2012-01-30 Tom Tromey <tromey@redhat.com>
3755
3756 PR libstdc++/51649:
3757 * testsuite/libstdc++-prettyprinters/debug.cc: New file.
3758 * testsuite/lib/gdb-test.exp (regexp-test): New proc.
3759 (note-test): Update.
3760 (gdb-test): Handle regexp tests. Add some logging.
3761 * testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
3762 (placeholder, use): Remove.
3763 (main): Add tests for deque, list, map, and set iterators. Add
3764 tests for slist and slist iterator.
3765 * testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
3766 namespace.
3767 * python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
3768 the type's _Node typedef.
3769 (StdListIteratorPrinter.to_string): Change how node type is
3770 computed.
3771 (StdSlistPrinter.children): Use the type's _Node typedef.
3772 (StdSlistIteratorPrinter.to_string): Likewise.
3773 (StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
3774 typedef.
3775 (StdMapPrinter.children): Change how the node's type is computed.
3776 (StdSetPrinter.children): Likewise.
3777 (StdForwardListPrinter.children): Use the type's _Node typedef.
3778 (Printer.add_version): New method.
3779 (Printer.add_container): New method.
3780 (build_libstdcxx_dictionary): Handle __7 and __cxx1998
3781 namespaces.
3782 (find_type): New function.
3783
3784 2012-01-27 Paolo Carlini <paolo.carlini@oracle.com>
3785
3786 PR libstdc++/51795
3787 * include/bits/random.h (linear_congruential_generator): Add
3788 static_assert preventing instantiation for values of 'a' and 'm'
3789 currently handled incorrectly by _Mod::__calc.
3790 * include/bits/random.tcc (seed_seq::generate): Avoid unsafe
3791 uses of _Mod::__calc.
3792
3793 2012-01-27 Jakub Jelinek <jakub@redhat.com>
3794
3795 PR libstdc++/51798
3796 * config/cpu/generic/atomicity_builtins/atomicity.h
3797 (__exchange_and_add, __atomic_add): Use __atomic_fetch_add
3798 with __ATOMIC_ACQ_REL semantics instead of __sync_fetch_and_add.
3799 * include/ext/atomicity.h (__exchange_and_add, __atomic_add):
3800 Likewise.
3801
3802 2011-01-27 Rafael Avila de Espindola <rafael.espindola@gmail.com>
3803
3804 * libsupc++/typeinfo: Correctly match #pragma GCC visibility
3805 pop with #pragma GCC visibility push.
3806
3807 2012-01-27 Benjamin Kosnik <bkoz@redhat.com>
3808 Matthias Klose <doko@ubuntu.com>
3809
3810 * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Use -gdwarf-4 -g3 -O0.
3811 * configure.in: Regenerated.
3812 * src/Makefile.am (all-once, install-data-once): New rules.
3813 (all-local, install-data-local): Use them.
3814 (build-debug, install-debug): Tweak.
3815 * src/Makefile.in: Regenerate.
3816
3817 2012-01-27 Richard Henderson <rth@redhat.com>
3818
3819 * include/bits/atomic_base.h (__atomic_flag_base): Define _M_i
3820 based on the value of __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
3821 (ATOMIC_FLAG_INIT): Initialize with 0, not false.
3822 (atomic_flag::atomic_flag): Use __GCC_ATOMIC_TEST_AND_SET_TRUEVAL.
3823
3824 2012-01-26 Jakub Jelinek <jakub@redhat.com>
3825
3826 PR bootstrap/51985
3827 * src/c++98/Makefile.am (libc__98_la_SOURCES,
3828 libc__98convenience_la_SOURCES): Remove $(inst_sources).
3829 * src/c++98/Makefile.in: Regenerated.
3830
3831 2012-01-25 Richard Sandiford <rdsandiford@googlemail.com>
3832
3833 * testsuite/20_util/system_clock/1.cc: Add dg-require-time.
3834 * testsuite/22_locale/time_put/put/wchar_t/12439_1.cc: Likewise.
3835 * testsuite/22_locale/time_put/put/wchar_t/12439_2.cc: Likewise.
3836 * testsuite/22_locale/time_put/put/wchar_t/12439_3.cc: Likewise.
3837 * testsuite/27_io/basic_istream/readsome/wchar_t/6746-2.cc: Add
3838 dg-require-fileio.
3839 * testsuite/27_io/basic_istream/seekg/wchar_t/fstream.cc: Likewise.
3840 * testsuite/27_io/basic_istream/tellg/wchar_t/1.cc: Likewise.
3841 * testsuite/27_io/basic_istream/tellg/wchar_t/fstream.cc: Likewise.
3842 * testsuite/27_io/basic_ostream/seekp/wchar_t/2346-fstream.cc:
3843 Likewise.
3844 * testsuite/27_io/basic_ostream/tellp/wchar_t/1.cc: Likewise.
3845
3846 2012-01-25 Matthias Klose <doko@ubuntu.com>
3847
3848 * testsuite/30_threads/condition_variable_any/requirements: Remove
3849 empty directory.
3850
3851 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
3852
3853 * src/Makefile.am (libstdc++convenience.la): Correct stamp rule, copy.
3854 * src/Makefile.in: Regenerate.
3855
3856 2012-01-23 Benjamin Kosnik <bkoz@redhat.com>
3857
3858 PR libstdc++/49829
3859 Add libc++98convenience.la, libc++11convenience.la.
3860 * src/c++98: New directory.
3861 * src/c++11: New directory.
3862 * acinclude.m4: (GLIBCXX_CONFIGURE): Add src-c++98, src-c++11.
3863 * configure: Regenerated.
3864 * Makefile.am (hosted_source): Add src-c++98, src-c++11 to SUBDIRS.
3865 * Makefile.in: Regenerate.
3866 * libsupc++/Makefile.am (AM_CXXFLAGS): USe XTEMPLATE_FLAGS for
3867 -fno-implicit-templates.
3868 * libsupc++/Makefile.in: Regenerate.
3869 * src/Makefile.am (inst_sources): Move... C++11 files into
3870 separate directory for libstdc++11convenience.la. Files are:
3871 fstream-inst.cc, string-inst.cc, wlocale-inst.cc, wstring-inst.cc).
3872 (sources): Move C++11 files. Files are: compatibility-c++0x.cc,
3873 compatibility-atomic-c++0x.cc, debug.cc, functexcept.cc,
3874 functional.cc, hash_c++0x.cc, hashtable_c++0x.cc, limits.cc,
3875 system_error.cc, placeholders.cc, regex.cc, shared_ptr.cc,
3876 mutex.cc, condition_variable.cc, chrono.cc, thread.cc, future.cc.
3877 (libstdc++convenience.la): Add new target.
3878 (SUBDIRS): Add c++11, c++98.
3879 * src/Makefile.in: Regenerate.
3880 * src/c++11/Makefile.am: New.
3881 * src/c++11/Makefile.in: Generate.
3882 * src/c++98/Makefile.am: New, C++98 files.
3883 * src/c++98/Makefile.in: Generate.
3884
3885 2012-01-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3886
3887 libstdc++-v3:
3888 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail on
3889 32-bit Solaris 10/x86.
3890 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
3891
3892 2012-01-21 Jonathan Wakely <jwakely.gcc@gmail.com>
3893
3894 PR libstdc++/50982
3895 * testsuite/30_threads/*: Add powerpc-ibm-aix* to target selectors.
3896
3897 2012-01-19 Jakub Jelinek <jakub@redhat.com>
3898
3899 PR libstdc++/51845
3900 * include/bits/hashtable.h
3901 (_Hashtable<>::erase(const_iterator, const_iterator)): Also update
3902 _M_buckets[__n_bkt] if __is_bucket_begin.
3903 * testsuite/23_containers/unordered_multimap/erase/51845-multimap.cc:
3904 New test.
3905
3906 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
3907
3908 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): Fix quoting.
3909
3910 2012-01-18 Benjamin Kosnik <bkoz@redhat.com>
3911
3912 * configure.ac: Move epub checks...
3913 * acinclude (GLIBCXX_CONFIGURE_DOCBOOK): ...here, use
3914 test -f instead of AC_CHECK_FILES.
3915
3916 2012-01-18 François Dumont <fdumont@gcc.gnu.org>
3917 Roman Kononov <roman@binarylife.net>
3918
3919 PR libstdc++/51866
3920 * include/bits/hashtable.h (_Hashtable<>::_M_insert(_Arg, false_type)):
3921 Do not keep a reference to a potentially moved instance.
3922 * testsuite/23_containers/unordered_multiset/insert/51866.cc: New.
3923 * testsuite/23_containers/unordered_multimap/insert/51866.cc: New.
3924
3925 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
3926
3927 * doc/html/*: Regenerate.
3928
3929 2012-01-17 Benjamin Kosnik <bkoz@redhat.com>
3930
3931 * configure.ac (BUILD_EPUB): Adjust for epub3.
3932 * configure: Regenerate.
3933 * Makefile.in: Same.
3934 * doc/Makefile.am (stamp-epub-docbook): Update for epub3.
3935 * doc/Makefile.in: Regenerate.
3936 * include/Makefile.in: Same.
3937 * libsupc++/Makefile.in: Same.
3938 * po/Makefile.in: Same.
3939 * python/Makefile.in: Same.
3940 * src/Makefile.in: Same.
3941 * testsuite/Makefile.in: Same.
3942
3943 * doc/xml/manual/documentation_hacking.xml: Update.
3944
3945 2012-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3946
3947 PR target/47852
3948 * configure.host (irix6.5*): Add -lpthread to OPT_LDFLAGS.
3949
3950 2012-01-14 Jonathan Wakely <jwakely.gcc@gmail.com>
3951
3952 * include/bits/stl_iterator.h (reverse_iterator): Doxygen comments.
3953
3954 2012-01-13 François Dumont <fdumont@gcc.gnu.org>
3955
3956 * include/bits/hashtable_policy.h (_Hash_node_base): New, use it as
3957 base class of ...
3958 (_Hash_node<Value, true>, _Hash_node<Value, false>): ... those.
3959 * include/bits/hashtable.h (_Hashtable): Replace _M_begin_bucket_index
3960 by _M_before_begin. Review implementation so that we do not need to
3961 look for previous non-empty bucket when inserting nodes.
3962
3963 2012-01-09 Kai Tietz <ktietz@redhat.com>
3964
3965 PR libstc++/51673 part 2
3966 * config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
3967 operators signature for LLP64 size_t, and adjusted signatures for
3968 mt-allocator using size_t.
3969
3970 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
3971
3972 PR libstc++/51673 part 1
3973 * config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
3974 with gnu.ver.
3975
3976 2012-01-09 Benjamin Kosnik <bkoz@redhat.com>
3977
3978 * fragment.am (WARN_CXXFLAGS): Add -Wabi.
3979 * Makefile.in: Regenerate.
3980 * doc/Makefile.in: Same.
3981 * include/Makefile.in: Same.
3982 * libsupc++/Makefile.in: Same.
3983 * src/Makefile.in: Same.
3984 * testsuite/Makefile.in: Same.
3985 * po/Makefile.in: Same.
3986 * python/Makefile.in: Same.
3987
3988 2012-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3989
3990 * python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
3991 * testsuite/libstdc++-prettyprinters/cxx11.cc: New.
3992
3993 2012-01-06 Jason Merrill <jason@redhat.com>
3994
3995 * testsuite/abi/demangle/regression/cw-16.cc (main): Adjust
3996 expected demangling.
3997
3998 2012-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
3999
4000 PR libstdc++/51504
4001 * doc/xml/manual/debug.xml: Suggest using symbol interposition
4002 to override symbols using annotation macros.
4003
4004 2012-01-05 François Dumont <fdumont@gcc.gnu.org>
4005
4006 * include/bits/hashtable_policy.h (_Hashtable_base<>::_M_eq()):
4007 protected rather than private, use it...
4008 * include/bits/hashtable.h (_Hashtable<>::key_eq()): ... here.
4009 * testsuite/23_containers/unordered_set/observers.cc: New.
4010 * testsuite/23_containers/unordered_multiset/observers.cc: New.
4011 * testsuite/23_containers/unordered_map/observers.cc: New.
4012 * testsuite/23_containers/unordered_multimap/observers.cc: New.
4013
4014 2012-01-03 François Dumont <fdumont@gcc.gnu.org>
4015
4016 * include/bits/hashtable_policy.h (_Ebo_helper<>): Rename to the more
4017 specific _Hashtable_ebo_helper. Hide this implementation detail thanks
4018 to private inheritance.
4019
4020 2012-01-03 Paolo Carlini <paolo.carlini@oracle.com>
4021
4022 PR c++/51738
4023 * testsuite/23_containers/map/element_access/39901.cc: New.