2013-07-27 Janus Weil <janus@gcc.gnu.org>
[official-gcc.git] / libstdc++-v3 / ChangeLog
blobac2cb45ba07dc15b21c292d1ddea84c4ea7440e9
1 2013-07-25  Paolo Carlini  <paolo.carlini@oracle.com>
3         * include/std/complex (pow(const complex<>&, int)): Enable in
4         C++11 mode too.
5         * testsuite/26_numerics/complex/dr844.cc: Adjust.
6         * doc/xml/manual/intro.xml: Update.
8 2013-07-25  Tim Shen  <timshen91@gmail.com>
10         Add documents and comments.
11         * include/bits/regex.h: Documents and comments.
12         * include/bits/regex_grep_matcher.h: Likewise.
13         * include/bits/regex_grep_matcher.tcc: Likewise.
14         * testsuite/28_regex/iterators/regex_iterator/char/
15         string_position_01.cc: New.
17 2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
19         PR libstdc++/57976
20         * doc/xml/manual/status_cxx2011.xml: Note missing time_get::get and
21         time_get::do_get.
23 2013-07-24  Paolo Carlini  <paolo.carlini@oracle.com>
25         * include/bits/random.h (random_device): Avoid using the FILE type.
26         * include/std/random: Do not include <cstdio>.
27         * src/c++11/random.cc: ... include it here.
28         (random_device::_M_init, random_device::_M_fini,
29         random_device::_M_getval): Cast back and forth void* and FILE*.
31 2013-07-24  Tim Shen  <timshen91@gmail.com>
33         Reimplment matcher using Depth-first search(backtracking).
34         PR libstdc++/53622
35         PR libstdc++/57173
36         * include/bits/regex.h: regex_match() and regex_search().
37         * include/bits/regex_cursor.h: Fix _M_set_pos().
38         * include/bits/regex_grep_matcher.h: add _M_dfs_match().
39         * include/bits/regex_grep_matcher.tcc: Implement it.
40         * testsuite/28_regex/algorithms/regex_match/extended/string_group_01.cc:
41         New.
42         * testsuite/28_regex/algorithms/regex_match/extended/string_group_02.cc:
43         New.
44         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc:
45         Remove xfail.
47 2013-07-23  Tim Shen  <timshen91@gmail.com>
49         Implement regex_iterator and regex_token_iterator.
50         * include/bits/regex.h: regex_iterator and regex_token_iterator.
51         * testsuite/28_regex/iterators/regex_iterator/char/string_01.cc:
52         New.
53         * testsuite/28_regex/iterators/regex_iterator/wchar_t/string_01.cc:
54         New.
55         * testsuite/28_regex/iterators/regex_token_iterator/char/string_01.cc:
56         New.
57         * testsuite/28_regex/iterators/regex_token_iterator/wchar_t/
58         string_01.cc: New.
60 2013-07-23  Paolo Carlini  <paolo.carlini@oracle.com>
62         * include/std/random: Add back <cstdio> include.
63         * src/c++11/random.cc: Don't include <cstdio> here.
65 2013-07-22  Jason Merrill  <jason@redhat.com>
67         PR libstdc++/57914
68         * libsupc++/atexit_thread.cc (run): Delete cleanup elts.
70 2013-07-22  Paolo Carlini  <paolo.carlini@oracle.com>
72         PR c++/57920
73         * src/c++11/random.cc (random_device::_M_getval): If possible, use
74         read instead of std::fread.
75         * include/std/random: Do not include <cstdio> unnecessarily.
77 2013-07-21  Tim Shen  <timshen91@gmail.com>
79         Partially implement regex_search.
80         * include/bits/regex.h: regex_search.
81         * include/bits/regex_grep_matcher.h: _M_search_from_first.
82         * include/bits/regex_grep_matcher.tcc: Implement it.
83         * testsuite/28_regex/algorithms/regex_search/basic/string_01.cc: New.
85 2013-07-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
87         PR libstdc++/54352
88         * include/std/condition_variable (condition_variable_any): Move into
89         inline namespace _V2 and replace mutex member with shared_ptr<mutex>.
90         * src/c++11/condition_variable.cc (condition_variable_any): Move
91         definitions to ...
92         * src/c++11/compatibility-condvar.cc (condition_variable_any): Here.
93         * src/Makefile.am: Add new source file.
94         * src/Makefile.in: Regenerate.
96 2013-07-09  Tim Shen  <timshen91@gmail.com>
98         Implement class regex_traits.
99         * include/bits/regex.h: Implement lookup_classname and
100         lookup_collatename; modify isctype; partially implement
101         transform_primary.
102         * testsuite/28_regex/traits/char/isctype.cc: Add more test cases.
103         * testsuite/28_regex/traits/char/lookup_classname.cc: Likewise.
104         * testsuite/28_regex/traits/char/lookup_collatename.cc: Likewise.
105         * testsuite/28_regex/traits/char/transform_primary.cc: Likewise.
106         * testsuite/28_regex/traits/wchar_t/isctype.cc: New.
107         * testsuite/28_regex/traits/wchar_t/lookup_classname.cc: New.
108         * testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: New.
109         * testsuite/28_regex/traits/wchar_t/transform_primary.cc: New.
111 2013-07-07  Ed Smith-Rowland  <3dw4rd@verizon.net>
113         * doc/xml/manual/status_cxx2014.xml: Add links for papers.
115 2013-07-05  François Dumont  <fdumont@gcc.gnu.org>
117         * include/bits/hashtable_policy.h (_ReuseOrAllocNode): Use forward
118         pattern.
119         (_MoveReuseOrAllocNode): Remove.
120         (_Insert_base): Take a functor defining how the node is generated.
121         * include/bits/hashtable.h: Adapt.
122         (operator=(initializer_list<value_type>)): Reuse node if any.
123         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
124         Adjust dg-error line number.
125         * testsuite/23_containers/unordered_set/
126         not_default_constructible_hash_neg.cc: Likewise.
128 2013-07-05  Paolo Carlini  <paolo.carlini@oracle.com>
130         * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
131         Tweak, avoid potential undefined behavior.
132         * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
133         Likewise.
134         * testsuite/23_containers/vector/bool/modifiers/insert/
135         const_iterator.cc: Likewise.
136         * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
137         Likewise.
139 2013-07-04  Veres Lajos  <vlajos@gmail.com>
140             Jonathan Wakely  <jwakely.gcc@gmail.com>
142         * config/locale/generic/codecvt_members.cc: Fix typo.
143         * configure.host: Likewise.
144         * doc/html/manual/policy_data_structures_design.html: Likewise.
145         * doc/xml/manual/policy_data_structures.xml: Likewise.
146         * include/bits/hashtable.h: Likewise.
147         * include/bits/random.h: Likewise.
148         * include/profile/impl/profiler_trace.h: Likewise.
149         * testsuite/23_containers/deque/cons/2.cc: Likewise.
150         * testsuite/23_containers/deque/debug/shrink_to_fit.cc: Likewise.
151         * testsuite/ext/pb_ds/example/basic_multimap.cc: Likewise.
152         * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
154 2013-07-04  Ray Chason  <chasonr@newsguy.com>
155             Paolo Carlini  <paolo.carlini@oracle.com>
157         PR libstdc++/57808
158         * include/bits/regex.h (regex_token_iterator<>::operator==,
159         regex_token_iterator<>::operator!=, regex_token_iterator<>::operator*,
160         regex_token_iterator<>::operator->): Declare const.
162 2013-07-01  Paolo Carlini  <paolo.carlini@oracle.com>
164         * include/bits/stl_list.h (list<>::insert(iterator,
165         size_type, const value_type&), list<>::insert(iterator,
166         initializer_list<>), list<>::insert(iterator, _InputIterator,
167         _InputIterator), list<>::splice(iterator, list&&),
168         list<>::splice(iterator, list&), list<>::splice(iterator, list&&,
169         iterator), list<>::splice(iterator, list&, iterator),
170         list<>::splice(iterator, list&&, iterator, iterator),
171         list<>::splice(iterator, list&, iterator, iterator)): Adjust C++11
172         signatures to take const_iterator(s).
173         * include/bits/list.tcc (list<>::insert(const_iterator, size_type,
174         const value_type&), list<>::insert(const_iterator, _InputIterator,
175         _InputIterator)): Define.
176         * include/ext/vstring.h (__versa_string<>::insert(iterator,
177         size_type, _CharT), __versa_string<>::insert(iterator,
178         _InputIterator, _InputIterator), __versa_string<>::insert(iterator,
179         std::initializer_list<>), __versa_string<>::replace(iterator,
180         iterator, _InputIterator, _InputIterator), __versa_string<>::
181         replace(iterator, iterator, std::initializer_list<>)): Adjust C++11
182         signatures to take const_iterator(s).
183         (__versa_string<>::_M_replace_dispatch): Take const_iterators.
184         * include/ext/vstring.tcc: Likewise.
185         * include/debug/list: Adjust.
186         * include/profile/list: Likewise.
187         * testsuite/23_containers/list/operations/splice/const_iterator.cc:
188         New.
189         * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
190         Extend.
191         * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
192         Likewise.
193         * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
194         Likewise.
195         * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
196         Likewise.
197         * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
198         Likewise.
200         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
201         Adjust dg-error line number.
202         * testsuite/23_containers/list/requirements/dr438/
203         constructor_1_neg.cc: Likewise.
204         * testsuite/23_containers/list/requirements/dr438/
205         constructor_2_neg.cc: Likewise.
206         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
207         Likewise.
209 2013-06-30  Paolo Carlini  <paolo.carlini@oracle.com>
211         * include/bits/stl_deque.h (deque<>::insert(iterator,
212         size_type, const value_type&), deque<>::insert(iterator,
213         initializer_list<>), deque<>::insert(iterator, _InputIterator,
214         _InputIterator)): Adjust C++11 signatures to take a const_iterator.
215         * include/bits/stl_vector.h: Likewise.
216         * include/bits/stl_bvector.h: Likewise.
217         * include/debug/deque: Adjust.
218         * include/debug/vector: Likewise.
219         * include/profile/deque: Likewise.
220         * include/profile/vector: Likewise.
221         * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
222         Extend.
223         * testsuite/23_containers/vector/bool/modifiers/insert/
224         const_iterator.cc: Likewise.
225         * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
226         Likewise.
228         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
229         Adjust dg-error line number.
230         * testsuite/23_containers/deque/requirements/dr438/
231         constructor_1_neg.cc: Likewise.
232         * testsuite/23_containers/deque/requirements/dr438/
233         constructor_2_neg.cc: Likewise.
234         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
235         Likewise.
236         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
237         Likewise.
238         * testsuite/23_containers/vector/requirements/dr438/
239         constructor_1_neg.cc: Likewise.
240         * testsuite/23_containers/vector/requirements/dr438/
241         constructor_2_neg.cc: Likewise.
242         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
243         Likewise.
245 2013-06-29  François Dumont  <fdumont@gcc.gnu.org>
247         * include/bits/hashtable_policy.h (_Insert_base): Consider hint in
248         insert methods.
249         * include/bits/hashtable.h: Likewise.
250         * testsuite/23_containers/unordered_multimap/insert/hint.cc: New.
251         * testsuite/performance/23_containers/insert/unordered_multiset_hint.cc:
252         New.
253         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
254         Adjust dg-error line number.
255         * testsuite/23_containers/unordered_set/
256         not_default_constructible_hash_neg.cc: Likewise.
257         * doc/xml/manual/containers.xml: Document hinting in unordered
258         containers.
260 2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
262         * testsuite/21_strings/basic_string/operations/*: Move inside
263         testsuite/21_strings/basic_string/operations/data/.
264         * testsuite/21_strings/basic_string/compare/*: Move inside
265         testsuite/21_strings/basic_string/operations/.
266         * testsuite/21_strings/basic_string/find/*: Likewise.
267         * testsuite/21_strings/basic_string/rfind/*: Likewise.
268         * testsuite/21_strings/basic_string/substr/*: Likewise.
270 2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
272         * testsuite/21_strings/basic_string/append/*: Move inside
273         testsuite/21_strings/basic_string/modifiers/.
274         * testsuite/21_strings/basic_string/assign/*: Likewise.
275         * testsuite/21_strings/basic_string/insert/*: Likewise.
276         * testsuite/21_strings/basic_string/replace/*: Likewise.
277         * testsuite/21_strings/basic_string/modifiers/pop_back/char/
278         pop_back.cc: Rename to 1.cc.
279         * testsuite/21_strings/basic_string/modifiers/pop_back/wchar_t/
280         pop_back.cc: Likewise.
281         * testsuite/ext/vstring/assign/*: Move inside
282         testsuite/ext/vstring/modifiers/.
284 2013-06-27  Paolo Carlini  <paolo.carlini@oracle.com>
286         * include/bits/stl_deque.h (deque<>::insert(iterator,
287         const value_type&), deque<>::insert(iterator, value_type&&),
288         deque<>::emplace(iterator, _Args&&...)): Adjust C++11 signatures to
289         take a const_iterator.
290         (deque<>::erase): Simplify.
291         * include/bits/stl_list.h: Likewise.
292         (_List_iterator<>::_M_const_cast): Add.
293         * include/bits/stl_vector.h: Likewise.
294         * include/bits/stl_bvector.h: Likewise.
295         (_Bit_iterator::_M_const_cast): Add.
296         * include/bits/deque.tcc: Adjust definitions.
297         * include/bits/list.tcc: Likewise.
298         * include/bits/vector.tcc: Likewise.
299         * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
300         Define trivial version in C++98 mode.
301         * include/ext/vstring.h (__versa_string<>::insert(iterator, _CharT),
302         __versa_string<>::replace(iterator, iterator, const __versa_string&),
303         __versa_string<>::replace(iterator, iterator, const _CharT*,
304         size_type), __versa_string<>::replace(iterator, iterator,
305         const _CharT*), __versa_string<>::replace(iterator, iterator,
306         size_type, _CharT)): Adjust C++11 signatures to take a pair of
307         const_iterators.
308         * include/debug/deque: Adjust.
309         * include/debug/list: Likewise.
310         * include/debug/vector: Likewise.
311         * include/profile/deque: Likewise.
312         * include/profile/list: Likewise.
313         * include/profile/vector: Likewise.
314         (vector<>::emplace): Add.
315         * testsuite/util/exception/safety.h: Update.
316         * testsuite/23_containers/deque/modifiers/emplace/const_iterator.cc:
317         New.
318         * testsuite/23_containers/deque/modifiers/insert/const_iterator.cc:
319         Likewise.
320         * testsuite/23_containers/list/modifiers/emplace/const_iterator.cc:
321         Likewise.
322         * testsuite/23_containers/list/modifiers/insert/const_iterator.cc:
323         Likewise.
324         * testsuite/23_containers/vector/bool/modifiers/insert/
325         const_iterator.cc: Likewise.
326         * testsuite/23_containers/vector/modifiers/emplace/const_iterator.cc:
327         Likewise.
328         * testsuite/23_containers/vector/modifiers/insert/const_iterator.cc:
329         Likewise.
330         * testsuite/ext/vstring/modifiers/insert/char/const_iterator.cc:
331         Likewise.
332         * testsuite/ext/vstring/modifiers/insert/wchar_t/const_iterator.cc:
333         Likewise.
334         * testsuite/ext/vstring/modifiers/replace/char/const_iterator.cc:
335         Likewise.
336         * testsuite/ext/vstring/modifiers/replace/wchar_t/const_iterator.cc:
337         Likewise.
339         * testsuite/ext/vstring/modifiers/char/54577.cc: Move to testsuite/
340         ext/vstring/modifiers/erase/char/.
341         * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Move to testsuite/
342         ext/vstring/modifiers/wchar_t/.
343         * testsuite/ext/vstring/modifiers/char/pop_back.cc: Move to testsuite/
344         ext/vstring/modifiers/pop_back/char/.
345         * testsuite/ext/vstring/modifiers/wchar_t/pop_back.cc: Move to
346         testsuite/ext/vstring/modifiers/pop_back/wchar_t/.
348         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
349         Adjust dg-error line number.
350         * testsuite/23_containers/deque/requirements/dr438/
351         constructor_1_neg.cc: Likewise.
352         * testsuite/23_containers/deque/requirements/dr438/
353         constructor_2_neg.cc: Likewise.
354         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
355         Likewise.
356         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
357         Likewise.
358         * testsuite/23_containers/list/requirements/dr438/
359         constructor_1_neg.cc: Likewise.
360         * testsuite/23_containers/list/requirements/dr438/
361         constructor_2_neg.cc: Likewise.
362         * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
363         Likewise.
364         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
365         Likewise.
366         * testsuite/23_containers/vector/requirements/dr438/
367         constructor_1_neg.cc: Likewise.
368         * testsuite/23_containers/vector/requirements/dr438/
369         constructor_2_neg.cc: Likewise.
370         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
371         Likewise.
373 2013-06-25  Ed Smith-Rowland  <3dw4rd@verizon.net>
375         Status page for C++2014 library features
376         * doc/xml/faq.xml: Add link to new C++14 status page.
377         * doc/xml/manual/intro.xml: Ditto.
378         * doc/xml/manual/status_cxx2014.xml: New.
380 2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
382         * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: Avoid
383         spurious fails with check-debug.
384         * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc:
385         Likewise.
386         * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: Likewise.
387         * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc:
388         Likewise.
390 2013-06-25  Paolo Carlini  <paolo.carlini@oracle.com>
392         PR libstdc++/57704
393         * include/bits/char_traits.h (char_traits<char>::lt): Implement
394         LWG 467.
395         * testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
397 2013-06-24  Bernd Edlinger  <bernd.edlinger@hotmail.de>
399         PR libstdc++/57691
400         * include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
401         declare per the letter of the C++ standard in terms of void.
402         * include/c_std/cstdlib: Likewise.
404 2013-06-22  Paolo Carlini  <paolo.carlini@oracle.com>
406         PR libstdc++/57674
407         * include/bits/random.h (binomial_distribution<>::_M_waiting):
408         Add double parameter.
409         * include/bits/random.tcc (binomial_distribution<>::operator()
410         (_UniformRandomNumberGenerator&, const param_type&)): Pass
411         __param._M_q to _M_waiting.
412         (_M_waiting): Adjust.
413         * testsuite/26_numerics/random/binomial_distribution/
414         operators/values.cc: Add tests.
416 2013-06-21  Paolo Carlini  <paolo.carlini@oracle.com>
418         PR libstdc++/57666
419         * include/std/valarray (valarray<>::operator=(const _Expr<>&)):
420         Implement correctly C++11 26.6.2.3/1.
421         * testsuite/26_numerics/valarray/dr630-3.C: New.
423 2013-06-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
425         PR libstdc++/57641
426         * include/std/mutex (timed_mutex, recursive_timed_mutex): Move common
427         functionality to new __timed_mutex_impl mixin. Overload try_lock_until
428         to handle conversion between different clocks. Replace constrained
429         __try_lock_for_impl overloads with conditional increment.
430         * include/std/shared_mutex (shared_mutex::_Mutex): Use the new mixin.
431         * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: New.
433 2013-06-17  Jonathan Wakely  <jwakely.gcc@gmail.com>
434             Chris Jefferson  <chris@bubblescope.net>
436         * include/bits/stl_algobase.h (equal): Make C++14 overloads from N3671
437         dispatch to traditional std::equal for random-access iterators.
438         (__equal2_aux, __equal2): Remove.
439         (__equal::equal): Remove unused overloads.
440         * include/bits/stl_algo.h (is_permutation): Fix typos.
442 2013-06-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
444         * include/std/shared_mutex (shared_lock::operator=): Add missing
445         return statement.
447 2013-06-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
449         PR libstdc++/57263
450         * include/bits/forward_list.h (_Fwd_list_base): Convert to/from
451         allocator's pointer type.
452         * include/bits/hashtable.h (_Hashtable): Likewise.
453         * testsuite/util/testsuite_allocator.h (CustomPointerAlloc): Add.
454         * testsuite/23_containers/forward_list/allocator/ext_ptr.cc: New.
455         * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: New.
456         * testsuite/23_containers/vector/allocator/ext_ptr.cc: New.
458 2013-06-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
460         * include/std/shared_mutex: Implement N3659.
461         * include/bits/c++14_warning.h: New.
462         * include/Makefile.am: Add new headers.
463         * include/Makefile.in: Regenerate.
464         * testsuite/30_threads/shared_lock/cons/1.cc: New.
465         * testsuite/30_threads/shared_lock/locking/2.cc: New.
466         * testsuite/30_threads/shared_lock/cons/2.cc: New.
467         * testsuite/30_threads/shared_lock/locking/3.cc: New.
468         * testsuite/30_threads/shared_lock/cons/3.cc: New.
469         * testsuite/30_threads/shared_lock/locking/4.cc: New.
470         * testsuite/30_threads/shared_lock/cons/4.cc: New.
471         * testsuite/30_threads/shared_lock/modifiers/1.cc: New.
472         * testsuite/30_threads/shared_lock/cons/5.cc: New.
473         * testsuite/30_threads/shared_lock/modifiers/2.cc: New.
474         * testsuite/30_threads/shared_lock/cons/6.cc: New.
475         * testsuite/30_threads/shared_lock/requirements/
476         explicit_instantiation.cc: New.
477         * testsuite/30_threads/shared_lock/locking/1.cc: New.
478         * testsuite/30_threads/shared_lock/requirements/typedefs.cc: New.
479         * testsuite/30_threads/shared_mutex/cons/1.cc: New.
480         * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: New.
481         * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: New.
482         * testsuite/30_threads/shared_mutex/requirements/
483         standard_layout.cc: New.
484         * testsuite/30_threads/shared_mutex/try_lock/1.cc: New.
485         * testsuite/30_threads/shared_mutex/try_lock/2.cc: New.
487 2013-06-15  Paolo Carlini  <paolo.carlini@oracle.com>
489         PR libstdc++/57619
490         * include/bits/unordered_map.h (unordered_map<>::insert,
491         unordered_multimap<>::insert): Use std::forward, not std::move.
492         * testsuite/23_containers/unordered_map/insert/57619.C: New.
493         * testsuite/23_containers/unordered_multimap/insert/57619.C: Likewise.
495 2013-06-14  Alan Modra  <amodra@gmail.com>
497         * configure.host (abi_baseline_pair): Match powerpc64*.
499 2013-06-13  Daniel Krugler  <daniel.kruegler@gmail.com>
501         * include/std/type_traits (is_function): Support ref-qualified
502         functions.
503         (is_copy_constructible, is_move_constructible, is_copy_assignable,
504         is_move_assignable, is_nothrow_copy_constructible,
505         is_nothrow_move_constructible, is_nothrow_copy_assignable,
506         is_nothrow_move_assignable): Implement LWG 2196.
507         (add_lvalue_reference, add_rvalue_reference, add_pointer): Implement
508         LWG 2101.
509         (__strip_reference_wrapper<<const reference_wrapper<_Tp>>): Remove,
510         unused.
511         * testsuite/20_util/add_lvalue_reference/value.cc: Extend.
512         * testsuite/20_util/add_rvalue_reference/value.cc: Likewise.
513         * testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
514         * testsuite/20_util/is_assignable/value.cc: Likewise.
515         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
516         * testsuite/20_util/is_copy_assignable/value.cc: Likewise.
517         * testsuite/20_util/is_copy_constructible/value.cc: Likewise.
518         * testsuite/20_util/is_function/value.cc: Likewise.
519         * testsuite/20_util/is_move_assignable/value.cc: Likewise.
520         * testsuite/20_util/is_move_constructible/value.cc: Likewise.
521         * testsuite/20_util/is_nothrow_copy_assignable/value.cc: Likewise.
522         * testsuite/20_util/is_nothrow_copy_constructible/value.cc: Likewise.
523         * testsuite/20_util/is_nothrow_move_assignable/value.cc: Likewise.
524         * testsuite/20_util/is_nothrow_move_constructible/value.cc: Likewise.
526         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
527         line number.
528         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
529         Likewise.
530         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
531         Likewise.
533 2013-06-13  Paolo Carlini  <paolo.carlini@oracle.com>
535         * include/tr1/modified_bessel_func.tcc (__gnu_cxx::__airy_ai(),
536         __gnu_cxx::__airy_bi()): Remove.
537         * testsuite/tr1/5_numerical_facilities/special_functions/
538         10_cyl_bessel_k/airy.cc: Fix.
540 2013-06-12  Ed Smith-Rowland  <3dw4rd@verizon.net>
542         PR libstdc++/56430
543         * include/tr1/modified_bessel_func.tcc (__airy): Remove return
544         from void function.
545         (__gnu_cxx::__airy_ai(), __gnu_cxx::__airy_bi()): New functions.
546         * testsuite/tr1/5_numerical_facilities/special_functions/
547         10_cyl_bessel_k/airy.cc: New.
549 2013-06-11  Ed Smith-Rowland  <3dw4rd@verizon.net>
551         Fix library literals error involving namespace __detail.
552         * include/std/chrono: Rename __detail to __select_type. Reformat.
553         * include/bits/basic_string.h: Reformat.
554         * testsuite/20_util/duration/literals/ns_detail.cc: New.
556 2013-06-11  Paolo Carlini  <paolo.carlini@oracle.com>
558         PR libstdc++/56019
559         * include/c_global/cstddef (max_align_t): Add to namespace std.
560         * include/c_std/cstddef: Likewise.
561         * testsuite/18_support/max_align_t/requirements/1.cc: New.
562         * testsuite/18_support/max_align_t/requirements/2.cc: Likewise.
564 2013-06-10  Benjamin Kosnik  <bkoz@redhat.com>
566         * include/bits/c++config (_GLIBCXX_ABI_TAG_CXX11): Add.
567         * include/bits/stl_map.h (erase): Use abi_tag when C++11.
568         * include/bits/stl_multimap.h: Same.
569         * include/bits/stl_multiset.h: Same.
570         * include/bits/stl_set.h: Same.
571         * include/bits/stl_tree.h: Same.
572         * include/std/complex (real, imag): Use macro for abi_tag.
574         * testsuite/lib/libstdc++.exp: Disable inlinling with -fno-inline.
575         * testsuite/util/testsuite_containers.h (erase_external): New
576         declarations.
577         (erase_external_iterators): Same.
578         (linkage_check_cxx98_cxx11_erase): Same.
579         (linkage_check_cxx98_cxx11_erase_iterators): Same.
580         * testsuite/util/testsuite_shared.cc: Define.
581         * testsuite/23_containers/map/modifiers/erase/abi_tag.cc: New.
582         * testsuite/23_containers/map/modifiers/erase/
583         dr130-linkage-check.cc: New.
584         * testsuite/23_containers/multimap/modifiers/erase/abi_tag.cc: New.
585         * testsuite/23_containers/multimap/modifiers/erase/
586         dr130-linkage-check.cc: New.
587         * testsuite/23_containers/multiset/modifiers/erase/abi_tag.cc: New.
588         * testsuite/23_containers/multiset/modifiers/erase/
589         dr130-linkage-check.cc: New.
590         * testsuite/23_containers/set/modifiers/erase/abi_tag.cc: New.
591         * testsuite/23_containers/set/modifiers/erase/dr130-linkage-check.cc:
592         New.
593         * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line number.
595         * testsuite/23_containers/map/dr130.cc: Move...
596         * testsuite/23_containers/map/modifiers/dr130.cc: ...here.
597         * testsuite/23_containers/multimap/dr130.cc: Move ...
598         * testsuite/23_containers/multimap/modifiers/dr130.cc: ...here.
599         * testsuite/23_containers/multiset/dr130.cc: Move...
600         * testsuite/23_containers/multiset/modifiers/dr130.cc: ...here.
601         * testsuite/23_containers/set/dr130.cc: Move...
602         * testsuite/23_containers/set/modifiers/dr130.cc: ...here.
604 2013-06-10  Thomas Schwinge  <thomas@codesourcery.com>
606         * testsuite/17_intro/headers/c++1998/49745.cc: Extend current
607         handling of Linux-based x86 systems to cover all GNU systems.
608         * testsuite/18_support/bad_exception/23591_thread-1.c: Likewise.
609         * testsuite/18_support/pthread_guard.cc: Likewise.
610         * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
611         Likewise.
612         * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc:
613         Likewise.
614         * testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
615         * testsuite/21_strings/basic_string/pthread4.cc: Likewise.
616         * testsuite/22_locale/ctype/is/char/2.cc: Likewise.
617         * testsuite/22_locale/ctype/is/wchar_t/2.cc: Likewise.
618         * testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
619         * testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
620         * testsuite/23_containers/list/pthread1.cc: Likewise.
621         * testsuite/23_containers/list/pthread5.cc: Likewise.
622         * testsuite/23_containers/map/pthread6.cc: Likewise.
623         * testsuite/23_containers/vector/debug/multithreaded_swap.cc:
624         Likewise.
625         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
626         Likewise.
627         * testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
628         * testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
629         * testsuite/30_threads/async/42819.cc: Likewise.
630         * testsuite/30_threads/async/49668.cc: Likewise.
631         * testsuite/30_threads/async/54297.cc: Likewise.
632         * testsuite/30_threads/async/any.cc: Likewise.
633         * testsuite/30_threads/async/async.cc: Likewise.
634         * testsuite/30_threads/async/launch.cc: Likewise.
635         * testsuite/30_threads/async/sync.cc: Likewise.
636         * testsuite/30_threads/call_once/39909.cc: Likewise.
637         * testsuite/30_threads/call_once/49668.cc: Likewise.
638         * testsuite/30_threads/call_once/call_once1.cc: Likewise.
639         * testsuite/30_threads/condition_variable/54185.cc: Likewise.
640         * testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
641         * testsuite/30_threads/condition_variable/members/1.cc: Likewise.
642         * testsuite/30_threads/condition_variable/members/2.cc: Likewise.
643         * testsuite/30_threads/condition_variable/members/53841.cc:
644         Likewise.
645         * testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
646         Likewise.
647         * testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
648         * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
649         * testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
650         * testsuite/30_threads/condition_variable_any/members/1.cc:
651         Likewise.
652         * testsuite/30_threads/condition_variable_any/members/2.cc:
653         Likewise.
654         * testsuite/30_threads/future/cons/move.cc: Likewise.
655         * testsuite/30_threads/future/members/45133.cc: Likewise.
656         * testsuite/30_threads/future/members/get.cc: Likewise.
657         * testsuite/30_threads/future/members/get2.cc: Likewise.
658         * testsuite/30_threads/future/members/share.cc: Likewise.
659         * testsuite/30_threads/future/members/valid.cc: Likewise.
660         * testsuite/30_threads/future/members/wait.cc: Likewise.
661         * testsuite/30_threads/future/members/wait_for.cc: Likewise.
662         * testsuite/30_threads/future/members/wait_until.cc: Likewise.
663         * testsuite/30_threads/lock/1.cc: Likewise.
664         * testsuite/30_threads/lock/2.cc: Likewise.
665         * testsuite/30_threads/lock/3.cc: Likewise.
666         * testsuite/30_threads/lock/4.cc: Likewise.
667         * testsuite/30_threads/mutex/cons/1.cc: Likewise.
668         * testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
669         * testsuite/30_threads/mutex/lock/1.cc: Likewise.
670         * testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
671         * testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
672         * testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
673         * testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
674         * testsuite/30_threads/mutex/unlock/1.cc: Likewise.
675         * testsuite/30_threads/packaged_task/49668.cc: Likewise.
676         * testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
677         * testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
678         * testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
679         * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
680         * testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
681         * testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
682         * testsuite/30_threads/packaged_task/cons/move_assign.cc:
683         Likewise.
684         * testsuite/30_threads/packaged_task/members/get_future.cc:
685         Likewise.
686         * testsuite/30_threads/packaged_task/members/get_future2.cc:
687         Likewise.
688         * testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
689         * testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
690         * testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
691         * testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
692         * testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
693         * testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
694         * testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
695         * testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
696         * testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
697         * testsuite/30_threads/promise/cons/1.cc: Likewise.
698         * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
699         * testsuite/30_threads/promise/cons/move.cc: Likewise.
700         * testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
701         * testsuite/30_threads/promise/members/get_future.cc: Likewise.
702         * testsuite/30_threads/promise/members/get_future2.cc: Likewise.
703         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
704         * testsuite/30_threads/promise/members/set_exception2.cc:
705         Likewise.
706         * testsuite/30_threads/promise/members/set_value.cc: Likewise.
707         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
708         * testsuite/30_threads/promise/members/set_value3.cc: Likewise.
709         * testsuite/30_threads/promise/members/swap.cc: Likewise.
710         * testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
711         * testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
712         Likewise.
713         * testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
714         * testsuite/30_threads/recursive_mutex/native_handle/1.cc:
715         Likewise.
716         * testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
717         Likewise.
718         * testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
719         * testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
720         * testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
721         * testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
722         * testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
723         Likewise.
724         * testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
725         * testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
726         * testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
727         Likewise.
728         * testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
729         Likewise.
730         * testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc:
731         Likewise.
732         * testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc:
733         Likewise.
734         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
735         Likewise.
736         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
737         Likewise.
738         * testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
739         Likewise.
740         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
741         Likewise.
742         * testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
743         Likewise.
744         * testsuite/30_threads/recursive_timed_mutex/unlock/1.cc:
745         Likewise.
746         * testsuite/30_threads/shared_future/cons/move.cc: Likewise.
747         * testsuite/30_threads/shared_future/members/45133.cc: Likewise.
748         * testsuite/30_threads/shared_future/members/get.cc: Likewise.
749         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
750         * testsuite/30_threads/shared_future/members/valid.cc: Likewise.
751         * testsuite/30_threads/shared_future/members/wait.cc: Likewise.
752         * testsuite/30_threads/shared_future/members/wait_for.cc:
753         Likewise.
754         * testsuite/30_threads/shared_future/members/wait_until.cc:
755         Likewise.
756         * testsuite/30_threads/this_thread/1.cc: Likewise.
757         * testsuite/30_threads/this_thread/2.cc: Likewise.
758         * testsuite/30_threads/this_thread/3.cc: Likewise.
759         * testsuite/30_threads/this_thread/4.cc: Likewise.
760         * testsuite/30_threads/thread/cons/1.cc: Likewise.
761         * testsuite/30_threads/thread/cons/2.cc: Likewise.
762         * testsuite/30_threads/thread/cons/3.cc: Likewise.
763         * testsuite/30_threads/thread/cons/4.cc: Likewise.
764         * testsuite/30_threads/thread/cons/49668.cc: Likewise.
765         * testsuite/30_threads/thread/cons/5.cc: Likewise.
766         * testsuite/30_threads/thread/cons/6.cc: Likewise.
767         * testsuite/30_threads/thread/cons/7.cc: Likewise.
768         * testsuite/30_threads/thread/cons/8.cc: Likewise.
769         * testsuite/30_threads/thread/cons/9.cc: Likewise.
770         * testsuite/30_threads/thread/cons/moveable.cc: Likewise.
771         * testsuite/30_threads/thread/members/1.cc: Likewise.
772         * testsuite/30_threads/thread/members/2.cc: Likewise.
773         * testsuite/30_threads/thread/members/3.cc: Likewise.
774         * testsuite/30_threads/thread/members/4.cc: Likewise.
775         * testsuite/30_threads/thread/members/5.cc: Likewise.
776         * testsuite/30_threads/thread/members/hardware_concurrency.cc:
777         Likewise.
778         * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
779         * testsuite/30_threads/thread/native_handle/typesizes.cc:
780         Likewise.
781         * testsuite/30_threads/thread/swap/1.cc: Likewise.
782         * testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
783         * testsuite/30_threads/timed_mutex/dest/destructor_locked.cc:
784         Likewise.
785         * testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
786         * testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
787         * testsuite/30_threads/timed_mutex/native_handle/typesizes.cc:
788         Likewise.
789         * testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
790         * testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
791         * testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
792         * testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
793         * testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
794         * testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
795         * testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
796         * testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
797         * testsuite/30_threads/try_lock/1.cc: Likewise.
798         * testsuite/30_threads/try_lock/2.cc: Likewise.
799         * testsuite/30_threads/try_lock/3.cc: Likewise.
800         * testsuite/30_threads/try_lock/4.cc: Likewise.
801         * testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
802         * testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
803         * testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
804         * testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
805         * testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
806         * testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
807         * testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
808         * testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
809         * testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
810         * testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
811         * testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
812         * testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
813         * testsuite/ext/mt_allocator/22309_thread.cc: Likewise.
814         * testsuite/ext/profile/mh.cc: Likewise.
815         * testsuite/ext/rope/pthread7-rope.cc: Likewise.
816         * testsuite/lib/libstdc++.exp (libstdc++_init): Likewise.
817         * testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
818         Likewise.
819         * testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
820         Likewise.
821         * testsuite/util/testsuite_performance.h: Extend current handling
822         of Linux-based systems to cover all glibc-based systems.
824 2013-06-09  Jonathan Wakely  <jwakely.gcc@gmail.com>
826         * include/std/mutex (call_once): Remove parentheses to fix error in
827         c++1y and gnu++1y mode.
828         * testsuite/30_threads/mutex/try_lock/2.cc: Call try_lock() in new
829         thread to avoid undefined behaviour.
831 2013-06-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
833         Simplify and clean up library literals.
834         * include/std/chrono: Simplify namespace and versioning management.
835         * include/bits/basic_string.h: Ditto.
836         * testsuite/20_util/duration/literals/types.cc: Remove bogus comment.
837         * testsuite/20_util/duration/literals/values.cc: Ditto.
838         * testsuite/21_strings/basic_string/literals/types.cc: Ditto.
839         * testsuite/21_strings/basic_string/literals/values.cc: Ditto.
841 2013-06-08  Ed Smith-Rowland  <3dw4rd@verizon.net>
843         Implement N3654 - Quoted Strings Library Proposal
844         * include/std/iomanip: Add quoted(String, Char delim, Char escape)
845         manipulators and supporting machinery in c++1y mode.
846         * testsuite/27_io/manipulators/standard/char/quoted.cc: New.
847         * testsuite/27_io/manipulators/standard/wchar_t/quoted.cc: New.
849 2013-06-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
851         * include/bits/alloc_traits.h (allocator_traits::max_size()): LWG
852         2162: Add noexcept.
854 2013-06-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
856         * include/bits/stl_algo.h (is_permutation): Add overloads from N3671.
857         * include/bits/stl_algobase.h (equal, mismatch): Likewise.
858         * testsuite/25_algorithms/equal/1.cc: Remove duplicate test case.
859         * testsuite/25_algorithms/equal/2.cc: New.
860         * testsuite/25_algorithms/equal/check_type2.cc: New.
861         * testsuite/25_algorithms/is_permutationqual/2.cc: New.
862         * testsuite/25_algorithms/is_permutationqual/check_type2.cc: New.
863         * testsuite/25_algorithms/mismatch/2.cc: New.
864         * testsuite/25_algorithms/mismatch/check_type2.cc: New.
865         * testsuite/util/testsuite_iterators.h: Fix spelling.
867 2013-06-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
869         * include/std/type-traits (integral_constant::operator()): Implement
870         N3545.
871         * testsuite/20_util/integral_constant/call_operator.cc: New.
872         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
873         line numbers.
874         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
875         Likewise.
876         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
877         Likewise.
879 2013-06-07  Uros Bizjak  <ubizjak@gmail.com>
881         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
883 2013-06-05  Tom Tromey  <tromey@redhat.com>
885         * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Use -O0.
887 2013-06-03  Paolo Carlini  <paolo.carlini@oracle.com>
889         PR c++/57419
890         * testsuite/20_util/default_delete/48631_neg.cc: Adjust.
892 2013-06-01  Ed Smith-Rowland  <3dw4rd@verizon.net>
894         * include/std/chrono: Collapse redundant 'inline' from 'inline
895         constexpr'.
896         * include/std/tuple: Ditto.
897         * include/bits/move.h: Ditto.
899 2013-05-30  Ed Smith-Rowland  <3dw4rd@verizon.net>
901         Implement N3642 - User-defined Literals for Standard Library Types
902         * include/bits/parse_numbers.h: New.
903         * include/std/chrono: Add duration literal operators.
904         * include/bits/basic_string.h: Add string literal operators.
905         * include/Makefile.in: Add parse_numbers.h.
906         * include/Makefile.am: Ditto.
907         * testsuite/20_util/duration/literals/values.cc: New.
908         * testsuite/20_util/duration/literals/types.cc: New.
909         * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
910         * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
911         * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
912         * testsuite/21_strings/basic_string/literals/values.cc: New.
913         * testsuite/21_strings/basic_string/literals/types.cc: New.
915 2013-05-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
917         * src/c++11/compatibility-chrono.cc (steady_clock::now()): If
918         !_GLIBCXX_USE_GETTIMEOFDAY perform conversion inline instead of
919         calling non-existent from_time_t.
921 2013-05-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
923         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
924         Regenerate.
926 2013-05-24  Benjamin Kosnik  <bkoz@redhat.com>
928         * include/std/chrono: Wrap clocks in inline namespace _V2.
929         * src/c++11/chrono.cc: Same.
930         * src/c++11/compatibility-chrono.cc: Revert to previous chrono.cc
931         file, with default configure macros selected.
933         * config/abi/pre/gnu.ver (GLIBCXX_3.4.19): Use symbols from inline
934         namespace.
935         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Fix up.
937         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
938         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
939         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
940         Regenerated.
941         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
942         Regenerated.
943         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
944         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
945         Regenerated.
946         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
947         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
948         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
949         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
950         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
951         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
952         Regenerated.
953         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
954         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
956 2013-05-24  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
958         * config/os/solaris/solaris2.9/os_defines.h [!CLOCK_MONOTONIC]
959         (CLOCK_MONOTONIC): Define.
961 2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
963         * include/ext/type_traits.h (__is_null_pointer): Add std::nullptr_t
964         overload.
966         * include/bits/cpp_type_traits.h (__is_fundamental): Remove, unused.
968 2013-05-24  Jakub Jelinek  <jakub@redhat.com>
970         * src/c++11/chrono.cc: If _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL,
971         include unistd.h and sys/syscall.h.  If _GLIBCXX_COMPATIBILITY_CXX0X,
972         don't define system_clock::is_steady, system_clock::now() and
973         steady_clock::is_steady.
974         (std::chrono::system_clock::now()): If
975         _GLIBCXX_USE_CLOCK_GETTIME_SYSCALL, call
976         syscall (SYS_clock_gettime, ...) instead of clock_gettime (...).
977         (std::chrono::system_clock::now()): Likewise.  Add weak attribute
978         if _GLIBCXX_COMPATIBILITY_CXX0X and compatibility-chrono.cc will
979         be non-empty.
980         * src/Makefile.am (cxx11_sources): Add compatibility-chrono.cc.
981         (compatibility-chrono.lo, compatibility-chrono.o): New goals.
982         * src/c++11/compatibility-chrono.cc: New file.
983         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): On linux*, check for
984         syscall (SYS_clock_gettime, CLOCK_MONOTONIC, &tp).
985         * testsuite/util/testsuite_abi.cc (check_version): Add
986         GLIBCXX_3.4.20 version and make it the latest.
987         * config/abi/pre/gnu.ver (_ZNSt6chrono12steady_clock3nowEv): Export
988         also @@GLIBCXX_3.4.19.  Move all symbols so far added for GCC 4.9 to
989         @@GLIBCXX_3.4.20 instead.
990         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Regenerated.
991         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Regenerated.
992         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt:
993         Regenerated.
994         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
995         Regenerated.
996         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Regenerated.
997         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt:
998         Regenerated.
999         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Regenerated.
1000         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Regenerated.
1001         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Regenerated.
1002         * config/abi/post/solaris2.10/baseline_symbols.txt: Regenerated.
1003         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Regenerated.
1004         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt:
1005         Regenerated.
1006         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerated.
1007         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Regenerated.
1008         * config.h.in: Regenerated.
1009         * src/Makefile.in: Regenerated.
1010         * configure: Regenerated.
1012 2013-05-23  Matthias Klose  <doko@ubuntu.com>
1014         * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1015         (ext_headers): Remove ${ext_host_headers}.
1016         (stamp-${host_alias}): Create ${host_builddir}/../ext.
1017         (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1018         (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1019         * include/Makefile.in: Regenerate.
1020         * include/ext/random: Include ext/opt_random.h.
1022 2013-05-22  Jonathan Wakely  <jwakely.gcc@gmail.com>
1024         * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Add KIND=auto to
1025         enable features if target OS is known to support them.
1026         * configure.ac (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Default to 'auto'.
1027         * configure: Regenerate.
1029 2013-05-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
1031         PR libstdc++/57336
1032         * include/std/functional (__invoke): Do not form function types with
1033         abstract return type.
1034         * testsuite/20_util/reference_wrapper/invoke-3.cc: New.
1036 2013-05-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
1038         * include/std/tuple (get): Implement N3670.
1039         * include/std/utility (get): Likewise.
1040         * testsuite/20_util/pair/get.cc: Move to ...
1041         * testsuite/20_util/pair/astuple/get.cc: Here.
1042         * testsuite/20_util/pair/astuple/astuple.cc: New.
1043         * testsuite/20_util/pair/astuple/constexpr_get.cc: New.
1044         * testsuite/20_util/pair/astuple/constexpr_get_by_type.cc: New.
1045         * testsuite/20_util/pair/astuple/get_by_type.cc: New.
1046         * testsuite/20_util/pair/astuple/get_by_type_neg.cc: New.
1047         * testsuite/20_util/pair/astuple/get_neg.cc: New.
1048         * testsuite/20_util/tuple/element_access/constexpr_get_by_type.cc: New.
1049         * testsuite/20_util/tuple/element_access/get2_by_type.cc: New.
1050         * testsuite/20_util/tuple/element_access/get_by_type.cc: New.
1052 2013-05-19  Paolo Carlini  <paolo.carlini@oracle.com>
1054         * Revert last commit.
1056 2013-05-19  Matthias Klose  <doko@ubuntu.com>
1058         * include/Makefile.am (bits_headers): Remove ${bits_host_headers}.
1059         (ext_headers): Remove ${ext_host_headers}.
1060         (stamp-${host_alias}): Create ${host_builddir}/../ext.
1061         (stamp-host): Link ${bits_host_headers} and ${ext_host_headers}.
1062         (install-headers): Install ${bits_host_headers} and ${ext_host_headers}.
1063         * include/Makefile.in: Regenerate.
1065 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1067         * include/std/system_error (error_category::error_category()): LWG
1068         2145: Declare public and constexpr.
1069         * src/c++11/system_error.cc (error_category::error_category()): Move
1070         definition to ...
1071         * src/c++11/compatibility-c++0x.cc: Here.
1073 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1075         * include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
1077 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1079         * include/bits/unique_ptr.h (make_unique): Declare inline.
1080         (unique_ptr<T[],D>::reset()): Combine two overloads into one.
1081         (default_delete, unique_ptr): Add doxygen comments.
1082         * include/bits/shared_ptr_base.h: Improve doxygen comments.
1083         * include/bits/shared_ptr.h: Likewise.
1084         * testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
1085         number.
1086         * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
1088 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1090         * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1092 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1094         * doc/xml/manual/status_cxx2011.xml: Fix markup error.
1096 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1098         * include/std/utility (exchange): Define.
1099         * testsuite/20_util/exchange/1.cc: New.
1101 2013-05-18  Jonathan Wakely  <jwakely.gcc@gmail.com>
1103         * include/bits/unique_ptr.h (make_unique): Define.
1104         * testsuite/20_util/unique_ptr/creation/single.cc: New.
1105         * testsuite/20_util/unique_ptr/creation/array.cc: New.
1106         * testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
1108 2013-05-15  François Dumont  <fdumont@gcc.gnu.org>
1110         * python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
1111         rendering of std::tr1 unordered containers iterator.
1112         (StdHashtableIterator): New, render std unordered containers iterator.
1113         * testsuite/libstdc++-prettyprinters/tr1.cc: New.
1115 2013-05-15  Jonathan Wakely  <jwakely.gcc@gmail.com>
1117         * include/bits/basic_string.h (getline): Fix doxygen comments.
1119 2013-05-14  Paolo Carlini  <paolo.carlini@oracle.com>
1121         * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1122         Use std::pointer_traits.
1124 2013-05-13  Benjamin Kosnik  <bkoz@redhat.com>
1126         * libsupc++/Makefile.am (sources): Add bad_array_length.cc,
1127         bad_array_new.cc.
1128         * libsupc++/Makefile.in: Regenerate.
1129         * libsupc++/bad_array_length.cc: Tweak.
1130         * libsupc++/bad_array_new.cc: Tweak.
1132 2013-05-10  Paolo Carlini  <paolo.carlini@oracle.com>
1134         PR libstdc++/54577
1135         * include/bits/stl_deque.h (erase): Fix signatures in C++11 mode.
1136         (_Deque_iterator<>::_M_const_cast): Add.
1137         (deque<>::_M_erase): Declare.
1138         * include/bits/deque.tcc: ... and define.
1139         * include/bits/stl_list.h (erase): Fix signatures in C++11 mode.
1140         (_List_const_iterator<>::_M_const_cast): Add.
1141         * include/bits/list.tcc (erase (iterator)): Fix.
1142         * include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
1143         Add; include <ext/cast.h>.
1144         * include/bits/stl_vector.h (erase): Fix signatures in C++11 mode.
1145         (vector<>::_M_erase): Declare.
1146         * include/bits/stl_bvector.h: Likewise.
1147         * include/bits/vector.tcc (vector<>::_M_erase): Define.
1148         * include/ext/vstring.h (erase): Fix signatures in C++11 mode.
1149         * include/debug/deque: Adjust.
1150         * include/debug/list: Likewise.
1151         * include/debug/vector: Likewise.
1152         * include/profile/deque: Likewise.
1153         * include/profile/list: Likewise.
1154         * include/profile/vector: Likewise.
1155         * testsuite/util/exception/safety.h (erase_base<deque>,
1156         erase_base<deque>, erase_base<vector>): Remove.
1157         (erase_base<__versa_string>): Update.
1158         * testsuite/ext/vstring/modifiers/char/54577.cc: New.
1159         * testsuite/ext/vstring/modifiers/wchar_t/54577.cc: Likewise.
1160         * testsuite/23_containers/deque/modifiers/erase/54577.cc: Likewise.
1161         * testsuite/23_containers/list/modifiers/erase/54577.cc: Likewise.
1162         * testsuite/23_containers/vector/bool/modifiers/erase/54577.cc:
1163         Likewise.
1164         * testsuite/23_containers/vector/modifiers/erase/54577.cc: Likewise.
1165         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1166         Adjust dg-error line numbers.
1167         * testsuite/23_containers/deque/requirements/dr438/
1168         constructor_1_neg.cc: Likewise.
1169         * testsuite/23_containers/deque/requirements/dr438/
1170         constructor_2_neg.cc: Likewise.
1171         * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1172         Likewise.
1173         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1174         Likewise.
1175         * testsuite/23_containers/list/requirements/dr438/
1176         constructor_1_neg.cc: Likewise.
1177         * testsuite/23_containers/list/requirements/dr438/
1178         constructor_2_neg.cc: Likewise.
1179         * testsuite/23_containers/list/requirements/dr438/
1180         insert_neg.cc: Likewise.
1181         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1182         Likewise.
1183         * testsuite/23_containers/vector/requirements/dr438/
1184         constructor_1_neg.cc: Likewise.
1185         * testsuite/23_containers/vector/requirements/dr438/
1186         constructor_2_neg.cc: Likewise.
1187         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1188         Likewise.
1190 2013-05-09  Uros Bizjak  <ubizjak@gmail.com>
1192         * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.8.
1194 2013-05-08  Jason Merrill  <jason@redhat.com>
1196         Add std::bad_array_length (N3639)
1197         * libsupc++/new: Add std::bad_array_length.
1198         * libsupc++/bad_array_length.cc: New.
1199         * libsupc++/eh_aux_runtime.cc: Add __cxa_bad_array_length.
1200         * libsupc++/Makefile.in: Build them.
1201         * config/abi/pre/gnu.ver: Add new symbols.
1202         * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1204 2013-05-08  Andi Kleen  <ak@linux.intel.com>
1206         PR target/55947
1207         * libstdc++-v3/include/bits/atomic_base.h
1208         (_GLIBCXX_ALWAYS_INLINE): Add new macro.
1209         (atomic_thread_fence, atomic_signal_fence, test_and_set,
1210         clear, store, load, exchange, compare_exchange_weak)
1211         compare_exchange_strong, fetch_add, fetch_sub, fetch_and,
1212         fetch_or, fetch_xor): Mark _GLIBCXX_ALWAYS_INLINE.
1214 2013-05-08  Jason Merrill  <jason@redhat.com>
1216         Add std::bad_array_new_length (N2932)
1217         * libsupc++/new: Add std::bad_array_new_length.
1218         * libsupc++/bad_array_new.cc: New.
1219         * libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
1220         * libsupc++/Makefile.in: Build them.
1221         * config/abi/pre/gnu.ver: Add new symbols.
1222         * config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
1224 2013-05-08  Andoni Morales Alastruey <ylatuya@gmail.com>
1226         PR libstdc++/57212
1227         * include/Makefile.am (_GLIBCXX___MINGW32_GLIBCXX___): Modify
1228         to __MINGW32__.
1229         * include/Makefile.in: Regenerated.
1231 2013-05-07  François Dumont  <fdumont@gcc.gnu.org>
1233         * include/profile/unordered_base.h: New.
1234         * include/Makefile.am: Add new profile header.
1235         * include/Makefile.in: Regenerate.
1236         * include/profile/impl/profiler.h
1237         (__profcxx_inefficient_hash_is_on): New macro.
1238         * include/profile/unordered_map (std::profile::unordered_map<>):
1239         Use new _Unordered_profile base class. Use default implementations
1240         for special functions.
1241         (std::profile::unordered_multimap<>): Likewise.
1242         * include/profile/unordered_set (std::profile::unordered_set<>):
1243         Likewise.
1244         (std::profile::unordered_multiset<>): Likewise.
1245         * testsuite/23_containers/unordered_multiset/55043.cc: Fix
1246         MoveOnly equality operator signature.
1248 2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
1250         * testsuite/tr1/4_metaprogramming/integral_constant/requirements/
1251         constexpr_data.cc: Move...
1252         * testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
1253         ... here.
1254         * testsuite/20_util/integral_constant/requirements/
1255         explicit_instantiation.cc: New.
1256         * testsuite/20_util/integral_constant/requirements/typedefs.cc:
1257         Likewise.
1258         * testsuite/20_util/integral_constant/static_definition.cc: Likewise.
1259         * testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
1260         Likewise.
1261         * testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
1262         * testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.
1264 2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
1266         * include/std/type_traits (is_null_pointer): Add.
1267         (__is_nullptr_t): Implement in terms of the latter.
1268         (is_fundamental, is_scalar): Adjust.
1269         * testsuite/20_util/is_null_pointer/requirements/
1270         explicit_instantiation.cc: New.
1271         * testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
1272         Likewise.
1273         * testsuite/20_util/is_null_pointer/value.cc: Likewise.
1274         * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1275         line number.
1276         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1277         Likewise.
1278         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1279         Likewise.
1281 2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>
1283         * include/c_global/cstdio: Add comment about LWG 2249.
1284         * include/c_std/cstdio: Likewise.
1286 2013-04-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
1288         * include/bits/hashtable_policy.h (_Hashtable_ebo_helper): Fix
1289         comment.
1290         * include/std/mutex (__recursive_mutex_base): Likewise.
1292 2013-04-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
1294         PR libstdc++/51365
1295         * include/bits/shared_ptr_base (_Sp_ebo_helper): Helper class to
1296         implement EBO safely.
1297         (_Sp_counted_base::_M_get_deleter): Add noexcept.
1298         (_Sp_counter_ptr): Use noexcept instead of comments.
1299         (_Sp_counted_deleter): Likewise. Use _Sp_ebo_helper.
1300         (_Sp_counted_ptr_inplace): Likewise.
1301         * testsuite/20_util/shared_ptr/cons/51365.cc: New.
1302         * testsuite/20_util/shared_ptr/cons/52924.cc: Add rebind member to
1303         custom allocator and test construction with custom allocator.
1304         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error
1305         line number.
1307 2013-04-26  Paolo Carlini  <paolo.carlini@oracle.com>
1309         * testsuite/23_containers/unordered_set/insert/move_range.cc: Adjust
1310         dialect to -std=gnu++11.
1312 2013-04-26  François Dumont  <fdumont@gcc.gnu.org>
1314         * include/bits/hashtable_policy.h
1315         (_Insert_base<>::insert<_It>(_It, _It)): Enable move semantics.
1316         * testsuite/23_containers/unordered_set/insert/move_range.cc: New.
1318 2013-04-26  Paolo Carlini  <paolo.carlini@oracle.com>
1320         * include/c_global/cstdio (gets): Provide only in C++98 and C++11.
1321         * include/c_std/cstdio (gets): Likewise.
1322         * testsuite/27_io/headers/cstdio/functions_std.cc: Adjust.
1324 2013-04-25  Paolo Carlini  <paolo.carlini@oracle.com>
1326         PR libstdc++/57065
1327         * include/debug/unordered_map (unordered_map, unordered_multimap):
1328         Fix default allocator type.
1329         * include/profile/unordered_map (unordered_map, unordered_multimap):
1330         Likewise.
1331         * include/bits/unordered_map.h: Fix comments.
1333 2013-04-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
1335         PR libstdc++/56905
1336         * libsupc++/exception_ptr.h (copy_exception): Deprecate and
1337         move implementation to make_exception_ptr.
1338         * include/std/future (_State_base::_M_break_promise): Replace
1339         copy_exception with make_exception_ptr.
1340         * testsuite/18_support/exception_ptr/move.cc: Likewise.
1341         * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
1342         * testsuite/30_threads/future/members/get2.cc: Likewise.
1343         * testsuite/30_threads/promise/members/set_exception.cc: Likewise.
1344         * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
1345         * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
1346         * testsuite/30_threads/shared_future/members/get2.cc: Likewise.
1348 2013-04-22  Jason Merrill  <jason@redhat.com>
1350         * src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
1352         * testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
1353         substitution" lines.
1355         * testsuite/20_util/is_assignable/value.cc: Comment out tests involving
1356         function-cv-quals.
1357         * testsuite/20_util/is_constructible/value-2.cc: Likewise.
1358         * testsuite/20_util/reference_wrapper/result_type.cc: Likewise.
1359         * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
1361 2013-04-22  François Dumont  <fdumont@gcc.gnu.org>
1363         * include/bits/hashtable_policy.h: Add C++11 allocator support.
1364         * include/bits/hashtable.h: Likewise.
1365         * include/bits/unordered_set.h: Likewise.
1366         * include/bits/unordered_map.h: Likewise.
1367         * include/debug/unordered_set: Likewise.
1368         * include/debug/unordered_map: Likewise.
1369         * include/std/unordered_set: Remove bits/algobase.h
1370         include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
1371         * include/std/unordered_map: Likewise.
1372         * include/ext/throw_allocator.h: Add checks on calls to allocator
1373         construct/destroy.
1374         (std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
1375         (std::hash<__gnu_cxx::throw_value_random>): Likewise.
1376         * testsuite/util/regression/rand/priority_queue
1377         /container_rand_regression_test.tcc: Adapt.
1378         * testsuite/util/regression/rand/assoc
1379         /container_rand_regression_test.tcc: Likewise.
1380         * testsuite/util/testsuite_counter_type.h: Add count of destructors.
1381         * testsuite/23_containers/unordered_set
1382         /not_default_constructible_hash_neg.cc: Adjust dg-error line number.
1383         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
1384         * testsuite/23_containers/unordered_set/allocator/copy.cc: New.
1385         * testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
1386         * testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
1387         * testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
1388         * testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
1389         * testsuite/23_containers/unordered_set/allocator/swap.cc: New.
1390         * testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
1391         * testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
1392         New.
1393         * testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
1394         * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1395         New.
1396         * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
1397         * testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
1398         * testsuite/23_containers/unordered_map/allocator/copy.cc: New.
1399         * testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
1400         * testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
1401         * testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
1402         * testsuite/23_containers/unordered_map/allocator/noexcept.cc:
1403         New.
1404         * testsuite/23_containers/unordered_map/allocator/swap.cc: New.
1405         * testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
1406         * testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
1407         New.
1408         * testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
1409         * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1410         New.
1411         * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
1412         * testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.
1414 2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1416         * include/std/type_traits (is_signed): Simplify.
1417         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1418         Adjust dg-error line numbers.
1419         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1420         Likewise.
1421         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1423 2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1425         N3669
1426         * include/std/complex (complex<float>::real, complex<float>::imag,
1427         complex<double>::real, complex<double>::imag,
1428         complex<long double>::real, complex<long double>::imag): Declare
1429         as const member functions.
1430         * include/std/type_traits (integral_constant<>::operator value_type):
1431         Likewise.
1433 2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>
1435         PR libstdc++/57010
1436         * include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
1437         * testsuite/25_algorithms/pop_heap/57010.cc: New.
1439 2013-04-21  Evgeniy Stepanov  <eugenis@google.com>
1441         * src/c++11/system_error.cc (generic_category_instance): Add
1442         initializer.
1443         (system_category_instance): Likewise.
1444         * src/c++11/future.cc (__fec): Likewise.
1446 2013-04-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1448         * doc/xml/manual/extensions.xml: Fix anachronism.
1450 2013-04-09  Tom Tromey  <tromey@redhat.com>
1452         * configure, config.h.in: Rebuild.
1453         * configure.ac: Use GLIBCXX_CHECK_SDT_H.  Don't check for
1454         sys/sdt.h.
1455         * acinclude.m4 (GLIBCXX_CHECK_SDT_H): New defun.
1457 2013-04-09  Uros Bizjak  <ubizjak@gmail.com>
1459         * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
1461 2013-04-08  Paolo Carlini  <paolo.carlini@oracle.com>
1463         * testsuite/libstdc++-prettyprinters/cxx11.cc: Include <memory>.
1465 2013-04-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1467         * include/Makefile.am: Add ext/aligned_buffer.h
1468         * include/Makefile.in: Regenerate.
1469         * include/ext/aligned_buffer.h: New.
1470         * include/std/future (_Result): Use __aligned_buffer.
1471         * include/bits/forward_list.h (_Fwd_list_node): Likewise.
1472         * include/bits/shared_ptr_base.h (_Sp_counted_ptr_inplace): Likewise.
1473         * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error line
1474         number.
1476 2013-04-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
1478         * include/bits/forward_list.h: Only include required headers.
1479         (forward_list::reference): Define directly, not using __alloc_traits.
1480         (forward_list::const_reference): Likewise.
1482 2013-04-07  François Dumont  <fdumont@gcc.gnu.org>
1484         * include/std/functional (_Derives_from_unary_function): Remove.
1485         (_Derives_from_binary_function): Remove.
1486         * include/std/type_traits (__sfinae_types): Remove.
1487         (__is_assignable_helper): Adapt.
1488         (__is_convertible_helper): Adapt.
1489         (_GLIBCXX_HAS_NESTED_TYPE): Adapt.
1490         Remove several explicit instantiations of integral_constant.
1491         * testsuite/20_util/reference_wrapper/typedefs-3.cc: Adapt.
1492         * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1493         Adapt dg-error line number.
1494         * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1495         Likewise.
1496         * testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
1497         * testsuite/20_util/bind/ref_neg.cc: Likewise.
1499 2013-04-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
1501         PR libstdc++/56841
1502         * libsupc++/eh_ptr.cc (rethrow_exception): Use get_unexpected() and
1503         get_terminate() accessors.
1504         * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
1505         * libsupc++/eh_terminate.cc: Use mutex when atomic builtins not
1506         available.
1507         * libsupc++/new_handler.cc: Likewise.
1509 2013-04-04  Jonathan Wakely  <jwakely.gcc@gmail.com>
1511         * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.19 version.
1513 2013-04-03  Paolo Carlini  <paolo.carlini@oracle.com>
1515         PR libstdc++/56834
1516         * include/debug/array (tuple_size, tuple_element): Do not declare.
1517         * include/profile/array: Likewise.
1518         * testsuite/23_containers/array/tuple_interface/
1519         tuple_element_debug_neg.cc: Adjust dg-error line number.
1521 2013-04-03  Jonathan Wakely  <jwakely.gcc@gmail.com>
1523         * libsupc++/exception (get_terminate(), get_unexpected()): Declare.
1524         * libsupc++/eh_terminate.cc (get_terminate() , set_unexpected()):
1525         Define.
1526         (set_terminate(terminate_handler)): Set atomically.
1527         (set_unexpected(terminate_handler)): Likewise.
1528         * libsupc++/new (get_new_handler()): Declare.
1529         * libsupc++/new_handler.cc (get_new_handler()): Define.
1530         (set_new_handler(new_handler)): Set atomically.
1531         (__new_handler): Use internal linkage.
1532         * libsupc++/new_op.cc (operator new): Use get_new_handler().
1533         * libsupc++/new_opnt.cc (operator new): Likewise.
1534         * acinclude.m4: Bump libtool_VERSION to 6:19:0.
1535         * configure: Regenerate.
1536         * libsupc++/Makefile.am: Compile above files with -std=gnu++11.
1537         * libsupc++/Makefile.in: Regenerate.
1538         * config/abi/pre/gnu.ver: Add new exports.
1539         * doc/xml/manual/status_cxx2011.xml: Update.
1540         * testsuite/18_support/headers/exception/synopsis.cc: Check accessors
1541         for handlers.
1542         * testsuite/18_support/headers/new/synopsis.cc: Likewise.
1543         * testsuite/18_support/new_handler.cc: New.
1544         * testsuite/18_support/terminate_handler.cc: New.
1545         * testsuite/18_support/unexpected_handler.cc: New.
1547 2013-04-02  Jonathan Wakely  <jwakely.gcc@gmail.com>
1549         * doc/xml/manual/appendix_contributing.xml: Remove broken link and
1550         defer to general documentation on contributing to GCC.
1551         * doc/html/*: Regenerate.
1553 2013-03-30  Gerald Pfeifer  <gerald@pfeifer.com>
1555         * doc/xml/manual/allocator.xml: Adjust link to Dr.Dobb's article.
1557         * doc/xml/manual/appendix_contributing.xml: Adjust link to GNU
1558         Coding Standards.
1560         * doc/xml/manual/debug.xml: Adjust link for ThreadSanitizer.
1562         * doc/xml/manual/debug_mode.xml: Adjust link for SafeSTL.
1564         * doc/xml/manual/documentation_hacking.xml: Adjust Doxygen link.
1566         * doc/xml/manual/messages.xml: Adjust link to Java API specs.
1568         * doc/xml/manual/policy_data_structures: Remove direct link to
1569         IBM Haifa Research Labs.
1571         * doc/xml/manual/policy_data_structures_biblio.xml: Adjust links
1572         for biblio.maverik_lowerbounds and biblio.nelson96stlpq.
1574         * doc/xml/manual/profile_mode.xml: Adjust two links to acm.org
1575         papers.
1577         * doc/xml/manual/shared_ptr.xml: Use canonical address for
1578         www.boost.org.
1580 2013-03-27  Kai Tietz  <ktietz@redhat.com>
1582         * crossconfig.m4: Add support for cygwin x64 target.
1583         * configure: Regenerated.
1585 2013-03-25  Kai Tietz  <ktietz@redhat.com>
1587         * testsuite/18_support/50594.cc: For mingw-targets use only static
1588         libstdc++-version.
1589         * testsuite/19_diagnostics/error_category/operators/equal.cc
1590         * testsuite/19_diagnostics/error_code/cons/1.cc
1591         * testsuite/19_diagnostics/error_code/operators/bool.cc
1592         * testsuite/19_diagnostics/error_code/operators/equal.cc
1593         * testsuite/19_diagnostics/error_code/operators/not_equal.cc
1594         * testsuite/19_diagnostics/error_condition/cons/1.cc
1595         * testsuite/19_diagnostics/error_condition/operators/bool.cc
1596         * testsuite/19_diagnostics/error_condition/operators/equal.cc
1597         * testsuite/19_diagnostics/error_condition/operators/not_equal.cc
1598         * testsuite/23_containers/set/requirements/exception/basic.cc
1599         * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc
1600         * testsuite/lib/dg-options.exp (dg-additional-options): New option.
1602 2013-03-24  Jonathan Wakely  <jwakely.gcc@gmail.com>
1604         PR libstdc++/56170
1605         * include/ext/debug_allocator.h (debug_allocator): Add missing members
1606         to meet allocator requirements.
1607         * testsuite/ext/debug_allocator/56170.cc: New.
1609 2013-03-22  Paolo Carlini  <paolo.carlini@oracle.com>
1611         PR libstdc++/56678
1612         * include/std/chrono (__is_ratio): Uglify T.
1614 2013-03-18  Paolo Carlini  <paolo.carlini@oracle.com>
1616         PR libstdc++/55977 (partial, std::vector and std::deque bits)
1617         * include/bits/stl_vector.h (_M_range_initialize(_InputIterator,
1618         _InputIterator, std::input_iterator_tag)): Use emplace_back.
1619         * include/bits/deque.tcc (_M_range_initialize(_InputIterator,
1620         _InputIterator, std::input_iterator_tag)): Likewise.
1621         * testsuite/23_containers/vector/cons/55977.cc: New.
1622         * testsuite/23_containers/deque/cons/55977.cc: Likewise.
1623         * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1624         Adjust dg-error line number.
1625         * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1626         Likewise.
1628 2013-03-17  Paolo Carlini  <paolo.carlini@oracle.com>
1630         PR libstdc++/55979
1631         * include/bits/stl_list.h (_M_initialize_dispatch(_InputIterator,
1632         _InputIterator, __false_type)): Use emplace_back.
1633         * testsuite/23_containers/list/cons/55979.cc: New.
1634         * testsuite/23_containers/list/modifiers/1.h: Adjust.
1635         * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1636         Adjust dg-error line number.
1638 2013-03-16  Jason Merrill  <jason@redhat.com>
1640         PR c++/55017
1641         * testsuite/20_util/pair/piecewise2.cc (test01): Use std::move.
1643 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1645         PR libstdc++/56468
1646         * libsupc++/exception_ptr.h (type_info): Declare.
1648 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1650         PR libstdc++/56002
1651         * include/std/mutex (lock_guard, unique_lock, lock): Define without
1652         depending on _GLIBCXX_HAS_GTHREADS.
1653         * testsuite/30_threads/lock_guard/cons/1.cc: Run on all targets.
1655 2013-03-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
1657         PR libstdc++/56492
1658         * include/std/future (__future_base::_Result): Add result_type
1659         typedef.
1660         (__future_base::_S_allocate_result): Overload for std::allocator.
1661         (__future_base::_Task_setter): Use _Result::result_type instead of
1662         deducing the type from the task.
1663         (__future_base::_Task_state): Store allocator to allow shared state
1664         to be reset.  Replace std::function with member of target object type
1665         accessed via ...
1666         (__future_base::_Task_state_base): New abstract base class.
1667         (__future_base::_Task_state_base::_M_run): New virtual function to
1668         invoke type-erased target object.
1669         (__future_base::_Task_state_base::_M_reset): New virtual function to
1670         create new shared_state using same target object and allocator.
1671         (__future_base::__create_task_state): Allocate a new _Task_state.
1672         (packaged_task::packaged_task): Use __create_task_state.
1673         (packaged_task::reset): Use _Task_state_base::_M_reset.
1674         * testsuite/30_threads/packaged_task/cons/56492.cc: New.
1676 2013-03-15  Tom Tromey  <tromey@redhat.com>
1678         * libsupc++/unwind-cxx.h: Include sys/sdt.h if detected.
1679         (PROBE2): New macro.
1680         * libsupc++/eh_throw.cc (__cxa_throw, __cxa_rethrow): Add probe.
1681         * libsupc++/eh_catch.cc (__cxa_begin_catch): Add probe.
1682         * configure.ac: Check for sys/sdt.h.
1683         * configure, config.h.in: Rebuild.
1685 2013-03-14  Jonathan Wakely  <jwakely.gcc@gmail.com>
1687         PR libstdc++/56613
1688         * include/bits/stl_tree.h (_Rb_tree::_M_create_node): Use
1689         allocator_traits instead of calling construct directly.
1690         * testsuite/23_containers/map/56613.cc: New.
1692 2013-03-13  Benjamin Kosnik  <bkoz@redhat.com>
1694         * doc/html/*: Regenerate.
1696 2013-03-13  Paolo Carlini  <paolo.carlini@oracle.com>
1698         PR libstdc++/56609
1699         * include/std/type_traits (is_fundamental): Add std::nullptr_t.
1700         * testsuite/20_util/is_fundamental/value.cc: Extend.
1701         * testsuite/20_util/is_compound/value.cc: Likewise.
1703 2013-03-09  Paolo Carlini  <paolo.carlini@oracle.com>
1705         * testsuite/20_util/function_objects/mem_fn/55463.cc: Avoid
1706         -Wunused warnings.
1708 2013-03-08  Benjamin Kosnik  <bkoz@redhat.com>
1710         * include/bits/memoryfwd.h: New. Centralize forward declarations.
1711         * include/bits/algorithmfwd.h: Consistent comments.
1712         * include/bits/localefwd.h: Same.
1713         * include/ext/vstring_fwd.h: Same.
1714         * include/parallel/algorithmfwd.h: Same.
1715         * include/parallel/numericfwd.h: Same.
1716         * include/std/iosfwd: Same.
1718         * include/bits/alloc_traits.h: Include memoryfwd.h, remove allocator
1719         forward decl.
1720         * include/ext/alloc_traits.h: Remove allocator forward decl.
1721         * include/bits/stl_construct.h: Same.
1722         * include/bits/stringfwd.h: Include memoryfwd.h, remove allocator
1723         forward decl. Consistent comments.
1725         * doc/doxygen/user.cfg.in (TEMPLATE_RELATIONS): To NO.
1727         * include/Makefile.am (bits_headers): Add memoryfwd.h.
1728         * include/Makefile.in: Regenerate.
1729         * configure: Same.
1731 2013-03-08  François Dumont  <fdumont@gcc.gnu.org>
1733         * include/bits/vector.tcc (vector<>operator=(const vector<>&):
1734         Reset pointers after deallocation when memory can be reused.
1735         * testsuite/23_containers/vector/allocator/minimal.cc: Insert
1736         elements to really challenge C++11 allocator integration.
1737         * testsuite/23_containers/vector/allocator/copy.cc: Likewise.
1738         * testsuite/23_containers/vector/allocator/copy_assign.cc:
1739         Likewise.
1740         * testsuite/23_containers/vector/allocator/move_assign.cc:
1741         Likewise.
1742         * testsuite/23_containers/vector/allocator/swap.cc: Likewise and
1743         swap vector back before checks on memory/personality mapping are
1744         performed.
1745         * testsuite/23_containers/forward_list/allocator/minimal.cc:
1746         Insert element to really challenge C++11 allocator integration.
1747         * testsuite/23_containers/forward_list/allocator/copy.cc:
1748         Likewise.
1749         * testsuite/23_containers/forward_list/allocator/copy_assign.cc:
1750         Likewise.
1751         * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1752         Likewise.
1753         * testsuite/23_containers/forward_list/allocator/swap.cc: Likewise
1754         and swap forward_list back before checks on memory/personality
1755         mapping are performed.
1757 2013-03-07  Jakub Jelinek  <jakub@redhat.com>
1759         * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1760         * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1761         * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt:
1762         Likewise.
1763         * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1764         * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1765         * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1766         * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1767         * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1768         * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1770 2013-03-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1772         * scripts/extract_symvers.pl: Omit symbols bound to base
1773         versions.
1774         * scripts/extract_symvers.in: Likewise.
1775         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1776         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1777         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1778         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1779         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1781 2013-03-04  Ulrich Drepper  <drepper@gmail.com>
1783         * include/ext/random (__gnu_cxx::von_mises_distribution<>):
1784         Optimize generation function by pulling computation of __r into the
1785         constructor for param_type.  Also compare _M_mu in operator==.
1786         Fix comment.
1788 2013-03-02  Ulrich Drepper  <drepper@gmail.com>
1790         Add triangular and von Mises distributions.
1791         * include/ext/random: Include <ext/cmath>.
1792         Add __gnu_cxx::triangular_distribution<> and
1793         __gnu_cxx::von_mises_distribution<> classes.
1794         * include/ext/random.tcc: Add out-of-line functions for
1795         __gnu_cxx::triangular_distribution<> and
1796         __gnu_cxx::von_mises_distribution<>.
1797         * testsuite/ext/triangular_distribution/cons/default.cc: New file.
1798         * testsuite/ext/triangular_distribution/cons/parms.cc: New file.
1799         * testsuite/ext/triangular_distribution/operators/serialize.cc:
1800         New file.
1801         * testsuite/ext/triangular_distribution/operators/equal.cc:
1802         New file.
1803         * testsuite/ext/triangular_distribution/operators/inequal.cc:
1804         New file.
1805         * testsuite/ext/triangular_distribution/requirements/typedefs.cc:
1806         New file.
1807         * testsuite/ext/triangular_distribution/requirements/
1808         explicit_instantiation/1.cc: New file.
1809         * testsuite/ext/von_mises_distribution/cons/default.cc: New file.
1810         * testsuite/ext/von_mises_distribution/cons/parms.cc: New file.
1811         * testsuite/ext/von_mises_distribution/operators/serialize.cc:
1812         New file.
1813         * testsuite/ext/von_mises_distribution/operators/equal.cc: New file.
1814         * testsuite/ext/von_mises_distribution/operators/inequal.cc:
1815         New file.
1816         * testsuite/ext/von_mises_distribution/requirements/typedefs.cc:
1817         New file.
1818         * testsuite/ext/von_mises_distribution/requirements/
1819         explicit_instantiation/1.cc: New file.
1821         Add math constants.
1822         * include/Makefile.am (ext_headers): Add cmath.
1823         * include/Makefile.in: Regenerated.
1824         * include/ext/cmath: New file.
1826 2013-03-01  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1828         * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1829         * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1830         * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1831         * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1832         * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1834 2013-02-26  Jonathan Wakely  <jwakely.gcc@gmail.com>
1836         PR libstdc++/56012
1837         * include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
1838         * testsuite/29_atomics/atomic/operators/56012.cc: New.
1840         PR libstdc++/56011
1841         * include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
1842         missing overload.
1843         * testsuite/29_atomics/atomic/operators/56011.cc: New.
1845 2013-02-25  Jason Merrill  <jason@redhat.com>
1847         * configure.ac: Check for __cxa_thread_atexit_impl.
1848         * libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
1849         to it if available.
1850         * config.h.in, configure: Regenerate.
1852 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1854         * include/std/streambuf (basic_streambuf): Use injected class name
1855         instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
1856         group.
1858 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1860         * doc/html/faq.html: Fix spelling.
1861         * doc/xml/faq.xml: Likewise.
1862         * include/bits/basic_ios.h: Likewise.
1863         * include/bits/regex.h: Likewise.
1864         * include/std/istream: Likewise.
1865         * include/std/streambuf: Likewise.
1867 2013-02-20  Jonathan Wakely  <jwakely.gcc@gmail.com>
1869         * testsuite/23_containers/unordered_set/55043.cc: Add missing
1870         namespace qualification.
1871         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
1873 2013-02-19  Benjamin Kosnik  <bkoz@redhat.com>
1875         * doc/doxygen/user.cfg.in: Set __cplusplus to 201103L. Change to
1876         _GLIBCXX_INCLUDE_AS_CXX11. DIRECTORY_GRAPH, MARKDOWN_SUPPORT,
1877         AUTOLINK_SUPPORT to NO. Update to doxygen 1.8.3.1.
1878         * include/bits/stl_pair.h: Add to utilities group.
1879         * include/std/tuple: Same.
1880         * include/std/typeindex: Same.
1882         * include/bits/stringfwd.h: Fix markup.
1883         * include/std/limits: Same.
1884         * include/std/type_traits: Same.
1885         * include/tr1/memory: Same.
1886         * include/tr1/regex: Same.
1887         * scripts/run_doxygen: Comment.
1888         * testsuite/20_util/uses_allocator/cons_neg.cc: Fixup line numbers.
1890 2013-02-14  Jason Merrill  <jason@redhat.com>
1892         * testsuite/18_support/quick_exit/quick_exit.cc: #if out the whole
1893         test if unsupported.
1895 2013-02-13  Marc Glisse  <marc.glisse@inria.fr>
1897         PR libstdc++/56111
1898         * include/std/complex (complex): Undefine.
1899         * include/c_compatibility/complex.h (complex): Only undefine if
1900         <complex> has been included.
1901         * testsuite/26_numerics/complex/56111.cc: New testcase.
1903 2013-02-13  François Dumont  <fdumont@gcc.gnu.org>
1905         * include/bits/hashtable_policy.h (_Hash_code_base): Restore
1906         default constructor protected.
1907         * include/bits/hashtable.h: static assert that _Hash_code_base has
1908         a default constructor available through inheritance.
1910 2013-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
1912         * include/c_std/cstdlib (at_quick_exit, quick_exit): Provide in
1913         C++11 mode.
1915 2013-02-12  Julian Brown  <julian@codesourcery.com>
1917         * testsuite/22_locale/time_get/get_weekday/char/38081-1.cc (test01):
1918         Don't expect dots after abbreviated weekday names for ru_RU for
1919         glibc versions >= 2.17.
1920         * testsuite/22_locale/time_get/get_weekday/char/38081-2.cc (test01):
1921         Likewise.
1923 2013-02-12  Paolo Carlini  <paolo.carlini@oracle.com>
1925         * include/bits/random.tcc (__transform): Remove.
1926         (__normalize): Add.
1927         (discrete_distribution<>::param_type::_M_initialize): Adjust.
1928         (piecewise_constant_distribution<>::param_type::_M_initialize):
1929         Likewise.
1930         (piecewise_linear_distribution<>::param_type::_M_initialize):
1931         Likewise.
1933 2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
1935         * src/c++11/Makefile.am (hashtable_c++0x.lo, hashtable_c++0x.o):
1936         Use -fimplicit-templates.
1937         * src/c++11/Makefile.in: Regenerate.
1938         * src/c++11/hashtable_c++0x.cc: Remove instantiation for
1939         std::lower_bound template.
1941 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
1943         * include/c_std/cstdlib (at_quick_exit, quick_exit): Do not declare.
1944         * include/c_global/cstdlib (at_quick_exit, quick_exit): Declare only
1945         in C++11 mode and if available in the underlying C library.
1946         * testsuite/18_support/quick_exit/quick_exit.cc: Compile with
1947         -std=gnu++11; check _GLIBCXX_HAVE_AT_QUICK_EXIT and
1948         _GLIBCXX_HAVE_QUICK_EXIT.
1950 2013-02-11  Benjamin Kosnik  <bkoz@redhat.com>
1952         * doc/html/*: Regenerate.
1954 2013-02-11  Jason Merrill  <jason@redhat.com>
1956         * linkage.m4 (GLIBCXX_CHECK_STDLIB_DECL_AND_LINKAGE): New.
1957         (GLIBCXX_CHECK_STDLIB_SUPPORT): Check for atexit and at_quick_exit.
1958         * config.h.in, configure: Regenerate.
1959         * include/c_std/cstdlib: Add atexit and at_quick_exit.
1960         * include/c_global/cstdlib: Add atexit and at_quick_exit.
1961         * testsuite/18_support/quick_exit/quick_exit.cc: New.
1963 2013-02-11  Paolo Carlini  <paolo.carlini@oracle.com>
1965         PR libstdc++/56282
1966         Revert:
1967         2013-02-06  Edward Smith-Rowland  <3dw4rd@verizon.net>
1969         PR libstdc++/56193
1970         * include/bits/basic_ios.h: Replace operator void*() const
1971         with explicit operator bool() const in C++11 and greater.
1972         * testsuite/27_io/basic_ios/pr56193.cc: New file.
1974 2013-02-10  François Dumont  <fdumont@gcc.gnu.org>
1975             Jonathan Wakely  <jwakely.gcc@gmail.com>
1977         * doc/xml/manual/containers.xml: Add section on unordered containers.
1978         * doc/xml/manual/using.xml: Fix incomplete sentence.
1980 2013-02-10  Jonathan Wakely  <jwakely.gcc@gmail.com>
1982         PR libstdc++/56267
1983         * include/bits/hashtable.h (__cache_default): Check if hash function
1984         is copy assignable.
1985         * testsuite/23_containers/unordered_set/56267.cc: New.
1986         * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1987         dg-error line number.
1988         * testsuite/23_containers/unordered_set/
1989         not_default_constructible_hash_neg.cc: Likewise.
1991         PR libstdc++/56278
1992         * include/bits/hashtable_policy.h (_Hash_code_base): Make default
1993         constructor public.
1994         * testsuite/23_containers/unordered_set/56278.cc: New.
1996 2013-02-09  François Dumont  <fdumont@gcc.gnu.org>
1998         * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series): Code
1999         simplification.
2001 2013-02-08  Edward Smith-Rowland  <3dw4rd@verizon.net>
2003         PR libstdc++/56216
2004         * include/tr1/special_function_util.h: Remove spurious const
2005         from numeric arguments.
2006         * include/tr1/riemann_zeta.tcc: Likewise.
2007         * include/tr1/exp_integral.tcc: Likewise.
2008         * include/tr1/bessel_function.tcc: Likewise.
2009         * include/tr1/hypergeometric.tcc: Likewise.
2010         * include/tr1/modified_bessel_func.tcc: Likewise.
2011         * include/tr1/poly_laguerre.tcc: Likewise.
2012         * include/tr1/gamma.tcc: Likewise.
2013         * include/tr1/legendre_function.tcc: Likewise.
2014         * include/tr1/poly_hermite.tcc: Likewise.
2015         * include/tr1/ell_integral.tcc: Likewise.
2016         * include/tr1/bessel_function.tcc (__cyl_bessel_ij_series):
2017         If argument is zero return function value.
2018         * testsuite/tr1/5_numerical_facilities/special_functions/
2019         08_cyl_bessel_i/pr56216.cc: New.
2021 2013-02-07  Paolo Carlini  <paolo.carlini@oracle.com>
2023         * testsuite/27_io/basic_ios/pr56193.cc: Tweak.
2025 2013-02-06  Edward Smith-Rowland  <3dw4rd@verizon.net>
2027         PR libstdc++/56193
2028         * include/bits/basic_ios.h: Replace operator void*() const
2029         with explicit operator bool() const in C++11 and greater.
2030         * testsuite/27_io/basic_ios/pr56193.cc: New file.
2032 2013-02-04  Dodji Seketeli  <dodji@redhat.com>
2034         Add missing explicit instantiation for std::lower_bound template
2035         * libstdc++-v3/src/c++11/hashtable_c++0x.cc (namespace std): Add
2036         missing instantiation for std::lower_bound template.
2038 2013-02-04  François Dumont  <fdumont@gcc.gnu.org>
2040         * include/bits/functional_hash.h (std::__is_fast_hash<>): New.
2041         * include/bits/basic_string.h: Specialize previous to mark
2042         std::hash for string types as slow.
2043         * include/bits/hashtable.h (__cache_default): Replace is_integral
2044         with __is_fast_hash.
2045         * src/c++11/hash_c++0x.cc: Add type_traits include.
2046         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2047         Adapt dg-error line number.
2048         * testsuite/23_containers/unordered_set/
2049         not_default_constructible_hash_neg.cc: Likewise.
2051 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
2052             Paolo Carlini  <paolo.carlini@oracle.com>
2054         PR libstdc++/56202 (again)
2055         * include/bits/random.tcc (binomial_distribution<>::
2056         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Fix thinko
2057         in previous commit.
2059         * include/bits/random.h: Fix comment typo.
2061 2013-02-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>
2062             Paolo Carlini  <paolo.carlini@oracle.com>
2064         PR libstdc++/56202
2065         * include/bits/random.tcc (binomial_distribution<>::
2066         _M_waiting(_UniformRandomNumberGenerator&, _IntType)): Avoid
2067         division by zero.
2069 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
2071         Update copyright years.
2072         * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc,
2073         testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc,
2074         testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc,
2075         testsuite/23_containers/deque/requirements/dr438/insert_neg.cc,
2076         testsuite/23_containers/list/requirements/dr438/assign_neg.cc,
2077         testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc,
2078         testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc,
2079         testsuite/23_containers/list/requirements/dr438/insert_neg.cc,
2080         testsuite/23_containers/vector/requirements/dr438/assign_neg.cc,
2081         testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc,
2082         testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc,
2083         testsuite/23_containers/vector/requirements/dr438/insert_neg.cc,
2084         testsuite/29_atomics/atomic/cons/assign_neg.cc,
2085         testsuite/29_atomics/atomic/cons/copy_neg.cc,
2086         testsuite/29_atomics/atomic_integral/cons/assign_neg.cc,
2087         testsuite/29_atomics/atomic_integral/cons/copy_neg.cc,
2088         testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc,
2089         testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc,
2090         testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2091         Update lines in dg error matches.
2093 2013-02-03  Richard Sandiford  <rdsandiford@googlemail.com>
2095         * config/os/mingw32/ctype_inline.h: Fix copyright typo.
2097 2013-02-01  François Dumont  <fdumont@gcc.gnu.org>
2099         * include/bits/hashtable_policy.h
2100         (_Prime_rehash_policy::_M_next_bkt)
2101         (_Prime_rehash_policy::_M_need_rehash): Move definition...
2102         * src/c++11/hashtable_c++0x.cc: ... here.
2103         * src/shared/hashtable-aux.cc: Remove c++config.h include.
2104         * config/abi/gnu.ver (GLIBCXX_3.4.18): Export _Prime_rehash_policy
2105         symbols.
2107 2013-01-29  Jason Merrill  <jason@redhat.com>
2109         PR libstdc++/54314
2110         * config/abi/pre/gnu.ver: Don't export construction vtables.
2111         * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
2113 2013-01-28  Jonathan Wakely  <jwakely.gcc@gmail.com>
2115         PR libstdc++/56112
2116         * include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
2117         to construct value_type explicitly before trying to extract the key.
2118         * testsuite/23_containers/unordered_map/cons/56112.cc: New.
2120 2013-01-28  François Dumont  <fdumont@gcc.gnu.org>
2122         * include/bits/hashtable_policy.h (_Local_iterator_base): Use
2123         _Hashtable_ebo_helper to embed functors into the local_iterator
2124         when necessary. Pass information about functors involved in hash
2125         code by copy.
2126         * include/bits/hashtable.h (__cache_default): Do not cache for
2127         builtin integral types unless the hash functor is not noexcept
2128         qualified or is not default constructible. Adapt static assertions
2129         and local iterator instantiations.
2130         * include/debug/unordered_set
2131         (std::__debug::unordered_set<>::erase): Detect local iterators to
2132         invalidate using contained node rather than generating a dummy
2133         local_iterator instance.
2134         (std::__debug::unordered_multiset<>::erase): Likewise.
2135         * include/debug/unordered_map
2136         (std::__debug::unordered_map<>::erase): Likewise.
2137         (std::__debug::unordered_multimap<>::erase): Likewise.
2138         * testsuite/performance/23_containers/insert_erase/41975.cc: Test
2139         std::tr1 and std versions of unordered_set regardless of any
2140         macro. Add test on default cache behavior.
2141         * testsuite/performance/23_containers/insert/54075.cc: Likewise.
2142         * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2143         Adapt line number.
2144         * testsuite/23_containers/unordered_set/
2145         not_default_constructible_hash_neg.cc: New.
2146         * testsuite/23_containers/unordered_set/buckets/swap.cc: New.
2148 2013-01-24  Paolo Carlini  <paolo.carlini@oracle.com>
2150         PR libstdc++/56085
2151         * include/std/complex (pow(const complex<>&, int)): Avoid __n
2152         signed overflow.
2154 2013-01-22  Jakub Jelinek  <jakub@redhat.com>
2156         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2157         Tightten scan-assembler-times regexps, add dg-additional-options for
2158         ia32, add -g0 -fno-exceptions -fno-asynchronous-unwind-tables to
2159         dg-options.
2161 2013-01-12  Andi Kleen  <ak@linux.intel.com>
2162             Jonathan Wakely  <jwakely.gcc@gmail.com>
2164         PR libstdc++/55233
2165         * include/bits/atomic_base.h (__memory_order_modifier): Add
2166         __memory_order_mask, __memory_order_modifier_mask,
2167         __memory_order_hle_acquire, __memory_order_hle_release.
2168         (operator|,operator&): Add.
2169         (__cmpexch_failure_order):  Rename to __cmpexch_failure_order2.
2170         (__cmpexch_failure_order): Add.
2171         (clear, store, load, compare_exchange_weak, compare_exchange_strong):
2172         Handle flags.
2173         * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc:
2174         Add.
2176 2013-01-19  Jonathan Wakely  <jwakely.gcc@gmail.com>
2178         PR libstdc++/55861
2179         * include/std/future (_State_base::_S_check(const shared_ptr<T>&)):
2180         Fix return type.
2181         (__basic_future::_M_get_result()): Const qualify.
2182         (shared_future::get()): Likewise.
2183         * testsuite/30_threads/shared_future/members/get.cc: Use const
2184         objects.
2186 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2188         PR libstdc++/55043 (again)
2189         * include/bits/alloc_traits.h (allocator_traits::construct): Disable
2190         unless construction would be well-formed.
2191         (__allow_copy_cons, __check_copy_constructible): Define.
2192         * include/bits/unordered_map.h (__check_copy_constructible): Use as
2193         base class so copy constructor will be deleted if appropriate.
2194         (is_copy_constructible): Remove specialization.
2195         * include/bits/unordered_set.h: Likewise.
2196         * include/debug/unordered_map.h: Undo previous commit. Default copy
2197         and move constructors.
2198         * include/debug/unordered_set.h: Likewise.
2199         * include/profile/unordered_map.h: Undo previous commit.
2200         * include/profile/unordered_set.h: Likewise.
2201         * testsuite/23_containers/unordered_map/55043.cc: Fix test.
2202         * testsuite/23_containers/unordered_multimap/55043.cc: Likewise.
2203         * testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
2204         * testsuite/23_containers/unordered_set/55043.cc: Likewise.
2205         * testsuite/23_containers/unordered_map/requirements/53339.cc: XFAIL,
2206         cannot support incomplete types.
2207         * testsuite/23_containers/unordered_multimap/requirements/53339.cc:
2208         Likewise.
2210 2013-01-16  Jonathan Wakely  <jwakely.gcc@gmail.com>
2212         PR libstdc++/55043
2213         * include/std/unordered_map: Include alloc_traits.h
2214         * include/std/unordered_set: Likewise.
2215         * include/bits/alloc_traits.h: Define __is_copy_insertable.
2216         * include/bits/unordered_map.h: Use it.
2217         * include/bits/unordered_set.h: Likewise.
2218         * include/debug/unordered_map.h: Likewise.
2219         * include/debug/unordered_set.h: Likewise.
2220         * include/profile/unordered_map.h: Likewise.
2221         * include/profile/unordered_set.h: Likewise.
2222         * include/bits/hashtable.h: Fix comment typos.
2223         * testsuite/23_containers/unordered_map/55043.cc: New.
2224         * testsuite/23_containers/unordered_multimap/55043.cc: New.
2225         * testsuite/23_containers/unordered_multiset/55043.cc: New.
2226         * testsuite/23_containers/unordered_set/55043.cc: New.
2228 2013-01-03  Janis Johnson  <janisjo@codesourcery.com>
2230         * testsuite/lib/gdb-test.exp (gdb_batch_check): Catch error running
2231         gdb command.
2233 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2235         * doc/xml/manual/status_cxx2011.xml: Document that N3189 is missing.
2237 2013-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>
2239         PR libstdc++/55908
2240         * include/std/functional (_Mem_fn::operator()): Fix constraints to
2241         avoid ambiguity.
2242         * testsuite/20_util/function_objects/mem_fn/55908.cc: New.
2243         * testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
2245 2013-01-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2247         PR libstdc++/55594
2248         * acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Restrict test to
2249         Solaris targets.
2250         * configure: Regenerate.
2252 2013-01-07  Jonathan Wakely  <jwakely.gcc@gmail.com>
2254         PR libstdc++/55847
2255         * src/c++11/shared_ptr.cc (bad_weak_ptr::what()): Correct string.
2256         * testsuite/20_util/shared_ptr/cons/weak_ptr_expired.cc: Verify
2257         string.
2259         PR libstdc++/55728
2260         * include/std/functional (bad_function_call::what()): Declare.
2261         * src/c++11/functional.cc (bad_function_call::what()): Define.
2262         * config/abi/pre/gnu.ver (bad_function_call::what()): Export.
2263         * testsuite/20_util/bad_function_call/what.cc: New.
2265 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2267         * include/bits/unordered_map.h: Fix typo in comments.
2268         * doc/xml/manual/status_cxx2011.xml: Add implementation-defined bucket
2269         counts for unordered associative containers.
2271 2013-01-06  Jonathan Wakely  <jwakely.gcc@gmail.com>
2273         * doc/xml/manual/abi.xml: Update library and symbol versions.
2275 2013-01-06  Richard Sandiford  <rdsandiford@googlemail.com>
2277         * include/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp: Fix typo
2278         in copyright years.
2279         * testsuite/22_locale/time_get/get_weekday/wchar_t/3.cc: Likewise.
2282 Copyright (C) 2013 Free Software Foundation, Inc.
2284 Copying and distribution of this file, with or without modification,
2285 are permitted in any medium without royalty provided the copyright
2286 notice and this notice are preserved.