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