1 2013-09-14 Tim Shen <timshen91@gmail.com>
3 * include/bits/regex.h (regex_match<>, regex_search<>):
4 Change regex_executor caller. Now use their return value instead
5 of checking __m[0].matched to find out if it's successful.
6 (regex_search<>): Move the search logic to regex_executor.
7 * include/bits/regex_automaton.h: Add some new _Opcode. Refactor
9 * include/bits/regex_automaton.tcc: Add DEBUG dump for new
10 _Opcode. Refactor _NFA::_M_insert_*.
11 * include/bits/regex_compiler.h (_Compiler<>::_M_get_nfa):
12 Use make_shared instead of construct by hand.
13 * include/bits/regex_compiler.tcc: Implement _Compiler<>::_M_assertion.
14 * include/bits/regex_constants.h: Fix indentation and line breaking.
15 * include/bits/regex_executor.h: Add _ResultsEntry to support
16 greedy/ungreedy mode. Move regex_search logic here.
17 * include/bits/regex_executor.tcc: Implement assertions and
18 greedy/ungreedy matching.
19 * include/bits/regex_scanner.h: Add a new token _S_token_ungreedy.
20 * include/bits/regex_scanner.tcc: Parse a new token _S_token_ungreedy.
21 * testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc: New.
22 * testsuite/28_regex/algorithms/regex_search/ecma/greedy.cc: New.
23 * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc:
26 2013-09-13 Paolo Carlini <paolo.carlini@oracle.com>
29 * include/ext/sso_string_base.h (__sso_string_base<>::
30 __sso_string_base(__sso_string_base&&)): Fix thinkos about
31 _M_length vs _M_set_length.
32 * testsuite/ext/vstring/cons/58415-1.cc: New.
33 * testsuite/ext/vstring/cons/58415-2.cc: Likewise.
35 2013-09-12 Paolo Carlini <paolo.carlini@oracle.com>
38 * include/bits/stl_iterator.h (__normal_iterator<>::operator[],
39 operator+=, operator+, operator-=, operator-): Take the argument
41 * testsuite/24_iterators/normal_iterator/58403.cc: New.
43 2013-09-11 Mitsuru Kariya <kariya_mitsuru@hotmail.com>
44 Chris Jefferson <chris@bubblescope.net>
47 * include/bits/stl_algo.h (search_n): Fix to guarantee a number
48 of comparisons <= number of elements in the range.
49 * testsuite/25_algorithms/search_n/58358.cc: New.
50 * testsuite/25_algorithms/search_n/iterator.cc: Extend.
52 2013-09-10 Ed Smith-Rowland <3dw4rd@verizon.net>
54 * testsuite/28_regex/traits/wchar_t/value.cc: Change template args
55 from char to wchar_t, literals from 'x' to L'x'.
57 2013-09-10 Kai Tietz <ktietz@redhat.com>
60 * config/abi/pre/gnu-versioned-namespace.ver: Add thunk _ZTv0_n12_NS*
63 2013-09-07 Paolo Carlini <paolo.carlini@oracle.com>
66 * include/bits/stl_algobase.h (copy_backward): Fix documentation
69 2013-09-05 Tim Shen <timshen91@gmail.com>
71 * include/bits/regex_automaton.h: Add dummy node type. Rewrite
73 * include/bits/regex_automaton.tcc: Implement them.
74 * include/bits/regex_compiler.h: Rewrite _Compiler to use new
76 * include/bits/regex_compiler.tcc: Implement them.
77 * include/bits/regex_scanner.h: Add word boundry assertion token.
78 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
80 * testsuite/28_regex/algorithms/regex_match/basic/
81 string_range_02_03.cc: Remove "xfail".
82 * testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
84 * testsuite/28_regex/algorithms/regex_match/extended/
85 string_range_02_03.cc: Likewise.
86 * testsuite/28_regex/algorithms/regex_match/extended/
87 cstring_questionmark.cc: Remove xfail and get correct length of
89 * testsuite/28_regex/algorithms/regex_match/extended/
90 string_range_00_03.cc: Likewise.
91 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
93 * testsuite/28_regex/algorithms/regex_match/extended/cstring_range.cc:
95 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc: New.
97 2013-09-03 Paolo Carlini <paolo.carlini@oracle.com>
100 * include/bits/random.tcc (negative_binomial_distribution<>::
101 operator()(_UniformRandomNumberGenerator&, const param_type&)):
102 Fix typo in template argument.
103 * testsuite/26_numerics/random/negative_binomial_distribution/
104 operators/58302.cc: New.
106 2013-09-02 Tim Shen <timshen91@gmail.com>
108 * regex_automaton.h: Rearrange _NFA's layout.
109 * include/bits/regex_compiler.h: Add _AnyMatcher and _CharMatcher.
110 Rearrange _BracketMatcher's layout.
111 (_BracketMatcher<>::_M_add_char): Use set instead of vector for
113 (_BracketMatcher<>::_M_add_collating_element): Likewise.
114 (_BracketMatcher<>::_M_make_range): Likewise.
115 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom): Use
116 apropriate constructors of matchers above.
117 * testsuite/28_regex/algorithms/regex_match/ecma/char/anymatcher.cc:
119 * testsuite/28_regex/algorithms/regex_match/ecma/char/backref.cc: New.
120 * testsuite/28_regex/algorithms/regex_match/ecma/char/empty_range.cc:
122 * testsuite/28_regex/algorithms/regex_match/ecma/char/emptygroup.cc:
124 * testsuite/28_regex/algorithms/regex_match/ecma/char/hex.cc: New.
125 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/anymatcher.cc:
127 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/hex.cc: New.
129 2013-08-30 François Dumont <fdumont@gcc.gnu.org>
132 * include/debug/functions.h (__foreign_iterator_aux4): Use
133 sequence const_pointer as common type to compare pointers. Add a
134 fallback overload in case pointers cannot be cast to sequence
136 * testsuite/23_containers/vector/modifiers/insert/58148.cc: New.
138 2013-08-30 François Dumont <fdumont@gcc.gnu.org>
141 * include/debug/macros.h (__glibcxx_check_partitioned_lower): Add
142 __gnu_debug::__base calls on iterators passed to internal debug
144 (__glibcxx_check_partitioned_lower_pred): Likewise.
145 (__glibcxx_check_partitioned_upper): Likewise.
146 (__glibcxx_check_partitioned_upper_pred): Likewise.
147 (__glibcxx_check_sorted): Likewise.
148 (__glibcxx_check_sorted_pred): Likewise.
149 (__glibcxx_check_sorted_set): Likewise.
150 (__glibcxx_check_sorted_set_pred): Likewise.
151 * include/debug/functions.h (__check_partitioned_lower):
152 Remove code to detect safe iterators.
153 (__check_partitioned_upper): Likewise.
154 (__check_sorted): Likewise.
156 2013-08-29 Tim Shen <timshen91@gmail.com>
158 * include/bits/regex.h (basic_regex<>::assign): Don't lose _M_traits.
159 (regex_iterator<>::regex_iterator): Return nullptr when regex_search
161 (regex_token_iterator<>::_M_end_of_seq): Should be defined true when
162 _M_result is(not isn't) nullptr.
163 * include/bits/regex_compiler.h: Store _Compiler::_M_traits by reference
165 * include/bits/regex_executor.h (_DFSExecutor<>::_DFSExecutor): Add
166 _M_traits to _DFSExecutor.
167 * include/bits/regex_executor.tcc (__get_executor<>): Pass traits to
169 * testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
171 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
174 2013-08-26 Tim Shen <timshen91@gmail.com>
176 * include/Makefile.am: Add regex_scanner.{h,tcc}.
177 * include/Makefile.in: Regenerate.
178 * include/bits/regex.h (match_search): Handle the `__first == __last`
180 * include/bits/regex_compiler.h: Move _Scanner...
181 * include/bits/regex_scanner.h: ...to here. New.
182 * include/bits/regex_compiler.tcc: Move _Scanner...
183 * include/bits/regex_scanner.tcc: ...to here, too. New.
184 * include/bits/regex_executor.tcc: Use value instead of reference for
186 * include/std/regex: Add regex_scanner.h
187 * testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: New.
188 * testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc: New.
189 * testsuite/28_regex/algorithms/regex_match/ecma/cstring_hex.cc: New.
190 * testsuite/28_regex/algorithms/regex_match/ecma/empty_range.cc: New.
191 * testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc: New.
193 2013-08-22 Tim Shen <timshen91@gmail.com>
195 * include/bits/regex.h: Replace 8 spaces in indentation with a tab.
196 * include/bits/regex_automaton.h: Same.
197 * include/bits/regex_automaton.tcc: Same.
198 * include/bits/regex_compiler.h: Same.
199 * include/bits/regex_compiler.tcc: Same.
200 * include/bits/regex_constants.h: Same.
201 * include/bits/regex_executor.h: Same.
202 * include/bits/regex_executor.tcc: Same.
204 2013-08-22 Tim Shen <timshen91@gmail.com>
206 * include/bits/regex.h: Executor caller.
207 * include/bits/regex_executor.h: Fix empty grouping problem.
208 * include/bits/regex_executor.tcc: Same.
209 * testsuite/28_regex/algorithms/regex_match/ecma/cstring_emptygroup.cc:
212 2013-08-20 Phil Muldoon <pmuldoon@redhat.com>
215 http://sourceware.org/bugzilla/show_bug.cgi?id=15195
217 * python/libstdcxx/v6/printers.py (Printer.__call__): If a value
218 is a reference, fetch referenced value.
219 (RxPrinter.invoke): Ditto.
220 * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add -O0
221 flag. Add referenced value tests.
223 2013-08-20 Tim Shen <timshen91@gmail.com>
225 * include/bits/regex_constants.h: Add underlying `unsigned int` for
226 enum syntax_option_type.
228 2013-08-18 Tim Shen <timshen91@gmail.com>
230 * include/bits/regex_automaton.h: _S_opcode_backref.
231 * include/bits/regex_automaton.tcc: Backref automaton support.
232 * include/bits/regex_compiler.tcc: Parsing support.
233 * include/bits/regex_executor.h: Add _M_traits for _DFSExecutor.
234 * include/bits/regex_executor.tcc: Add _S_opcode_backref support.
235 * testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New.
237 2013-08-16 Tim Shen <timshen91@gmail.com>
239 * include/bits/regex.h (regex_traits<>::transform_primary):
240 Avoid past-the-end dereferences.
242 2013-08-14 Paolo Carlini <paolo.carlini@oracle.com>
245 * include/bits/basic_string.h (basic_string<>::operator[]): Fix
246 _GLIBCXX_DEBUG_PEDASSERT check vs C++11.
247 * include/ext/vstring.h: Likewise.
248 * testsuite/21_strings/basic_string/element_access/char/58163.cc:
250 * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
252 * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
253 * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
255 2013-08-14 Uros Bizjak <ubizjak@gmail.com>
257 * src/c++98/compatibility.cc (_ZTIe): Use
258 reinterpret_cast<const cast *> to avoid -Wcast-qual warnings.
262 2013-08-09 Tim Shen <timshen91@gmail.com>
264 * include/bits/regex_constants.h: Change syntax_option_type to enum
267 2013-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
269 * include/bits/regex.h: Replace _A, _B, _C, _R by _Ap, _Bp, _Cp, _Rp.
271 2013-08-08 François Dumont <fdumont@gcc.gnu.org>
273 * include/bits/hashtable_policy.h (_Hashtable_alloc): New.
274 (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than
276 (_Before_begin<>): Remove.
277 * include/bits/hashtable.h (_Hashtable): Inherit from
278 _Hashtable_alloc and adapt. Restore _M_before_begin field.
279 * src/c++11/hashtable_c++0x.cc: Add ext/alloc_traits.h include.
280 * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt
281 access to hashtable before begin.
282 * testsuite/23_containers/unordered_set/
283 not_default_constructible_hash_neg.cc: Adapt dg-error line number.
284 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
287 2013-08-07 Tim Shen <timshen91@gmail.com>
289 * include/Makefile.am: Adjust to new files.
290 * include/Makefile.in: Regenerate.
291 * include/bits/regex.h: Adjust to new interfaces.
292 * include/bits/regex_automaton.h: New.
293 * include/bits/regex_automaton.tcc: New.
294 * include/bits/regex_compiler.h: Adjust to new files.
295 * include/bits/regex_compiler.tcc: New.
296 * include/bits/regex_constants.h: Tail spaces.
297 * include/bits/regex_error.h: Likewise.
298 * include/bits/regex_executor.h: New.
299 * include/bits/regex_executor.tcc: New.
300 * include/std/regex: Adjust to new files.
301 * testsuite/28_regex/algorithms/regex_match/extended/
302 string_dispatch_01.cc: Adjust to new interfaces.
304 2013-08-07 Paolo Carlini <paolo.carlini@oracle.com>
306 * include/ext/atomicity.h: Add #pragma GCC system_header.
308 2013-08-07 Paolo Carlini <paolo.carlini@oracle.com>
311 * include/bits/random.h (cauchy_distribution<>::min,
312 extreme_value_distribution<>::min, normal_distribution<>::min,
313 student_t_distribution<>::min): Fix.
314 * include/ext/random (normal_mv_distribution<>::min): Likewise.
315 * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
317 testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
319 * testsuite/26_numerics/random/extreme_value_distribution/cons/
321 testsuite/26_numerics/random/extreme_value_distribution/cons/
322 default.cc: Likewise.
323 * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
325 * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
327 * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc:
329 * testsuite/26_numerics/random/student_t_distribution/cons/default.cc:
331 * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
332 * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
334 * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc:
336 * testsuite/26_numerics/random/exponential_distribution/cons/default.cc:
339 * testsuite/ext/von_mises_distribution/*: Move to...
340 * testsuite/ext/random/von_mises_distribution/*: ... here.
341 * testsuite/ext/triangular_distribution/*: Move to...
342 * testsuite/ext/random/triangular_distribution/*: ... here.
344 2013-08-06 Caroline Tice <cmtice@google.com>
346 * fragment.am: Add XTEMPLATE_FLAGS.
347 * configure.ac: Add definitions for --enable-vtable-verify.
348 * acinclude.m4: Add --enable-vtable-verify and
349 --disable-vtable-verify; define --enable-vtable-verify; define
350 VTV_CXXFLAGS, VTV_PCH_CXXFLAGS and VTV_CXXLINKFLAGS.
351 * config/abi/pre/gnu.ver: Export symbols for vtable verification.
352 * libsupc++/Makefile.am: Define vtv_sources and add it to
353 libsupc___la_SOURCES and libsupc__convenience_la_SOURCES.
354 * libsupc++/vtv_stubs.cc: New file.
355 * include/Makefile.am: Add VTV_PCH_CXXFLAGS to PCHFLAGS.
356 * src/Makefile.am: Add VTV_CXXFLAGS to AM_CXXFLAGS; add
357 VTV_CXXLINKFLAGS to CXXLINK.
358 * src/c++98/Makefile.am: Comment out XTEMPLATE_FLAGS; add VTV_CXXFLAGS
359 to AM_CXXFLAGS; add VTV_CXXXLINKFLAGS to CXXLINK.
360 * src/C++11/Makefile.am: Ditto.
361 * doc/xml/manual/configure.xml: Add entry for --enable-vtable-verify.
362 * scripts/testsuite_flags.in: Add cxxvtvflags to Usage; cause
363 cxxvtvflags to use VTV_CXXFLAGS and VTV_CXXLINKFLAGS.
364 * testsuite/lib/libstdc++.exp: Add cxxvtvflags; add code to locate
365 libvtv if --enable-vtable-verify was used; set cxxvtvflags; add
366 cxxvtvflags to cxx_final.
367 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
368 -fvtable-verify=none to compiler flags.
369 * testsuite/17_intro/freestanding.cc: Add -fvtable-verify=none
371 * configure: Regenerated.
372 * Makefile.in: Regenerated.
373 * python/Makefile.in: Regenerated.
374 * include/Makefile.in: Regenerated.
375 * libsupc++/Makefile.in: Regenerated.
376 * config.h.in: Regenerated.
377 * po/Makefile.in: Regenerated.
378 * src/Makefile.in: Regenerated.
379 * src/c++98/Makefile.in: Regenerated.
380 * src/c++11/Makefile.in: Regenerated.
381 * doc/Makefile.in: Regenerated.
382 * testsuite/Makefile.in: Regenerated.
384 2013-08-06 Paolo Carlini <paolo.carlini@oracle.com>
386 Revert the last commit.
388 2013-08-06 François Dumont <fdumont@gcc.gnu.org>
390 * include/bits/hashtable_policy.h (_Hashtable_alloc): New.
391 (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than
393 (_Before_begin<>): Remove.
394 * include/bits/hashtable.h (_Hashtable): Inherit from
395 _Hashtable_alloc and adapt. Restore _M_before_begin field.
396 * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt
397 access to hashtable before begin.
398 * testsuite/23_containers/unordered_set/
399 not_default_constructible_hash_neg.cc: Adapt dg-error line number.
400 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
403 2013-08-03 Tim Shen <timshen91@gmail.com>
405 Implement bracket expression.
406 * include/bits/regex.h: Remove constexpr from "|=", etc.
407 * include/bits/regex_compiler.h: Parse bracket expression.
408 * include/bits/regex_nfa.h: _Comparator and _BracketMatcher(old
410 * include/bits/regex_nfa.tcc: Implement them.
411 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
412 from regex_search to regex_match.
413 * testsuite/28_regex/algorithms/regex_match/extended/
414 cstring_bracket_01.cc: New.
416 2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
418 * include/debug/functions.h (__foreign_iterator_aux4):
419 Initialize __l and __ge.
421 2013-08-02 Paolo Carlini <paolo.carlini@oracle.com>
424 * include/debug/functions.h: Include <bits/move.h>; minor formatting
426 (__foreign_iterator_aux4): Declare __l and __ge constexpr.
427 * include/debug/safe_iterator.h (_Safe_iterator<>::operator->):
429 * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
430 operator->): Likewise.
432 2013-08-01 François Dumont <fdumont@gcc.gnu.org>
435 * include/debug/formatter.h (_Debug_msg_id): Add
436 __msg_insert_itself_range entry.
437 * include/debug/functions.h (_Insert_range_from_self_is_safe<>):
438 New, indicate container types supporting self range insertion in
440 (__foreign_iterator): New, check if an iterator points to a given
442 * include/debug/macros.h (__glibcxx_check_insert_range): Add check
443 using __foreign_iterator.
444 (__gibcxx_check_insert_range_after): Likewise.
445 * include/debug/string (_Insert_range_from_self_is_safe<>):
446 Partially specialized to mark __gnu_debug::basic_string<> as
447 supporting self range insert.
448 * include/debug/list (_Insert_range_from_self_is_safe<>):
449 Partially specialized to mark std::list as supporting self range
450 insert if _GLIBCXX_DEBUG_PEDANTIC is not defined.
451 * include/debug/forward_list (_Insert_range_from_self_is_safe<>):
453 * src/c++11/debug.cc (_S_debug_messages): Add
454 __msg_insert_itself_range_entry message.
455 (_Error_formatter::_Parameter::_M_print_description): Display
456 iterator sequence address rather than sequence address when the
457 parameter type is an iterator.
458 (_Error_formatter::_M_print_word): Enhance behavior when
459 displaying a word with an appended '\n'.
460 * testsuite/util/debug/checks.h (check_insert4<>): New.
461 * testsuite/23_containers/deque/debug/insert5_neg.cc: New.
462 * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
463 * testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise.
464 * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
465 * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
466 * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
469 2013-08-01 Fabien Chêne <fabien@gcc.gnu.org>
472 * include/tr1/cmath: Remove pow(double,double) overload, remove a
473 duplicated comment about DR 550. Add a comment to explain the
475 * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.
477 2013-07-31 Tim Shen <timshen91@gmail.com>
479 Thompson matcher refactored. Fix grouping problem.
480 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
481 * include/bits/regex_compiler.h: Tweak for auto switching.
482 * include/bits/regex_grep_matcher.h: Class structure.
483 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
484 matcher) refactoring.
485 * include/bits/regex_nfa.h: Change _Results's interfaces.
486 * include/std/regex: Includes <map> and <queue>.
487 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
489 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
491 * testsuite/28_regex/algorithms/regex_match/extended/
492 string_dispatch_01.cc: New.
494 2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
497 * include/bits/stl_bvector.h: Use friend struct hash intead of
498 friend class hash to work around useless warnings produced by
500 * include/std/bitset: Likewise.
502 2013-07-31 Paolo Carlini <paolo.carlini@oracle.com>
504 * src/c++11/functexcept.cc: Do not include the whole <regex>.
505 * src/c++11/regex.cc: Likewise.
507 2013-07-31 Tim Shen <timshen91@gmail.com>
511 2013-07-31 Tim Shen <timshen91@gmail.com>
513 Thompson matcher refactored. Fix grouping problem.
514 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
515 * include/bits/regex_compiler.h: Tweak for auto switching.
516 * include/bits/regex_grep_matcher.h: Class structure.
517 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
518 matcher) refactoring.
519 * include/bits/regex_nfa.h: Change _Results's interfaces.
520 * include/std/regex: Includes <map> and <queue>.
521 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
523 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
525 * testsuite/28_regex/algorithms/regex_match/extended/
526 string_dispatch_01.cc: New.
528 2013-07-30 Paolo Carlini <paolo.carlini@oracle.com>
532 2013-07-30 Tim Shen <timshen91@gmail.com>
534 Thompson matcher refactored. Fix grouping problem.
535 * include/bits/regex.h: Use a dispatcher _M_get_matcher().
536 * include/bits/regex_compiler.h: Tweak for auto switching.
537 * include/bits/regex_grep_matcher.h: Class structure.
538 * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
539 matcher) refactoring.
540 * include/bits/regex_nfa.h: Change _Results's interfaces.
541 * include/std/regex: Includes <map> and <queue>.
542 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
544 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
546 * testsuite/28_regex/algorithms/regex_match/extended/
547 string_dispatch_01.cc: New.
549 2013-07-29 Nathan Froyd <froydnj@gcc.gnu.org>
551 * include/std/atomic (compare_exchange_weak, compare_exchange_strong):
552 Add call to __cmpexch_failure_order.
553 * testsuite/util/testsuite_common_types.h
554 (compare_exchange_order_lowering): New generator.
555 * testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
558 2013-07-25 Paolo Carlini <paolo.carlini@oracle.com>
560 * include/std/complex (pow(const complex<>&, int)): Enable in
562 * testsuite/26_numerics/complex/dr844.cc: Adjust.
563 * doc/xml/manual/intro.xml: Update.
565 2013-07-25 Tim Shen <timshen91@gmail.com>
567 Add documents and comments.
568 * include/bits/regex.h: Documents and comments.
569 * include/bits/regex_grep_matcher.h: Likewise.
570 * include/bits/regex_grep_matcher.tcc: Likewise.
571 * testsuite/28_regex/iterators/regex_iterator/char/
572 string_position_01.cc: New.
574 2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
577 * doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
580 2013-07-24 Paolo Carlini <paolo.carlini@oracle.com>
582 * include/bits/random.h (random_device): Avoid using the FILE type.
583 * include/std/random: Do not include <cstdio>.
584 * src/c++11/random.cc: ... include it here.
585 (random_device::_M_init, random_device::_M_fini,
586 random_device::_M_getval): Cast back and forth void* and FILE*.
588 2013-07-24 Tim Shen <timshen91@gmail.com>
590 Reimplment matcher using Depth-first search(backtracking).
593 * include/bits/regex.h: regex_match() and regex_search().
594 * include/bits/regex_cursor.h: Fix _M_set_pos().
595 * include/bits/regex_grep_matcher.h: add _M_dfs_match().
596 * include/bits/regex_grep_matcher.tcc: Implement it.
597 * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: New.
598 * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: New.
599 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
602 2013-07-23 Tim Shen <timshen91@gmail.com>
604 Implement regex_iterator and regex_token_iterator.
605 * include/bits/regex.h: regex_iterator and regex_token_iterator.
606 * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
608 * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
610 * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
612 * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
615 2013-07-23 Paolo Carlini <paolo.carlini@oracle.com>
617 * include/std/random: Add back <cstdio> include.
618 * src/c++11/random.cc: Don't include <cstdio> here.
620 2013-07-22 Jason Merrill <jason@redhat.com>
623 * libsupc++/atexit_thread.cc (run): Delete cleanup elts.
625 2013-07-22 Paolo Carlini <paolo.carlini@oracle.com>
628 * src/c++11/random.cc (random_device::_M_getval): If possible, use
629 read instead of std::fread.
630 * include/std/random: Do not include <cstdio> unnecessarily.
632 2013-07-21 Tim Shen <timshen91@gmail.com>
634 Partially implement regex_search.
635 * include/bits/regex.h: regex_search.
636 * include/bits/regex_grep_matcher.h: _M_search_from_first.
637 * include/bits/regex_grep_matcher.tcc: Implement it.
638 * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
640 2013-07-21 Jonathan Wakely <jwakely.gcc@gmail.com>
643 * include/std/condition_variable (condition_variable_any): Move into
644 inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
645 * src/c++11/condition_variable.cc (condition_variable_any): Move
647 * src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
648 * src/Makefile.am: Add new source file.
649 * src/Makefile.in: Regenerate.
651 2013-07-09 Tim Shen <timshen91@gmail.com>
653 Implement class regex_traits.
654 * include/bits/regex.h: Implement lookup_classname and
655 lookup_collatename; modify isctype; partially implement
657 * testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
658 * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
659 * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
660 * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
661 * testsuite/28_regex/traits/wchar_t/isctype.cc: New.
662 * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
663 * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
664 * testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.
666 2013-07-07 Ed Smith-Rowland <3dw4rd@verizon.net>
668 * doc/xml/manual/status_cxx2014.xml: Add links for papers.
670 2013-07-05 François Dumont <fdumont@gcc.gnu.org>
672 * include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward
674 (_MoveReuseOrAllocNode): Remove.
675 (_Insert_base): Take a functor defining how the node is generated.
676 * include/bits/hashtable.h: Adapt.
677 (operator=(initializer_list<value_type>)): Reuse node if any.
678 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
679 Adjust dg-error line number.
680 * testsuite/23_containers/unordered_set/
681 not_default_constructible_hash_neg.cc: Likewise.
683 2013-07-05 Paolo Carlini <paolo.carlini@oracle.com>
685 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
686 Tweak, avoid potential undefined behavior.
687 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
689 * testsuite/23_containers/vector/bool/modifiers/insert/
690 const_iterator.cc: Likewise.
691 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
694 2013-07-04 Veres Lajos <vlajos@gmail.com>
695 Jonathan Wakely <jwakely.gcc@gmail.com>
697 * config/locale/generic/codecvt_members.cc: Fix typo.
698 * configure.host: Likewise.
699 * doc/html/manual/policy_data_structures_design.html: Likewise.
700 * doc/xml/manual/policy_data_structures.xml: Likewise.
701 * include/bits/hashtable.h: Likewise.
702 * include/bits/random.h: Likewise.
703 * include/profile/impl/profiler_trace.h: Likewise.
704 * testsuite/23_containers/deque/cons/2.cc: Likewise.
705 * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
706 * testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise.
707 * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
709 2013-07-04 Ray Chason <chasonr@newsguy.com>
710 Paolo Carlini <paolo.carlini@oracle.com>
713 * include/bits/regex.h (regex_token_iterator<>::operator==,
714 regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
715 regex_token_iterator<>::operator->): Declare const.
717 2013-07-01 Paolo Carlini <paolo.carlini@oracle.com>
719 * include/bits/stl_list.h (list<>::insert(iterator,
720 size_type, const value_type&), list<>::insert(iterator,
721 initializer_list<>), list<>::insert(iterator, _InputIterator,
722 _InputIterator), list<>::splice(iterator, list&&),
723 list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
724 iterator), list<>::splice(iterator, list&, iterator),
725 list<>::splice(iterator, list&&, iterator, iterator),
726 list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
727 signatures to take const_iterator(s).
728 * include/bits/list.tcc (list<>::insert(const_iterator, size_type,
729 const value_type&), list<>::insert(const_iterator, _InputIterator,
730 _InputIterator)): Define.
731 * include/ext/vstring.h (__versa_string<>::insert(iterator,
732 size_type, _CharT), __versa_string<>::insert(iterator,
733 _InputIterator, _InputIterator), __versa_string<>::insert(iterator,
734 std::initializer_list<>), __versa_string<>::replace(iterator,
735 iterator, _InputIterator, _InputIterator), __versa_string<>::
736 replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
737 signatures to take const_iterator(s).
738 (__versa_string<>::_M_replace_dispatch): Take const_iterators.
739 * include/ext/vstring.tcc: Likewise.
740 * include/debug/list: Adjust.
741 * include/profile/list: Likewise.
742 * testsuite/23_containers/list/operations/splice/const_iterator.cc:
744 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
746 * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
748 * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
750 * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
752 * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
755 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
756 Adjust dg-error line number.
757 * testsuite/23_containers/list/requirements/dr438/
758 constructor_1_neg.cc: Likewise.
759 * testsuite/23_containers/list/requirements/dr438/
760 constructor_2_neg.cc: Likewise.
761 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
764 2013-06-30 Paolo Carlini <paolo.carlini@oracle.com>
766 * include/bits/stl_deque.h (deque<>::insert(iterator,
767 size_type, const value_type&), deque<>::insert(iterator,
768 initializer_list<>), deque<>::insert(iterator, _InputIterator,
769 _InputIterator)): Adjust C++11 signatures to take a const_iterator.
770 * include/bits/stl_vector.h: Likewise.
771 * include/bits/stl_bvector.h: Likewise.
772 * include/debug/deque: Adjust.
773 * include/debug/vector: Likewise.
774 * include/profile/deque: Likewise.
775 * include/profile/vector: Likewise.
776 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
778 * testsuite/23_containers/vector/bool/modifiers/insert/
779 const_iterator.cc: Likewise.
780 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
783 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
784 Adjust dg-error line number.
785 * testsuite/23_containers/deque/requirements/dr438/
786 constructor_1_neg.cc: Likewise.
787 * testsuite/23_containers/deque/requirements/dr438/
788 constructor_2_neg.cc: Likewise.
789 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
791 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
793 * testsuite/23_containers/vector/requirements/dr438/
794 constructor_1_neg.cc: Likewise.
795 * testsuite/23_containers/vector/requirements/dr438/
796 constructor_2_neg.cc: Likewise.
797 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
800 2013-06-29 François Dumont <fdumont@gcc.gnu.org>
802 * include/bits/hashtable_policy.h (_Insert_base): Consider hint in
804 * include/bits/hashtable.h: Likewise.
805 * testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
806 * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
808 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
809 Adjust dg-error line number.
810 * testsuite/23_containers/unordered_set/
811 not_default_constructible_hash_neg.cc: Likewise.
812 * doc/xml/manual/containers.xml: Document hinting in unordered
815 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
817 * testsuite/21_strings/basic_string/operations/*: Move inside
818 testsuite/21_strings/basic_string/operations/data/.
819 * testsuite/21_strings/basic_string/compare/*: Move inside
820 testsuite/21_strings/basic_string/operations/.
821 * testsuite/21_strings/basic_string/find/*: Likewise.
822 * testsuite/21_strings/basic_string/rfind/*: Likewise.
823 * testsuite/21_strings/basic_string/substr/*: Likewise.
825 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
827 * testsuite/21_strings/basic_string/append/*: Move inside
828 testsuite/21_strings/basic_string/modifiers/.
829 * testsuite/21_strings/basic_string/assign/*: Likewise.
830 * testsuite/21_strings/basic_string/insert/*: Likewise.
831 * testsuite/21_strings/basic_string/replace/*: Likewise.
832 * testsuite/21_strings/basic_string/modifiers/pop_back/char/
833 pop_back.cc: Rename to 1.cc.
834 * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
835 pop_back.cc: Likewise.
836 * testsuite/ext/vstring/assign/*: Move inside
837 testsuite/ext/vstring/modifiers/.
839 2013-06-27 Paolo Carlini <paolo.carlini@oracle.com>
841 * include/bits/stl_deque.h (deque<>::insert(iterator,
842 const value_type&), deque<>::insert(iterator, value_type&&),
843 deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
844 take a const_iterator.
845 (deque<>::erase): Simplify.
846 * include/bits/stl_list.h: Likewise.
847 (_List_iterator<>::_M_const_cast): Add.
848 * include/bits/stl_vector.h: Likewise.
849 * include/bits/stl_bvector.h: Likewise.
850 (_Bit_iterator::_M_const_cast): Add.
851 * include/bits/deque.tcc: Adjust definitions.
852 * include/bits/list.tcc: Likewise.
853 * include/bits/vector.tcc: Likewise.
854 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
855 Define trivial version in C++98 mode.
856 * include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
857 __versa_string<>::replace(iterator, iterator, const __versa_string&),
858 __versa_string<>::replace(iterator, iterator, const _CharT*,
859 size_type), __versa_string<>::replace(iterator, iterator,
860 const _CharT*), __versa_string<>::replace(iterator, iterator,
861 size_type, _CharT)): Adjust C++11 signatures to take a pair of
863 * include/debug/deque: Adjust.
864 * include/debug/list: Likewise.
865 * include/debug/vector: Likewise.
866 * include/profile/deque: Likewise.
867 * include/profile/list: Likewise.
868 * include/profile/vector: Likewise.
869 (vector<>::emplace): Add.
870 * testsuite/util/exception/safety.h: Update.
871 * testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
873 * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
875 * testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
877 * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
879 * testsuite/23_containers/vector/bool/modifiers/insert/
880 const_iterator.cc: Likewise.
881 * testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
883 * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
885 * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
887 * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
889 * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
891 * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
894 * testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
895 ext/vstring/modifiers/erase/char/.
896 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
897 ext/vstring/modifiers/wchar_t/.
898 * testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
899 ext/vstring/modifiers/pop_back/char/.
900 * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
901 testsuite/ext/vstring/modifiers/pop_back/wchar_t/.
903 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
904 Adjust dg-error line number.
905 * testsuite/23_containers/deque/requirements/dr438/
906 constructor_1_neg.cc: Likewise.
907 * testsuite/23_containers/deque/requirements/dr438/
908 constructor_2_neg.cc: Likewise.
909 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
911 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
913 * testsuite/23_containers/list/requirements/dr438/
914 constructor_1_neg.cc: Likewise.
915 * testsuite/23_containers/list/requirements/dr438/
916 constructor_2_neg.cc: Likewise.
917 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
919 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
921 * testsuite/23_containers/vector/requirements/dr438/
922 constructor_1_neg.cc: Likewise.
923 * testsuite/23_containers/vector/requirements/dr438/
924 constructor_2_neg.cc: Likewise.
925 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
928 2013-06-25 Ed Smith-Rowland <3dw4rd@verizon.net>
930 Status page for C++2014 library features
931 * doc/xml/faq.xml: Add link to new C++14 status page.
932 * doc/xml/manual/intro.xml: Ditto.
933 * doc/xml/manual/status_cxx2014.xml: New.
935 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
937 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
938 spurious fails with check-debug.
939 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
941 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
942 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
945 2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
948 * include/bits/char_traits.h (char_traits<char>::lt): Implement
950 * testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
952 2013-06-24 Bernd Edlinger <bernd.edlinger@hotmail.de>
955 * include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
956 declare per the letter of the C++ standard in terms of void.
957 * include/c_std/cstdlib: Likewise.
959 2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>
962 * include/bits/random.h (binomial_distribution<>::_M_waiting):
963 Add double parameter.
964 * include/bits/random.tcc (binomial_distribution<>::operator()
965 (_UniformRandomNumberGenerator&, const param_type&)): Pass
966 __param._M_q to _M_waiting.
967 (_M_waiting): Adjust.
968 * testsuite/26_numerics/random/binomial_distribution/
969 operators/values.cc: Add tests.
971 2013-06-21 Paolo Carlini <paolo.carlini@oracle.com>
974 * include/std/valarray (valarray<>::operator=(const _Expr<>&)):
975 Implement correctly C++11 26.6.2.3/1.
976 * testsuite/26_numerics/valarray/dr630-3.C: New.
978 2013-06-18 Jonathan Wakely <jwakely.gcc@gmail.com>
981 * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
982 functionality to new __timed_mutex_impl mixin. Overload try_lock_until
983 to handle conversion between different clocks. Replace constrained
984 __try_lock_for_impl overloads with conditional increment.
985 * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
986 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.
988 2013-06-17 Jonathan Wakely <jwakely.gcc@gmail.com>
989 Chris Jefferson <chris@bubblescope.net>
991 * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
992 dispatch to traditional std::equal for random-access iterators.
993 (__equal2_aux, __equal2): Remove.
994 (__equal::equal): Remove unused overloads.
995 * include/bits/stl_algo.h (is_permutation): Fix typos.
997 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
999 * include/std/shared_mutex (shared_lock::operator=): Add missing
1002 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1005 * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
1006 allocator's pointer type.
1007 * include/bits/hashtable.h (_Hashtable): Likewise.
1008 * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
1009 * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
1010 * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
1011 * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
1013 2013-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
1015 * include/std/shared_mutex: Implement N3659.
1016 * include/bits/c++14_warning.h: New.
1017 * include/Makefile.am: Add new headers.
1018 * include/Makefile.in: Regenerate.
1019 * testsuite/30_threads/shared_lock/cons/1.cc: New.
1020 * testsuite/30_threads/shared_lock/locking/2.cc: New.
1021 * testsuite/30_threads/shared_lock/cons/2.cc: New.
1022 * testsuite/30_threads/shared_lock/locking/3.cc: New.
1023 * testsuite/30_threads/shared_lock/cons/3.cc: New.
1024 * testsuite/30_threads/shared_lock/locking/4.cc: New.
1025 * testsuite/30_threads/shared_lock/cons/4.cc: New.
1026 * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
1027 * testsuite/30_threads/shared_lock/cons/5.cc: New.
1028 * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
1029 * testsuite/30_threads/shared_lock/cons/6.cc: New.
1030 * testsuite/30_threads/shared_lock/requirements/
1031 explicit_instantiation.cc: New.
1032 * testsuite/30_threads/shared_lock/locking/1.cc: New.
1033 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
1034 * testsuite/30_threads/shared_mutex/cons/1.cc: New.
1035 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
1036 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
1037 * testsuite/30_threads/shared_mutex/requirements/
1038 standard_layout.cc: New.
1039 * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
1040 * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
1042 2013-06-15 Paolo Carlini <paolo.carlini@oracle.com>
1045 * include/bits/unordered_map.h (unordered_map<>::insert,
1046 unordered_multimap<>::insert): Use std::forward, not std::move.
1047 * testsuite/23_containers/unordered_map/insert/57619.C: New.
1048 * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
1050 2013-06-14 Alan Modra <amodra@gmail.com>
1052 * configure.host (abi_baseline_pair): Match powerpc64*.
1054 2013-06-13 Daniel Krugler <daniel.kruegler@gmail.com>
1056 * include/std/type_traits (is_function): Support ref-qualified
1058 (is_copy_constructible, is_move_constructible, is_copy_assignable,
1059 is_move_assignable, is_nothrow_copy_constructible,
1060 is_nothrow_move_constructible, is_nothrow_copy_assignable,
1061 is_nothrow_move_assignable): Implement LWG 2196.
1062 (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
1064 (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
1066 * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
1067 * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
1068 * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
1069 * testsuite/20_util/is_assignable/value.cc: Likewise.
1070 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1071 * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
1072 * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
1073 * testsuite/20_util/is_function/value.cc: Likewise.
1074 * testsuite/20_util/is_move_assignable/value.cc: Likewise.
1075 * testsuite/20_util/is_move_constructible/value.cc: Likewise.
1076 * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
1077 * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
1078 * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
1079 * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
1081 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1083 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1085 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1088 2013-06-13 Paolo Carlini <paolo.carlini@oracle.com>
1090 * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
1091 __gnu_cxx::__airy_bi()): Remove.
1092 * testsuite/tr1/5_numerical_facilities/special_functions/
1093 10_cyl_bessel_k/airy.cc: Fix.
1095 2013-06-12 Ed Smith-Rowland <3dw4rd@verizon.net>
1098 * include/tr1/modified_bessel_func.tcc (__airy): Remove return
1100 (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
1101 * testsuite/tr1/5_numerical_facilities/special_functions/
1102 10_cyl_bessel_k/airy.cc: New.
1104 2013-06-11 Ed Smith-Rowland <3dw4rd@verizon.net>
1106 Fix library literals error involving namespace __detail.
1107 * include/std/chrono: Rename __detail to __select_type. Reformat.
1108 * include/bits/basic_string.h: Reformat.
1109 * testsuite/20_util/duration/literals/ns_detail.cc: New.
1111 2013-06-11 Paolo Carlini <paolo.carlini@oracle.com>
1114 * include/c_global/cstddef (max_align_t): Add to namespace std.
1115 * include/c_std/cstddef: Likewise.
1116 * testsuite/18_support/max_align_t/requirements/1.cc: New.
1117 * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
1119 2013-06-10 Benjamin Kosnik <bkoz@redhat.com>
1121 * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
1122 * include/bits/stl_map.h (erase): Use abi_tag when C++11.
1123 * include/bits/stl_multimap.h: Same.
1124 * include/bits/stl_multiset.h: Same.
1125 * include/bits/stl_set.h: Same.
1126 * include/bits/stl_tree.h: Same.
1127 * include/std/complex (real, imag): Use macro for abi_tag.
1129 * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
1130 * testsuite/util/testsuite_containers.h (erase_external): New
1132 (erase_external_iterators): Same.
1133 (linkage_check_cxx98_cxx11_erase): Same.
1134 (linkage_check_cxx98_cxx11_erase_iterators): Same.
1135 * testsuite/util/testsuite_shared.cc: Define.
1136 * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
1137 * testsuite/23_containers/map/modifiers/erase/
1138 dr130-linkage-check.cc: New.
1139 * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
1140 * testsuite/23_containers/multimap/modifiers/erase/
1141 dr130-linkage-check.cc: New.
1142 * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
1143 * testsuite/23_containers/multiset/modifiers/erase/
1144 dr130-linkage-check.cc: New.
1145 * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
1146 * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
1148 * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
1150 * testsuite/23_containers/map/dr130.cc: Move...
1151 * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
1152 * testsuite/23_containers/multimap/dr130.cc: Move ...
1153 * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
1154 * testsuite/23_containers/multiset/dr130.cc: Move...
1155 * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
1156 * testsuite/23_containers/set/dr130.cc: Move...
1157 * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
1159 2013-06-10 Thomas Schwinge <thomas@codesourcery.com>
1161 * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
1162 handling of Linux-based x86 systems to cover all GNU systems.
1163 * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
1164 * testsuite/18_support/pthread_guard.cc: Likewise.
1165 * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
1167 * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
1169 * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
1170 * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
1171 * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
1172 * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
1173 * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
1174 * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
1175 * testsuite/23_containers/list/pthread1.cc: Likewise.
1176 * testsuite/23_containers/list/pthread5.cc: Likewise.
1177 * testsuite/23_containers/map/pthread6.cc: Likewise.
1178 * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
1180 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
1182 * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
1183 * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
1184 * testsuite/30_threads/async/42819.cc: Likewise.
1185 * testsuite/30_threads/async/49668.cc: Likewise.
1186 * testsuite/30_threads/async/54297.cc: Likewise.
1187 * testsuite/30_threads/async/any.cc: Likewise.
1188 * testsuite/30_threads/async/async.cc: Likewise.
1189 * testsuite/30_threads/async/launch.cc: Likewise.
1190 * testsuite/30_threads/async/sync.cc: Likewise.
1191 * testsuite/30_threads/call_once/39909.cc: Likewise.
1192 * testsuite/30_threads/call_once/49668.cc: Likewise.
1193 * testsuite/30_threads/call_once/call_once1.cc: Likewise.
1194 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1195 * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
1196 * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
1197 * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
1198 * testsuite/30_threads/condition_variable/members/53841.cc:
1200 * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
1202 * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
1203 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1204 * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
1205 * testsuite/30_threads/condition_variable_any/members/1.cc:
1207 * testsuite/30_threads/condition_variable_any/members/2.cc:
1209 * testsuite/30_threads/future/cons/move.cc: Likewise.
1210 * testsuite/30_threads/future/members/45133.cc: Likewise.
1211 * testsuite/30_threads/future/members/get.cc: Likewise.
1212 * testsuite/30_threads/future/members/get2.cc: Likewise.
1213 * testsuite/30_threads/future/members/share.cc: Likewise.
1214 * testsuite/30_threads/future/members/valid.cc: Likewise.
1215 * testsuite/30_threads/future/members/wait.cc: Likewise.
1216 * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1217 * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1218 * testsuite/30_threads/lock/1.cc: Likewise.
1219 * testsuite/30_threads/lock/2.cc: Likewise.
1220 * testsuite/30_threads/lock/3.cc: Likewise.
1221 * testsuite/30_threads/lock/4.cc: Likewise.
1222 * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1223 * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1224 * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1225 * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1226 * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1227 * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1228 * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1229 * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1230 * testsuite/30_threads/packaged_task/49668.cc: Likewise.
1231 * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
1232 * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
1233 * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
1234 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1235 * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
1236 * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
1237 * testsuite/30_threads/packaged_task/cons/move_assign.cc:
1239 * testsuite/30_threads/packaged_task/members/get_future.cc:
1241 * testsuite/30_threads/packaged_task/members/get_future2.cc:
1243 * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
1244 * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
1245 * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
1246 * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
1247 * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
1248 * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
1249 * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
1250 * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
1251 * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
1252 * testsuite/30_threads/promise/cons/1.cc: Likewise.
1253 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1254 * testsuite/30_threads/promise/cons/move.cc: Likewise.
1255 * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
1256 * testsuite/30_threads/promise/members/get_future.cc: Likewise.
1257 * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
1258 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1259 * testsuite/30_threads/promise/members/set_exception2.cc:
1261 * testsuite/30_threads/promise/members/set_value.cc: Likewise.
1262 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1263 * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1264 * testsuite/30_threads/promise/members/swap.cc: Likewise.
1265 * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
1266 * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
1268 * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
1269 * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
1271 * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
1273 * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
1274 * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
1275 * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
1276 * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
1277 * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
1279 * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
1280 * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
1281 * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
1283 * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
1285 * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
1287 * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
1289 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
1291 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
1293 * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
1295 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1297 * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1299 * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
1301 * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
1302 * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
1303 * testsuite/30_threads/shared_future/members/get.cc: Likewise.
1304 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1305 * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
1306 * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
1307 * testsuite/30_threads/shared_future/members/wait_for.cc:
1309 * testsuite/30_threads/shared_future/members/wait_until.cc:
1311 * testsuite/30_threads/this_thread/1.cc: Likewise.
1312 * testsuite/30_threads/this_thread/2.cc: Likewise.
1313 * testsuite/30_threads/this_thread/3.cc: Likewise.
1314 * testsuite/30_threads/this_thread/4.cc: Likewise.
1315 * testsuite/30_threads/thread/cons/1.cc: Likewise.
1316 * testsuite/30_threads/thread/cons/2.cc: Likewise.
1317 * testsuite/30_threads/thread/cons/3.cc: Likewise.
1318 * testsuite/30_threads/thread/cons/4.cc: Likewise.
1319 * testsuite/30_threads/thread/cons/49668.cc: Likewise.
1320 * testsuite/30_threads/thread/cons/5.cc: Likewise.
1321 * testsuite/30_threads/thread/cons/6.cc: Likewise.
1322 * testsuite/30_threads/thread/cons/7.cc: Likewise.
1323 * testsuite/30_threads/thread/cons/8.cc: Likewise.
1324 * testsuite/30_threads/thread/cons/9.cc: Likewise.
1325 * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
1326 * testsuite/30_threads/thread/members/1.cc: Likewise.
1327 * testsuite/30_threads/thread/members/2.cc: Likewise.
1328 * testsuite/30_threads/thread/members/3.cc: Likewise.
1329 * testsuite/30_threads/thread/members/4.cc: Likewise.
1330 * testsuite/30_threads/thread/members/5.cc: Likewise.
1331 * testsuite/30_threads/thread/members/hardware_concurrency.cc:
1333 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1334 * testsuite/30_threads/thread/native_handle/typesizes.cc:
1336 * testsuite/30_threads/thread/swap/1.cc: Likewise.
1337 * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1338 * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
1340 * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1341 * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1342 * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
1344 * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1345 * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1346 * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1347 * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1348 * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1349 * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1350 * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1351 * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1352 * testsuite/30_threads/try_lock/1.cc: Likewise.
1353 * testsuite/30_threads/try_lock/2.cc: Likewise.
1354 * testsuite/30_threads/try_lock/3.cc: Likewise.
1355 * testsuite/30_threads/try_lock/4.cc: Likewise.
1356 * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1357 * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1358 * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1359 * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1360 * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1361 * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1362 * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1363 * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1364 * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1365 * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1366 * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1367 * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1368 * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
1369 * testsuite/ext/profile/mh.cc: Likewise.
1370 * testsuite/ext/rope/pthread7-rope.cc: Likewise.
1371 * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
1372 * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
1374 * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
1376 * testsuite/util/testsuite_performance.h: Extend current handling
1377 of Linux-based systems to cover all glibc-based systems.
1379 2013-06-09 Jonathan Wakely <jwakely.gcc@gmail.com>
1381 * include/std/mutex (call_once): Remove parentheses to fix error in
1382 c++1y and gnu++1y mode.
1383 * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
1384 thread to avoid undefined behaviour.
1386 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
1388 Simplify and clean up library literals.
1389 * include/std/chrono: Simplify namespace and versioning management.
1390 * include/bits/basic_string.h: Ditto.
1391 * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
1392 * testsuite/20_util/duration/literals/values.cc: Ditto.
1393 * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
1394 * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
1396 2013-06-08 Ed Smith-Rowland <3dw4rd@verizon.net>
1398 Implement N3654 - Quoted Strings Library Proposal
1399 * include/std/iomanip: Add quoted(String, Char delim, Char escape)
1400 manipulators and supporting machinery in c++1y mode.
1401 * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
1402 * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
1404 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1406 * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
1409 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1411 * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
1412 * include/bits/stl_algobase.h (equal, mismatch): Likewise.
1413 * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
1414 * testsuite/25_algorithms/equal/2.cc: New.
1415 * testsuite/25_algorithms/equal/check_type2.cc: New.
1416 * testsuite/25_algorithms/is_permutationqual/2.cc: New.
1417 * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
1418 * testsuite/25_algorithms/mismatch/2.cc: New.
1419 * testsuite/25_algorithms/mismatch/check_type2.cc: New.
1420 * testsuite/util/testsuite_iterators.h: Fix spelling.
1422 2013-06-08 Jonathan Wakely <jwakely.gcc@gmail.com>
1424 * include/std/type-traits (integral_constant::operator()): Implement
1426 * testsuite/20_util/integral_constant/call_operator.cc: New.
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-06-07 Uros Bizjak <ubizjak@gmail.com>
1436 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1438 2013-06-05 Tom Tromey <tromey@redhat.com>
1440 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
1442 2013-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1445 * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
1447 2013-06-01 Ed Smith-Rowland <3dw4rd@verizon.net>
1449 * include/std/chrono: Collapse redundant 'inline' from 'inline
1451 * include/std/tuple: Ditto.
1452 * include/bits/move.h: Ditto.
1454 2013-05-30 Ed Smith-Rowland <3dw4rd@verizon.net>
1456 Implement N3642 - User-defined Literals for Standard Library Types
1457 * include/bits/parse_numbers.h: New.
1458 * include/std/chrono: Add duration literal operators.
1459 * include/bits/basic_string.h: Add string literal operators.
1460 * include/Makefile.in: Add parse_numbers.h.
1461 * include/Makefile.am: Ditto.
1462 * testsuite/20_util/duration/literals/values.cc: New.
1463 * testsuite/20_util/duration/literals/types.cc: New.
1464 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1465 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
1466 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
1467 * testsuite/21_strings/basic_string/literals/values.cc: New.
1468 * testsuite/21_strings/basic_string/literals/types.cc: New.
1470 2013-05-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1472 * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
1473 !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
1474 calling non-existent from_time_t.
1476 2013-05-28 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1478 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1481 2013-05-24 Benjamin Kosnik <bkoz@redhat.com>
1483 * include/std/chrono: Wrap clocks in inline namespace _V2.
1484 * src/c++11/chrono.cc: Same.
1485 * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
1486 file, with default configure macros selected.
1488 * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
1490 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
1492 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1493 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1494 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1496 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1498 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1499 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1501 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1502 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1503 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1504 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1505 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1506 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1508 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1509 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1511 2013-05-24 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1513 * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
1514 (CLOCK_MONOTONIC): Define.
1516 2013-05-24 Paolo Carlini <paolo.carlini@oracle.com>
1518 * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
1521 * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
1523 2013-05-24 Jakub Jelinek <jakub@redhat.com>
1525 * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
1526 include unistd.h and sys/syscall.h. If _GLIBCXX_COMPATIBILITY_CXX0X,
1527 don't define system_clock::is_steady, system_clock::now() and
1528 steady_clock::is_steady.
1529 (std::chrono::system_clock::now()): If
1530 _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
1531 syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
1532 (std::chrono::system_clock::now()): Likewise. Add weak attribute
1533 if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
1535 * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
1536 (compatibility-chrono.lo, compatibility-chrono.o): New goals.
1537 * src/c++11/compatibility-chrono.cc: New file.
1538 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
1539 syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
1540 * testsuite/util/testsuite_abi.cc (check_version): Add
1541 GLIBCXX_3.4.20 version and make it the latest.
1542 * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
1543 also @@GLIBCXX_3.4.19. Move all symbols so far added for GCC 4.9 to
1544 @@GLIBCXX_3.4.20 instead.
1545 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1546 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1547 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1549 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1551 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1552 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1554 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1555 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1556 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1557 * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1558 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1559 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1561 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1562 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1563 * config.h.in: Regenerated.
1564 * src/Makefile.in: Regenerated.
1565 * configure: Regenerated.
1567 2013-05-23 Matthias Klose <doko@ubuntu.com>
1569 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1570 (ext_headers): Remove ${ext_host_headers}.
1571 (stamp-${host_alias}): Create ${host_builddir}/../ext.
1572 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1573 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1574 * include/Makefile.in: Regenerate.
1575 * include/ext/random: Include ext/opt_random.h.
1577 2013-05-22 Jonathan Wakely <jwakely.gcc@gmail.com>
1579 * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
1580 enable features if target OS is known to support them.
1581 * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
1582 * configure: Regenerate.
1584 2013-05-21 Jonathan Wakely <jwakely.gcc@gmail.com>
1587 * include/std/functional (__invoke): Do not form function types with
1588 abstract return type.
1589 * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
1591 2013-05-19 Jonathan Wakely <jwakely.gcc@gmail.com>
1593 * include/std/tuple (get): Implement N3670.
1594 * include/std/utility (get): Likewise.
1595 * testsuite/20_util/pair/get.cc: Move to ...
1596 * testsuite/20_util/pair/astuple/get.cc: Here.
1597 * testsuite/20_util/pair/astuple/astuple.cc: New.
1598 * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
1599 * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
1600 * testsuite/20_util/pair/astuple/get_by_type.cc: New.
1601 * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
1602 * testsuite/20_util/pair/astuple/get_neg.cc: New.
1603 * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
1604 * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
1605 * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
1607 2013-05-19 Paolo Carlini <paolo.carlini@oracle.com>
1609 * Revert last commit.
1611 2013-05-19 Matthias Klose <doko@ubuntu.com>
1613 * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1614 (ext_headers): Remove ${ext_host_headers}.
1615 (stamp-${host_alias}): Create ${host_builddir}/../ext.
1616 (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1617 (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1618 * include/Makefile.in: Regenerate.
1620 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1622 * include/std/system_error (error_category::error_category()): LWG
1623 2145: Declare public and constexpr.
1624 * src/c++11/system_error.cc (error_category::error_category()): Move
1626 * src/c++11/compatibility-c++0x.cc: Here.
1628 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1630 * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
1632 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1634 * include/bits/unique_ptr.h (make_unique): Declare inline.
1635 (unique_ptr<T[],D>::reset()): Combine two overloads into one.
1636 (default_delete, unique_ptr): Add doxygen comments.
1637 * include/bits/shared_ptr_base.h: Improve doxygen comments.
1638 * include/bits/shared_ptr.h: Likewise.
1639 * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1641 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1643 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1645 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1647 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1649 * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1651 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1653 * include/std/utility (exchange): Define.
1654 * testsuite/20_util/exchange/1.cc: New.
1656 2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
1658 * include/bits/unique_ptr.h (make_unique): Define.
1659 * testsuite/20_util/unique_ptr/creation/single.cc: New.
1660 * testsuite/20_util/unique_ptr/creation/array.cc: New.
1661 * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
1663 2013-05-15 François Dumont <fdumont@gcc.gnu.org>
1665 * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
1666 rendering of std::tr1 unordered containers iterator.
1667 (StdHashtableIterator): New, render std unordered containers iterator.
1668 * testsuite/libstdc++-prettyprinters/tr1.cc: New.
1670 2013-05-15 Jonathan Wakely <jwakely.gcc@gmail.com>
1672 * include/bits/basic_string.h (getline): Fix doxygen comments.
1674 2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
1676 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1677 Use std::pointer_traits.
1679 2013-05-13 Benjamin Kosnik <bkoz@redhat.com>
1681 * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
1683 * libsupc++/Makefile.in: Regenerate.
1684 * libsupc++/bad_array_length.cc: Tweak.
1685 * libsupc++/bad_array_new.cc: Tweak.
1687 2013-05-10 Paolo Carlini <paolo.carlini@oracle.com>
1690 * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
1691 (_Deque_iterator<>::_M_const_cast): Add.
1692 (deque<>::_M_erase): Declare.
1693 * include/bits/deque.tcc: ... and define.
1694 * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
1695 (_List_const_iterator<>::_M_const_cast): Add.
1696 * include/bits/list.tcc (erase (iterator)): Fix.
1697 * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1698 Add; include <ext/cast.h>.
1699 * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
1700 (vector<>::_M_erase): Declare.
1701 * include/bits/stl_bvector.h: Likewise.
1702 * include/bits/vector.tcc (vector<>::_M_erase): Define.
1703 * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
1704 * include/debug/deque: Adjust.
1705 * include/debug/list: Likewise.
1706 * include/debug/vector: Likewise.
1707 * include/profile/deque: Likewise.
1708 * include/profile/list: Likewise.
1709 * include/profile/vector: Likewise.
1710 * testsuite/util/exception/safety.h (erase_base<deque>,
1711 erase_base<deque>, erase_base<vector>): Remove.
1712 (erase_base<__versa_string>): Update.
1713 * testsuite/ext/vstring/modifiers/char/54577.cc: New.
1714 * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
1715 * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
1716 * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
1717 * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
1719 * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
1720 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1721 Adjust dg-error line numbers.
1722 * testsuite/23_containers/deque/requirements/dr438/
1723 constructor_1_neg.cc: Likewise.
1724 * testsuite/23_containers/deque/requirements/dr438/
1725 constructor_2_neg.cc: Likewise.
1726 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1728 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1730 * testsuite/23_containers/list/requirements/dr438/
1731 constructor_1_neg.cc: Likewise.
1732 * testsuite/23_containers/list/requirements/dr438/
1733 constructor_2_neg.cc: Likewise.
1734 * testsuite/23_containers/list/requirements/dr438/
1735 insert_neg.cc: Likewise.
1736 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1738 * testsuite/23_containers/vector/requirements/dr438/
1739 constructor_1_neg.cc: Likewise.
1740 * testsuite/23_containers/vector/requirements/dr438/
1741 constructor_2_neg.cc: Likewise.
1742 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1745 2013-05-09 Uros Bizjak <ubizjak@gmail.com>
1747 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
1749 2013-05-08 Jason Merrill <jason@redhat.com>
1751 Add std::bad_array_length (N3639)
1752 * libsupc++/new: Add std::bad_array_length.
1753 * libsupc++/bad_array_length.cc: New.
1754 * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
1755 * libsupc++/Makefile.in: Build them.
1756 * config/abi/pre/gnu.ver: Add new symbols.
1757 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1759 2013-05-08 Andi Kleen <ak@linux.intel.com>
1762 * libstdc++-v3/include/bits/atomic_base.h
1763 (_GLIBCXX_ALWAYS_INLINE): Add new macro.
1764 (atomic_thread_fence, atomic_signal_fence, test_and_set,
1765 clear, store, load, exchange, compare_exchange_weak)
1766 compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
1767 fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
1769 2013-05-08 Jason Merrill <jason@redhat.com>
1771 Add std::bad_array_new_length (N2932)
1772 * libsupc++/new: Add std::bad_array_new_length.
1773 * libsupc++/bad_array_new.cc: New.
1774 * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
1775 * libsupc++/Makefile.in: Build them.
1776 * config/abi/pre/gnu.ver: Add new symbols.
1777 * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1779 2013-05-08 Andoni Morales Alastruey <ylatuya@gmail.com>
1782 * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
1784 * include/Makefile.in: Regenerated.
1786 2013-05-07 François Dumont <fdumont@gcc.gnu.org>
1788 * include/profile/unordered_base.h: New.
1789 * include/Makefile.am: Add new profile header.
1790 * include/Makefile.in: Regenerate.
1791 * include/profile/impl/profiler.h
1792 (__profcxx_inefficient_hash_is_on): New macro.
1793 * include/profile/unordered_map (std::profile::unordered_map<>):
1794 Use new _Unordered_profile base class. Use default implementations
1795 for special functions.
1796 (std::profile::unordered_multimap<>): Likewise.
1797 * include/profile/unordered_set (std::profile::unordered_set<>):
1799 (std::profile::unordered_multiset<>): Likewise.
1800 * testsuite/23_containers/unordered_multiset/55043.cc: Fix
1801 MoveOnly equality operator signature.
1803 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
1805 * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
1806 constexpr_data.cc: Move...
1807 * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
1809 * testsuite/20_util/integral_constant/requirements/
1810 explicit_instantiation.cc: New.
1811 * testsuite/20_util/integral_constant/requirements/typedefs.cc:
1813 * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
1814 * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
1816 * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
1817 * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
1819 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
1821 * include/std/type_traits (is_null_pointer): Add.
1822 (__is_nullptr_t): Implement in terms of the latter.
1823 (is_fundamental, is_scalar): Adjust.
1824 * testsuite/20_util/is_null_pointer/requirements/
1825 explicit_instantiation.cc: New.
1826 * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
1828 * testsuite/20_util/is_null_pointer/value.cc: Likewise.
1829 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1831 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1833 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1836 2013-05-02 Paolo Carlini <paolo.carlini@oracle.com>
1838 * include/c_global/cstdio: Add comment about LWG 2249.
1839 * include/c_std/cstdio: Likewise.
1841 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1843 * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
1845 * include/std/mutex (__recursive_mutex_base): Likewise.
1847 2013-04-28 Jonathan Wakely <jwakely.gcc@gmail.com>
1850 * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
1851 implement EBO safely.
1852 (_Sp_counted_base::_M_get_deleter): Add noexcept.
1853 (_Sp_counter_ptr): Use noexcept instead of comments.
1854 (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
1855 (_Sp_counted_ptr_inplace): Likewise.
1856 * testsuite/20_util/shared_ptr/cons/51365.cc: New.
1857 * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
1858 custom allocator and test construction with custom allocator.
1859 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
1862 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
1864 * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
1865 dialect to -std=gnu++11.
1867 2013-04-26 François Dumont <fdumont@gcc.gnu.org>
1869 * include/bits/hashtable_policy.h
1870 (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
1871 * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
1873 2013-04-26 Paolo Carlini <paolo.carlini@oracle.com>
1875 * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
1876 * include/c_std/cstdio (gets): Likewise.
1877 * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
1879 2013-04-25 Paolo Carlini <paolo.carlini@oracle.com>
1882 * include/debug/unordered_map (unordered_map, unordered_multimap):
1883 Fix default allocator type.
1884 * include/profile/unordered_map (unordered_map, unordered_multimap):
1886 * include/bits/unordered_map.h: Fix comments.
1888 2013-04-24 Jonathan Wakely <jwakely.gcc@gmail.com>
1891 * libsupc++/exception_ptr.h (copy_exception): Deprecate and
1892 move implementation to make_exception_ptr.
1893 * include/std/future (_State_base::_M_break_promise): Replace
1894 copy_exception with make_exception_ptr.
1895 * testsuite/18_support/exception_ptr/move.cc: Likewise.
1896 * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
1897 * testsuite/30_threads/future/members/get2.cc: Likewise.
1898 * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1899 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
1900 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1901 * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1903 2013-04-22 Jason Merrill <jason@redhat.com>
1905 * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
1907 * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
1908 substitution" lines.
1910 * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
1912 * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1913 * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
1914 * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
1916 2013-04-22 François Dumont <fdumont@gcc.gnu.org>
1918 * include/bits/hashtable_policy.h: Add C++11 allocator support.
1919 * include/bits/hashtable.h: Likewise.
1920 * include/bits/unordered_set.h: Likewise.
1921 * include/bits/unordered_map.h: Likewise.
1922 * include/debug/unordered_set: Likewise.
1923 * include/debug/unordered_map: Likewise.
1924 * include/std/unordered_set: Remove bits/algobase.h
1925 include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
1926 * include/std/unordered_map: Likewise.
1927 * include/ext/throw_allocator.h: Add checks on calls to allocator
1929 (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
1930 (std::hash<__gnu_cxx::throw_value_random>): Likewise.
1931 * testsuite/util/regression/rand/priority_queue
1932 /container_rand_regression_test.tcc: Adapt.
1933 * testsuite/util/regression/rand/assoc
1934 /container_rand_regression_test.tcc: Likewise.
1935 * testsuite/util/testsuite_counter_type.h: Add count of destructors.
1936 * testsuite/23_containers/unordered_set
1937 /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
1938 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
1939 * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
1940 * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
1941 * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
1942 * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
1943 * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
1944 * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
1945 * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
1946 * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
1948 * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
1949 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1951 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
1952 * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
1953 * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
1954 * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
1955 * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
1956 * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
1957 * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
1959 * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
1960 * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
1961 * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
1963 * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
1964 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1966 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
1967 * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
1969 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1971 * include/std/type_traits (is_signed): Simplify.
1972 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1973 Adjust dg-error line numbers.
1974 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1976 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1978 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1981 * include/std/complex (complex<float>::real, complex<float>::imag,
1982 complex<double>::real, complex<double>::imag,
1983 complex<long double>::real, complex<long double>::imag): Declare
1984 as const member functions.
1985 * include/std/type_traits (integral_constant<>::operator value_type):
1988 2013-04-22 Paolo Carlini <paolo.carlini@oracle.com>
1991 * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
1992 * testsuite/25_algorithms/pop_heap/57010.cc: New.
1994 2013-04-21 Evgeniy Stepanov <eugenis@google.com>
1996 * src/c++11/system_error.cc (generic_category_instance): Add
1998 (system_category_instance): Likewise.
1999 * src/c++11/future.cc (__fec): Likewise.
2001 2013-04-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2003 * doc/xml/manual/extensions.xml: Fix anachronism.
2005 2013-04-09 Tom Tromey <tromey@redhat.com>
2007 * configure, config.h.in: Rebuild.
2008 * configure.ac: Use GLIBCXX_CHECK_SDT_H. Don't check for
2010 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
2012 2013-04-09 Uros Bizjak <ubizjak@gmail.com>
2014 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
2016 2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
2018 * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
2020 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2022 * include/Makefile.am: Add ext/aligned_buffer.h
2023 * include/Makefile.in: Regenerate.
2024 * include/ext/aligned_buffer.h: New.
2025 * include/std/future (_Result): Use __aligned_buffer.
2026 * include/bits/forward_list.h (_Fwd_list_node): Likewise.
2027 * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
2028 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
2031 2013-04-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2033 * include/bits/forward_list.h: Only include required headers.
2034 (forward_list::reference): Define directly, not using __alloc_traits.
2035 (forward_list::const_reference): Likewise.
2037 2013-04-07 François Dumont <fdumont@gcc.gnu.org>
2039 * include/std/functional (_Derives_from_unary_function): Remove.
2040 (_Derives_from_binary_function): Remove.
2041 * include/std/type_traits (__sfinae_types): Remove.
2042 (__is_assignable_helper): Adapt.
2043 (__is_convertible_helper): Adapt.
2044 (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
2045 Remove several explicit instantiations of integral_constant.
2046 * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
2047 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
2048 Adapt dg-error line number.
2049 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2051 * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
2052 * testsuite/20_util/bind/ref_neg.cc: Likewise.
2054 2013-04-05 Jonathan Wakely <jwakely.gcc@gmail.com>
2057 * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
2058 get_terminate() accessors.
2059 * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
2060 * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
2062 * libsupc++/new_handler.cc: Likewise.
2064 2013-04-04 Jonathan Wakely <jwakely.gcc@gmail.com>
2066 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
2068 2013-04-03 Paolo Carlini <paolo.carlini@oracle.com>
2071 * include/debug/array (tuple_size, tuple_element): Do not declare.
2072 * include/profile/array: Likewise.
2073 * testsuite/23_containers/array/tuple_interface/
2074 tuple_element_debug_neg.cc: Adjust dg-error line number.
2076 2013-04-03 Jonathan Wakely <jwakely.gcc@gmail.com>
2078 * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
2079 * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
2081 (set_terminate(terminate_handler)): Set atomically.
2082 (set_unexpected(terminate_handler)): Likewise.
2083 * libsupc++/new (get_new_handler()): Declare.
2084 * libsupc++/new_handler.cc (get_new_handler()): Define.
2085 (set_new_handler(new_handler)): Set atomically.
2086 (__new_handler): Use internal linkage.
2087 * libsupc++/new_op.cc (operator new): Use get_new_handler().
2088 * libsupc++/new_opnt.cc (operator new): Likewise.
2089 * acinclude.m4: Bump libtool_VERSION to 6:19:0.
2090 * configure: Regenerate.
2091 * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
2092 * libsupc++/Makefile.in: Regenerate.
2093 * config/abi/pre/gnu.ver: Add new exports.
2094 * doc/xml/manual/status_cxx2011.xml: Update.
2095 * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
2097 * testsuite/18_support/headers/new/synopsis.cc: Likewise.
2098 * testsuite/18_support/new_handler.cc: New.
2099 * testsuite/18_support/terminate_handler.cc: New.
2100 * testsuite/18_support/unexpected_handler.cc: New.
2102 2013-04-02 Jonathan Wakely <jwakely.gcc@gmail.com>
2104 * doc/xml/manual/appendix_contributing.xml: Remove broken link and
2105 defer to general documentation on contributing to GCC.
2106 * doc/html/*: Regenerate.
2108 2013-03-30 Gerald Pfeifer <gerald@pfeifer.com>
2110 * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
2112 * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
2115 * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
2117 * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
2119 * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
2121 * doc/xml/manual/messages.xml: Adjust link to Java API specs.
2123 * doc/xml/manual/policy_data_structures: Remove direct link to
2124 IBM Haifa Research Labs.
2126 * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
2127 for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
2129 * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
2132 * doc/xml/manual/shared_ptr.xml: Use canonical address for
2135 2013-03-27 Kai Tietz <ktietz@redhat.com>
2137 * crossconfig.m4: Add support for cygwin x64 target.
2138 * configure: Regenerated.
2140 2013-03-25 Kai Tietz <ktietz@redhat.com>
2142 * testsuite/18_support/50594.cc: For mingw-targets use only static
2144 * testsuite/19_diagnostics/error_category/operators/equal.cc
2145 * testsuite/19_diagnostics/error_code/cons/1.cc
2146 * testsuite/19_diagnostics/error_code/operators/bool.cc
2147 * testsuite/19_diagnostics/error_code/operators/equal.cc
2148 * testsuite/19_diagnostics/error_code/operators/not_equal.cc
2149 * testsuite/19_diagnostics/error_condition/cons/1.cc
2150 * testsuite/19_diagnostics/error_condition/operators/bool.cc
2151 * testsuite/19_diagnostics/error_condition/operators/equal.cc
2152 * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
2153 * testsuite/23_containers/set/requirements/exception/basic.cc
2154 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
2155 * testsuite/lib/dg-options.exp (dg-additional-options): New option.
2157 2013-03-24 Jonathan Wakely <jwakely.gcc@gmail.com>
2160 * include/ext/debug_allocator.h (debug_allocator): Add missing members
2161 to meet allocator requirements.
2162 * testsuite/ext/debug_allocator/56170.cc: New.
2164 2013-03-22 Paolo Carlini <paolo.carlini@oracle.com>
2167 * include/std/chrono (__is_ratio): Uglify T.
2169 2013-03-18 Paolo Carlini <paolo.carlini@oracle.com>
2171 PR libstdc++/55977 (partial, std::vector and std::deque bits)
2172 * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
2173 _InputIterator, std::input_iterator_tag)): Use emplace_back.
2174 * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
2175 _InputIterator, std::input_iterator_tag)): Likewise.
2176 * testsuite/23_containers/vector/cons/55977.cc: New.
2177 * testsuite/23_containers/deque/cons/55977.cc: Likewise.
2178 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2179 Adjust dg-error line number.
2180 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2183 2013-03-17 Paolo Carlini <paolo.carlini@oracle.com>
2186 * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
2187 _InputIterator, __false_type)): Use emplace_back.
2188 * testsuite/23_containers/list/cons/55979.cc: New.
2189 * testsuite/23_containers/list/modifiers/1.h: Adjust.
2190 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2191 Adjust dg-error line number.
2193 2013-03-16 Jason Merrill <jason@redhat.com>
2196 * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
2198 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2201 * libsupc++/exception_ptr.h (type_info): Declare.
2203 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2206 * include/std/mutex (lock_guard, unique_lock, lock): Define without
2207 depending on _GLIBCXX_HAS_GTHREADS.
2208 * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
2210 2013-03-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2213 * include/std/future (__future_base::_Result): Add result_type
2215 (__future_base::_S_allocate_result): Overload for std::allocator.
2216 (__future_base::_Task_setter): Use _Result::result_type instead of
2217 deducing the type from the task.
2218 (__future_base::_Task_state): Store allocator to allow shared state
2219 to be reset. Replace std::function with member of target object type
2221 (__future_base::_Task_state_base): New abstract base class.
2222 (__future_base::_Task_state_base::_M_run): New virtual function to
2223 invoke type-erased target object.
2224 (__future_base::_Task_state_base::_M_reset): New virtual function to
2225 create new shared_state using same target object and allocator.
2226 (__future_base::__create_task_state): Allocate a new _Task_state.
2227 (packaged_task::packaged_task): Use __create_task_state.
2228 (packaged_task::reset): Use _Task_state_base::_M_reset.
2229 * testsuite/30_threads/packaged_task/cons/56492.cc: New.
2231 2013-03-15 Tom Tromey <tromey@redhat.com>
2233 * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
2234 (PROBE2): New macro.
2235 * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
2236 * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
2237 * configure.ac: Check for sys/sdt.h.
2238 * configure, config.h.in: Rebuild.
2240 2013-03-14 Jonathan Wakely <jwakely.gcc@gmail.com>
2243 * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
2244 allocator_traits instead of calling construct directly.
2245 * testsuite/23_containers/map/56613.cc: New.
2247 2013-03-13 Benjamin Kosnik <bkoz@redhat.com>
2249 * doc/html/*: Regenerate.
2251 2013-03-13 Paolo Carlini <paolo.carlini@oracle.com>
2254 * include/std/type_traits (is_fundamental): Add std::nullptr_t.
2255 * testsuite/20_util/is_fundamental/value.cc: Extend.
2256 * testsuite/20_util/is_compound/value.cc: Likewise.
2258 2013-03-09 Paolo Carlini <paolo.carlini@oracle.com>
2260 * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
2263 2013-03-08 Benjamin Kosnik <bkoz@redhat.com>
2265 * include/bits/memoryfwd.h: New. Centralize forward declarations.
2266 * include/bits/algorithmfwd.h: Consistent comments.
2267 * include/bits/localefwd.h: Same.
2268 * include/ext/vstring_fwd.h: Same.
2269 * include/parallel/algorithmfwd.h: Same.
2270 * include/parallel/numericfwd.h: Same.
2271 * include/std/iosfwd: Same.
2273 * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
2275 * include/ext/alloc_traits.h: Remove allocator forward decl.
2276 * include/bits/stl_construct.h: Same.
2277 * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
2278 forward decl. Consistent comments.
2280 * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
2282 * include/Makefile.am (bits_headers): Add memoryfwd.h.
2283 * include/Makefile.in: Regenerate.
2286 2013-03-08 François Dumont <fdumont@gcc.gnu.org>
2288 * include/bits/vector.tcc (vector<>operator=(const vector<>&):
2289 Reset pointers after deallocation when memory can be reused.
2290 * testsuite/23_containers/vector/allocator/minimal.cc: Insert
2291 elements to really challenge C++11 allocator integration.
2292 * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
2293 * testsuite/23_containers/vector/allocator/copy_assign.cc:
2295 * testsuite/23_containers/vector/allocator/move_assign.cc:
2297 * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
2298 swap vector back before checks on memory/personality mapping are
2300 * testsuite/23_containers/forward_list/allocator/minimal.cc:
2301 Insert element to really challenge C++11 allocator integration.
2302 * testsuite/23_containers/forward_list/allocator/copy.cc:
2304 * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
2306 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
2308 * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
2309 and swap forward_list back before checks on memory/personality
2310 mapping are performed.
2312 2013-03-07 Jakub Jelinek <jakub@redhat.com>
2314 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2315 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2316 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2318 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2319 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2320 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2321 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2322 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2323 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2325 2013-03-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2327 * scripts/extract_symvers.pl: Omit symbols bound to base
2329 * scripts/extract_symvers.in: Likewise.
2330 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2331 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2332 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2333 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2334 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2336 2013-03-04 Ulrich Drepper <drepper@gmail.com>
2338 * include/ext/random (__gnu_cxx::von_mises_distribution<>):
2339 Optimize generation function by pulling computation of __r into the
2340 constructor for param_type. Also compare _M_mu in operator==.
2343 2013-03-02 Ulrich Drepper <drepper@gmail.com>
2345 Add triangular and von Mises distributions.
2346 * include/ext/random: Include <ext/cmath>.
2347 Add __gnu_cxx::triangular_distribution<> and
2348 __gnu_cxx::von_mises_distribution<> classes.
2349 * include/ext/random.tcc: Add out-of-line functions for
2350 __gnu_cxx::triangular_distribution<> and
2351 __gnu_cxx::von_mises_distribution<>.
2352 * testsuite/ext/triangular_distribution/cons/default.cc: New file.
2353 * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
2354 * testsuite/ext/triangular_distribution/operators/serialize.cc:
2356 * testsuite/ext/triangular_distribution/operators/equal.cc:
2358 * testsuite/ext/triangular_distribution/operators/inequal.cc:
2360 * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
2362 * testsuite/ext/triangular_distribution/requirements/
2363 explicit_instantiation/1.cc: New file.
2364 * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
2365 * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
2366 * testsuite/ext/von_mises_distribution/operators/serialize.cc:
2368 * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
2369 * testsuite/ext/von_mises_distribution/operators/inequal.cc:
2371 * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
2373 * testsuite/ext/von_mises_distribution/requirements/
2374 explicit_instantiation/1.cc: New file.
2377 * include/Makefile.am (ext_headers): Add cmath.
2378 * include/Makefile.in: Regenerated.
2379 * include/ext/cmath: New file.
2381 2013-03-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2383 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2384 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2385 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2386 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2387 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2389 2013-02-26 Jonathan Wakely <jwakely.gcc@gmail.com>
2392 * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
2393 * testsuite/29_atomics/atomic/operators/56012.cc: New.
2396 * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
2398 * testsuite/29_atomics/atomic/operators/56011.cc: New.
2400 2013-02-25 Jason Merrill <jason@redhat.com>
2402 * configure.ac: Check for __cxa_thread_atexit_impl.
2403 * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
2405 * config.h.in, configure: Regenerate.
2407 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2409 * include/std/streambuf (basic_streambuf): Use injected class name
2410 instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
2413 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2415 * doc/html/faq.html: Fix spelling.
2416 * doc/xml/faq.xml: Likewise.
2417 * include/bits/basic_ios.h: Likewise.
2418 * include/bits/regex.h: Likewise.
2419 * include/std/istream: Likewise.
2420 * include/std/streambuf: Likewise.
2422 2013-02-20 Jonathan Wakely <jwakely.gcc@gmail.com>
2424 * testsuite/23_containers/unordered_set/55043.cc: Add missing
2425 namespace qualification.
2426 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2428 2013-02-19 Benjamin Kosnik <bkoz@redhat.com>
2430 * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
2431 _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
2432 AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
2433 * include/bits/stl_pair.h: Add to utilities group.
2434 * include/std/tuple: Same.
2435 * include/std/typeindex: Same.
2437 * include/bits/stringfwd.h: Fix markup.
2438 * include/std/limits: Same.
2439 * include/std/type_traits: Same.
2440 * include/tr1/memory: Same.
2441 * include/tr1/regex: Same.
2442 * scripts/run_doxygen: Comment.
2443 * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
2445 2013-02-14 Jason Merrill <jason@redhat.com>
2447 * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
2448 test if unsupported.
2450 2013-02-13 Marc Glisse <marc.glisse@inria.fr>
2453 * include/std/complex (complex): Undefine.
2454 * include/c_compatibility/complex.h (complex): Only undefine if
2455 <complex> has been included.
2456 * testsuite/26_numerics/complex/56111.cc: New testcase.
2458 2013-02-13 François Dumont <fdumont@gcc.gnu.org>
2460 * include/bits/hashtable_policy.h (_Hash_code_base): Restore
2461 default constructor protected.
2462 * include/bits/hashtable.h: static assert that _Hash_code_base has
2463 a default constructor available through inheritance.
2465 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
2467 * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
2470 2013-02-12 Julian Brown <julian@codesourcery.com>
2472 * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
2473 Don't expect dots after abbreviated weekday names for ru_RU for
2474 glibc versions >= 2.17.
2475 * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
2478 2013-02-12 Paolo Carlini <paolo.carlini@oracle.com>
2480 * include/bits/random.tcc (__transform): Remove.
2482 (discrete_distribution<>::param_type::_M_initialize): Adjust.
2483 (piecewise_constant_distribution<>::param_type::_M_initialize):
2485 (piecewise_linear_distribution<>::param_type::_M_initialize):
2488 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
2490 * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
2491 Use -fimplicit-templates.
2492 * src/c++11/Makefile.in: Regenerate.
2493 * src/c++11/hashtable_c++0x.cc: Remove instantiation for
2494 std::lower_bound template.
2496 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
2498 * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
2499 * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
2500 in C++11 mode and if available in the underlying C library.
2501 * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
2502 -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
2503 _GLIBCXX_HAVE_QUICK_EXIT.
2505 2013-02-11 Benjamin Kosnik <bkoz@redhat.com>
2507 * doc/html/*: Regenerate.
2509 2013-02-11 Jason Merrill <jason@redhat.com>
2511 * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
2512 (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
2513 * config.h.in, configure: Regenerate.
2514 * include/c_std/cstdlib: Add atexit and at_quick_exit.
2515 * include/c_global/cstdlib: Add atexit and at_quick_exit.
2516 * testsuite/18_support/quick_exit/quick_exit.cc: New.
2518 2013-02-11 Paolo Carlini <paolo.carlini@oracle.com>
2522 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2525 * include/bits/basic_ios.h: Replace operator void*() const
2526 with explicit operator bool() const in C++11 and greater.
2527 * testsuite/27_io/basic_ios/pr56193.cc: New file.
2529 2013-02-10 François Dumont <fdumont@gcc.gnu.org>
2530 Jonathan Wakely <jwakely.gcc@gmail.com>
2532 * doc/xml/manual/containers.xml: Add section on unordered containers.
2533 * doc/xml/manual/using.xml: Fix incomplete sentence.
2535 2013-02-10 Jonathan Wakely <jwakely.gcc@gmail.com>
2538 * include/bits/hashtable.h (__cache_default): Check if hash function
2540 * testsuite/23_containers/unordered_set/56267.cc: New.
2541 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2542 dg-error line number.
2543 * testsuite/23_containers/unordered_set/
2544 not_default_constructible_hash_neg.cc: Likewise.
2547 * include/bits/hashtable_policy.h (_Hash_code_base): Make default
2549 * testsuite/23_containers/unordered_set/56278.cc: New.
2551 2013-02-09 François Dumont <fdumont@gcc.gnu.org>
2553 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
2556 2013-02-08 Edward Smith-Rowland <3dw4rd@verizon.net>
2559 * include/tr1/special_function_util.h: Remove spurious const
2560 from numeric arguments.
2561 * include/tr1/riemann_zeta.tcc: Likewise.
2562 * include/tr1/exp_integral.tcc: Likewise.
2563 * include/tr1/bessel_function.tcc: Likewise.
2564 * include/tr1/hypergeometric.tcc: Likewise.
2565 * include/tr1/modified_bessel_func.tcc: Likewise.
2566 * include/tr1/poly_laguerre.tcc: Likewise.
2567 * include/tr1/gamma.tcc: Likewise.
2568 * include/tr1/legendre_function.tcc: Likewise.
2569 * include/tr1/poly_hermite.tcc: Likewise.
2570 * include/tr1/ell_integral.tcc: Likewise.
2571 * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
2572 If argument is zero return function value.
2573 * testsuite/tr1/5_numerical_facilities/special_functions/
2574 08_cyl_bessel_i/pr56216.cc: New.
2576 2013-02-07 Paolo Carlini <paolo.carlini@oracle.com>
2578 * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
2580 2013-02-06 Edward Smith-Rowland <3dw4rd@verizon.net>
2583 * include/bits/basic_ios.h: Replace operator void*() const
2584 with explicit operator bool() const in C++11 and greater.
2585 * testsuite/27_io/basic_ios/pr56193.cc: New file.
2587 2013-02-04 Dodji Seketeli <dodji@redhat.com>
2589 Add missing explicit instantiation for std::lower_bound template
2590 * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
2591 missing instantiation for std::lower_bound template.
2593 2013-02-04 François Dumont <fdumont@gcc.gnu.org>
2595 * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
2596 * include/bits/basic_string.h: Specialize previous to mark
2597 std::hash for string types as slow.
2598 * include/bits/hashtable.h (__cache_default): Replace is_integral
2599 with __is_fast_hash.
2600 * src/c++11/hash_c++0x.cc: Add type_traits include.
2601 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2602 Adapt dg-error line number.
2603 * testsuite/23_containers/unordered_set/
2604 not_default_constructible_hash_neg.cc: Likewise.
2606 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2607 Paolo Carlini <paolo.carlini@oracle.com>
2609 PR libstdc++/56202 (again)
2610 * include/bits/random.tcc (binomial_distribution<>::
2611 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
2614 * include/bits/random.h: Fix comment typo.
2616 2013-02-04 Manuel López-Ibáñez <manu@gcc.gnu.org>
2617 Paolo Carlini <paolo.carlini@oracle.com>
2620 * include/bits/random.tcc (binomial_distribution<>::
2621 _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
2624 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
2626 Update copyright years.
2627 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
2628 testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
2629 testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
2630 testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
2631 testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
2632 testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
2633 testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
2634 testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
2635 testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
2636 testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
2637 testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
2638 testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
2639 testsuite/29_atomics/atomic/cons/assign_neg.cc,
2640 testsuite/29_atomics/atomic/cons/copy_neg.cc,
2641 testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
2642 testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
2643 testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
2644 testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
2645 testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2646 Update lines in dg error matches.
2648 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
2650 * config/os/mingw32/ctype_inline.h: Fix copyright typo.
2652 2013-02-01 François Dumont <fdumont@gcc.gnu.org>
2654 * include/bits/hashtable_policy.h
2655 (_Prime_rehash_policy::_M_next_bkt)
2656 (_Prime_rehash_policy::_M_need_rehash): Move definition...
2657 * src/c++11/hashtable_c++0x.cc: ... here.
2658 * src/shared/hashtable-aux.cc: Remove c++config.h include.
2659 * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
2662 2013-01-29 Jason Merrill <jason@redhat.com>
2665 * config/abi/pre/gnu.ver: Don't export construction vtables.
2666 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2668 2013-01-28 Jonathan Wakely <jwakely.gcc@gmail.com>
2671 * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
2672 to construct value_type explicitly before trying to extract the key.
2673 * testsuite/23_containers/unordered_map/cons/56112.cc: New.
2675 2013-01-28 François Dumont <fdumont@gcc.gnu.org>
2677 * include/bits/hashtable_policy.h (_Local_iterator_base): Use
2678 _Hashtable_ebo_helper to embed functors into the local_iterator
2679 when necessary. Pass information about functors involved in hash
2681 * include/bits/hashtable.h (__cache_default): Do not cache for
2682 builtin integral types unless the hash functor is not noexcept
2683 qualified or is not default constructible. Adapt static assertions
2684 and local iterator instantiations.
2685 * include/debug/unordered_set
2686 (std::__debug::unordered_set<>::erase): Detect local iterators to
2687 invalidate using contained node rather than generating a dummy
2688 local_iterator instance.
2689 (std::__debug::unordered_multiset<>::erase): Likewise.
2690 * include/debug/unordered_map
2691 (std::__debug::unordered_map<>::erase): Likewise.
2692 (std::__debug::unordered_multimap<>::erase): Likewise.
2693 * testsuite/performance/23_containers/insert_erase/41975.cc: Test
2694 std::tr1 and std versions of unordered_set regardless of any
2695 macro. Add test on default cache behavior.
2696 * testsuite/performance/23_containers/insert/54075.cc: Likewise.
2697 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2699 * testsuite/23_containers/unordered_set/
2700 not_default_constructible_hash_neg.cc: New.
2701 * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
2703 2013-01-24 Paolo Carlini <paolo.carlini@oracle.com>
2706 * include/std/complex (pow(const complex<>&, int)): Avoid __n
2709 2013-01-22 Jakub Jelinek <jakub@redhat.com>
2711 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2712 Tightten scan-assembler-times regexps, add dg-additional-options for
2713 ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
2716 2013-01-12 Andi Kleen <ak@linux.intel.com>
2717 Jonathan Wakely <jwakely.gcc@gmail.com>
2720 * include/bits/atomic_base.h (__memory_order_modifier): Add
2721 __memory_order_mask, __memory_order_modifier_mask,
2722 __memory_order_hle_acquire, __memory_order_hle_release.
2723 (operator|,operator&): Add.
2724 (__cmpexch_failure_order): Rename to __cmpexch_failure_order2.
2725 (__cmpexch_failure_order): Add.
2726 (clear, store, load, compare_exchange_weak, compare_exchange_strong):
2728 * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2731 2013-01-19 Jonathan Wakely <jwakely.gcc@gmail.com>
2734 * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
2736 (__basic_future::_M_get_result()): Const qualify.
2737 (shared_future::get()): Likewise.
2738 * testsuite/30_threads/shared_future/members/get.cc: Use const
2741 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2743 PR libstdc++/55043 (again)
2744 * include/bits/alloc_traits.h (allocator_traits::construct): Disable
2745 unless construction would be well-formed.
2746 (__allow_copy_cons, __check_copy_constructible): Define.
2747 * include/bits/unordered_map.h (__check_copy_constructible): Use as
2748 base class so copy constructor will be deleted if appropriate.
2749 (is_copy_constructible): Remove specialization.
2750 * include/bits/unordered_set.h: Likewise.
2751 * include/debug/unordered_map.h: Undo previous commit. Default copy
2752 and move constructors.
2753 * include/debug/unordered_set.h: Likewise.
2754 * include/profile/unordered_map.h: Undo previous commit.
2755 * include/profile/unordered_set.h: Likewise.
2756 * testsuite/23_containers/unordered_map/55043.cc: Fix test.
2757 * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
2758 * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2759 * testsuite/23_containers/unordered_set/55043.cc: Likewise.
2760 * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
2761 cannot support incomplete types.
2762 * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
2765 2013-01-16 Jonathan Wakely <jwakely.gcc@gmail.com>
2768 * include/std/unordered_map: Include alloc_traits.h
2769 * include/std/unordered_set: Likewise.
2770 * include/bits/alloc_traits.h: Define __is_copy_insertable.
2771 * include/bits/unordered_map.h: Use it.
2772 * include/bits/unordered_set.h: Likewise.
2773 * include/debug/unordered_map.h: Likewise.
2774 * include/debug/unordered_set.h: Likewise.
2775 * include/profile/unordered_map.h: Likewise.
2776 * include/profile/unordered_set.h: Likewise.
2777 * include/bits/hashtable.h: Fix comment typos.
2778 * testsuite/23_containers/unordered_map/55043.cc: New.
2779 * testsuite/23_containers/unordered_multimap/55043.cc: New.
2780 * testsuite/23_containers/unordered_multiset/55043.cc: New.
2781 * testsuite/23_containers/unordered_set/55043.cc: New.
2783 2013-01-03 Janis Johnson <janisjo@codesourcery.com>
2785 * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
2788 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
2790 * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
2792 2013-01-08 Jonathan Wakely <jwakely.gcc@gmail.com>
2795 * include/std/functional (_Mem_fn::operator()): Fix constraints to
2797 * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
2798 * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
2800 2013-01-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2803 * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
2805 * configure: Regenerate.
2807 2013-01-07 Jonathan Wakely <jwakely.gcc@gmail.com>
2810 * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
2811 * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
2815 * include/std/functional (bad_function_call::what()): Declare.
2816 * src/c++11/functional.cc (bad_function_call::what()): Define.
2817 * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
2818 * testsuite/20_util/bad_function_call/what.cc: New.
2820 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
2822 * include/bits/unordered_map.h: Fix typo in comments.
2823 * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
2824 counts for unordered associative containers.
2826 2013-01-06 Jonathan Wakely <jwakely.gcc@gmail.com>
2828 * doc/xml/manual/abi.xml: Update library and symbol versions.
2830 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com>
2832 * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
2834 * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
2837 Copyright (C) 2013 Free Software Foundation, Inc.
2839 Copying and distribution of this file, with or without modification,
2840 are permitted in any medium without royalty provided the copyright
2841 notice and this notice are preserved.