1 2013-06-17 Jonathan Wakely <jwakely.gcc@gmail.com>
2 Chris Jefferson <chris@bubblescope.net>
4 * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
5 dispatch to traditional std::equal for random-access iterators.
6 (__equal2_aux, __equal2): Remove.
7 (__equal::equal): Remove unused overloads.
8 * include/bits/stl_algo.h (is_permutation): Fix typos.
10 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
12 * include/std/shared_mutex (shared_lock::operator=): Add missing
15 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
18 * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
19 allocator's pointer type.
20 * include/bits/hashtable.h (_Hashtable): Likewise.
21 * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
22 * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
23 * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
24 * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
26 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
28 * include/std/shared_mutex: Implement N3659.
29 * include/bits/c++14_warning.h: New.
30 * include/Makefile.am: Add new headers.
31 * include/Makefile.in: Regenerate.
32 * testsuite/30_threads/shared_lock/cons/1.cc: New.
33 * testsuite/30_threads/shared_lock/locking/2.cc: New.
34 * testsuite/30_threads/shared_lock/cons/2.cc: New.
35 * testsuite/30_threads/shared_lock/locking/3.cc: New.
36 * testsuite/30_threads/shared_lock/cons/3.cc: New.
37 * testsuite/30_threads/shared_lock/locking/4.cc: New.
38 * testsuite/30_threads/shared_lock/cons/4.cc: New.
39 * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
40 * testsuite/30_threads/shared_lock/cons/5.cc: New.
41 * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
42 * testsuite/30_threads/shared_lock/cons/6.cc: New.
43 * testsuite/30_threads/shared_lock/requirements/
44 explicit_instantiation.cc: New.
45 * testsuite/30_threads/shared_lock/locking/1.cc: New.
46 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
47 * testsuite/30_threads/shared_mutex/cons/1.cc: New.
48 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
49 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
50 * testsuite/30_threads/shared_mutex/requirements/
51 standard_layout.cc: New.
52 * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
53 * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
55 2013-06-15 Paolo Carlini <paolo.carlini@oracle.com>
58 * include/bits/unordered_map.h (unordered_map<>::insert,
59 unordered_multimap<>::insert): Use std::forward, not std::move.
60 * testsuite/23_containers/unordered_map/insert/57619.C: New.
61 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
63 2013-06-14 Alan Modra <amodra@gmail.com>
65 * configure.host (abi_baseline_pair): Match powerpc64*.
67 2013-06-13 Daniel Krugler <daniel.kruegler@gmail.com>
69 * include/std/type_traits (is_function): Support ref-qualified
71 (is_copy_constructible, is_move_constructible, is_copy_assignable,
72 is_move_assignable, is_nothrow_copy_constructible,
73 is_nothrow_move_constructible, is_nothrow_copy_assignable,
74 is_nothrow_move_assignable): Implement LWG 2196.
75 (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
77 (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
79 * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
80 * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
81 * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
82 * testsuite/20_util/is_assignable/value.cc: Likewise.
83 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
84 * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
85 * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
86 * testsuite/20_util/is_function/value.cc: Likewise.
87 * testsuite/20_util/is_move_assignable/value.cc: Likewise.
88 * testsuite/20_util/is_move_constructible/value.cc: Likewise.
89 * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
90 * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
91 * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
92 * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
94 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
96 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
98 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
101 2013-06-13 Paolo Carlini <paolo.carlini@oracle.com>
103 * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
104 __gnu_cxx::__airy_bi()): Remove.
105 * testsuite/tr1/5_numerical_facilities/special_functions/
106 10_cyl_bessel_k/airy.cc: Fix.
108 2013-06-12 Ed Smith-Rowland <3dw4rd@verizon.net>
111 * include/tr1/modified_bessel_func.tcc (__airy): Remove return
113 (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
114 * testsuite/tr1/5_numerical_facilities/special_functions/
115 10_cyl_bessel_k/airy.cc: New.
117 2013-06-11 Ed Smith-Rowland <3dw4rd@verizon.net>
119 Fix library literals error involving namespace __detail.
120 * include/std/chrono: Rename __detail to __select_type. Reformat.
121 * include/bits/basic_string.h: Reformat.
122 * testsuite/20_util/duration/literals/ns_detail.cc: New.
124 2013-06-11 Paolo Carlini <paolo.carlini@oracle.com>
127 * include/c_global/cstddef (max_align_t): Add to namespace std.
128 * include/c_std/cstddef: Likewise.
129 * testsuite/18_support/max_align_t/requirements/1.cc: New.
130 * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
132 2013-06-10 Benjamin Kosnik <bkoz@redhat.com>
134 * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
135 * include/bits/stl_map.h (erase): Use abi_tag when C++11.
136 * include/bits/stl_multimap.h: Same.
137 * include/bits/stl_multiset.h: Same.
138 * include/bits/stl_set.h: Same.
139 * include/bits/stl_tree.h: Same.
140 * include/std/complex (real, imag): Use macro for abi_tag.
142 * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
143 * testsuite/util/testsuite_containers.h (erase_external): New
145 (erase_external_iterators): Same.
146 (linkage_check_cxx98_cxx11_erase): Same.
147 (linkage_check_cxx98_cxx11_erase_iterators): Same.
148 * testsuite/util/testsuite_shared.cc: Define.
149 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
150 * testsuite/23_containers/map/modifiers/erase/
151 dr130-linkage-check.cc: New.
152 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
153 * testsuite/23_containers/multimap/modifiers/erase/
154 dr130-linkage-check.cc: New.
155 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
156 * testsuite/23_containers/multiset/modifiers/erase/
157 dr130-linkage-check.cc: New.
158 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
159 * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
161 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
163 * testsuite/23_containers/map/dr130.cc: Move...
164 * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
165 * testsuite/23_containers/multimap/dr130.cc: Move ...
166 * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
167 * testsuite/23_containers/multiset/dr130.cc: Move...
168 * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
169 * testsuite/23_containers/set/dr130.cc: Move...
170 * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
172 2013-06-10 Thomas Schwinge <thomas@codesourcery.com>
174 * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
175 handling of Linux-based x86 systems to cover all GNU systems.
176 * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
177 * testsuite/18_support/pthread_guard.cc: Likewise.
178 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
180 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
182 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
183 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
184 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
185 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
186 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
187 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
188 * testsuite/23_containers/list/pthread1.cc: Likewise.
189 * testsuite/23_containers/list/pthread5.cc: Likewise.
190 * testsuite/23_containers/map/pthread6.cc: Likewise.
191 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
193 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
195 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
196 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
197 * testsuite/30_threads/async/42819.cc: Likewise.
198 * testsuite/30_threads/async/49668.cc: Likewise.
199 * testsuite/30_threads/async/54297.cc: Likewise.
200 * testsuite/30_threads/async/any.cc: Likewise.
201 * testsuite/30_threads/async/async.cc: Likewise.
202 * testsuite/30_threads/async/launch.cc: Likewise.
203 * testsuite/30_threads/async/sync.cc: Likewise.
204 * testsuite/30_threads/call_once/39909.cc: Likewise.
205 * testsuite/30_threads/call_once/49668.cc: Likewise.
206 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
207 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
208 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
209 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
210 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
211 * testsuite/30_threads/condition_variable/members/53841.cc:
213 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
215 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
216 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
217 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
218 * testsuite/30_threads/condition_variable_any/members/1.cc:
220 * testsuite/30_threads/condition_variable_any/members/2.cc:
222 * testsuite/30_threads/future/cons/move.cc: Likewise.
223 * testsuite/30_threads/future/members/45133.cc: Likewise.
224 * testsuite/30_threads/future/members/get.cc: Likewise.
225 * testsuite/30_threads/future/members/get2.cc: Likewise.
226 * testsuite/30_threads/future/members/share.cc: Likewise.
227 * testsuite/30_threads/future/members/valid.cc: Likewise.
228 * testsuite/30_threads/future/members/wait.cc: Likewise.
229 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
230 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
231 * testsuite/30_threads/lock/1.cc: Likewise.
232 * testsuite/30_threads/lock/2.cc: Likewise.
233 * testsuite/30_threads/lock/3.cc: Likewise.
234 * testsuite/30_threads/lock/4.cc: Likewise.
235 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
236 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
237 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
238 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
239 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
240 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
241 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
242 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
243 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
244 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
245 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
246 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
247 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
248 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
249 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
250 * testsuite/30_threads/packaged_task/cons/move_assign.cc:
252 * testsuite/30_threads/packaged_task/members/get_future.cc:
254 * testsuite/30_threads/packaged_task/members/get_future2.cc:
256 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
257 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
258 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
259 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
260 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
261 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
262 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
263 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
264 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
265 * testsuite/30_threads/promise/cons/1.cc: Likewise.
266 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
267 * testsuite/30_threads/promise/cons/move.cc: Likewise.
268 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
269 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
270 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
271 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
272 * testsuite/30_threads/promise/members/set_exception2.cc:
274 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
275 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
276 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
277 * testsuite/30_threads/promise/members/swap.cc: Likewise.
278 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
279 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
281 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
282 * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
284 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
286 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
287 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
288 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
289 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
290 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
292 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
293 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
294 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
296 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
298 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
300 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
302 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
304 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
306 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
308 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
310 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
312 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
314 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
315 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
316 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
317 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
318 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
319 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
320 * testsuite/30_threads/shared_future/members/wait_for.cc:
322 * testsuite/30_threads/shared_future/members/wait_until.cc:
324 * testsuite/30_threads/this_thread/1.cc: Likewise.
325 * testsuite/30_threads/this_thread/2.cc: Likewise.
326 * testsuite/30_threads/this_thread/3.cc: Likewise.
327 * testsuite/30_threads/this_thread/4.cc: Likewise.
328 * testsuite/30_threads/thread/cons/1.cc: Likewise.
329 * testsuite/30_threads/thread/cons/2.cc: Likewise.
330 * testsuite/30_threads/thread/cons/3.cc: Likewise.
331 * testsuite/30_threads/thread/cons/4.cc: Likewise.
332 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
333 * testsuite/30_threads/thread/cons/5.cc: Likewise.
334 * testsuite/30_threads/thread/cons/6.cc: Likewise.
335 * testsuite/30_threads/thread/cons/7.cc: Likewise.
336 * testsuite/30_threads/thread/cons/8.cc: Likewise.
337 * testsuite/30_threads/thread/cons/9.cc: Likewise.
338 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
339 * testsuite/30_threads/thread/members/1.cc: Likewise.
340 * testsuite/30_threads/thread/members/2.cc: Likewise.
341 * testsuite/30_threads/thread/members/3.cc: Likewise.
342 * testsuite/30_threads/thread/members/4.cc: Likewise.
343 * testsuite/30_threads/thread/members/5.cc: Likewise.
344 * testsuite/30_threads/thread/members/hardware_concurrency.cc:
346 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
347 * testsuite/30_threads/thread/native_handle/typesizes.cc:
349 * testsuite/30_threads/thread/swap/1.cc: Likewise.
350 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
351 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
353 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
354 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
355 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
357 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
358 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
359 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
360 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
361 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
362 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
363 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
364 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
365 * testsuite/30_threads/try_lock/1.cc: Likewise.
366 * testsuite/30_threads/try_lock/2.cc: Likewise.
367 * testsuite/30_threads/try_lock/3.cc: Likewise.
368 * testsuite/30_threads/try_lock/4.cc: Likewise.
369 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
370 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
371 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
372 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
373 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
374 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
375 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
376 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
377 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
378 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
379 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
380 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
381 * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
382 * testsuite/ext/profile/mh.cc: Likewise.
383 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
384 * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
385 * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
387 * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
389 * testsuite/util/testsuite_performance.h: Extend current handling
390 of Linux-based systems to cover all glibc-based systems.
392 2013-06-09 Jonathan Wakely <jwakely.gcc@gmail.com>
394 * include/std/mutex (call_once): Remove parentheses to fix error in
395 c++1y and gnu++1y mode.
396 * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
397 thread to avoid undefined behaviour.
399 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
401 Simplify and clean up library literals.
402 * include/std/chrono: Simplify namespace and versioning management.
403 * include/bits/basic_string.h: Ditto.
404 * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
405 * testsuite/20_util/duration/literals/values.cc: Ditto.
406 * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
407 * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
409 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
411 Implement N3654 - Quoted Strings Library Proposal
412 * include/std/iomanip: Add quoted(String, Char delim, Char escape)
413 manipulators and supporting machinery in c++1y mode.
414 * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
415 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
417 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
419 * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
422 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
424 * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
425 * include/bits/stl_algobase.h (equal, mismatch): Likewise.
426 * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
427 * testsuite/25_algorithms/equal/2.cc: New.
428 * testsuite/25_algorithms/equal/check_type2.cc: New.
429 * testsuite/25_algorithms/is_permutationqual/2.cc: New.
430 * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
431 * testsuite/25_algorithms/mismatch/2.cc: New.
432 * testsuite/25_algorithms/mismatch/check_type2.cc: New.
433 * testsuite/util/testsuite_iterators.h: Fix spelling.
435 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
437 * include/std/type-traits (integral_constant::operator()): Implement
439 * testsuite/20_util/integral_constant/call_operator.cc: New.
440 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
442 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
444 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
447 2013-06-07 Uros Bizjak <ubizjak@gmail.com>
449 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
451 2013-06-05 Tom Tromey <tromey@redhat.com>
453 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
455 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
458 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
460 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
462 * include/std/chrono: Collapse redundant 'inline' from 'inline
464 * include/std/tuple: Ditto.
465 * include/bits/move.h: Ditto.
467 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
469 Implement N3642 - User-defined Literals for Standard Library Types
470 * include/bits/parse_numbers.h: New.
471 * include/std/chrono: Add duration literal operators.
472 * include/bits/basic_string.h: Add string literal operators.
473 * include/Makefile.in: Add parse_numbers.h.
474 * include/Makefile.am: Ditto.
475 * testsuite/20_util/duration/literals/values.cc: New.
476 * testsuite/20_util/duration/literals/types.cc: New.
477 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
478 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
479 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
480 * testsuite/21_strings/basic_string/literals/values.cc: New.
481 * testsuite/21_strings/basic_string/literals/types.cc: New.
483 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
485 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
486 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
487 calling non-existent from_time_t.
489 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
491 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
494 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
496 * include/std/chrono: Wrap clocks in inline namespace _V2.
497 * src/c++11/chrono.cc: Same.
498 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
499 file, with default configure macros selected.
501 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
503 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
505 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
506 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
507 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
509 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
511 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
512 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
514 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
515 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
516 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
517 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
518 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
519 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
521 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
522 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
524 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
526 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
527 (CLOCK_MONOTONIC): Define.
529 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
531 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
534 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
536 2013-05-24 Jakub Jelinek <jakub@redhat.com>
538 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
539 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
540 don't define system_clock::is_steady, system_clock::now() and
541 steady_clock::is_steady.
542 (std::chrono::system_clock::now()): If
543 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
544 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
545 (std::chrono::system_clock::now()): Likewise. Add weak attribute
546 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
548 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
549 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
550 * src/c++11/compatibility-chrono.cc: New file.
551 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
552 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
553 * testsuite/util/testsuite_abi.cc (check_version): Add
554 GLIBCXX_3.4.20 version and make it the latest.
555 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
556 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
557 @@GLIBCXX_3.4.20 instead.
558 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
559 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
560 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
562 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
564 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
565 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
567 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
568 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
569 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
570 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
571 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
572 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
574 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
575 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
576 * config.h.in: Regenerated.
577 * src/Makefile.in: Regenerated.
578 * configure: Regenerated.
580 2013-05-23 Matthias Klose <doko@ubuntu.com>
582 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
583 (ext_headers): Remove ${ext_host_headers}.
584 (stamp-${host_alias}): Create ${host_builddir}/../ext.
585 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
586 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
587 * include/Makefile.in: Regenerate.
588 * include/ext/random: Include ext/opt_random.h.
590 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
592 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
593 enable features if target OS is known to support them.
594 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
595 * configure: Regenerate.
597 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
600 * include/std/functional (__invoke): Do not form function types with
601 abstract return type.
602 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
604 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
606 * include/std/tuple (get): Implement N3670.
607 * include/std/utility (get): Likewise.
608 * testsuite/20_util/pair/get.cc: Move to ...
609 * testsuite/20_util/pair/astuple/get.cc: Here.
610 * testsuite/20_util/pair/astuple/astuple.cc: New.
611 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
612 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
613 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
614 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
615 * testsuite/20_util/pair/astuple/get_neg.cc: New.
616 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
617 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
618 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
620 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
622 * Revert last commit.
624 2013-05-19 Matthias Klose <doko@ubuntu.com>
626 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
627 (ext_headers): Remove ${ext_host_headers}.
628 (stamp-${host_alias}): Create ${host_builddir}/../ext.
629 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
630 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
631 * include/Makefile.in: Regenerate.
633 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
635 * include/std/system_error (error_category::error_category()): LWG
636 2145: Declare public and constexpr.
637 * src/c++11/system_error.cc (error_category::error_category()): Move
639 * src/c++11/compatibility-c++0x.cc: Here.
641 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
643 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
645 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
647 * include/bits/unique_ptr.h (make_unique): Declare inline.
648 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
649 (default_delete, unique_ptr): Add doxygen comments.
650 * include/bits/shared_ptr_base.h: Improve doxygen comments.
651 * include/bits/shared_ptr.h: Likewise.
652 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
654 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
656 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
658 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
660 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
662 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
664 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
666 * include/std/utility (exchange): Define.
667 * testsuite/20_util/exchange/1.cc: New.
669 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
671 * include/bits/unique_ptr.h (make_unique): Define.
672 * testsuite/20_util/unique_ptr/creation/single.cc: New.
673 * testsuite/20_util/unique_ptr/creation/array.cc: New.
674 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
676 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
678 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
679 rendering of std::tr1 unordered containers iterator.
680 (StdHashtableIterator): New, render std unordered containers iterator.
681 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
683 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
685 * include/bits/basic_string.h (getline): Fix doxygen comments.
687 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
689 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
690 Use std::pointer_traits.
692 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
694 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
696 * libsupc++/Makefile.in: Regenerate.
697 * libsupc++/bad_array_length.cc: Tweak.
698 * libsupc++/bad_array_new.cc: Tweak.
700 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
703 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
704 (_Deque_iterator<>::_M_const_cast): Add.
705 (deque<>::_M_erase): Declare.
706 * include/bits/deque.tcc: ... and define.
707 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
708 (_List_const_iterator<>::_M_const_cast): Add.
709 * include/bits/list.tcc (erase (iterator)): Fix.
710 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
711 Add; include <ext/cast.h>.
712 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
713 (vector<>::_M_erase): Declare.
714 * include/bits/stl_bvector.h: Likewise.
715 * include/bits/vector.tcc (vector<>::_M_erase): Define.
716 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
717 * include/debug/deque: Adjust.
718 * include/debug/list: Likewise.
719 * include/debug/vector: Likewise.
720 * include/profile/deque: Likewise.
721 * include/profile/list: Likewise.
722 * include/profile/vector: Likewise.
723 * testsuite/util/exception/safety.h (erase_base<deque>,
724 erase_base<deque>, erase_base<vector>): Remove.
725 (erase_base<__versa_string>): Update.
726 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
727 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
728 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
729 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
730 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
732 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
733 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
734 Adjust dg-error line numbers.
735 * testsuite/23_containers/deque/requirements/dr438/
736 constructor_1_neg.cc: Likewise.
737 * testsuite/23_containers/deque/requirements/dr438/
738 constructor_2_neg.cc: Likewise.
739 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
741 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
743 * testsuite/23_containers/list/requirements/dr438/
744 constructor_1_neg.cc: Likewise.
745 * testsuite/23_containers/list/requirements/dr438/
746 constructor_2_neg.cc: Likewise.
747 * testsuite/23_containers/list/requirements/dr438/
748 insert_neg.cc: Likewise.
749 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
751 * testsuite/23_containers/vector/requirements/dr438/
752 constructor_1_neg.cc: Likewise.
753 * testsuite/23_containers/vector/requirements/dr438/
754 constructor_2_neg.cc: Likewise.
755 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
758 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
760 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
762 2013-05-08 Jason Merrill <jason@redhat.com>
764 Add std::bad_array_length (N3639)
765 * libsupc++/new: Add std::bad_array_length.
766 * libsupc++/bad_array_length.cc: New.
767 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
768 * libsupc++/Makefile.in: Build them.
769 * config/abi/pre/gnu.ver: Add new symbols.
770 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
772 2013-05-08 Andi Kleen <ak@linux.intel.com>
775 * libstdc++-v3/include/bits/atomic_base.h
776 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
777 (atomic_thread_fence, atomic_signal_fence, test_and_set,
778 clear, store, load, exchange, compare_exchange_weak)
779 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
780 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
782 2013-05-08 Jason Merrill <jason@redhat.com>
784 Add std::bad_array_new_length (N2932)
785 * libsupc++/new: Add std::bad_array_new_length.
786 * libsupc++/bad_array_new.cc: New.
787 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
788 * libsupc++/Makefile.in: Build them.
789 * config/abi/pre/gnu.ver: Add new symbols.
790 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
792 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
795 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
797 * include/Makefile.in: Regenerated.
799 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
801 * include/profile/unordered_base.h: New.
802 * include/Makefile.am: Add new profile header.
803 * include/Makefile.in: Regenerate.
804 * include/profile/impl/profiler.h
805 (__profcxx_inefficient_hash_is_on): New macro.
806 * include/profile/unordered_map (std::profile::unordered_map<>):
807 Use new _Unordered_profile base class. Use default implementations
808 for special functions.
809 (std::profile::unordered_multimap<>): Likewise.
810 * include/profile/unordered_set (std::profile::unordered_set<>):
812 (std::profile::unordered_multiset<>): Likewise.
813 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
814 MoveOnly equality operator signature.
816 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
818 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
819 constexpr_data.cc: Move...
820 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
822 * testsuite/20_util/integral_constant/requirements/
823 explicit_instantiation.cc: New.
824 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
826 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
827 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
829 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
830 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
832 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
834 * include/std/type_traits (is_null_pointer): Add.
835 (__is_nullptr_t): Implement in terms of the latter.
836 (is_fundamental, is_scalar): Adjust.
837 * testsuite/20_util/is_null_pointer/requirements/
838 explicit_instantiation.cc: New.
839 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
841 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
842 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
844 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
846 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
849 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
851 * include/c_global/cstdio: Add comment about LWG 2249.
852 * include/c_std/cstdio: Likewise.
854 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
856 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
858 * include/std/mutex (__recursive_mutex_base): Likewise.
860 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
863 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
864 implement EBO safely.
865 (_Sp_counted_base::_M_get_deleter): Add noexcept.
866 (_Sp_counter_ptr): Use noexcept instead of comments.
867 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
868 (_Sp_counted_ptr_inplace): Likewise.
869 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
870 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
871 custom allocator and test construction with custom allocator.
872 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
875 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
877 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
878 dialect to -std=gnu++11.
880 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
882 * include/bits/hashtable_policy.h
883 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
884 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
886 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
888 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
889 * include/c_std/cstdio (gets): Likewise.
890 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
892 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
895 * include/debug/unordered_map (unordered_map, unordered_multimap):
896 Fix default allocator type.
897 * include/profile/unordered_map (unordered_map, unordered_multimap):
899 * include/bits/unordered_map.h: Fix comments.
901 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
904 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
905 move implementation to make_exception_ptr.
906 * include/std/future (_State_base::_M_break_promise): Replace
907 copy_exception with make_exception_ptr.
908 * testsuite/18_support/exception_ptr/move.cc: Likewise.
909 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
910 * testsuite/30_threads/future/members/get2.cc: Likewise.
911 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
912 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
913 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
914 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
916 2013-04-22 Jason Merrill <jason@redhat.com>
918 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
920 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
923 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
925 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
926 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
927 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
929 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
931 * include/bits/hashtable_policy.h: Add C++11 allocator support.
932 * include/bits/hashtable.h: Likewise.
933 * include/bits/unordered_set.h: Likewise.
934 * include/bits/unordered_map.h: Likewise.
935 * include/debug/unordered_set: Likewise.
936 * include/debug/unordered_map: Likewise.
937 * include/std/unordered_set: Remove bits/algobase.h
938 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
939 * include/std/unordered_map: Likewise.
940 * include/ext/throw_allocator.h: Add checks on calls to allocator
942 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
943 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
944 * testsuite/util/regression/rand/priority_queue
945 /container_rand_regression_test.tcc: Adapt.
946 * testsuite/util/regression/rand/assoc
947 /container_rand_regression_test.tcc: Likewise.
948 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
949 * testsuite/23_containers/unordered_set
950 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
951 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
952 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
953 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
954 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
955 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
956 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
957 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
958 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
959 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
961 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
962 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
964 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
965 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
966 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
967 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
968 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
969 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
970 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
972 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
973 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
974 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
976 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
977 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
979 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
980 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
982 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
984 * include/std/type_traits (is_signed): Simplify.
985 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
986 Adjust dg-error line numbers.
987 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
989 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
991 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
994 * include/std/complex (complex<float>::real, complex<float>::imag,
995 complex<double>::real, complex<double>::imag,
996 complex<long double>::real, complex<long double>::imag): Declare
997 as const member functions.
998 * include/std/type_traits (integral_constant<>::operator value_type):
1001 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1004 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
1005 * testsuite/25_algorithms/pop_heap/57010.cc: New.
1007 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
1009 * src/c++11/system_error.cc (generic_category_instance): Add
1011 (system_category_instance): Likewise.
1012 * src/c++11/future.cc (__fec): Likewise.
1014 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1016 * doc/xml/manual/extensions.xml: Fix anachronism.
1018 2013-04-09 Tom Tromey <tromey@redhat.com>
1020 * configure, config.h.in: Rebuild.
1021 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
1023 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
1025 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
1027 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1029 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
1031 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
1033 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1035 * include/Makefile.am: Add ext/aligned_buffer.h
1036 * include/Makefile.in: Regenerate.
1037 * include/ext/aligned_buffer.h: New.
1038 * include/std/future (_Result): Use __aligned_buffer.
1039 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
1040 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
1041 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
1044 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1046 * include/bits/forward_list.h: Only include required headers.
1047 (forward_list::reference): Define directly, not using __alloc_traits.
1048 (forward_list::const_reference): Likewise.
1050 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
1052 * include/std/functional (_Derives_from_unary_function): Remove.
1053 (_Derives_from_binary_function): Remove.
1054 * include/std/type_traits (__sfinae_types): Remove.
1055 (__is_assignable_helper): Adapt.
1056 (__is_convertible_helper): Adapt.
1057 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
1058 Remove several explicit instantiations of integral_constant.
1059 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
1060 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1061 Adapt dg-error line number.
1062 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1064 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1065 * testsuite/20_util/bind/ref_neg.cc: Likewise.
1067 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1070 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
1071 get_terminate() accessors.
1072 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
1073 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
1075 * libsupc++/new_handler.cc: Likewise.
1077 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
1079 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
1081 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1084 * include/debug/array (tuple_size, tuple_element): Do not declare.
1085 * include/profile/array: Likewise.
1086 * testsuite/23_containers/array/tuple_interface/
1087 tuple_element_debug_neg.cc: Adjust dg-error line number.
1089 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
1091 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
1092 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
1094 (set_terminate(terminate_handler)): Set atomically.
1095 (set_unexpected(terminate_handler)): Likewise.
1096 * libsupc++/new (get_new_handler()): Declare.
1097 * libsupc++/new_handler.cc (get_new_handler()): Define.
1098 (set_new_handler(new_handler)): Set atomically.
1099 (__new_handler): Use internal linkage.
1100 * libsupc++/new_op.cc (operator new): Use get_new_handler().
1101 * libsupc++/new_opnt.cc (operator new): Likewise.
1102 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
1103 * configure: Regenerate.
1104 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
1105 * libsupc++/Makefile.in: Regenerate.
1106 * config/abi/pre/gnu.ver: Add new exports.
1107 * doc/xml/manual/status_cxx2011.xml: Update.
1108 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
1110 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
1111 * testsuite/18_support/new_handler.cc: New.
1112 * testsuite/18_support/terminate_handler.cc: New.
1113 * testsuite/18_support/unexpected_handler.cc: New.
1115 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1117 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
1118 defer to general documentation on contributing to GCC.
1119 * doc/html/*: Regenerate.
1121 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
1123 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
1125 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
1128 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
1130 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
1132 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
1134 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
1136 * doc/xml/manual/policy_data_structures: Remove direct link to
1137 IBM Haifa Research Labs.
1139 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
1140 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
1142 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
1145 * doc/xml/manual/shared_ptr.xml: Use canonical address for
1148 2013-03-27 Kai Tietz <ktietz@redhat.com>
1150 * crossconfig.m4: Add support for cygwin x64 target.
1151 * configure: Regenerated.
1153 2013-03-25 Kai Tietz <ktietz@redhat.com>
1155 * testsuite/18_support/50594.cc: For mingw-targets use only static
1157 * testsuite/19_diagnostics/error_category/operators/equal.cc
1158 * testsuite/19_diagnostics/error_code/cons/1.cc
1159 * testsuite/19_diagnostics/error_code/operators/bool.cc
1160 * testsuite/19_diagnostics/error_code/operators/equal.cc
1161 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
1162 * testsuite/19_diagnostics/error_condition/cons/1.cc
1163 * testsuite/19_diagnostics/error_condition/operators/bool.cc
1164 * testsuite/19_diagnostics/error_condition/operators/equal.cc
1165 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
1166 * testsuite/23_containers/set/requirements/exception/basic.cc
1167 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
1168 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
1170 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
1173 * include/ext/debug_allocator.h (debug_allocator): Add missing members
1174 to meet allocator requirements.
1175 * testsuite/ext/debug_allocator/56170.cc: New.
1177 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
1180 * include/std/chrono (__is_ratio): Uglify T.
1182 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
1184 PR libstdc++/55977 (partial, std::vector and std::deque bits)
1185 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
1186 _InputIterator, std::input_iterator_tag)): Use emplace_back.
1187 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
1188 _InputIterator, std::input_iterator_tag)): Likewise.
1189 * testsuite/23_containers/vector/cons/55977.cc: New.
1190 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
1191 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1192 Adjust dg-error line number.
1193 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1196 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
1199 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
1200 _InputIterator, __false_type)): Use emplace_back.
1201 * testsuite/23_containers/list/cons/55979.cc: New.
1202 * testsuite/23_containers/list/modifiers/1.h: Adjust.
1203 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1204 Adjust dg-error line number.
1206 2013-03-16 Jason Merrill <jason@redhat.com>
1209 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
1211 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1214 * libsupc++/exception_ptr.h (type_info): Declare.
1216 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1219 * include/std/mutex (lock_guard, unique_lock, lock): Define without
1220 depending on _GLIBCXX_HAS_GTHREADS.
1221 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
1223 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1226 * include/std/future (__future_base::_Result): Add result_type
1228 (__future_base::_S_allocate_result): Overload for std::allocator.
1229 (__future_base::_Task_setter): Use _Result::result_type instead of
1230 deducing the type from the task.
1231 (__future_base::_Task_state): Store allocator to allow shared state
1232 to be reset. Replace std::function with member of target object type
1234 (__future_base::_Task_state_base): New abstract base class.
1235 (__future_base::_Task_state_base::_M_run): New virtual function to
1236 invoke type-erased target object.
1237 (__future_base::_Task_state_base::_M_reset): New virtual function to
1238 create new shared_state using same target object and allocator.
1239 (__future_base::__create_task_state): Allocate a new _Task_state.
1240 (packaged_task::packaged_task): Use __create_task_state.
1241 (packaged_task::reset): Use _Task_state_base::_M_reset.
1242 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
1244 2013-03-15 Tom Tromey <tromey@redhat.com>
1246 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
1247 (PROBE2): New macro.
1248 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
1249 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
1250 * configure.ac: Check for sys/sdt.h.
1251 * configure, config.h.in: Rebuild.
1253 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1256 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
1257 allocator_traits instead of calling construct directly.
1258 * testsuite/23_containers/map/56613.cc: New.
1260 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
1262 * doc/html/*: Regenerate.
1264 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
1267 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
1268 * testsuite/20_util/is_fundamental/value.cc: Extend.
1269 * testsuite/20_util/is_compound/value.cc: Likewise.
1271 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
1273 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
1276 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
1278 * include/bits/memoryfwd.h: New. Centralize forward declarations.
1279 * include/bits/algorithmfwd.h: Consistent comments.
1280 * include/bits/localefwd.h: Same.
1281 * include/ext/vstring_fwd.h: Same.
1282 * include/parallel/algorithmfwd.h: Same.
1283 * include/parallel/numericfwd.h: Same.
1284 * include/std/iosfwd: Same.
1286 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
1288 * include/ext/alloc_traits.h: Remove allocator forward decl.
1289 * include/bits/stl_construct.h: Same.
1290 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
1291 forward decl. Consistent comments.
1293 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
1295 * include/Makefile.am (bits_headers): Add memoryfwd.h.
1296 * include/Makefile.in: Regenerate.
1299 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
1301 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
1302 Reset pointers after deallocation when memory can be reused.
1303 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
1304 elements to really challenge C++11 allocator integration.
1305 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
1306 * testsuite/23_containers/vector/allocator/copy_assign.cc:
1308 * testsuite/23_containers/vector/allocator/move_assign.cc:
1310 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
1311 swap vector back before checks on memory/personality mapping are
1313 * testsuite/23_containers/forward_list/allocator/minimal.cc:
1314 Insert element to really challenge C++11 allocator integration.
1315 * testsuite/23_containers/forward_list/allocator/copy.cc:
1317 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
1319 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1321 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
1322 and swap forward_list back before checks on memory/personality
1323 mapping are performed.
1325 2013-03-07 Jakub Jelinek <jakub@redhat.com>
1327 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1328 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1329 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1331 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1332 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1333 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1334 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1335 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1336 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1338 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1340 * scripts/extract_symvers.pl: Omit symbols bound to base
1342 * scripts/extract_symvers.in: Likewise.
1343 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1344 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1345 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1346 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1347 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1349 2013-03-04 Ulrich Drepper <drepper@gmail.com>
1351 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
1352 Optimize generation function by pulling computation of __r into the
1353 constructor for param_type. Also compare _M_mu in operator==.
1356 2013-03-02 Ulrich Drepper <drepper@gmail.com>
1358 Add triangular and von Mises distributions.
1359 * include/ext/random: Include <ext/cmath>.
1360 Add __gnu_cxx::triangular_distribution<> and
1361 __gnu_cxx::von_mises_distribution<> classes.
1362 * include/ext/random.tcc: Add out-of-line functions for
1363 __gnu_cxx::triangular_distribution<> and
1364 __gnu_cxx::von_mises_distribution<>.
1365 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
1366 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
1367 * testsuite/ext/triangular_distribution/operators/serialize.cc:
1369 * testsuite/ext/triangular_distribution/operators/equal.cc:
1371 * testsuite/ext/triangular_distribution/operators/inequal.cc:
1373 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
1375 * testsuite/ext/triangular_distribution/requirements/
1376 explicit_instantiation/1.cc: New file.
1377 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
1378 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
1379 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
1381 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
1382 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
1384 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
1386 * testsuite/ext/von_mises_distribution/requirements/
1387 explicit_instantiation/1.cc: New file.
1390 * include/Makefile.am (ext_headers): Add cmath.
1391 * include/Makefile.in: Regenerated.
1392 * include/ext/cmath: New file.
1394 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1396 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1397 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1398 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1399 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1400 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1402 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1405 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
1406 * testsuite/29_atomics/atomic/operators/56012.cc: New.
1409 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
1411 * testsuite/29_atomics/atomic/operators/56011.cc: New.
1413 2013-02-25 Jason Merrill <jason@redhat.com>
1415 * configure.ac: Check for __cxa_thread_atexit_impl.
1416 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
1418 * config.h.in, configure: Regenerate.
1420 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1422 * include/std/streambuf (basic_streambuf): Use injected class name
1423 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
1426 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1428 * doc/html/faq.html: Fix spelling.
1429 * doc/xml/faq.xml: Likewise.
1430 * include/bits/basic_ios.h: Likewise.
1431 * include/bits/regex.h: Likewise.
1432 * include/std/istream: Likewise.
1433 * include/std/streambuf: Likewise.
1435 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1437 * testsuite/23_containers/unordered_set/55043.cc: Add missing
1438 namespace qualification.
1439 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1441 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
1443 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
1444 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
1445 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
1446 * include/bits/stl_pair.h: Add to utilities group.
1447 * include/std/tuple: Same.
1448 * include/std/typeindex: Same.
1450 * include/bits/stringfwd.h: Fix markup.
1451 * include/std/limits: Same.
1452 * include/std/type_traits: Same.
1453 * include/tr1/memory: Same.
1454 * include/tr1/regex: Same.
1455 * scripts/run_doxygen: Comment.
1456 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
1458 2013-02-14 Jason Merrill <jason@redhat.com>
1460 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
1461 test if unsupported.
1463 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
1466 * include/std/complex (complex): Undefine.
1467 * include/c_compatibility/complex.h (complex): Only undefine if
1468 <complex> has been included.
1469 * testsuite/26_numerics/complex/56111.cc: New testcase.
1471 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
1473 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
1474 default constructor protected.
1475 * include/bits/hashtable.h: static assert that _Hash_code_base has
1476 a default constructor available through inheritance.
1478 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1480 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
1483 2013-02-12 Julian Brown <julian@codesourcery.com>
1485 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
1486 Don't expect dots after abbreviated weekday names for ru_RU for
1487 glibc versions >= 2.17.
1488 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
1491 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1493 * include/bits/random.tcc (__transform): Remove.
1495 (discrete_distribution<>::param_type::_M_initialize): Adjust.
1496 (piecewise_constant_distribution<>::param_type::_M_initialize):
1498 (piecewise_linear_distribution<>::param_type::_M_initialize):
1501 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1503 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
1504 Use -fimplicit-templates.
1505 * src/c++11/Makefile.in: Regenerate.
1506 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
1507 std::lower_bound template.
1509 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1511 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
1512 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
1513 in C++11 mode and if available in the underlying C library.
1514 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
1515 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
1516 _GLIBCXX_HAVE_QUICK_EXIT.
1518 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1520 * doc/html/*: Regenerate.
1522 2013-02-11 Jason Merrill <jason@redhat.com>
1524 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
1525 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
1526 * config.h.in, configure: Regenerate.
1527 * include/c_std/cstdlib: Add atexit and at_quick_exit.
1528 * include/c_global/cstdlib: Add atexit and at_quick_exit.
1529 * testsuite/18_support/quick_exit/quick_exit.cc: New.
1531 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1535 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1538 * include/bits/basic_ios.h: Replace operator void*() const
1539 with explicit operator bool() const in C++11 and greater.
1540 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1542 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
1543 Jonathan Wakely <jwakely.gcc@gmail.com>
1545 * doc/xml/manual/containers.xml: Add section on unordered containers.
1546 * doc/xml/manual/using.xml: Fix incomplete sentence.
1548 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
1551 * include/bits/hashtable.h (__cache_default): Check if hash function
1553 * testsuite/23_containers/unordered_set/56267.cc: New.
1554 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1555 dg-error line number.
1556 * testsuite/23_containers/unordered_set/
1557 not_default_constructible_hash_neg.cc: Likewise.
1560 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
1562 * testsuite/23_containers/unordered_set/56278.cc: New.
1564 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
1566 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
1569 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
1572 * include/tr1/special_function_util.h: Remove spurious const
1573 from numeric arguments.
1574 * include/tr1/riemann_zeta.tcc: Likewise.
1575 * include/tr1/exp_integral.tcc: Likewise.
1576 * include/tr1/bessel_function.tcc: Likewise.
1577 * include/tr1/hypergeometric.tcc: Likewise.
1578 * include/tr1/modified_bessel_func.tcc: Likewise.
1579 * include/tr1/poly_laguerre.tcc: Likewise.
1580 * include/tr1/gamma.tcc: Likewise.
1581 * include/tr1/legendre_function.tcc: Likewise.
1582 * include/tr1/poly_hermite.tcc: Likewise.
1583 * include/tr1/ell_integral.tcc: Likewise.
1584 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
1585 If argument is zero return function value.
1586 * testsuite/tr1/5_numerical_facilities/special_functions/
1587 08_cyl_bessel_i/pr56216.cc: New.
1589 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
1591 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
1593 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1596 * include/bits/basic_ios.h: Replace operator void*() const
1597 with explicit operator bool() const in C++11 and greater.
1598 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1600 2013-02-04 Dodji Seketeli <dodji@redhat.com>
1602 Add missing explicit instantiation for std::lower_bound template
1603 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
1604 missing instantiation for std::lower_bound template.
1606 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
1608 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
1609 * include/bits/basic_string.h: Specialize previous to mark
1610 std::hash for string types as slow.
1611 * include/bits/hashtable.h (__cache_default): Replace is_integral
1612 with __is_fast_hash.
1613 * src/c++11/hash_c++0x.cc: Add type_traits include.
1614 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1615 Adapt dg-error line number.
1616 * testsuite/23_containers/unordered_set/
1617 not_default_constructible_hash_neg.cc: Likewise.
1619 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1620 Paolo Carlini <paolo.carlini@oracle.com>
1622 PR libstdc++/56202 (again)
1623 * include/bits/random.tcc (binomial_distribution<>::
1624 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
1627 * include/bits/random.h: Fix comment typo.
1629 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1630 Paolo Carlini <paolo.carlini@oracle.com>
1633 * include/bits/random.tcc (binomial_distribution<>::
1634 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
1637 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1639 Update copyright years.
1640 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
1641 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
1642 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
1643 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
1644 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
1645 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
1646 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
1647 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
1648 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
1649 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
1650 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
1651 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
1652 testsuite/29_atomics/atomic/cons/assign_neg.cc,
1653 testsuite/29_atomics/atomic/cons/copy_neg.cc,
1654 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
1655 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
1656 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
1657 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
1658 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1659 Update lines in dg error matches.
1661 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1663 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
1665 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
1667 * include/bits/hashtable_policy.h
1668 (_Prime_rehash_policy::_M_next_bkt)
1669 (_Prime_rehash_policy::_M_need_rehash): Move definition...
1670 * src/c++11/hashtable_c++0x.cc: ... here.
1671 * src/shared/hashtable-aux.cc: Remove c++config.h include.
1672 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
1675 2013-01-29 Jason Merrill <jason@redhat.com>
1678 * config/abi/pre/gnu.ver: Don't export construction vtables.
1679 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1681 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1684 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
1685 to construct value_type explicitly before trying to extract the key.
1686 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
1688 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
1690 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
1691 _Hashtable_ebo_helper to embed functors into the local_iterator
1692 when necessary. Pass information about functors involved in hash
1694 * include/bits/hashtable.h (__cache_default): Do not cache for
1695 builtin integral types unless the hash functor is not noexcept
1696 qualified or is not default constructible. Adapt static assertions
1697 and local iterator instantiations.
1698 * include/debug/unordered_set
1699 (std::__debug::unordered_set<>::erase): Detect local iterators to
1700 invalidate using contained node rather than generating a dummy
1701 local_iterator instance.
1702 (std::__debug::unordered_multiset<>::erase): Likewise.
1703 * include/debug/unordered_map
1704 (std::__debug::unordered_map<>::erase): Likewise.
1705 (std::__debug::unordered_multimap<>::erase): Likewise.
1706 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
1707 std::tr1 and std versions of unordered_set regardless of any
1708 macro. Add test on default cache behavior.
1709 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
1710 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1712 * testsuite/23_containers/unordered_set/
1713 not_default_constructible_hash_neg.cc: New.
1714 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
1716 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
1719 * include/std/complex (pow(const complex<>&, int)): Avoid __n
1722 2013-01-22 Jakub Jelinek <jakub@redhat.com>
1724 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1725 Tightten scan-assembler-times regexps, add dg-additional-options for
1726 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
1729 2013-01-12 Andi Kleen <ak@linux.intel.com>
1730 Jonathan Wakely <jwakely.gcc@gmail.com>
1733 * include/bits/atomic_base.h (__memory_order_modifier): Add
1734 __memory_order_mask, __memory_order_modifier_mask,
1735 __memory_order_hle_acquire, __memory_order_hle_release.
1736 (operator|,operator&): Add.
1737 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
1738 (__cmpexch_failure_order): Add.
1739 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
1741 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1744 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1747 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
1749 (__basic_future::_M_get_result()): Const qualify.
1750 (shared_future::get()): Likewise.
1751 * testsuite/30_threads/shared_future/members/get.cc: Use const
1754 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1756 PR libstdc++/55043 (again)
1757 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
1758 unless construction would be well-formed.
1759 (__allow_copy_cons, __check_copy_constructible): Define.
1760 * include/bits/unordered_map.h (__check_copy_constructible): Use as
1761 base class so copy constructor will be deleted if appropriate.
1762 (is_copy_constructible): Remove specialization.
1763 * include/bits/unordered_set.h: Likewise.
1764 * include/debug/unordered_map.h: Undo previous commit. Default copy
1765 and move constructors.
1766 * include/debug/unordered_set.h: Likewise.
1767 * include/profile/unordered_map.h: Undo previous commit.
1768 * include/profile/unordered_set.h: Likewise.
1769 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
1770 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
1771 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1772 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
1773 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
1774 cannot support incomplete types.
1775 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
1778 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1781 * include/std/unordered_map: Include alloc_traits.h
1782 * include/std/unordered_set: Likewise.
1783 * include/bits/alloc_traits.h: Define __is_copy_insertable.
1784 * include/bits/unordered_map.h: Use it.
1785 * include/bits/unordered_set.h: Likewise.
1786 * include/debug/unordered_map.h: Likewise.
1787 * include/debug/unordered_set.h: Likewise.
1788 * include/profile/unordered_map.h: Likewise.
1789 * include/profile/unordered_set.h: Likewise.
1790 * include/bits/hashtable.h: Fix comment typos.
1791 * testsuite/23_containers/unordered_map/55043.cc: New.
1792 * testsuite/23_containers/unordered_multimap/55043.cc: New.
1793 * testsuite/23_containers/unordered_multiset/55043.cc: New.
1794 * testsuite/23_containers/unordered_set/55043.cc: New.
1796 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
1798 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
1801 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1803 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
1805 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1808 * include/std/functional (_Mem_fn::operator()): Fix constraints to
1810 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
1811 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
1813 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1816 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
1818 * configure: Regenerate.
1820 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1823 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
1824 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
1828 * include/std/functional (bad_function_call::what()): Declare.
1829 * src/c++11/functional.cc (bad_function_call::what()): Define.
1830 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
1831 * testsuite/20_util/bad_function_call/what.cc: New.
1833 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1835 * include/bits/unordered_map.h: Fix typo in comments.
1836 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
1837 counts for unordered associative containers.
1839 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1841 * doc/xml/manual/abi.xml: Update library and symbol versions.
1843 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1845 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
1847 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
1850 Copyright (C) 2013 Free Software Foundation, Inc.
1852 Copying and distribution of this file, with or without modification,
1853 are permitted in any medium without royalty provided the copyright
1854 notice and this notice are preserved.