1 2015-07-05 François Dumont <fdumont@gcc.gnu.org>
3 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Do not
5 * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
8 2015-07-03 Jonathan Wakely <jwakely@redhat.com>
10 * doc/xml/manual/status_cxx2017.xml: Update status table.
11 * doc/html/manual/*: Regenerate.
13 2015-07-03 Ville Voutilainen <ville.voutilainen@gmail.com>
15 Implement std::experimental::fundamentals_v2::propagate_const.
16 * include/Makefile.am: Add propagate_const.
17 * include/Makefile.in: Regenerate.
18 * include/experimental/propagate_const: New.
19 * testsuite/experimental/propagate_const/assignment/copy.cc: Likewise.
20 * testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
21 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
23 * testsuite/experimental/propagate_const/cons/copy.cc: Likewise.
24 * testsuite/experimental/propagate_const/cons/default.cc: Likewise.
25 * testsuite/experimental/propagate_const/cons/move.cc: Likewise.
26 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
27 * testsuite/experimental/propagate_const/hash/1.cc: Likewise.
28 * testsuite/experimental/propagate_const/observers/1.cc: Likewise.
29 * testsuite/experimental/propagate_const/relops/1.cc: Likewise.
30 * testsuite/experimental/propagate_const/requirements1.cc: Likewise.
31 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
32 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
33 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
34 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
35 * testsuite/experimental/propagate_const/swap/1.cc: Likewise.
36 * testsuite/experimental/propagate_const/typedefs.cc: Likewise.
38 2015-07-02 Jonathan Wakely <jwakely@redhat.com>
40 * acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for
41 --with-default-libstdcxx-abi
42 * configure: Regenerate.
43 * doc/xml/manual/configure.xml: Document valid arguments.
45 2015-07-02 Uros Bizjak <ubizjak@gmail.com>
47 * libsupc++/guard.cc (__test_and_acquire): Use __p after __atomic_load
48 to avoid unused variable warning.
49 (__set_and_release): Use __p after __atomic_store to avoid unused
52 2015-07-01 Jonathan Wakely <jwakely@redhat.com>
54 * include/bits/alloc_traits.h (__alloctr_rebind): Remove.
55 (__allocator_traits_base): New base class.
56 (__alloc_rebind): Reimplement in terms of detection idiom.
57 (allocator_traits): Derive from __allocator_traits_base. Reimplement
58 nested types in terms of detection idiom. Simplify SFINAE constraints
59 on overloaded static member functions.
60 * include/bits/hashtable.h (_Hashtable): Use __alloc_rebind instead
62 * testsuite/20_util/scoped_allocator/propagation.cc: Define rebind.
63 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
66 * include/bits/ptr_traits.h (__ptrtr_elt_type, __ptrtr_diff_type,
67 __ptrtr_rebind, __ptrtr_not_void): Remove
68 (__get_first_arg, __replace_first_arg, __make_not_void): Define new
70 (__detected_or_): New detection trait.
71 (pointer_traits): Use new traits.
72 * testsuite/20_util/pointer_traits/pointer_to.cc: Add rebind member.
73 * testsuite/20_util/pointer_traits/requirements/
74 explicit_instantiation.cc: Use valid arguments to pointer_traits.
76 * doc/xml/manual/status_cxx2017.xml: Update status table.
77 * include/experimental/type_traits (void_t, is_detected,
78 is_detected_v, detected_t, detected_or, detected_or_t,
79 is_detected_exact, is_detected_exact_v, is_detected_convertible,
80 is_detected_convertible_v): Define.
81 * include/std/type_traits (__detector, __detected_or, __detected_or_t,
82 __detected_or_t_): Define.
83 * testsuite/experimental/type_traits/detection.cc: New.
85 2015-06-30 Jonathan Wakely <jwakely@redhat.com>
87 * doc/Makefile.am (stamp-pdf-doxygen): Grep for LaTeX errors in log.
88 * doc/Makefile.in: Regenerate.
90 * include/bits/stl_pair.h: Replace class keyword with typename.
92 2015-06-30 Ville Voutilainen <ville.voutilainen@gmail.com>
94 Implement N4387, "Improving pair and tuple", and LWG 2367.
96 * include/bits/stl_pair.h (_ConstructiblePair,
97 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
98 _ImplicitlyMoveConvertiblePair): New.
99 (pair()): Constrain it.
100 (pair(const _T1&, const _T2&), pair(const pair<_U1, _U2>&),
101 pair(_U1&&, const _T2&), pair(const _T1&, _U2&&), pair(_U1&&, _U2&&),
102 pair(pair<_U1, _U2>&&)): Make conditionally explicit.
103 * include/std/tuple (_TC, tuple::_TC2, tuple::TCC, tuple::TMC): New.
104 (tuple()): Constrain it.
105 (tuple(const _UElements&...), tuple(_UElements&&...),
106 tuple(const tuple<_UElements...>&), tuple(tuple<_UElements...>&&),
107 tuple(allocator_arg_t, const _Alloc&, const _UElements&...),
108 tuple(allocator_arg_t, const _Alloc&, _UElements&&...),
109 tuple(allocator_arg_t, const _Alloc&, const tuple<_UElements...>&),
110 tuple(allocator_arg_t, const _Alloc&, tuple<_UElements...>&&),
111 tuple(const pair<_U1, _U2>&), tuple(pair<_U1, _U2>&&),
112 tuple(allocator_arg_t, const _Alloc&, const pair<_U1, _U2>&),
113 tuple(allocator_arg_t, const _Alloc&, pair<_U1, _U2>&&)): Make
114 conditionally explicit.
115 * include/experimental/functional (__boyer_moore_array_base): Name
116 array type explicitly instead of using an empty braced-init-list.
117 * testsuite/20_util/pair/cons/explicit_construct.cc: New.
118 * testsuite/20_util/pair/piecewise.cc: Use piecewise_construct.
119 * testsuite/20_util/pair/requirements/dr2367.cc: New.
120 * testsuite/20_util/tuple/cons/explicit_construct.cc: New.
121 * testsuite/20_util/tuple/requirements/dr2367.cc: New.
123 2015-06-30 Jonathan Wakely <jwakely@redhat.com>
125 * configure: Regenerate.
127 2015-06-29 François Dumont <fdumont@gcc.gnu.org>
129 * include/bits/stl_iterator_base_types.h (_Iter_base): Limit definition
131 * include/debug/functions.h
132 (__gnu_debug::__valid_range, __gnu_debug::__base): Move...
133 * include/debug/safe_iterator.h
134 (__gnu_debug::_Sequence_traits): New.
135 (__gnu_debug::__get_distance_from_begin): New.
136 (__gnu_debug::__get_distance_to_end): New.
137 (__gnu_debug::_Safe_iterator<>::_M_valid_range): Expose iterator range
138 distance information. Add optional check_dereferenceable parameter,
140 (__gnu_debug::_Distance_precision, __gnu_debug::__get_distance): Move
141 default definition...
142 (__gnu_debug::__get_distance): New overload for _Safe_iterator.
143 (__gnu_debug::__unsafe): Likewise.
144 * include/debug/helper_functions.h: ...here. New.
145 (__gnu_debug::__unsafe): New helper function to remove safe iterator
147 * include/debug/stl_iterator.h: New. Include latter.
148 * include/bits/stl_iterator.h: Include latter in debug mode.
149 * include/debug/stl_iterator.tcc: Adapt.
150 * include/debug/safe_local_iterator.h (__gnu_debug::__get_distance): Add
151 overload for _Safe_local_iterator.
152 (__gnu_debug::__unsafe): Likewise.
153 * include/debug/safe_local_iterator.tcc: Adapt.
154 * include/debug/macros.h (__glibcxx_check_valid_range2): New.
155 (__glibcxx_check_insert_range): Add _Dist parameter.
156 (__glibcxx_check_insert_range_after): Likewise.
157 (__glibcxx_check_string, __glibcxx_check_string_len): Implement using
158 _GLIBCXX_DEBUG_PEDASSERT.
159 * include/debug/deque (deque<>::assign): Remove iterator debug layer
161 (deque<>::insert): Likewise.
162 * include/debug/forward_list (__glibcxx_check_valid_fl_range): New.
163 (forward_list<>::splice_after): Use latter.
164 (forward_list<>::assign): Remove iterator debug layer when possible.
165 (forward_list<>::insert_after): Likewise.
166 (__gnu_debug::_Sequence_traits<>): Partial specialization.
167 * include/debug/list (list<>::assign): Remove iterator debug layer when
169 (list<>::insert): Likewise.
170 [__gnu_debug::_Sequence_traits<>]: Partial specialization pre C++11 ABI.
171 * include/debug/map.h (map<>::insert): Remove iterator debug layer when
173 * include/debug/multimap.h (multimap<>::insert): Likewise.
174 * include/debug/set.h (set<>::insert): Likewise.
175 * include/debug/multiset.h (multiset<>::insert): Likewise.
176 * include/debug/string (basic_string<>::append, basic_string<>::assign,
177 basic_string<>::insert, basic_string<>::replace): Likewise.
178 * include/debug/unordered_map
179 (unordered_map<>::insert, unordered_multimap<>::insert): Likewise.
180 * include/debug/unordered_set
181 (unordered_set<>::insert, unordered_multiset<>insert): Likewise.
182 * include/debug/vector
183 (vector<>::assign, vector<>::insert): Likewise.
184 * include/Makefile.am: Add new debug headers.
185 * include/Makefile.in: Regenerate.
187 2015-06-26 Jonathan Wakely <jwakely@redhat.com>
189 * doc/xml/manual/intro.xml: Document LWG 2108 status.
190 * include/bits/alloc_traits.h (allocator_traits::is_always_equal):
192 * include/bits/allocator.h (allocator::is_always_equal): Likewise.
193 * include/bits/forward_list.h
194 (forward_list::operator=(forward_list&&)): Use __bool_constant.
195 (forward_list::swap(forward_list&)): Add noexcept.
196 * include/bits/hashtable.h (_Hashtable::operator=(_Hashtable&&)):
198 (_Hashtable::swap(_Hashtable&)): Likewise.
199 * include/bits/stl_deque.h (_Deque_base::_Deque_base(_Deque_base&&)):
200 Use _Alloc_traits::is_always_equal.
201 (deque::operator=(deque&&)): Likewise.
202 (deque::_M_move_assign1(deque&&, false_type)): Add comment and use
204 (swap(deque&, deque&)): Add noexcept.
205 * include/bits/stl_list.h (list::operator=(list&&)): Use
207 (swap(list&, list&)): Add noexcept.
208 * include/bits/stl_map.h (map::swap(map&)): Include _Compare in
210 (swap(map&, map&)): Add noexcept.
211 * include/bits/stl_multimap.h (multimap::swap(multimap&)): Include
212 _Compare in noexcept.
213 (swap(multimap&, multimap&)): Add noexcept.
214 * include/bits/stl_multiset.h (multiset::swap(multiset&)): Include
215 _Compare in noexcept.
216 (swap(multiset&, multiset&)): Add noexcept.
217 * include/bits/stl_set.h (set::swap(set&)): Include _Compare in
219 (swap(set&, set&)): Add noexcept.
220 * include/bits/stl_tree.h (_Rb_tree::operator=(_Rb_tree&&)): Include
221 _Compare in noexcept.
222 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_alloc_type&&)): Use
224 * include/bits/stl_vector.h (vector::operator=(vector&&)): Use
226 (swap(vector&, vector&)): Add noexcept.
227 * include/bits/unordered_map.h (swap(unordered_map&, unordered_map&),
228 swap(unordered_multimap& unordered_multimap&)): Add noexcept.
229 * include/bits/unordered_set.h (swap(unordered_set&, unordered_set&),
230 swap(unordered_multiset& unordered_multiset&)): Add noexcept.
231 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
233 (__alloc_traits::_S_always_equal()): Use is_always_equal instead of
234 __allocator_always_compares_equal.
235 * include/ext/array_allocator.h (array_allocator::is_always_equal):
237 * include/std/scoped_allocator (__any_of, __propagate_on_copy,
238 __propagate_on_move, __propagate_on_swap): Remove.
239 (scoped_allocator_adaptor::propagate_on_container_copy_assignment,
240 scoped_allocator_adaptor::propagate_on_container_move_assignment,
241 scoped_allocator_adaptor::propagate_on_container_swap): Define with
242 __and_ instead of __any_of.
243 (scoped_allocator_adaptor::is_always_equal): Define.
244 * testsuite/20_util/allocator_traits/members/is_always_equal.cc: New.
245 * testsuite/20_util/scoped_allocator/propagation.cc: Make traits
246 derive from true_type or false_type.
247 * testsuite/23_containers/deque/allocator/move_assign-2.cc: Add
248 is_always_equal member and remove the trait specialization.
249 * testsuite/23_containers/vector/52591.cc: Likewise.
250 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
251 Adjust dg-error line number.
252 * testsuite/23_containers/deque/requirements/dr438/
253 constructor_1_neg.cc: Likewise.
254 * testsuite/23_containers/deque/requirements/dr438/
255 constructor_2_neg.cc: Likewise.
256 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
258 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
260 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
262 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
264 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
266 * testsuite/23_containers/vector/requirements/dr438/
267 constructor_1_neg.cc: Likewise.
268 * testsuite/23_containers/vector/requirements/dr438/
269 constructor_2_neg.cc: Likewise.
270 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
273 * include/bits/stl_bvector.h (vector<bool>::vector()): Add noexcept.
274 * include/bits/stl_map.h (map::map()): Likewise.
275 * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
276 * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
277 * include/bits/stl_set.h (set::set()): Likewise.
279 2015-06-25 Jonathan Wakely <jwakely@redhat.com>
281 * include/bits/locale_conv.h (__do_str_codecvt): Set __count.
283 2015-06-24 François Dumont <fdumont@gcc.gnu.org>
285 * include/bits/basic_string.h (basic_string<>::front()): Add !empty
287 (basic_string<>::back()): Likewise.
288 (basic_string<>::pop_back()): Likewise.
290 2015-06-24 Paolo Carlini <paolo.carlini@oracle.com>
292 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
293 dg-error line numbers.
294 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
297 2015-06-23 François Dumont <fdumont@gcc.gnu.org>
299 * include/debug/array: Include <array>. Add version namespace when
300 specializing tuple interface to array. Add specialization for
301 __is_tuple_like_impl.
302 * include/profile/array: Likewise.
303 * include/std/array: Include <utility>. Add specialization for
304 __is_tuple_like_impl.
306 (__is_tuple_like_impl<>, __is_tuple_like_impl<pair>): Move...
307 * include/std/utility: ... here. Include <type_traits>.
308 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
309 dg-error line number.
310 * testsuite/23_containers/array/tuple_interface/
311 tuple_element_debug_neg.cc: Likewise.
313 2015-06-22 Jonathan Wakely <jwakely@redhat.com>
315 * testsuite/26_numerics/complex/value_operations/1.cc: Use
316 non-negative rho argument.
318 * include/debug/list (__gnu_debug::list): Use allocator-aware
319 _Safe_container base.
320 * include/debug/string (__gnu_debug::basic_string): Use
321 allocator-aware _Safe_container base for cxx11 ABI.
323 * include/bits/locale_conv.h (__do_str_codecvt): Handle empty range.
324 (wstring_convert): Move into __cxx11 namespace.
325 (wbuffer_convert(streambuf*, _Codecvt*, state_type)): Fix exception
329 * include/bits/stl_uninitialized.h
330 (__uninitialized_copy::__uninit_copy): Cast expression to void.
332 2015-06-17 Jonathan Wakely <jwakely@redhat.com>
335 * include/bits/list.tcc (_List_base::_M_clear()): Use allocator traits.
336 (list::list(const list&)): Use allocator propagation trait. Use
337 _M_assign_dispatch to copy elements.
338 * include/bits/stl_list.h (_List_node): Use __aligned_membuf in C++11.
339 (_List_node::_M_valptr()): Add accessor for stored value.
340 (_List_iterator, _List_const_iterator, _List_base): Use _M_valptr().
341 (_List_base, list): Use allocator traits.
342 (_List_base::_M_get_Tp_allocator, _List_base::get_allocator): Remove.
343 (_List_base::_M_move_nodes): New function.
344 (_List_base(_List_base&&)): Use _M_move_nodes.
345 (_List_base(_List_base&&, _Node_alloc_type&&)): New constructor.
346 (list::_M_create_node, list::_M_erase, list::max_size): Use allocator
348 (list(size_type)): Add allocator parameter.
349 (list(const list&)): Use allocator propagation trait.
350 (list(const list&, const allocator_type&)): New constructor.
351 (list(list&&, const allocator_type&)): Likewise.
352 (list::operator=(list&&), list::swap(list&)): Use allocator
354 (list::_M_move_assign): New functions.
355 * include/debug/list: Add allocator-extended constructors.
356 * include/profile/list: Likewise.
357 * python/libstdcxx/v6/printers.py (get_value_from_list_node): New
358 function to get value from _List_node.
359 (StdListPrinter): Use get_value_from_list_node.
360 * testsuite/23_containers/list/allocator/copy.cc: New.
361 * testsuite/23_containers/list/allocator/copy_assign.cc: New.
362 * testsuite/23_containers/list/allocator/minimal.cc: New.
363 * testsuite/23_containers/list/allocator/move.cc: New.
364 * testsuite/23_containers/list/allocator/move_assign.cc: New.
365 * testsuite/23_containers/list/allocator/noexcept.cc: New.
366 * testsuite/23_containers/list/allocator/swap.cc: New.
367 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
368 Adjust dg-prune-output line number.
369 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
371 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
374 * include/bits/forward_list.h
375 (_Fwd_list_base(const _Node_alloc_type&)): Change parameter to
377 (_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Likewise.
378 (forward_list(const _Alloc&)): Split default constructor out to
380 (forward_list(forward_list&&, const _Alloc&)): Move elements if base
382 (forward_list::_M_move_assign(forward_list&&, true_type)): Replace
383 swap call with two assignments.
384 * include/bits/forward_list.tcc
385 (_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Don't
386 move elements when allocators are not equal.
387 * include/debug/forward_list (forward_list(const allocator_type&)):
388 Split default constructor out to separate function.
389 * include/profile/forward_list (forward_list(const _Alloc&)):
392 * include/bits/forward_list.h (forward_list::_M_get_Node_allocator):
393 Remove unnecessary uses of operator& and static_cast.
394 * include/bits/forward_list.tcc
395 (forward_list::operator=(const forward_list&)): Use __addressof
396 instead of operator&.
397 (forward_list::remove(const _Tp&), forward_list::remove(_Pred)):
398 Remove invalid static_casts.
399 * include/debug/forward_list: Use __addressof instead of operator&.
400 * testsuite/23_containers/forward_list/modifiers/addressof.cc: New.
402 * include/ext/alloc_traits.h (__alloc_traits::_S_nothrow_swap()): Use
403 __is_nothrow_swappable.
405 2015-06-16 Jonathan Wakely <jwakely@redhat.com>
407 * include/bits/allocated_ptr.h (__allocated_ptr): Use __addressof.
409 * include/bits/list.tcc (list::operator=(const list&), list::merge):
410 Use __addressof instead of operator&.
411 (list::sort): Use array-to-pointer decay instead of operator&.
412 * include/bits/stl_list.h (list::splice): Use __addressof instead of
414 * include/debug/formatter.h (_Error_formatter::_Parameter::_Parameter):
416 * include/debug/functions.h (__check_singular): Likewise.
417 * include/debug/list (list::splice, list::merge): Likewise.
418 * testsuite/23_containers/list/modifiers/addressof.cc: New.
421 * src/c++11/thread.cc (thread::_M_make_thread): Replace shared_ptr
424 2015-06-12 Jonathan Wakely <jwakely@redhat.com>
426 * include/precompiled/stdc++.h: Include <codecvt> and <shared_mutex>.
429 * src/c++11/codecvt.cc (codecvt_utf16_base<char32_t>::do_max_length):
432 2015-06-12 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
436 * config/cpu/alpha/atomic_word.h: Remove.
437 * config/cpu/ia64/atomic_word.h: Remove.
438 * config/cpu/powerpc/atomic_word.h: Remove.
439 * config/os/aix/atomic_word.h: Remove.
440 * configure.host (atomic_word_dir) [ia64, aix*, powerpc, alpha]:
441 Use generic definition.
443 2015-06-12 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
447 * * config/cpu/generic/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER): Define
448 (_GLIBCXX_WRITE_MEM_BARRIER): Likewise
449 * include/bits/shared_ptr_base.h: Use ACQ_REL barrier.
450 * include/ext/atomicity.h: Likewise.
451 * include/tr1/shared_ptr.h: Likewise.
452 * libsupc++/guard.cc (__test_and_acquire): Rewrite with atomics.
454 (__set_and_release): Likewise.
455 * testsuite/20_util/shared_ptr/cons/43820_neg.cc (test01): Adjust for
457 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
458 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
461 2015-06-12 Jonathan Wakely <jwakely@redhat.com>
463 * include/std/tuple (__is_tuple_like_impl): Disambiguate array in
464 debug and profile modes.
465 * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Adjust tests
466 for swap in C++11 and later.
468 2015-06-09 Jonathan Wakely <jwakely@redhat.com>
471 * config/abi/pre/gnu.ver: Export codecvt_byname and codecvt symbols
474 2015-06-08 Jonathan Wakely <jwakely@redhat.com>
477 * testsuite/22_locale/conversions/string/66441.cc: New.
478 * include/bits/locale_conv.h (__do_str_codecvt): Reserve enough space
479 in the output string for BOM and complete result.
482 * src/c++11/codecvt.cc (write_utf16_code_point): Use adjust_byte_order
483 for single UTF-16 units.
484 * testsuite/22_locale/codecvt/codecvt_utf16/66417.cc: New.
486 2015-06-07 François Dumont <fdumont@gcc.gnu.org>
488 * include/bits/stl_tree.h (_Rb_tree<>::__is_transparent<>): Move to
489 outer scope and rename to ...
490 (std::__hash_is_transparent<>): ... this.
491 * include/debug/stl_map.h (map::find<>,
492 map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
493 member function templates to perform heterogeneous lookup.
494 * include/debug/stl_multimap.h (multimap::find<>,
495 multimap::lower_bound<>, multimap::upper_bound<>,
496 multimap::equal_range<>): Likewise.
497 * include/debug/stl_multiset.h (multiset::find<>,
498 multiset::lower_bound<>, multiset::upper_bound<>,
499 multiset::equal_range<>): Likewise.
500 * include/debug/stl_set.h (set::find<>,
501 set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
502 * include/profile/stl_map.h (map::find<>, map::count<>,
503 map::lower_bound<>, map::upper_bound<>, map::equal_range<>): Likewise.
504 * include/profile/stl_multimap.h (multimap::find<>, multimap::count<>,
505 multimap::lower_bound<>, multimap::upper_bound<>,
506 multimap::equal_range<>): Likewise.
507 * include/profile/stl_multiset.h (multiset::find<>, multiset::count<>,
508 multiset::lower_bound<>, multiset::upper_bound<>,
509 multiset::equal_range<>): Likewise.
510 * include/profile/stl_set.h (set::find<>, set::count<>,
511 set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
512 * testsuite/23_containers/map/operations/1.cc: Check const variants.
513 * testsuite/23_containers/multimap/operations/1.cc: Likewise.
514 * testsuite/23_containers/multiset/operations/1.cc: Likewise.
515 * testsuite/23_containers/set/operations/1.cc: Likewise.
517 2015-06-05 Jonathan Wakely <jwakely@redhat.com>
519 * doc/xml/manual/status_cxx2017.xml: Update status tables.
520 * doc/html/manual/*: Regenerate.
521 * include/std/type_traits (bool_constant): Define.
522 * testsuite/20_util/bool_constant/requirements.cc: New.
523 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
524 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
526 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
529 * include/std/shared_mutex (__shared_mutex_pthread,
530 __shared_mutex_cv): New helper types implementing the shared mutex
532 (shared_mutex): New type for C++17.
533 (shared_timed_mutex): Derive from one of the new helper types.
534 * testsuite/30_threads/shared_mutex/cons/1.cc: New.
535 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
536 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
537 * testsuite/30_threads/shared_mutex/requirements/standard_layout.cc:
539 * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
540 * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
542 2015-06-05 Ville Voutilainen <ville.voutilainen@gmail.com>
544 Add __is_nothrow_swappable and take it into use.
545 * include/bits/algorithmfwd.h (swap): Only declare for C++98 mode.
546 * include/bits/move.h (swap): Add constraints in C++11 and later.
547 * include/bits/stl_pair.h (swap): Use __is_nothrow_swappable
548 for the free swap function for pair.
549 * include/bits/stl_queue.h (swap): Use __is_nothrow_swappable
550 for the free swap functions for queue and priority_queue.
551 * include/bits/stl_stack.h (swap): Use __is_nothrow_swappable
552 for the free swap function for stack.
553 * include/debug/array (swap): Use __is_nothrow_swappable
554 for the free swap function for array.
555 * include/profile/array (swap): Likewise.
556 * include/std/array (swap): Likewise.
557 * include/std/tuple (_Tuple_impl::_M_swap): Use __is_nothrow_swappable.
558 * include/std/type_traits (__is_swappable_impl::__is_swappable,
559 __is_nothrow_swappable_impl, __is_nothrow_swappable): New.
560 * testsuite/20_util/is_nothrow_swappable/requirements/
561 explicit_instantiation.cc: New.
562 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
564 * testsuite/20_util/is_nothrow_swappable/value.cc: New.
566 2015-06-03 François Dumont fdumont@gcc.gnu.org>
568 * testsuite/23_containers/list/61347.cc: Add dg-require-normal-mode.
570 2015-06-02 Jonathan Wakely <jwakely@redhat.com>
572 * doc/xml/manual/abi.xml: Document versioning for 5.1.0 release.
573 * doc/html/manual/*: Regenerate.
575 * doc/html/ext/lwg-active.html: Update to R93.
576 * doc/html/ext/lwg-closed.html: Likewise.
577 * doc/html/ext/lwg-defects.html: Likewise.
578 * doc/html/manual/*: Regenerate.
579 * doc/xml/manual/intro.xml: Document status of several DRs.
581 2015-06-02 Renlin Li <renlin.li@arm.com>
583 * testsuite/27_io/fpos/14775.cc: Add _GLIBCXX_HAVE_LIMIT_FSIZE check.
585 2015-06-01 Jonathan Wakely <jwakely@redhat.com>
587 * testsuite/lib/libstdc++.exp (libstdc++_init): Unset LANGUAGE
588 environment variable.
590 2015-05-31 Jonathan Wakely <jwakely@redhat.com>
593 * include/bits/stl_algobase.h (__fill_a): Check length before calling
596 2015-05-30 Jonathan Wakely <jwakely@redhat.com>
598 * include/bits/stl_algobase.h (__equal<true>::equal): Check length
599 instead of checking for null pointers.
600 (__lexicographical_compare<true>::__lc): Only check shorter length.
602 2015-05-29 François Dumont fdumont@gcc.gnu.org>
604 * include/debug/debug.h (_GLIBCXX_DEBUG_ASSERT,
605 _GLIBCXX_DEBUG_PEDASSERT, _GLIBCXX_DEBUG_ONLY): Move definition...
606 * include/debug/assertions.h: ...here, new.
607 * include/debug/formatter.h
608 (_Error_formatter::_Is_iterator_value_type): New.
609 (_Error_formatter::_Is_instance): New.
610 (_Error_formatter::_Parameter): Make public and not friend anymore.
611 (_Error_formatter::_Parameter::__instance): New _M_kind enum entry.
612 (_Error_formatter::_Parameter::__iterator_value_type): New _M_kind enum
614 (_Error_formatter::_Parameter::_Type): New.
615 (_Error_formatter::_Parameter::_Instance): New, inherit from
617 (union _Error_formatter::_Parameter::_M_variant): Reorganize.
618 (_Parameter(_Iterator const&, const char*, _Is_iterator)): Make all
619 overloads take iterator through a const reference.
620 (_Parameter(const _Iterator&, const char*, _Is_iterator_value_type)):
622 (_Parameter(const _Type&, const char*, _Is_instance)): New.
623 (_Error_formatter::_M_print_type): Delete.
624 (_Error_formatter::_M_iterator_value_type): New.
625 (_Error_formatter::_M_instance): New.
626 * include/Makefile.am: Add new above debug file.
627 * include/Makefile.in: Regenerate.
628 * include/debug/functions.h
629 (__check_dereferenceable(const _Safe_iterator<>&),
630 __valid_range(const _Safe_iterator<>&),
631 __is_safe_random_iterator<_Safe_iterator<>>): Move...
632 * include/debug/safe_iterator.h: ... here.
633 Replace debug.h include with assertions.h.
634 (__check_singular_aux): Move...
635 * include/debug/safe_base.h: ... here.
636 * include/debug/functions.h
637 (__check_dereferenceable(const _Safe_local_iterator<>&),
638 __valid_range(const _Safe_local_iterator<>&): Move...
639 * include/debug/safe_local_iterator.h: ...here.
640 * include/debug/safe_sequence.h: Replace debug.h with assertions.h.
641 Remove _Safe_iterator declaration.
642 * include/debug/safe_unordered_container.h: Replace debug.h with
644 * include/debug/array: Replace safe_sequence.h include with
645 formatter.h and macros.h.
646 * include/debug/deque: Include functions.tcc.
647 * include/debug/forward_list: Likewise.
648 * include/debug/list: Likewise.
649 * include/debug/string: Likewise.
650 * include/debug/vector: Likewise.
651 * include/bits/unique_ptr.h: Replace debug.h include with new
653 * include/bits/stl_iterator_base_funcs.h: Likewise.
654 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc:
655 Adjust dg-error line number.
656 * testsuite/23_containers/array/tuple_interface/
657 tuple_element_debug_neg.cc: Likewise.
658 * src/c++11/debug.cc: Adapt.
660 2015-05-29 Jonathan Wakely <jwakely@redhat.com>
662 * doc/xml/manual/status_cxx2017.xml: Fix duplicate ID attribute.
663 * doc/html/manual/*: Regenerate.
665 * include/std/future (__async_result_of): New alias template.
666 (async): Use __async_result_of to pass decayed types to result_of.
667 * testsuite/30_threads/async/lwg2021.cc: New.
668 * doc/xml/manual/intro.xml: Document LWG 2021 status.
671 * include/bits/stl_algobase.h (__equal<true>::equal): Do not call
672 memcmp with null pointers.
673 (__lexicographical_compare<true>::__lc): Do not call memcmp for empty
676 2015-05-28 Jonathan Wakely <jwakely@redhat.com>
679 * include/profile/array (array::data): Use _S_ptr.
680 * include/debug/array (array::data): Likewise.
683 * include/std/array (__array_traits::_S_ptr): New function.
684 (array::data): Use _S_ptr to avoid creating invalid reference.
685 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
686 dg-error line numbers.
687 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
690 2015-05-27 Jonathan Wakely <jwakely@redhat.com>
692 * include/bits/stl_tree.h (_Rb_tree::_M_end()): Return _Base_ptr
693 instead of downcasting.
694 (_Rb_tree::_M_copy): Change second parameter to _Base_ptr.
695 (_Rb_tree::_M_lower_bound, _Rb_tree:_M_upper_bound): Likewise.
696 (_Rb_tree::_S_iter): Remove.
697 (_Rb_tree::_S_lower_bound_tr, _Rb_tree::_S_upper_bound_tr): Remove.
698 (_Rb_tree::_M_find_tr(const _Kt&) const): Call _M_lower_bound_tr
699 instead of _S_lower_bound_tr
700 (_Rb_tree::_M_find_tr(const _Kt&)): Call const overload.
701 (_Rb_tree::_M_lower_bound_tr(const _Kt&) const): Do the search here
702 instead of calling _S_lower_bound_tr.
703 (_Rb_tree::_M_lower_bound_tr(const _Kt&)): Call const overload.
704 (_Rb_tree::_M_upper_bound_tr(const _Kt&) const): Do the search here
705 instead of calling _S_upper_bound_tr.
706 (_Rb_tree::_M_upper_bound_tr(const _Kt&)): Call const overload.
707 (_Rb_tree::_M_equal_range_tr(const _Kt&)): Likewise.
708 (_Rb_tree::equal_range): Use _Base_ptr for end pointer.
709 (_Rb_tree::_M_get_insert_unique_pos): Likewise.
710 (_Rb_tree::_M_get_insert_equal_pos): Likewise.
711 (_Rb_tree::_M_insert_equal_lower_node): Likewise.
712 (_Rb_tree::_M_insert_unique, _Rb_tree::_M_emplace_unique,
713 _Rb_tree::_M_emplace_hint_unique): Remove static_cast.
716 * include/bits/stl_tree.h (_Rb_tree_node): Use __aligned_membuf.
717 (_Rb_tree_iterator, _Rb_tree_const_iterator): Support construction
719 (_Rb_tree_const_iterator::_M_const_cast): Remove static_cast.
720 (_Rb_tree::begin, _Rb_tree::end): Remove static_cast.
721 * include/ext/aligned_buffer.h (__aligned_membuf): New type using
722 alignment of _Tp as a member subobject, not as a complete object.
723 * python/libstdcxx/v6/printers.py (StdRbtreeIteratorPrinter): Lookup
724 _Link_type manually as it might not be in the debug info.
726 2015-05-26 Doug Evans <dje@google.com>
728 * python/libstdcxx/v6/xmethods.py (UniquePtrMethodsMatcher): Add
730 * testsuite/libstdc++-xmethods/unique_ptr.cc: Add tests for
733 2015-05-26 Jonathan Wakely <jwakely@redhat.com>
735 * include/bits/locale_conv.h: Fix copyright years.
736 * include/bits/quoted_string.h: Likewise.
737 * src/filesystem/Makefile.am: Likewise.
738 * testsuite/22_locale/conversions/buffer/1.cc: Likewise.
739 * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc:
741 * testsuite/22_locale/conversions/string/1.cc: Likewise.
742 * testsuite/22_locale/conversions/string/2.cc: Likewise.
743 * testsuite/22_locale/conversions/string/3.cc: Likewise.
744 * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
746 * testsuite/22_locale/conversions/string/requirements/typedefs.cc:
748 * testsuite/util/testsuite_fs.h: Likewise.
750 2015-05-23 François Dumont fdumont@gcc.gnu.org>
753 * include/debug/functions.h (__check_sorted_aux): Cast expression to
756 2015-05-21 David Edelsohn <dje.gcc@gmail.com>
759 * config/cpu/powerpc/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER):
760 Don't use isync. Use lwsync if available.
761 * configure.host (atomic_word_dir) [aix[56789]*]: Delete to use
762 powerpc cpu definition.
764 2015-05-21 Jason Merrill <jason@redhat.com>
766 * libsupc++/del_opv.cc: Suppress -Wsized-deallocation.
767 * libsupc++/del_op.cc: Likewise.
769 2015-05-20 François Dumont fdumont@gcc.gnu.org>
771 * include/debug/formatter.h (_GLIBCXX_TYPEID): New macro to simplify
773 (_Error_formatter::_M_print_type): New.
775 (_Error_formatter::_Parameter::_M_print_field): Use latter.
776 (_Error_formatter::_M_print_type): Implement latter using
777 __cxaabiv1::__cxa_demangle to print demangled type name.
779 * include/bits/cpp_type_traits.h
780 (std::move_iterator): Delete declaration.
781 (std::__is_move_iterator<move_iterator>): Move partial specialization...
782 * include/bits/stl_iterator.h: ... here.
783 (std::__miter_base): Overloads for std::reverse_iterator and
785 * include/bits/stl_algobase.h (std::__miter_base): Provide default
788 2015-05-20 Jonathan Wakely <jwakely@redhat.com>
790 * testsuite/util/testsuite_fs.h (nonexistent_path): Don't use tempnam.
793 * include/bits/stl_iterator.h (__make_move_if_noexcept_iterator): Add
794 overload for pointers.
795 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
796 808590.cc: Add -std=gnu++03 switch.
797 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
798 808590-cxx11.cc: Copy of 808590.cc to test with -std=gnu++11.
799 * testsuite/23_containers/vector/modifiers/push_back/
800 strong_guarantee.cc: New.
802 2015-05-19 Jonathan Wakely <jwakely@redhat.com>
804 * include/bits/stl_list.h (_M_resize_pos(size_type&)): Declare.
805 (operator==(const list&, const list&)): If size() is O(1) compare
806 sizes before comparing each element.
807 * include/bits/list.tcc (list::_M_resize_pos(size_type&)): Define.
808 (list::resize): Use _M_resize_pos.
810 2015-05-19 François Dumont <fdumont@gcc.gnu.org>
812 * testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
814 * testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
815 * testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
816 * testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.
818 2015-05-17 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
820 * configure.host: Define cpu_defines_dir for ARM.
821 * config/cpu/arm/cpu_defines.h: New file.
823 2015-05-17 François Dumont <fdumont@gcc.gnu.org>
825 * include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
826 missing constructors.
827 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
829 * include/debug/unordered_map (unordered_map, unordered_multimap): Add
830 missing constructors.
831 * include/debug/unordered_set (unordered_set, unordered_multiset):
833 * include/profile/unordered_map (unordered_map, unordered_multimap): Add
834 missing constructors.
835 * include/profile/unordered_set (unordered_set, unordered_multiset):
838 2015-05-15 Jonathan Wakely <jwakely@redhat.com>
840 * src/filesystem/ops.cc (stat_type): Define alias for struct stat and
841 use throughout the file.
842 (make_file_type): New function.
843 (file_size(const path&, error_code&)): Report an error for anything
844 that isn't a regular file.
845 (status(const path&), symlink_status(const path&)): Do not throw for
846 file_type::not_found.
847 (temp_directory_path()): Check additional environment variables.
848 * testsuite/experimental/filesystem/operations/exists.cc: New.
849 * testsuite/experimental/filesystem/operations/file_size.cc: New.
850 * testsuite/experimental/filesystem/operations/status.cc: New.
851 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
854 2015-05-14 Nathan Myers <ncm@cantrip.org>
855 Jonathan Wakely <jwakely@redhat.com>
858 * include/std/unordered_map (unordered_map, unordered_multimap): Add
859 missing constructors.
860 * include/std/unordered_set (unordered_set, unordered_multiset):
862 * testsuite/23_containers/unordered_map/cons/66055.cc: New.
863 * testsuite/23_containers/unordered_multimap/cons/66055.cc: New.
864 * testsuite/23_containers/unordered_multiset/cons/66055.cc: New.
865 * testsuite/23_containers/unordered_set/cons/66055.cc: New.
867 2015-05-14 Jonathan Wakely <jwakely@redhat.com>
870 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmod and
872 * config.h.in: Regenerate.
873 * configure: Regenerate.
874 * src/filesystem/ops.cc (do_copy_file): Fix arguments to open(). Do
875 not return after copying contents. Use fchmod, fchmodat, and sendfile
877 (current_path, permissions, space): Use errno not return value.
880 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for struct
882 * config.h.in: Regenerate.
883 * configure: Regenerate.
884 * configure.ac (AC_STRUCT_DIRENT_D_TYPE): Remove.
886 2015-05-13 Eric Botcazou <ebotcazou@adacore.com>
888 * acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Delete.
889 * configure.ac: Remove GLIBCXX_ENABLE_SJLJ_EXCEPTIONS.
890 * config.h.in: Regenerate.
891 * configure: Likewise.
892 * libsupc++/eh_personality.cc: Replace _GLIBCXX_SJLJ_EXCEPTIONS by
893 __USING_SJLJ_EXCEPTIONS__.
894 * libsupc++/eh_throw.cc: Likewise.
895 * libsupc++/eh_ptr.cc: Likewise.
896 * doc/html/manual/appendix_porting.html: Remove
897 GLIBCXX_ENABLE_SJLJ_EXCEPTIONS
898 * doc/xml/manual/build_hacking.xml: Likewise.
899 * doc/html/manual/configure.html: Remove --enable-sjlj-exceptions.
900 * doc/xml/manual/configure.xml: Likewise.
902 2015-05-13 Jonathan Wakely <jwakely@redhat.com>
904 * include/bits/shared_ptr_base.h (__shared_count(unique_ptr&&)): Check
905 for nullptr (LWG 2415).
906 * testsuite/20_util/shared_ptr/cons/unique_ptr_deleter.cc: Test
907 construction from empty unique_ptr.
908 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
909 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
911 * include/bits/stl_raw_storage_iter.h (raw_storage_iterator::base()):
913 * testsuite/20_util/raw_storage_iterator/base.cc: New.
915 * include/std/future (packaged_task(allocator_arg_t, const A&, F&&):
916 Remove explicit (LWG 2407).
918 * include/bits/basic_string.h (basic_string::basic_string()): Make
919 noexcept conditional on allocator (LWG 2455).
921 * include/std/complex (polar): Check for negative rho (LWG 2459).
923 * include/experimental/tuple (apply): Handle pointers to member (LWG
925 * include/std/functional (_Mem_fn_base): Make constructors constexpr.
926 (_Maybe_wrap_member_pointer::__do_wrap): Make constexpr.
927 * testsuite/experimental/tuple/apply.cc: Test pointer to member.
929 * include/bits/random.h (seed_seq): More noexcept (LWG 2440).
931 * include/bits/alloc_traits.h (_S_max_size): Implement LWG 2466.
932 * testsuite/20_util/allocator_traits/members/max_size.cc: Adjust.
933 * testsuite/23_containers/forward_list/allocator/minimal.cc:
935 * testsuite/23_containers/map/allocator/minimal.cc: Likewise.
936 * testsuite/23_containers/multimap/allocator/minimal.cc: Likewise.
937 * testsuite/23_containers/multiset/allocator/minimal.cc: Likewise.
938 * testsuite/23_containers/set/allocator/minimal.cc: Likewise.
939 * testsuite/23_containers/unordered_map/allocator/minimal.cc:
941 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc:
943 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc:
945 * testsuite/23_containers/unordered_set/allocator/minimal.cc:
947 * testsuite/util/testsuite_allocator.h: Remove unused parameter.
949 * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Re-enable on solaris.
950 * configure: Regenerate.
952 2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
954 * Makefile.in: Regenerated with automake-1.11.6.
955 * aclocal.m4: Likewise.
956 * configure: Likewise.
957 * doc/Makefile.in: Likewise.
958 * include/Makefile.in: Likewise.
959 * libsupc++/Makefile.in: Likewise.
960 * po/Makefile.in: Likewise.
961 * python/Makefile.in: Likewise.
962 * src/Makefile.in: Likewise.
963 * src/c++11/Makefile.in: Likewise.
964 * src/c++98/Makefile.in: Likewise.
965 * src/filesystem/Makefile.in: Likewise.
966 * testsuite/Makefile.in: Likewise.
968 2015-05-09 Jason Merrill <jason@redhat.com>
970 * testsuite/20_util/headers/functional/synopsis.cc: Add
971 _GLIBCXX14_CONSTEXPR.
972 * testsuite/25_algorithms/headers/algorithm/synopsis.cc: Likewise.
974 2015-05-08 Jason Merrill <jason@redhat.com>
976 * testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Add -std=c++98.
977 * testsuite/20_util/auto_ptr/1.cc: Add -std=c++98.
978 * testsuite/20_util/auto_ptr/2.cc: Add -std=c++98.
979 * testsuite/20_util/auto_ptr/3.cc: Add -std=c++98.
980 * testsuite/20_util/auto_ptr/4.cc: Add -std=c++98.
981 * testsuite/20_util/auto_ptr/5.cc: Add -std=c++98.
982 * testsuite/20_util/auto_ptr/6.cc: Add -std=c++98.
983 * testsuite/20_util/auto_ptr/7.cc: Add -std=c++98.
984 * testsuite/20_util/auto_ptr/3946.cc: Add -std=c++98.
985 * testsuite/20_util/auto_ptr/assign_neg.cc: Add -std=c++98.
986 * testsuite/20_util/auto_ptr/requirements/explicit_instantiation/1.cc:
988 * testsuite/20_util/headers/functional/synopsis.cc: Add -Wno-deprecated.
989 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
990 Adjust expected errors.
991 * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
993 * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
995 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
997 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
999 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1001 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1003 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1005 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1007 * testsuite/23_containers/vector/requirements/dr438
1008 /constructor_1_neg.cc: Likewise.
1009 * testsuite/23_containers/vector/requirements/dr438
1010 /constructor_2_neg.cc: Likewise.
1011 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1013 * testsuite/ext/array_allocator/1.cc: Add -Wno-deprecated.
1014 * testsuite/ext/array_allocator/2.cc: Add -Wno-deprecated.
1015 * testsuite/ext/array_allocator/26875.cc: Add -Wno-deprecated.
1016 * testsuite/ext/array_allocator/3.cc: Add -Wno-deprecated.
1017 * testsuite/ext/array_allocator/check_allocate_max_size.cc:
1018 Add -Wno-deprecated.
1019 * testsuite/ext/array_allocator/check_deallocate_null.cc:
1020 Add -Wno-deprecated.
1021 * testsuite/ext/array_allocator/check_delete.cc: Add -Wno-deprecated.
1022 * testsuite/ext/array_allocator/check_new.cc: Add -Wno-deprecated.
1023 * testsuite/ext/profile/mutex_extensions_neg.cc: Prune follow-on error.
1024 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr.cc:
1026 * testsuite/tr1/2_general_utilities/shared_ptr/assign/auto_ptr_neg.cc:
1028 * testsuite/tr1/2_general_utilities/shared_ptr/assign
1029 /auto_ptr_rvalue_neg.cc: Add -std=c++98.
1030 * testsuite/tr1/2_general_utilities/shared_ptr/cons/43820_neg.cc:
1031 Add -std=c++98 -fno-show-column.
1032 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr.cc:
1034 * testsuite/tr1/2_general_utilities/shared_ptr/cons/auto_ptr_neg.cc:
1036 * testsuite/tr1/6_containers/utility/pair.cc: Add -std=c++98.
1037 * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: Add -std=c++98.
1039 * src/c++98/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
1040 * src/c++98/Makefile.in: Regenerate.
1041 * src/Makefile.am (AM_CXXFLAGS): Add -std=gnu++98.
1042 * src/Makefile.in: Regenerate.
1044 2015-05-02 Jonathan Wakely <jwakely@redhat.com>
1047 * include/std/future (async): Change default policy to launch::async.
1049 * include/experimental/any (any::_Storage): Fix alignment of buffer.
1050 (any::_Internal): Check alignment of type.
1051 * testsuite/experimental/any/cons/aligned.cc: New.
1052 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
1054 * include/experimental/iterator (ostream_joiner): Simplify by using
1055 the injected-class-name and the ostream_type typedef.
1057 * include/experimental/iterator: New. Define ostream_joiner.
1058 * include/Makefile.am: Add new header.
1059 * include/Makefile.in: Regenerate.
1060 * testsuite/experimental/iterator/make_ostream_joiner.cc: New.
1061 * testsuite/experimental/iterator/ostream_joiner.cc: New.
1062 * testsuite/experimental/iterator/requirements.cc: New.
1063 * doc/xml/manual/status_cxx2017.xml: Update status.
1064 * doc/html/manual/status.html: Regenerate.
1066 * include/experimental/numeric: New. Define gcd and lcm.
1067 * include/Makefile.am: Add new header.
1068 * include/Makefile.in: Regenerate.
1069 * testsuite/experimental/numeric/gcd.cc: New.
1070 * testsuite/experimental/numeric/lcm.cc: New.
1071 * doc/xml/manual/status_cxx2017.xml: Update status.
1072 * doc/html/manual/status.html: Regenerate.
1074 2015-05-02 Edward Smith-Rowland <3dw4rd@verizon.net>
1076 Revert addition of feature macros from other headers per latest SD-6.
1077 * include/experimental/deque: Remove feature-test macro.
1078 * include/experimental/forward_list: Ditto.
1079 * include/experimental/list: Ditto.
1080 * include/experimental/map: Ditto.
1081 * include/experimental/set: Ditto.
1082 * include/experimental/string: Ditto.
1083 * include/experimental/unordered_map: Ditto.
1084 * include/experimental/unordered_set: Ditto.
1086 2015-05-02 Jonathan Wakely <jwakely@redhat.com>
1088 * include/experimental/any (any::_Storage): Make non-copyable.
1089 (any::any): Do not copy _Storage object.
1090 (any::operator=): Implement more efficiently than swapping.
1091 (any::swap): Use new _Op_xfer operation.
1092 (any::_Op::_Op_xfer): New enumerator.
1093 (_Manager_internal::_S_alloc): Remove unused function.
1094 (_Manager_internal::_S_create, _Manager_external::_S_create): Use out
1095 parameter instead of returning a _Storage object.
1096 (_Manager_internal::_S_manage, _Manager_external::_S_manage): Add
1097 _Op_xfer operation for moving and swapping.
1098 * testsuite/experimental/any/cons/nontrivial.cc: New.
1099 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
1101 * include/experimental/fs_path.h (filesystem_error::~filesystem_error):
1103 * src/filesystem/path.cc (filesystem_error::~filesystem_error):
1107 * include/std/tuple (forward_as_tuple, tie): Add constexpr.
1108 * testsuite/20_util/tuple/creation_functions/constexpr.cc: Uncomment
1109 and fix tests for forward_as_tuple and tie.
1111 * src/filesystem/ops.cc (last_write_time) [_GLIBCXX_USE_UTIMENSAT]:
1112 Set timespec members explicitly instead of with a braced-init-list.
1113 [_GLIBCXX_HAVE_UTIME_H]: Use lambda to handle st_atime being a macro.
1115 2015-05-02 Edward Smith-Rowland <3dw4rd@verizon.net>
1117 * include/experimental/deque: Add feature-test macro.
1118 * include/experimental/forward_list: Ditto.
1119 * include/experimental/list: Ditto.
1120 * include/experimental/map: Ditto.
1121 * include/experimental/set: Ditto.
1122 * include/experimental/string: Ditto.
1123 * include/experimental/unordered_map: Ditto.
1124 * include/experimental/unordered_set: Ditto.
1126 2015-05-01 Jonathan Wakely <jwakely@redhat.com>
1128 * include/experimental/memory: Correct feature-test macro.
1130 * include/experimental/memory: Add feature-test macro.
1131 * include/experimental/vector: Likewise.
1132 * doc/xml/manual/status_cxx2017.xml: Update status.
1133 * doc/html/manual/status.html: Regenerate.
1135 2015-05-01 Ville Voutilainen <ville.voutilainen@gmail.com>
1137 Implement observer_ptr.
1138 * include/Makefile.am: Add new header.
1139 * include/Makefile.in: Regenerate.
1140 * include/experimental/memory: New.
1141 * testsuite/experimental/memory/observer_ptr/assignment/assign.cc: New.
1142 * testsuite/experimental/memory/observer_ptr/cons/cons.cc: New.
1143 * testsuite/experimental/memory/observer_ptr/hash/hash.cc: New.
1144 * testsuite/experimental/memory/observer_ptr/make_observer.cc: New.
1145 * testsuite/experimental/memory/observer_ptr/relops/relops.cc: New.
1146 * testsuite/experimental/memory/observer_ptr/requirements.cc: New.
1147 * testsuite/experimental/memory/observer_ptr/swap/swap.cc: New.
1148 * testsuite/experimental/memory/observer_ptr/typedefs.cc: New.
1150 2015-05-01 Jonathan Wakely <jwakely@redhat.com>
1152 * src/filesystem/path.cc (path::compare): Do not copy strings.
1154 * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h>
1156 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmodat.
1157 * configure: Regenerate.
1158 * config.h.in: Regenerate.
1159 * configure.ac: Check for utime.h
1160 * include/experimental/fs_path.h (path::string<>)
1161 [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Remove stray typename keyword.
1162 * src/filesystem/dir.cc [!_GLIBCXX_HAVE_DIRENT_H] (DIR, opendir,
1163 closedir, dirent, readdir_r): Replace dummy functions with #error.
1164 (native_readdir, _Dir::advance): Use readdir when readdir_r is missing.
1165 * src/filesystem/ops.cc (do_stat, is_set): Make inline.
1166 (last_write_time) [!_GLIBCXX_USE_UTIMENSAT]: Use utime.
1167 (permissions) [!_GLIBCXX_USE_FCHMODAT]: Use chmod.
1168 (space, temp_directory_path) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Set
1171 * include/experimental/fs_path.h (path::_List): Use vector instead of
1173 * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Adapt.
1174 * src/filesystem/path.cc: Use std::prev instead of decrementing
1175 rvalues. Fix whitespace.
1176 * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
1177 Do not decrement iterators before begin.
1179 * include/experimental/fs_dir.h: Fix use of non-reserved names.
1180 * include/experimental/fs_ops.h: Likewise.
1181 * include/experimental/fs_path.h: Likewise.
1182 * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Use
1183 C++11 when checking for support.
1185 * include/bits/locale_classes.h (locale::facet): Delete copy
1186 operations in C++11 mode.
1188 * include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
1190 * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
1191 * configure: Regenerate.
1193 2015-05-01 Edward Smith-Rowland <3dw4rd@verizon.net>
1195 Inline one-line erasure dispatch functions.
1196 * include/experimental/forward_list (erase_if(), erase()): Inline.
1197 * include/experimental/list (erase_if(), erase()): Inline.
1198 * include/experimental/map (erase_if(*)): Inline.
1199 * include/experimental/set (erase_if(*)): Inline.
1200 * include/experimental/string (erase_if(), erase()): Inline.
1201 * include/experimental/unordered_map (erase_if(*)): Inline.
1202 * include/experimental/unordered_set (erase_if(*)): Inline.
1204 2015-05-01 Jonathan Wakely <jwakely@redhat.com>
1206 * doc/xml/manual/intro.xml: Link to new status_cxx2017.xml file.
1207 * doc/xml/manual/status_cxx2011.xml: Update status tables.
1208 * doc/xml/manual/status_cxx2014.xml: Likewise.
1209 * doc/xml/manual/status_cxx2017.xml: New.
1210 * doc/xml/manual/using.xml: Fix typo.
1211 * doc/html/*: Regenerate.
1213 * include/std/memory (pointer_safety, declare_reachable,
1214 undeclare_reachable, declare_no_pointers, undeclare_no_pointers,
1215 get_pointer_safety): Define.
1216 * testsuite/20_util/pointer_safety/1.cc: New.
1218 2015-04-30 Jonathan Wakely <jwakely@redhat.com>
1220 Implement N4100 File System TS
1221 * acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Define.
1222 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Define.
1223 * config.h.in: Regenerate.
1224 * configure: Regenerate.
1225 * configure.ac: Enable filesystem TS and check its dependencies.
1226 * include/Makefile.am: Add new headers.
1227 * include/Makefile.in: Regenerate.
1228 * include/bits/locale_conv.h (__do_str_code_cvt, __str_codecvt_in,
1229 __str_codecvt_out): Move code conversion logic from wstring_convert
1230 into new global functions.
1231 (wstring_convert::to_bytes, wstring_convert::from_bytes): Use new
1233 (wstring_convert::_M_conv): Remove.
1234 * include/bits/quoted_string.h (_Quoted_string): Split out of iomanip.
1235 * include/experimental/filesystem: New.
1236 * include/experimental/fs_dir.h: New.
1237 * include/experimental/fs_fwd.h: New.
1238 * include/experimental/fs_ops.h: New.
1239 * include/experimental/fs_path.h: New.
1240 * include/std/iomanip (_Quoted_string): Move to bits/quoted_string.h.
1241 * python/libstdcxx/v6/printers.py (StdExpPathPrinter): Add.
1242 * src/Makefile.am (SUBDIRS): Add filesystem.
1243 * src/Makefile.in: Regenerate.
1244 * src/filesystem/Makefile.am: New.
1245 * src/filesystem/Makefile.in: New.
1246 * src/filesystem/dir.cc: New.
1247 * src/filesystem/ops.cc: New.
1248 * src/filesystem/path.cc: New.
1249 * testsuite/experimental/filesystem/operations/absolute.cc: New.
1250 * testsuite/experimental/filesystem/operations/copy.cc: New.
1251 * testsuite/experimental/filesystem/operations/current_path.cc: New.
1252 * testsuite/experimental/filesystem/path/append/path.cc: New.
1253 * testsuite/experimental/filesystem/path/assign/assign.cc: New.
1254 * testsuite/experimental/filesystem/path/assign/copy.cc: New.
1255 * testsuite/experimental/filesystem/path/compare/compare.cc: New.
1256 * testsuite/experimental/filesystem/path/compare/path.cc: New.
1257 * testsuite/experimental/filesystem/path/compare/strings.cc: New.
1258 * testsuite/experimental/filesystem/path/concat/path.cc: New.
1259 * testsuite/experimental/filesystem/path/concat/strings.cc: New.
1260 * testsuite/experimental/filesystem/path/construct/copy.cc: New.
1261 * testsuite/experimental/filesystem/path/construct/default.cc: New.
1262 * testsuite/experimental/filesystem/path/construct/locale.cc: New.
1263 * testsuite/experimental/filesystem/path/construct/range.cc: New.
1264 * testsuite/experimental/filesystem/path/decompose/extension.cc: New.
1265 * testsuite/experimental/filesystem/path/decompose/filename.cc: New.
1266 * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
1268 * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
1270 * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
1272 * testsuite/experimental/filesystem/path/decompose/root_name.cc:
1274 * testsuite/experimental/filesystem/path/decompose/root_path.cc:
1276 * testsuite/experimental/filesystem/path/decompose/stem.cc: New.
1277 * testsuite/experimental/filesystem/path/generic/generic_string.cc:
1279 * testsuite/experimental/filesystem/path/itr/traversal.cc: New.
1280 * testsuite/experimental/filesystem/path/modifiers/clear.cc: New.
1281 * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
1283 * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
1285 * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
1287 * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
1289 * testsuite/experimental/filesystem/path/modifiers/swap.cc: New.
1290 * testsuite/experimental/filesystem/path/nonmember/hash_value.cc: New.
1291 * testsuite/experimental/filesystem/path/query/empty.cc: New.
1292 * testsuite/experimental/filesystem/path/query/has_extension.cc: New.
1293 * testsuite/experimental/filesystem/path/query/has_filename.cc: New.
1294 * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
1296 * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
1298 * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
1300 * testsuite/experimental/filesystem/path/query/has_root_name.cc:
1302 * testsuite/experimental/filesystem/path/query/has_root_path.cc:
1304 * testsuite/experimental/filesystem/path/query/has_stem.cc: New.
1305 * testsuite/experimental/filesystem/path/query/is_relative.cc: New.
1306 * testsuite/util/testsuite_fs.h: New.
1308 2015-04-30 Edward Smith-Rowland <3dw4rd@verizon.net>
1310 Add fundamentals TR container erasure.
1311 * include/Makefile.am: Add new headers.
1312 * include/Makefile.in: Add new headers.
1313 * include/experimental/array: New.
1314 * include/experimental/deque: New.
1315 * include/experimental/erase_if.tcc: New.
1316 * include/experimental/forward_list: New.
1317 * include/experimental/list: New.
1318 * include/experimental/map: New.
1319 * include/experimental/set: New.
1320 * include/experimental/string: New.
1321 * include/experimental/unordered_map: New.
1322 * include/experimental/unordered_set: New.
1323 * include/experimental/vector: New.
1324 * testsuite/experimental/deque/erasure.cc: New.
1325 * testsuite/experimental/forward_list/erasure.cc: New.
1326 * testsuite/experimental/list/erasure.cc: New.
1327 * testsuite/experimental/map/erasure.cc: New.
1328 * testsuite/experimental/set/erasure.cc: New.
1329 * testsuite/experimental/string/erasure.cc: New.
1330 * testsuite/experimental/unordered_map/erasure.cc: New.
1331 * testsuite/experimental/unordered_set/erasure.cc: New.
1332 * testsuite/experimental/vector/erasure.cc: New.
1334 2015-04-30 François Dumont <fdumont@gcc.gnu.org>
1336 * include/bits/cpp_type_traits.h
1337 (__gnu_cxx::__is_normal_iterator): Delete.
1338 * include/bits/stl_algobase.h (std::__niter_base): Adapt.
1339 * include/bits/stl_iterator.h (__make_reverse_iterator): New in C++11.
1340 (std::__niter_base): Overloads for std::reverse_iterator,
1341 __gnu_cxx::__normal_iterator and std::move_iterator.
1343 2015-04-30 François Dumont <fdumont@gcc.gnu.org>
1345 * include/bits/hashtable_policy.h (_Prime_rehash_policy::_S_n_primes):
1347 * src/c++11/hashtable_c++0x.cc (_Prime_rehash_policy::_M_next_bkt):
1348 Remove usage of latter and compute size of the prime numbers array
1351 2015-04-29 Doug Evans <dje@google.com>
1354 * python/libstdcxx/v6/xmethods.py (get_bool_type): New function.
1355 Replace all lookups of "bool" with this.
1356 (get_std_size_type): New function. Replace all lookups of std::size_t
1358 (*Worker): New method get_result_type.
1359 (DequeWorkerBase.__init__): New arg val_type. All callers updated.
1360 (ListWorkerBase.__init__): New arg val_type. All callers updated.
1361 (UniquePtrGetWorker.__init__): New arg elem_type. All callers updated.
1362 Delete setting of name, enabled.
1363 (UniquePtrDerefWorker.__init__): New arg elem_type. All callers
1364 updated. Delete setting of name.
1365 (UniquePtrMethodsMatcher): Rewrite for consistency with all other
1366 libstdc++ xmethod matchers.
1367 * testsuite/libstdc++-xmethods/array.cc: Add whatis tests.
1368 * testsuite/libstdc++-xmethods/associative-containers.cc: Ditto.
1369 * testsuite/libstdc++-xmethods/deque.cc: Ditto.
1370 * testsuite/libstdc++-xmethods/forwardlist.cc: Ditto.
1371 * testsuite/libstdc++-xmethods/list.cc: Ditto.
1372 * testsuite/libstdc++-xmethods/unique_ptr.cc: Ditto.
1373 * testsuite/libstdc++-xmethods/vector.cc: Ditto.
1375 2015-04-29 Doug Evans <dje@google.com>
1377 Use consistent naming for value type attributes.
1378 * python/libstdcxx/v6/xmethods.py (ArrayWorkerBase): Rename _valtype
1380 (ArraySizeWorker, ArrayEmptyWorker): Ditto.
1381 (ArrayFrontWorker, ArrayBackWorker): Ditto.
1382 (ArrayAtWorker, ArraySubscriptWorker): Ditto.
1383 (DequeWorkerBase): Rename elemtype to val_type.
1384 (ForwardListWorkerBase): Rename _elem_type to _val_type.
1385 (ForwardListFrontWorker): Ditto. And rename elem_address to
1387 (ForwardListMethodsMatcher): Rename elem_type to val_type.
1388 (VectorWorkerBase): Rename _elemtype to _val_type.
1390 2015-04-29 Jonathan Wakely <jwakely@redhat.com>
1393 * include/std/functional (__check_func_return_type): Use is_same to
1394 avoid using _is_convertible on incomplete types.
1395 * testsuite/20_util/function/65760.cc: New.
1398 * include/bits/basic_string (basic_string::_S_copy_chars): Cast
1400 * include/bits/locale_facets_nonio.tcc (money_get::_M_extract,
1401 time_get::_M_extract_num, time_get::_M_extract_name,
1402 time_get::_M_extract_wday_or_month): Likewise.
1403 * include/bits/stl_algo.h (__includes, __replace_copy_if,
1404 __is_sorted_until, __is_permutation, transform): Likewise.
1405 * include/bits/stl_algobase.h (swap_ranges, __copy_move::__copy_m,
1406 __equal::equal, __lexicographical_compare_impl, equal): Likewise.
1407 * include/bits/stl_numeric.h (inner_product): Likewise.
1408 * include/bits/stl_uninitialized.h (__uninitialized_copy_a): Likewise.
1409 * testsuite/util/testsuite_iterators.h (output_iterator_wrapper,
1410 input_iterator_wrapper): Declare unusable comma operator.
1411 * testsuite/21_strings/basic_string/cons/char/64657.cc: New.
1412 * testsuite/21_strings/basic_string/modifiers/assign/char/64657.cc:
1415 2015-04-28 Doug Evans <dje@google.com>
1417 * testsuite/libstdc++-xmethods/list.cc (_GLIBCXX_USE_CXX11_ABI):
1420 2015-04-28 Jonathan Wakely <jwakely@redhat.com>
1422 * include/bits/stl_algo.h (random_shuffle): Only define for hosted
1425 2015-04-28 Jonathan Wakely <jwakely@redhat.com>
1427 * Makefile.am (SUBDIRS): Move python to hosted_source.
1428 * Makefile.in: Regenerate.
1429 * acinclude.m4 (glibcxx_SUBDIRS): Reorder.
1430 * configure: Regenerate.
1432 2015-04-28 Marc Glisse <marc.glisse@inria.fr>
1435 * include/std/limits (numeric_limits): Add missing unsigned.
1437 2015-04-28 Stephan Bergmann <sbergman@redhat.com>
1439 * include/debug/vector (_Safe_vector::operator=): Add missing returns.
1441 2015-04-28 Jonathan Wakely <jwakely@redhat.com>
1444 * include/std/type_traits (__make_unsigned_selector<_Tp, false, true>):
1445 Handle enumeration types larger than sizeof(long).
1446 (__make_signed_selector<_Tp, false, true>): Find unsigned type then
1448 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1449 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1451 * testsuite/20_util/make_signed/requirements/typedefs-3.cc: New.
1452 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust
1454 * testsuite/20_util/make_unsigned/requirements/typedefs-3.cc: New.
1457 * include/bits/forward_list.h (forward_list::splice_after): Add
1459 * include/bits/forward_list.tcc (forward_list::splice_after):
1463 * include/bits/random.h (seed_seq) Define copy constructor and copy
1464 assignment as deleted.
1465 * testsuite/26_numerics/random/seed_seq/cons/65631.cc: New.
1467 * libsupc++/exception (uncaught_exceptions): Add comment. Reorder #if.
1468 * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc:
1469 Use -std=gnu++1z. Check feature-test macro.
1471 * include/std/type_traits (void_t): Add.
1472 * testsuite/20_util/void_t/1.cc: New.
1474 2015-04-28 Tim Shen <timshen@google.com>
1476 * include/bits/regex.tcc: Handle regex_constants::__polynomial.
1477 * include/bits/regex_automaton.tcc: Throw exception when parsing
1478 back-reference with flag __polynomial.
1479 * include/bits/regex_constants.h: Add extension flag
1480 syntax_option_type __polynomial.
1481 * bits/regex_executor.tcc: Still let BFS process ECMAScript.
1482 Alternative operation will be fixed in the coming refactoring.
1483 * testsuite/28_regex/algorithms/regex_search/61424.cc: Turn
1484 loose match_search_debug to use DFS only.
1486 2015-04-27 Sandra Loosemore <sandra@codesourcery.com>
1489 * testsuite/lib/libstdc++.exp (check_v3_target_namedlocale):
1490 Make the generated test program fail gracefully if the target
1491 doesn't support passing command-line arguments.
1493 2015-04-27 Federico Lenarduzzi <federico.lenarduzzi@tallertechnologies.com>
1494 Jonathan Wakely <jwakely@redhat.com>
1496 * libsupc++/eh_catch.cc (uncaught_exception, uncaught_exceptions):
1497 Return false or zero if the library is built without exceptions.
1498 * libsupc++/eh_term_handler.cc: Disable verbose terminate handler if
1499 the library is built without exceptions.
1501 2015-04-27 Ville Voutilainen <ville.voutilainen@gmail.com>
1503 * config/abi/pre/gnu.ver: Fix comment.
1505 Add support for std::uncaught_exceptions.
1506 * acinclude.m4: Bump libtool_VERSION.
1507 * config/abi/pre/gnu.ver: Export the new symbol.
1508 * configure: Regenerate.
1509 * libsupc++/eh_catch.cc (uncaught_exceptions): New.
1510 * libsupc++/exception (uncaught_exceptions): New.
1511 * testsuite/18_support/uncaught_exceptions/uncaught_exceptions.cc: New.
1512 * testsuite/util/testsuite_abi.cc: Add 3.4.22 as the latest version.
1514 2015-04-27 Dmitry Prokoptsev <dprokoptsev@gmail.com>
1515 Michael Hanselmann <public@hansmi.ch>
1518 * libsupc++/eh_ptr.cc (rethrow_exception): Increment count of
1519 uncaught exceptions.
1520 * testsuite/18_support/exception_ptr/62258.cc: New.
1522 2015-04-27 Jonathan Wakely <jwakely@redhat.com>
1524 * doc/xml/manual/extensions.xml: Add cross-reference.
1525 * doc/html/manual/ext_compile_checks.html: Regenerate.
1527 2015-04-22 Szabolcs Nagy <szabolcs.nagy@arm.com>
1529 * config/os/generic/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): Define.
1530 * configure.host (os_include_dir): Set to "os/generic" for linux-musl*.
1532 2015-04-22 Renlin Li <renlin.li@arm.com>
1534 * testsuite/lib/dg-options.exp (dg-require-thread-fence): New.
1535 * testsuite/lib/libstdc++.exp (check_v3_target_thread_fence): New.
1536 * testsuite/29_atomics/atomic_flag/clear/1.cc: Use it.
1537 * testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Likewise.
1538 * testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Likewise.
1540 2015-04-21 Jonathan Wakely <jwakely@redhat.com>
1542 * doc/xml/manual/configure.xml: Update descriptions of options
1543 affecting dual ABI and add cross-references.
1544 * doc/xml/manual/strings.xml: Clarify that string isn't COW now.
1545 * doc/xml/manual/using.xml: Document ABI transition.
1546 * doc/html/*: Regenerate.
1548 * doc/xml/manual/abi.xml: Use uppercase for C++ Standard Library.
1549 * doc/xml/manual/using.xml: Document newer -std options. Use better
1550 examples of nested namespaces.
1552 2015-04-20 Jonathan Wakely <jwakely@redhat.com>
1554 * doc/xml/manual/concurrency_extensions.xml: Update documentation
1556 * doc/xml/manual/using.xml: Likewise. Improve markup.
1557 * doc/html/*: Regenerate.
1559 2015-04-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1561 * scripts/extract_symvers.pl: Ignore elfdump error output.
1563 2015-04-14 Marc Glisse <marc.glisse@inria.fr>
1566 * include/bits/stl_iterator_base_funcs.h (_List_iterator,
1567 _List_const_iterator): Declare.
1568 (__distance): Declare new overloads for _List_iterator and
1569 _List_const_iterator.
1570 * include/bits/stl_list.h (__distance): New overloads for
1571 _List_iterator and _List_const_iterator.
1572 * testsuite/23_containers/list/61347.cc: New testcase.
1574 2015-04-14 Jonathan Wakely <jwakely@redhat.com>
1576 * doc/xml/manual/evolution.xml: Fix typos.
1577 * doc/html/manual/api.html: Regenerate.
1579 2015-04-14 Hans-Peter Nilsson <hp@axis.com>
1581 * testsuite/29_atomics/atomic/62259.cc: Assert atomic
1582 alignment is larger-equal, not equal, to default alignment.
1584 2015-04-13 Jonathan Wakely <jwakely@redhat.com>
1587 * config/abi/pre/gnu.ver: Export base object constructors for
1589 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
1590 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1591 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1592 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1593 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
1594 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
1595 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
1596 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
1597 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1598 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
1599 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
1600 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
1601 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1602 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1603 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
1604 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
1605 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
1606 * testsuite/27_io/basic_fstream/cons/base.cc: New.
1608 2015-04-13 Jonathan Wakely <jwakely@redhat.com>
1610 * doc/xml/manual/evolution.xml: Document changes since 4.5 release.
1611 * doc/html/*: Regenerate.
1613 2015-04-12 Uros Bizjak <ubizjak@gmail.com>
1615 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1617 2015-04-10 Andreas Schwab <schwab@linux-m68k.org>
1619 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1621 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
1623 2015-04-10 Jonathan Wakely <jwakely@redhat.com>
1625 * doc/xml/manual/test.xml: Improve documentation on running a subset
1627 * doc/html/manual/test.html: Regenerate.
1629 2015-04-10 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
1631 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
1632 for GCC 5.1 release.
1633 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1636 2015-04-10 Jonathan Wakely <jwakely@redhat.com>
1638 * include/std/shared_mutex (shared_timed_mutex): Add comments to
1639 explain the logic in the non-pthread_rwlock_t version.
1640 (_Mutex): Remove redundant type.
1641 (_M_n_readers): Rename to _S_max_readers.
1642 (_M_write_entered, _M_readers): New convenience functions.
1643 (lock, lock_shared, try_lock_shared, unlock_shared): Use convenience
1644 functions. Use predicates with condition variables. Simplify bitwise
1646 (try_lock_for, try_shared_lock_for): Convert duration to time_point
1647 and call try_lock_until or try_shared_lock_until respectively.
1648 (try_lock_until, try_shared_lock_until): Wait on the condition
1649 variables until the specified time passes.
1650 (unlock): Add Debug Mode assertion.
1651 (unlock_shared): Add Debug Mode assertion.
1652 * testsuite/30_threads/shared_timed_mutex/try_lock/3.cc: New.
1654 * include/std/shared_mutex (shared_timed_mutex): Only use
1655 pthread_rwlock_t when the POSIX Timeouts option is supported.
1656 * testsuite/30_threads/shared_lock/cons/5.cc: Remove
1657 dg-require-gthreads-timed.
1658 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1659 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1660 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1662 2015-04-09 H.J. Lu <hongjiu.lu@intel.com>
1664 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
1666 2015-04-09 Jonathan Wakely <jwakely@redhat.com>
1667 Richard Henderson <rth@redhat.com>
1670 * include/bits/atomic_base.h (__atomic_base<_ITp>): Increase
1672 * include/std/atomic (atomic): For types with a power of two size set
1673 alignment to at least the size.
1674 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
1675 * testsuite/29_atomics/atomic/65147.cc: New.
1676 * testsuite/29_atomics/atomic_integral/65147.cc: New.
1678 2015-04-09 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1680 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
1681 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1682 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1684 2015-04-07 Jakub Jelinek <jakub@redhat.com>
1686 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
1687 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
1688 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1689 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
1690 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
1691 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
1692 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
1693 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
1695 2015-03-30 Jonathan Wakely <jwakely@redhat.com>
1698 * config/abi/pre/gnu.ver: Export operator+ for new strings.
1699 * testsuite/21_strings/basic_string/operators/char/65630.cc: New.
1700 * testsuite/21_strings/basic_string/operators/wchar_t/65630.cc: New.
1702 2015-03-28 Tim Shen <timshen@google.com>
1705 * include/bits/regex_constants.h: Use constexpr variables for flags.
1706 * testsuite/28_regex/constants/constexpr.cc: New testcase.
1708 2015-03-27 Jonathan Wakely <jwakely@redhat.com>
1711 * include/std/chrono: Add using-directive for literals to std::chrono.
1712 * testsuite/20_util/duration/literals/65499.cc: New.
1714 2015-03-26 Jonathan Wakely <jwakely@redhat.com>
1718 * include/std/thread (this_thread::sleep_for): Check for negative
1720 (this_thread::sleep_until): Check for times in the past.
1721 * testsuite/30_threads/this_thread/58038.cc: New.
1722 * testsuite/30_threads/this_thread/60421.cc: New.
1724 2015-03-26 Jonathan Wakely <jwakely@redhat.com>
1728 * include/std/atomic (atomic<T>): Increase alignment for types with
1729 the same size as one of the integral types.
1730 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
1731 * testsuite/29_atomics/atomic/62259.cc: New.
1733 2015-03-26 Richard Henderson <rth@redhat.com>
1736 * include/bits/atomic_base.h (__atomic_base<T>::is_lock_free): Build
1737 a fake pointer indicating type alignment.
1738 (__atomic_base<T *>::is_lock_free): Likewise.
1739 * include/std/atomic (atomic<T>::is_lock_free): Likewise.
1741 2015-03-25 Alan Lawrence <alan.lawrence@arm.com>
1744 * testsuite/21_strings/basic_string/pthread33394.cc: Use
1745 dg-additional-options.
1747 2015-03-25 Paolo Carlini <paolo.carlini@oracle.com>
1750 * include/std/istream (operator>>(basic_istream<>&&, _Tp&): Revert
1752 * include/std/ostream (operator<<(basic_ostream<>&&, const _Tp&):
1754 * testsuite/27_io/rvalue_streams-2.cc: New.
1756 2015-03-24 Jonathan Wakely <jwakely@redhat.com>
1759 * testsuite/21_strings/basic_string/pthread33394.cc: Add test.
1761 2015-03-23 Jonathan Wakely <jwakely@redhat.com>
1764 * acinclude.m4: Disable dual ABI when gnu-versioned-namespace in use.
1765 * configure: Regenerate.
1766 * src/c++11/compatibility-c++0x.cc (error_category), generic_category,
1767 system_category): Use macros for versioned namespace.
1768 * src/c++11/futex.cc: Add missing end macro for versioned namespace.
1770 2015-03-20 James Greenhalgh <james.greenhalgh@arm.com>
1772 * testsuite/17_intro/headers/c++1998/all_attributes.cc: Disable
1773 test for unused for ARM.
1774 * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise.
1775 * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
1777 2015-03-20 Jonathan Wakely <jwakely@redhat.com>
1779 * include/bits/c++config (__gnu_cxx::__cxx11): Define new namespace.
1780 * include/ext/codecvt_specializations.h (encoding_state,
1781 encoding_char_traits): Remove abi-tag and use inline namespace.
1782 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust dg-error line.
1784 2015-03-19 Jason Merrill <jason@redhat.com>
1786 * config/locale/gnu/messages_members.cc: Revert abi-tag change.
1787 * src/c++11/cxx11-shim_facets.cc: Revert abi-tag change.
1789 2015-03-18 Jonathan Wakely <jwakely@redhat.com>
1792 * config/locale/gnu/messages_members.cc (Catalog_info, Catalogs,
1793 get_catalogs): Add abi-tag.
1794 * include/ext/codecvt_specializations.h (encoding_state,
1795 encoding_char_traits): Likewise.
1796 * src/c++11/cxx11-ios_failure.cc (io_error_category): Likewise.
1797 * src/c++11/cxx11-shim_facets.cc (__any_string::operator basic_string,
1798 numpunct_shim, collate_shim, time_get_shim, moneypunct_shim,
1799 money_get_shim, money_put_shim, messages_shim): Likewise.
1800 * src/c++11/future.cc (future_error_category::message): Likewise.
1801 * src/c++11/system_error.cc (generic_error_category::message,
1802 system_error_category::message): Likewise.
1803 (__sso_string): Disable -Wabi-tag warnings.
1805 2015-03-18 Jonathan Wakely <jwakely@redhat.com>
1808 * config/locale/gnu/messages_members.cc (get_glibc_msg): Fix fallback
1809 implementation for old glibc. Fix whitespace.
1811 2015-03-18 Jonathan Wakely <jwakely@redhat.com>
1812 Torvald Riegel <triegel@redhat.com>
1814 * acinclude.m4 (GLIBCXX_CHECK_GTHREADS): Check for pthread_rwlock_t.
1815 * config.h.in: Regenerate.
1816 * configure: Regenerate.
1817 * include/std/shared_mutex: Check _GLIBCXX_USE_PTHREAD_RWLOCK_T.
1818 (shared_timed_mutex::_M_rwlock): Use PTHREAD_RWLOCK_INITIALIZER.
1819 (shared_timed_mutex::lock_shared()): Retry on EAGAIN.
1820 (shared_timed_mutex::try_lock_shared_until()): Retry on EAGAIN and
1823 2015-03-17 Jonathan Wakely <jwakely@redhat.com>
1825 * libsupc++/nested_exception.h: Do not try to derive from final
1827 * testsuite/18_support/nested_exception/throw_with_nested.cc: Test
1830 * testsuite/30_threads/shared_lock/modifiers/1.cc: Remove name of
1831 unused exception variable.
1832 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1833 * testsuite/30_threads/shared_lock/modifiers/2.cc: Remove duplicate
1835 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1837 2015-03-13 Jonathan Wakely <jwakely@redhat.com>
1839 * acinclude.m4: Make --enable-libstdcxx-time=auto work for dragonfly.
1840 * configure: Regenerate.
1842 * include/experimental/system_error: Fix include guard.
1844 2015-03-12 Renlin Li <renlin.li@arm.com>
1846 * testsuite/27_io/ios_base/sync_with_stdio/1.cc: Remove xfail for
1849 2015-03-10 Tim Shen <timshen@google.com>
1852 * include/bits/regex.h (match_results<>::size,
1853 match_results<>::position, match_results<>::str,
1854 match_results<>::operator[], match_results<>::prefix,
1855 match_results<>::suffix, match_results<>::end,
1856 match_results<>::_M_resize, match_results<>::_M_unmatched_sub,
1857 match_results<>::_M_prefix, match_results<>::_M_suffix): Remove
1858 global __unmatched_sub. Add unmatched submatch as part of
1860 * include/bits/regex.tcc (__regex_algo_impl<>, regex_replace<>,
1861 regex_iterator<>::operator++): Adjust to use match_results::_M_prefix.
1862 * testsuite/28_regex/match_results/out_of_range_submatches.cc:
1865 2015-03-09 Jonathan Wakely <jwakely@redhat.com>
1868 * testsuite/28_regex/traits/char/isctype.cc: Don't test newline
1869 for newlib targets. Really fix mixed line-endings this time.
1871 2015-03-06 Jonathan Wakely <jwakely@redhat.com>
1873 * include/std/future (future_error(error_code)): Construct base
1874 class with error_code's message.
1875 * src/c++11/future.cc (future_error::what()): Do not call c_str() on
1878 2015-03-05 Jonathan Wakely <jwakely@redhat.com>
1880 * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
1882 * testsuite/22_locale/conversions/string/2.cc: Also test UTF-8.
1883 * testsuite/22_locale/conversions/string/3.cc: Likewise, and UTF-16.
1885 2015-03-04 Jonathan Wakely <jwakely@redhat.com>
1888 * include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
1889 incomplete multibyte sequences correctly.
1890 * include/std/codecvt (codecvt_utf8, codecvt_utf16,
1891 codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
1892 * src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
1894 (is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
1895 Define convenience functions.
1896 (read_utf8_code_point): Return relevant constant to distinguish
1897 incomplete characters from invalid sequences.
1898 (read_utf16_code_point): Likewise. Check for invalid sequences.
1899 (ucs4_in, utf16_in): Use incomplete_mb_character constant.
1900 (utf16_out): Check for invalid sequences.
1901 (utf16_span): Fix condition.
1902 (ucs2_out): Use is_high_surrogate.
1903 (ucs2_in): Use incomplete_mb_character constant and fix condition.
1904 * testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
1905 * testsuite/22_locale/conversions/buffer/1.cc: New.
1906 * testsuite/22_locale/conversions/string/2.cc: Use char16_t and
1907 char32_t instead of wchar_t.
1908 * testsuite/22_locale/conversions/string/3.cc: New.
1910 2015-03-03 Iain Sandoe <iain@codesourcery.com>
1913 * testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
1914 visibility for Darwin.
1915 * testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
1917 * testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.
1919 2015-03-02 Jonathan Wakely <jwakely@redhat.com>
1922 * include/std/scoped_allocator (__inner_type_impl,
1923 scoped_allocator_adaptor): Add defaulted copy assignment and move
1924 assignment operators.
1925 * testsuite/20_util/scoped_allocator/65279.cc: New.
1927 2015-03-02 Jonathan Wakely <jwakely@redhat.com>
1930 * include/std/stdexcept (__sso_string): Don't use non-static member
1933 2015-02-28 Matthias Klose <doko@ubuntu.com>
1936 * python/libstdcxx/v6/__init__.py: Use explicit relative imports.
1938 2015-02-22 Jonathan Wakely <jwakely@redhat.com>
1940 * doc/xml/manual/status_cxx2011.xml: Remove duplicated information.
1941 * doc/html/manual/status.html: Regenerate.
1943 2015-02-20 Jonathan Wakely <jwakely@redhat.com>
1946 * python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle new
1949 * doc/xml/manual/status_cxx2011.xml: Document implementation-defined
1951 * doc/html/manual/status.html: Regenerate.
1953 2015-02-19 Jonathan Wakely <jwakely@redhat.com>
1956 * include/bits/algorithmfwd.h (rotate): Move to inline namespace _V2.
1957 * include/bits/stl_algo.h (__rotate, rotate): Likewise.
1959 2015-02-19 Hans-Peter Nilsson <hp@axis.com>
1962 * testsuite/26_numerics/random/binomial_distribution/operators/values.cc
1963 (test01): Add explanatory comment. Keep only the bd1 sub-test and
1964 split out bd2, bd3, bd4, and bd5 sub-tests into...
1965 * testsuite/26_numerics/random/binomial_distribution/operators/values2.cc,
1966 testsuite/26_numerics/random/binomial_distribution/operators/values3.cc,
1967 testsuite/26_numerics/random/binomial_distribution/operators/values4.cc,
1968 testsuite/26_numerics/random/binomial_distribution/operators/values5.cc:
1969 New separate files with the old parts.
1971 2015-02-18 Jonathan Wakely <jwakely@redhat.com>
1973 * src/c++11/codecvt.cc (write_utf16_code_point): Fix code to output
1975 (utf16_in): Pass mode argument to write_utf16_code_point.
1976 (codecvt<char16_t, char, mbstate_t>::do_in): Set mode according to
1978 * testsuite/22_locale/codecvt/char16_t.cc: New.
1979 * testsuite/22_locale/codecvt/in/wchar_t/1.cc: Fix typo.
1981 * testsuite/22_locale/codecvt/char16_t.cc: Add dg-require-cstdint.
1982 * testsuite/22_locale/codecvt/char32_t.cc: Likewise.
1984 2015-02-17 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1985 Jonathan Wakely <jwakely@redhat.com>
1987 * testsuite/22_locale/codecvt/char32_t.cc: New.
1989 2015-02-17 Jonathan Wakely <jwakely@redhat.com>
1992 * include/bits/basic_string.h (basic_string(basic_string&&)): Ensure
1993 empty string gets null-terminated.
1994 * testsuite/21_strings/basic_string/cons/char/65085.cc: New.
1996 2015-02-13 Matthew Wahab <matthew.wahab@arm.com>
1998 * testsuite/28_regex/traits/char/isctype.cc (test01): Fix
1999 mixed line-endings introduced in last change.
2001 2015-02-12 Matthew Wahab <matthew.wahab@arm.com>
2003 * testsuite/28_regex/traits/char/isctype.cc (test01): Replace test
2004 for __NEWLIB__ macro with a dejagnu set macro.
2005 * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
2007 2015-02-04 Matthew Wahab <matthew.wahab@arm.com>
2010 * testsuite/28_regex/traits/char/isctype.cc (test01): Add newlib
2011 special case for '\n'.
2012 * testsuite/28_regex/traits/wchar_t/isctype.cc (test01): Likewise.
2014 2015-02-01 Jonathan Wakely <jwakely@redhat.com>
2016 * src/c++11/futex.cc: Do not define for gthr-single.h targets.
2018 2015-02-01 Jonathan Wakely <jwakely@redhat.com>
2021 * include/c_global/cstdio (gets): Use __deprecated__ attribute instead
2023 * include/c_std/cstdio (gets): Likewise.
2024 * testsuite/17_intro/headers/c++1998/all_attributes.cc: Avoid clashing
2025 with attributes used in darwin headers.
2027 2015-01-29 Jakub Jelinek <jakub@redhat.com>
2029 * acinclude.m4 (VTV_CYGMIN): Use x$vtv_cygmin = xyes instead of
2030 $vtv_cygmin = yes. Initialize vtv_cygmin=no unconditionally first.
2031 * configure: Regenerated.
2033 2015-01-29 H.J. Lu <hongjiu.lu@intel.com>
2035 * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
2036 after vtv_cygmin is set.
2037 * configure: Regenerated.
2039 2015-01-29 Matthias Klose <doko@ubuntu.com>
2041 * acinclude.m4 (GLIBCXX_ENABLE_VTABLE_VERIFY): Define VTV_CYGMIN
2043 * configure: Regenerate.
2045 2015-01-29 Caroline Tice <cmtice@google.com>
2047 Committing VTV Cywin/Ming patch for Patrick Wollgast
2048 * configure: Regenerate.
2049 * libsupc++/Makefile.in: Regenerate.
2050 * src/Makefile.in: Regenerate.
2052 2015-01-29 Jonathan Wakely <jwakely@redhat.com>
2054 * include/bits/atomic_base.h: Use __always_inline__ instead of
2056 * include/bits/atomic_futex.h: Likewise.
2057 * include/bits/c++config: Use __abi_tag__ instead of abi_tag.
2058 * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp: Use
2059 __packed__ instead of packed.
2060 * include/std/shared_mutex: Use __unused__ instead of unused.
2061 * testsuite/17_intro/headers/c++1998/all_attributes.cc: New.
2062 * testsuite/17_intro/headers/c++200x/all_attributes.cc: New.
2063 * testsuite/17_intro/headers/c++2014/all_attributes.cc: New.
2065 2015-01-28 Caroline Tice <cmtice@google.com>
2067 Committing VTV Cywin/Ming patch for Patrick Wollgast
2068 * acinclude.m4: Define VTV_CYGMIN.
2069 * libsupc++/Makefile.am: Add vtv_sources only to libsupc___la_SOURCES
2070 and libsupc__convenience_la_SOURCES if VTV_CYGMIN is not set.
2071 * libsupc++/vtv_stubs.cc: Add none weak declaration of every function
2072 for Cygwin and MinGW.
2073 * src/Makefile.am: Add libvtv.la to toolexeclib_LTLIBRARIES, if
2074 VTV_CYGMIN is set. Define libvtv_la_SOURCES, libvtv_la_LDFLAGS,
2075 libvtv_la_AM_CXXFLAGS and libvtv_la_LINK if VTV_CYGMIN is set.
2077 2015-01-28 Jonathan Wakely <jwakely@redhat.com>
2080 * libsupc++/Makefile.am: Compile del_opvs.cc as C++14.
2081 * libsupc++/Makefile.in: Regenerate.
2082 * src/c++11/Makefile.in: Regenerate.
2084 2015-01-28 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
2086 * testsuite/lib/libstdc++.exp (v3_target_compile): Remove
2087 check for unsupported.
2088 (v3_target_compile_as_c): Likewise.
2090 2015-01-28 Richard Biener <rguenther@suse.de>
2093 * libsupc++/eh_alloc.cc (struct allocated_entry): Align
2095 (pool::allocate): Adjust allocation size and alignment to
2097 (pool::free): Adjust pointer offsetting.
2099 2015-01-27 Jonathan Wakely <jwakely@redhat.com>
2102 * include/std/shared_mutex (shared_timed_mutex::try_lock_for,
2103 shared_timed_mutex::try_lock_until): Only define when POSIX thread
2104 timeouts option is supported.
2105 (shared_timed_mutex::try_shared_lock_for,
2106 shared_timed_mutex::try_shared_lock_until): Likewise.
2108 2015-01-26 Jonathan Wakely <jwakely@redhat.com>
2111 * config/locale/gnu/numeric_members.cc (numpunct<char>::~numpunct(),
2112 numpunct<wchar_t>::~numpunct()): Do not set _M_data->_M_grouping.
2113 * src/c++11/cxx11-shim_facets.cc (numpunct_shim): Remove _M_grouping
2114 and use cache's _M_grouping field.
2115 (__numpunct_fill_cache): Likewise.
2116 (__moneypunct_fill_cache): Improve comments.
2118 2015-01-26 Jonathan Wakely <jwakely@redhat.com>
2120 * testsuite/23_containers/set/operations/2.cc: Add test for
2121 non-transparent comparison function.
2123 2015-01-25 Oleg Endo <olegendo@gcc.gnu.org>
2126 * config/cpu/sh/atomicity.h (__exchange_and_add, __atomic_add):
2127 Remove SH4A inline asm and lock based implementations and use the
2128 defaults from ext/atomicity.h.
2130 2015-01-23 Jonathan Wakely <jwakely@redhat.com>
2132 * config/abi/pre/gnu.ver: Tighten GLIBCXX_3.4 patterns to not match
2133 new std::string constructors for byname facets.
2135 2015-01-22 Richard Biener <rguenther@suse.de>
2138 * libsupc++/eh_alloc.cc: Include new.
2139 (bitmask_type): Remove.
2140 (one_buffer): Likewise.
2141 (emergency_buffer): Likewise.
2142 (emergency_used): Likewise.
2143 (dependents_buffer): Likewise.
2144 (dependents_used): Likewise.
2145 (class pool): New custom fixed-size arena, variable size object
2147 (emergency_pool): New global.
2148 (__cxxabiv1::__cxa_allocate_exception): Use new emergency_pool.
2149 (__cxxabiv1::__cxa_free_exception): Likewise.
2150 (__cxxabiv1::__cxa_allocate_dependent_exception): Likewise.
2151 (__cxxabiv1::__cxa_free_dependent_exception): Likewise.
2153 2015-01-22 Tim Shen <timshen@google.com>
2156 * include/bits/regex.h (basic_regex<>::basic_regex,
2157 basic_regex<>::operator=, basic_regex<>::imbue): Conform to the
2159 * testsuite/28_regex/basic_regex/assign/char/cstring.cc: New testcase.
2161 2015-01-22 Tim Shen <timshen@google.com>
2164 * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
2165 regex_traits<>::lookup_classname): Correctly narrow input chars.
2166 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New testcase.
2168 2015-01-21 Jonathan Wakely <jwakely@redhat.com>
2170 * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
2172 2015-01-21 Jonathan Wakely <jwakely@redhat.com>
2174 * testsuite/29_atomics/atomic/64658.cc: Test stored value.
2176 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
2178 * doc/xml/manual/status_cxx2011.xml: Remove stray dbhtml tags.
2179 * doc/xml/manual/status_cxx2014.xml: Update status.
2180 * doc/html/manual/status.html: Regenerate.
2182 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
2185 * include/experimental/optional (bad_optional_access): Add default
2187 * testsuite/experimental/optional/requirements.cc: Test for default
2190 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
2192 * include/bits/stl_map.h (map::find<>, map::count<>,
2193 map::lower_bound<>, map::upper_bound<>, map::equal_range<>): New
2194 member function templates to perform heterogeneous lookup.
2195 * include/bits/stl_multimap.h (multimap::find<>, multimap::count<>,
2196 multimap::lower_bound<>, multimap::upper_bound<>,
2197 multimap::equal_range<>): Likewise.
2198 * include/bits/stl_multiset.h (multiset::find<>, multiset::count<>,
2199 multiset::lower_bound<>, multiset::upper_bound<>,
2200 multiset::equal_range<>): Likewise.
2201 * include/bits/stl_set.h (set::find<>, set::count<>,
2202 set::lower_bound<>, set::upper_bound<>, set::equal_range<>): Likewise.
2203 * include/bits/stl_tree.h (_Rb_tree::_S_lower_bound_tr,
2204 _Rb_tree::_S_upper_bound_tr, _Rb_tree::_M_find_tr,
2205 _Rb_tree::_M_count_tr, _Rb_tree::_M_lower_bound_tr,
2206 _Rb_tree::_M_upper_bound_tr, _Rb_tree::_M_equal_range_tr): Likewise.
2207 * testsuite/23_containers/map/operations/2.cc: New.
2208 * testsuite/23_containers/multimap/operations/2.cc: New.
2209 * testsuite/23_containers/multiset/operations/2.cc: New.
2210 * testsuite/23_containers/set/operations/2.cc: New.
2212 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
2214 * config/abi/pre/gnu.ver: Export new constructors.
2215 * include/bits/codecvt.h (codecvt_byname): Add string constructor.
2216 (codecvt_byname<char16_t>, codecvt_byname<char32_t>): Define explicit
2217 specializations and declare explicit instantiations.
2218 * include/bits/locale_classes.h (locale, collate_byname): Add string
2220 * include/bits/locale_facets.h (ctype_byname, numpunct_byname):
2222 * include/bits/locale_facets_nonio.h (time_get_byname,
2223 time_put_byname, moneypunct_byname, messages_byname): Likewise.
2224 * src/c++11/codecvt.cc (codecvt_byname<char16_t>,
2225 codecvt_byname<char32_t>): Define explicit instantiations.
2226 * src/c++11/locale-inst.cc (time_put_byname, codecvt_byname):
2227 Instantiate string constructors.
2228 (ctype_byname): Define string constructor.
2229 * testsuite/22_locale/codecvt_byname/1.cc: New.
2230 * testsuite/22_locale/collate_byname/1.cc: New.
2231 * testsuite/22_locale/ctype_byname/2.cc: New.
2232 * testsuite/22_locale/messages_byname/1.cc: New.
2233 * testsuite/22_locale/moneypunct_byname/1.cc: New.
2234 * testsuite/22_locale/numpunct_byname/1.cc: New.
2236 2015-01-20 Jonathan Wakely <jwakely@redhat.com>
2239 * include/std/atomic (atomic_init): Define.
2240 * testsuite/29_atomics/atomic/64658.cc: New.
2242 2015-01-19 Tim Shen <timshen@google.com>
2245 * include/bits/regex.tcc (regex_traits<>::lookup_collatename,
2246 regex_traits<>::lookup_classname): Support forward iterators.
2247 * testsuite/28_regex/traits/char/lookup_classname.cc: New testcases.
2248 * testsuite/28_regex/traits/char/lookup_collatename.cc: New testcase.
2250 2015-01-19 Tim Shen <timshen@google.com>
2254 * include/bits/regex.h (basic_regex<>::basic_regex,
2255 basic_regex<>::assign, basic_regex<>::imbue,
2256 basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after
2257 imbuing basic_regex; Make assign() transactional against exception.
2258 * include/bits/regex_compiler.h (__compile_nfa<>): Add back
2259 __compile_nfa SFINAE.
2260 * include/std/regex: Adjust include order to avoid __compile_nfa
2261 forward declaration.
2262 * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase.
2263 * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase.
2265 2015-01-19 Ville Voutilainen <ville.voutilainen@gmail.com>
2266 Jonathan Wakely <jwakely@redhat.com>
2268 * include/bits/range_access.h (begin, end): Use _GLIBCXX14_CONSTEXPR
2269 on overloads for arrays.
2270 (cbegin, cend, rbegin, rend, crbegin, crend): New.
2271 * testsuite/24_iterators/range_access_cpp14.cc: New.
2273 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
2276 * include/bits/stl_algo.h (__is_permutation): Also test for reaching
2277 end of the second range.
2278 * testsuite/25_algorithms/is_permutation/64646.cc: New.
2280 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
2282 * doc/xml/manual/status_cxx2011.xml: Remove note about offsetof.
2283 * doc/html/manual/status.html: Regenerate.
2285 2015-01-18 Jonathan Wakely <jwakely@redhat.com>
2287 * include/bits/atomic_futex.h: Use mutex and condition_variable when
2288 atomic int is not lock-free. Make member variables private.
2289 * src/c++11/futex.cc: Likewise.
2291 * src/c++11/futex.cc: Fix order of includes and preprocessor condition.
2293 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
2296 * include/bits/atomic_futex.h: Use appropriate config macros for
2297 availability of std::mutex, std::condition and std::chrono.
2299 2015-01-17 Ville Voutilainen <ville.voutilainen@gmail.com>
2300 Jonathan Wakely <jwakely@redhat.com>
2302 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
2303 * doc/html/*: Regenerate.
2305 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
2309 * include/bits/algorithmfwd.h (rotate): Return an iterator.
2310 * include/bits/stl_algo.h (rotate, __rotate): Likewise.
2311 * testsuite/25_algorithms/rotate/dr488.cc: New.
2312 * testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
2313 * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
2315 * testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
2318 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
2321 * include/bits/atomic_base.h: Remove atomic integral typedefs as
2322 synonyms for __atomic_base<int> etc.
2323 * include/std/atomic: Make atomic_int a synonym for atomic<int> and
2324 likewise for all atomic integral types.
2325 * testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
2326 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
2328 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
2331 * include/std/tuple (_Tuple_impl): Remove zero-element specialization
2332 and define one-element specialization.
2333 * testsuite/20_util/tuple/56785.cc: New.
2335 2015-01-17 Jonathan Wakely <jwakely@redhat.com>
2337 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
2338 Remove unused header.
2339 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
2341 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
2344 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
2346 * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
2347 * include/std/locale: Include new header.
2348 * include/Makefile.am: Add it.
2349 * include/Makefile.in: Regenerate.
2350 * testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
2351 * testsuite/22_locale/conversions/string/1.cc: New.
2352 * testsuite/22_locale/conversions/string/2.cc: New.
2353 * testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
2354 * testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
2357 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
2359 * config/abi/pre/gnu.ver: Export new symbols.
2360 * include/Makefile.am: Add codecvt.
2361 * include/Makefile.in: Regenerate.
2362 * include/std/codecvt: New header.
2363 * src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
2364 __codecvt_utf8_utf16_base): Define specializations.
2365 * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
2366 * testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
2367 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
2370 2015-01-16 Torvald Riegel <triegel@redhat.com>
2372 * src/c++11/futex.cc: New file.
2373 * include/bits/atomic_futex.h: New file.
2374 * include/std/future (__future_base::_State_baseV2): Use
2375 atomic_futex_unsigned instead of mutex+condvar.
2376 * src/c++11/futex.cc: Likewise.
2377 * include/Makefile.am: Add atomic_futex.h.
2378 * include/Makefile.in: Likewise.
2379 * src/c++11/Makefile.am: Add futex.cc.
2380 * src/c++11/Makefile.in: Likewise.
2382 2015-01-16 Jonathan Wakely <jwakely@redhat.com>
2384 * acinclude.m4: Fix typo in comment.
2385 * configure: Regenerate.
2386 * include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
2387 codecvt<char16_t, char, mbstate_t>): Declare specializations.
2388 * include/bits/locale_facets.h: Reserve space for new specializations.
2389 * src/c++11/Makefile.am: Add codecvt.cc.
2390 * src/c++11/Makefile.in: Regenerate.
2391 * src/c++11/codecvt.cc: New.
2392 * src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
2394 * src/c++98/Makefile.in: Regenerate.
2395 * src/c++98/locale_init.cc: Initialize new codecvt specializations.
2396 * src/c++98/localename.cc: Likewise.
2397 * config/abi/pre/gnu.ver: Exports for new codecvt specializations.
2398 * testsuite/22_locale/codecvt/utf8.cc: New.
2399 * testsuite/22_locale/locale/cons/unicode.cc: Check that new
2400 specializations are installed in locale objects.
2402 2015-01-16 Torvald Riegel <triegel@redhat.com>
2404 * include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
2407 2015-01-13 Jonathan Wakely <jwakely@redhat.com>
2410 * config/abi/pre/gnu.ver: Export fstream functions using new string.
2412 2015-01-12 Jonathan Wakely <jwakely@redhat.com>
2415 * src/c++11/cxx11-shim_facets.cc (locale::facet::_M_sso_shim): Check
2419 * src/c++11/cxx11-shim_facets.cc: Check for wchar_t support.
2421 2015-01-10 Thomas Schwinge <thomas@codesourcery.com>
2423 * doc/xml/manual/parallel_mode.xml: Update for libgomp being
2424 renamed from "GNU OpenMP Runtime Library" to "GNU Offloading and
2425 Multi Processing Runtime Library".
2427 2015-01-09 Jonathan Wakely <jwakely@redhat.com>
2430 * include/bits/stl_uninitialized.h (uninitialized_copy): Fix
2431 is_assignable arguments.
2432 * testsuite/20_util/specialized_algorithms/uninitialized_copy/64476.cc:
2435 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
2437 * libsupc++/unwind-cxx.h: Revert previous commit.
2439 2015-01-09 Andreas Tobler <andreast@gcc.gnu.org>
2441 * configure.host: Add arm*-*-freebsd* port_specific_symbol_files.
2443 2015-01-09 Tim Shen <timshen@google.com>
2446 * include/bits/regex.h (match_results<>::swap): Use std::swap
2448 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
2450 * testsuite/28_regex/match_results/swap.cc: New testcase.
2452 2015-01-08 Jonathan Wakely <jwakely@redhat.com>
2455 * include/std/type_traits (has_trivial_default_constructor,
2456 has_trivial_copy_constructor, has_trivial_copy_assign): Add deprecated
2458 * testsuite/20_util/has_trivial_copy_assign/requirements/
2459 explicit_instantiation.cc: Use -Wno-deprecated.
2460 * testsuite/20_util/has_trivial_copy_assign/requirements/typedefs.cc:
2462 * testsuite/20_util/has_trivial_copy_assign/value.cc: Likewise.
2463 * testsuite/20_util/has_trivial_copy_constructor/requirements/
2464 explicit_instantiation.cc: Likewise.
2465 * testsuite/20_util/has_trivial_copy_constructor/requirements/
2466 typedefs.cc: Likewise.
2467 * testsuite/20_util/has_trivial_copy_constructor/value.cc: Likewise.
2468 * testsuite/20_util/has_trivial_default_constructor/requirements/
2469 explicit_instantiation.c: Likewise.
2470 * testsuite/20_util/has_trivial_default_constructor/requirements/
2471 typedefs.cc: Likewise.
2472 * testsuite/20_util/has_trivial_default_constructor/value.cc:
2474 * testsuite/20_util/pair/requirements/dr801.cc: Replace deprecated
2476 * testsuite/20_util/tuple/requirements/dr801.cc: Likewise.
2477 * testsuite/util/testsuite_common_types.h: Likewise.
2479 2015-01-08 Jonathan Wakely <jwakely@redhat.com>
2481 * include/bits/hashtable_policy.h: Use __bool_constant.
2483 2015-01-07 Jonathan Wakely <jwakely@redhat.com>
2485 * libsupc++/Makefile.am: Compile del_ops.cc as C++14.
2486 * libsupc++/Makefile.in: Regenerate.
2488 2015-01-06 Jonathan Wakely <jwakely@redhat.com>
2490 * config/abi/pre/gnu.ver: Fix version conflict for std::locale::name().
2492 2015-01-05 Jakub Jelinek <jakub@redhat.com>
2494 Update copyright years.
2496 2015-01-04 Jonathan Wakely <jwakely@redhat.com>
2499 * testsuite/18_support/exception_ptr/64241.cc: Use
2500 dg-require-atomic-builtins.
2502 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
2504 * testsuite/21_strings/basic_string/modifiers/64422.cc: Fix copyright
2507 2015-01-02 Tim Shen <timshen@google.com>
2510 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Copy the
2511 iterator, since the original one shouldn't be mutated.
2513 2015-01-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
2516 * src/c++98/misc-inst.cc (string::erase): Add missing overloads.
2517 (string::insert): Likewise.
2518 (string::replace): Likewise.
2519 (wstring::erase): Likewise.
2520 (wstring::insert): Likewise.
2521 (wstring::replace): Likewise.
2522 * testsuite/21_strings/basic_string/modifiers/64422.cc: New testcase.
2524 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
2527 * doc/doxygen/user.cfg.in: Set correct TAB_SIZE.
2529 2015-01-02 Jonathan Wakely <jwakely@redhat.com>
2532 * testsuite/21_strings/basic_string/numeric_conversions/char/dr1261.cc:
2533 Revert removal of dg-require-string-conversions.
2534 * testsuite/21_strings/basic_string/numeric_conversions/char/stod.cc:
2536 * testsuite/21_strings/basic_string/numeric_conversions/char/stof.cc:
2538 * testsuite/21_strings/basic_string/numeric_conversions/char/stoi.cc:
2540 * testsuite/21_strings/basic_string/numeric_conversions/char/stol.cc:
2542 * testsuite/21_strings/basic_string/numeric_conversions/char/stold.cc:
2544 * testsuite/21_strings/basic_string/numeric_conversions/char/stoll.cc:
2546 * testsuite/21_strings/basic_string/numeric_conversions/char/stoul.cc:
2548 * testsuite/21_strings/basic_string/numeric_conversions/char/
2549 stoull.cc: Likewise.
2550 * testsuite/21_strings/basic_string/numeric_conversions/char/
2551 to_string.cc: Likewise.
2553 Copyright (C) 2015 Free Software Foundation, Inc.
2555 Copying and distribution of this file, with or without modification,
2556 are permitted in any medium without royalty provided the copyright
2557 notice and this notice are preserved.