1 2013-08-03 Tim Shen <timshen91@gmail.com>
3 Implement bracket expression.
4 * include/bits/regex.h: Remove constexpr from "|=", etc.
5 * include/bits/regex_compiler.h: Parse bracket expression.
6 * include/bits/regex_nfa.h: _Comparator and _BracketMatcher(old
8 * include/bits/regex_nfa.tcc: Implement them.
9 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
10 from regex_search to regex_match.
11 * testsuite/28_regex/algorithms/regex_match/extended/
12 cstring_bracket_01.cc: New.
14 2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
16 * include/debug/functions.h (__foreign_iterator_aux4):
17 Initialize __l and __ge.
19 2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
22 * include/debug/functions.h: Include <bits/move.h>; minor formatting
24 (__foreign_iterator_aux4): Declare __l and __ge constexpr.
25 * include/debug/safe_iterator.h (_Safe_iterator<>::operator->):
27 * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
28 operator->): Likewise.
30 2013-08-01 François Dumont <fdumont@gcc.gnu.org>
33 * include/debug/formatter.h (_Debug_msg_id): Add
34 __msg_insert_itself_range entry.
35 * include/debug/functions.h (_Insert_range_from_self_is_safe<>):
36 New, indicate container types supporting self range insertion in
38 (__foreign_iterator): New, check if an iterator points to a given
40 * include/debug/macros.h (__glibcxx_check_insert_range): Add check
41 using __foreign_iterator.
42 (__gibcxx_check_insert_range_after): Likewise.
43 * include/debug/string (_Insert_range_from_self_is_safe<>):
44 Partially specialized to mark __gnu_debug::basic_string<> as
45 supporting self range insert.
46 * include/debug/list (_Insert_range_from_self_is_safe<>):
47 Partially specialized to mark std::list as supporting self range
48 insert if _GLIBCXX_DEBUG_PEDANTIC is not defined.
49 * include/debug/forward_list (_Insert_range_from_self_is_safe<>):
51 * src/c++11/debug.cc (_S_debug_messages): Add
52 __msg_insert_itself_range_entry message.
53 (_Error_formatter::_Parameter::_M_print_description): Display
54 iterator sequence address rather than sequence address when the
55 parameter type is an iterator.
56 (_Error_formatter::_M_print_word): Enhance behavior when
57 displaying a word with an appended '\n'.
58 * testsuite/util/debug/checks.h (check_insert4<>): New.
59 * testsuite/23_containers/deque/debug/insert5_neg.cc: New.
60 * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
61 * testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise.
62 * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
63 * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
64 * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
67 2013-08-01 Fabien Chêne <fabien@gcc.gnu.org>
70 * include/tr1/cmath: Remove pow(double,double) overload, remove a
71 duplicated comment about DR 550. Add a comment to explain the
73 * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.
75 2013-07-31 Tim Shen <timshen91@gmail.com>
77 Thompson matcher refactored. Fix grouping problem.
78 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
79 * include/bits/regex_compiler.h: Tweak for auto switching.
80 * include/bits/regex_grep_matcher.h: Class structure.
81 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
83 * include/bits/regex_nfa.h: Change _Results's interfaces.
84 * include/std/regex: Includes <map> and <queue>.
85 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
87 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
89 * testsuite/28_regex/algorithms/regex_match/extended/
90 string_dispatch_01.cc: New.
92 2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
95 * include/bits/stl_bvector.h: Use friend struct hash intead of
96 friend class hash to work around useless warnings produced by
98 * include/std/bitset: Likewise.
100 2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
102 * src/c++11/functexcept.cc: Do not include the whole <regex>.
103 * src/c++11/regex.cc: Likewise.
105 2013-07-31 Tim Shen <timshen91@gmail.com>
109 2013-07-31 Tim Shen <timshen91@gmail.com>
111 Thompson matcher refactored. Fix grouping problem.
112 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
113 * include/bits/regex_compiler.h: Tweak for auto switching.
114 * include/bits/regex_grep_matcher.h: Class structure.
115 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
116 matcher) refactoring.
117 * include/bits/regex_nfa.h: Change _Results's interfaces.
118 * include/std/regex: Includes <map> and <queue>.
119 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
121 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
123 * testsuite/28_regex/algorithms/regex_match/extended/
124 string_dispatch_01.cc: New.
126 2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
130 2013-07-30 Tim Shen <timshen91@gmail.com>
132 Thompson matcher refactored. Fix grouping problem.
133 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
134 * include/bits/regex_compiler.h: Tweak for auto switching.
135 * include/bits/regex_grep_matcher.h: Class structure.
136 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
137 matcher) refactoring.
138 * include/bits/regex_nfa.h: Change _Results's interfaces.
139 * include/std/regex: Includes <map> and <queue>.
140 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
142 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
144 * testsuite/28_regex/algorithms/regex_match/extended/
145 string_dispatch_01.cc: New.
147 2013-07-29 Nathan Froyd <froydnj@gcc.gnu.org>
149 * include/std/atomic (compare_exchange_weak, compare_exchange_strong):
150 Add call to __cmpexch_failure_order.
151 * testsuite/util/testsuite_common_types.h
152 (compare_exchange_order_lowering): New generator.
153 * testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
156 2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
158 * include/std/complex (pow(const complex<>&, int)): Enable in
160 * testsuite/26_numerics/complex/dr844.cc: Adjust.
161 * doc/xml/manual/intro.xml: Update.
163 2013-07-25 Tim Shen <timshen91@gmail.com>
165 Add documents and comments.
166 * include/bits/regex.h: Documents and comments.
167 * include/bits/regex_grep_matcher.h: Likewise.
168 * include/bits/regex_grep_matcher.tcc: Likewise.
169 * testsuite/28_regex/iterators/regex_iterator/char/
170 string_position_01.cc: New.
172 2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
175 * doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
178 2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
180 * include/bits/random.h (random_device): Avoid using the FILE type.
181 * include/std/random: Do not include <cstdio>.
182 * src/c++11/random.cc: ... include it here.
183 (random_device::_M_init, random_device::_M_fini,
184 random_device::_M_getval): Cast back and forth void* and FILE*.
186 2013-07-24 Tim Shen <timshen91@gmail.com>
188 Reimplment matcher using Depth-first search(backtracking).
191 * include/bits/regex.h: regex_match() and regex_search().
192 * include/bits/regex_cursor.h: Fix _M_set_pos().
193 * include/bits/regex_grep_matcher.h: add _M_dfs_match().
194 * include/bits/regex_grep_matcher.tcc: Implement it.
195 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: New.
196 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: New.
197 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
200 2013-07-23 Tim Shen <timshen91@gmail.com>
202 Implement regex_iterator and regex_token_iterator.
203 * include/bits/regex.h: regex_iterator and regex_token_iterator.
204 * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
206 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
208 * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
210 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
213 2013-07-23 Paolo Carlini <paolo.carlini@oracle.com>
215 * include/std/random: Add back <cstdio> include.
216 * src/c++11/random.cc: Don't include <cstdio> here.
218 2013-07-22 Jason Merrill <jason@redhat.com>
221 * libsupc++/atexit_thread.cc (run): Delete cleanup elts.
223 2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
226 * src/c++11/random.cc (random_device::_M_getval): If possible, use
227 read instead of std::fread.
228 * include/std/random: Do not include <cstdio> unnecessarily.
230 2013-07-21 Tim Shen <timshen91@gmail.com>
232 Partially implement regex_search.
233 * include/bits/regex.h: regex_search.
234 * include/bits/regex_grep_matcher.h: _M_search_from_first.
235 * include/bits/regex_grep_matcher.tcc: Implement it.
236 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
238 2013-07-21 Jonathan Wakely <jwakely.gcc@gmail.com>
241 * include/std/condition_variable (condition_variable_any): Move into
242 inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
243 * src/c++11/condition_variable.cc (condition_variable_any): Move
245 * src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
246 * src/Makefile.am: Add new source file.
247 * src/Makefile.in: Regenerate.
249 2013-07-09 Tim Shen <timshen91@gmail.com>
251 Implement class regex_traits.
252 * include/bits/regex.h: Implement lookup_classname and
253 lookup_collatename; modify isctype; partially implement
255 * testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
256 * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
257 * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
258 * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
259 * testsuite/28_regex/traits/wchar_t/isctype.cc: New.
260 * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
261 * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
262 * testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.
264 2013-07-07 Ed Smith-Rowland <3dw4rd@verizon.net>
266 * doc/xml/manual/status_cxx2014.xml: Add links for papers.
268 2013-07-05 François Dumont <fdumont@gcc.gnu.org>
270 * include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward
272 (_MoveReuseOrAllocNode): Remove.
273 (_Insert_base): Take a functor defining how the node is generated.
274 * include/bits/hashtable.h: Adapt.
275 (operator=(initializer_list<value_type>)): Reuse node if any.
276 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
277 Adjust dg-error line number.
278 * testsuite/23_containers/unordered_set/
279 not_default_constructible_hash_neg.cc: Likewise.
281 2013-07-05 Paolo Carlini <paolo.carlini@oracle.com>
283 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
284 Tweak, avoid potential undefined behavior.
285 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
287 * testsuite/23_containers/vector/bool/modifiers/insert/
288 const_iterator.cc: Likewise.
289 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
292 2013-07-04 Veres Lajos <vlajos@gmail.com>
293 Jonathan Wakely <jwakely.gcc@gmail.com>
295 * config/locale/generic/codecvt_members.cc: Fix typo.
296 * configure.host: Likewise.
297 * doc/html/manual/policy_data_structures_design.html: Likewise.
298 * doc/xml/manual/policy_data_structures.xml: Likewise.
299 * include/bits/hashtable.h: Likewise.
300 * include/bits/random.h: Likewise.
301 * include/profile/impl/profiler_trace.h: Likewise.
302 * testsuite/23_containers/deque/cons/2.cc: Likewise.
303 * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
304 * testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise.
305 * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
307 2013-07-04 Ray Chason <chasonr@newsguy.com>
308 Paolo Carlini <paolo.carlini@oracle.com>
311 * include/bits/regex.h (regex_token_iterator<>::operator==,
312 regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
313 regex_token_iterator<>::operator->): Declare const.
315 2013-07-01 Paolo Carlini <paolo.carlini@oracle.com>
317 * include/bits/stl_list.h (list<>::insert(iterator,
318 size_type, const value_type&), list<>::insert(iterator,
319 initializer_list<>), list<>::insert(iterator, _InputIterator,
320 _InputIterator), list<>::splice(iterator, list&&),
321 list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
322 iterator), list<>::splice(iterator, list&, iterator),
323 list<>::splice(iterator, list&&, iterator, iterator),
324 list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
325 signatures to take const_iterator(s).
326 * include/bits/list.tcc (list<>::insert(const_iterator, size_type,
327 const value_type&), list<>::insert(const_iterator, _InputIterator,
328 _InputIterator)): Define.
329 * include/ext/vstring.h (__versa_string<>::insert(iterator,
330 size_type, _CharT), __versa_string<>::insert(iterator,
331 _InputIterator, _InputIterator), __versa_string<>::insert(iterator,
332 std::initializer_list<>), __versa_string<>::replace(iterator,
333 iterator, _InputIterator, _InputIterator), __versa_string<>::
334 replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
335 signatures to take const_iterator(s).
336 (__versa_string<>::_M_replace_dispatch): Take const_iterators.
337 * include/ext/vstring.tcc: Likewise.
338 * include/debug/list: Adjust.
339 * include/profile/list: Likewise.
340 * testsuite/23_containers/list/operations/splice/const_iterator.cc:
342 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
344 * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
346 * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
348 * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
350 * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
353 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
354 Adjust dg-error line number.
355 * testsuite/23_containers/list/requirements/dr438/
356 constructor_1_neg.cc: Likewise.
357 * testsuite/23_containers/list/requirements/dr438/
358 constructor_2_neg.cc: Likewise.
359 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
362 2013-06-30 Paolo Carlini <paolo.carlini@oracle.com>
364 * include/bits/stl_deque.h (deque<>::insert(iterator,
365 size_type, const value_type&), deque<>::insert(iterator,
366 initializer_list<>), deque<>::insert(iterator, _InputIterator,
367 _InputIterator)): Adjust C++11 signatures to take a const_iterator.
368 * include/bits/stl_vector.h: Likewise.
369 * include/bits/stl_bvector.h: Likewise.
370 * include/debug/deque: Adjust.
371 * include/debug/vector: Likewise.
372 * include/profile/deque: Likewise.
373 * include/profile/vector: Likewise.
374 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
376 * testsuite/23_containers/vector/bool/modifiers/insert/
377 const_iterator.cc: Likewise.
378 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
381 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
382 Adjust dg-error line number.
383 * testsuite/23_containers/deque/requirements/dr438/
384 constructor_1_neg.cc: Likewise.
385 * testsuite/23_containers/deque/requirements/dr438/
386 constructor_2_neg.cc: Likewise.
387 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
389 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
391 * testsuite/23_containers/vector/requirements/dr438/
392 constructor_1_neg.cc: Likewise.
393 * testsuite/23_containers/vector/requirements/dr438/
394 constructor_2_neg.cc: Likewise.
395 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
398 2013-06-29 François Dumont <fdumont@gcc.gnu.org>
400 * include/bits/hashtable_policy.h (_Insert_base): Consider hint in
402 * include/bits/hashtable.h: Likewise.
403 * testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
404 * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
406 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
407 Adjust dg-error line number.
408 * testsuite/23_containers/unordered_set/
409 not_default_constructible_hash_neg.cc: Likewise.
410 * doc/xml/manual/containers.xml: Document hinting in unordered
413 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
415 * testsuite/21_strings/basic_string/operations/*: Move inside
416 testsuite/21_strings/basic_string/operations/data/.
417 * testsuite/21_strings/basic_string/compare/*: Move inside
418 testsuite/21_strings/basic_string/operations/.
419 * testsuite/21_strings/basic_string/find/*: Likewise.
420 * testsuite/21_strings/basic_string/rfind/*: Likewise.
421 * testsuite/21_strings/basic_string/substr/*: Likewise.
423 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
425 * testsuite/21_strings/basic_string/append/*: Move inside
426 testsuite/21_strings/basic_string/modifiers/.
427 * testsuite/21_strings/basic_string/assign/*: Likewise.
428 * testsuite/21_strings/basic_string/insert/*: Likewise.
429 * testsuite/21_strings/basic_string/replace/*: Likewise.
430 * testsuite/21_strings/basic_string/modifiers/pop_back/char/
431 pop_back.cc: Rename to 1.cc.
432 * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
433 pop_back.cc: Likewise.
434 * testsuite/ext/vstring/assign/*: Move inside
435 testsuite/ext/vstring/modifiers/.
437 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
439 * include/bits/stl_deque.h (deque<>::insert(iterator,
440 const value_type&), deque<>::insert(iterator, value_type&&),
441 deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
442 take a const_iterator.
443 (deque<>::erase): Simplify.
444 * include/bits/stl_list.h: Likewise.
445 (_List_iterator<>::_M_const_cast): Add.
446 * include/bits/stl_vector.h: Likewise.
447 * include/bits/stl_bvector.h: Likewise.
448 (_Bit_iterator::_M_const_cast): Add.
449 * include/bits/deque.tcc: Adjust definitions.
450 * include/bits/list.tcc: Likewise.
451 * include/bits/vector.tcc: Likewise.
452 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
453 Define trivial version in C++98 mode.
454 * include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
455 __versa_string<>::replace(iterator, iterator, const __versa_string&),
456 __versa_string<>::replace(iterator, iterator, const _CharT*,
457 size_type), __versa_string<>::replace(iterator, iterator,
458 const _CharT*), __versa_string<>::replace(iterator, iterator,
459 size_type, _CharT)): Adjust C++11 signatures to take a pair of
461 * include/debug/deque: Adjust.
462 * include/debug/list: Likewise.
463 * include/debug/vector: Likewise.
464 * include/profile/deque: Likewise.
465 * include/profile/list: Likewise.
466 * include/profile/vector: Likewise.
467 (vector<>::emplace): Add.
468 * testsuite/util/exception/safety.h: Update.
469 * testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
471 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
473 * testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
475 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
477 * testsuite/23_containers/vector/bool/modifiers/insert/
478 const_iterator.cc: Likewise.
479 * testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
481 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
483 * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
485 * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
487 * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
489 * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
492 * testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
493 ext/vstring/modifiers/erase/char/.
494 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
495 ext/vstring/modifiers/wchar_t/.
496 * testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
497 ext/vstring/modifiers/pop_back/char/.
498 * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
499 testsuite/ext/vstring/modifiers/pop_back/wchar_t/.
501 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
502 Adjust dg-error line number.
503 * testsuite/23_containers/deque/requirements/dr438/
504 constructor_1_neg.cc: Likewise.
505 * testsuite/23_containers/deque/requirements/dr438/
506 constructor_2_neg.cc: Likewise.
507 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
509 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
511 * testsuite/23_containers/list/requirements/dr438/
512 constructor_1_neg.cc: Likewise.
513 * testsuite/23_containers/list/requirements/dr438/
514 constructor_2_neg.cc: Likewise.
515 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
517 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
519 * testsuite/23_containers/vector/requirements/dr438/
520 constructor_1_neg.cc: Likewise.
521 * testsuite/23_containers/vector/requirements/dr438/
522 constructor_2_neg.cc: Likewise.
523 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
526 2013-06-25 Ed Smith-Rowland <3dw4rd@verizon.net>
528 Status page for C++2014 library features
529 * doc/xml/faq.xml: Add link to new C++14 status page.
530 * doc/xml/manual/intro.xml: Ditto.
531 * doc/xml/manual/status_cxx2014.xml: New.
533 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
535 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
536 spurious fails with check-debug.
537 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
539 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
540 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
543 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
546 * include/bits/char_traits.h (char_traits<char>::lt): Implement
548 * testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
550 2013-06-24 Bernd Edlinger <bernd.edlinger@hotmail.de>
553 * include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
554 declare per the letter of the C++ standard in terms of void.
555 * include/c_std/cstdlib: Likewise.
557 2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>
560 * include/bits/random.h (binomial_distribution<>::_M_waiting):
561 Add double parameter.
562 * include/bits/random.tcc (binomial_distribution<>::operator()
563 (_UniformRandomNumberGenerator&, const param_type&)): Pass
564 __param._M_q to _M_waiting.
565 (_M_waiting): Adjust.
566 * testsuite/26_numerics/random/binomial_distribution/
567 operators/values.cc: Add tests.
569 2013-06-21 Paolo Carlini <paolo.carlini@oracle.com>
572 * include/std/valarray (valarray<>::operator=(const _Expr<>&)):
573 Implement correctly C++11 26.6.2.3/1.
574 * testsuite/26_numerics/valarray/dr630-3.C: New.
576 2013-06-18 Jonathan Wakely <jwakely.gcc@gmail.com>
579 * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
580 functionality to new __timed_mutex_impl mixin. Overload try_lock_until
581 to handle conversion between different clocks. Replace constrained
582 __try_lock_for_impl overloads with conditional increment.
583 * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
584 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.
586 2013-06-17 Jonathan Wakely <jwakely.gcc@gmail.com>
587 Chris Jefferson <chris@bubblescope.net>
589 * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
590 dispatch to traditional std::equal for random-access iterators.
591 (__equal2_aux, __equal2): Remove.
592 (__equal::equal): Remove unused overloads.
593 * include/bits/stl_algo.h (is_permutation): Fix typos.
595 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
597 * include/std/shared_mutex (shared_lock::operator=): Add missing
600 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
603 * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
604 allocator's pointer type.
605 * include/bits/hashtable.h (_Hashtable): Likewise.
606 * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
607 * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
608 * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
609 * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
611 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
613 * include/std/shared_mutex: Implement N3659.
614 * include/bits/c++14_warning.h: New.
615 * include/Makefile.am: Add new headers.
616 * include/Makefile.in: Regenerate.
617 * testsuite/30_threads/shared_lock/cons/1.cc: New.
618 * testsuite/30_threads/shared_lock/locking/2.cc: New.
619 * testsuite/30_threads/shared_lock/cons/2.cc: New.
620 * testsuite/30_threads/shared_lock/locking/3.cc: New.
621 * testsuite/30_threads/shared_lock/cons/3.cc: New.
622 * testsuite/30_threads/shared_lock/locking/4.cc: New.
623 * testsuite/30_threads/shared_lock/cons/4.cc: New.
624 * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
625 * testsuite/30_threads/shared_lock/cons/5.cc: New.
626 * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
627 * testsuite/30_threads/shared_lock/cons/6.cc: New.
628 * testsuite/30_threads/shared_lock/requirements/
629 explicit_instantiation.cc: New.
630 * testsuite/30_threads/shared_lock/locking/1.cc: New.
631 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
632 * testsuite/30_threads/shared_mutex/cons/1.cc: New.
633 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
634 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
635 * testsuite/30_threads/shared_mutex/requirements/
636 standard_layout.cc: New.
637 * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
638 * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
640 2013-06-15 Paolo Carlini <paolo.carlini@oracle.com>
643 * include/bits/unordered_map.h (unordered_map<>::insert,
644 unordered_multimap<>::insert): Use std::forward, not std::move.
645 * testsuite/23_containers/unordered_map/insert/57619.C: New.
646 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
648 2013-06-14 Alan Modra <amodra@gmail.com>
650 * configure.host (abi_baseline_pair): Match powerpc64*.
652 2013-06-13 Daniel Krugler <daniel.kruegler@gmail.com>
654 * include/std/type_traits (is_function): Support ref-qualified
656 (is_copy_constructible, is_move_constructible, is_copy_assignable,
657 is_move_assignable, is_nothrow_copy_constructible,
658 is_nothrow_move_constructible, is_nothrow_copy_assignable,
659 is_nothrow_move_assignable): Implement LWG 2196.
660 (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
662 (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
664 * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
665 * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
666 * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
667 * testsuite/20_util/is_assignable/value.cc: Likewise.
668 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
669 * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
670 * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
671 * testsuite/20_util/is_function/value.cc: Likewise.
672 * testsuite/20_util/is_move_assignable/value.cc: Likewise.
673 * testsuite/20_util/is_move_constructible/value.cc: Likewise.
674 * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
675 * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
676 * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
677 * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
679 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
681 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
683 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
686 2013-06-13 Paolo Carlini <paolo.carlini@oracle.com>
688 * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
689 __gnu_cxx::__airy_bi()): Remove.
690 * testsuite/tr1/5_numerical_facilities/special_functions/
691 10_cyl_bessel_k/airy.cc: Fix.
693 2013-06-12 Ed Smith-Rowland <3dw4rd@verizon.net>
696 * include/tr1/modified_bessel_func.tcc (__airy): Remove return
698 (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
699 * testsuite/tr1/5_numerical_facilities/special_functions/
700 10_cyl_bessel_k/airy.cc: New.
702 2013-06-11 Ed Smith-Rowland <3dw4rd@verizon.net>
704 Fix library literals error involving namespace __detail.
705 * include/std/chrono: Rename __detail to __select_type. Reformat.
706 * include/bits/basic_string.h: Reformat.
707 * testsuite/20_util/duration/literals/ns_detail.cc: New.
709 2013-06-11 Paolo Carlini <paolo.carlini@oracle.com>
712 * include/c_global/cstddef (max_align_t): Add to namespace std.
713 * include/c_std/cstddef: Likewise.
714 * testsuite/18_support/max_align_t/requirements/1.cc: New.
715 * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
717 2013-06-10 Benjamin Kosnik <bkoz@redhat.com>
719 * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
720 * include/bits/stl_map.h (erase): Use abi_tag when C++11.
721 * include/bits/stl_multimap.h: Same.
722 * include/bits/stl_multiset.h: Same.
723 * include/bits/stl_set.h: Same.
724 * include/bits/stl_tree.h: Same.
725 * include/std/complex (real, imag): Use macro for abi_tag.
727 * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
728 * testsuite/util/testsuite_containers.h (erase_external): New
730 (erase_external_iterators): Same.
731 (linkage_check_cxx98_cxx11_erase): Same.
732 (linkage_check_cxx98_cxx11_erase_iterators): Same.
733 * testsuite/util/testsuite_shared.cc: Define.
734 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
735 * testsuite/23_containers/map/modifiers/erase/
736 dr130-linkage-check.cc: New.
737 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
738 * testsuite/23_containers/multimap/modifiers/erase/
739 dr130-linkage-check.cc: New.
740 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
741 * testsuite/23_containers/multiset/modifiers/erase/
742 dr130-linkage-check.cc: New.
743 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
744 * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
746 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
748 * testsuite/23_containers/map/dr130.cc: Move...
749 * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
750 * testsuite/23_containers/multimap/dr130.cc: Move ...
751 * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
752 * testsuite/23_containers/multiset/dr130.cc: Move...
753 * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
754 * testsuite/23_containers/set/dr130.cc: Move...
755 * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
757 2013-06-10 Thomas Schwinge <thomas@codesourcery.com>
759 * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
760 handling of Linux-based x86 systems to cover all GNU systems.
761 * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
762 * testsuite/18_support/pthread_guard.cc: Likewise.
763 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
765 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
767 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
768 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
769 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
770 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
771 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
772 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
773 * testsuite/23_containers/list/pthread1.cc: Likewise.
774 * testsuite/23_containers/list/pthread5.cc: Likewise.
775 * testsuite/23_containers/map/pthread6.cc: Likewise.
776 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
778 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
780 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
781 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
782 * testsuite/30_threads/async/42819.cc: Likewise.
783 * testsuite/30_threads/async/49668.cc: Likewise.
784 * testsuite/30_threads/async/54297.cc: Likewise.
785 * testsuite/30_threads/async/any.cc: Likewise.
786 * testsuite/30_threads/async/async.cc: Likewise.
787 * testsuite/30_threads/async/launch.cc: Likewise.
788 * testsuite/30_threads/async/sync.cc: Likewise.
789 * testsuite/30_threads/call_once/39909.cc: Likewise.
790 * testsuite/30_threads/call_once/49668.cc: Likewise.
791 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
792 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
793 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
794 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
795 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
796 * testsuite/30_threads/condition_variable/members/53841.cc:
798 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
800 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
801 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
802 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
803 * testsuite/30_threads/condition_variable_any/members/1.cc:
805 * testsuite/30_threads/condition_variable_any/members/2.cc:
807 * testsuite/30_threads/future/cons/move.cc: Likewise.
808 * testsuite/30_threads/future/members/45133.cc: Likewise.
809 * testsuite/30_threads/future/members/get.cc: Likewise.
810 * testsuite/30_threads/future/members/get2.cc: Likewise.
811 * testsuite/30_threads/future/members/share.cc: Likewise.
812 * testsuite/30_threads/future/members/valid.cc: Likewise.
813 * testsuite/30_threads/future/members/wait.cc: Likewise.
814 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
815 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
816 * testsuite/30_threads/lock/1.cc: Likewise.
817 * testsuite/30_threads/lock/2.cc: Likewise.
818 * testsuite/30_threads/lock/3.cc: Likewise.
819 * testsuite/30_threads/lock/4.cc: Likewise.
820 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
821 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
822 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
823 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
824 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
825 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
826 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
827 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
828 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
829 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
830 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
831 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
832 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
833 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
834 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
835 * testsuite/30_threads/packaged_task/cons/move_assign.cc:
837 * testsuite/30_threads/packaged_task/members/get_future.cc:
839 * testsuite/30_threads/packaged_task/members/get_future2.cc:
841 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
842 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
843 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
844 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
845 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
846 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
847 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
848 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
849 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
850 * testsuite/30_threads/promise/cons/1.cc: Likewise.
851 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
852 * testsuite/30_threads/promise/cons/move.cc: Likewise.
853 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
854 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
855 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
856 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
857 * testsuite/30_threads/promise/members/set_exception2.cc:
859 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
860 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
861 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
862 * testsuite/30_threads/promise/members/swap.cc: Likewise.
863 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
864 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
866 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
867 * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
869 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
871 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
872 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
873 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
874 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
875 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
877 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
878 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
879 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
881 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
883 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
885 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
887 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
889 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
891 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
893 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
895 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
897 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
899 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
900 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
901 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
902 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
903 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
904 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
905 * testsuite/30_threads/shared_future/members/wait_for.cc:
907 * testsuite/30_threads/shared_future/members/wait_until.cc:
909 * testsuite/30_threads/this_thread/1.cc: Likewise.
910 * testsuite/30_threads/this_thread/2.cc: Likewise.
911 * testsuite/30_threads/this_thread/3.cc: Likewise.
912 * testsuite/30_threads/this_thread/4.cc: Likewise.
913 * testsuite/30_threads/thread/cons/1.cc: Likewise.
914 * testsuite/30_threads/thread/cons/2.cc: Likewise.
915 * testsuite/30_threads/thread/cons/3.cc: Likewise.
916 * testsuite/30_threads/thread/cons/4.cc: Likewise.
917 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
918 * testsuite/30_threads/thread/cons/5.cc: Likewise.
919 * testsuite/30_threads/thread/cons/6.cc: Likewise.
920 * testsuite/30_threads/thread/cons/7.cc: Likewise.
921 * testsuite/30_threads/thread/cons/8.cc: Likewise.
922 * testsuite/30_threads/thread/cons/9.cc: Likewise.
923 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
924 * testsuite/30_threads/thread/members/1.cc: Likewise.
925 * testsuite/30_threads/thread/members/2.cc: Likewise.
926 * testsuite/30_threads/thread/members/3.cc: Likewise.
927 * testsuite/30_threads/thread/members/4.cc: Likewise.
928 * testsuite/30_threads/thread/members/5.cc: Likewise.
929 * testsuite/30_threads/thread/members/hardware_concurrency.cc:
931 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
932 * testsuite/30_threads/thread/native_handle/typesizes.cc:
934 * testsuite/30_threads/thread/swap/1.cc: Likewise.
935 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
936 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
938 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
939 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
940 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
942 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
943 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
944 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
945 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
946 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
947 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
948 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
949 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
950 * testsuite/30_threads/try_lock/1.cc: Likewise.
951 * testsuite/30_threads/try_lock/2.cc: Likewise.
952 * testsuite/30_threads/try_lock/3.cc: Likewise.
953 * testsuite/30_threads/try_lock/4.cc: Likewise.
954 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
955 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
956 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
957 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
958 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
959 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
960 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
961 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
962 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
963 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
964 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
965 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
966 * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
967 * testsuite/ext/profile/mh.cc: Likewise.
968 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
969 * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
970 * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
972 * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
974 * testsuite/util/testsuite_performance.h: Extend current handling
975 of Linux-based systems to cover all glibc-based systems.
977 2013-06-09 Jonathan Wakely <jwakely.gcc@gmail.com>
979 * include/std/mutex (call_once): Remove parentheses to fix error in
980 c++1y and gnu++1y mode.
981 * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
982 thread to avoid undefined behaviour.
984 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
986 Simplify and clean up library literals.
987 * include/std/chrono: Simplify namespace and versioning management.
988 * include/bits/basic_string.h: Ditto.
989 * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
990 * testsuite/20_util/duration/literals/values.cc: Ditto.
991 * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
992 * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
994 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
996 Implement N3654 - Quoted Strings Library Proposal
997 * include/std/iomanip: Add quoted(String, Char delim, Char escape)
998 manipulators and supporting machinery in c++1y mode.
999 * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
1000 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
1002 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1004 * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
1007 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1009 * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
1010 * include/bits/stl_algobase.h (equal, mismatch): Likewise.
1011 * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
1012 * testsuite/25_algorithms/equal/2.cc: New.
1013 * testsuite/25_algorithms/equal/check_type2.cc: New.
1014 * testsuite/25_algorithms/is_permutationqual/2.cc: New.
1015 * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
1016 * testsuite/25_algorithms/mismatch/2.cc: New.
1017 * testsuite/25_algorithms/mismatch/check_type2.cc: New.
1018 * testsuite/util/testsuite_iterators.h: Fix spelling.
1020 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1022 * include/std/type-traits (integral_constant::operator()): Implement
1024 * testsuite/20_util/integral_constant/call_operator.cc: New.
1025 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1027 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1029 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1032 2013-06-07 Uros Bizjak <ubizjak@gmail.com>
1034 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1036 2013-06-05 Tom Tromey <tromey@redhat.com>
1038 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
1040 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1043 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
1045 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
1047 * include/std/chrono: Collapse redundant 'inline' from 'inline
1049 * include/std/tuple: Ditto.
1050 * include/bits/move.h: Ditto.
1052 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
1054 Implement N3642 - User-defined Literals for Standard Library Types
1055 * include/bits/parse_numbers.h: New.
1056 * include/std/chrono: Add duration literal operators.
1057 * include/bits/basic_string.h: Add string literal operators.
1058 * include/Makefile.in: Add parse_numbers.h.
1059 * include/Makefile.am: Ditto.
1060 * testsuite/20_util/duration/literals/values.cc: New.
1061 * testsuite/20_util/duration/literals/types.cc: New.
1062 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1063 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
1064 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
1065 * testsuite/21_strings/basic_string/literals/values.cc: New.
1066 * testsuite/21_strings/basic_string/literals/types.cc: New.
1068 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1070 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
1071 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
1072 calling non-existent from_time_t.
1074 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1076 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1079 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
1081 * include/std/chrono: Wrap clocks in inline namespace _V2.
1082 * src/c++11/chrono.cc: Same.
1083 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
1084 file, with default configure macros selected.
1086 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
1088 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
1090 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1091 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1092 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1094 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1096 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1097 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1099 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1100 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1101 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1102 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1103 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1104 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1106 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1107 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1109 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1111 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
1112 (CLOCK_MONOTONIC): Define.
1114 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
1116 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
1119 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
1121 2013-05-24 Jakub Jelinek <jakub@redhat.com>
1123 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
1124 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
1125 don't define system_clock::is_steady, system_clock::now() and
1126 steady_clock::is_steady.
1127 (std::chrono::system_clock::now()): If
1128 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
1129 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
1130 (std::chrono::system_clock::now()): Likewise. Add weak attribute
1131 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
1133 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
1134 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
1135 * src/c++11/compatibility-chrono.cc: New file.
1136 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
1137 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
1138 * testsuite/util/testsuite_abi.cc (check_version): Add
1139 GLIBCXX_3.4.20 version and make it the latest.
1140 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
1141 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
1142 @@GLIBCXX_3.4.20 instead.
1143 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1144 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1145 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1147 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1149 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1150 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1152 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1153 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1154 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1155 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1156 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1157 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1159 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1160 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1161 * config.h.in: Regenerated.
1162 * src/Makefile.in: Regenerated.
1163 * configure: Regenerated.
1165 2013-05-23 Matthias Klose <doko@ubuntu.com>
1167 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1168 (ext_headers): Remove ${ext_host_headers}.
1169 (stamp-${host_alias}): Create ${host_builddir}/../ext.
1170 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1171 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1172 * include/Makefile.in: Regenerate.
1173 * include/ext/random: Include ext/opt_random.h.
1175 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
1177 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
1178 enable features if target OS is known to support them.
1179 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
1180 * configure: Regenerate.
1182 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
1185 * include/std/functional (__invoke): Do not form function types with
1186 abstract return type.
1187 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
1189 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1191 * include/std/tuple (get): Implement N3670.
1192 * include/std/utility (get): Likewise.
1193 * testsuite/20_util/pair/get.cc: Move to ...
1194 * testsuite/20_util/pair/astuple/get.cc: Here.
1195 * testsuite/20_util/pair/astuple/astuple.cc: New.
1196 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
1197 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
1198 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
1199 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
1200 * testsuite/20_util/pair/astuple/get_neg.cc: New.
1201 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
1202 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
1203 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
1205 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
1207 * Revert last commit.
1209 2013-05-19 Matthias Klose <doko@ubuntu.com>
1211 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1212 (ext_headers): Remove ${ext_host_headers}.
1213 (stamp-${host_alias}): Create ${host_builddir}/../ext.
1214 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1215 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1216 * include/Makefile.in: Regenerate.
1218 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1220 * include/std/system_error (error_category::error_category()): LWG
1221 2145: Declare public and constexpr.
1222 * src/c++11/system_error.cc (error_category::error_category()): Move
1224 * src/c++11/compatibility-c++0x.cc: Here.
1226 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1228 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
1230 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1232 * include/bits/unique_ptr.h (make_unique): Declare inline.
1233 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
1234 (default_delete, unique_ptr): Add doxygen comments.
1235 * include/bits/shared_ptr_base.h: Improve doxygen comments.
1236 * include/bits/shared_ptr.h: Likewise.
1237 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1239 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1241 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1243 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1245 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1247 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1249 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1251 * include/std/utility (exchange): Define.
1252 * testsuite/20_util/exchange/1.cc: New.
1254 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1256 * include/bits/unique_ptr.h (make_unique): Define.
1257 * testsuite/20_util/unique_ptr/creation/single.cc: New.
1258 * testsuite/20_util/unique_ptr/creation/array.cc: New.
1259 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
1261 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
1263 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
1264 rendering of std::tr1 unordered containers iterator.
1265 (StdHashtableIterator): New, render std unordered containers iterator.
1266 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
1268 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
1270 * include/bits/basic_string.h (getline): Fix doxygen comments.
1272 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
1274 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1275 Use std::pointer_traits.
1277 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
1279 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
1281 * libsupc++/Makefile.in: Regenerate.
1282 * libsupc++/bad_array_length.cc: Tweak.
1283 * libsupc++/bad_array_new.cc: Tweak.
1285 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
1288 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
1289 (_Deque_iterator<>::_M_const_cast): Add.
1290 (deque<>::_M_erase): Declare.
1291 * include/bits/deque.tcc: ... and define.
1292 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
1293 (_List_const_iterator<>::_M_const_cast): Add.
1294 * include/bits/list.tcc (erase (iterator)): Fix.
1295 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1296 Add; include <ext/cast.h>.
1297 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
1298 (vector<>::_M_erase): Declare.
1299 * include/bits/stl_bvector.h: Likewise.
1300 * include/bits/vector.tcc (vector<>::_M_erase): Define.
1301 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
1302 * include/debug/deque: Adjust.
1303 * include/debug/list: Likewise.
1304 * include/debug/vector: Likewise.
1305 * include/profile/deque: Likewise.
1306 * include/profile/list: Likewise.
1307 * include/profile/vector: Likewise.
1308 * testsuite/util/exception/safety.h (erase_base<deque>,
1309 erase_base<deque>, erase_base<vector>): Remove.
1310 (erase_base<__versa_string>): Update.
1311 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
1312 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
1313 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
1314 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
1315 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
1317 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
1318 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1319 Adjust dg-error line numbers.
1320 * testsuite/23_containers/deque/requirements/dr438/
1321 constructor_1_neg.cc: Likewise.
1322 * testsuite/23_containers/deque/requirements/dr438/
1323 constructor_2_neg.cc: Likewise.
1324 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1326 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1328 * testsuite/23_containers/list/requirements/dr438/
1329 constructor_1_neg.cc: Likewise.
1330 * testsuite/23_containers/list/requirements/dr438/
1331 constructor_2_neg.cc: Likewise.
1332 * testsuite/23_containers/list/requirements/dr438/
1333 insert_neg.cc: Likewise.
1334 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1336 * testsuite/23_containers/vector/requirements/dr438/
1337 constructor_1_neg.cc: Likewise.
1338 * testsuite/23_containers/vector/requirements/dr438/
1339 constructor_2_neg.cc: Likewise.
1340 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1343 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
1345 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
1347 2013-05-08 Jason Merrill <jason@redhat.com>
1349 Add std::bad_array_length (N3639)
1350 * libsupc++/new: Add std::bad_array_length.
1351 * libsupc++/bad_array_length.cc: New.
1352 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
1353 * libsupc++/Makefile.in: Build them.
1354 * config/abi/pre/gnu.ver: Add new symbols.
1355 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1357 2013-05-08 Andi Kleen <ak@linux.intel.com>
1360 * libstdc++-v3/include/bits/atomic_base.h
1361 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
1362 (atomic_thread_fence, atomic_signal_fence, test_and_set,
1363 clear, store, load, exchange, compare_exchange_weak)
1364 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
1365 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
1367 2013-05-08 Jason Merrill <jason@redhat.com>
1369 Add std::bad_array_new_length (N2932)
1370 * libsupc++/new: Add std::bad_array_new_length.
1371 * libsupc++/bad_array_new.cc: New.
1372 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
1373 * libsupc++/Makefile.in: Build them.
1374 * config/abi/pre/gnu.ver: Add new symbols.
1375 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1377 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
1380 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
1382 * include/Makefile.in: Regenerated.
1384 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
1386 * include/profile/unordered_base.h: New.
1387 * include/Makefile.am: Add new profile header.
1388 * include/Makefile.in: Regenerate.
1389 * include/profile/impl/profiler.h
1390 (__profcxx_inefficient_hash_is_on): New macro.
1391 * include/profile/unordered_map (std::profile::unordered_map<>):
1392 Use new _Unordered_profile base class. Use default implementations
1393 for special functions.
1394 (std::profile::unordered_multimap<>): Likewise.
1395 * include/profile/unordered_set (std::profile::unordered_set<>):
1397 (std::profile::unordered_multiset<>): Likewise.
1398 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
1399 MoveOnly equality operator signature.
1401 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
1403 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
1404 constexpr_data.cc: Move...
1405 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
1407 * testsuite/20_util/integral_constant/requirements/
1408 explicit_instantiation.cc: New.
1409 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
1411 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
1412 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
1414 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
1415 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
1417 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
1419 * include/std/type_traits (is_null_pointer): Add.
1420 (__is_nullptr_t): Implement in terms of the latter.
1421 (is_fundamental, is_scalar): Adjust.
1422 * testsuite/20_util/is_null_pointer/requirements/
1423 explicit_instantiation.cc: New.
1424 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
1426 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
1427 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1429 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1431 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1434 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
1436 * include/c_global/cstdio: Add comment about LWG 2249.
1437 * include/c_std/cstdio: Likewise.
1439 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1441 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
1443 * include/std/mutex (__recursive_mutex_base): Likewise.
1445 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1448 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
1449 implement EBO safely.
1450 (_Sp_counted_base::_M_get_deleter): Add noexcept.
1451 (_Sp_counter_ptr): Use noexcept instead of comments.
1452 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
1453 (_Sp_counted_ptr_inplace): Likewise.
1454 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
1455 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
1456 custom allocator and test construction with custom allocator.
1457 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
1460 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
1462 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
1463 dialect to -std=gnu++11.
1465 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
1467 * include/bits/hashtable_policy.h
1468 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
1469 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
1471 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
1473 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
1474 * include/c_std/cstdio (gets): Likewise.
1475 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
1477 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
1480 * include/debug/unordered_map (unordered_map, unordered_multimap):
1481 Fix default allocator type.
1482 * include/profile/unordered_map (unordered_map, unordered_multimap):
1484 * include/bits/unordered_map.h: Fix comments.
1486 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
1489 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
1490 move implementation to make_exception_ptr.
1491 * include/std/future (_State_base::_M_break_promise): Replace
1492 copy_exception with make_exception_ptr.
1493 * testsuite/18_support/exception_ptr/move.cc: Likewise.
1494 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
1495 * testsuite/30_threads/future/members/get2.cc: Likewise.
1496 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1497 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
1498 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1499 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1501 2013-04-22 Jason Merrill <jason@redhat.com>
1503 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
1505 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
1506 substitution" lines.
1508 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
1510 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1511 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
1512 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
1514 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
1516 * include/bits/hashtable_policy.h: Add C++11 allocator support.
1517 * include/bits/hashtable.h: Likewise.
1518 * include/bits/unordered_set.h: Likewise.
1519 * include/bits/unordered_map.h: Likewise.
1520 * include/debug/unordered_set: Likewise.
1521 * include/debug/unordered_map: Likewise.
1522 * include/std/unordered_set: Remove bits/algobase.h
1523 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
1524 * include/std/unordered_map: Likewise.
1525 * include/ext/throw_allocator.h: Add checks on calls to allocator
1527 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
1528 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
1529 * testsuite/util/regression/rand/priority_queue
1530 /container_rand_regression_test.tcc: Adapt.
1531 * testsuite/util/regression/rand/assoc
1532 /container_rand_regression_test.tcc: Likewise.
1533 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
1534 * testsuite/23_containers/unordered_set
1535 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
1536 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
1537 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
1538 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
1539 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
1540 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
1541 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
1542 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
1543 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
1544 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
1546 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
1547 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1549 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
1550 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
1551 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
1552 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
1553 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
1554 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
1555 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
1557 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
1558 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
1559 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
1561 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
1562 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1564 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
1565 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
1567 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1569 * include/std/type_traits (is_signed): Simplify.
1570 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1571 Adjust dg-error line numbers.
1572 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1574 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1576 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1579 * include/std/complex (complex<float>::real, complex<float>::imag,
1580 complex<double>::real, complex<double>::imag,
1581 complex<long double>::real, complex<long double>::imag): Declare
1582 as const member functions.
1583 * include/std/type_traits (integral_constant<>::operator value_type):
1586 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1589 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
1590 * testsuite/25_algorithms/pop_heap/57010.cc: New.
1592 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
1594 * src/c++11/system_error.cc (generic_category_instance): Add
1596 (system_category_instance): Likewise.
1597 * src/c++11/future.cc (__fec): Likewise.
1599 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
1601 * doc/xml/manual/extensions.xml: Fix anachronism.
1603 2013-04-09 Tom Tromey <tromey@redhat.com>
1605 * configure, config.h.in: Rebuild.
1606 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
1608 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
1610 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
1612 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1614 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
1616 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
1618 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1620 * include/Makefile.am: Add ext/aligned_buffer.h
1621 * include/Makefile.in: Regenerate.
1622 * include/ext/aligned_buffer.h: New.
1623 * include/std/future (_Result): Use __aligned_buffer.
1624 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
1625 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
1626 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
1629 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
1631 * include/bits/forward_list.h: Only include required headers.
1632 (forward_list::reference): Define directly, not using __alloc_traits.
1633 (forward_list::const_reference): Likewise.
1635 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
1637 * include/std/functional (_Derives_from_unary_function): Remove.
1638 (_Derives_from_binary_function): Remove.
1639 * include/std/type_traits (__sfinae_types): Remove.
1640 (__is_assignable_helper): Adapt.
1641 (__is_convertible_helper): Adapt.
1642 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
1643 Remove several explicit instantiations of integral_constant.
1644 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
1645 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1646 Adapt dg-error line number.
1647 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1649 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1650 * testsuite/20_util/bind/ref_neg.cc: Likewise.
1652 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
1655 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
1656 get_terminate() accessors.
1657 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
1658 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
1660 * libsupc++/new_handler.cc: Likewise.
1662 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
1664 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
1666 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
1669 * include/debug/array (tuple_size, tuple_element): Do not declare.
1670 * include/profile/array: Likewise.
1671 * testsuite/23_containers/array/tuple_interface/
1672 tuple_element_debug_neg.cc: Adjust dg-error line number.
1674 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
1676 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
1677 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
1679 (set_terminate(terminate_handler)): Set atomically.
1680 (set_unexpected(terminate_handler)): Likewise.
1681 * libsupc++/new (get_new_handler()): Declare.
1682 * libsupc++/new_handler.cc (get_new_handler()): Define.
1683 (set_new_handler(new_handler)): Set atomically.
1684 (__new_handler): Use internal linkage.
1685 * libsupc++/new_op.cc (operator new): Use get_new_handler().
1686 * libsupc++/new_opnt.cc (operator new): Likewise.
1687 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
1688 * configure: Regenerate.
1689 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
1690 * libsupc++/Makefile.in: Regenerate.
1691 * config/abi/pre/gnu.ver: Add new exports.
1692 * doc/xml/manual/status_cxx2011.xml: Update.
1693 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
1695 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
1696 * testsuite/18_support/new_handler.cc: New.
1697 * testsuite/18_support/terminate_handler.cc: New.
1698 * testsuite/18_support/unexpected_handler.cc: New.
1700 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
1702 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
1703 defer to general documentation on contributing to GCC.
1704 * doc/html/*: Regenerate.
1706 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
1708 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
1710 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
1713 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
1715 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
1717 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
1719 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
1721 * doc/xml/manual/policy_data_structures: Remove direct link to
1722 IBM Haifa Research Labs.
1724 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
1725 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
1727 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
1730 * doc/xml/manual/shared_ptr.xml: Use canonical address for
1733 2013-03-27 Kai Tietz <ktietz@redhat.com>
1735 * crossconfig.m4: Add support for cygwin x64 target.
1736 * configure: Regenerated.
1738 2013-03-25 Kai Tietz <ktietz@redhat.com>
1740 * testsuite/18_support/50594.cc: For mingw-targets use only static
1742 * testsuite/19_diagnostics/error_category/operators/equal.cc
1743 * testsuite/19_diagnostics/error_code/cons/1.cc
1744 * testsuite/19_diagnostics/error_code/operators/bool.cc
1745 * testsuite/19_diagnostics/error_code/operators/equal.cc
1746 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
1747 * testsuite/19_diagnostics/error_condition/cons/1.cc
1748 * testsuite/19_diagnostics/error_condition/operators/bool.cc
1749 * testsuite/19_diagnostics/error_condition/operators/equal.cc
1750 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
1751 * testsuite/23_containers/set/requirements/exception/basic.cc
1752 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
1753 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
1755 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
1758 * include/ext/debug_allocator.h (debug_allocator): Add missing members
1759 to meet allocator requirements.
1760 * testsuite/ext/debug_allocator/56170.cc: New.
1762 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
1765 * include/std/chrono (__is_ratio): Uglify T.
1767 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
1769 PR libstdc++/55977 (partial, std::vector and std::deque bits)
1770 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
1771 _InputIterator, std::input_iterator_tag)): Use emplace_back.
1772 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
1773 _InputIterator, std::input_iterator_tag)): Likewise.
1774 * testsuite/23_containers/vector/cons/55977.cc: New.
1775 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
1776 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1777 Adjust dg-error line number.
1778 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1781 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
1784 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
1785 _InputIterator, __false_type)): Use emplace_back.
1786 * testsuite/23_containers/list/cons/55979.cc: New.
1787 * testsuite/23_containers/list/modifiers/1.h: Adjust.
1788 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1789 Adjust dg-error line number.
1791 2013-03-16 Jason Merrill <jason@redhat.com>
1794 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
1796 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1799 * libsupc++/exception_ptr.h (type_info): Declare.
1801 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1804 * include/std/mutex (lock_guard, unique_lock, lock): Define without
1805 depending on _GLIBCXX_HAS_GTHREADS.
1806 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
1808 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1811 * include/std/future (__future_base::_Result): Add result_type
1813 (__future_base::_S_allocate_result): Overload for std::allocator.
1814 (__future_base::_Task_setter): Use _Result::result_type instead of
1815 deducing the type from the task.
1816 (__future_base::_Task_state): Store allocator to allow shared state
1817 to be reset. Replace std::function with member of target object type
1819 (__future_base::_Task_state_base): New abstract base class.
1820 (__future_base::_Task_state_base::_M_run): New virtual function to
1821 invoke type-erased target object.
1822 (__future_base::_Task_state_base::_M_reset): New virtual function to
1823 create new shared_state using same target object and allocator.
1824 (__future_base::__create_task_state): Allocate a new _Task_state.
1825 (packaged_task::packaged_task): Use __create_task_state.
1826 (packaged_task::reset): Use _Task_state_base::_M_reset.
1827 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
1829 2013-03-15 Tom Tromey <tromey@redhat.com>
1831 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
1832 (PROBE2): New macro.
1833 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
1834 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
1835 * configure.ac: Check for sys/sdt.h.
1836 * configure, config.h.in: Rebuild.
1838 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
1841 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
1842 allocator_traits instead of calling construct directly.
1843 * testsuite/23_containers/map/56613.cc: New.
1845 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
1847 * doc/html/*: Regenerate.
1849 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
1852 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
1853 * testsuite/20_util/is_fundamental/value.cc: Extend.
1854 * testsuite/20_util/is_compound/value.cc: Likewise.
1856 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
1858 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
1861 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
1863 * include/bits/memoryfwd.h: New. Centralize forward declarations.
1864 * include/bits/algorithmfwd.h: Consistent comments.
1865 * include/bits/localefwd.h: Same.
1866 * include/ext/vstring_fwd.h: Same.
1867 * include/parallel/algorithmfwd.h: Same.
1868 * include/parallel/numericfwd.h: Same.
1869 * include/std/iosfwd: Same.
1871 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
1873 * include/ext/alloc_traits.h: Remove allocator forward decl.
1874 * include/bits/stl_construct.h: Same.
1875 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
1876 forward decl. Consistent comments.
1878 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
1880 * include/Makefile.am (bits_headers): Add memoryfwd.h.
1881 * include/Makefile.in: Regenerate.
1884 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
1886 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
1887 Reset pointers after deallocation when memory can be reused.
1888 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
1889 elements to really challenge C++11 allocator integration.
1890 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
1891 * testsuite/23_containers/vector/allocator/copy_assign.cc:
1893 * testsuite/23_containers/vector/allocator/move_assign.cc:
1895 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
1896 swap vector back before checks on memory/personality mapping are
1898 * testsuite/23_containers/forward_list/allocator/minimal.cc:
1899 Insert element to really challenge C++11 allocator integration.
1900 * testsuite/23_containers/forward_list/allocator/copy.cc:
1902 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
1904 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1906 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
1907 and swap forward_list back before checks on memory/personality
1908 mapping are performed.
1910 2013-03-07 Jakub Jelinek <jakub@redhat.com>
1912 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1913 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1914 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1916 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1917 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1918 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1919 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1920 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1921 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1923 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1925 * scripts/extract_symvers.pl: Omit symbols bound to base
1927 * scripts/extract_symvers.in: Likewise.
1928 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1929 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1930 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1931 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1932 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1934 2013-03-04 Ulrich Drepper <drepper@gmail.com>
1936 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
1937 Optimize generation function by pulling computation of __r into the
1938 constructor for param_type. Also compare _M_mu in operator==.
1941 2013-03-02 Ulrich Drepper <drepper@gmail.com>
1943 Add triangular and von Mises distributions.
1944 * include/ext/random: Include <ext/cmath>.
1945 Add __gnu_cxx::triangular_distribution<> and
1946 __gnu_cxx::von_mises_distribution<> classes.
1947 * include/ext/random.tcc: Add out-of-line functions for
1948 __gnu_cxx::triangular_distribution<> and
1949 __gnu_cxx::von_mises_distribution<>.
1950 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
1951 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
1952 * testsuite/ext/triangular_distribution/operators/serialize.cc:
1954 * testsuite/ext/triangular_distribution/operators/equal.cc:
1956 * testsuite/ext/triangular_distribution/operators/inequal.cc:
1958 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
1960 * testsuite/ext/triangular_distribution/requirements/
1961 explicit_instantiation/1.cc: New file.
1962 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
1963 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
1964 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
1966 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
1967 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
1969 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
1971 * testsuite/ext/von_mises_distribution/requirements/
1972 explicit_instantiation/1.cc: New file.
1975 * include/Makefile.am (ext_headers): Add cmath.
1976 * include/Makefile.in: Regenerated.
1977 * include/ext/cmath: New file.
1979 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1981 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1982 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1983 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1984 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1985 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1987 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
1990 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
1991 * testsuite/29_atomics/atomic/operators/56012.cc: New.
1994 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
1996 * testsuite/29_atomics/atomic/operators/56011.cc: New.
1998 2013-02-25 Jason Merrill <jason@redhat.com>
2000 * configure.ac: Check for __cxa_thread_atexit_impl.
2001 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
2003 * config.h.in, configure: Regenerate.
2005 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2007 * include/std/streambuf (basic_streambuf): Use injected class name
2008 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
2011 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2013 * doc/html/faq.html: Fix spelling.
2014 * doc/xml/faq.xml: Likewise.
2015 * include/bits/basic_ios.h: Likewise.
2016 * include/bits/regex.h: Likewise.
2017 * include/std/istream: Likewise.
2018 * include/std/streambuf: Likewise.
2020 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2022 * testsuite/23_containers/unordered_set/55043.cc: Add missing
2023 namespace qualification.
2024 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2026 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
2028 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
2029 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
2030 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
2031 * include/bits/stl_pair.h: Add to utilities group.
2032 * include/std/tuple: Same.
2033 * include/std/typeindex: Same.
2035 * include/bits/stringfwd.h: Fix markup.
2036 * include/std/limits: Same.
2037 * include/std/type_traits: Same.
2038 * include/tr1/memory: Same.
2039 * include/tr1/regex: Same.
2040 * scripts/run_doxygen: Comment.
2041 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
2043 2013-02-14 Jason Merrill <jason@redhat.com>
2045 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
2046 test if unsupported.
2048 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
2051 * include/std/complex (complex): Undefine.
2052 * include/c_compatibility/complex.h (complex): Only undefine if
2053 <complex> has been included.
2054 * testsuite/26_numerics/complex/56111.cc: New testcase.
2056 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
2058 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
2059 default constructor protected.
2060 * include/bits/hashtable.h: static assert that _Hash_code_base has
2061 a default constructor available through inheritance.
2063 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
2065 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
2068 2013-02-12 Julian Brown <julian@codesourcery.com>
2070 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
2071 Don't expect dots after abbreviated weekday names for ru_RU for
2072 glibc versions >= 2.17.
2073 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
2076 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
2078 * include/bits/random.tcc (__transform): Remove.
2080 (discrete_distribution<>::param_type::_M_initialize): Adjust.
2081 (piecewise_constant_distribution<>::param_type::_M_initialize):
2083 (piecewise_linear_distribution<>::param_type::_M_initialize):
2086 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
2088 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
2089 Use -fimplicit-templates.
2090 * src/c++11/Makefile.in: Regenerate.
2091 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
2092 std::lower_bound template.
2094 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
2096 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
2097 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
2098 in C++11 mode and if available in the underlying C library.
2099 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
2100 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
2101 _GLIBCXX_HAVE_QUICK_EXIT.
2103 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
2105 * doc/html/*: Regenerate.
2107 2013-02-11 Jason Merrill <jason@redhat.com>
2109 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
2110 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
2111 * config.h.in, configure: Regenerate.
2112 * include/c_std/cstdlib: Add atexit and at_quick_exit.
2113 * include/c_global/cstdlib: Add atexit and at_quick_exit.
2114 * testsuite/18_support/quick_exit/quick_exit.cc: New.
2116 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
2120 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2123 * include/bits/basic_ios.h: Replace operator void*() const
2124 with explicit operator bool() const in C++11 and greater.
2125 * testsuite/27_io/basic_ios/pr56193.cc: New file.
2127 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
2128 Jonathan Wakely <jwakely.gcc@gmail.com>
2130 * doc/xml/manual/containers.xml: Add section on unordered containers.
2131 * doc/xml/manual/using.xml: Fix incomplete sentence.
2133 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
2136 * include/bits/hashtable.h (__cache_default): Check if hash function
2138 * testsuite/23_containers/unordered_set/56267.cc: New.
2139 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2140 dg-error line number.
2141 * testsuite/23_containers/unordered_set/
2142 not_default_constructible_hash_neg.cc: Likewise.
2145 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
2147 * testsuite/23_containers/unordered_set/56278.cc: New.
2149 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
2151 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
2154 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
2157 * include/tr1/special_function_util.h: Remove spurious const
2158 from numeric arguments.
2159 * include/tr1/riemann_zeta.tcc: Likewise.
2160 * include/tr1/exp_integral.tcc: Likewise.
2161 * include/tr1/bessel_function.tcc: Likewise.
2162 * include/tr1/hypergeometric.tcc: Likewise.
2163 * include/tr1/modified_bessel_func.tcc: Likewise.
2164 * include/tr1/poly_laguerre.tcc: Likewise.
2165 * include/tr1/gamma.tcc: Likewise.
2166 * include/tr1/legendre_function.tcc: Likewise.
2167 * include/tr1/poly_hermite.tcc: Likewise.
2168 * include/tr1/ell_integral.tcc: Likewise.
2169 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
2170 If argument is zero return function value.
2171 * testsuite/tr1/5_numerical_facilities/special_functions/
2172 08_cyl_bessel_i/pr56216.cc: New.
2174 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
2176 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
2178 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2181 * include/bits/basic_ios.h: Replace operator void*() const
2182 with explicit operator bool() const in C++11 and greater.
2183 * testsuite/27_io/basic_ios/pr56193.cc: New file.
2185 2013-02-04 Dodji Seketeli <dodji@redhat.com>
2187 Add missing explicit instantiation for std::lower_bound template
2188 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
2189 missing instantiation for std::lower_bound template.
2191 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
2193 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
2194 * include/bits/basic_string.h: Specialize previous to mark
2195 std::hash for string types as slow.
2196 * include/bits/hashtable.h (__cache_default): Replace is_integral
2197 with __is_fast_hash.
2198 * src/c++11/hash_c++0x.cc: Add type_traits include.
2199 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2200 Adapt dg-error line number.
2201 * testsuite/23_containers/unordered_set/
2202 not_default_constructible_hash_neg.cc: Likewise.
2204 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2205 Paolo Carlini <paolo.carlini@oracle.com>
2207 PR libstdc++/56202 (again)
2208 * include/bits/random.tcc (binomial_distribution<>::
2209 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
2212 * include/bits/random.h: Fix comment typo.
2214 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2215 Paolo Carlini <paolo.carlini@oracle.com>
2218 * include/bits/random.tcc (binomial_distribution<>::
2219 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
2222 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
2224 Update copyright years.
2225 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
2226 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
2227 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
2228 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
2229 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
2230 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
2231 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
2232 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
2233 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
2234 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
2235 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
2236 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
2237 testsuite/29_atomics/atomic/cons/assign_neg.cc,
2238 testsuite/29_atomics/atomic/cons/copy_neg.cc,
2239 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
2240 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
2241 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
2242 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
2243 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2244 Update lines in dg error matches.
2246 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
2248 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
2250 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
2252 * include/bits/hashtable_policy.h
2253 (_Prime_rehash_policy::_M_next_bkt)
2254 (_Prime_rehash_policy::_M_need_rehash): Move definition...
2255 * src/c++11/hashtable_c++0x.cc: ... here.
2256 * src/shared/hashtable-aux.cc: Remove c++config.h include.
2257 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
2260 2013-01-29 Jason Merrill <jason@redhat.com>
2263 * config/abi/pre/gnu.ver: Don't export construction vtables.
2264 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2266 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
2269 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
2270 to construct value_type explicitly before trying to extract the key.
2271 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
2273 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
2275 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
2276 _Hashtable_ebo_helper to embed functors into the local_iterator
2277 when necessary. Pass information about functors involved in hash
2279 * include/bits/hashtable.h (__cache_default): Do not cache for
2280 builtin integral types unless the hash functor is not noexcept
2281 qualified or is not default constructible. Adapt static assertions
2282 and local iterator instantiations.
2283 * include/debug/unordered_set
2284 (std::__debug::unordered_set<>::erase): Detect local iterators to
2285 invalidate using contained node rather than generating a dummy
2286 local_iterator instance.
2287 (std::__debug::unordered_multiset<>::erase): Likewise.
2288 * include/debug/unordered_map
2289 (std::__debug::unordered_map<>::erase): Likewise.
2290 (std::__debug::unordered_multimap<>::erase): Likewise.
2291 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
2292 std::tr1 and std versions of unordered_set regardless of any
2293 macro. Add test on default cache behavior.
2294 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
2295 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2297 * testsuite/23_containers/unordered_set/
2298 not_default_constructible_hash_neg.cc: New.
2299 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
2301 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
2304 * include/std/complex (pow(const complex<>&, int)): Avoid __n
2307 2013-01-22 Jakub Jelinek <jakub@redhat.com>
2309 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2310 Tightten scan-assembler-times regexps, add dg-additional-options for
2311 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
2314 2013-01-12 Andi Kleen <ak@linux.intel.com>
2315 Jonathan Wakely <jwakely.gcc@gmail.com>
2318 * include/bits/atomic_base.h (__memory_order_modifier): Add
2319 __memory_order_mask, __memory_order_modifier_mask,
2320 __memory_order_hle_acquire, __memory_order_hle_release.
2321 (operator|,operator&): Add.
2322 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
2323 (__cmpexch_failure_order): Add.
2324 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
2326 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2329 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
2332 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
2334 (__basic_future::_M_get_result()): Const qualify.
2335 (shared_future::get()): Likewise.
2336 * testsuite/30_threads/shared_future/members/get.cc: Use const
2339 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2341 PR libstdc++/55043 (again)
2342 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
2343 unless construction would be well-formed.
2344 (__allow_copy_cons, __check_copy_constructible): Define.
2345 * include/bits/unordered_map.h (__check_copy_constructible): Use as
2346 base class so copy constructor will be deleted if appropriate.
2347 (is_copy_constructible): Remove specialization.
2348 * include/bits/unordered_set.h: Likewise.
2349 * include/debug/unordered_map.h: Undo previous commit. Default copy
2350 and move constructors.
2351 * include/debug/unordered_set.h: Likewise.
2352 * include/profile/unordered_map.h: Undo previous commit.
2353 * include/profile/unordered_set.h: Likewise.
2354 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
2355 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
2356 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2357 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
2358 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
2359 cannot support incomplete types.
2360 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
2363 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2366 * include/std/unordered_map: Include alloc_traits.h
2367 * include/std/unordered_set: Likewise.
2368 * include/bits/alloc_traits.h: Define __is_copy_insertable.
2369 * include/bits/unordered_map.h: Use it.
2370 * include/bits/unordered_set.h: Likewise.
2371 * include/debug/unordered_map.h: Likewise.
2372 * include/debug/unordered_set.h: Likewise.
2373 * include/profile/unordered_map.h: Likewise.
2374 * include/profile/unordered_set.h: Likewise.
2375 * include/bits/hashtable.h: Fix comment typos.
2376 * testsuite/23_containers/unordered_map/55043.cc: New.
2377 * testsuite/23_containers/unordered_multimap/55043.cc: New.
2378 * testsuite/23_containers/unordered_multiset/55043.cc: New.
2379 * testsuite/23_containers/unordered_set/55043.cc: New.
2381 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
2383 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
2386 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
2388 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
2390 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
2393 * include/std/functional (_Mem_fn::operator()): Fix constraints to
2395 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
2396 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
2398 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2401 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
2403 * configure: Regenerate.
2405 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2408 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
2409 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
2413 * include/std/functional (bad_function_call::what()): Declare.
2414 * src/c++11/functional.cc (bad_function_call::what()): Define.
2415 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
2416 * testsuite/20_util/bad_function_call/what.cc: New.
2418 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
2420 * include/bits/unordered_map.h: Fix typo in comments.
2421 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
2422 counts for unordered associative containers.
2424 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
2426 * doc/xml/manual/abi.xml: Update library and symbol versions.
2428 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
2430 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
2432 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
2435 Copyright (C) 2013 Free Software Foundation, Inc.
2437 Copying and distribution of this file, with or without modification,
2438 are permitted in any medium without royalty provided the copyright
2439 notice and this notice are preserved.