1 2013-09-24 Tim Shen <timshen91@gmail.com>
3 * include/Makefile.am: Add regex.tcc.
4 * include/Makefile.in: Regenerate.
5 * include/bits/regex.h: Remove definitions to regex.tcc.
6 * include/bits/regex.tcc: New.
7 (match_results::format, regex_replace): Implement;
8 * include/bits/regex_compiler.h: Move _M_flags to the top of class
9 member list, because other members' initialization depend on it.
10 * include/bits/regex_compiler.tcc
11 (_Compiler<>::_Compiler): Adjust member initializations.
12 (_Compiler<>::_M_quantifier): Fix ungreedy interval quantifier.
13 * include/bits/regex_executor.h: Remove _RegexT from _*Executor classes.
14 In the future, all regex classes may refactor to *Impl style.
15 * include/bits/regex_executor.tcc (_Executor::_M_set_results):
16 Merge identical code from _*Executor classes.
17 * testsuite/28_regex/algorithms/regex_match/extended/
18 string_dispatch_01.cc (fake_match<>): Adjust the hacking-style testcase
19 caller for new __get_executors interface.
20 * testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
22 * testsuite/28_regex/match_results/format.cc: New.
23 * testsuite/28_regex/traits/char/lookup_collatename.cc: Remove digraph
25 * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.
27 2013-09-23 Paul Pluzhnikov <ppluzhnikov@google.com>
29 * src/c++11/snprintf_lite.cc (__concat_size_t): Use
30 unsigned long long conditionally.
32 2013-09-23 Paul Pluzhnikov <ppluzhnikov@google.com>
34 * src/c++11/snprintf_lite.cc (__concat_size_t): Use only
35 std::__int_to_char<unsigned long long>()
37 2013-09-21 Paul Pluzhnikov <ppluzhnikov@google.com>
39 * include/bits/functexcept.h (__throw_out_of_range_fmt): New.
40 * src/c++11/functexcept.cc (__throw_out_of_range_fmt): New.
41 * src/c++11/snprintf_lite.cc: New.
42 * src/c++11/Makefile.am: Add snprintf_lite.cc.
43 * src/c++11/Makefile.in: Regenerate.
44 * config/abi/pre/gnu.ver: Add _ZSt24__throw_out_of_range_fmtPKcz.
45 * include/std/array (at): Use __throw_out_of_range_fmt.
46 * include/debug/array (at): Likewise.
47 * include/profile/array (at): Likewise.
48 * include/std/bitset (_M_check_initial_position, _M_check): New.
49 (bitset::bitset): Use _M_check_initial_position.
50 (set, reset, flip, test): Use _M_check.
51 * include/ext/vstring.h (_M_check, at): Use __throw_out_of_range_fmt.
52 * include/bits/stl_vector.h (_M_range_check): Likewise.
53 * include/bits/stl_bvector.h (_M_range_check): Likewise.
54 * include/bits/stl_deque.h (_M_range_check): Likewise.
55 * include/bits/basic_string.h (_M_check, at): Likewise.
56 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust.
57 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise.
58 * testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
60 * testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
62 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Likewise.
63 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
64 * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
66 * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
68 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise.
69 * testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc:
71 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
72 * testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Likewise.
73 * testsuite/util/exception/safety.h (generate): Use __throw_out_of_range_fmt.
75 2013-09-20 Jakub Jelinek <jakub@redhat.com>
78 * testsuite/lib/libstdc++.exp (libstdc++_init): Prepend
79 -fdiagnostics-color=never to cxxflags.
81 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
84 * include/bits/allocator.h (__alloc_swap::_S_do_it,
85 __shrink_to_fit_aux::_S_do_it): Mark as noexcept.
86 * include/bits/basic_string.h (basic_string::_Rep) [_S_empty_rep,
87 _M_is_leaked, _M_is_shared, _M_set_leaked, _M_set_sharable,
88 _M_set_length_and_sharable, _M_dispose]: Likewise.
89 (basic_string::_Alloc_hider::_Alloc_hider): Likewise.
90 (basic_string) [_M_data, _M_rep, _M_ibegin, _M_iend, _M_limit,
91 _M_disjunct, _M_copy, _M_move, _M_assign, _S_copy_chars, _S_compare,
92 _S_empty_rep, shrink_to_fit, operator[] const, front const, back const]:
94 [clear]: Link to PR 56166.
95 [swap]: Link to PR 58265.
96 * include/bits/stl_deque.h (_Deque_iterator) [_S_buffer_size,
97 _Deque_iterator, _M_const_cast, operator*, operator->, operator++,
98 operator--, operator+=, operator+, operator-=, operator-, operator[],
99 _M_set_node]: Mark as noexcept.
100 (operator==(const _Deque_iterator&, const _Deque_iterator&),
101 operator!=(const _Deque_iterator&, const _Deque_iterator&),
102 operator<(const _Deque_iterator&, const _Deque_iterator&),
103 operator>(const _Deque_iterator&, const _Deque_iterator&),
104 operator<=(const _Deque_iterator&, const _Deque_iterator&),
105 operator>=(const _Deque_iterator&, const _Deque_iterator&),
106 operator-(const _Deque_iterator&, const _Deque_iterator&),
107 operator+(ptrdiff_t, const _Deque_iterator&)): Likewise.
108 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
110 [~_Deque_base, _M_deallocate_node, _M_deallocate_map, _M_destroy_nodes]:
112 (_Deque_base::_Deque_impl) [_Deque_impl(const _Tp_alloc_type&),
113 _Deque_impl(_Tp_alloc_type&&)]: Likewise.
114 (deque) [_S_buffer_size, operator=(deque&&), shrink_to_fit, operator[],
115 front, back, pop_front, pop_back, swap]: Likewise.
116 [deque(), deque(const allocator_type&)]: Merge.
117 * include/debug/deque (deque) [operator=(deque&&), shrink_to_fit,
118 operator[], front, back, pop_front, pop_back, swap]: Mark as noexcept.
119 * include/profile/deque (deque) [operator=(deque&&), operator[], front,
120 back, pop_front, pop_back, swap]: Likewise.
121 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
123 * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
125 * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
127 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
130 2013-09-20 Alan Modra <amodra@gmail.com>
132 * configure: Regenerate.
134 2013-09-19 Marc Glisse <marc.glisse@inria.fr>
137 * include/bits/stl_tree.h (_Rb_tree_node_base) [_S_minimum, _S_maximum]:
139 (_Rb_tree_iterator) [_Rb_tree_iterator, operator*, operator->,
140 operator++, operator--, operator==, operator!=]: Likewise.
141 (_Rb_tree_const_iterator) [_Rb_tree_const_iterator, _M_const_cast,
142 operator*, operator->, operator++, operator--, operator==, operator!=]:
144 (operator==(const _Rb_tree_iterator&, const _Rb_tree_const_iterator&),
145 operator!=(const _Rb_tree_iterator&, const _Rb_tree_const_iterator&)):
147 (_Rb_tree) [_M_put_node, _M_destroy_node, _M_root, _M_leftmost,
148 _M_rightmost, _M_begin, _M_end, _S_left, _S_right, _S_minimum,
149 _S_maximum]: Likewise.
150 * include/debug/string (basic_string) [basic_string(const _Allocator&),
151 shrink_to_fit, operator[], pop_back]: Likewise.
152 * include/ext/vstring.h (__versa_string) [_M_limit, _M_disjunct,
153 _M_ibegin, _M_iend, __versa_string(const _Alloc&),
154 operator=(__versa_string&&), shrink_to_fit, operator[], front,
155 back, assign(__versa_string&&), swap]: Likewise.
156 (__versa_string) [__versa_string(), __versa_string(const _Alloc&)]:
159 2013-09-18 Marc Glisse <marc.glisse@inria.fr>
162 * include/bits/stl_iterator.h (__normal_iterator) [__normal_iterator,
163 _M_const_cast, operator*, operator->, operator++, operator--,
164 operator[], operator+=, operator+, operator-=, operator-, base]:
166 (operator==(const __normal_iterator&, const __normal_iterator&),
167 operator!=(const __normal_iterator&, const __normal_iterator&),
168 operator<(const __normal_iterator&, const __normal_iterator&),
169 operator>(const __normal_iterator&, const __normal_iterator&),
170 operator<=(const __normal_iterator&, const __normal_iterator&),
171 operator>=(const __normal_iterator&, const __normal_iterator&),
172 operator-(const __normal_iterator&, const __normal_iterator&),
173 operator+(difference_type, const __normal_iterator&)): Likewise.
174 * include/bits/stl_list.h (list) [splice, _M_check_equal_allocators]:
176 (list::_M_check_equal_allocators): Abort instead of throwing.
177 * include/debug/array (array) [operator[], front, back]: Mark as
179 * include/profile/array (array) [operator[], front, back]: Likewise.
180 * include/std/array (array) [operator[], front, back]: Likewise.
181 * include/debug/list (list::splice): Likewise.
182 * include/profile/list (list::splice): Likewise.
183 * testsuite/23_containers/list/operations/5.cc: Remove file.
184 * testsuite/23_containers/list/operations/5.h: Likewise.
186 2013-09-18 Tim Shen <timshen91@gmail.com>
188 * include/bits/regex.h: Add friend classes.
189 (match_results<>::position, regex_iterator<>::operator++):
190 Implement position specification in regex_iterator.
191 (regex_match<>, regex_search<>):
192 Move match_results initializations to these function. Remove `todo`.
193 * include/bits/regex_compiler.tcc:
194 (_Compiler<>::_M_quantifier): Fix greedy/ungreedy of interval matching.
195 * include/bits/regex_constants.h:
196 Fix indentation. Change match_flag_type to enum type.
197 * include/bits/regex_executor.h:
198 Merge identical code to the base class _Executor.
199 Support flags in regex_constants.
200 * include/bits/regex_executor.tcc: Likewise.
201 * include/bits/regex_scanner.h: Add comments.
202 * include/bits/regex_scanner.tcc: Same.
203 * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
205 * testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: New.
206 * testsuite/28_regex/iterators/regex_iterator/char/
207 string_position_01.cc: Remove `xfail`.
208 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
209 Remove `xfail` and make the case really work.
211 2013-09-18 Paolo Carlini <paolo.carlini@oracle.com>
213 * testsuite/performance/25_algorithms/search_n.cc: Fix typo.
215 2013-09-18 Marc Glisse <marc.glisse@inria.fr>
218 * include/bits/list.tcc (_List_base::_M_clear, list::erase): Mark as
220 * include/bits/stl_list.h (_List_iterator) [_List_iterator,
221 _M_const_cast, operator*, operator->, operator++, operator--,
222 operator==, operator!=]: Likewise.
223 (_List_const_iterator) [_List_const_iterator, _M_const_cast, operator*,
224 operator->, operator++, operator--, operator==, operator!=]: Likewise.
225 (operator==(const _List_iterator&, const _List_const_iterator&),
226 operator!=(const _List_iterator&, const _List_const_iterator&)):
228 (_List_impl) [_List_impl(const _Node_alloc_type&),
229 _List_impl(_Node_alloc_type&&)]: Likewise.
230 (_List_base) [_M_put_node, _List_base(const _Node_alloc_type&),
231 _List_base(_List_base&&), _M_clear, _M_init]: Likewise.
232 (list) [list(), list(const allocator_type&)]: Merge.
233 (list) [list(const allocator_type&), front, back, pop_front, pop_back,
234 erase, _M_erase]: Mark as noexcept.
235 * include/debug/list (list) [list(const _Allocator&), front, back,
236 pop_front, pop_back, _M_erase, erase]: Likewise.
237 * include/profile/list (list) [list(const _Allocator&), front, back,
238 pop_front, pop_back, erase]: Likewise.
239 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
241 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
243 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
245 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
248 2013-09-17 Marc Glisse <marc.glisse@inria.fr>
251 * include/bits/stl_vector.h (vector::vector(),
252 vector::vector(const allocator_type&)): Merge.
253 (_Vector_impl::_Vector_impl(_Tp_alloc_type const&),
254 _Vector_impl::_Vector_impl(_Tp_alloc_type&&),
255 _Vector_impl::_M_swap_data,
256 _Vector_base::_Vector_base(const allocator_type&),
257 _Vector_base::_Vector_base(allocator_type&&),
258 _Vector_base::_Vector_base(_Vector_base&&), _Vector_base::~_Vector_base,
259 vector::vector(const allocator_type&), vector::operator[],
260 vector::operator[] const, vector::front, vector::front const,
261 vector::back, vector::back const, vector::pop_back,
262 vector::_M_erase_at_end): Mark as noexcept.
263 * include/debug/vector (vector::vector(const _Allocator&),
264 vector::operator[], vector::operator[] const, vector::front,
265 vector::front const, vector::back, vector::back const, vector::pop_back,
266 _M_requires_reallocation, _M_update_guaranteed_capacity,
267 _M_invalidate_after_nth): Mark as noexcept.
268 * include/profile/vector (vector::vector(const _Allocator&),
269 vector::operator[], vector::operator[] const, vector::front,
270 vector::front const, vector::back, vector::back const): Mark as
272 (vector::vector(vector&&, const _Allocator&)): Remove wrong noexcept.
273 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
275 * testsuite/23_containers/vector/requirements/dr438/
276 constructor_1_neg.cc: Likewise.
277 * testsuite/23_containers/vector/requirements/dr438/
278 constructor_2_neg.cc: Likewise.
279 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
282 2013-09-14 Tim Shen <timshen91@gmail.com>
284 * include/bits/regex.h (regex_match<>, regex_search<>):
285 Change regex_executor caller. Now use their return value instead
286 of checking __m[0].matched to find out if it's successful.
287 (regex_search<>): Move the search logic to regex_executor.
288 * include/bits/regex_automaton.h: Add some new _Opcode. Refactor
290 * include/bits/regex_automaton.tcc: Add DEBUG dump for new
291 _Opcode. Refactor _NFA::_M_insert_*.
292 * include/bits/regex_compiler.h (_Compiler<>::_M_get_nfa):
293 Use make_shared instead of construct by hand.
294 * include/bits/regex_compiler.tcc: Implement _Compiler<>::_M_assertion.
295 * include/bits/regex_constants.h: Fix indentation and line breaking.
296 * include/bits/regex_executor.h: Add _ResultsEntry to support
297 greedy/ungreedy mode. Move regex_search logic here.
298 * include/bits/regex_executor.tcc: Implement assertions and
299 greedy/ungreedy matching.
300 * include/bits/regex_scanner.h: Add a new token _S_token_ungreedy.
301 * include/bits/regex_scanner.tcc: Parse a new token _S_token_ungreedy.
302 * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc: New.
303 * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: New.
304 * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
307 2013-09-13 Paolo Carlini <paolo.carlini@oracle.com>
310 * include/ext/sso_string_base.h (__sso_string_base<>::
311 __sso_string_base(__sso_string_base&&)): Fix thinkos about
312 _M_length vs _M_set_length.
313 * testsuite/ext/vstring/cons/58415-1.cc: New.
314 * testsuite/ext/vstring/cons/58415-2.cc: Likewise.
316 2013-09-12 Paolo Carlini <paolo.carlini@oracle.com>
319 * include/bits/stl_iterator.h (__normal_iterator<>::operator[],
320 operator+=, operator+, operator-=, operator-): Take the argument
322 * testsuite/24_iterators/normal_iterator/58403.cc: New.
324 2013-09-11 Mitsuru Kariya <kariya_mitsuru@hotmail.com>
325 Chris Jefferson <chris@bubblescope.net>
328 * include/bits/stl_algo.h (search_n): Fix to guarantee a number
329 of comparisons <= number of elements in the range.
330 * testsuite/25_algorithms/search_n/58358.cc: New.
331 * testsuite/25_algorithms/search_n/iterator.cc: Extend.
333 2013-09-10 Ed Smith-Rowland <3dw4rd@verizon.net>
335 * testsuite/28_regex/traits/wchar_t/value.cc: Change template args
336 from char to wchar_t, literals from 'x' to L'x'.
338 2013-09-10 Kai Tietz <ktietz@redhat.com>
341 * config/abi/pre/gnu-versioned-namespace.ver: Add thunk _ZTv0_n12_NS*
344 2013-09-07 Paolo Carlini <paolo.carlini@oracle.com>
347 * include/bits/stl_algobase.h (copy_backward): Fix documentation
350 2013-09-05 Tim Shen <timshen91@gmail.com>
352 * include/bits/regex_automaton.h: Add dummy node type. Rewrite
354 * include/bits/regex_automaton.tcc: Implement them.
355 * include/bits/regex_compiler.h: Rewrite _Compiler to use new
356 _StateSeq interfaces.
357 * include/bits/regex_compiler.tcc: Implement them.
358 * include/bits/regex_scanner.h: Add word boundry assertion token.
359 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
360 Support word boundry.
361 * testsuite/28_regex/algorithms/regex_match/basic/
362 string_range_02_03.cc: Remove "xfail".
363 * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
365 * testsuite/28_regex/algorithms/regex_match/extended/
366 string_range_02_03.cc: Likewise.
367 * testsuite/28_regex/algorithms/regex_match/extended/
368 cstring_questionmark.cc: Remove xfail and get correct length of
370 * testsuite/28_regex/algorithms/regex_match/extended/
371 string_range_00_03.cc: Likewise.
372 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
374 * testsuite/28_regex/algorithms/regex_match/extended/cstring_range.cc:
376 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc: New.
378 2013-09-03 Paolo Carlini <paolo.carlini@oracle.com>
381 * include/bits/random.tcc (negative_binomial_distribution<>::
382 operator()(_UniformRandomNumberGenerator&, const param_type&)):
383 Fix typo in template argument.
384 * testsuite/26_numerics/random/negative_binomial_distribution/
385 operators/58302.cc: New.
387 2013-09-02 Tim Shen <timshen91@gmail.com>
389 * regex_automaton.h: Rearrange _NFA's layout.
390 * include/bits/regex_compiler.h: Add _AnyMatcher and _CharMatcher.
391 Rearrange _BracketMatcher's layout.
392 (_BracketMatcher<>::_M_add_char): Use set instead of vector for
394 (_BracketMatcher<>::_M_add_collating_element): Likewise.
395 (_BracketMatcher<>::_M_make_range): Likewise.
396 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom): Use
397 apropriate constructors of matchers above.
398 * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
400 * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: New.
401 * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
403 * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
405 * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: New.
406 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc:
408 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: New.
410 2013-08-30 François Dumont <fdumont@gcc.gnu.org>
413 * include/debug/functions.h (__foreign_iterator_aux4): Use
414 sequence const_pointer as common type to compare pointers. Add a
415 fallback overload in case pointers cannot be cast to sequence
417 * testsuite/23_containers/vector/modifiers/insert/58148.cc: New.
419 2013-08-30 François Dumont <fdumont@gcc.gnu.org>
422 * include/debug/macros.h (__glibcxx_check_partitioned_lower): Add
423 __gnu_debug::__base calls on iterators passed to internal debug
425 (__glibcxx_check_partitioned_lower_pred): Likewise.
426 (__glibcxx_check_partitioned_upper): Likewise.
427 (__glibcxx_check_partitioned_upper_pred): Likewise.
428 (__glibcxx_check_sorted): Likewise.
429 (__glibcxx_check_sorted_pred): Likewise.
430 (__glibcxx_check_sorted_set): Likewise.
431 (__glibcxx_check_sorted_set_pred): Likewise.
432 * include/debug/functions.h (__check_partitioned_lower):
433 Remove code to detect safe iterators.
434 (__check_partitioned_upper): Likewise.
435 (__check_sorted): Likewise.
437 2013-08-29 Tim Shen <timshen91@gmail.com>
439 * include/bits/regex.h (basic_regex<>::assign): Don't lose _M_traits.
440 (regex_iterator<>::regex_iterator): Return nullptr when regex_search
442 (regex_token_iterator<>::_M_end_of_seq): Should be defined true when
443 _M_result is(not isn't) nullptr.
444 * include/bits/regex_compiler.h: Store _Compiler::_M_traits by reference
446 * include/bits/regex_executor.h (_DFSExecutor<>::_DFSExecutor): Add
447 _M_traits to _DFSExecutor.
448 * include/bits/regex_executor.tcc (__get_executor<>): Pass traits to
450 * testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
452 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
455 2013-08-26 Tim Shen <timshen91@gmail.com>
457 * include/Makefile.am: Add regex_scanner.{h,tcc}.
458 * include/Makefile.in: Regenerate.
459 * include/bits/regex.h (match_search): Handle the `__first == __last`
461 * include/bits/regex_compiler.h: Move _Scanner...
462 * include/bits/regex_scanner.h: ...to here. New.
463 * include/bits/regex_compiler.tcc: Move _Scanner...
464 * include/bits/regex_scanner.tcc: ...to here, too. New.
465 * include/bits/regex_executor.tcc: Use value instead of reference for
467 * include/std/regex: Add regex_scanner.h
468 * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: New.
469 * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc: New.
470 * testsuite/28_regex/algorithms/regex_match/ecma/cstring_hex.cc: New.
471 * testsuite/28_regex/algorithms/regex_match/ecma/empty_range.cc: New.
472 * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc: New.
474 2013-08-22 Tim Shen <timshen91@gmail.com>
476 * include/bits/regex.h: Replace 8 spaces in indentation with a tab.
477 * include/bits/regex_automaton.h: Same.
478 * include/bits/regex_automaton.tcc: Same.
479 * include/bits/regex_compiler.h: Same.
480 * include/bits/regex_compiler.tcc: Same.
481 * include/bits/regex_constants.h: Same.
482 * include/bits/regex_executor.h: Same.
483 * include/bits/regex_executor.tcc: Same.
485 2013-08-22 Tim Shen <timshen91@gmail.com>
487 * include/bits/regex.h: Executor caller.
488 * include/bits/regex_executor.h: Fix empty grouping problem.
489 * include/bits/regex_executor.tcc: Same.
490 * testsuite/28_regex/algorithms/regex_match/ecma/cstring_emptygroup.cc:
493 2013-08-20 Phil Muldoon <pmuldoon@redhat.com>
496 http://sourceware.org/bugzilla/show_bug.cgi?id=15195
498 * python/libstdcxx/v6/printers.py (Printer.__call__): If a value
499 is a reference, fetch referenced value.
500 (RxPrinter.invoke): Ditto.
501 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add -O0
502 flag. Add referenced value tests.
504 2013-08-20 Tim Shen <timshen91@gmail.com>
506 * include/bits/regex_constants.h: Add underlying `unsigned int` for
507 enum syntax_option_type.
509 2013-08-18 Tim Shen <timshen91@gmail.com>
511 * include/bits/regex_automaton.h: _S_opcode_backref.
512 * include/bits/regex_automaton.tcc: Backref automaton support.
513 * include/bits/regex_compiler.tcc: Parsing support.
514 * include/bits/regex_executor.h: Add _M_traits for _DFSExecutor.
515 * include/bits/regex_executor.tcc: Add _S_opcode_backref support.
516 * testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New.
518 2013-08-16 Tim Shen <timshen91@gmail.com>
520 * include/bits/regex.h (regex_traits<>::transform_primary):
521 Avoid past-the-end dereferences.
523 2013-08-14 Paolo Carlini <paolo.carlini@oracle.com>
526 * include/bits/basic_string.h (basic_string<>::operator[]): Fix
527 _GLIBCXX_DEBUG_PEDASSERT check vs C++11.
528 * include/ext/vstring.h: Likewise.
529 * testsuite/21_strings/basic_string/element_access/char/58163.cc:
531 * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
533 * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
534 * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
536 2013-08-14 Uros Bizjak <ubizjak@gmail.com>
538 * src/c++98/compatibility.cc (_ZTIe): Use
539 reinterpret_cast<const cast *> to avoid -Wcast-qual warnings.
543 2013-08-09 Tim Shen <timshen91@gmail.com>
545 * include/bits/regex_constants.h: Change syntax_option_type to enum
548 2013-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
550 * include/bits/regex.h: Replace _A, _B, _C, _R by _Ap, _Bp, _Cp, _Rp.
552 2013-08-08 François Dumont <fdumont@gcc.gnu.org>
554 * include/bits/hashtable_policy.h (_Hashtable_alloc): New.
555 (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than
557 (_Before_begin<>): Remove.
558 * include/bits/hashtable.h (_Hashtable): Inherit from
559 _Hashtable_alloc and adapt. Restore _M_before_begin field.
560 * src/c++11/hashtable_c++0x.cc: Add ext/alloc_traits.h include.
561 * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt
562 access to hashtable before begin.
563 * testsuite/23_containers/unordered_set/
564 not_default_constructible_hash_neg.cc: Adapt dg-error line number.
565 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
568 2013-08-07 Tim Shen <timshen91@gmail.com>
570 * include/Makefile.am: Adjust to new files.
571 * include/Makefile.in: Regenerate.
572 * include/bits/regex.h: Adjust to new interfaces.
573 * include/bits/regex_automaton.h: New.
574 * include/bits/regex_automaton.tcc: New.
575 * include/bits/regex_compiler.h: Adjust to new files.
576 * include/bits/regex_compiler.tcc: New.
577 * include/bits/regex_constants.h: Tail spaces.
578 * include/bits/regex_error.h: Likewise.
579 * include/bits/regex_executor.h: New.
580 * include/bits/regex_executor.tcc: New.
581 * include/std/regex: Adjust to new files.
582 * testsuite/28_regex/algorithms/regex_match/extended/
583 string_dispatch_01.cc: Adjust to new interfaces.
585 2013-08-07 Paolo Carlini <paolo.carlini@oracle.com>
587 * include/ext/atomicity.h: Add #pragma GCC system_header.
589 2013-08-07 Paolo Carlini <paolo.carlini@oracle.com>
592 * include/bits/random.h (cauchy_distribution<>::min,
593 extreme_value_distribution<>::min, normal_distribution<>::min,
594 student_t_distribution<>::min): Fix.
595 * include/ext/random (normal_mv_distribution<>::min): Likewise.
596 * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
598 testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
600 * testsuite/26_numerics/random/extreme_value_distribution/cons/
602 testsuite/26_numerics/random/extreme_value_distribution/cons/
603 default.cc: Likewise.
604 * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
606 * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
608 * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc:
610 * testsuite/26_numerics/random/student_t_distribution/cons/default.cc:
612 * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
613 * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
615 * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc:
617 * testsuite/26_numerics/random/exponential_distribution/cons/default.cc:
620 * testsuite/ext/von_mises_distribution/*: Move to...
621 * testsuite/ext/random/von_mises_distribution/*: ... here.
622 * testsuite/ext/triangular_distribution/*: Move to...
623 * testsuite/ext/random/triangular_distribution/*: ... here.
625 2013-08-06 Caroline Tice <cmtice@google.com>
627 * fragment.am: Add XTEMPLATE_FLAGS.
628 * configure.ac: Add definitions for --enable-vtable-verify.
629 * acinclude.m4: Add --enable-vtable-verify and
630 --disable-vtable-verify; define --enable-vtable-verify; define
631 VTV_CXXFLAGS, VTV_PCH_CXXFLAGS and VTV_CXXLINKFLAGS.
632 * config/abi/pre/gnu.ver: Export symbols for vtable verification.
633 * libsupc++/Makefile.am: Define vtv_sources and add it to
634 libsupc___la_SOURCES and libsupc__convenience_la_SOURCES.
635 * libsupc++/vtv_stubs.cc: New file.
636 * include/Makefile.am: Add VTV_PCH_CXXFLAGS to PCHFLAGS.
637 * src/Makefile.am: Add VTV_CXXFLAGS to AM_CXXFLAGS; add
638 VTV_CXXLINKFLAGS to CXXLINK.
639 * src/c++98/Makefile.am: Comment out XTEMPLATE_FLAGS; add VTV_CXXFLAGS
640 to AM_CXXFLAGS; add VTV_CXXXLINKFLAGS to CXXLINK.
641 * src/C++11/Makefile.am: Ditto.
642 * doc/xml/manual/configure.xml: Add entry for --enable-vtable-verify.
643 * scripts/testsuite_flags.in: Add cxxvtvflags to Usage; cause
644 cxxvtvflags to use VTV_CXXFLAGS and VTV_CXXLINKFLAGS.
645 * testsuite/lib/libstdc++.exp: Add cxxvtvflags; add code to locate
646 libvtv if --enable-vtable-verify was used; set cxxvtvflags; add
647 cxxvtvflags to cxx_final.
648 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
649 -fvtable-verify=none to compiler flags.
650 * testsuite/17_intro/freestanding.cc: Add -fvtable-verify=none
652 * configure: Regenerated.
653 * Makefile.in: Regenerated.
654 * python/Makefile.in: Regenerated.
655 * include/Makefile.in: Regenerated.
656 * libsupc++/Makefile.in: Regenerated.
657 * config.h.in: Regenerated.
658 * po/Makefile.in: Regenerated.
659 * src/Makefile.in: Regenerated.
660 * src/c++98/Makefile.in: Regenerated.
661 * src/c++11/Makefile.in: Regenerated.
662 * doc/Makefile.in: Regenerated.
663 * testsuite/Makefile.in: Regenerated.
665 2013-08-06 Paolo Carlini <paolo.carlini@oracle.com>
667 Revert the last commit.
669 2013-08-06 François Dumont <fdumont@gcc.gnu.org>
671 * include/bits/hashtable_policy.h (_Hashtable_alloc): New.
672 (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than
674 (_Before_begin<>): Remove.
675 * include/bits/hashtable.h (_Hashtable): Inherit from
676 _Hashtable_alloc and adapt. Restore _M_before_begin field.
677 * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt
678 access to hashtable before begin.
679 * testsuite/23_containers/unordered_set/
680 not_default_constructible_hash_neg.cc: Adapt dg-error line number.
681 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
684 2013-08-03 Tim Shen <timshen91@gmail.com>
686 Implement bracket expression.
687 * include/bits/regex.h: Remove constexpr from "|=", etc.
688 * include/bits/regex_compiler.h: Parse bracket expression.
689 * include/bits/regex_nfa.h: _Comparator and _BracketMatcher(old
691 * include/bits/regex_nfa.tcc: Implement them.
692 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
693 from regex_search to regex_match.
694 * testsuite/28_regex/algorithms/regex_match/extended/
695 cstring_bracket_01.cc: New.
697 2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
699 * include/debug/functions.h (__foreign_iterator_aux4):
700 Initialize __l and __ge.
702 2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
705 * include/debug/functions.h: Include <bits/move.h>; minor formatting
707 (__foreign_iterator_aux4): Declare __l and __ge constexpr.
708 * include/debug/safe_iterator.h (_Safe_iterator<>::operator->):
710 * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
711 operator->): Likewise.
713 2013-08-01 François Dumont <fdumont@gcc.gnu.org>
716 * include/debug/formatter.h (_Debug_msg_id): Add
717 __msg_insert_itself_range entry.
718 * include/debug/functions.h (_Insert_range_from_self_is_safe<>):
719 New, indicate container types supporting self range insertion in
721 (__foreign_iterator): New, check if an iterator points to a given
723 * include/debug/macros.h (__glibcxx_check_insert_range): Add check
724 using __foreign_iterator.
725 (__gibcxx_check_insert_range_after): Likewise.
726 * include/debug/string (_Insert_range_from_self_is_safe<>):
727 Partially specialized to mark __gnu_debug::basic_string<> as
728 supporting self range insert.
729 * include/debug/list (_Insert_range_from_self_is_safe<>):
730 Partially specialized to mark std::list as supporting self range
731 insert if _GLIBCXX_DEBUG_PEDANTIC is not defined.
732 * include/debug/forward_list (_Insert_range_from_self_is_safe<>):
734 * src/c++11/debug.cc (_S_debug_messages): Add
735 __msg_insert_itself_range_entry message.
736 (_Error_formatter::_Parameter::_M_print_description): Display
737 iterator sequence address rather than sequence address when the
738 parameter type is an iterator.
739 (_Error_formatter::_M_print_word): Enhance behavior when
740 displaying a word with an appended '\n'.
741 * testsuite/util/debug/checks.h (check_insert4<>): New.
742 * testsuite/23_containers/deque/debug/insert5_neg.cc: New.
743 * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
744 * testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise.
745 * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
746 * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
747 * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
750 2013-08-01 Fabien Chêne <fabien@gcc.gnu.org>
753 * include/tr1/cmath: Remove pow(double,double) overload, remove a
754 duplicated comment about DR 550. Add a comment to explain the
756 * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.
758 2013-07-31 Tim Shen <timshen91@gmail.com>
760 Thompson matcher refactored. Fix grouping problem.
761 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
762 * include/bits/regex_compiler.h: Tweak for auto switching.
763 * include/bits/regex_grep_matcher.h: Class structure.
764 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
765 matcher) refactoring.
766 * include/bits/regex_nfa.h: Change _Results's interfaces.
767 * include/std/regex: Includes <map> and <queue>.
768 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
770 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
772 * testsuite/28_regex/algorithms/regex_match/extended/
773 string_dispatch_01.cc: New.
775 2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
778 * include/bits/stl_bvector.h: Use friend struct hash intead of
779 friend class hash to work around useless warnings produced by
781 * include/std/bitset: Likewise.
783 2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
785 * src/c++11/functexcept.cc: Do not include the whole <regex>.
786 * src/c++11/regex.cc: Likewise.
788 2013-07-31 Tim Shen <timshen91@gmail.com>
792 2013-07-31 Tim Shen <timshen91@gmail.com>
794 Thompson matcher refactored. Fix grouping problem.
795 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
796 * include/bits/regex_compiler.h: Tweak for auto switching.
797 * include/bits/regex_grep_matcher.h: Class structure.
798 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
799 matcher) refactoring.
800 * include/bits/regex_nfa.h: Change _Results's interfaces.
801 * include/std/regex: Includes <map> and <queue>.
802 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
804 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
806 * testsuite/28_regex/algorithms/regex_match/extended/
807 string_dispatch_01.cc: New.
809 2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
813 2013-07-30 Tim Shen <timshen91@gmail.com>
815 Thompson matcher refactored. Fix grouping problem.
816 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
817 * include/bits/regex_compiler.h: Tweak for auto switching.
818 * include/bits/regex_grep_matcher.h: Class structure.
819 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
820 matcher) refactoring.
821 * include/bits/regex_nfa.h: Change _Results's interfaces.
822 * include/std/regex: Includes <map> and <queue>.
823 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
825 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
827 * testsuite/28_regex/algorithms/regex_match/extended/
828 string_dispatch_01.cc: New.
830 2013-07-29 Nathan Froyd <froydnj@gcc.gnu.org>
832 * include/std/atomic (compare_exchange_weak, compare_exchange_strong):
833 Add call to __cmpexch_failure_order.
834 * testsuite/util/testsuite_common_types.h
835 (compare_exchange_order_lowering): New generator.
836 * testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
839 2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
841 * include/std/complex (pow(const complex<>&, int)): Enable in
843 * testsuite/26_numerics/complex/dr844.cc: Adjust.
844 * doc/xml/manual/intro.xml: Update.
846 2013-07-25 Tim Shen <timshen91@gmail.com>
848 Add documents and comments.
849 * include/bits/regex.h: Documents and comments.
850 * include/bits/regex_grep_matcher.h: Likewise.
851 * include/bits/regex_grep_matcher.tcc: Likewise.
852 * testsuite/28_regex/iterators/regex_iterator/char/
853 string_position_01.cc: New.
855 2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
858 * doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
861 2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
863 * include/bits/random.h (random_device): Avoid using the FILE type.
864 * include/std/random: Do not include <cstdio>.
865 * src/c++11/random.cc: ... include it here.
866 (random_device::_M_init, random_device::_M_fini,
867 random_device::_M_getval): Cast back and forth void* and FILE*.
869 2013-07-24 Tim Shen <timshen91@gmail.com>
871 Reimplment matcher using Depth-first search(backtracking).
874 * include/bits/regex.h: regex_match() and regex_search().
875 * include/bits/regex_cursor.h: Fix _M_set_pos().
876 * include/bits/regex_grep_matcher.h: add _M_dfs_match().
877 * include/bits/regex_grep_matcher.tcc: Implement it.
878 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: New.
879 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: New.
880 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
883 2013-07-23 Tim Shen <timshen91@gmail.com>
885 Implement regex_iterator and regex_token_iterator.
886 * include/bits/regex.h: regex_iterator and regex_token_iterator.
887 * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
889 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
891 * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
893 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
896 2013-07-23 Paolo Carlini <paolo.carlini@oracle.com>
898 * include/std/random: Add back <cstdio> include.
899 * src/c++11/random.cc: Don't include <cstdio> here.
901 2013-07-22 Jason Merrill <jason@redhat.com>
904 * libsupc++/atexit_thread.cc (run): Delete cleanup elts.
906 2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
909 * src/c++11/random.cc (random_device::_M_getval): If possible, use
910 read instead of std::fread.
911 * include/std/random: Do not include <cstdio> unnecessarily.
913 2013-07-21 Tim Shen <timshen91@gmail.com>
915 Partially implement regex_search.
916 * include/bits/regex.h: regex_search.
917 * include/bits/regex_grep_matcher.h: _M_search_from_first.
918 * include/bits/regex_grep_matcher.tcc: Implement it.
919 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
921 2013-07-21 Jonathan Wakely <jwakely.gcc@gmail.com>
924 * include/std/condition_variable (condition_variable_any): Move into
925 inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
926 * src/c++11/condition_variable.cc (condition_variable_any): Move
928 * src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
929 * src/Makefile.am: Add new source file.
930 * src/Makefile.in: Regenerate.
932 2013-07-09 Tim Shen <timshen91@gmail.com>
934 Implement class regex_traits.
935 * include/bits/regex.h: Implement lookup_classname and
936 lookup_collatename; modify isctype; partially implement
938 * testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
939 * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
940 * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
941 * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
942 * testsuite/28_regex/traits/wchar_t/isctype.cc: New.
943 * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
944 * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
945 * testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.
947 2013-07-07 Ed Smith-Rowland <3dw4rd@verizon.net>
949 * doc/xml/manual/status_cxx2014.xml: Add links for papers.
951 2013-07-05 François Dumont <fdumont@gcc.gnu.org>
953 * include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward
955 (_MoveReuseOrAllocNode): Remove.
956 (_Insert_base): Take a functor defining how the node is generated.
957 * include/bits/hashtable.h: Adapt.
958 (operator=(initializer_list<value_type>)): Reuse node if any.
959 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
960 Adjust dg-error line number.
961 * testsuite/23_containers/unordered_set/
962 not_default_constructible_hash_neg.cc: Likewise.
964 2013-07-05 Paolo Carlini <paolo.carlini@oracle.com>
966 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
967 Tweak, avoid potential undefined behavior.
968 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
970 * testsuite/23_containers/vector/bool/modifiers/insert/
971 const_iterator.cc: Likewise.
972 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
975 2013-07-04 Veres Lajos <vlajos@gmail.com>
976 Jonathan Wakely <jwakely.gcc@gmail.com>
978 * config/locale/generic/codecvt_members.cc: Fix typo.
979 * configure.host: Likewise.
980 * doc/html/manual/policy_data_structures_design.html: Likewise.
981 * doc/xml/manual/policy_data_structures.xml: Likewise.
982 * include/bits/hashtable.h: Likewise.
983 * include/bits/random.h: Likewise.
984 * include/profile/impl/profiler_trace.h: Likewise.
985 * testsuite/23_containers/deque/cons/2.cc: Likewise.
986 * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
987 * testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise.
988 * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
990 2013-07-04 Ray Chason <chasonr@newsguy.com>
991 Paolo Carlini <paolo.carlini@oracle.com>
994 * include/bits/regex.h (regex_token_iterator<>::operator==,
995 regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
996 regex_token_iterator<>::operator->): Declare const.
998 2013-07-01 Paolo Carlini <paolo.carlini@oracle.com>
1000 * include/bits/stl_list.h (list<>::insert(iterator,
1001 size_type, const value_type&), list<>::insert(iterator,
1002 initializer_list<>), list<>::insert(iterator, _InputIterator,
1003 _InputIterator), list<>::splice(iterator, list&&),
1004 list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
1005 iterator), list<>::splice(iterator, list&, iterator),
1006 list<>::splice(iterator, list&&, iterator, iterator),
1007 list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
1008 signatures to take const_iterator(s).
1009 * include/bits/list.tcc (list<>::insert(const_iterator, size_type,
1010 const value_type&), list<>::insert(const_iterator, _InputIterator,
1011 _InputIterator)): Define.
1012 * include/ext/vstring.h (__versa_string<>::insert(iterator,
1013 size_type, _CharT), __versa_string<>::insert(iterator,
1014 _InputIterator, _InputIterator), __versa_string<>::insert(iterator,
1015 std::initializer_list<>), __versa_string<>::replace(iterator,
1016 iterator, _InputIterator, _InputIterator), __versa_string<>::
1017 replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
1018 signatures to take const_iterator(s).
1019 (__versa_string<>::_M_replace_dispatch): Take const_iterators.
1020 * include/ext/vstring.tcc: Likewise.
1021 * include/debug/list: Adjust.
1022 * include/profile/list: Likewise.
1023 * testsuite/23_containers/list/operations/splice/const_iterator.cc:
1025 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
1027 * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
1029 * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
1031 * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
1033 * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
1036 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1037 Adjust dg-error line number.
1038 * testsuite/23_containers/list/requirements/dr438/
1039 constructor_1_neg.cc: Likewise.
1040 * testsuite/23_containers/list/requirements/dr438/
1041 constructor_2_neg.cc: Likewise.
1042 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1045 2013-06-30 Paolo Carlini <paolo.carlini@oracle.com>
1047 * include/bits/stl_deque.h (deque<>::insert(iterator,
1048 size_type, const value_type&), deque<>::insert(iterator,
1049 initializer_list<>), deque<>::insert(iterator, _InputIterator,
1050 _InputIterator)): Adjust C++11 signatures to take a const_iterator.
1051 * include/bits/stl_vector.h: Likewise.
1052 * include/bits/stl_bvector.h: Likewise.
1053 * include/debug/deque: Adjust.
1054 * include/debug/vector: Likewise.
1055 * include/profile/deque: Likewise.
1056 * include/profile/vector: Likewise.
1057 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
1059 * testsuite/23_containers/vector/bool/modifiers/insert/
1060 const_iterator.cc: Likewise.
1061 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
1064 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1065 Adjust dg-error line number.
1066 * testsuite/23_containers/deque/requirements/dr438/
1067 constructor_1_neg.cc: Likewise.
1068 * testsuite/23_containers/deque/requirements/dr438/
1069 constructor_2_neg.cc: Likewise.
1070 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1072 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1074 * testsuite/23_containers/vector/requirements/dr438/
1075 constructor_1_neg.cc: Likewise.
1076 * testsuite/23_containers/vector/requirements/dr438/
1077 constructor_2_neg.cc: Likewise.
1078 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1081 2013-06-29 François Dumont <fdumont@gcc.gnu.org>
1083 * include/bits/hashtable_policy.h (_Insert_base): Consider hint in
1085 * include/bits/hashtable.h: Likewise.
1086 * testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
1087 * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
1089 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1090 Adjust dg-error line number.
1091 * testsuite/23_containers/unordered_set/
1092 not_default_constructible_hash_neg.cc: Likewise.
1093 * doc/xml/manual/containers.xml: Document hinting in unordered
1096 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
1098 * testsuite/21_strings/basic_string/operations/*: Move inside
1099 testsuite/21_strings/basic_string/operations/data/.
1100 * testsuite/21_strings/basic_string/compare/*: Move inside
1101 testsuite/21_strings/basic_string/operations/.
1102 * testsuite/21_strings/basic_string/find/*: Likewise.
1103 * testsuite/21_strings/basic_string/rfind/*: Likewise.
1104 * testsuite/21_strings/basic_string/substr/*: Likewise.
1106 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
1108 * testsuite/21_strings/basic_string/append/*: Move inside
1109 testsuite/21_strings/basic_string/modifiers/.
1110 * testsuite/21_strings/basic_string/assign/*: Likewise.
1111 * testsuite/21_strings/basic_string/insert/*: Likewise.
1112 * testsuite/21_strings/basic_string/replace/*: Likewise.
1113 * testsuite/21_strings/basic_string/modifiers/pop_back/char/
1114 pop_back.cc: Rename to 1.cc.
1115 * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
1116 pop_back.cc: Likewise.
1117 * testsuite/ext/vstring/assign/*: Move inside
1118 testsuite/ext/vstring/modifiers/.
1120 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
1122 * include/bits/stl_deque.h (deque<>::insert(iterator,
1123 const value_type&), deque<>::insert(iterator, value_type&&),
1124 deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
1125 take a const_iterator.
1126 (deque<>::erase): Simplify.
1127 * include/bits/stl_list.h: Likewise.
1128 (_List_iterator<>::_M_const_cast): Add.
1129 * include/bits/stl_vector.h: Likewise.
1130 * include/bits/stl_bvector.h: Likewise.
1131 (_Bit_iterator::_M_const_cast): Add.
1132 * include/bits/deque.tcc: Adjust definitions.
1133 * include/bits/list.tcc: Likewise.
1134 * include/bits/vector.tcc: Likewise.
1135 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1136 Define trivial version in C++98 mode.
1137 * include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
1138 __versa_string<>::replace(iterator, iterator, const __versa_string&),
1139 __versa_string<>::replace(iterator, iterator, const _CharT*,
1140 size_type), __versa_string<>::replace(iterator, iterator,
1141 const _CharT*), __versa_string<>::replace(iterator, iterator,
1142 size_type, _CharT)): Adjust C++11 signatures to take a pair of
1144 * include/debug/deque: Adjust.
1145 * include/debug/list: Likewise.
1146 * include/debug/vector: Likewise.
1147 * include/profile/deque: Likewise.
1148 * include/profile/list: Likewise.
1149 * include/profile/vector: Likewise.
1150 (vector<>::emplace): Add.
1151 * testsuite/util/exception/safety.h: Update.
1152 * testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
1154 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
1156 * testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
1158 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
1160 * testsuite/23_containers/vector/bool/modifiers/insert/
1161 const_iterator.cc: Likewise.
1162 * testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
1164 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
1166 * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
1168 * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
1170 * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
1172 * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
1175 * testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
1176 ext/vstring/modifiers/erase/char/.
1177 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
1178 ext/vstring/modifiers/wchar_t/.
1179 * testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
1180 ext/vstring/modifiers/pop_back/char/.
1181 * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
1182 testsuite/ext/vstring/modifiers/pop_back/wchar_t/.
1184 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1185 Adjust dg-error line number.
1186 * testsuite/23_containers/deque/requirements/dr438/
1187 constructor_1_neg.cc: Likewise.
1188 * testsuite/23_containers/deque/requirements/dr438/
1189 constructor_2_neg.cc: Likewise.
1190 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1192 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1194 * testsuite/23_containers/list/requirements/dr438/
1195 constructor_1_neg.cc: Likewise.
1196 * testsuite/23_containers/list/requirements/dr438/
1197 constructor_2_neg.cc: Likewise.
1198 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1200 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1202 * testsuite/23_containers/vector/requirements/dr438/
1203 constructor_1_neg.cc: Likewise.
1204 * testsuite/23_containers/vector/requirements/dr438/
1205 constructor_2_neg.cc: Likewise.
1206 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1209 2013-06-25 Ed Smith-Rowland <3dw4rd@verizon.net>
1211 Status page for C++2014 library features
1212 * doc/xml/faq.xml: Add link to new C++14 status page.
1213 * doc/xml/manual/intro.xml: Ditto.
1214 * doc/xml/manual/status_cxx2014.xml: New.
1216 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
1218 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
1219 spurious fails with check-debug.
1220 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
1222 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
1223 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
1226 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
1229 * include/bits/char_traits.h (char_traits<char>::lt): Implement
1231 * testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
1233 2013-06-24 Bernd Edlinger <bernd.edlinger@hotmail.de>
1236 * include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
1237 declare per the letter of the C++ standard in terms of void.
1238 * include/c_std/cstdlib: Likewise.
1240 2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>
1243 * include/bits/random.h (binomial_distribution<>::_M_waiting):
1244 Add double parameter.
1245 * include/bits/random.tcc (binomial_distribution<>::operator()
1246 (_UniformRandomNumberGenerator&, const param_type&)): Pass
1247 __param._M_q to _M_waiting.
1248 (_M_waiting): Adjust.
1249 * testsuite/26_numerics/random/binomial_distribution/
1250 operators/values.cc: Add tests.
1252 2013-06-21 Paolo Carlini <paolo.carlini@oracle.com>
1255 * include/std/valarray (valarray<>::operator=(const _Expr<>&)):
1256 Implement correctly C++11 26.6.2.3/1.
1257 * testsuite/26_numerics/valarray/dr630-3.C: New.
1259 2013-06-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1262 * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
1263 functionality to new __timed_mutex_impl mixin. Overload try_lock_until
1264 to handle conversion between different clocks. Replace constrained
1265 __try_lock_for_impl overloads with conditional increment.
1266 * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
1267 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.
1269 2013-06-17 Jonathan Wakely <jwakely.gcc@gmail.com>
1270 Chris Jefferson <chris@bubblescope.net>
1272 * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
1273 dispatch to traditional std::equal for random-access iterators.
1274 (__equal2_aux, __equal2): Remove.
1275 (__equal::equal): Remove unused overloads.
1276 * include/bits/stl_algo.h (is_permutation): Fix typos.
1278 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1280 * include/std/shared_mutex (shared_lock::operator=): Add missing
1283 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1286 * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
1287 allocator's pointer type.
1288 * include/bits/hashtable.h (_Hashtable): Likewise.
1289 * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
1290 * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
1291 * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
1292 * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
1294 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1296 * include/std/shared_mutex: Implement N3659.
1297 * include/bits/c++14_warning.h: New.
1298 * include/Makefile.am: Add new headers.
1299 * include/Makefile.in: Regenerate.
1300 * testsuite/30_threads/shared_lock/cons/1.cc: New.
1301 * testsuite/30_threads/shared_lock/locking/2.cc: New.
1302 * testsuite/30_threads/shared_lock/cons/2.cc: New.
1303 * testsuite/30_threads/shared_lock/locking/3.cc: New.
1304 * testsuite/30_threads/shared_lock/cons/3.cc: New.
1305 * testsuite/30_threads/shared_lock/locking/4.cc: New.
1306 * testsuite/30_threads/shared_lock/cons/4.cc: New.
1307 * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
1308 * testsuite/30_threads/shared_lock/cons/5.cc: New.
1309 * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
1310 * testsuite/30_threads/shared_lock/cons/6.cc: New.
1311 * testsuite/30_threads/shared_lock/requirements/
1312 explicit_instantiation.cc: New.
1313 * testsuite/30_threads/shared_lock/locking/1.cc: New.
1314 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
1315 * testsuite/30_threads/shared_mutex/cons/1.cc: New.
1316 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
1317 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
1318 * testsuite/30_threads/shared_mutex/requirements/
1319 standard_layout.cc: New.
1320 * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
1321 * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
1323 2013-06-15 Paolo Carlini <paolo.carlini@oracle.com>
1326 * include/bits/unordered_map.h (unordered_map<>::insert,
1327 unordered_multimap<>::insert): Use std::forward, not std::move.
1328 * testsuite/23_containers/unordered_map/insert/57619.C: New.
1329 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
1331 2013-06-14 Alan Modra <amodra@gmail.com>
1333 * configure.host (abi_baseline_pair): Match powerpc64*.
1335 2013-06-13 Daniel Krugler <daniel.kruegler@gmail.com>
1337 * include/std/type_traits (is_function): Support ref-qualified
1339 (is_copy_constructible, is_move_constructible, is_copy_assignable,
1340 is_move_assignable, is_nothrow_copy_constructible,
1341 is_nothrow_move_constructible, is_nothrow_copy_assignable,
1342 is_nothrow_move_assignable): Implement LWG 2196.
1343 (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
1345 (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
1347 * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
1348 * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
1349 * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
1350 * testsuite/20_util/is_assignable/value.cc: Likewise.
1351 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1352 * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
1353 * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
1354 * testsuite/20_util/is_function/value.cc: Likewise.
1355 * testsuite/20_util/is_move_assignable/value.cc: Likewise.
1356 * testsuite/20_util/is_move_constructible/value.cc: Likewise.
1357 * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
1358 * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
1359 * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
1360 * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
1362 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1364 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1366 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1369 2013-06-13 Paolo Carlini <paolo.carlini@oracle.com>
1371 * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
1372 __gnu_cxx::__airy_bi()): Remove.
1373 * testsuite/tr1/5_numerical_facilities/special_functions/
1374 10_cyl_bessel_k/airy.cc: Fix.
1376 2013-06-12 Ed Smith-Rowland <3dw4rd@verizon.net>
1379 * include/tr1/modified_bessel_func.tcc (__airy): Remove return
1381 (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
1382 * testsuite/tr1/5_numerical_facilities/special_functions/
1383 10_cyl_bessel_k/airy.cc: New.
1385 2013-06-11 Ed Smith-Rowland <3dw4rd@verizon.net>
1387 Fix library literals error involving namespace __detail.
1388 * include/std/chrono: Rename __detail to __select_type. Reformat.
1389 * include/bits/basic_string.h: Reformat.
1390 * testsuite/20_util/duration/literals/ns_detail.cc: New.
1392 2013-06-11 Paolo Carlini <paolo.carlini@oracle.com>
1395 * include/c_global/cstddef (max_align_t): Add to namespace std.
1396 * include/c_std/cstddef: Likewise.
1397 * testsuite/18_support/max_align_t/requirements/1.cc: New.
1398 * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
1400 2013-06-10 Benjamin Kosnik <bkoz@redhat.com>
1402 * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
1403 * include/bits/stl_map.h (erase): Use abi_tag when C++11.
1404 * include/bits/stl_multimap.h: Same.
1405 * include/bits/stl_multiset.h: Same.
1406 * include/bits/stl_set.h: Same.
1407 * include/bits/stl_tree.h: Same.
1408 * include/std/complex (real, imag): Use macro for abi_tag.
1410 * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
1411 * testsuite/util/testsuite_containers.h (erase_external): New
1413 (erase_external_iterators): Same.
1414 (linkage_check_cxx98_cxx11_erase): Same.
1415 (linkage_check_cxx98_cxx11_erase_iterators): Same.
1416 * testsuite/util/testsuite_shared.cc: Define.
1417 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
1418 * testsuite/23_containers/map/modifiers/erase/
1419 dr130-linkage-check.cc: New.
1420 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
1421 * testsuite/23_containers/multimap/modifiers/erase/
1422 dr130-linkage-check.cc: New.
1423 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
1424 * testsuite/23_containers/multiset/modifiers/erase/
1425 dr130-linkage-check.cc: New.
1426 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
1427 * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
1429 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
1431 * testsuite/23_containers/map/dr130.cc: Move...
1432 * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
1433 * testsuite/23_containers/multimap/dr130.cc: Move ...
1434 * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
1435 * testsuite/23_containers/multiset/dr130.cc: Move...
1436 * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
1437 * testsuite/23_containers/set/dr130.cc: Move...
1438 * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
1440 2013-06-10 Thomas Schwinge <thomas@codesourcery.com>
1442 * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
1443 handling of Linux-based x86 systems to cover all GNU systems.
1444 * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
1445 * testsuite/18_support/pthread_guard.cc: Likewise.
1446 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
1448 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
1450 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
1451 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
1452 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
1453 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
1454 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
1455 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
1456 * testsuite/23_containers/list/pthread1.cc: Likewise.
1457 * testsuite/23_containers/list/pthread5.cc: Likewise.
1458 * testsuite/23_containers/map/pthread6.cc: Likewise.
1459 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
1461 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1463 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
1464 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
1465 * testsuite/30_threads/async/42819.cc: Likewise.
1466 * testsuite/30_threads/async/49668.cc: Likewise.
1467 * testsuite/30_threads/async/54297.cc: Likewise.
1468 * testsuite/30_threads/async/any.cc: Likewise.
1469 * testsuite/30_threads/async/async.cc: Likewise.
1470 * testsuite/30_threads/async/launch.cc: Likewise.
1471 * testsuite/30_threads/async/sync.cc: Likewise.
1472 * testsuite/30_threads/call_once/39909.cc: Likewise.
1473 * testsuite/30_threads/call_once/49668.cc: Likewise.
1474 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
1475 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1476 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
1477 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
1478 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
1479 * testsuite/30_threads/condition_variable/members/53841.cc:
1481 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
1483 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
1484 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1485 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
1486 * testsuite/30_threads/condition_variable_any/members/1.cc:
1488 * testsuite/30_threads/condition_variable_any/members/2.cc:
1490 * testsuite/30_threads/future/cons/move.cc: Likewise.
1491 * testsuite/30_threads/future/members/45133.cc: Likewise.
1492 * testsuite/30_threads/future/members/get.cc: Likewise.
1493 * testsuite/30_threads/future/members/get2.cc: Likewise.
1494 * testsuite/30_threads/future/members/share.cc: Likewise.
1495 * testsuite/30_threads/future/members/valid.cc: Likewise.
1496 * testsuite/30_threads/future/members/wait.cc: Likewise.
1497 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1498 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1499 * testsuite/30_threads/lock/1.cc: Likewise.
1500 * testsuite/30_threads/lock/2.cc: Likewise.
1501 * testsuite/30_threads/lock/3.cc: Likewise.
1502 * testsuite/30_threads/lock/4.cc: Likewise.
1503 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1504 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1505 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1506 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1507 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1508 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1509 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1510 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1511 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
1512 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
1513 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
1514 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
1515 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1516 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
1517 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
1518 * testsuite/30_threads/packaged_task/cons/move_assign.cc:
1520 * testsuite/30_threads/packaged_task/members/get_future.cc:
1522 * testsuite/30_threads/packaged_task/members/get_future2.cc:
1524 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
1525 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
1526 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
1527 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
1528 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
1529 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
1530 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
1531 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
1532 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
1533 * testsuite/30_threads/promise/cons/1.cc: Likewise.
1534 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1535 * testsuite/30_threads/promise/cons/move.cc: Likewise.
1536 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
1537 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
1538 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
1539 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1540 * testsuite/30_threads/promise/members/set_exception2.cc:
1542 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
1543 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1544 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1545 * testsuite/30_threads/promise/members/swap.cc: Likewise.
1546 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
1547 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
1549 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
1550 * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
1552 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
1554 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
1555 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
1556 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
1557 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
1558 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
1560 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
1561 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
1562 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
1564 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
1566 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
1568 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
1570 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
1572 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
1574 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
1576 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1578 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1580 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
1582 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
1583 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
1584 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
1585 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1586 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
1587 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
1588 * testsuite/30_threads/shared_future/members/wait_for.cc:
1590 * testsuite/30_threads/shared_future/members/wait_until.cc:
1592 * testsuite/30_threads/this_thread/1.cc: Likewise.
1593 * testsuite/30_threads/this_thread/2.cc: Likewise.
1594 * testsuite/30_threads/this_thread/3.cc: Likewise.
1595 * testsuite/30_threads/this_thread/4.cc: Likewise.
1596 * testsuite/30_threads/thread/cons/1.cc: Likewise.
1597 * testsuite/30_threads/thread/cons/2.cc: Likewise.
1598 * testsuite/30_threads/thread/cons/3.cc: Likewise.
1599 * testsuite/30_threads/thread/cons/4.cc: Likewise.
1600 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
1601 * testsuite/30_threads/thread/cons/5.cc: Likewise.
1602 * testsuite/30_threads/thread/cons/6.cc: Likewise.
1603 * testsuite/30_threads/thread/cons/7.cc: Likewise.
1604 * testsuite/30_threads/thread/cons/8.cc: Likewise.
1605 * testsuite/30_threads/thread/cons/9.cc: Likewise.
1606 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
1607 * testsuite/30_threads/thread/members/1.cc: Likewise.
1608 * testsuite/30_threads/thread/members/2.cc: Likewise.
1609 * testsuite/30_threads/thread/members/3.cc: Likewise.
1610 * testsuite/30_threads/thread/members/4.cc: Likewise.
1611 * testsuite/30_threads/thread/members/5.cc: Likewise.
1612 * testsuite/30_threads/thread/members/hardware_concurrency.cc:
1614 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1615 * testsuite/30_threads/thread/native_handle/typesizes.cc:
1617 * testsuite/30_threads/thread/swap/1.cc: Likewise.
1618 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1619 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
1621 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1622 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1623 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
1625 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1626 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1627 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1628 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1629 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1630 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1631 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1632 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1633 * testsuite/30_threads/try_lock/1.cc: Likewise.
1634 * testsuite/30_threads/try_lock/2.cc: Likewise.
1635 * testsuite/30_threads/try_lock/3.cc: Likewise.
1636 * testsuite/30_threads/try_lock/4.cc: Likewise.
1637 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1638 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1639 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1640 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1641 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1642 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1643 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1644 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1645 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1646 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1647 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1648 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1649 * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
1650 * testsuite/ext/profile/mh.cc: Likewise.
1651 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
1652 * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
1653 * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
1655 * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
1657 * testsuite/util/testsuite_performance.h: Extend current handling
1658 of Linux-based systems to cover all glibc-based systems.
1660 2013-06-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1662 * include/std/mutex (call_once): Remove parentheses to fix error in
1663 c++1y and gnu++1y mode.
1664 * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
1665 thread to avoid undefined behaviour.
1667 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
1669 Simplify and clean up library literals.
1670 * include/std/chrono: Simplify namespace and versioning management.
1671 * include/bits/basic_string.h: Ditto.
1672 * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
1673 * testsuite/20_util/duration/literals/values.cc: Ditto.
1674 * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
1675 * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
1677 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
1679 Implement N3654 - Quoted Strings Library Proposal
1680 * include/std/iomanip: Add quoted(String, Char delim, Char escape)
1681 manipulators and supporting machinery in c++1y mode.
1682 * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
1683 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
1685 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1687 * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
1690 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1692 * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
1693 * include/bits/stl_algobase.h (equal, mismatch): Likewise.
1694 * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
1695 * testsuite/25_algorithms/equal/2.cc: New.
1696 * testsuite/25_algorithms/equal/check_type2.cc: New.
1697 * testsuite/25_algorithms/is_permutationqual/2.cc: New.
1698 * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
1699 * testsuite/25_algorithms/mismatch/2.cc: New.
1700 * testsuite/25_algorithms/mismatch/check_type2.cc: New.
1701 * testsuite/util/testsuite_iterators.h: Fix spelling.
1703 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1705 * include/std/type-traits (integral_constant::operator()): Implement
1707 * testsuite/20_util/integral_constant/call_operator.cc: New.
1708 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1710 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1712 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1715 2013-06-07 Uros Bizjak <ubizjak@gmail.com>
1717 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1719 2013-06-05 Tom Tromey <tromey@redhat.com>
1721 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
1723 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1726 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
1728 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
1730 * include/std/chrono: Collapse redundant 'inline' from 'inline
1732 * include/std/tuple: Ditto.
1733 * include/bits/move.h: Ditto.
1735 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
1737 Implement N3642 - User-defined Literals for Standard Library Types
1738 * include/bits/parse_numbers.h: New.
1739 * include/std/chrono: Add duration literal operators.
1740 * include/bits/basic_string.h: Add string literal operators.
1741 * include/Makefile.in: Add parse_numbers.h.
1742 * include/Makefile.am: Ditto.
1743 * testsuite/20_util/duration/literals/values.cc: New.
1744 * testsuite/20_util/duration/literals/types.cc: New.
1745 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1746 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
1747 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
1748 * testsuite/21_strings/basic_string/literals/values.cc: New.
1749 * testsuite/21_strings/basic_string/literals/types.cc: New.
1751 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1753 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
1754 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
1755 calling non-existent from_time_t.
1757 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1759 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1762 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
1764 * include/std/chrono: Wrap clocks in inline namespace _V2.
1765 * src/c++11/chrono.cc: Same.
1766 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
1767 file, with default configure macros selected.
1769 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
1771 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
1773 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1774 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1775 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1777 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1779 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1780 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1782 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1783 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1784 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1785 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1786 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1787 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1789 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1790 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1792 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1794 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
1795 (CLOCK_MONOTONIC): Define.
1797 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
1799 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
1802 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
1804 2013-05-24 Jakub Jelinek <jakub@redhat.com>
1806 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
1807 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
1808 don't define system_clock::is_steady, system_clock::now() and
1809 steady_clock::is_steady.
1810 (std::chrono::system_clock::now()): If
1811 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
1812 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
1813 (std::chrono::system_clock::now()): Likewise. Add weak attribute
1814 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
1816 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
1817 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
1818 * src/c++11/compatibility-chrono.cc: New file.
1819 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
1820 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
1821 * testsuite/util/testsuite_abi.cc (check_version): Add
1822 GLIBCXX_3.4.20 version and make it the latest.
1823 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
1824 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
1825 @@GLIBCXX_3.4.20 instead.
1826 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1827 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1828 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1830 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1832 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1833 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1835 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1836 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1837 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1838 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1839 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1840 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1842 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1843 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1844 * config.h.in: Regenerated.
1845 * src/Makefile.in: Regenerated.
1846 * configure: Regenerated.
1848 2013-05-23 Matthias Klose <doko@ubuntu.com>
1850 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1851 (ext_headers): Remove ${ext_host_headers}.
1852 (stamp-${host_alias}): Create ${host_builddir}/../ext.
1853 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1854 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1855 * include/Makefile.in: Regenerate.
1856 * include/ext/random: Include ext/opt_random.h.
1858 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
1860 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
1861 enable features if target OS is known to support them.
1862 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
1863 * configure: Regenerate.
1865 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
1868 * include/std/functional (__invoke): Do not form function types with
1869 abstract return type.
1870 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
1872 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1874 * include/std/tuple (get): Implement N3670.
1875 * include/std/utility (get): Likewise.
1876 * testsuite/20_util/pair/get.cc: Move to ...
1877 * testsuite/20_util/pair/astuple/get.cc: Here.
1878 * testsuite/20_util/pair/astuple/astuple.cc: New.
1879 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
1880 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
1881 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
1882 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
1883 * testsuite/20_util/pair/astuple/get_neg.cc: New.
1884 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
1885 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
1886 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
1888 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
1890 * Revert last commit.
1892 2013-05-19 Matthias Klose <doko@ubuntu.com>
1894 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1895 (ext_headers): Remove ${ext_host_headers}.
1896 (stamp-${host_alias}): Create ${host_builddir}/../ext.
1897 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1898 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1899 * include/Makefile.in: Regenerate.
1901 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1903 * include/std/system_error (error_category::error_category()): LWG
1904 2145: Declare public and constexpr.
1905 * src/c++11/system_error.cc (error_category::error_category()): Move
1907 * src/c++11/compatibility-c++0x.cc: Here.
1909 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1911 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
1913 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1915 * include/bits/unique_ptr.h (make_unique): Declare inline.
1916 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
1917 (default_delete, unique_ptr): Add doxygen comments.
1918 * include/bits/shared_ptr_base.h: Improve doxygen comments.
1919 * include/bits/shared_ptr.h: Likewise.
1920 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1922 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1924 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1926 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1928 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1930 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1932 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1934 * include/std/utility (exchange): Define.
1935 * testsuite/20_util/exchange/1.cc: New.
1937 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1939 * include/bits/unique_ptr.h (make_unique): Define.
1940 * testsuite/20_util/unique_ptr/creation/single.cc: New.
1941 * testsuite/20_util/unique_ptr/creation/array.cc: New.
1942 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
1944 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
1946 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
1947 rendering of std::tr1 unordered containers iterator.
1948 (StdHashtableIterator): New, render std unordered containers iterator.
1949 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
1951 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
1953 * include/bits/basic_string.h (getline): Fix doxygen comments.
1955 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
1957 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1958 Use std::pointer_traits.
1960 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
1962 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
1964 * libsupc++/Makefile.in: Regenerate.
1965 * libsupc++/bad_array_length.cc: Tweak.
1966 * libsupc++/bad_array_new.cc: Tweak.
1968 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
1971 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
1972 (_Deque_iterator<>::_M_const_cast): Add.
1973 (deque<>::_M_erase): Declare.
1974 * include/bits/deque.tcc: ... and define.
1975 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
1976 (_List_const_iterator<>::_M_const_cast): Add.
1977 * include/bits/list.tcc (erase (iterator)): Fix.
1978 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1979 Add; include <ext/cast.h>.
1980 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
1981 (vector<>::_M_erase): Declare.
1982 * include/bits/stl_bvector.h: Likewise.
1983 * include/bits/vector.tcc (vector<>::_M_erase): Define.
1984 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
1985 * include/debug/deque: Adjust.
1986 * include/debug/list: Likewise.
1987 * include/debug/vector: Likewise.
1988 * include/profile/deque: Likewise.
1989 * include/profile/list: Likewise.
1990 * include/profile/vector: Likewise.
1991 * testsuite/util/exception/safety.h (erase_base<deque>,
1992 erase_base<deque>, erase_base<vector>): Remove.
1993 (erase_base<__versa_string>): Update.
1994 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
1995 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
1996 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
1997 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
1998 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
2000 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
2001 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2002 Adjust dg-error line numbers.
2003 * testsuite/23_containers/deque/requirements/dr438/
2004 constructor_1_neg.cc: Likewise.
2005 * testsuite/23_containers/deque/requirements/dr438/
2006 constructor_2_neg.cc: Likewise.
2007 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2009 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2011 * testsuite/23_containers/list/requirements/dr438/
2012 constructor_1_neg.cc: Likewise.
2013 * testsuite/23_containers/list/requirements/dr438/
2014 constructor_2_neg.cc: Likewise.
2015 * testsuite/23_containers/list/requirements/dr438/
2016 insert_neg.cc: Likewise.
2017 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2019 * testsuite/23_containers/vector/requirements/dr438/
2020 constructor_1_neg.cc: Likewise.
2021 * testsuite/23_containers/vector/requirements/dr438/
2022 constructor_2_neg.cc: Likewise.
2023 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2026 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
2028 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
2030 2013-05-08 Jason Merrill <jason@redhat.com>
2032 Add std::bad_array_length (N3639)
2033 * libsupc++/new: Add std::bad_array_length.
2034 * libsupc++/bad_array_length.cc: New.
2035 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
2036 * libsupc++/Makefile.in: Build them.
2037 * config/abi/pre/gnu.ver: Add new symbols.
2038 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
2040 2013-05-08 Andi Kleen <ak@linux.intel.com>
2043 * libstdc++-v3/include/bits/atomic_base.h
2044 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
2045 (atomic_thread_fence, atomic_signal_fence, test_and_set,
2046 clear, store, load, exchange, compare_exchange_weak)
2047 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
2048 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
2050 2013-05-08 Jason Merrill <jason@redhat.com>
2052 Add std::bad_array_new_length (N2932)
2053 * libsupc++/new: Add std::bad_array_new_length.
2054 * libsupc++/bad_array_new.cc: New.
2055 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
2056 * libsupc++/Makefile.in: Build them.
2057 * config/abi/pre/gnu.ver: Add new symbols.
2058 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
2060 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
2063 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
2065 * include/Makefile.in: Regenerated.
2067 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
2069 * include/profile/unordered_base.h: New.
2070 * include/Makefile.am: Add new profile header.
2071 * include/Makefile.in: Regenerate.
2072 * include/profile/impl/profiler.h
2073 (__profcxx_inefficient_hash_is_on): New macro.
2074 * include/profile/unordered_map (std::profile::unordered_map<>):
2075 Use new _Unordered_profile base class. Use default implementations
2076 for special functions.
2077 (std::profile::unordered_multimap<>): Likewise.
2078 * include/profile/unordered_set (std::profile::unordered_set<>):
2080 (std::profile::unordered_multiset<>): Likewise.
2081 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
2082 MoveOnly equality operator signature.
2084 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
2086 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
2087 constexpr_data.cc: Move...
2088 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
2090 * testsuite/20_util/integral_constant/requirements/
2091 explicit_instantiation.cc: New.
2092 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
2094 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
2095 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
2097 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
2098 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
2100 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
2102 * include/std/type_traits (is_null_pointer): Add.
2103 (__is_nullptr_t): Implement in terms of the latter.
2104 (is_fundamental, is_scalar): Adjust.
2105 * testsuite/20_util/is_null_pointer/requirements/
2106 explicit_instantiation.cc: New.
2107 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
2109 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
2110 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
2112 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2114 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2117 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
2119 * include/c_global/cstdio: Add comment about LWG 2249.
2120 * include/c_std/cstdio: Likewise.
2122 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
2124 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
2126 * include/std/mutex (__recursive_mutex_base): Likewise.
2128 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
2131 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
2132 implement EBO safely.
2133 (_Sp_counted_base::_M_get_deleter): Add noexcept.
2134 (_Sp_counter_ptr): Use noexcept instead of comments.
2135 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
2136 (_Sp_counted_ptr_inplace): Likewise.
2137 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
2138 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
2139 custom allocator and test construction with custom allocator.
2140 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
2143 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
2145 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
2146 dialect to -std=gnu++11.
2148 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
2150 * include/bits/hashtable_policy.h
2151 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
2152 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
2154 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
2156 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
2157 * include/c_std/cstdio (gets): Likewise.
2158 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
2160 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
2163 * include/debug/unordered_map (unordered_map, unordered_multimap):
2164 Fix default allocator type.
2165 * include/profile/unordered_map (unordered_map, unordered_multimap):
2167 * include/bits/unordered_map.h: Fix comments.
2169 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
2172 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
2173 move implementation to make_exception_ptr.
2174 * include/std/future (_State_base::_M_break_promise): Replace
2175 copy_exception with make_exception_ptr.
2176 * testsuite/18_support/exception_ptr/move.cc: Likewise.
2177 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
2178 * testsuite/30_threads/future/members/get2.cc: Likewise.
2179 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
2180 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
2181 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
2182 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
2184 2013-04-22 Jason Merrill <jason@redhat.com>
2186 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
2188 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
2189 substitution" lines.
2191 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
2193 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
2194 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
2195 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
2197 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
2199 * include/bits/hashtable_policy.h: Add C++11 allocator support.
2200 * include/bits/hashtable.h: Likewise.
2201 * include/bits/unordered_set.h: Likewise.
2202 * include/bits/unordered_map.h: Likewise.
2203 * include/debug/unordered_set: Likewise.
2204 * include/debug/unordered_map: Likewise.
2205 * include/std/unordered_set: Remove bits/algobase.h
2206 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
2207 * include/std/unordered_map: Likewise.
2208 * include/ext/throw_allocator.h: Add checks on calls to allocator
2210 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
2211 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
2212 * testsuite/util/regression/rand/priority_queue
2213 /container_rand_regression_test.tcc: Adapt.
2214 * testsuite/util/regression/rand/assoc
2215 /container_rand_regression_test.tcc: Likewise.
2216 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
2217 * testsuite/23_containers/unordered_set
2218 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
2219 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
2220 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
2221 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
2222 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
2223 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
2224 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
2225 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
2226 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
2227 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
2229 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
2230 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
2232 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
2233 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
2234 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
2235 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
2236 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
2237 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
2238 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
2240 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
2241 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
2242 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
2244 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
2245 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
2247 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
2248 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
2250 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
2252 * include/std/type_traits (is_signed): Simplify.
2253 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2254 Adjust dg-error line numbers.
2255 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2257 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2259 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
2262 * include/std/complex (complex<float>::real, complex<float>::imag,
2263 complex<double>::real, complex<double>::imag,
2264 complex<long double>::real, complex<long double>::imag): Declare
2265 as const member functions.
2266 * include/std/type_traits (integral_constant<>::operator value_type):
2269 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
2272 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
2273 * testsuite/25_algorithms/pop_heap/57010.cc: New.
2275 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
2277 * src/c++11/system_error.cc (generic_category_instance): Add
2279 (system_category_instance): Likewise.
2280 * src/c++11/future.cc (__fec): Likewise.
2282 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2284 * doc/xml/manual/extensions.xml: Fix anachronism.
2286 2013-04-09 Tom Tromey <tromey@redhat.com>
2288 * configure, config.h.in: Rebuild.
2289 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
2291 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
2293 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
2295 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
2297 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
2299 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
2301 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2303 * include/Makefile.am: Add ext/aligned_buffer.h
2304 * include/Makefile.in: Regenerate.
2305 * include/ext/aligned_buffer.h: New.
2306 * include/std/future (_Result): Use __aligned_buffer.
2307 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
2308 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
2309 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
2312 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2314 * include/bits/forward_list.h: Only include required headers.
2315 (forward_list::reference): Define directly, not using __alloc_traits.
2316 (forward_list::const_reference): Likewise.
2318 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
2320 * include/std/functional (_Derives_from_unary_function): Remove.
2321 (_Derives_from_binary_function): Remove.
2322 * include/std/type_traits (__sfinae_types): Remove.
2323 (__is_assignable_helper): Adapt.
2324 (__is_convertible_helper): Adapt.
2325 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
2326 Remove several explicit instantiations of integral_constant.
2327 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
2328 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2329 Adapt dg-error line number.
2330 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2332 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2333 * testsuite/20_util/bind/ref_neg.cc: Likewise.
2335 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
2338 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
2339 get_terminate() accessors.
2340 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
2341 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
2343 * libsupc++/new_handler.cc: Likewise.
2345 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
2347 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
2349 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
2352 * include/debug/array (tuple_size, tuple_element): Do not declare.
2353 * include/profile/array: Likewise.
2354 * testsuite/23_containers/array/tuple_interface/
2355 tuple_element_debug_neg.cc: Adjust dg-error line number.
2357 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
2359 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
2360 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
2362 (set_terminate(terminate_handler)): Set atomically.
2363 (set_unexpected(terminate_handler)): Likewise.
2364 * libsupc++/new (get_new_handler()): Declare.
2365 * libsupc++/new_handler.cc (get_new_handler()): Define.
2366 (set_new_handler(new_handler)): Set atomically.
2367 (__new_handler): Use internal linkage.
2368 * libsupc++/new_op.cc (operator new): Use get_new_handler().
2369 * libsupc++/new_opnt.cc (operator new): Likewise.
2370 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
2371 * configure: Regenerate.
2372 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
2373 * libsupc++/Makefile.in: Regenerate.
2374 * config/abi/pre/gnu.ver: Add new exports.
2375 * doc/xml/manual/status_cxx2011.xml: Update.
2376 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
2378 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
2379 * testsuite/18_support/new_handler.cc: New.
2380 * testsuite/18_support/terminate_handler.cc: New.
2381 * testsuite/18_support/unexpected_handler.cc: New.
2383 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
2385 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
2386 defer to general documentation on contributing to GCC.
2387 * doc/html/*: Regenerate.
2389 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
2391 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
2393 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
2396 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
2398 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
2400 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
2402 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
2404 * doc/xml/manual/policy_data_structures: Remove direct link to
2405 IBM Haifa Research Labs.
2407 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
2408 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
2410 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
2413 * doc/xml/manual/shared_ptr.xml: Use canonical address for
2416 2013-03-27 Kai Tietz <ktietz@redhat.com>
2418 * crossconfig.m4: Add support for cygwin x64 target.
2419 * configure: Regenerated.
2421 2013-03-25 Kai Tietz <ktietz@redhat.com>
2423 * testsuite/18_support/50594.cc: For mingw-targets use only static
2425 * testsuite/19_diagnostics/error_category/operators/equal.cc
2426 * testsuite/19_diagnostics/error_code/cons/1.cc
2427 * testsuite/19_diagnostics/error_code/operators/bool.cc
2428 * testsuite/19_diagnostics/error_code/operators/equal.cc
2429 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
2430 * testsuite/19_diagnostics/error_condition/cons/1.cc
2431 * testsuite/19_diagnostics/error_condition/operators/bool.cc
2432 * testsuite/19_diagnostics/error_condition/operators/equal.cc
2433 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
2434 * testsuite/23_containers/set/requirements/exception/basic.cc
2435 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
2436 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
2438 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
2441 * include/ext/debug_allocator.h (debug_allocator): Add missing members
2442 to meet allocator requirements.
2443 * testsuite/ext/debug_allocator/56170.cc: New.
2445 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
2448 * include/std/chrono (__is_ratio): Uglify T.
2450 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
2452 PR libstdc++/55977 (partial, std::vector and std::deque bits)
2453 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
2454 _InputIterator, std::input_iterator_tag)): Use emplace_back.
2455 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
2456 _InputIterator, std::input_iterator_tag)): Likewise.
2457 * testsuite/23_containers/vector/cons/55977.cc: New.
2458 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
2459 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2460 Adjust dg-error line number.
2461 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2464 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
2467 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
2468 _InputIterator, __false_type)): Use emplace_back.
2469 * testsuite/23_containers/list/cons/55979.cc: New.
2470 * testsuite/23_containers/list/modifiers/1.h: Adjust.
2471 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2472 Adjust dg-error line number.
2474 2013-03-16 Jason Merrill <jason@redhat.com>
2477 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
2479 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2482 * libsupc++/exception_ptr.h (type_info): Declare.
2484 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2487 * include/std/mutex (lock_guard, unique_lock, lock): Define without
2488 depending on _GLIBCXX_HAS_GTHREADS.
2489 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
2491 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2494 * include/std/future (__future_base::_Result): Add result_type
2496 (__future_base::_S_allocate_result): Overload for std::allocator.
2497 (__future_base::_Task_setter): Use _Result::result_type instead of
2498 deducing the type from the task.
2499 (__future_base::_Task_state): Store allocator to allow shared state
2500 to be reset. Replace std::function with member of target object type
2502 (__future_base::_Task_state_base): New abstract base class.
2503 (__future_base::_Task_state_base::_M_run): New virtual function to
2504 invoke type-erased target object.
2505 (__future_base::_Task_state_base::_M_reset): New virtual function to
2506 create new shared_state using same target object and allocator.
2507 (__future_base::__create_task_state): Allocate a new _Task_state.
2508 (packaged_task::packaged_task): Use __create_task_state.
2509 (packaged_task::reset): Use _Task_state_base::_M_reset.
2510 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
2512 2013-03-15 Tom Tromey <tromey@redhat.com>
2514 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
2515 (PROBE2): New macro.
2516 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
2517 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
2518 * configure.ac: Check for sys/sdt.h.
2519 * configure, config.h.in: Rebuild.
2521 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2524 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
2525 allocator_traits instead of calling construct directly.
2526 * testsuite/23_containers/map/56613.cc: New.
2528 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
2530 * doc/html/*: Regenerate.
2532 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
2535 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
2536 * testsuite/20_util/is_fundamental/value.cc: Extend.
2537 * testsuite/20_util/is_compound/value.cc: Likewise.
2539 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
2541 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
2544 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
2546 * include/bits/memoryfwd.h: New. Centralize forward declarations.
2547 * include/bits/algorithmfwd.h: Consistent comments.
2548 * include/bits/localefwd.h: Same.
2549 * include/ext/vstring_fwd.h: Same.
2550 * include/parallel/algorithmfwd.h: Same.
2551 * include/parallel/numericfwd.h: Same.
2552 * include/std/iosfwd: Same.
2554 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
2556 * include/ext/alloc_traits.h: Remove allocator forward decl.
2557 * include/bits/stl_construct.h: Same.
2558 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
2559 forward decl. Consistent comments.
2561 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
2563 * include/Makefile.am (bits_headers): Add memoryfwd.h.
2564 * include/Makefile.in: Regenerate.
2567 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
2569 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
2570 Reset pointers after deallocation when memory can be reused.
2571 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
2572 elements to really challenge C++11 allocator integration.
2573 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
2574 * testsuite/23_containers/vector/allocator/copy_assign.cc:
2576 * testsuite/23_containers/vector/allocator/move_assign.cc:
2578 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
2579 swap vector back before checks on memory/personality mapping are
2581 * testsuite/23_containers/forward_list/allocator/minimal.cc:
2582 Insert element to really challenge C++11 allocator integration.
2583 * testsuite/23_containers/forward_list/allocator/copy.cc:
2585 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
2587 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
2589 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
2590 and swap forward_list back before checks on memory/personality
2591 mapping are performed.
2593 2013-03-07 Jakub Jelinek <jakub@redhat.com>
2595 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2596 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2597 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2599 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2600 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2601 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2602 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2603 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2604 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2606 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2608 * scripts/extract_symvers.pl: Omit symbols bound to base
2610 * scripts/extract_symvers.in: Likewise.
2611 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2612 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2613 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2614 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2615 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2617 2013-03-04 Ulrich Drepper <drepper@gmail.com>
2619 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
2620 Optimize generation function by pulling computation of __r into the
2621 constructor for param_type. Also compare _M_mu in operator==.
2624 2013-03-02 Ulrich Drepper <drepper@gmail.com>
2626 Add triangular and von Mises distributions.
2627 * include/ext/random: Include <ext/cmath>.
2628 Add __gnu_cxx::triangular_distribution<> and
2629 __gnu_cxx::von_mises_distribution<> classes.
2630 * include/ext/random.tcc: Add out-of-line functions for
2631 __gnu_cxx::triangular_distribution<> and
2632 __gnu_cxx::von_mises_distribution<>.
2633 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
2634 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
2635 * testsuite/ext/triangular_distribution/operators/serialize.cc:
2637 * testsuite/ext/triangular_distribution/operators/equal.cc:
2639 * testsuite/ext/triangular_distribution/operators/inequal.cc:
2641 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
2643 * testsuite/ext/triangular_distribution/requirements/
2644 explicit_instantiation/1.cc: New file.
2645 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
2646 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
2647 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
2649 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
2650 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
2652 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
2654 * testsuite/ext/von_mises_distribution/requirements/
2655 explicit_instantiation/1.cc: New file.
2658 * include/Makefile.am (ext_headers): Add cmath.
2659 * include/Makefile.in: Regenerated.
2660 * include/ext/cmath: New file.
2662 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2664 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2665 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2666 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2667 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2668 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2670 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
2673 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
2674 * testsuite/29_atomics/atomic/operators/56012.cc: New.
2677 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
2679 * testsuite/29_atomics/atomic/operators/56011.cc: New.
2681 2013-02-25 Jason Merrill <jason@redhat.com>
2683 * configure.ac: Check for __cxa_thread_atexit_impl.
2684 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
2686 * config.h.in, configure: Regenerate.
2688 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2690 * include/std/streambuf (basic_streambuf): Use injected class name
2691 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
2694 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2696 * doc/html/faq.html: Fix spelling.
2697 * doc/xml/faq.xml: Likewise.
2698 * include/bits/basic_ios.h: Likewise.
2699 * include/bits/regex.h: Likewise.
2700 * include/std/istream: Likewise.
2701 * include/std/streambuf: Likewise.
2703 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2705 * testsuite/23_containers/unordered_set/55043.cc: Add missing
2706 namespace qualification.
2707 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2709 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
2711 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
2712 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
2713 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
2714 * include/bits/stl_pair.h: Add to utilities group.
2715 * include/std/tuple: Same.
2716 * include/std/typeindex: Same.
2718 * include/bits/stringfwd.h: Fix markup.
2719 * include/std/limits: Same.
2720 * include/std/type_traits: Same.
2721 * include/tr1/memory: Same.
2722 * include/tr1/regex: Same.
2723 * scripts/run_doxygen: Comment.
2724 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
2726 2013-02-14 Jason Merrill <jason@redhat.com>
2728 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
2729 test if unsupported.
2731 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
2734 * include/std/complex (complex): Undefine.
2735 * include/c_compatibility/complex.h (complex): Only undefine if
2736 <complex> has been included.
2737 * testsuite/26_numerics/complex/56111.cc: New testcase.
2739 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
2741 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
2742 default constructor protected.
2743 * include/bits/hashtable.h: static assert that _Hash_code_base has
2744 a default constructor available through inheritance.
2746 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
2748 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
2751 2013-02-12 Julian Brown <julian@codesourcery.com>
2753 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
2754 Don't expect dots after abbreviated weekday names for ru_RU for
2755 glibc versions >= 2.17.
2756 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
2759 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
2761 * include/bits/random.tcc (__transform): Remove.
2763 (discrete_distribution<>::param_type::_M_initialize): Adjust.
2764 (piecewise_constant_distribution<>::param_type::_M_initialize):
2766 (piecewise_linear_distribution<>::param_type::_M_initialize):
2769 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
2771 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
2772 Use -fimplicit-templates.
2773 * src/c++11/Makefile.in: Regenerate.
2774 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
2775 std::lower_bound template.
2777 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
2779 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
2780 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
2781 in C++11 mode and if available in the underlying C library.
2782 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
2783 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
2784 _GLIBCXX_HAVE_QUICK_EXIT.
2786 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
2788 * doc/html/*: Regenerate.
2790 2013-02-11 Jason Merrill <jason@redhat.com>
2792 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
2793 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
2794 * config.h.in, configure: Regenerate.
2795 * include/c_std/cstdlib: Add atexit and at_quick_exit.
2796 * include/c_global/cstdlib: Add atexit and at_quick_exit.
2797 * testsuite/18_support/quick_exit/quick_exit.cc: New.
2799 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
2803 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2806 * include/bits/basic_ios.h: Replace operator void*() const
2807 with explicit operator bool() const in C++11 and greater.
2808 * testsuite/27_io/basic_ios/pr56193.cc: New file.
2810 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
2811 Jonathan Wakely <jwakely.gcc@gmail.com>
2813 * doc/xml/manual/containers.xml: Add section on unordered containers.
2814 * doc/xml/manual/using.xml: Fix incomplete sentence.
2816 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
2819 * include/bits/hashtable.h (__cache_default): Check if hash function
2821 * testsuite/23_containers/unordered_set/56267.cc: New.
2822 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2823 dg-error line number.
2824 * testsuite/23_containers/unordered_set/
2825 not_default_constructible_hash_neg.cc: Likewise.
2828 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
2830 * testsuite/23_containers/unordered_set/56278.cc: New.
2832 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
2834 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
2837 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
2840 * include/tr1/special_function_util.h: Remove spurious const
2841 from numeric arguments.
2842 * include/tr1/riemann_zeta.tcc: Likewise.
2843 * include/tr1/exp_integral.tcc: Likewise.
2844 * include/tr1/bessel_function.tcc: Likewise.
2845 * include/tr1/hypergeometric.tcc: Likewise.
2846 * include/tr1/modified_bessel_func.tcc: Likewise.
2847 * include/tr1/poly_laguerre.tcc: Likewise.
2848 * include/tr1/gamma.tcc: Likewise.
2849 * include/tr1/legendre_function.tcc: Likewise.
2850 * include/tr1/poly_hermite.tcc: Likewise.
2851 * include/tr1/ell_integral.tcc: Likewise.
2852 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
2853 If argument is zero return function value.
2854 * testsuite/tr1/5_numerical_facilities/special_functions/
2855 08_cyl_bessel_i/pr56216.cc: New.
2857 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
2859 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
2861 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2864 * include/bits/basic_ios.h: Replace operator void*() const
2865 with explicit operator bool() const in C++11 and greater.
2866 * testsuite/27_io/basic_ios/pr56193.cc: New file.
2868 2013-02-04 Dodji Seketeli <dodji@redhat.com>
2870 Add missing explicit instantiation for std::lower_bound template
2871 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
2872 missing instantiation for std::lower_bound template.
2874 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
2876 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
2877 * include/bits/basic_string.h: Specialize previous to mark
2878 std::hash for string types as slow.
2879 * include/bits/hashtable.h (__cache_default): Replace is_integral
2880 with __is_fast_hash.
2881 * src/c++11/hash_c++0x.cc: Add type_traits include.
2882 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2883 Adapt dg-error line number.
2884 * testsuite/23_containers/unordered_set/
2885 not_default_constructible_hash_neg.cc: Likewise.
2887 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2888 Paolo Carlini <paolo.carlini@oracle.com>
2890 PR libstdc++/56202 (again)
2891 * include/bits/random.tcc (binomial_distribution<>::
2892 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
2895 * include/bits/random.h: Fix comment typo.
2897 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2898 Paolo Carlini <paolo.carlini@oracle.com>
2901 * include/bits/random.tcc (binomial_distribution<>::
2902 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
2905 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
2907 Update copyright years.
2908 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
2909 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
2910 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
2911 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
2912 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
2913 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
2914 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
2915 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
2916 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
2917 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
2918 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
2919 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
2920 testsuite/29_atomics/atomic/cons/assign_neg.cc,
2921 testsuite/29_atomics/atomic/cons/copy_neg.cc,
2922 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
2923 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
2924 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
2925 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
2926 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2927 Update lines in dg error matches.
2929 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
2931 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
2933 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
2935 * include/bits/hashtable_policy.h
2936 (_Prime_rehash_policy::_M_next_bkt)
2937 (_Prime_rehash_policy::_M_need_rehash): Move definition...
2938 * src/c++11/hashtable_c++0x.cc: ... here.
2939 * src/shared/hashtable-aux.cc: Remove c++config.h include.
2940 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
2943 2013-01-29 Jason Merrill <jason@redhat.com>
2946 * config/abi/pre/gnu.ver: Don't export construction vtables.
2947 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2949 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
2952 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
2953 to construct value_type explicitly before trying to extract the key.
2954 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
2956 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
2958 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
2959 _Hashtable_ebo_helper to embed functors into the local_iterator
2960 when necessary. Pass information about functors involved in hash
2962 * include/bits/hashtable.h (__cache_default): Do not cache for
2963 builtin integral types unless the hash functor is not noexcept
2964 qualified or is not default constructible. Adapt static assertions
2965 and local iterator instantiations.
2966 * include/debug/unordered_set
2967 (std::__debug::unordered_set<>::erase): Detect local iterators to
2968 invalidate using contained node rather than generating a dummy
2969 local_iterator instance.
2970 (std::__debug::unordered_multiset<>::erase): Likewise.
2971 * include/debug/unordered_map
2972 (std::__debug::unordered_map<>::erase): Likewise.
2973 (std::__debug::unordered_multimap<>::erase): Likewise.
2974 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
2975 std::tr1 and std versions of unordered_set regardless of any
2976 macro. Add test on default cache behavior.
2977 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
2978 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2980 * testsuite/23_containers/unordered_set/
2981 not_default_constructible_hash_neg.cc: New.
2982 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
2984 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
2987 * include/std/complex (pow(const complex<>&, int)): Avoid __n
2990 2013-01-22 Jakub Jelinek <jakub@redhat.com>
2992 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2993 Tightten scan-assembler-times regexps, add dg-additional-options for
2994 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
2997 2013-01-12 Andi Kleen <ak@linux.intel.com>
2998 Jonathan Wakely <jwakely.gcc@gmail.com>
3001 * include/bits/atomic_base.h (__memory_order_modifier): Add
3002 __memory_order_mask, __memory_order_modifier_mask,
3003 __memory_order_hle_acquire, __memory_order_hle_release.
3004 (operator|,operator&): Add.
3005 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
3006 (__cmpexch_failure_order): Add.
3007 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
3009 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
3012 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
3015 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
3017 (__basic_future::_M_get_result()): Const qualify.
3018 (shared_future::get()): Likewise.
3019 * testsuite/30_threads/shared_future/members/get.cc: Use const
3022 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
3024 PR libstdc++/55043 (again)
3025 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
3026 unless construction would be well-formed.
3027 (__allow_copy_cons, __check_copy_constructible): Define.
3028 * include/bits/unordered_map.h (__check_copy_constructible): Use as
3029 base class so copy constructor will be deleted if appropriate.
3030 (is_copy_constructible): Remove specialization.
3031 * include/bits/unordered_set.h: Likewise.
3032 * include/debug/unordered_map.h: Undo previous commit. Default copy
3033 and move constructors.
3034 * include/debug/unordered_set.h: Likewise.
3035 * include/profile/unordered_map.h: Undo previous commit.
3036 * include/profile/unordered_set.h: Likewise.
3037 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
3038 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
3039 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
3040 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
3041 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
3042 cannot support incomplete types.
3043 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
3046 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
3049 * include/std/unordered_map: Include alloc_traits.h
3050 * include/std/unordered_set: Likewise.
3051 * include/bits/alloc_traits.h: Define __is_copy_insertable.
3052 * include/bits/unordered_map.h: Use it.
3053 * include/bits/unordered_set.h: Likewise.
3054 * include/debug/unordered_map.h: Likewise.
3055 * include/debug/unordered_set.h: Likewise.
3056 * include/profile/unordered_map.h: Likewise.
3057 * include/profile/unordered_set.h: Likewise.
3058 * include/bits/hashtable.h: Fix comment typos.
3059 * testsuite/23_containers/unordered_map/55043.cc: New.
3060 * testsuite/23_containers/unordered_multimap/55043.cc: New.
3061 * testsuite/23_containers/unordered_multiset/55043.cc: New.
3062 * testsuite/23_containers/unordered_set/55043.cc: New.
3064 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
3066 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
3069 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3071 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
3073 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
3076 * include/std/functional (_Mem_fn::operator()): Fix constraints to
3078 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
3079 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
3081 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
3084 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
3086 * configure: Regenerate.
3088 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
3091 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
3092 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
3096 * include/std/functional (bad_function_call::what()): Declare.
3097 * src/c++11/functional.cc (bad_function_call::what()): Define.
3098 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
3099 * testsuite/20_util/bad_function_call/what.cc: New.
3101 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
3103 * include/bits/unordered_map.h: Fix typo in comments.
3104 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
3105 counts for unordered associative containers.
3107 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
3109 * doc/xml/manual/abi.xml: Update library and symbol versions.
3111 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
3113 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
3115 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
3118 Copyright (C) 2013 Free Software Foundation, Inc.
3120 Copying and distribution of this file, with or without modification,
3121 are permitted in any medium without royalty provided the copyright
3122 notice and this notice are preserved.