2013-08-21 Paolo Carlini <paolo.carlini@oracle.com>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blob689dc99fe17ff092810a9c0519867cddd9afacd8
1 2013-08-20  Phil Muldoon  <pmuldoon@redhat.com>
3         PR libstdc++/53477
4         http://sourceware.org/bugzilla/show_bug.cgi?id=15195
6         * python/libstdcxx/v6/printers.py (Printer.__call__): If a value
7         is a reference, fetch referenced value.
8         (RxPrinter.invoke): Ditto.
9         * testsuite/libstdc++-prettyprinters/cxx11.cc (main): Add -O0
10         flag. Add referenced value tests.
12 2013-08-20  Tim Shen  <timshen91@gmail.com>
14         * include/bits/regex_constants.h: Add underlying `unsigned int` for
15           enum syntax_option_type.
17 2013-08-18  Tim Shen  <timshen91@gmail.com>
19         * include/bits/regex_automaton.h: _S_opcode_backref.
20         * include/bits/regex_automaton.tcc: Backref automaton support.
21         * include/bits/regex_compiler.tcc: Parsing support.
22         * include/bits/regex_executor.h: Add _M_traits for _DFSExecutor.
23         * include/bits/regex_executor.tcc: Add _S_opcode_backref support.
24         * testsuite/28_regex/algorithms/regex_match/ecma/string_backref.cc: New.
26 2013-08-16  Tim Shen  <timshen91@gmail.com>
28         * include/bits/regex.h (regex_traits<>::transform_primary):
29         Avoid past-the-end dereferences.
31 2013-08-14  Paolo Carlini  <paolo.carlini@oracle.com>
33         PR libstdc++/58163
34         * include/bits/basic_string.h (basic_string<>::operator[]): Fix
35         _GLIBCXX_DEBUG_PEDASSERT check vs C++11.
36         * include/ext/vstring.h: Likewise.
37         * testsuite/21_strings/basic_string/element_access/char/58163.cc:
38         New.
39         * testsuite/21_strings/basic_string/element_access/wchar_t/58163.cc:
40         Likewise.
41         * testsuite/ext/vstring/element_access/char/58163.cc: Likewise.
42         * testsuite/ext/vstring/element_access/wchar_t/58163.cc: Likewise.
44 2013-08-14  Uros Bizjak  <ubizjak@gmail.com>
46         * src/c++98/compatibility.cc (_ZTIe): Use
47         reinterpret_cast<const cast *> to avoid -Wcast-qual warnings.
48         (_ZTIPe): Ditto.
49         (ZTIPKe): Ditto.
51 2013-08-09  Tim Shen  <timshen91@gmail.com>
53         * include/bits/regex_constants.h: Change syntax_option_type to enum
54         type.
56 2013-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
58         * include/bits/regex.h: Replace _A, _B, _C, _R by _Ap, _Bp, _Cp, _Rp.
60 2013-08-08  François Dumont  <fdumont@gcc.gnu.org>
62         * include/bits/hashtable_policy.h (_Hashtable_alloc): New.
63         (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than
64         _Hashtable.
65         (_Before_begin<>): Remove.
66         * include/bits/hashtable.h (_Hashtable): Inherit from
67         _Hashtable_alloc and adapt. Restore _M_before_begin field.
68         * src/c++11/hashtable_c++0x.cc: Add ext/alloc_traits.h include.
69         * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt
70         access to hashtable before begin.
71         * testsuite/23_containers/unordered_set/
72         not_default_constructible_hash_neg.cc: Adapt dg-error line number.
73         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
74         Likewise.
76 2013-08-07  Tim Shen  <timshen91@gmail.com>
78         * include/Makefile.am: Adjust to new files.
79         * include/Makefile.in: Regenerate.
80         * include/bits/regex.h: Adjust to new interfaces.
81         * include/bits/regex_automaton.h: New.
82         * include/bits/regex_automaton.tcc: New.
83         * include/bits/regex_compiler.h: Adjust to new files.
84         * include/bits/regex_compiler.tcc: New.
85         * include/bits/regex_constants.h: Tail spaces.
86         * include/bits/regex_error.h: Likewise.
87         * include/bits/regex_executor.h: New.
88         * include/bits/regex_executor.tcc: New.
89         * include/std/regex: Adjust to new files.
90         * testsuite/28_regex/algorithms/regex_match/extended/
91         string_dispatch_01.cc: Adjust to new interfaces.
93 2013-08-07  Paolo Carlini  <paolo.carlini@oracle.com>
95         * include/ext/atomicity.h: Add #pragma GCC system_header.
97 2013-08-07  Paolo Carlini  <paolo.carlini@oracle.com>
99         PR libstdc++/58098
100         * include/bits/random.h (cauchy_distribution<>::min,
101         extreme_value_distribution<>::min, normal_distribution<>::min,
102         student_t_distribution<>::min): Fix.
103         * include/ext/random (normal_mv_distribution<>::min): Likewise.
104         * testsuite/26_numerics/random/cauchy_distribution/cons/parms.cc:
105         Adjust.
106         testsuite/26_numerics/random/cauchy_distribution/cons/default.cc:
107         Likewise.
108         * testsuite/26_numerics/random/extreme_value_distribution/cons/
109         parms.cc: Likewise.
110         testsuite/26_numerics/random/extreme_value_distribution/cons/
111         default.cc: Likewise.
112         * testsuite/26_numerics/random/normal_distribution/cons/parms.cc:
113         Likewise.
114         * testsuite/26_numerics/random/normal_distribution/cons/default.cc:
115         Likewise.
116         * testsuite/26_numerics/random/student_t_distribution/cons/parms.cc:
117         Likewise.
118         * testsuite/26_numerics/random/student_t_distribution/cons/default.cc:
119         Likewise.
120         * testsuite/ext/random/normal_mv_distribution/cons/parms.cc: Likewise.
121         * testsuite/ext/random/normal_mv_distribution/cons/default.cc: Likewise.
123         * testsuite/26_numerics/random/exponential_distribution/cons/parms.cc:
124         Minor tweak.
125         * testsuite/26_numerics/random/exponential_distribution/cons/default.cc:
126         Likewise.
128         * testsuite/ext/von_mises_distribution/*: Move to...
129         * testsuite/ext/random/von_mises_distribution/*: ... here.
130         * testsuite/ext/triangular_distribution/*: Move to...
131         * testsuite/ext/random/triangular_distribution/*: ... here.
133 2013-08-06  Caroline Tice  <cmtice@google.com>
135         * fragment.am: Add XTEMPLATE_FLAGS.
136         * configure.ac: Add definitions for --enable-vtable-verify.
137         * acinclude.m4:  Add --enable-vtable-verify and
138         --disable-vtable-verify; define --enable-vtable-verify; define
139         VTV_CXXFLAGS, VTV_PCH_CXXFLAGS and VTV_CXXLINKFLAGS.
140         * config/abi/pre/gnu.ver: Export symbols for vtable verification.
141         * libsupc++/Makefile.am: Define vtv_sources and add it to
142         libsupc___la_SOURCES and libsupc__convenience_la_SOURCES.
143         * libsupc++/vtv_stubs.cc: New file.
144         * include/Makefile.am: Add VTV_PCH_CXXFLAGS to PCHFLAGS.
145         * src/Makefile.am: Add VTV_CXXFLAGS to AM_CXXFLAGS; add
146         VTV_CXXLINKFLAGS to CXXLINK.
147         * src/c++98/Makefile.am: Comment out XTEMPLATE_FLAGS; add VTV_CXXFLAGS
148         to AM_CXXFLAGS; add VTV_CXXXLINKFLAGS to CXXLINK.
149         * src/C++11/Makefile.am: Ditto.
150         * doc/xml/manual/configure.xml: Add entry for --enable-vtable-verify.
151         * scripts/testsuite_flags.in: Add cxxvtvflags to Usage; cause
152         cxxvtvflags to use VTV_CXXFLAGS and VTV_CXXLINKFLAGS.
153         * testsuite/lib/libstdc++.exp: Add cxxvtvflags; add code to locate
154         libvtv if --enable-vtable-verify was used; set cxxvtvflags; add
155         cxxvtvflags to cxx_final.
156         * testsuite/18_support/bad_exception/23591_thread-1.c: Add
157         -fvtable-verify=none to compiler flags.
158         * testsuite/17_intro/freestanding.cc: Add -fvtable-verify=none
159         to compiler flags.
160         * configure: Regenerated.
161         * Makefile.in: Regenerated.
162         * python/Makefile.in: Regenerated.
163         * include/Makefile.in: Regenerated.
164         * libsupc++/Makefile.in: Regenerated.
165         * config.h.in: Regenerated.
166         * po/Makefile.in: Regenerated.
167         * src/Makefile.in: Regenerated.
168         * src/c++98/Makefile.in: Regenerated.
169         * src/c++11/Makefile.in: Regenerated.
170         * doc/Makefile.in: Regenerated.
171         * testsuite/Makefile.in: Regenerated.
173 2013-08-06  Paolo Carlini  <paolo.carlini@oracle.com>
175         Revert the last commit.
177 2013-08-06  François Dumont  <fdumont@gcc.gnu.org>
179         * include/bits/hashtable_policy.h (_Hashtable_alloc): New.
180         (_ReuseOrAllocNode, _AllocNode): Adapt to use latter rather than
181         _Hashtable.
182         (_Before_begin<>): Remove.
183         * include/bits/hashtable.h (_Hashtable): Inherit from
184         _Hashtable_alloc and adapt. Restore _M_before_begin field.
185         * python/libstdcxx/v6/printers.py (StdHashtableIterator): Adapt
186         access to hashtable before begin.
187         * testsuite/23_containers/unordered_set/
188         not_default_constructible_hash_neg.cc: Adapt dg-error line number.
189         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
190         Likewise.
192 2013-08-03  Tim Shen  <timshen91@gmail.com>
194         Implement bracket expression.
195         * include/bits/regex.h: Remove constexpr from "|=", etc.
196         * include/bits/regex_compiler.h: Parse bracket expression.
197         * include/bits/regex_nfa.h: _Comparator and _BracketMatcher(old
198         _RangeMatcher).
199         * include/bits/regex_nfa.tcc: Implement them.
200         * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
201         from regex_search to regex_match.
202         * testsuite/28_regex/algorithms/regex_match/extended/
203         cstring_bracket_01.cc: New.
205 2013-08-02  Paolo Carlini  <paolo.carlini@oracle.com>
207         * include/debug/functions.h (__foreign_iterator_aux4):
208         Initialize __l and __ge.
210 2013-08-02  Paolo Carlini  <paolo.carlini@oracle.com>
212         PR libstdc++/58049
213         * include/debug/functions.h: Include <bits/move.h>; minor formatting
214         changes.
215         (__foreign_iterator_aux4): Declare __l and __ge constexpr.
216         * include/debug/safe_iterator.h (_Safe_iterator<>::operator->):
217         Use __addressof.
218         * include/debug/safe_local_iterator.h (_Safe_local_iterator<>::
219         operator->): Likewise.
221 2013-08-01  François Dumont  <fdumont@gcc.gnu.org>
223         PR libstdc++/57779
224         * include/debug/formatter.h (_Debug_msg_id): Add
225         __msg_insert_itself_range entry.
226         * include/debug/functions.h (_Insert_range_from_self_is_safe<>):
227         New, indicate container types supporting self range insertion in
228         GNU implementation.
229         (__foreign_iterator): New, check if an iterator points to a given
230         sequence.
231         * include/debug/macros.h (__glibcxx_check_insert_range): Add check
232         using __foreign_iterator.
233         (__gibcxx_check_insert_range_after): Likewise.
234         * include/debug/string (_Insert_range_from_self_is_safe<>):
235         Partially specialized to mark __gnu_debug::basic_string<> as
236         supporting self range insert.
237         * include/debug/list (_Insert_range_from_self_is_safe<>):
238         Partially specialized to mark std::list as supporting self range
239         insert if _GLIBCXX_DEBUG_PEDANTIC is not defined.
240         * include/debug/forward_list (_Insert_range_from_self_is_safe<>):
241         Likewise.
242         * src/c++11/debug.cc (_S_debug_messages): Add
243         __msg_insert_itself_range_entry message.
244         (_Error_formatter::_Parameter::_M_print_description): Display
245         iterator sequence address rather than sequence address when the
246         parameter type is an iterator.
247         (_Error_formatter::_M_print_word): Enhance behavior when
248         displaying a word with an appended '\n'.
249         * testsuite/util/debug/checks.h (check_insert4<>): New.
250         * testsuite/23_containers/deque/debug/insert5_neg.cc: New.
251         * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise.
252         * testsuite/23_containers/vector/debug/insert6_neg.cc: Likewise.
253         * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise.
254         * testsuite/23_containers/list/debug/insert5_neg.cc: Likewise.
255         * testsuite/23_containers/forward_list/debug/insert_after4_neg.cc:
256         Likewise.
258 2013-08-01  Fabien Chêne  <fabien@gcc.gnu.org>
260         PR c++/54537
261         * include/tr1/cmath: Remove pow(double,double) overload, remove a
262         duplicated comment about DR 550. Add a comment to explain the
263         issue.
264         * testsuite/tr1/8_c_compatibility/cmath/pow_cmath.cc: New.
266 2013-07-31  Tim Shen  <timshen91@gmail.com>
268         Thompson matcher refactored. Fix grouping problem.
269         * include/bits/regex.h: Use a dispatcher _M_get_matcher().
270         * include/bits/regex_compiler.h: Tweak for auto switching.
271         * include/bits/regex_grep_matcher.h: Class structure.
272         * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
273         matcher) refactoring.
274         * include/bits/regex_nfa.h: Change _Results's interfaces.
275         * include/std/regex: Includes <map> and <queue>.
276         * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
277         For both matchers.
278         * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
279         For both matchers.
280         * testsuite/28_regex/algorithms/regex_match/extended/
281         string_dispatch_01.cc: New.
283 2013-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
285         PR libstdc++/56627
286         * include/bits/stl_bvector.h: Use friend struct hash intead of
287         friend class hash to work around useless warnings produced by
288         some compilers.
289         * include/std/bitset: Likewise.
291 2013-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
293         * src/c++11/functexcept.cc: Do not include the whole <regex>.
294         * src/c++11/regex.cc: Likewise.
296 2013-07-31  Tim Shen  <timshen91@gmail.com>
298         Revert last commit.
300 2013-07-31  Tim Shen  <timshen91@gmail.com>
302         Thompson matcher refactored. Fix grouping problem.
303         * include/bits/regex.h: Use a dispatcher _M_get_matcher().
304         * include/bits/regex_compiler.h: Tweak for auto switching.
305         * include/bits/regex_grep_matcher.h: Class structure.
306         * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
307         matcher) refactoring.
308         * include/bits/regex_nfa.h: Change _Results's interfaces.
309         * include/std/regex: Includes <map> and <queue>.
310         * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
311         For both matchers.
312         * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
313         For both matchers.
314         * testsuite/28_regex/algorithms/regex_match/extended/
315         string_dispatch_01.cc: New.
317 2013-07-30  Paolo Carlini  <paolo.carlini@oracle.com>
319         Revert last commit.
321 2013-07-30  Tim Shen  <timshen91@gmail.com>
323         Thompson matcher refactored. Fix grouping problem.
324         * include/bits/regex.h: Use a dispatcher _M_get_matcher().
325         * include/bits/regex_compiler.h: Tweak for auto switching.
326         * include/bits/regex_grep_matcher.h: Class structure.
327         * include/bits/regex_grep_matcher.tcc: _BFSMatcher(Thompson
328         matcher) refactoring.
329         * include/bits/regex_nfa.h: Change _Results's interfaces.
330         * include/std/regex: Includes <map> and <queue>.
331         * testsuite/28_regex/algorithms/regex_match/extended/53622.cc:
332         For both matchers.
333         * testsuite/28_regex/algorithms/regex_match/extended/57173.cc:
334         For both matchers.
335         * testsuite/28_regex/algorithms/regex_match/extended/
336         string_dispatch_01.cc: New.
338 2013-07-29  Nathan Froyd  <froydnj@gcc.gnu.org>
340         * include/std/atomic (compare_exchange_weak, compare_exchange_strong):
341         Add call to __cmpexch_failure_order.
342         * testsuite/util/testsuite_common_types.h
343         (compare_exchange_order_lowering): New generator.
344         * testsuite/29_atomics/atomic/requirements/compare_exchange_lowering.cc:
345         New test.
347 2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
349         * include/std/complex (pow(const complex<>&, int)): Enable in
350         C++11 mode too.
351         * testsuite/26_numerics/complex/dr844.cc: Adjust.
352         * doc/xml/manual/intro.xml: Update.
354 2013-07-25  Tim Shen  <timshen91@gmail.com>
356         Add documents and comments.
357         * include/bits/regex.h: Documents and comments.
358         * include/bits/regex_grep_matcher.h: Likewise.
359         * include/bits/regex_grep_matcher.tcc: Likewise.
360         * testsuite/28_regex/iterators/regex_iterator/char/
361         string_position_01.cc: New.
363 2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
365         PR libstdc++/57976
366         * doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
367         time_get::do_get.
369 2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
371         * include/bits/random.h (random_device): Avoid using the FILE type.
372         * include/std/random: Do not include <cstdio>.
373         * src/c++11/random.cc: ... include it here.
374         (random_device::_M_init, random_device::_M_fini,
375         random_device::_M_getval): Cast back and forth void* and FILE*.
377 2013-07-24  Tim Shen  <timshen91@gmail.com>
379         Reimplment matcher using Depth-first search(backtracking).
380         PR libstdc++/53622
381         PR libstdc++/57173
382         * include/bits/regex.h: regex_match() and regex_search().
383         * include/bits/regex_cursor.h: Fix _M_set_pos().
384         * include/bits/regex_grep_matcher.h: add _M_dfs_match().
385         * include/bits/regex_grep_matcher.tcc: Implement it.
386         * testsuite/28_regex/algorithms/regex_match/extended/53622.cc: New.
387         * testsuite/28_regex/algorithms/regex_match/extended/57173.cc: New.
388         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
389         Remove xfail.
391 2013-07-23  Tim Shen  <timshen91@gmail.com>
393         Implement regex_iterator and regex_token_iterator.
394         * include/bits/regex.h: regex_iterator and regex_token_iterator.
395         * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
396         New.
397         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
398         New.
399         * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
400         New.
401         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
402         string_01.cc: New.
404 2013-07-23  Paolo Carlini  <paolo.carlini@oracle.com>
406         * include/std/random: Add back <cstdio> include.
407         * src/c++11/random.cc: Don't include <cstdio> here.
409 2013-07-22  Jason Merrill  <jason@redhat.com>
411         PR libstdc++/57914
412         * libsupc++/atexit_thread.cc (run): Delete cleanup elts.
414 2013-07-22  Paolo Carlini  <paolo.carlini@oracle.com>
416         PR c++/57920
417         * src/c++11/random.cc (random_device::_M_getval): If possible, use
418         read instead of std::fread.
419         * include/std/random: Do not include <cstdio> unnecessarily.
421 2013-07-21  Tim Shen  <timshen91@gmail.com>
423         Partially implement regex_search.
424         * include/bits/regex.h: regex_search.
425         * include/bits/regex_grep_matcher.h: _M_search_from_first.
426         * include/bits/regex_grep_matcher.tcc: Implement it.
427         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
429 2013-07-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
431         PR libstdc++/54352
432         * include/std/condition_variable (condition_variable_any): Move into
433         inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
434         * src/c++11/condition_variable.cc (condition_variable_any): Move
435         definitions to ...
436         * src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
437         * src/Makefile.am: Add new source file.
438         * src/Makefile.in: Regenerate.
440 2013-07-09  Tim Shen  <timshen91@gmail.com>
442         Implement class regex_traits.
443         * include/bits/regex.h: Implement lookup_classname and
444         lookup_collatename; modify isctype; partially implement
445         transform_primary.
446         * testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
447         * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
448         * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
449         * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
450         * testsuite/28_regex/traits/wchar_t/isctype.cc: New.
451         * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
452         * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
453         * testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.
455 2013-07-07  Ed Smith-Rowland  <3dw4rd@verizon.net>
457         * doc/xml/manual/status_cxx2014.xml: Add links for papers.
459 2013-07-05  François Dumont  <fdumont@gcc.gnu.org>
461         * include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward
462         pattern.
463         (_MoveReuseOrAllocNode): Remove.
464         (_Insert_base): Take a functor defining how the node is generated.
465         * include/bits/hashtable.h: Adapt.
466         (operator=(initializer_list<value_type>)): Reuse node if any.
467         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
468         Adjust dg-error line number.
469         * testsuite/23_containers/unordered_set/
470         not_default_constructible_hash_neg.cc: Likewise.
472 2013-07-05  Paolo Carlini  <paolo.carlini@oracle.com>
474         * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
475         Tweak, avoid potential undefined behavior.
476         * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
477         Likewise.
478         * testsuite/23_containers/vector/bool/modifiers/insert/
479         const_iterator.cc: Likewise.
480         * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
481         Likewise.
483 2013-07-04  Veres Lajos  <vlajos@gmail.com>
484             Jonathan Wakely  <jwakely.gcc@gmail.com>
486         * config/locale/generic/codecvt_members.cc: Fix typo.
487         * configure.host: Likewise.
488         * doc/html/manual/policy_data_structures_design.html: Likewise.
489         * doc/xml/manual/policy_data_structures.xml: Likewise.
490         * include/bits/hashtable.h: Likewise.
491         * include/bits/random.h: Likewise.
492         * include/profile/impl/profiler_trace.h: Likewise.
493         * testsuite/23_containers/deque/cons/2.cc: Likewise.
494         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
495         * testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise.
496         * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
498 2013-07-04  Ray Chason  <chasonr@newsguy.com>
499             Paolo Carlini  <paolo.carlini@oracle.com>
501         PR libstdc++/57808
502         * include/bits/regex.h (regex_token_iterator<>::operator==,
503         regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
504         regex_token_iterator<>::operator->): Declare const.
506 2013-07-01  Paolo Carlini  <paolo.carlini@oracle.com>
508         * include/bits/stl_list.h (list<>::insert(iterator,
509         size_type, const value_type&), list<>::insert(iterator,
510         initializer_list<>), list<>::insert(iterator, _InputIterator,
511         _InputIterator), list<>::splice(iterator, list&&),
512         list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
513         iterator), list<>::splice(iterator, list&, iterator),
514         list<>::splice(iterator, list&&, iterator, iterator),
515         list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
516         signatures to take const_iterator(s).
517         * include/bits/list.tcc (list<>::insert(const_iterator, size_type,
518         const value_type&), list<>::insert(const_iterator, _InputIterator,
519         _InputIterator)): Define.
520         * include/ext/vstring.h (__versa_string<>::insert(iterator,
521         size_type, _CharT), __versa_string<>::insert(iterator,
522         _InputIterator, _InputIterator), __versa_string<>::insert(iterator,
523         std::initializer_list<>), __versa_string<>::replace(iterator,
524         iterator, _InputIterator, _InputIterator), __versa_string<>::
525         replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
526         signatures to take const_iterator(s).
527         (__versa_string<>::_M_replace_dispatch): Take const_iterators.
528         * include/ext/vstring.tcc: Likewise.
529         * include/debug/list: Adjust.
530         * include/profile/list: Likewise.
531         * testsuite/23_containers/list/operations/splice/const_iterator.cc:
532         New.
533         * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
534         Extend.
535         * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
536         Likewise.
537         * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
538         Likewise.
539         * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
540         Likewise.
541         * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
542         Likewise.
544         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
545         Adjust dg-error line number.
546         * testsuite/23_containers/list/requirements/dr438/
547         constructor_1_neg.cc: Likewise.
548         * testsuite/23_containers/list/requirements/dr438/
549         constructor_2_neg.cc: Likewise.
550         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
551         Likewise.
553 2013-06-30  Paolo Carlini  <paolo.carlini@oracle.com>
555         * include/bits/stl_deque.h (deque<>::insert(iterator,
556         size_type, const value_type&), deque<>::insert(iterator,
557         initializer_list<>), deque<>::insert(iterator, _InputIterator,
558         _InputIterator)): Adjust C++11 signatures to take a const_iterator.
559         * include/bits/stl_vector.h: Likewise.
560         * include/bits/stl_bvector.h: Likewise.
561         * include/debug/deque: Adjust.
562         * include/debug/vector: Likewise.
563         * include/profile/deque: Likewise.
564         * include/profile/vector: Likewise.
565         * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
566         Extend.
567         * testsuite/23_containers/vector/bool/modifiers/insert/
568         const_iterator.cc: Likewise.
569         * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
570         Likewise.
572         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
573         Adjust dg-error line number.
574         * testsuite/23_containers/deque/requirements/dr438/
575         constructor_1_neg.cc: Likewise.
576         * testsuite/23_containers/deque/requirements/dr438/
577         constructor_2_neg.cc: Likewise.
578         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
579         Likewise.
580         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
581         Likewise.
582         * testsuite/23_containers/vector/requirements/dr438/
583         constructor_1_neg.cc: Likewise.
584         * testsuite/23_containers/vector/requirements/dr438/
585         constructor_2_neg.cc: Likewise.
586         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
587         Likewise.
589 2013-06-29  François Dumont  <fdumont@gcc.gnu.org>
591         * include/bits/hashtable_policy.h (_Insert_base): Consider hint in
592         insert methods.
593         * include/bits/hashtable.h: Likewise.
594         * testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
595         * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
596         New.
597         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
598         Adjust dg-error line number.
599         * testsuite/23_containers/unordered_set/
600         not_default_constructible_hash_neg.cc: Likewise.
601         * doc/xml/manual/containers.xml: Document hinting in unordered
602         containers.
604 2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
606         * testsuite/21_strings/basic_string/operations/*: Move inside
607         testsuite/21_strings/basic_string/operations/data/.
608         * testsuite/21_strings/basic_string/compare/*: Move inside
609         testsuite/21_strings/basic_string/operations/.
610         * testsuite/21_strings/basic_string/find/*: Likewise.
611         * testsuite/21_strings/basic_string/rfind/*: Likewise.
612         * testsuite/21_strings/basic_string/substr/*: Likewise.
614 2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
616         * testsuite/21_strings/basic_string/append/*: Move inside
617         testsuite/21_strings/basic_string/modifiers/.
618         * testsuite/21_strings/basic_string/assign/*: Likewise.
619         * testsuite/21_strings/basic_string/insert/*: Likewise.
620         * testsuite/21_strings/basic_string/replace/*: Likewise.
621         * testsuite/21_strings/basic_string/modifiers/pop_back/char/
622         pop_back.cc: Rename to 1.cc.
623         * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
624         pop_back.cc: Likewise.
625         * testsuite/ext/vstring/assign/*: Move inside
626         testsuite/ext/vstring/modifiers/.
628 2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
630         * include/bits/stl_deque.h (deque<>::insert(iterator,
631         const value_type&), deque<>::insert(iterator, value_type&&),
632         deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
633         take a const_iterator.
634         (deque<>::erase): Simplify.
635         * include/bits/stl_list.h: Likewise.
636         (_List_iterator<>::_M_const_cast): Add.
637         * include/bits/stl_vector.h: Likewise.
638         * include/bits/stl_bvector.h: Likewise.
639         (_Bit_iterator::_M_const_cast): Add.
640         * include/bits/deque.tcc: Adjust definitions.
641         * include/bits/list.tcc: Likewise.
642         * include/bits/vector.tcc: Likewise.
643         * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
644         Define trivial version in C++98 mode.
645         * include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
646         __versa_string<>::replace(iterator, iterator, const __versa_string&),
647         __versa_string<>::replace(iterator, iterator, const _CharT*,
648         size_type), __versa_string<>::replace(iterator, iterator,
649         const _CharT*), __versa_string<>::replace(iterator, iterator,
650         size_type, _CharT)): Adjust C++11 signatures to take a pair of
651         const_iterators.
652         * include/debug/deque: Adjust.
653         * include/debug/list: Likewise.
654         * include/debug/vector: Likewise.
655         * include/profile/deque: Likewise.
656         * include/profile/list: Likewise.
657         * include/profile/vector: Likewise.
658         (vector<>::emplace): Add.
659         * testsuite/util/exception/safety.h: Update.
660         * testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
661         New.
662         * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
663         Likewise.
664         * testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
665         Likewise.
666         * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
667         Likewise.
668         * testsuite/23_containers/vector/bool/modifiers/insert/
669         const_iterator.cc: Likewise.
670         * testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
671         Likewise.
672         * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
673         Likewise.
674         * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
675         Likewise.
676         * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
677         Likewise.
678         * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
679         Likewise.
680         * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
681         Likewise.
683         * testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
684         ext/vstring/modifiers/erase/char/.
685         * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
686         ext/vstring/modifiers/wchar_t/.
687         * testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
688         ext/vstring/modifiers/pop_back/char/.
689         * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
690         testsuite/ext/vstring/modifiers/pop_back/wchar_t/.
692         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
693         Adjust dg-error line number.
694         * testsuite/23_containers/deque/requirements/dr438/
695         constructor_1_neg.cc: Likewise.
696         * testsuite/23_containers/deque/requirements/dr438/
697         constructor_2_neg.cc: Likewise.
698         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
699         Likewise.
700         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
701         Likewise.
702         * testsuite/23_containers/list/requirements/dr438/
703         constructor_1_neg.cc: Likewise.
704         * testsuite/23_containers/list/requirements/dr438/
705         constructor_2_neg.cc: Likewise.
706         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
707         Likewise.
708         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
709         Likewise.
710         * testsuite/23_containers/vector/requirements/dr438/
711         constructor_1_neg.cc: Likewise.
712         * testsuite/23_containers/vector/requirements/dr438/
713         constructor_2_neg.cc: Likewise.
714         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
715         Likewise.
717 2013-06-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
719         Status page for C++2014 library features
720         * doc/xml/faq.xml: Add link to new C++14 status page.
721         * doc/xml/manual/intro.xml: Ditto.
722         * doc/xml/manual/status_cxx2014.xml: New.
724 2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
726         * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
727         spurious fails with check-debug.
728         * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
729         Likewise.
730         * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
731         * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
732         Likewise.
734 2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
736         PR libstdc++/57704
737         * include/bits/char_traits.h (char_traits<char>::lt): Implement
738         LWG 467.
739         * testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
741 2013-06-24  Bernd Edlinger  <bernd.edlinger@hotmail.de>
743         PR libstdc++/57691
744         * include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
745         declare per the letter of the C++ standard in terms of void.
746         * include/c_std/cstdlib: Likewise.
748 2013-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
750         PR libstdc++/57674
751         * include/bits/random.h (binomial_distribution<>::_M_waiting):
752         Add double parameter.
753         * include/bits/random.tcc (binomial_distribution<>::operator()
754         (_UniformRandomNumberGenerator&, const param_type&)): Pass
755         __param._M_q to _M_waiting.
756         (_M_waiting): Adjust.
757         * testsuite/26_numerics/random/binomial_distribution/
758         operators/values.cc: Add tests.
760 2013-06-21  Paolo Carlini  <paolo.carlini@oracle.com>
762         PR libstdc++/57666
763         * include/std/valarray (valarray<>::operator=(const _Expr<>&)):
764         Implement correctly C++11 26.6.2.3/1.
765         * testsuite/26_numerics/valarray/dr630-3.C: New.
767 2013-06-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
769         PR libstdc++/57641
770         * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
771         functionality to new __timed_mutex_impl mixin. Overload try_lock_until
772         to handle conversion between different clocks. Replace constrained
773         __try_lock_for_impl overloads with conditional increment.
774         * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
775         * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.
777 2013-06-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
778             Chris Jefferson  <chris@bubblescope.net>
780         * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
781         dispatch to traditional std::equal for random-access iterators.
782         (__equal2_aux, __equal2): Remove.
783         (__equal::equal): Remove unused overloads.
784         * include/bits/stl_algo.h (is_permutation): Fix typos.
786 2013-06-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
788         * include/std/shared_mutex (shared_lock::operator=): Add missing
789         return statement.
791 2013-06-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
793         PR libstdc++/57263
794         * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
795         allocator's pointer type.
796         * include/bits/hashtable.h (_Hashtable): Likewise.
797         * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
798         * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
799         * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
800         * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
802 2013-06-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
804         * include/std/shared_mutex: Implement N3659.
805         * include/bits/c++14_warning.h: New.
806         * include/Makefile.am: Add new headers.
807         * include/Makefile.in: Regenerate.
808         * testsuite/30_threads/shared_lock/cons/1.cc: New.
809         * testsuite/30_threads/shared_lock/locking/2.cc: New.
810         * testsuite/30_threads/shared_lock/cons/2.cc: New.
811         * testsuite/30_threads/shared_lock/locking/3.cc: New.
812         * testsuite/30_threads/shared_lock/cons/3.cc: New.
813         * testsuite/30_threads/shared_lock/locking/4.cc: New.
814         * testsuite/30_threads/shared_lock/cons/4.cc: New.
815         * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
816         * testsuite/30_threads/shared_lock/cons/5.cc: New.
817         * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
818         * testsuite/30_threads/shared_lock/cons/6.cc: New.
819         * testsuite/30_threads/shared_lock/requirements/
820         explicit_instantiation.cc: New.
821         * testsuite/30_threads/shared_lock/locking/1.cc: New.
822         * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
823         * testsuite/30_threads/shared_mutex/cons/1.cc: New.
824         * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
825         * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
826         * testsuite/30_threads/shared_mutex/requirements/
827         standard_layout.cc: New.
828         * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
829         * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
831 2013-06-15  Paolo Carlini  <paolo.carlini@oracle.com>
833         PR libstdc++/57619
834         * include/bits/unordered_map.h (unordered_map<>::insert,
835         unordered_multimap<>::insert): Use std::forward, not std::move.
836         * testsuite/23_containers/unordered_map/insert/57619.C: New.
837         * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
839 2013-06-14  Alan Modra  <amodra@gmail.com>
841         * configure.host (abi_baseline_pair): Match powerpc64*.
843 2013-06-13  Daniel Krugler  <daniel.kruegler@gmail.com>
845         * include/std/type_traits (is_function): Support ref-qualified
846         functions.
847         (is_copy_constructible, is_move_constructible, is_copy_assignable,
848         is_move_assignable, is_nothrow_copy_constructible,
849         is_nothrow_move_constructible, is_nothrow_copy_assignable,
850         is_nothrow_move_assignable): Implement LWG 2196.
851         (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
852         LWG 2101.
853         (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
854         unused.
855         * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
856         * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
857         * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
858         * testsuite/20_util/is_assignable/value.cc: Likewise.
859         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
860         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
861         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
862         * testsuite/20_util/is_function/value.cc: Likewise.
863         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
864         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
865         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
866         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
867         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
868         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
870         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
871         line number.
872         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
873         Likewise.
874         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
875         Likewise.
877 2013-06-13  Paolo Carlini  <paolo.carlini@oracle.com>
879         * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
880         __gnu_cxx::__airy_bi()): Remove.
881         * testsuite/tr1/5_numerical_facilities/special_functions/
882         10_cyl_bessel_k/airy.cc: Fix.
884 2013-06-12  Ed Smith-Rowland  <3dw4rd@verizon.net>
886         PR libstdc++/56430
887         * include/tr1/modified_bessel_func.tcc (__airy): Remove return
888         from void function.
889         (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
890         * testsuite/tr1/5_numerical_facilities/special_functions/
891         10_cyl_bessel_k/airy.cc: New.
893 2013-06-11  Ed Smith-Rowland  <3dw4rd@verizon.net>
895         Fix library literals error involving namespace __detail.
896         * include/std/chrono: Rename __detail to __select_type. Reformat.
897         * include/bits/basic_string.h: Reformat.
898         * testsuite/20_util/duration/literals/ns_detail.cc: New.
900 2013-06-11  Paolo Carlini  <paolo.carlini@oracle.com>
902         PR libstdc++/56019
903         * include/c_global/cstddef (max_align_t): Add to namespace std.
904         * include/c_std/cstddef: Likewise.
905         * testsuite/18_support/max_align_t/requirements/1.cc: New.
906         * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
908 2013-06-10  Benjamin Kosnik  <bkoz@redhat.com>
910         * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
911         * include/bits/stl_map.h (erase): Use abi_tag when C++11.
912         * include/bits/stl_multimap.h: Same.
913         * include/bits/stl_multiset.h: Same.
914         * include/bits/stl_set.h: Same.
915         * include/bits/stl_tree.h: Same.
916         * include/std/complex (real, imag): Use macro for abi_tag.
918         * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
919         * testsuite/util/testsuite_containers.h (erase_external): New
920         declarations.
921         (erase_external_iterators): Same.
922         (linkage_check_cxx98_cxx11_erase): Same.
923         (linkage_check_cxx98_cxx11_erase_iterators): Same.
924         * testsuite/util/testsuite_shared.cc: Define.
925         * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
926         * testsuite/23_containers/map/modifiers/erase/
927         dr130-linkage-check.cc: New.
928         * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
929         * testsuite/23_containers/multimap/modifiers/erase/
930         dr130-linkage-check.cc: New.
931         * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
932         * testsuite/23_containers/multiset/modifiers/erase/
933         dr130-linkage-check.cc: New.
934         * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
935         * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
936         New.
937         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
939         * testsuite/23_containers/map/dr130.cc: Move...
940         * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
941         * testsuite/23_containers/multimap/dr130.cc: Move ...
942         * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
943         * testsuite/23_containers/multiset/dr130.cc: Move...
944         * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
945         * testsuite/23_containers/set/dr130.cc: Move...
946         * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
948 2013-06-10  Thomas Schwinge  <thomas@codesourcery.com>
950         * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
951         handling of Linux-based x86 systems to cover all GNU systems.
952         * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
953         * testsuite/18_support/pthread_guard.cc: Likewise.
954         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
955         Likewise.
956         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
957         Likewise.
958         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
959         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
960         * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
961         * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
962         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
963         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
964         * testsuite/23_containers/list/pthread1.cc: Likewise.
965         * testsuite/23_containers/list/pthread5.cc: Likewise.
966         * testsuite/23_containers/map/pthread6.cc: Likewise.
967         * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
968         Likewise.
969         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
970         Likewise.
971         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
972         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
973         * testsuite/30_threads/async/42819.cc: Likewise.
974         * testsuite/30_threads/async/49668.cc: Likewise.
975         * testsuite/30_threads/async/54297.cc: Likewise.
976         * testsuite/30_threads/async/any.cc: Likewise.
977         * testsuite/30_threads/async/async.cc: Likewise.
978         * testsuite/30_threads/async/launch.cc: Likewise.
979         * testsuite/30_threads/async/sync.cc: Likewise.
980         * testsuite/30_threads/call_once/39909.cc: Likewise.
981         * testsuite/30_threads/call_once/49668.cc: Likewise.
982         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
983         * testsuite/30_threads/condition_variable/54185.cc: Likewise.
984         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
985         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
986         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
987         * testsuite/30_threads/condition_variable/members/53841.cc:
988         Likewise.
989         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
990         Likewise.
991         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
992         * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
993         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
994         * testsuite/30_threads/condition_variable_any/members/1.cc:
995         Likewise.
996         * testsuite/30_threads/condition_variable_any/members/2.cc:
997         Likewise.
998         * testsuite/30_threads/future/cons/move.cc: Likewise.
999         * testsuite/30_threads/future/members/45133.cc: Likewise.
1000         * testsuite/30_threads/future/members/get.cc: Likewise.
1001         * testsuite/30_threads/future/members/get2.cc: Likewise.
1002         * testsuite/30_threads/future/members/share.cc: Likewise.
1003         * testsuite/30_threads/future/members/valid.cc: Likewise.
1004         * testsuite/30_threads/future/members/wait.cc: Likewise.
1005         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
1006         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
1007         * testsuite/30_threads/lock/1.cc: Likewise.
1008         * testsuite/30_threads/lock/2.cc: Likewise.
1009         * testsuite/30_threads/lock/3.cc: Likewise.
1010         * testsuite/30_threads/lock/4.cc: Likewise.
1011         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
1012         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
1013         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
1014         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
1015         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
1016         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
1017         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
1018         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
1019         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
1020         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
1021         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
1022         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
1023         * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1024         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
1025         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
1026         * testsuite/30_threads/packaged_task/cons/move_assign.cc:
1027         Likewise.
1028         * testsuite/30_threads/packaged_task/members/get_future.cc:
1029         Likewise.
1030         * testsuite/30_threads/packaged_task/members/get_future2.cc:
1031         Likewise.
1032         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
1033         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
1034         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
1035         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
1036         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
1037         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
1038         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
1039         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
1040         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
1041         * testsuite/30_threads/promise/cons/1.cc: Likewise.
1042         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1043         * testsuite/30_threads/promise/cons/move.cc: Likewise.
1044         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
1045         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
1046         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
1047         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1048         * testsuite/30_threads/promise/members/set_exception2.cc:
1049         Likewise.
1050         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
1051         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1052         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
1053         * testsuite/30_threads/promise/members/swap.cc: Likewise.
1054         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
1055         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
1056         Likewise.
1057         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
1058         * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
1059         Likewise.
1060         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
1061         Likewise.
1062         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
1063         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
1064         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
1065         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
1066         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
1067         Likewise.
1068         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
1069         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
1070         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
1071         Likewise.
1072         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
1073         Likewise.
1074         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
1075         Likewise.
1076         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
1077         Likewise.
1078         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
1079         Likewise.
1080         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
1081         Likewise.
1082         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
1083         Likewise.
1084         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
1085         Likewise.
1086         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
1087         Likewise.
1088         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
1089         Likewise.
1090         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
1091         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
1092         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
1093         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1094         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
1095         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
1096         * testsuite/30_threads/shared_future/members/wait_for.cc:
1097         Likewise.
1098         * testsuite/30_threads/shared_future/members/wait_until.cc:
1099         Likewise.
1100         * testsuite/30_threads/this_thread/1.cc: Likewise.
1101         * testsuite/30_threads/this_thread/2.cc: Likewise.
1102         * testsuite/30_threads/this_thread/3.cc: Likewise.
1103         * testsuite/30_threads/this_thread/4.cc: Likewise.
1104         * testsuite/30_threads/thread/cons/1.cc: Likewise.
1105         * testsuite/30_threads/thread/cons/2.cc: Likewise.
1106         * testsuite/30_threads/thread/cons/3.cc: Likewise.
1107         * testsuite/30_threads/thread/cons/4.cc: Likewise.
1108         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
1109         * testsuite/30_threads/thread/cons/5.cc: Likewise.
1110         * testsuite/30_threads/thread/cons/6.cc: Likewise.
1111         * testsuite/30_threads/thread/cons/7.cc: Likewise.
1112         * testsuite/30_threads/thread/cons/8.cc: Likewise.
1113         * testsuite/30_threads/thread/cons/9.cc: Likewise.
1114         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
1115         * testsuite/30_threads/thread/members/1.cc: Likewise.
1116         * testsuite/30_threads/thread/members/2.cc: Likewise.
1117         * testsuite/30_threads/thread/members/3.cc: Likewise.
1118         * testsuite/30_threads/thread/members/4.cc: Likewise.
1119         * testsuite/30_threads/thread/members/5.cc: Likewise.
1120         * testsuite/30_threads/thread/members/hardware_concurrency.cc:
1121         Likewise.
1122         * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1123         * testsuite/30_threads/thread/native_handle/typesizes.cc:
1124         Likewise.
1125         * testsuite/30_threads/thread/swap/1.cc: Likewise.
1126         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
1127         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
1128         Likewise.
1129         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
1130         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
1131         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
1132         Likewise.
1133         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
1134         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
1135         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
1136         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
1137         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
1138         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
1139         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
1140         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
1141         * testsuite/30_threads/try_lock/1.cc: Likewise.
1142         * testsuite/30_threads/try_lock/2.cc: Likewise.
1143         * testsuite/30_threads/try_lock/3.cc: Likewise.
1144         * testsuite/30_threads/try_lock/4.cc: Likewise.
1145         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
1146         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
1147         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
1148         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
1149         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
1150         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
1151         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
1152         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
1153         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
1154         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
1155         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
1156         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
1157         * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
1158         * testsuite/ext/profile/mh.cc: Likewise.
1159         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
1160         * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
1161         * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
1162         Likewise.
1163         * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
1164         Likewise.
1165         * testsuite/util/testsuite_performance.h: Extend current handling
1166         of Linux-based systems to cover all glibc-based systems.
1168 2013-06-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
1170         * include/std/mutex (call_once): Remove parentheses to fix error in
1171         c++1y and gnu++1y mode.
1172         * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
1173         thread to avoid undefined behaviour.
1175 2013-06-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
1177         Simplify and clean up library literals.
1178         * include/std/chrono: Simplify namespace and versioning management.
1179         * include/bits/basic_string.h: Ditto.
1180         * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
1181         * testsuite/20_util/duration/literals/values.cc: Ditto.
1182         * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
1183         * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
1185 2013-06-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
1187         Implement N3654 - Quoted Strings Library Proposal
1188         * include/std/iomanip: Add quoted(String, Char delim, Char escape)
1189         manipulators and supporting machinery in c++1y mode.
1190         * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
1191         * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
1193 2013-06-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1195         * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
1196         2162: Add noexcept.
1198 2013-06-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1200         * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
1201         * include/bits/stl_algobase.h (equal, mismatch): Likewise.
1202         * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
1203         * testsuite/25_algorithms/equal/2.cc: New.
1204         * testsuite/25_algorithms/equal/check_type2.cc: New.
1205         * testsuite/25_algorithms/is_permutationqual/2.cc: New.
1206         * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
1207         * testsuite/25_algorithms/mismatch/2.cc: New.
1208         * testsuite/25_algorithms/mismatch/check_type2.cc: New.
1209         * testsuite/util/testsuite_iterators.h: Fix spelling.
1211 2013-06-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
1213         * include/std/type-traits (integral_constant::operator()): Implement
1214         N3545.
1215         * testsuite/20_util/integral_constant/call_operator.cc: New.
1216         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1217         line numbers.
1218         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1219         Likewise.
1220         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1221         Likewise.
1223 2013-06-07  Uros Bizjak  <ubizjak@gmail.com>
1225         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1227 2013-06-05  Tom Tromey  <tromey@redhat.com>
1229         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
1231 2013-06-03  Paolo Carlini  <paolo.carlini@oracle.com>
1233         PR c++/57419
1234         * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
1236 2013-06-01  Ed Smith-Rowland  <3dw4rd@verizon.net>
1238         * include/std/chrono: Collapse redundant 'inline' from 'inline
1239         constexpr'.
1240         * include/std/tuple: Ditto.
1241         * include/bits/move.h: Ditto.
1243 2013-05-30  Ed Smith-Rowland  <3dw4rd@verizon.net>
1245         Implement N3642 - User-defined Literals for Standard Library Types
1246         * include/bits/parse_numbers.h: New.
1247         * include/std/chrono: Add duration literal operators.
1248         * include/bits/basic_string.h: Add string literal operators.
1249         * include/Makefile.in: Add parse_numbers.h.
1250         * include/Makefile.am: Ditto.
1251         * testsuite/20_util/duration/literals/values.cc: New.
1252         * testsuite/20_util/duration/literals/types.cc: New.
1253         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
1254         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
1255         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
1256         * testsuite/21_strings/basic_string/literals/values.cc: New.
1257         * testsuite/21_strings/basic_string/literals/types.cc: New.
1259 2013-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
1261         * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
1262         !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
1263         calling non-existent from_time_t.
1265 2013-05-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1267         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1268         Regenerate.
1270 2013-05-24  Benjamin Kosnik  <bkoz@redhat.com>
1272         * include/std/chrono: Wrap clocks in inline namespace _V2.
1273         * src/c++11/chrono.cc: Same.
1274         * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
1275         file, with default configure macros selected.
1277         * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
1278         namespace.
1279         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
1281         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1282         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1283         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1284         Regenerated.
1285         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1286         Regenerated.
1287         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1288         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1289         Regenerated.
1290         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1291         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1292         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1293         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1294         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1295         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1296         Regenerated.
1297         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1298         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1300 2013-05-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1302         * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
1303         (CLOCK_MONOTONIC): Define.
1305 2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
1307         * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
1308         overload.
1310         * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
1312 2013-05-24  Jakub Jelinek  <jakub@redhat.com>
1314         * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
1315         include unistd.h and sys/syscall.h.  If _GLIBCXX_COMPATIBILITY_CXX0X,
1316         don't define system_clock::is_steady, system_clock::now() and
1317         steady_clock::is_steady.
1318         (std::chrono::system_clock::now()): If
1319         _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
1320         syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
1321         (std::chrono::system_clock::now()): Likewise.  Add weak attribute
1322         if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
1323         be non-empty.
1324         * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
1325         (compatibility-chrono.lo, compatibility-chrono.o): New goals.
1326         * src/c++11/compatibility-chrono.cc: New file.
1327         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
1328         syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
1329         * testsuite/util/testsuite_abi.cc (check_version): Add
1330         GLIBCXX_3.4.20 version and make it the latest.
1331         * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
1332         also @@GLIBCXX_3.4.19.  Move all symbols so far added for GCC 4.9 to
1333         @@GLIBCXX_3.4.20 instead.
1334         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
1335         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
1336         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
1337         Regenerated.
1338         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1339         Regenerated.
1340         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
1341         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
1342         Regenerated.
1343         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1344         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1345         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1346         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1347         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1348         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1349         Regenerated.
1350         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1351         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1352         * config.h.in: Regenerated.
1353         * src/Makefile.in: Regenerated.
1354         * configure: Regenerated.
1356 2013-05-23  Matthias Klose  <doko@ubuntu.com>
1358         * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1359         (ext_headers): Remove ${ext_host_headers}.
1360         (stamp-${host_alias}): Create ${host_builddir}/../ext.
1361         (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1362         (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1363         * include/Makefile.in: Regenerate.
1364         * include/ext/random: Include ext/opt_random.h.
1366 2013-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1368         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
1369         enable features if target OS is known to support them.
1370         * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
1371         * configure: Regenerate.
1373 2013-05-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
1375         PR libstdc++/57336
1376         * include/std/functional (__invoke): Do not form function types with
1377         abstract return type.
1378         * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
1380 2013-05-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
1382         * include/std/tuple (get): Implement N3670.
1383         * include/std/utility (get): Likewise.
1384         * testsuite/20_util/pair/get.cc: Move to ...
1385         * testsuite/20_util/pair/astuple/get.cc: Here.
1386         * testsuite/20_util/pair/astuple/astuple.cc: New.
1387         * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
1388         * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
1389         * testsuite/20_util/pair/astuple/get_by_type.cc: New.
1390         * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
1391         * testsuite/20_util/pair/astuple/get_neg.cc: New.
1392         * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
1393         * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
1394         * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
1396 2013-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
1398         * Revert last commit.
1400 2013-05-19  Matthias Klose  <doko@ubuntu.com>
1402         * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1403         (ext_headers): Remove ${ext_host_headers}.
1404         (stamp-${host_alias}): Create ${host_builddir}/../ext.
1405         (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1406         (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1407         * include/Makefile.in: Regenerate.
1409 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1411         * include/std/system_error (error_category::error_category()): LWG
1412         2145: Declare public and constexpr.
1413         * src/c++11/system_error.cc (error_category::error_category()): Move
1414         definition to ...
1415         * src/c++11/compatibility-c++0x.cc: Here.
1417 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1419         * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
1421 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1423         * include/bits/unique_ptr.h (make_unique): Declare inline.
1424         (unique_ptr<T[],D>::reset()): Combine two overloads into one.
1425         (default_delete, unique_ptr): Add doxygen comments.
1426         * include/bits/shared_ptr_base.h: Improve doxygen comments.
1427         * include/bits/shared_ptr.h: Likewise.
1428         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1429         number.
1430         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1432 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1434         * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1436 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1438         * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1440 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1442         * include/std/utility (exchange): Define.
1443         * testsuite/20_util/exchange/1.cc: New.
1445 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1447         * include/bits/unique_ptr.h (make_unique): Define.
1448         * testsuite/20_util/unique_ptr/creation/single.cc: New.
1449         * testsuite/20_util/unique_ptr/creation/array.cc: New.
1450         * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
1452 2013-05-15  François Dumont  <fdumont@gcc.gnu.org>
1454         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
1455         rendering of std::tr1 unordered containers iterator.
1456         (StdHashtableIterator): New, render std unordered containers iterator.
1457         * testsuite/libstdc++-prettyprinters/tr1.cc: New.
1459 2013-05-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
1461         * include/bits/basic_string.h (getline): Fix doxygen comments.
1463 2013-05-14  Paolo Carlini  <paolo.carlini@oracle.com>
1465         * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1466         Use std::pointer_traits.
1468 2013-05-13  Benjamin Kosnik  <bkoz@redhat.com>
1470         * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
1471         bad_array_new.cc.
1472         * libsupc++/Makefile.in: Regenerate.
1473         * libsupc++/bad_array_length.cc: Tweak.
1474         * libsupc++/bad_array_new.cc: Tweak.
1476 2013-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
1478         PR libstdc++/54577
1479         * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
1480         (_Deque_iterator<>::_M_const_cast): Add.
1481         (deque<>::_M_erase): Declare.
1482         * include/bits/deque.tcc: ... and define.
1483         * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
1484         (_List_const_iterator<>::_M_const_cast): Add.
1485         * include/bits/list.tcc (erase (iterator)): Fix.
1486         * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1487         Add; include <ext/cast.h>.
1488         * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
1489         (vector<>::_M_erase): Declare.
1490         * include/bits/stl_bvector.h: Likewise.
1491         * include/bits/vector.tcc (vector<>::_M_erase): Define.
1492         * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
1493         * include/debug/deque: Adjust.
1494         * include/debug/list: Likewise.
1495         * include/debug/vector: Likewise.
1496         * include/profile/deque: Likewise.
1497         * include/profile/list: Likewise.
1498         * include/profile/vector: Likewise.
1499         * testsuite/util/exception/safety.h (erase_base<deque>,
1500         erase_base<deque>, erase_base<vector>): Remove.
1501         (erase_base<__versa_string>): Update.
1502         * testsuite/ext/vstring/modifiers/char/54577.cc: New.
1503         * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
1504         * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
1505         * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
1506         * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
1507         Likewise.
1508         * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
1509         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1510         Adjust dg-error line numbers.
1511         * testsuite/23_containers/deque/requirements/dr438/
1512         constructor_1_neg.cc: Likewise.
1513         * testsuite/23_containers/deque/requirements/dr438/
1514         constructor_2_neg.cc: Likewise.
1515         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1516         Likewise.
1517         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1518         Likewise.
1519         * testsuite/23_containers/list/requirements/dr438/
1520         constructor_1_neg.cc: Likewise.
1521         * testsuite/23_containers/list/requirements/dr438/
1522         constructor_2_neg.cc: Likewise.
1523         * testsuite/23_containers/list/requirements/dr438/
1524         insert_neg.cc: Likewise.
1525         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1526         Likewise.
1527         * testsuite/23_containers/vector/requirements/dr438/
1528         constructor_1_neg.cc: Likewise.
1529         * testsuite/23_containers/vector/requirements/dr438/
1530         constructor_2_neg.cc: Likewise.
1531         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1532         Likewise.
1534 2013-05-09  Uros Bizjak  <ubizjak@gmail.com>
1536         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
1538 2013-05-08  Jason Merrill  <jason@redhat.com>
1540         Add std::bad_array_length (N3639)
1541         * libsupc++/new: Add std::bad_array_length.
1542         * libsupc++/bad_array_length.cc: New.
1543         * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
1544         * libsupc++/Makefile.in: Build them.
1545         * config/abi/pre/gnu.ver: Add new symbols.
1546         * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1548 2013-05-08  Andi Kleen  <ak@linux.intel.com>
1550         PR target/55947
1551         * libstdc++-v3/include/bits/atomic_base.h
1552         (_GLIBCXX_ALWAYS_INLINE): Add new macro.
1553         (atomic_thread_fence, atomic_signal_fence, test_and_set,
1554         clear, store, load, exchange, compare_exchange_weak)
1555         compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
1556         fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
1558 2013-05-08  Jason Merrill  <jason@redhat.com>
1560         Add std::bad_array_new_length (N2932)
1561         * libsupc++/new: Add std::bad_array_new_length.
1562         * libsupc++/bad_array_new.cc: New.
1563         * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
1564         * libsupc++/Makefile.in: Build them.
1565         * config/abi/pre/gnu.ver: Add new symbols.
1566         * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1568 2013-05-08  Andoni Morales Alastruey <ylatuya@gmail.com>
1570         PR libstdc++/57212
1571         * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
1572         to __MINGW32__.
1573         * include/Makefile.in: Regenerated.
1575 2013-05-07  François Dumont  <fdumont@gcc.gnu.org>
1577         * include/profile/unordered_base.h: New.
1578         * include/Makefile.am: Add new profile header.
1579         * include/Makefile.in: Regenerate.
1580         * include/profile/impl/profiler.h
1581         (__profcxx_inefficient_hash_is_on): New macro.
1582         * include/profile/unordered_map (std::profile::unordered_map<>):
1583         Use new _Unordered_profile base class. Use default implementations
1584         for special functions.
1585         (std::profile::unordered_multimap<>): Likewise.
1586         * include/profile/unordered_set (std::profile::unordered_set<>):
1587         Likewise.
1588         (std::profile::unordered_multiset<>): Likewise.
1589         * testsuite/23_containers/unordered_multiset/55043.cc: Fix
1590         MoveOnly equality operator signature.
1592 2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
1594         * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
1595         constexpr_data.cc: Move...
1596         * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
1597         ... here.
1598         * testsuite/20_util/integral_constant/requirements/
1599         explicit_instantiation.cc: New.
1600         * testsuite/20_util/integral_constant/requirements/typedefs.cc:
1601         Likewise.
1602         * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
1603         * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
1604         Likewise.
1605         * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
1606         * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
1608 2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
1610         * include/std/type_traits (is_null_pointer): Add.
1611         (__is_nullptr_t): Implement in terms of the latter.
1612         (is_fundamental, is_scalar): Adjust.
1613         * testsuite/20_util/is_null_pointer/requirements/
1614         explicit_instantiation.cc: New.
1615         * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
1616         Likewise.
1617         * testsuite/20_util/is_null_pointer/value.cc: Likewise.
1618         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1619         line number.
1620         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1621         Likewise.
1622         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1623         Likewise.
1625 2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
1627         * include/c_global/cstdio: Add comment about LWG 2249.
1628         * include/c_std/cstdio: Likewise.
1630 2013-04-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
1632         * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
1633         comment.
1634         * include/std/mutex (__recursive_mutex_base): Likewise.
1636 2013-04-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
1638         PR libstdc++/51365
1639         * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
1640         implement EBO safely.
1641         (_Sp_counted_base::_M_get_deleter): Add noexcept.
1642         (_Sp_counter_ptr): Use noexcept instead of comments.
1643         (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
1644         (_Sp_counted_ptr_inplace): Likewise.
1645         * testsuite/20_util/shared_ptr/cons/51365.cc: New.
1646         * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
1647         custom allocator and test construction with custom allocator.
1648         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
1649         line number.
1651 2013-04-26  Paolo Carlini  <paolo.carlini@oracle.com>
1653         * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
1654         dialect to -std=gnu++11.
1656 2013-04-26  François Dumont  <fdumont@gcc.gnu.org>
1658         * include/bits/hashtable_policy.h
1659         (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
1660         * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
1662 2013-04-26  Paolo Carlini  <paolo.carlini@oracle.com>
1664         * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
1665         * include/c_std/cstdio (gets): Likewise.
1666         * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
1668 2013-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
1670         PR libstdc++/57065
1671         * include/debug/unordered_map (unordered_map, unordered_multimap):
1672         Fix default allocator type.
1673         * include/profile/unordered_map (unordered_map, unordered_multimap):
1674         Likewise.
1675         * include/bits/unordered_map.h: Fix comments.
1677 2013-04-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
1679         PR libstdc++/56905
1680         * libsupc++/exception_ptr.h (copy_exception): Deprecate and
1681         move implementation to make_exception_ptr.
1682         * include/std/future (_State_base::_M_break_promise): Replace
1683         copy_exception with make_exception_ptr.
1684         * testsuite/18_support/exception_ptr/move.cc: Likewise.
1685         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
1686         * testsuite/30_threads/future/members/get2.cc: Likewise.
1687         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1688         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
1689         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1690         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1692 2013-04-22  Jason Merrill  <jason@redhat.com>
1694         * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
1696         * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
1697         substitution" lines.
1699         * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
1700         function-cv-quals.
1701         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1702         * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
1703         * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
1705 2013-04-22  François Dumont  <fdumont@gcc.gnu.org>
1707         * include/bits/hashtable_policy.h: Add C++11 allocator support.
1708         * include/bits/hashtable.h: Likewise.
1709         * include/bits/unordered_set.h: Likewise.
1710         * include/bits/unordered_map.h: Likewise.
1711         * include/debug/unordered_set: Likewise.
1712         * include/debug/unordered_map: Likewise.
1713         * include/std/unordered_set: Remove bits/algobase.h
1714         include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
1715         * include/std/unordered_map: Likewise.
1716         * include/ext/throw_allocator.h: Add checks on calls to allocator
1717         construct/destroy.
1718         (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
1719         (std::hash<__gnu_cxx::throw_value_random>): Likewise.
1720         * testsuite/util/regression/rand/priority_queue
1721         /container_rand_regression_test.tcc: Adapt.
1722         * testsuite/util/regression/rand/assoc
1723         /container_rand_regression_test.tcc: Likewise.
1724         * testsuite/util/testsuite_counter_type.h: Add count of destructors.
1725         * testsuite/23_containers/unordered_set
1726         /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
1727         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
1728         * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
1729         * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
1730         * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
1731         * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
1732         * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
1733         * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
1734         * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
1735         * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
1736         New.
1737         * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
1738         * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1739         New.
1740         * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
1741         * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
1742         * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
1743         * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
1744         * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
1745         * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
1746         * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
1747         New.
1748         * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
1749         * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
1750         * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
1751         New.
1752         * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
1753         * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1754         New.
1755         * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
1756         * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
1758 2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1760         * include/std/type_traits (is_signed): Simplify.
1761         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1762         Adjust dg-error line numbers.
1763         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1764         Likewise.
1765         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1767 2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1769         N3669
1770         * include/std/complex (complex<float>::real, complex<float>::imag,
1771         complex<double>::real, complex<double>::imag,
1772         complex<long double>::real, complex<long double>::imag): Declare
1773         as const member functions.
1774         * include/std/type_traits (integral_constant<>::operator value_type):
1775         Likewise.
1777 2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1779         PR libstdc++/57010
1780         * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
1781         * testsuite/25_algorithms/pop_heap/57010.cc: New.
1783 2013-04-21  Evgeniy Stepanov  <eugenis@google.com>
1785         * src/c++11/system_error.cc (generic_category_instance): Add
1786         initializer.
1787         (system_category_instance): Likewise.
1788         * src/c++11/future.cc (__fec): Likewise.
1790 2013-04-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1792         * doc/xml/manual/extensions.xml: Fix anachronism.
1794 2013-04-09  Tom Tromey  <tromey@redhat.com>
1796         * configure, config.h.in: Rebuild.
1797         * configure.ac: Use GLIBCXX_CHECK_SDT_H.  Don't check for
1798         sys/sdt.h.
1799         * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
1801 2013-04-09  Uros Bizjak  <ubizjak@gmail.com>
1803         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1805 2013-04-08  Paolo Carlini  <paolo.carlini@oracle.com>
1807         * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
1809 2013-04-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1811         * include/Makefile.am: Add ext/aligned_buffer.h
1812         * include/Makefile.in: Regenerate.
1813         * include/ext/aligned_buffer.h: New.
1814         * include/std/future (_Result): Use __aligned_buffer.
1815         * include/bits/forward_list.h (_Fwd_list_node): Likewise.
1816         * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
1817         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
1818         number.
1820 2013-04-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1822         * include/bits/forward_list.h: Only include required headers.
1823         (forward_list::reference): Define directly, not using __alloc_traits.
1824         (forward_list::const_reference): Likewise.
1826 2013-04-07  François Dumont  <fdumont@gcc.gnu.org>
1828         * include/std/functional (_Derives_from_unary_function): Remove.
1829         (_Derives_from_binary_function): Remove.
1830         * include/std/type_traits (__sfinae_types): Remove.
1831         (__is_assignable_helper): Adapt.
1832         (__is_convertible_helper): Adapt.
1833         (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
1834         Remove several explicit instantiations of integral_constant.
1835         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
1836         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1837         Adapt dg-error line number.
1838         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1839         Likewise.
1840         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1841         * testsuite/20_util/bind/ref_neg.cc: Likewise.
1843 2013-04-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1845         PR libstdc++/56841
1846         * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
1847         get_terminate() accessors.
1848         * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
1849         * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
1850         available.
1851         * libsupc++/new_handler.cc: Likewise.
1853 2013-04-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
1855         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
1857 2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>
1859         PR libstdc++/56834
1860         * include/debug/array (tuple_size, tuple_element): Do not declare.
1861         * include/profile/array: Likewise.
1862         * testsuite/23_containers/array/tuple_interface/
1863         tuple_element_debug_neg.cc: Adjust dg-error line number.
1865 2013-04-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1867         * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
1868         * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
1869         Define.
1870         (set_terminate(terminate_handler)): Set atomically.
1871         (set_unexpected(terminate_handler)): Likewise.
1872         * libsupc++/new (get_new_handler()): Declare.
1873         * libsupc++/new_handler.cc (get_new_handler()): Define.
1874         (set_new_handler(new_handler)): Set atomically.
1875         (__new_handler): Use internal linkage.
1876         * libsupc++/new_op.cc (operator new): Use get_new_handler().
1877         * libsupc++/new_opnt.cc (operator new): Likewise.
1878         * acinclude.m4: Bump libtool_VERSION to 6:19:0.
1879         * configure: Regenerate.
1880         * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
1881         * libsupc++/Makefile.in: Regenerate.
1882         * config/abi/pre/gnu.ver: Add new exports.
1883         * doc/xml/manual/status_cxx2011.xml: Update.
1884         * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
1885         for handlers.
1886         * testsuite/18_support/headers/new/synopsis.cc: Likewise.
1887         * testsuite/18_support/new_handler.cc: New.
1888         * testsuite/18_support/terminate_handler.cc: New.
1889         * testsuite/18_support/unexpected_handler.cc: New.
1891 2013-04-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
1893         * doc/xml/manual/appendix_contributing.xml: Remove broken link and
1894         defer to general documentation on contributing to GCC.
1895         * doc/html/*: Regenerate.
1897 2013-03-30  Gerald Pfeifer  <gerald@pfeifer.com>
1899         * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
1901         * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
1902         Coding Standards.
1904         * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
1906         * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
1908         * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
1910         * doc/xml/manual/messages.xml: Adjust link to Java API specs.
1912         * doc/xml/manual/policy_data_structures: Remove direct link to
1913         IBM Haifa Research Labs.
1915         * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
1916         for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
1918         * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
1919         papers.
1921         * doc/xml/manual/shared_ptr.xml: Use canonical address for
1922         www.boost.org.
1924 2013-03-27  Kai Tietz  <ktietz@redhat.com>
1926         * crossconfig.m4: Add support for cygwin x64 target.
1927         * configure: Regenerated.
1929 2013-03-25  Kai Tietz  <ktietz@redhat.com>
1931         * testsuite/18_support/50594.cc: For mingw-targets use only static
1932         libstdc++-version.
1933         * testsuite/19_diagnostics/error_category/operators/equal.cc
1934         * testsuite/19_diagnostics/error_code/cons/1.cc
1935         * testsuite/19_diagnostics/error_code/operators/bool.cc
1936         * testsuite/19_diagnostics/error_code/operators/equal.cc
1937         * testsuite/19_diagnostics/error_code/operators/not_equal.cc
1938         * testsuite/19_diagnostics/error_condition/cons/1.cc
1939         * testsuite/19_diagnostics/error_condition/operators/bool.cc
1940         * testsuite/19_diagnostics/error_condition/operators/equal.cc
1941         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
1942         * testsuite/23_containers/set/requirements/exception/basic.cc
1943         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
1944         * testsuite/lib/dg-options.exp (dg-additional-options): New option.
1946 2013-03-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
1948         PR libstdc++/56170
1949         * include/ext/debug_allocator.h (debug_allocator): Add missing members
1950         to meet allocator requirements.
1951         * testsuite/ext/debug_allocator/56170.cc: New.
1953 2013-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
1955         PR libstdc++/56678
1956         * include/std/chrono (__is_ratio): Uglify T.
1958 2013-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
1960         PR libstdc++/55977 (partial, std::vector and std::deque bits)
1961         * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
1962         _InputIterator, std::input_iterator_tag)): Use emplace_back.
1963         * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
1964         _InputIterator, std::input_iterator_tag)): Likewise.
1965         * testsuite/23_containers/vector/cons/55977.cc: New.
1966         * testsuite/23_containers/deque/cons/55977.cc: Likewise.
1967         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1968         Adjust dg-error line number.
1969         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1970         Likewise.
1972 2013-03-17  Paolo Carlini  <paolo.carlini@oracle.com>
1974         PR libstdc++/55979
1975         * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
1976         _InputIterator, __false_type)): Use emplace_back.
1977         * testsuite/23_containers/list/cons/55979.cc: New.
1978         * testsuite/23_containers/list/modifiers/1.h: Adjust.
1979         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1980         Adjust dg-error line number.
1982 2013-03-16  Jason Merrill  <jason@redhat.com>
1984         PR c++/55017
1985         * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
1987 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1989         PR libstdc++/56468
1990         * libsupc++/exception_ptr.h (type_info): Declare.
1992 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1994         PR libstdc++/56002
1995         * include/std/mutex (lock_guard, unique_lock, lock): Define without
1996         depending on _GLIBCXX_HAS_GTHREADS.
1997         * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
1999 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2001         PR libstdc++/56492
2002         * include/std/future (__future_base::_Result): Add result_type
2003         typedef.
2004         (__future_base::_S_allocate_result): Overload for std::allocator.
2005         (__future_base::_Task_setter): Use _Result::result_type instead of
2006         deducing the type from the task.
2007         (__future_base::_Task_state): Store allocator to allow shared state
2008         to be reset.  Replace std::function with member of target object type
2009         accessed via ...
2010         (__future_base::_Task_state_base): New abstract base class.
2011         (__future_base::_Task_state_base::_M_run): New virtual function to
2012         invoke type-erased target object.
2013         (__future_base::_Task_state_base::_M_reset): New virtual function to
2014         create new shared_state using same target object and allocator.
2015         (__future_base::__create_task_state): Allocate a new _Task_state.
2016         (packaged_task::packaged_task): Use __create_task_state.
2017         (packaged_task::reset): Use _Task_state_base::_M_reset.
2018         * testsuite/30_threads/packaged_task/cons/56492.cc: New.
2020 2013-03-15  Tom Tromey  <tromey@redhat.com>
2022         * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
2023         (PROBE2): New macro.
2024         * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
2025         * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
2026         * configure.ac: Check for sys/sdt.h.
2027         * configure, config.h.in: Rebuild.
2029 2013-03-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
2031         PR libstdc++/56613
2032         * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
2033         allocator_traits instead of calling construct directly.
2034         * testsuite/23_containers/map/56613.cc: New.
2036 2013-03-13  Benjamin Kosnik  <bkoz@redhat.com>
2038         * doc/html/*: Regenerate.
2040 2013-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
2042         PR libstdc++/56609
2043         * include/std/type_traits (is_fundamental): Add std::nullptr_t.
2044         * testsuite/20_util/is_fundamental/value.cc: Extend.
2045         * testsuite/20_util/is_compound/value.cc: Likewise.
2047 2013-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
2049         * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
2050         -Wunused warnings.
2052 2013-03-08  Benjamin Kosnik  <bkoz@redhat.com>
2054         * include/bits/memoryfwd.h: New. Centralize forward declarations.
2055         * include/bits/algorithmfwd.h: Consistent comments.
2056         * include/bits/localefwd.h: Same.
2057         * include/ext/vstring_fwd.h: Same.
2058         * include/parallel/algorithmfwd.h: Same.
2059         * include/parallel/numericfwd.h: Same.
2060         * include/std/iosfwd: Same.
2062         * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
2063         forward decl.
2064         * include/ext/alloc_traits.h: Remove allocator forward decl.
2065         * include/bits/stl_construct.h: Same.
2066         * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
2067         forward decl. Consistent comments.
2069         * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
2071         * include/Makefile.am (bits_headers): Add memoryfwd.h.
2072         * include/Makefile.in: Regenerate.
2073         * configure: Same.
2075 2013-03-08  François Dumont  <fdumont@gcc.gnu.org>
2077         * include/bits/vector.tcc (vector<>operator=(const vector<>&):
2078         Reset pointers after deallocation when memory can be reused.
2079         * testsuite/23_containers/vector/allocator/minimal.cc: Insert
2080         elements to really challenge C++11 allocator integration.
2081         * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
2082         * testsuite/23_containers/vector/allocator/copy_assign.cc:
2083         Likewise.
2084         * testsuite/23_containers/vector/allocator/move_assign.cc:
2085         Likewise.
2086         * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
2087         swap vector back before checks on memory/personality mapping are
2088         performed.
2089         * testsuite/23_containers/forward_list/allocator/minimal.cc:
2090         Insert element to really challenge C++11 allocator integration.
2091         * testsuite/23_containers/forward_list/allocator/copy.cc:
2092         Likewise.
2093         * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
2094         Likewise.
2095         * testsuite/23_containers/forward_list/allocator/move_assign.cc:
2096         Likewise.
2097         * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
2098         and swap forward_list back before checks on memory/personality
2099         mapping are performed.
2101 2013-03-07  Jakub Jelinek  <jakub@redhat.com>
2103         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
2104         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2105         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
2106         Likewise.
2107         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2108         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2109         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2110         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2111         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2112         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2114 2013-03-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2116         * scripts/extract_symvers.pl: Omit symbols bound to base
2117         versions.
2118         * scripts/extract_symvers.in: Likewise.
2119         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2120         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2121         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2122         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2123         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2125 2013-03-04  Ulrich Drepper  <drepper@gmail.com>
2127         * include/ext/random (__gnu_cxx::von_mises_distribution<>):
2128         Optimize generation function by pulling computation of __r into the
2129         constructor for param_type.  Also compare _M_mu in operator==.
2130         Fix comment.
2132 2013-03-02  Ulrich Drepper  <drepper@gmail.com>
2134         Add triangular and von Mises distributions.
2135         * include/ext/random: Include <ext/cmath>.
2136         Add __gnu_cxx::triangular_distribution<> and
2137         __gnu_cxx::von_mises_distribution<> classes.
2138         * include/ext/random.tcc: Add out-of-line functions for
2139         __gnu_cxx::triangular_distribution<> and
2140         __gnu_cxx::von_mises_distribution<>.
2141         * testsuite/ext/triangular_distribution/cons/default.cc: New file.
2142         * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
2143         * testsuite/ext/triangular_distribution/operators/serialize.cc:
2144         New file.
2145         * testsuite/ext/triangular_distribution/operators/equal.cc:
2146         New file.
2147         * testsuite/ext/triangular_distribution/operators/inequal.cc:
2148         New file.
2149         * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
2150         New file.
2151         * testsuite/ext/triangular_distribution/requirements/
2152         explicit_instantiation/1.cc: New file.
2153         * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
2154         * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
2155         * testsuite/ext/von_mises_distribution/operators/serialize.cc:
2156         New file.
2157         * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
2158         * testsuite/ext/von_mises_distribution/operators/inequal.cc:
2159         New file.
2160         * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
2161         New file.
2162         * testsuite/ext/von_mises_distribution/requirements/
2163         explicit_instantiation/1.cc: New file.
2165         Add math constants.
2166         * include/Makefile.am (ext_headers): Add cmath.
2167         * include/Makefile.in: Regenerated.
2168         * include/ext/cmath: New file.
2170 2013-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2172         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2173         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2174         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2175         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2176         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2178 2013-02-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
2180         PR libstdc++/56012
2181         * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
2182         * testsuite/29_atomics/atomic/operators/56012.cc: New.
2184         PR libstdc++/56011
2185         * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
2186         missing overload.
2187         * testsuite/29_atomics/atomic/operators/56011.cc: New.
2189 2013-02-25  Jason Merrill  <jason@redhat.com>
2191         * configure.ac: Check for __cxa_thread_atexit_impl.
2192         * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
2193         to it if available.
2194         * config.h.in, configure: Regenerate.
2196 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
2198         * include/std/streambuf (basic_streambuf): Use injected class name
2199         instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
2200         group.
2202 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
2204         * doc/html/faq.html: Fix spelling.
2205         * doc/xml/faq.xml: Likewise.
2206         * include/bits/basic_ios.h: Likewise.
2207         * include/bits/regex.h: Likewise.
2208         * include/std/istream: Likewise.
2209         * include/std/streambuf: Likewise.
2211 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
2213         * testsuite/23_containers/unordered_set/55043.cc: Add missing
2214         namespace qualification.
2215         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2217 2013-02-19  Benjamin Kosnik  <bkoz@redhat.com>
2219         * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
2220         _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
2221         AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
2222         * include/bits/stl_pair.h: Add to utilities group.
2223         * include/std/tuple: Same.
2224         * include/std/typeindex: Same.
2226         * include/bits/stringfwd.h: Fix markup.
2227         * include/std/limits: Same.
2228         * include/std/type_traits: Same.
2229         * include/tr1/memory: Same.
2230         * include/tr1/regex: Same.
2231         * scripts/run_doxygen: Comment.
2232         * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
2234 2013-02-14  Jason Merrill  <jason@redhat.com>
2236         * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
2237         test if unsupported.
2239 2013-02-13  Marc Glisse  <marc.glisse@inria.fr>
2241         PR libstdc++/56111
2242         * include/std/complex (complex): Undefine.
2243         * include/c_compatibility/complex.h (complex): Only undefine if
2244         <complex> has been included.
2245         * testsuite/26_numerics/complex/56111.cc: New testcase.
2247 2013-02-13  François Dumont  <fdumont@gcc.gnu.org>
2249         * include/bits/hashtable_policy.h (_Hash_code_base): Restore
2250         default constructor protected.
2251         * include/bits/hashtable.h: static assert that _Hash_code_base has
2252         a default constructor available through inheritance.
2254 2013-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
2256         * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
2257         C++11 mode.
2259 2013-02-12  Julian Brown  <julian@codesourcery.com>
2261         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
2262         Don't expect dots after abbreviated weekday names for ru_RU for
2263         glibc versions >= 2.17.
2264         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
2265         Likewise.
2267 2013-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
2269         * include/bits/random.tcc (__transform): Remove.
2270         (__normalize): Add.
2271         (discrete_distribution<>::param_type::_M_initialize): Adjust.
2272         (piecewise_constant_distribution<>::param_type::_M_initialize):
2273         Likewise.
2274         (piecewise_linear_distribution<>::param_type::_M_initialize):
2275         Likewise.
2277 2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
2279         * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
2280         Use -fimplicit-templates.
2281         * src/c++11/Makefile.in: Regenerate.
2282         * src/c++11/hashtable_c++0x.cc: Remove instantiation for
2283         std::lower_bound template.
2285 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
2287         * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
2288         * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
2289         in C++11 mode and if available in the underlying C library.
2290         * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
2291         -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
2292         _GLIBCXX_HAVE_QUICK_EXIT.
2294 2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
2296         * doc/html/*: Regenerate.
2298 2013-02-11  Jason Merrill  <jason@redhat.com>
2300         * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
2301         (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
2302         * config.h.in, configure: Regenerate.
2303         * include/c_std/cstdlib: Add atexit and at_quick_exit.
2304         * include/c_global/cstdlib: Add atexit and at_quick_exit.
2305         * testsuite/18_support/quick_exit/quick_exit.cc: New.
2307 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
2309         PR libstdc++/56282
2310         Revert:
2311         2013-02-06  Edward Smith-Rowland  <3dw4rd@verizon.net>
2313         PR libstdc++/56193
2314         * include/bits/basic_ios.h: Replace operator void*() const
2315         with explicit operator bool() const in C++11 and greater.
2316         * testsuite/27_io/basic_ios/pr56193.cc: New file.
2318 2013-02-10  François Dumont  <fdumont@gcc.gnu.org>
2319             Jonathan Wakely  <jwakely.gcc@gmail.com>
2321         * doc/xml/manual/containers.xml: Add section on unordered containers.
2322         * doc/xml/manual/using.xml: Fix incomplete sentence.
2324 2013-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
2326         PR libstdc++/56267
2327         * include/bits/hashtable.h (__cache_default): Check if hash function
2328         is copy assignable.
2329         * testsuite/23_containers/unordered_set/56267.cc: New.
2330         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2331         dg-error line number.
2332         * testsuite/23_containers/unordered_set/
2333         not_default_constructible_hash_neg.cc: Likewise.
2335         PR libstdc++/56278
2336         * include/bits/hashtable_policy.h (_Hash_code_base): Make default
2337         constructor public.
2338         * testsuite/23_containers/unordered_set/56278.cc: New.
2340 2013-02-09  François Dumont  <fdumont@gcc.gnu.org>
2342         * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
2343         simplification.
2345 2013-02-08  Edward Smith-Rowland  <3dw4rd@verizon.net>
2347         PR libstdc++/56216
2348         * include/tr1/special_function_util.h: Remove spurious const
2349         from numeric arguments.
2350         * include/tr1/riemann_zeta.tcc: Likewise.
2351         * include/tr1/exp_integral.tcc: Likewise.
2352         * include/tr1/bessel_function.tcc: Likewise.
2353         * include/tr1/hypergeometric.tcc: Likewise.
2354         * include/tr1/modified_bessel_func.tcc: Likewise.
2355         * include/tr1/poly_laguerre.tcc: Likewise.
2356         * include/tr1/gamma.tcc: Likewise.
2357         * include/tr1/legendre_function.tcc: Likewise.
2358         * include/tr1/poly_hermite.tcc: Likewise.
2359         * include/tr1/ell_integral.tcc: Likewise.
2360         * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
2361         If argument is zero return function value.
2362         * testsuite/tr1/5_numerical_facilities/special_functions/
2363         08_cyl_bessel_i/pr56216.cc: New.
2365 2013-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
2367         * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
2369 2013-02-06  Edward Smith-Rowland  <3dw4rd@verizon.net>
2371         PR libstdc++/56193
2372         * include/bits/basic_ios.h: Replace operator void*() const
2373         with explicit operator bool() const in C++11 and greater.
2374         * testsuite/27_io/basic_ios/pr56193.cc: New file.
2376 2013-02-04  Dodji Seketeli  <dodji@redhat.com>
2378         Add missing explicit instantiation for std::lower_bound template
2379         * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
2380         missing instantiation for std::lower_bound template.
2382 2013-02-04  François Dumont  <fdumont@gcc.gnu.org>
2384         * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
2385         * include/bits/basic_string.h: Specialize previous to mark
2386         std::hash for string types as slow.
2387         * include/bits/hashtable.h (__cache_default): Replace is_integral
2388         with __is_fast_hash.
2389         * src/c++11/hash_c++0x.cc: Add type_traits include.
2390         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2391         Adapt dg-error line number.
2392         * testsuite/23_containers/unordered_set/
2393         not_default_constructible_hash_neg.cc: Likewise.
2395 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
2396             Paolo Carlini  <paolo.carlini@oracle.com>
2398         PR libstdc++/56202 (again)
2399         * include/bits/random.tcc (binomial_distribution<>::
2400         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
2401         in previous commit.
2403         * include/bits/random.h: Fix comment typo.
2405 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
2406             Paolo Carlini  <paolo.carlini@oracle.com>
2408         PR libstdc++/56202
2409         * include/bits/random.tcc (binomial_distribution<>::
2410         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
2411         division by zero.
2413 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
2415         Update copyright years.
2416         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
2417         testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
2418         testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
2419         testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
2420         testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
2421         testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
2422         testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
2423         testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
2424         testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
2425         testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
2426         testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
2427         testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
2428         testsuite/29_atomics/atomic/cons/assign_neg.cc,
2429         testsuite/29_atomics/atomic/cons/copy_neg.cc,
2430         testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
2431         testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
2432         testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
2433         testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
2434         testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2435         Update lines in dg error matches.
2437 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
2439         * config/os/mingw32/ctype_inline.h: Fix copyright typo.
2441 2013-02-01  François Dumont  <fdumont@gcc.gnu.org>
2443         * include/bits/hashtable_policy.h
2444         (_Prime_rehash_policy::_M_next_bkt)
2445         (_Prime_rehash_policy::_M_need_rehash): Move definition...
2446         * src/c++11/hashtable_c++0x.cc: ... here.
2447         * src/shared/hashtable-aux.cc: Remove c++config.h include.
2448         * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
2449         symbols.
2451 2013-01-29  Jason Merrill  <jason@redhat.com>
2453         PR libstdc++/54314
2454         * config/abi/pre/gnu.ver: Don't export construction vtables.
2455         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2457 2013-01-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2459         PR libstdc++/56112
2460         * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
2461         to construct value_type explicitly before trying to extract the key.
2462         * testsuite/23_containers/unordered_map/cons/56112.cc: New.
2464 2013-01-28  François Dumont  <fdumont@gcc.gnu.org>
2466         * include/bits/hashtable_policy.h (_Local_iterator_base): Use
2467         _Hashtable_ebo_helper to embed functors into the local_iterator
2468         when necessary. Pass information about functors involved in hash
2469         code by copy.
2470         * include/bits/hashtable.h (__cache_default): Do not cache for
2471         builtin integral types unless the hash functor is not noexcept
2472         qualified or is not default constructible. Adapt static assertions
2473         and local iterator instantiations.
2474         * include/debug/unordered_set
2475         (std::__debug::unordered_set<>::erase): Detect local iterators to
2476         invalidate using contained node rather than generating a dummy
2477         local_iterator instance.
2478         (std::__debug::unordered_multiset<>::erase): Likewise.
2479         * include/debug/unordered_map
2480         (std::__debug::unordered_map<>::erase): Likewise.
2481         (std::__debug::unordered_multimap<>::erase): Likewise.
2482         * testsuite/performance/23_containers/insert_erase/41975.cc: Test
2483         std::tr1 and std versions of unordered_set regardless of any
2484         macro. Add test on default cache behavior.
2485         * testsuite/performance/23_containers/insert/54075.cc: Likewise.
2486         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2487         Adapt line number.
2488         * testsuite/23_containers/unordered_set/
2489         not_default_constructible_hash_neg.cc: New.
2490         * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
2492 2013-01-24  Paolo Carlini  <paolo.carlini@oracle.com>
2494         PR libstdc++/56085
2495         * include/std/complex (pow(const complex<>&, int)): Avoid __n
2496         signed overflow.
2498 2013-01-22  Jakub Jelinek  <jakub@redhat.com>
2500         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2501         Tightten scan-assembler-times regexps, add dg-additional-options for
2502         ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
2503         dg-options.
2505 2013-01-12  Andi Kleen  <ak@linux.intel.com>
2506             Jonathan Wakely  <jwakely.gcc@gmail.com>
2508         PR libstdc++/55233
2509         * include/bits/atomic_base.h (__memory_order_modifier): Add
2510         __memory_order_mask, __memory_order_modifier_mask,
2511         __memory_order_hle_acquire, __memory_order_hle_release.
2512         (operator|,operator&): Add.
2513         (__cmpexch_failure_order):  Rename to __cmpexch_failure_order2.
2514         (__cmpexch_failure_order): Add.
2515         (clear, store, load, compare_exchange_weak, compare_exchange_strong):
2516         Handle flags.
2517         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2518         Add.
2520 2013-01-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
2522         PR libstdc++/55861
2523         * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
2524         Fix return type.
2525         (__basic_future::_M_get_result()): Const qualify.
2526         (shared_future::get()): Likewise.
2527         * testsuite/30_threads/shared_future/members/get.cc: Use const
2528         objects.
2530 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2532         PR libstdc++/55043 (again)
2533         * include/bits/alloc_traits.h (allocator_traits::construct): Disable
2534         unless construction would be well-formed.
2535         (__allow_copy_cons, __check_copy_constructible): Define.
2536         * include/bits/unordered_map.h (__check_copy_constructible): Use as
2537         base class so copy constructor will be deleted if appropriate.
2538         (is_copy_constructible): Remove specialization.
2539         * include/bits/unordered_set.h: Likewise.
2540         * include/debug/unordered_map.h: Undo previous commit. Default copy
2541         and move constructors.
2542         * include/debug/unordered_set.h: Likewise.
2543         * include/profile/unordered_map.h: Undo previous commit.
2544         * include/profile/unordered_set.h: Likewise.
2545         * testsuite/23_containers/unordered_map/55043.cc: Fix test.
2546         * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
2547         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2548         * testsuite/23_containers/unordered_set/55043.cc: Likewise.
2549         * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
2550         cannot support incomplete types.
2551         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
2552         Likewise.
2554 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2556         PR libstdc++/55043
2557         * include/std/unordered_map: Include alloc_traits.h
2558         * include/std/unordered_set: Likewise.
2559         * include/bits/alloc_traits.h: Define __is_copy_insertable.
2560         * include/bits/unordered_map.h: Use it.
2561         * include/bits/unordered_set.h: Likewise.
2562         * include/debug/unordered_map.h: Likewise.
2563         * include/debug/unordered_set.h: Likewise.
2564         * include/profile/unordered_map.h: Likewise.
2565         * include/profile/unordered_set.h: Likewise.
2566         * include/bits/hashtable.h: Fix comment typos.
2567         * testsuite/23_containers/unordered_map/55043.cc: New.
2568         * testsuite/23_containers/unordered_multimap/55043.cc: New.
2569         * testsuite/23_containers/unordered_multiset/55043.cc: New.
2570         * testsuite/23_containers/unordered_set/55043.cc: New.
2572 2013-01-03  Janis Johnson  <janisjo@codesourcery.com>
2574         * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
2575         gdb command.
2577 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2579         * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
2581 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2583         PR libstdc++/55908
2584         * include/std/functional (_Mem_fn::operator()): Fix constraints to
2585         avoid ambiguity.
2586         * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
2587         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
2589 2013-01-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2591         PR libstdc++/55594
2592         * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
2593         Solaris targets.
2594         * configure: Regenerate.
2596 2013-01-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
2598         PR libstdc++/55847
2599         * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
2600         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
2601         string.
2603         PR libstdc++/55728
2604         * include/std/functional (bad_function_call::what()): Declare.
2605         * src/c++11/functional.cc (bad_function_call::what()): Define.
2606         * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
2607         * testsuite/20_util/bad_function_call/what.cc: New.
2609 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2611         * include/bits/unordered_map.h: Fix typo in comments.
2612         * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
2613         counts for unordered associative containers.
2615 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2617         * doc/xml/manual/abi.xml: Update library and symbol versions.
2619 2013-01-06  Richard Sandiford  <rdsandiford@googlemail.com>
2621         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
2622         in copyright years.
2623         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
2626 Copyright (C) 2013 Free Software Foundation, Inc.
2628 Copying and distribution of this file, with or without modification,
2629 are permitted in any medium without royalty provided the copyright
2630 notice and this notice are preserved.