1 2013-06-25 Ed Smith-Rowland <3dw4rd@verizon.net>
3 Status page for C++2014 library features
4 * doc/xml/faq.xml: Add link to new C++14 status page.
5 * doc/xml/manual/intro.xml: Ditto.
6 * doc/xml/manual/status_cxx2014.xml: New.
8 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
11 * include/bits/char_traits.h (char_traits<char>::lt): Implement
13 * testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
15 2013-06-24 Bernd Edlinger <bernd.edlinger@hotmail.de>
18 * include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
19 declare per the letter of the C++ standard in terms of void.
20 * include/c_std/cstdlib: Likewise.
22 2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>
25 * include/bits/random.h (binomial_distribution<>::_M_waiting):
27 * include/bits/random.tcc (binomial_distribution<>::operator()
28 (_UniformRandomNumberGenerator&, const param_type&)): Pass
29 __param._M_q to _M_waiting.
31 * testsuite/26_numerics/random/binomial_distribution/
32 operators/values.cc: Add tests.
34 2013-06-21 Paolo Carlini <paolo.carlini@oracle.com>
37 * include/std/valarray (valarray<>::operator=(const _Expr<>&)):
38 Implement correctly C++11 26.6.2.3/1.
39 * testsuite/26_numerics/valarray/dr630-3.C: New.
41 2013-06-18 Jonathan Wakely <jwakely.gcc@gmail.com>
44 * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
45 functionality to new __timed_mutex_impl mixin. Overload try_lock_until
46 to handle conversion between different clocks. Replace constrained
47 __try_lock_for_impl overloads with conditional increment.
48 * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
49 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.
51 2013-06-17 Jonathan Wakely <jwakely.gcc@gmail.com>
52 Chris Jefferson <chris@bubblescope.net>
54 * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
55 dispatch to traditional std::equal for random-access iterators.
56 (__equal2_aux, __equal2): Remove.
57 (__equal::equal): Remove unused overloads.
58 * include/bits/stl_algo.h (is_permutation): Fix typos.
60 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
62 * include/std/shared_mutex (shared_lock::operator=): Add missing
65 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
68 * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
69 allocator's pointer type.
70 * include/bits/hashtable.h (_Hashtable): Likewise.
71 * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
72 * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
73 * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
74 * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
76 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
78 * include/std/shared_mutex: Implement N3659.
79 * include/bits/c++14_warning.h: New.
80 * include/Makefile.am: Add new headers.
81 * include/Makefile.in: Regenerate.
82 * testsuite/30_threads/shared_lock/cons/1.cc: New.
83 * testsuite/30_threads/shared_lock/locking/2.cc: New.
84 * testsuite/30_threads/shared_lock/cons/2.cc: New.
85 * testsuite/30_threads/shared_lock/locking/3.cc: New.
86 * testsuite/30_threads/shared_lock/cons/3.cc: New.
87 * testsuite/30_threads/shared_lock/locking/4.cc: New.
88 * testsuite/30_threads/shared_lock/cons/4.cc: New.
89 * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
90 * testsuite/30_threads/shared_lock/cons/5.cc: New.
91 * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
92 * testsuite/30_threads/shared_lock/cons/6.cc: New.
93 * testsuite/30_threads/shared_lock/requirements/
94 explicit_instantiation.cc: New.
95 * testsuite/30_threads/shared_lock/locking/1.cc: New.
96 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
97 * testsuite/30_threads/shared_mutex/cons/1.cc: New.
98 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
99 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
100 * testsuite/30_threads/shared_mutex/requirements/
101 standard_layout.cc: New.
102 * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
103 * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
105 2013-06-15 Paolo Carlini <paolo.carlini@oracle.com>
108 * include/bits/unordered_map.h (unordered_map<>::insert,
109 unordered_multimap<>::insert): Use std::forward, not std::move.
110 * testsuite/23_containers/unordered_map/insert/57619.C: New.
111 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
113 2013-06-14 Alan Modra <amodra@gmail.com>
115 * configure.host (abi_baseline_pair): Match powerpc64*.
117 2013-06-13 Daniel Krugler <daniel.kruegler@gmail.com>
119 * include/std/type_traits (is_function): Support ref-qualified
121 (is_copy_constructible, is_move_constructible, is_copy_assignable,
122 is_move_assignable, is_nothrow_copy_constructible,
123 is_nothrow_move_constructible, is_nothrow_copy_assignable,
124 is_nothrow_move_assignable): Implement LWG 2196.
125 (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
127 (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
129 * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
130 * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
131 * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
132 * testsuite/20_util/is_assignable/value.cc: Likewise.
133 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
134 * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
135 * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
136 * testsuite/20_util/is_function/value.cc: Likewise.
137 * testsuite/20_util/is_move_assignable/value.cc: Likewise.
138 * testsuite/20_util/is_move_constructible/value.cc: Likewise.
139 * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
140 * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
141 * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
142 * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
144 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
146 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
148 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
151 2013-06-13 Paolo Carlini <paolo.carlini@oracle.com>
153 * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
154 __gnu_cxx::__airy_bi()): Remove.
155 * testsuite/tr1/5_numerical_facilities/special_functions/
156 10_cyl_bessel_k/airy.cc: Fix.
158 2013-06-12 Ed Smith-Rowland <3dw4rd@verizon.net>
161 * include/tr1/modified_bessel_func.tcc (__airy): Remove return
163 (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
164 * testsuite/tr1/5_numerical_facilities/special_functions/
165 10_cyl_bessel_k/airy.cc: New.
167 2013-06-11 Ed Smith-Rowland <3dw4rd@verizon.net>
169 Fix library literals error involving namespace __detail.
170 * include/std/chrono: Rename __detail to __select_type. Reformat.
171 * include/bits/basic_string.h: Reformat.
172 * testsuite/20_util/duration/literals/ns_detail.cc: New.
174 2013-06-11 Paolo Carlini <paolo.carlini@oracle.com>
177 * include/c_global/cstddef (max_align_t): Add to namespace std.
178 * include/c_std/cstddef: Likewise.
179 * testsuite/18_support/max_align_t/requirements/1.cc: New.
180 * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
182 2013-06-10 Benjamin Kosnik <bkoz@redhat.com>
184 * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
185 * include/bits/stl_map.h (erase): Use abi_tag when C++11.
186 * include/bits/stl_multimap.h: Same.
187 * include/bits/stl_multiset.h: Same.
188 * include/bits/stl_set.h: Same.
189 * include/bits/stl_tree.h: Same.
190 * include/std/complex (real, imag): Use macro for abi_tag.
192 * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
193 * testsuite/util/testsuite_containers.h (erase_external): New
195 (erase_external_iterators): Same.
196 (linkage_check_cxx98_cxx11_erase): Same.
197 (linkage_check_cxx98_cxx11_erase_iterators): Same.
198 * testsuite/util/testsuite_shared.cc: Define.
199 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
200 * testsuite/23_containers/map/modifiers/erase/
201 dr130-linkage-check.cc: New.
202 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
203 * testsuite/23_containers/multimap/modifiers/erase/
204 dr130-linkage-check.cc: New.
205 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
206 * testsuite/23_containers/multiset/modifiers/erase/
207 dr130-linkage-check.cc: New.
208 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
209 * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
211 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
213 * testsuite/23_containers/map/dr130.cc: Move...
214 * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
215 * testsuite/23_containers/multimap/dr130.cc: Move ...
216 * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
217 * testsuite/23_containers/multiset/dr130.cc: Move...
218 * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
219 * testsuite/23_containers/set/dr130.cc: Move...
220 * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
222 2013-06-10 Thomas Schwinge <thomas@codesourcery.com>
224 * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
225 handling of Linux-based x86 systems to cover all GNU systems.
226 * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
227 * testsuite/18_support/pthread_guard.cc: Likewise.
228 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
230 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
232 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
233 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
234 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
235 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
236 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
237 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
238 * testsuite/23_containers/list/pthread1.cc: Likewise.
239 * testsuite/23_containers/list/pthread5.cc: Likewise.
240 * testsuite/23_containers/map/pthread6.cc: Likewise.
241 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
243 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
245 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
246 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
247 * testsuite/30_threads/async/42819.cc: Likewise.
248 * testsuite/30_threads/async/49668.cc: Likewise.
249 * testsuite/30_threads/async/54297.cc: Likewise.
250 * testsuite/30_threads/async/any.cc: Likewise.
251 * testsuite/30_threads/async/async.cc: Likewise.
252 * testsuite/30_threads/async/launch.cc: Likewise.
253 * testsuite/30_threads/async/sync.cc: Likewise.
254 * testsuite/30_threads/call_once/39909.cc: Likewise.
255 * testsuite/30_threads/call_once/49668.cc: Likewise.
256 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
257 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
258 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
259 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
260 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
261 * testsuite/30_threads/condition_variable/members/53841.cc:
263 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
265 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
266 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
267 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
268 * testsuite/30_threads/condition_variable_any/members/1.cc:
270 * testsuite/30_threads/condition_variable_any/members/2.cc:
272 * testsuite/30_threads/future/cons/move.cc: Likewise.
273 * testsuite/30_threads/future/members/45133.cc: Likewise.
274 * testsuite/30_threads/future/members/get.cc: Likewise.
275 * testsuite/30_threads/future/members/get2.cc: Likewise.
276 * testsuite/30_threads/future/members/share.cc: Likewise.
277 * testsuite/30_threads/future/members/valid.cc: Likewise.
278 * testsuite/30_threads/future/members/wait.cc: Likewise.
279 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
280 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
281 * testsuite/30_threads/lock/1.cc: Likewise.
282 * testsuite/30_threads/lock/2.cc: Likewise.
283 * testsuite/30_threads/lock/3.cc: Likewise.
284 * testsuite/30_threads/lock/4.cc: Likewise.
285 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
286 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
287 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
288 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
289 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
290 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
291 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
292 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
293 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
294 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
295 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
296 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
297 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
298 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
299 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
300 * testsuite/30_threads/packaged_task/cons/move_assign.cc:
302 * testsuite/30_threads/packaged_task/members/get_future.cc:
304 * testsuite/30_threads/packaged_task/members/get_future2.cc:
306 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
307 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
308 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
309 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
310 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
311 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
312 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
313 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
314 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
315 * testsuite/30_threads/promise/cons/1.cc: Likewise.
316 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
317 * testsuite/30_threads/promise/cons/move.cc: Likewise.
318 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
319 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
320 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
321 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
322 * testsuite/30_threads/promise/members/set_exception2.cc:
324 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
325 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
326 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
327 * testsuite/30_threads/promise/members/swap.cc: Likewise.
328 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
329 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
331 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
332 * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
334 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
336 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
337 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
338 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
339 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
340 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
342 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
343 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
344 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
346 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
348 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
350 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
352 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
354 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
356 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
358 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
360 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
362 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
364 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
365 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
366 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
367 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
368 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
369 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
370 * testsuite/30_threads/shared_future/members/wait_for.cc:
372 * testsuite/30_threads/shared_future/members/wait_until.cc:
374 * testsuite/30_threads/this_thread/1.cc: Likewise.
375 * testsuite/30_threads/this_thread/2.cc: Likewise.
376 * testsuite/30_threads/this_thread/3.cc: Likewise.
377 * testsuite/30_threads/this_thread/4.cc: Likewise.
378 * testsuite/30_threads/thread/cons/1.cc: Likewise.
379 * testsuite/30_threads/thread/cons/2.cc: Likewise.
380 * testsuite/30_threads/thread/cons/3.cc: Likewise.
381 * testsuite/30_threads/thread/cons/4.cc: Likewise.
382 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
383 * testsuite/30_threads/thread/cons/5.cc: Likewise.
384 * testsuite/30_threads/thread/cons/6.cc: Likewise.
385 * testsuite/30_threads/thread/cons/7.cc: Likewise.
386 * testsuite/30_threads/thread/cons/8.cc: Likewise.
387 * testsuite/30_threads/thread/cons/9.cc: Likewise.
388 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
389 * testsuite/30_threads/thread/members/1.cc: Likewise.
390 * testsuite/30_threads/thread/members/2.cc: Likewise.
391 * testsuite/30_threads/thread/members/3.cc: Likewise.
392 * testsuite/30_threads/thread/members/4.cc: Likewise.
393 * testsuite/30_threads/thread/members/5.cc: Likewise.
394 * testsuite/30_threads/thread/members/hardware_concurrency.cc:
396 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
397 * testsuite/30_threads/thread/native_handle/typesizes.cc:
399 * testsuite/30_threads/thread/swap/1.cc: Likewise.
400 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
401 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
403 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
404 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
405 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
407 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
408 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
409 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
410 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
411 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
412 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
413 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
414 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
415 * testsuite/30_threads/try_lock/1.cc: Likewise.
416 * testsuite/30_threads/try_lock/2.cc: Likewise.
417 * testsuite/30_threads/try_lock/3.cc: Likewise.
418 * testsuite/30_threads/try_lock/4.cc: Likewise.
419 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
420 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
421 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
422 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
423 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
424 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
425 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
426 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
427 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
428 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
429 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
430 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
431 * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
432 * testsuite/ext/profile/mh.cc: Likewise.
433 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
434 * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
435 * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
437 * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
439 * testsuite/util/testsuite_performance.h: Extend current handling
440 of Linux-based systems to cover all glibc-based systems.
442 2013-06-09 Jonathan Wakely <jwakely.gcc@gmail.com>
444 * include/std/mutex (call_once): Remove parentheses to fix error in
445 c++1y and gnu++1y mode.
446 * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
447 thread to avoid undefined behaviour.
449 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
451 Simplify and clean up library literals.
452 * include/std/chrono: Simplify namespace and versioning management.
453 * include/bits/basic_string.h: Ditto.
454 * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
455 * testsuite/20_util/duration/literals/values.cc: Ditto.
456 * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
457 * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
459 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
461 Implement N3654 - Quoted Strings Library Proposal
462 * include/std/iomanip: Add quoted(String, Char delim, Char escape)
463 manipulators and supporting machinery in c++1y mode.
464 * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
465 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
467 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
469 * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
472 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
474 * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
475 * include/bits/stl_algobase.h (equal, mismatch): Likewise.
476 * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
477 * testsuite/25_algorithms/equal/2.cc: New.
478 * testsuite/25_algorithms/equal/check_type2.cc: New.
479 * testsuite/25_algorithms/is_permutationqual/2.cc: New.
480 * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
481 * testsuite/25_algorithms/mismatch/2.cc: New.
482 * testsuite/25_algorithms/mismatch/check_type2.cc: New.
483 * testsuite/util/testsuite_iterators.h: Fix spelling.
485 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
487 * include/std/type-traits (integral_constant::operator()): Implement
489 * testsuite/20_util/integral_constant/call_operator.cc: New.
490 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
492 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
494 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
497 2013-06-07 Uros Bizjak <ubizjak@gmail.com>
499 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
501 2013-06-05 Tom Tromey <tromey@redhat.com>
503 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
505 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
508 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
510 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
512 * include/std/chrono: Collapse redundant 'inline' from 'inline
514 * include/std/tuple: Ditto.
515 * include/bits/move.h: Ditto.
517 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
519 Implement N3642 - User-defined Literals for Standard Library Types
520 * include/bits/parse_numbers.h: New.
521 * include/std/chrono: Add duration literal operators.
522 * include/bits/basic_string.h: Add string literal operators.
523 * include/Makefile.in: Add parse_numbers.h.
524 * include/Makefile.am: Ditto.
525 * testsuite/20_util/duration/literals/values.cc: New.
526 * testsuite/20_util/duration/literals/types.cc: New.
527 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
528 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
529 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
530 * testsuite/21_strings/basic_string/literals/values.cc: New.
531 * testsuite/21_strings/basic_string/literals/types.cc: New.
533 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
535 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
536 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
537 calling non-existent from_time_t.
539 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
541 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
544 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
546 * include/std/chrono: Wrap clocks in inline namespace _V2.
547 * src/c++11/chrono.cc: Same.
548 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
549 file, with default configure macros selected.
551 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
553 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
555 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
556 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
557 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
559 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
561 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
562 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
564 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
565 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
566 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
567 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
568 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
569 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
571 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
572 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
574 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
576 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
577 (CLOCK_MONOTONIC): Define.
579 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
581 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
584 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
586 2013-05-24 Jakub Jelinek <jakub@redhat.com>
588 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
589 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
590 don't define system_clock::is_steady, system_clock::now() and
591 steady_clock::is_steady.
592 (std::chrono::system_clock::now()): If
593 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
594 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
595 (std::chrono::system_clock::now()): Likewise. Add weak attribute
596 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
598 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
599 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
600 * src/c++11/compatibility-chrono.cc: New file.
601 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
602 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
603 * testsuite/util/testsuite_abi.cc (check_version): Add
604 GLIBCXX_3.4.20 version and make it the latest.
605 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
606 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
607 @@GLIBCXX_3.4.20 instead.
608 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
609 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
610 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
612 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
614 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
615 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
617 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
618 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
619 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
620 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
621 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
622 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
624 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
625 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
626 * config.h.in: Regenerated.
627 * src/Makefile.in: Regenerated.
628 * configure: Regenerated.
630 2013-05-23 Matthias Klose <doko@ubuntu.com>
632 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
633 (ext_headers): Remove ${ext_host_headers}.
634 (stamp-${host_alias}): Create ${host_builddir}/../ext.
635 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
636 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
637 * include/Makefile.in: Regenerate.
638 * include/ext/random: Include ext/opt_random.h.
640 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
642 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
643 enable features if target OS is known to support them.
644 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
645 * configure: Regenerate.
647 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
650 * include/std/functional (__invoke): Do not form function types with
651 abstract return type.
652 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
654 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
656 * include/std/tuple (get): Implement N3670.
657 * include/std/utility (get): Likewise.
658 * testsuite/20_util/pair/get.cc: Move to ...
659 * testsuite/20_util/pair/astuple/get.cc: Here.
660 * testsuite/20_util/pair/astuple/astuple.cc: New.
661 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
662 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
663 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
664 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
665 * testsuite/20_util/pair/astuple/get_neg.cc: New.
666 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
667 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
668 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
670 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
672 * Revert last commit.
674 2013-05-19 Matthias Klose <doko@ubuntu.com>
676 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
677 (ext_headers): Remove ${ext_host_headers}.
678 (stamp-${host_alias}): Create ${host_builddir}/../ext.
679 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
680 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
681 * include/Makefile.in: Regenerate.
683 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
685 * include/std/system_error (error_category::error_category()): LWG
686 2145: Declare public and constexpr.
687 * src/c++11/system_error.cc (error_category::error_category()): Move
689 * src/c++11/compatibility-c++0x.cc: Here.
691 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
693 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
695 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
697 * include/bits/unique_ptr.h (make_unique): Declare inline.
698 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
699 (default_delete, unique_ptr): Add doxygen comments.
700 * include/bits/shared_ptr_base.h: Improve doxygen comments.
701 * include/bits/shared_ptr.h: Likewise.
702 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
704 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
706 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
708 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
710 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
712 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
714 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
716 * include/std/utility (exchange): Define.
717 * testsuite/20_util/exchange/1.cc: New.
719 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
721 * include/bits/unique_ptr.h (make_unique): Define.
722 * testsuite/20_util/unique_ptr/creation/single.cc: New.
723 * testsuite/20_util/unique_ptr/creation/array.cc: New.
724 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
726 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
728 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
729 rendering of std::tr1 unordered containers iterator.
730 (StdHashtableIterator): New, render std unordered containers iterator.
731 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
733 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
735 * include/bits/basic_string.h (getline): Fix doxygen comments.
737 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
739 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
740 Use std::pointer_traits.
742 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
744 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
746 * libsupc++/Makefile.in: Regenerate.
747 * libsupc++/bad_array_length.cc: Tweak.
748 * libsupc++/bad_array_new.cc: Tweak.
750 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
753 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
754 (_Deque_iterator<>::_M_const_cast): Add.
755 (deque<>::_M_erase): Declare.
756 * include/bits/deque.tcc: ... and define.
757 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
758 (_List_const_iterator<>::_M_const_cast): Add.
759 * include/bits/list.tcc (erase (iterator)): Fix.
760 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
761 Add; include <ext/cast.h>.
762 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
763 (vector<>::_M_erase): Declare.
764 * include/bits/stl_bvector.h: Likewise.
765 * include/bits/vector.tcc (vector<>::_M_erase): Define.
766 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
767 * include/debug/deque: Adjust.
768 * include/debug/list: Likewise.
769 * include/debug/vector: Likewise.
770 * include/profile/deque: Likewise.
771 * include/profile/list: Likewise.
772 * include/profile/vector: Likewise.
773 * testsuite/util/exception/safety.h (erase_base<deque>,
774 erase_base<deque>, erase_base<vector>): Remove.
775 (erase_base<__versa_string>): Update.
776 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
777 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
778 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
779 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
780 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
782 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
783 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
784 Adjust dg-error line numbers.
785 * testsuite/23_containers/deque/requirements/dr438/
786 constructor_1_neg.cc: Likewise.
787 * testsuite/23_containers/deque/requirements/dr438/
788 constructor_2_neg.cc: Likewise.
789 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
791 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
793 * testsuite/23_containers/list/requirements/dr438/
794 constructor_1_neg.cc: Likewise.
795 * testsuite/23_containers/list/requirements/dr438/
796 constructor_2_neg.cc: Likewise.
797 * testsuite/23_containers/list/requirements/dr438/
798 insert_neg.cc: Likewise.
799 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
801 * testsuite/23_containers/vector/requirements/dr438/
802 constructor_1_neg.cc: Likewise.
803 * testsuite/23_containers/vector/requirements/dr438/
804 constructor_2_neg.cc: Likewise.
805 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
808 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
810 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
812 2013-05-08 Jason Merrill <jason@redhat.com>
814 Add std::bad_array_length (N3639)
815 * libsupc++/new: Add std::bad_array_length.
816 * libsupc++/bad_array_length.cc: New.
817 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
818 * libsupc++/Makefile.in: Build them.
819 * config/abi/pre/gnu.ver: Add new symbols.
820 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
822 2013-05-08 Andi Kleen <ak@linux.intel.com>
825 * libstdc++-v3/include/bits/atomic_base.h
826 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
827 (atomic_thread_fence, atomic_signal_fence, test_and_set,
828 clear, store, load, exchange, compare_exchange_weak)
829 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
830 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
832 2013-05-08 Jason Merrill <jason@redhat.com>
834 Add std::bad_array_new_length (N2932)
835 * libsupc++/new: Add std::bad_array_new_length.
836 * libsupc++/bad_array_new.cc: New.
837 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
838 * libsupc++/Makefile.in: Build them.
839 * config/abi/pre/gnu.ver: Add new symbols.
840 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
842 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
845 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
847 * include/Makefile.in: Regenerated.
849 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
851 * include/profile/unordered_base.h: New.
852 * include/Makefile.am: Add new profile header.
853 * include/Makefile.in: Regenerate.
854 * include/profile/impl/profiler.h
855 (__profcxx_inefficient_hash_is_on): New macro.
856 * include/profile/unordered_map (std::profile::unordered_map<>):
857 Use new _Unordered_profile base class. Use default implementations
858 for special functions.
859 (std::profile::unordered_multimap<>): Likewise.
860 * include/profile/unordered_set (std::profile::unordered_set<>):
862 (std::profile::unordered_multiset<>): Likewise.
863 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
864 MoveOnly equality operator signature.
866 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
868 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
869 constexpr_data.cc: Move...
870 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
872 * testsuite/20_util/integral_constant/requirements/
873 explicit_instantiation.cc: New.
874 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
876 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
877 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
879 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
880 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
882 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
884 * include/std/type_traits (is_null_pointer): Add.
885 (__is_nullptr_t): Implement in terms of the latter.
886 (is_fundamental, is_scalar): Adjust.
887 * testsuite/20_util/is_null_pointer/requirements/
888 explicit_instantiation.cc: New.
889 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
891 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
892 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
894 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
896 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
899 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
901 * include/c_global/cstdio: Add comment about LWG 2249.
902 * include/c_std/cstdio: Likewise.
904 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
906 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
908 * include/std/mutex (__recursive_mutex_base): Likewise.
910 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
913 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
914 implement EBO safely.
915 (_Sp_counted_base::_M_get_deleter): Add noexcept.
916 (_Sp_counter_ptr): Use noexcept instead of comments.
917 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
918 (_Sp_counted_ptr_inplace): Likewise.
919 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
920 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
921 custom allocator and test construction with custom allocator.
922 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
925 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
927 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
928 dialect to -std=gnu++11.
930 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
932 * include/bits/hashtable_policy.h
933 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
934 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
936 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
938 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
939 * include/c_std/cstdio (gets): Likewise.
940 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
942 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
945 * include/debug/unordered_map (unordered_map, unordered_multimap):
946 Fix default allocator type.
947 * include/profile/unordered_map (unordered_map, unordered_multimap):
949 * include/bits/unordered_map.h: Fix comments.
951 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
954 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
955 move implementation to make_exception_ptr.
956 * include/std/future (_State_base::_M_break_promise): Replace
957 copy_exception with make_exception_ptr.
958 * testsuite/18_support/exception_ptr/move.cc: Likewise.
959 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
960 * testsuite/30_threads/future/members/get2.cc: Likewise.
961 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
962 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
963 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
964 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
966 2013-04-22 Jason Merrill <jason@redhat.com>
968 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
970 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
973 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
975 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
976 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
977 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
979 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
981 * include/bits/hashtable_policy.h: Add C++11 allocator support.
982 * include/bits/hashtable.h: Likewise.
983 * include/bits/unordered_set.h: Likewise.
984 * include/bits/unordered_map.h: Likewise.
985 * include/debug/unordered_set: Likewise.
986 * include/debug/unordered_map: Likewise.
987 * include/std/unordered_set: Remove bits/algobase.h
988 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
989 * include/std/unordered_map: Likewise.
990 * include/ext/throw_allocator.h: Add checks on calls to allocator
992 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
993 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
994 * testsuite/util/regression/rand/priority_queue
995 /container_rand_regression_test.tcc: Adapt.
996 * testsuite/util/regression/rand/assoc
997 /container_rand_regression_test.tcc: Likewise.
998 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
999 * testsuite/23_containers/unordered_set
1000 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
1001 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
1002 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
1003 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
1004 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
1005 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
1006 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
1007 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
1008 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
1009 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
1011 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
1012 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1014 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
1015 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
1016 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
1017 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
1018 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
1019 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
1020 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
1022 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
1023 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
1024 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
1026 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
1027 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1029 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
1030 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
1032 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1034 * include/std/type_traits (is_signed): Simplify.
1035 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1036 Adjust dg-error line numbers.
1037 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1039 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1041 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1044 * include/std/complex (complex<float>::real, complex<float>::imag,
1045 complex<double>::real, complex<double>::imag,
1046 complex<long double>::real, complex<long double>::imag): Declare
1047 as const member functions.
1048 * include/std/type_traits (integral_constant<>::operator value_type):
1051 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1054 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
1055 * testsuite/25_algorithms/pop_heap/57010.cc: New.
1057 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
1059 * src/c++11/system_error.cc (generic_category_instance): Add
1061 (system_category_instance): Likewise.
1062 * src/c++11/future.cc (__fec): Likewise.
1064 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1066 * doc/xml/manual/extensions.xml: Fix anachronism.
1068 2013-04-09 Tom Tromey <tromey@redhat.com>
1070 * configure, config.h.in: Rebuild.
1071 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
1073 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
1075 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
1077 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1079 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
1081 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
1083 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1085 * include/Makefile.am: Add ext/aligned_buffer.h
1086 * include/Makefile.in: Regenerate.
1087 * include/ext/aligned_buffer.h: New.
1088 * include/std/future (_Result): Use __aligned_buffer.
1089 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
1090 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
1091 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
1094 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1096 * include/bits/forward_list.h: Only include required headers.
1097 (forward_list::reference): Define directly, not using __alloc_traits.
1098 (forward_list::const_reference): Likewise.
1100 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
1102 * include/std/functional (_Derives_from_unary_function): Remove.
1103 (_Derives_from_binary_function): Remove.
1104 * include/std/type_traits (__sfinae_types): Remove.
1105 (__is_assignable_helper): Adapt.
1106 (__is_convertible_helper): Adapt.
1107 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
1108 Remove several explicit instantiations of integral_constant.
1109 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
1110 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1111 Adapt dg-error line number.
1112 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1114 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1115 * testsuite/20_util/bind/ref_neg.cc: Likewise.
1117 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1120 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
1121 get_terminate() accessors.
1122 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
1123 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
1125 * libsupc++/new_handler.cc: Likewise.
1127 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
1129 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
1131 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1134 * include/debug/array (tuple_size, tuple_element): Do not declare.
1135 * include/profile/array: Likewise.
1136 * testsuite/23_containers/array/tuple_interface/
1137 tuple_element_debug_neg.cc: Adjust dg-error line number.
1139 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
1141 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
1142 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
1144 (set_terminate(terminate_handler)): Set atomically.
1145 (set_unexpected(terminate_handler)): Likewise.
1146 * libsupc++/new (get_new_handler()): Declare.
1147 * libsupc++/new_handler.cc (get_new_handler()): Define.
1148 (set_new_handler(new_handler)): Set atomically.
1149 (__new_handler): Use internal linkage.
1150 * libsupc++/new_op.cc (operator new): Use get_new_handler().
1151 * libsupc++/new_opnt.cc (operator new): Likewise.
1152 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
1153 * configure: Regenerate.
1154 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
1155 * libsupc++/Makefile.in: Regenerate.
1156 * config/abi/pre/gnu.ver: Add new exports.
1157 * doc/xml/manual/status_cxx2011.xml: Update.
1158 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
1160 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
1161 * testsuite/18_support/new_handler.cc: New.
1162 * testsuite/18_support/terminate_handler.cc: New.
1163 * testsuite/18_support/unexpected_handler.cc: New.
1165 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1167 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
1168 defer to general documentation on contributing to GCC.
1169 * doc/html/*: Regenerate.
1171 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
1173 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
1175 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
1178 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
1180 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
1182 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
1184 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
1186 * doc/xml/manual/policy_data_structures: Remove direct link to
1187 IBM Haifa Research Labs.
1189 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
1190 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
1192 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
1195 * doc/xml/manual/shared_ptr.xml: Use canonical address for
1198 2013-03-27 Kai Tietz <ktietz@redhat.com>
1200 * crossconfig.m4: Add support for cygwin x64 target.
1201 * configure: Regenerated.
1203 2013-03-25 Kai Tietz <ktietz@redhat.com>
1205 * testsuite/18_support/50594.cc: For mingw-targets use only static
1207 * testsuite/19_diagnostics/error_category/operators/equal.cc
1208 * testsuite/19_diagnostics/error_code/cons/1.cc
1209 * testsuite/19_diagnostics/error_code/operators/bool.cc
1210 * testsuite/19_diagnostics/error_code/operators/equal.cc
1211 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
1212 * testsuite/19_diagnostics/error_condition/cons/1.cc
1213 * testsuite/19_diagnostics/error_condition/operators/bool.cc
1214 * testsuite/19_diagnostics/error_condition/operators/equal.cc
1215 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
1216 * testsuite/23_containers/set/requirements/exception/basic.cc
1217 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
1218 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
1220 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
1223 * include/ext/debug_allocator.h (debug_allocator): Add missing members
1224 to meet allocator requirements.
1225 * testsuite/ext/debug_allocator/56170.cc: New.
1227 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
1230 * include/std/chrono (__is_ratio): Uglify T.
1232 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
1234 PR libstdc++/55977 (partial, std::vector and std::deque bits)
1235 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
1236 _InputIterator, std::input_iterator_tag)): Use emplace_back.
1237 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
1238 _InputIterator, std::input_iterator_tag)): Likewise.
1239 * testsuite/23_containers/vector/cons/55977.cc: New.
1240 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
1241 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1242 Adjust dg-error line number.
1243 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1246 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
1249 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
1250 _InputIterator, __false_type)): Use emplace_back.
1251 * testsuite/23_containers/list/cons/55979.cc: New.
1252 * testsuite/23_containers/list/modifiers/1.h: Adjust.
1253 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1254 Adjust dg-error line number.
1256 2013-03-16 Jason Merrill <jason@redhat.com>
1259 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
1261 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1264 * libsupc++/exception_ptr.h (type_info): Declare.
1266 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1269 * include/std/mutex (lock_guard, unique_lock, lock): Define without
1270 depending on _GLIBCXX_HAS_GTHREADS.
1271 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
1273 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1276 * include/std/future (__future_base::_Result): Add result_type
1278 (__future_base::_S_allocate_result): Overload for std::allocator.
1279 (__future_base::_Task_setter): Use _Result::result_type instead of
1280 deducing the type from the task.
1281 (__future_base::_Task_state): Store allocator to allow shared state
1282 to be reset. Replace std::function with member of target object type
1284 (__future_base::_Task_state_base): New abstract base class.
1285 (__future_base::_Task_state_base::_M_run): New virtual function to
1286 invoke type-erased target object.
1287 (__future_base::_Task_state_base::_M_reset): New virtual function to
1288 create new shared_state using same target object and allocator.
1289 (__future_base::__create_task_state): Allocate a new _Task_state.
1290 (packaged_task::packaged_task): Use __create_task_state.
1291 (packaged_task::reset): Use _Task_state_base::_M_reset.
1292 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
1294 2013-03-15 Tom Tromey <tromey@redhat.com>
1296 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
1297 (PROBE2): New macro.
1298 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
1299 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
1300 * configure.ac: Check for sys/sdt.h.
1301 * configure, config.h.in: Rebuild.
1303 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1306 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
1307 allocator_traits instead of calling construct directly.
1308 * testsuite/23_containers/map/56613.cc: New.
1310 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
1312 * doc/html/*: Regenerate.
1314 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
1317 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
1318 * testsuite/20_util/is_fundamental/value.cc: Extend.
1319 * testsuite/20_util/is_compound/value.cc: Likewise.
1321 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
1323 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
1326 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
1328 * include/bits/memoryfwd.h: New. Centralize forward declarations.
1329 * include/bits/algorithmfwd.h: Consistent comments.
1330 * include/bits/localefwd.h: Same.
1331 * include/ext/vstring_fwd.h: Same.
1332 * include/parallel/algorithmfwd.h: Same.
1333 * include/parallel/numericfwd.h: Same.
1334 * include/std/iosfwd: Same.
1336 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
1338 * include/ext/alloc_traits.h: Remove allocator forward decl.
1339 * include/bits/stl_construct.h: Same.
1340 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
1341 forward decl. Consistent comments.
1343 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
1345 * include/Makefile.am (bits_headers): Add memoryfwd.h.
1346 * include/Makefile.in: Regenerate.
1349 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
1351 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
1352 Reset pointers after deallocation when memory can be reused.
1353 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
1354 elements to really challenge C++11 allocator integration.
1355 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
1356 * testsuite/23_containers/vector/allocator/copy_assign.cc:
1358 * testsuite/23_containers/vector/allocator/move_assign.cc:
1360 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
1361 swap vector back before checks on memory/personality mapping are
1363 * testsuite/23_containers/forward_list/allocator/minimal.cc:
1364 Insert element to really challenge C++11 allocator integration.
1365 * testsuite/23_containers/forward_list/allocator/copy.cc:
1367 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
1369 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1371 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
1372 and swap forward_list back before checks on memory/personality
1373 mapping are performed.
1375 2013-03-07 Jakub Jelinek <jakub@redhat.com>
1377 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1378 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1379 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1381 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1382 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1383 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1384 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1385 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1386 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1388 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1390 * scripts/extract_symvers.pl: Omit symbols bound to base
1392 * scripts/extract_symvers.in: Likewise.
1393 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1394 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1395 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1396 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1397 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1399 2013-03-04 Ulrich Drepper <drepper@gmail.com>
1401 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
1402 Optimize generation function by pulling computation of __r into the
1403 constructor for param_type. Also compare _M_mu in operator==.
1406 2013-03-02 Ulrich Drepper <drepper@gmail.com>
1408 Add triangular and von Mises distributions.
1409 * include/ext/random: Include <ext/cmath>.
1410 Add __gnu_cxx::triangular_distribution<> and
1411 __gnu_cxx::von_mises_distribution<> classes.
1412 * include/ext/random.tcc: Add out-of-line functions for
1413 __gnu_cxx::triangular_distribution<> and
1414 __gnu_cxx::von_mises_distribution<>.
1415 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
1416 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
1417 * testsuite/ext/triangular_distribution/operators/serialize.cc:
1419 * testsuite/ext/triangular_distribution/operators/equal.cc:
1421 * testsuite/ext/triangular_distribution/operators/inequal.cc:
1423 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
1425 * testsuite/ext/triangular_distribution/requirements/
1426 explicit_instantiation/1.cc: New file.
1427 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
1428 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
1429 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
1431 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
1432 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
1434 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
1436 * testsuite/ext/von_mises_distribution/requirements/
1437 explicit_instantiation/1.cc: New file.
1440 * include/Makefile.am (ext_headers): Add cmath.
1441 * include/Makefile.in: Regenerated.
1442 * include/ext/cmath: New file.
1444 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1446 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1447 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1448 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1449 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1450 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1452 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1455 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
1456 * testsuite/29_atomics/atomic/operators/56012.cc: New.
1459 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
1461 * testsuite/29_atomics/atomic/operators/56011.cc: New.
1463 2013-02-25 Jason Merrill <jason@redhat.com>
1465 * configure.ac: Check for __cxa_thread_atexit_impl.
1466 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
1468 * config.h.in, configure: Regenerate.
1470 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1472 * include/std/streambuf (basic_streambuf): Use injected class name
1473 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
1476 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1478 * doc/html/faq.html: Fix spelling.
1479 * doc/xml/faq.xml: Likewise.
1480 * include/bits/basic_ios.h: Likewise.
1481 * include/bits/regex.h: Likewise.
1482 * include/std/istream: Likewise.
1483 * include/std/streambuf: Likewise.
1485 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1487 * testsuite/23_containers/unordered_set/55043.cc: Add missing
1488 namespace qualification.
1489 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1491 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
1493 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
1494 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
1495 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
1496 * include/bits/stl_pair.h: Add to utilities group.
1497 * include/std/tuple: Same.
1498 * include/std/typeindex: Same.
1500 * include/bits/stringfwd.h: Fix markup.
1501 * include/std/limits: Same.
1502 * include/std/type_traits: Same.
1503 * include/tr1/memory: Same.
1504 * include/tr1/regex: Same.
1505 * scripts/run_doxygen: Comment.
1506 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
1508 2013-02-14 Jason Merrill <jason@redhat.com>
1510 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
1511 test if unsupported.
1513 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
1516 * include/std/complex (complex): Undefine.
1517 * include/c_compatibility/complex.h (complex): Only undefine if
1518 <complex> has been included.
1519 * testsuite/26_numerics/complex/56111.cc: New testcase.
1521 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
1523 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
1524 default constructor protected.
1525 * include/bits/hashtable.h: static assert that _Hash_code_base has
1526 a default constructor available through inheritance.
1528 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1530 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
1533 2013-02-12 Julian Brown <julian@codesourcery.com>
1535 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
1536 Don't expect dots after abbreviated weekday names for ru_RU for
1537 glibc versions >= 2.17.
1538 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
1541 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
1543 * include/bits/random.tcc (__transform): Remove.
1545 (discrete_distribution<>::param_type::_M_initialize): Adjust.
1546 (piecewise_constant_distribution<>::param_type::_M_initialize):
1548 (piecewise_linear_distribution<>::param_type::_M_initialize):
1551 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1553 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
1554 Use -fimplicit-templates.
1555 * src/c++11/Makefile.in: Regenerate.
1556 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
1557 std::lower_bound template.
1559 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1561 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
1562 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
1563 in C++11 mode and if available in the underlying C library.
1564 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
1565 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
1566 _GLIBCXX_HAVE_QUICK_EXIT.
1568 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
1570 * doc/html/*: Regenerate.
1572 2013-02-11 Jason Merrill <jason@redhat.com>
1574 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
1575 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
1576 * config.h.in, configure: Regenerate.
1577 * include/c_std/cstdlib: Add atexit and at_quick_exit.
1578 * include/c_global/cstdlib: Add atexit and at_quick_exit.
1579 * testsuite/18_support/quick_exit/quick_exit.cc: New.
1581 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
1585 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1588 * include/bits/basic_ios.h: Replace operator void*() const
1589 with explicit operator bool() const in C++11 and greater.
1590 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1592 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
1593 Jonathan Wakely <jwakely.gcc@gmail.com>
1595 * doc/xml/manual/containers.xml: Add section on unordered containers.
1596 * doc/xml/manual/using.xml: Fix incomplete sentence.
1598 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
1601 * include/bits/hashtable.h (__cache_default): Check if hash function
1603 * testsuite/23_containers/unordered_set/56267.cc: New.
1604 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1605 dg-error line number.
1606 * testsuite/23_containers/unordered_set/
1607 not_default_constructible_hash_neg.cc: Likewise.
1610 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
1612 * testsuite/23_containers/unordered_set/56278.cc: New.
1614 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
1616 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
1619 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
1622 * include/tr1/special_function_util.h: Remove spurious const
1623 from numeric arguments.
1624 * include/tr1/riemann_zeta.tcc: Likewise.
1625 * include/tr1/exp_integral.tcc: Likewise.
1626 * include/tr1/bessel_function.tcc: Likewise.
1627 * include/tr1/hypergeometric.tcc: Likewise.
1628 * include/tr1/modified_bessel_func.tcc: Likewise.
1629 * include/tr1/poly_laguerre.tcc: Likewise.
1630 * include/tr1/gamma.tcc: Likewise.
1631 * include/tr1/legendre_function.tcc: Likewise.
1632 * include/tr1/poly_hermite.tcc: Likewise.
1633 * include/tr1/ell_integral.tcc: Likewise.
1634 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
1635 If argument is zero return function value.
1636 * testsuite/tr1/5_numerical_facilities/special_functions/
1637 08_cyl_bessel_i/pr56216.cc: New.
1639 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
1641 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
1643 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
1646 * include/bits/basic_ios.h: Replace operator void*() const
1647 with explicit operator bool() const in C++11 and greater.
1648 * testsuite/27_io/basic_ios/pr56193.cc: New file.
1650 2013-02-04 Dodji Seketeli <dodji@redhat.com>
1652 Add missing explicit instantiation for std::lower_bound template
1653 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
1654 missing instantiation for std::lower_bound template.
1656 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
1658 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
1659 * include/bits/basic_string.h: Specialize previous to mark
1660 std::hash for string types as slow.
1661 * include/bits/hashtable.h (__cache_default): Replace is_integral
1662 with __is_fast_hash.
1663 * src/c++11/hash_c++0x.cc: Add type_traits include.
1664 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1665 Adapt dg-error line number.
1666 * testsuite/23_containers/unordered_set/
1667 not_default_constructible_hash_neg.cc: Likewise.
1669 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1670 Paolo Carlini <paolo.carlini@oracle.com>
1672 PR libstdc++/56202 (again)
1673 * include/bits/random.tcc (binomial_distribution<>::
1674 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
1677 * include/bits/random.h: Fix comment typo.
1679 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
1680 Paolo Carlini <paolo.carlini@oracle.com>
1683 * include/bits/random.tcc (binomial_distribution<>::
1684 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
1687 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1689 Update copyright years.
1690 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
1691 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
1692 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
1693 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
1694 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
1695 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
1696 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
1697 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
1698 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
1699 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
1700 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
1701 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
1702 testsuite/29_atomics/atomic/cons/assign_neg.cc,
1703 testsuite/29_atomics/atomic/cons/copy_neg.cc,
1704 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
1705 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
1706 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
1707 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
1708 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
1709 Update lines in dg error matches.
1711 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
1713 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
1715 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
1717 * include/bits/hashtable_policy.h
1718 (_Prime_rehash_policy::_M_next_bkt)
1719 (_Prime_rehash_policy::_M_need_rehash): Move definition...
1720 * src/c++11/hashtable_c++0x.cc: ... here.
1721 * src/shared/hashtable-aux.cc: Remove c++config.h include.
1722 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
1725 2013-01-29 Jason Merrill <jason@redhat.com>
1728 * config/abi/pre/gnu.ver: Don't export construction vtables.
1729 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1731 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1734 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
1735 to construct value_type explicitly before trying to extract the key.
1736 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
1738 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
1740 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
1741 _Hashtable_ebo_helper to embed functors into the local_iterator
1742 when necessary. Pass information about functors involved in hash
1744 * include/bits/hashtable.h (__cache_default): Do not cache for
1745 builtin integral types unless the hash functor is not noexcept
1746 qualified or is not default constructible. Adapt static assertions
1747 and local iterator instantiations.
1748 * include/debug/unordered_set
1749 (std::__debug::unordered_set<>::erase): Detect local iterators to
1750 invalidate using contained node rather than generating a dummy
1751 local_iterator instance.
1752 (std::__debug::unordered_multiset<>::erase): Likewise.
1753 * include/debug/unordered_map
1754 (std::__debug::unordered_map<>::erase): Likewise.
1755 (std::__debug::unordered_multimap<>::erase): Likewise.
1756 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
1757 std::tr1 and std versions of unordered_set regardless of any
1758 macro. Add test on default cache behavior.
1759 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
1760 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1762 * testsuite/23_containers/unordered_set/
1763 not_default_constructible_hash_neg.cc: New.
1764 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
1766 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
1769 * include/std/complex (pow(const complex<>&, int)): Avoid __n
1772 2013-01-22 Jakub Jelinek <jakub@redhat.com>
1774 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1775 Tightten scan-assembler-times regexps, add dg-additional-options for
1776 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
1779 2013-01-12 Andi Kleen <ak@linux.intel.com>
1780 Jonathan Wakely <jwakely.gcc@gmail.com>
1783 * include/bits/atomic_base.h (__memory_order_modifier): Add
1784 __memory_order_mask, __memory_order_modifier_mask,
1785 __memory_order_hle_acquire, __memory_order_hle_release.
1786 (operator|,operator&): Add.
1787 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
1788 (__cmpexch_failure_order): Add.
1789 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
1791 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
1794 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1797 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
1799 (__basic_future::_M_get_result()): Const qualify.
1800 (shared_future::get()): Likewise.
1801 * testsuite/30_threads/shared_future/members/get.cc: Use const
1804 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1806 PR libstdc++/55043 (again)
1807 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
1808 unless construction would be well-formed.
1809 (__allow_copy_cons, __check_copy_constructible): Define.
1810 * include/bits/unordered_map.h (__check_copy_constructible): Use as
1811 base class so copy constructor will be deleted if appropriate.
1812 (is_copy_constructible): Remove specialization.
1813 * include/bits/unordered_set.h: Likewise.
1814 * include/debug/unordered_map.h: Undo previous commit. Default copy
1815 and move constructors.
1816 * include/debug/unordered_set.h: Likewise.
1817 * include/profile/unordered_map.h: Undo previous commit.
1818 * include/profile/unordered_set.h: Likewise.
1819 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
1820 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
1821 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1822 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
1823 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
1824 cannot support incomplete types.
1825 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
1828 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1831 * include/std/unordered_map: Include alloc_traits.h
1832 * include/std/unordered_set: Likewise.
1833 * include/bits/alloc_traits.h: Define __is_copy_insertable.
1834 * include/bits/unordered_map.h: Use it.
1835 * include/bits/unordered_set.h: Likewise.
1836 * include/debug/unordered_map.h: Likewise.
1837 * include/debug/unordered_set.h: Likewise.
1838 * include/profile/unordered_map.h: Likewise.
1839 * include/profile/unordered_set.h: Likewise.
1840 * include/bits/hashtable.h: Fix comment typos.
1841 * testsuite/23_containers/unordered_map/55043.cc: New.
1842 * testsuite/23_containers/unordered_multimap/55043.cc: New.
1843 * testsuite/23_containers/unordered_multiset/55043.cc: New.
1844 * testsuite/23_containers/unordered_set/55043.cc: New.
1846 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
1848 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
1851 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1853 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
1855 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1858 * include/std/functional (_Mem_fn::operator()): Fix constraints to
1860 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
1861 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
1863 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1866 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
1868 * configure: Regenerate.
1870 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1873 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
1874 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
1878 * include/std/functional (bad_function_call::what()): Declare.
1879 * src/c++11/functional.cc (bad_function_call::what()): Define.
1880 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
1881 * testsuite/20_util/bad_function_call/what.cc: New.
1883 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1885 * include/bits/unordered_map.h: Fix typo in comments.
1886 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
1887 counts for unordered associative containers.
1889 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
1891 * doc/xml/manual/abi.xml: Update library and symbol versions.
1893 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
1895 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
1897 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
1900 Copyright (C) 2013 Free Software Foundation, Inc.
1902 Copying and distribution of this file, with or without modification,
1903 are permitted in any medium without royalty provided the copyright
1904 notice and this notice are preserved.