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