]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
status_cxx2011.xml: Update.
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
75c3de1e
JW
12014-10-09 Jonathan Wakely <jwakely@redhat.com>
2
3 * doc/xml/manual/status_cxx2011.xml: Update.
4 * doc/html/manual/status.html: Regenerate.
5
f5e523b7
VV
62014-10-09 Ville Voutilainen <ville.voutilainen@gmail.com>
7
8 PR libstdc++/60132
9 * include/std/type_traits (is_trivially_copyable,
10 is_trivially_constructible, is_trivially_default_constructible,
11 is_trivially_copy_constructible, is_trivially_move_constructible,
12 is_trivially_assignable, is_trivially_copy_assignable,
13 is_trivially_move_assignable): New.
14 * testsuite/20_util/is_trivially_assignable/requirements/
15 typedefs.cc: Likewise.
16 * testsuite/20_util/is_trivially_assignable/requirements/
17 explicit_instantiation.cc: Likewise.
18 * testsuite/20_util/is_trivially_assignable/value.cc: Likewise.
19 * testsuite/20_util/is_trivially_constructible/requirements/
20 typedefs.cc: Likewise.
21 * testsuite/20_util/is_trivially_constructible/requirements/
22 explicit_instantiation.cc: Likewise.
23 * testsuite/20_util/is_trivially_constructible/value.cc: Likewise.
24 * testsuite/20_util/is_trivially_copyable/requirements/
25 typedefs.cc: Likewise.
26 * testsuite/20_util/is_trivially_copyable/requirements/
27 explicit_instantiation.cc: Likewise.
28 * testsuite/20_util/is_trivially_copyable/value.cc: Likewise.
29 * testsuite/20_util/is_trivially_copy_assignable/requirements/
30 typedefs.cc: Likewise.
31 * testsuite/20_util/is_trivially_copy_assignable/requirements/
32 explicit_instantiation.cc: Likewise.
33 * testsuite/20_util/is_trivially_copy_assignable/value.cc: Likewise.
34 * testsuite/20_util/is_trivially_copy_constructible/requirements/
35 typedefs.cc: Likewise.
36 * testsuite/20_util/is_trivially_copy_constructible/requirements/
37 explicit_instantiation.cc: Likewise.
38 * testsuite/20_util/is_trivially_copy_constructible/value.cc: Likewise.
39 * testsuite/20_util/is_trivially_default_constructible/requirements/
40 typedefs.cc: Likewise.
41 * testsuite/20_util/is_trivially_default_constructible/requirements/
42 explicit_instantiation.cc: Likewise.
43 * testsuite/20_util/is_trivially_default_constructible/
44 value.cc: Likewise.
45 * testsuite/20_util/is_trivially_move_assignable/requirements/
46 typedefs.cc: Likewise.
47 * testsuite/20_util/is_trivially_move_assignable/requirements/
48 explicit_instantiation.cc: Likewise.
49 * testsuite/20_util/is_trivially_move_assignable/value.cc: Likewise.
50 * testsuite/20_util/is_trivially_move_constructible/requirements/
51 typedefs.cc: Likewise.
52 * testsuite/20_util/is_trivially_move_constructible/requirements/
53 explicit_instantiation.cc: Likewise.
54 * testsuite/20_util/is_trivially_move_constructible/value.cc:
55 Likewise.
56 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
57 line number.
58 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
59 Likewise.
60 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
61 Likewise.
62
9d07d890
JW
632014-10-08 Jonathan Wakely <jwakely@redhat.com>
64
65 * include/bits/locale_facets.tcc (num_put::_M_insert_float): Do not
66 pass precision when using hexfloat format.
67 * src/c++98/locale_facets.cc (__num_base::_S_format_float): Always
68 output precision if C99 hexfloat conversion specifiers not available.
69
7dd9b46d
JW
702014-10-08 Jonathan Wakely <jwakely@redhat.com>
71
72 * include/bits/regex.h (regex_token_iterator::_M_end_of_seq): Add
73 const qualifier.
74
43ee3d5f
FD
752014-10-07 François Dumont <fdumont@gcc.gnu.org>
76
77 * testsuite/util/testsuite_counter_type.h
78 (counter_type::operator<(const counter_type&)): Update
79 less_compare_count.
80 * testsuite/25_algorithms/make_heap/complexity.cc: New.
81 * testsuite/25_algorithms/pop_heap/complexity.cc: New.
82 * testsuite/25_algorithms/push_heap/complexity.cc: New.
83 * testsuite/25_algorithms/sort_heap/complexity.cc: New.
84
c4b64f5b
RS
852014-10-06 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
86 Jonathan Wakely <jwakely@redhat.com>
87
88 PR libstdc++/59987
89 * doc/xml/manual/status_cxx2011.xml: Remove hexfloat from notes.
90 * doc/html/manual/status.html: Regenerate.
91 * include/bits/ios_base.h (hexfloat): New function.
92 (defaultfloat): New function.
93 * src/c++98/locale_facets.cc (__num_base::_S_format_float): Support
94 hexadecimal floating point format.
95 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
96 New file.
97
22274fac
JW
982014-10-06 Jonathan Wakely <jwakely@redhat.com>
99
100 * include/Makefile.am: Add new header.
101 * include/Makefile.in: Regenerate.
102 * include/experimental/tuple: New
103 * doc/xml/manual/status_cxx2014.xml: Update.
104 * doc/html/manual/status.html: Regenerate.
105 * testsuite/experimental/feat-lib-fund.cc: Test for new header.
106 * testsuite/experimental/tuple/apply.cc: New.
107
e6fb44d8
FD
1082014-10-05 François Dumont <fdumont@gcc.gnu.org>
109
110 PR libstdc++/63456
111 * include/bits/hashtable.h (_M_uses_single_bucket(__bucket_type*)): Test
112 the parameter.
113 * testsuite/23_containers/unordered_set/63456.cc: New.
114
97932329
JW
1152014-10-03 Jonathan Wakely <jwakely@redhat.com>
116
117 PR libstdc++/63449
118 * doc/xml/manual/containers.xml: Remove outdated section.
119 * doc/html/*: Regenerate.
120
d17f7d8a
JW
1212014-10-02 Jonathan Wakely <jwakely@redhat.com>
122
123 * include/c_global/ctgmath: Include <complex>.
124 * testsuite/26_numerics/headers/ctgmath/complex.cc: New.
125 * doc/xml/manual/status_cxx2011.xml: Update.
126 * doc/html/manual/status.html: Regenerate.
127
f65eb9e6
ESR
1282014-10-02 Edward Smith-Rowland <3dw4rd@verizon.net>
129
130 * include/bits/stl_function.h: Generic associative lookup feature
131 is not supported.
132 * testsuite/experimental/feat-lib-fund.cc: <experimental/any> is
133 actually available.
134 * testsuite/experimental/feat-cxx14.cc: Add test for __cpp_lib_is_final.
135 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
136 * testsuite/20_util/duration/literals/range.cc: Adjust.
137 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
138 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
139 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
140 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
141 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
142 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
143 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
144 Adjust.
145
4681f595
FD
1462014-10-01 François Dumont <fdumont@gcc.gnu.org>
147
148 * python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter.to_string):
149 Adapt to latest modifications on debug iterators.
150
4db7fcb9
ESR
1512014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
152
153 * include/std/type_traits: Add is_final<> type trait for C++14.
4681f595 154 * testsuite/util/testsuite_tr1.h: Add
4db7fcb9
ESR
155 * testsuite/20_util/is_final/requirements/
156 explicit_instantiation.cc: New.
157 * testsuite/20_util/is_final/requirements/typedefs.cc: New.
158 * testsuite/20_util/is_final/value.cc: New.
159 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
160 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
161 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
162
a15f7cb8
ESR
1632014-10-01 Edward Smith-Rowland <3dw4rd@verizon.net>
164
165 Implement SD-6: SG10 Feature Test Recommendations
166 * include/bits/basic_string.h: Add __cpp_lib feature test macro.
167 * include/bits/stl_algobase.h: Ditto.
168 * include/bits/stl_function.h: Ditto.
169 * include/bits/unique_ptr.h: Ditto.
170 * include/std/chrono: Ditto.
171 * include/std/complex: Ditto.
172 * include/std/iomanip: Ditto.
173 * include/std/shared_mutex: Ditto.
174 * include/std/tuple: Ditto.
175 * include/std/type_traits: Ditto.
176 * include/std/utility: Ditto.
177 * testsuite/experimental/feat-cxx14.cc: New.
178 * testsuite/experimental/feat-lib-fund.cc: New.
179 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
180 * testsuite/20_util/duration/literals/range.cc: Adjust.
181 * testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
182 * testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
183 * testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
184 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
185 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
186 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
187 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
188 Adjust.
189
b073d15f
SCR
1902014-09-30 Siva Chandra Reddy <sivachandra@google.com>
191
192 * python/hook.in: Only import libstdcxx.v6.
193 * python/libstdcxx/v6/__init__.py: Load printers and xmethods.
194
24f21354
JW
1952014-09-30 Jonathan Wakely <jwakely@redhat.com>
196
197 * doc/xml/manual/status_cxx2011.xml: Update.
198 * doc/html/manual/status.html: Regenerate.
199
2529c937
AS
2002014-09-30 Andreas Schwab <schwab@linux-m68k.org>
201
ff5fdf67
AS
202 * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: New
203 file.
204
2529c937
AS
205 * configure.host (abi_baseline_pair): If try_cpu is generic use
206 host_cpu for the default.
207
ebd4c354
FD
2082014-09-29 François Dumont <fdumont@gcc.gnu.org>
209
210 PR libstdc++/62313
211 * include/debug/safe_base.h
212 (_Safe_iterator_base(const _Safe_iterator_base&)): Delete declaration.
213 (_Safe_iterator_base& operator=(const _Safe_iterator_base&)): Likewise.
214 * include/debug/safe_iterator.h (_Safe_iterator<>): Move normal iterator
215 before _Safe_iterator_base in memory. Lock before modifying the iterator
216 in numerous places.
217 * include/debug/safe_local_iterator.h
218 (_Safe_local_iterator_base(const _Safe_local_iterator_base&)): Delete
219 declaration.
220 (_Safe_local_iterator_base& operator=(const _Safe_local_iterator_base&)):
221 Likewise.
222 * include/debug/safe_unordered_base.h (_Safe_local_iterator<>): Move
223 normal iterator before _Safe_iterator_base in memory. Lock before
224 modifying the iterator in numerous places.
225 * include/debug/forward_list (_Safe_forward_list<>::_M_swap_aux): Adapt.
226 * include/debug/safe_sequence.tcc
227 (_Safe_sequence<>::_M_transfer_from_if): Adapt.
228
e51cf2f5
JW
2292014-09-25 Jonathan Wakely <jwakely@redhat.com>
230
231 DR 1339
232 * doc/xml/manual/status_cxx2011.xml: Update.
233 * include/bits/stl_uninitialized.h (uninitialized_fill_n): Return
234 an iterator.
235 (__uninitialized_fill_n_a, __uninitialized_default_n_a): Likewise.
236 * include/bits/stl_vector.h (vector::_M_fill_initialize,
237 vector::_M_default_initialize): Use returned iterator.
238 * include/bits/vector.tcc (vector::_M_fill_assign,
239 vector::_M_fill_insert, vector::_M_default_append): Likewise.
240 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
241 16505.cc: Adjust return type.
242 * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
243 dr1339.cc: New.
244
c5b26147
JW
2452014-09-25 Jonathan Wakely <jwakely@redhat.com>
246
247 * include/bits/vector.tcc (vector::_M_fill_assign): Use _M_swap_data.
248
7569cc57
JW
2492014-09-25 Jonathan Wakely <jwakely@redhat.com>
250
251 * testsuite/27_io/basic_ios/conv/bool_neg.cc: New.
252 * testsuite/27_io/basic_ios/conv/bool.cc: New.
253 * testsuite/27_io/basic_ios/conv/voidptr.cc: New.
254
75517610
JW
255 * testsuite/27_io/basic_ios/conv/bool_neg.cc: Add dg-do compile.
256
2bde8cac
TS
2572014-09-25 Tim Shen <timshen@google.com>
258
259 PR libstdc++/63199
260 * include/bits/regex.h (basic_regex::basic_regex, basic_regex::assign,
261 basic_regex::imbue, basic_regex::getloc, basic_regex::swap): Add
262 _M_loc for basic_regex.
263 * include/bits/regex_automaton.h: Add _M_traits for _NFA.
264 * include/bits/regex_compiler.h (_Compiler::_M_get_nfa, __compile_nfa):
265 Make _Compiler::_M_nfa heap allocated.
266 * include/bits/regex_compiler.tcc (_Compiler::_Compiler): Make
267 _Compiler::_M_nfa heap allocated.
268 * include/bits/regex_executor.h (_Executor::_M_is_word):
269 Fix accessing _M_traits.
270 * include/bits/regex_executor.tcc (_Executor::_M_dfs):
271 Fix accessing _M_traits.
272 * testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/63199.cc:
273 New testcase.
274
407f9471
JW
2752014-09-24 Jonathan Wakely <jwakely@redhat.com>
276
277 * config/abi/pre/gnu.ver: Make GLIBCXX_3.4 patterns stricter so the
278 new GLIBCXX_3.4.21 symbols don't match them.
279
2d578726
JW
280 PR libstdc++/56193
281 * config/abi/pre/gnu.ver: Add new exports.
282 * include/bits/basic_ios.h (basic_ios::operator bool): Define.
283 * src/c++98/ios_locale.cc (basic_ios::operator void*): Instantiate.
284
c6195f58
FD
2852014-09-24 François Dumont <fdumont@gcc.gnu.org>
286
287 PR libstdc++/29988
288 * include/bits/stl_tree.h (_Rb_tree_reuse_or_alloc_node<>): New.
289 (_Rb_tree_alloc_node<>): New.
290 (_Rb_tree<>::operator=(_Rb_tree<>&&)): New.
291 (_Rb_tree<>::_M_assign_unique): New.
292 (_Rb_tree<>::_M_assign_equal): New.
293 (_Rb_tree<>): Adapt to reuse allocated nodes as much as possible.
294 * include/bits/stl_map.h
295 (std::map<>::operator=(std::map<>&&)): Default implementation.
296 (std::map<>::operator=(initializer_list<>)): Adapt to use
297 _Rb_tree::_M_assign_unique.
298 * include/bits/stl_multimap.h
299 (std::multimap<>::operator=(std::multimap<>&&)): Default implementation.
300 (std::multimap<>::operator=(initializer_list<>)): Adapt to use
301 _Rb_tree::_M_assign_equal.
302 * include/bits/stl_set.h
303 (std::set<>::operator=(std::set<>&&)): Default implementation.
304 (std::set<>::operator=(initializer_list<>)): Adapt to use
305 _Rb_tree::_M_assign_unique.
306 * include/bits/stl_multiset.h
307 (std::multiset<>::operator=(std::multiset<>&&)): Default implementation.
308 (std::multiset<>::operator=(initializer_list<>)): Adapt to use
309 _Rb_tree::_M_assign_equal.
310 * testsuite/23_containers/map/allocator/copy_assign.cc (test03): New.
311 * testsuite/23_containers/map/allocator/init-list.cc: New.
312 * testsuite/23_containers/map/allocator/move_assign.cc (test03): New.
313 * testsuite/23_containers/multimap/allocator/copy_assign.cc
314 (test03): New.
315 * testsuite/23_containers/multimap/allocator/init-list.cc: New.
316 * testsuite/23_containers/multimap/allocator/move_assign.cc
317 (test03): New.
318 * testsuite/23_containers/multiset/allocator/copy_assign.cc
319 (test03): New.
320 * testsuite/23_containers/multiset/allocator/init-list.cc: New.
321 * testsuite/23_containers/multiset/allocator/move_assign.cc
322 (test03): New.
323 * testsuite/23_containers/set/allocator/copy_assign.cc (test03): New.
324 * testsuite/23_containers/set/allocator/init-list.cc: New.
325 * testsuite/23_containers/set/allocator/move_assign.cc (test03): New.
326
8d6b3c16
JW
3272014-09-24 Jonathan Wakely <jwakely@redhat.com>
328
329 PR libstdc++/63353
330 * src/c++11/ios.cc (ios_base::_M_swap): Fix typo.
331
48e968a7
JW
3322014-09-23 Jonathan Wakely <jwakely@redhat.com>
333
334 * config/abi/pre/gnu.ver: Adjust basic_ostream exports.
335 * include/std/istream (basic_iostream(basic_iostream&&)): Pass *this
336 to ostream constructor.
337 * include/std/ostream (basic_ostream(basic_iostream*)): Change to take
338 parameter by reference, to avoid ambiguity.
339 * testsuite/27_io/basic_ostream/cons/char/null.cc: New.
340
2eac0853
JM
3412014-09-22 Jason Merrill <jason@redhat.com>
342
343 * testsuite/Makefile.am (%/site.exp): Add @.
344 (check-DEJAGNU): Likewise.
345 * testsuite/Makefile.in: Regenerate.
346
7666d649
JW
3472014-09-22 Jonathan Wakely <jwakely@redhat.com>
348
349 * include/bits/stl_queue.h: Include missing header.
350 * include/bits/stl_stack.h: Likewise.
351 * testsuite/23_containers/priority_queue/requirements/
352 uses_allocator.cc: New.
353 * testsuite/23_containers/queue/requirements/uses_allocator.cc: New.
354 * testsuite/23_containers/stack/requirements/uses_allocator.cc: New.
355
bd0a790a
JW
3562014-09-22 Jonathan Wakely <jwakely@redhat.com>
357
358 * doc/xml/manual/status_cxx2011.xml: Update C++11 status.
359 * doc/xml/manual/status_cxx2014.xml: Update TS status.
360 * doc/html/manual/status.html: Regenerate.
361
726d3136
JW
3622014-09-22 Jonathan Wakely <jwakely@redhat.com>
363
364 * include/std/mutex (try_lock): Do not swallow exceptions.
365 * testsuite/30_threads/try_lock/4.cc: Fix test.
366
ed26fe9e 3672014-09-22 Jonathan Wakely <jwakely@redhat.com>
9b817548
JW
368
369 PR libstdc++/54316
370 PR libstdc++/53626
371 * config/abi/pre/gnu.ver: Add new exports.
372 * config/io/basic_file_stdio.h (__basic_file): Support moving and
373 swapping.
374 * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap):
375 Likewise.
376 * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap):
377 Likewise.
378 * include/bits/fstream.tcc (basic_filebuf): Likewise.
379 * include/bits/move.h (__exchange): Define for C++11 mode.
380 * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and
381 swapping.
382 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise.
383 * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream,
384 basic_fstream): Likewise.
385 * include/std/ios: Remove whitespace.
386 * include/std/istream (basic_istream, basic_iostream): Support moving
387 and swapping.
388 * include/std/ostream (basic_ostream): Likewise.
389 * include/std/sstream (basic_stringbuf, basic_istringstream,
390 basic_ostringstream, basic_stringstream): Likewise.
391 * include/std/streambuf (basic_streambuf): Do not default copy
392 constructor and assignment on first declaration.
393 * include/std/utility (exchange): Forward to __exchange.
394 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
395 * src/c++11/Makefile.am: Add stream-related files.
396 * src/c++11/Makefile.in: Regenerate.
397 * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf):
398 New file for explicit instantiation definitions.
399 * src/c++11/ios.cc: Move from src/c++98 to here.
400 (ios_base::_M_move, ios_base::_M_swap): Define.
401 * src/c++11/ios-inst.cc: Move from src/c++98 to here.
402 * src/c++11/iostream-inst.cc: Likewise.
403 * src/c++11/istream-inst.cc: Likewise.
404 * src/c++11/ostream-inst.cc: Likewise.
405 * src/c++11/sstream-inst.cc: Likewise.
406 * src/c++11/streambuf-inst.cc: Likewise.
407 * src/c++98/Makefile.am: Remove stream-related files.
408 * src/c++98/Makefile.in: Regenerate.
409 * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit
410 instantiations.
411 * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise.
412 * src/c++98/ios-inst.cc: Move to src/c++11/.
413 * src/c++98/ios.cc: Move to src/c++11/.
414 * src/c++98/iostream-inst.cc: Likewise.
415 * src/c++98/istream-inst.cc: Likewise.
416 * src/c++98/ostream-inst.cc: Likewise.
417 * src/c++98/sstream-inst.cc: Likewise.
418 * src/c++98/streambuf-inst.cc: Likewise.
419 * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New.
420 * testsuite/27_io/basic_fstream/cons/move.cc: New.
421 * testsuite/27_io/basic_fstream/assign/1.cc: New.
422 * testsuite/27_io/basic_ifstream/cons/move.cc: New.
423 * testsuite/27_io/basic_ifstream/assign/1.cc: New.
424 * testsuite/27_io/basic_istringstream/assign/1.cc: New.
425 * testsuite/27_io/basic_istringstream/cons/move.cc: New.
426 * testsuite/27_io/basic_ofstream/cons/move.cc: New.
427 * testsuite/27_io/basic_ofstream/assign/1.cc: New.
428 * testsuite/27_io/basic_ostringstream/assign/1.cc: New.
429 * testsuite/27_io/basic_ostringstream/cons/move.cc: New.
430 * testsuite/27_io/basic_stringstream/assign/1.cc: New.
431 * testsuite/27_io/basic_stringstream/cons/move.cc: New.
432
4666e1fb
JM
4332014-09-17 Jason Merrill <jason@redhat.com>
434
435 * libsupc++/dyncast.cc (__dynamic_cast): Handle mid-destruction
436 dynamic_cast more gracefully.
437
717c4789
JJ
4382014-09-15 Jakub Jelinek <jakub@redhat.com>
439
440 * testsuite/Makefile.am (check_p_numbers0, check_p_numbers1,
441 check_p_numbers2, check_p_numbers3, check_p_numbers4,
442 check_p_numbers5, check_p_numbers6, check_p_numbers,
443 check_p_subdirs): New variables.
444 (check_DEJAGNU_normal_targets): Use check_p_subdirs.
445 (check-DEJAGNU): Rewritten so that for parallelized
446 testing each job runs all the *.exp files, with
447 GCC_RUNTEST_PARALLELIZE_DIR set in environment.
448 * testsuite/Makefile.in: Regenerated.
449 * testsuite/lib/libstdc++.exp (gcc_parallel_test_run_p,
450 gcc_parallel_test_enable): New procedures. If
451 GCC_RUNTEST_PARALLELIZE_DIR is set in environment, override
452 runtest_file_p to invoke also gcc_parallel_test_run_p.
453 * testsuite/libstdc++-abi/abi.exp: Run all the tests serially
454 by the first parallel runtest encountering it. Fix up path
455 of the extract_symvers script.
456 * testsuite/libstdc++-xmethods/xmethods.exp: Run all the tests
457 serially by the first parallel runtest encountering it. Run
458 dg-finish even in case of error.
459
4564acc3
JW
4602014-09-15 Jonathan Wakely <jwakely@redhat.com>
461
462 * include/bits/regex.h (basic_regex): Rename _Ch_typeraits template
463 parameters to _Ch_traits.
464
b6f86694
JW
4652014-09-12 Jonathan Wakely <jwakely@redhat.com>
466
467 * include/debug/deque (__gnu_debug::deque): Make base class C++11
468 allocator aware.
469
bc5022d0
JW
4702014-09-12 Jonathan Wakely <jwakely@redhat.com>
471
472 PR libstdc++/59603
473 * include/bits/stl_algo.h (random_shuffle): Prevent self-swapping.
474 * testsuite/25_algorithms/random_shuffle/59603.cc: New.
475
8aed2f2f
JW
4762014-09-11 Jonathan Wakely <jwakely@redhat.com>
477
478 PR libstdc++/63219
479 * include/bits/regex.h (match_results::format): Remove stray template
480 parameter.
481 * include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
482 Remove parameter name to avoid -Wunused-parameter warning.
483 * include/bits/regex_executor.h (_State_info::_State_info): Reorder
484 mem-initializers to avoid -Wreorder warning.
485 * include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
486 Remove parameter name to avoid -Wunused-parameter warning.
487 * include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
488 to avoid -Wempty-body warning when not in debug mode.
489
e9e08827
SCR
4902014-09-10 Siva Chandra Reddy <sivachandra@google.com>
491
492 * python/hook.in: Load the xmethods.
493 * python/Makefile.am (nobase_python_DATA): Add xmethods.py.
494 * python/Makefile.in: Regenerated.
495 * python/libstdcxx/v6/xmethods.py: New file.
496 * testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
497 function.
498 (gdb-test): New optional argument LOAD_XMETHODS. Load xmethods
499 python script if LOAD_XMETHODS is true.
500 * testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
501 * testsuite/libstdc++-xmethods/vector.cc: New file.
502 * testsuite/libstdc++-xmethods/xmethods.exp: New file.
503
0876bdf5
TW
5042014-09-10 Tony Wang <tony.wang@arm.com>
505
506 PR target/56846
507 * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
508 Return with CONTINUE_UNWINDING when the state pattern
509 contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
510
fd18c76a
JW
5112014-09-09 Jonathan Wakely <jwakely@redhat.com>
512
513 * include/bits/deque.tcc (deque::operator=(const deque&)): Handle
514 allocator propagation.
515 (deque::emplace_front, deque::emplace_back): Use allocator traits.
516 (deque::_M_push_back_aux, deque::_M_push_front_aux): Likewise.
517 (deque::_M_pop_back_aux, deque::_M_pop_front_aux): Likewise.
518 * include/bits/stl_deque.h (__deque_buf_size): Add constexpr.
519 (_Deque_iterator): Handle allocators with custom pointers.
520 (_Deque_base): Likewise. Use allocator traits.
521 (deque): Likewise. Add allocator-extended constructors.
522 (deque::_M_move_assign1, deque::_M_move_assign2): Implement move
523 assignment via tag dispatching.
524 (deque::_M_replace_map): Replace existing data.
525 * include/debug/deque (deque): Add allocator-extended constructors.
526 * include/profile/deque (deque): Likewise.
527 * testsuite/23_containers/deque/allocator/copy.cc: New.
528 * testsuite/23_containers/deque/allocator/copy_assign.cc: New.
529 * testsuite/23_containers/deque/allocator/ext_ptr.cc: New.
530 * testsuite/23_containers/deque/allocator/minimal.cc: New.
531 * testsuite/23_containers/deque/allocator/move.cc: New.
532 * testsuite/23_containers/deque/allocator/move_assign-2.cc: New.
533 * testsuite/23_containers/deque/allocator/move_assign.cc: New.
534 * testsuite/23_containers/deque/allocator/noexcept.cc: New.
535 * testsuite/23_containers/deque/allocator/swap.cc: New.
536 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
537 Adjust dg-error line number.
538 * testsuite/23_containers/deque/requirements/dr438/
539 constructor_1_neg.cc: Likewise.
540 * testsuite/23_containers/deque/requirements/dr438/
541 constructor_2_neg.cc: Likewise.
542 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
543 Likewise.
544 * testsuite/23_containers/vector/52591.cc: Test both the propagating
545 and always-equal cases.
546
da27f556
FD
5472014-09-06 François Dumont <fdumont@gcc.gnu.org>
548
549 * include/bits/hashtable_policy.h (_Prime_rehash_policy): Constructor
550 noexcept qualified.
551 (_Hash_code_base<>): All specialization default constructible if
552 possible.
553 (_Hashtable_base<>): Likewise.
554 * include/bits/hashtable.h (_Hashtable<>()): Implementation defaulted.
555 * include/bits/unordered_map.h (unordered_map<>::unordered_map()): New,
556 implementation defaulted.
557 (unordered_multimap<>::unordered_multimap()): Likewise.
558 * include/bits/unordered_set.h
559 (unordered_set<>::unordered_set()): Likewise.
560 (unordered_multiset<>::unordered_multiset()): Likewise.
561 * include/debug/unordered_map: Likewise.
562 * include/debug/unordered_set: Likewise.
563 * testsuite/23_containers/unordered_map/allocator/noexcept.cc
564 (test04()): New.
565 * testsuite/23_containers/unordered_multimap/allocator/noexcept.cc
566 (test04()): New.
567 * testsuite/23_containers/unordered_set/allocator/noexcept.cc
568 (test04()): New.
569 * testsuite/23_containers/unordered_multiset/allocator/noexcept.cc
570 (test04()): New.
571
79c70232
JDA
5722014-08-30 John David Anglin <danglin@gcc.gnu.org>
573
574 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
575
fa794dc6
JW
5762014-08-29 Jonathan Wakely <jwakely@redhat.com>
577
578 * include/std/complex (complex): Define copy constructor and
579 assignment operator as defaulted. Improve Doxygen comments.
580
7d594ac8
JW
5812014-08-28 Jonathan Wakely <jwakely@redhat.com>
582
583 * testsuite/ext/random/*: Fix incorrect standard references in
584 comments.
585
3cd4f356
JW
5862014-08-27 Jonathan Wakely <jwakely@redhat.com>
587
588 PR libstdc++/62159
589 * include/Makefile.am (install-freestanding-headers): Add missing
590 C++11 headers.
591 * include/Makefile.in: Regenerate.
592
31879c2c
TW
5932014-08-21 Tony Wang <tony.wang@arm.com>
594
7e51aabc 595 * testsuite/18_support/nested_exception/62154.cc: Disable when the
31879c2c
TW
596 target doesn't provide atomic builtins.
597
1ed3ba05 5982014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
7e51aabc 599 Kai Tietz <ktietz@redhat.com>
1ed3ba05
YS
600
601 * config/os/mingw32-w64/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
602 Define.
603 * config/os/newlib/os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32):
604 Ditto.
605 * libsupc++/atexit_thread.cc [_GLIBCXX_THREAD_ATEXIT_WIN32]:
606 #include <windows.h>.
607 (struct elt): Add dll member.
608 (run): Decrement dll refcount.
609 (__cxxabiv1::__cxa_thread_atexit): Increment dll refcount.
610
2ce8cb99
JW
6112014-08-15 Jonathan Wakely <jwakely@redhat.com>
612
613 PR libstdc++/62154
614 * libsupc++/nested_exception.h (throw_with_nested, rethrow_if_nested):
615 Rewrite to conform to C++11 requirements.
616 * testsuite/18_support/nested_exception/62154.cc: New.
617
e8af7616
MK
6182014-08-14 Matthias Klose <doko@ubuntu.com>
619
620 * testsuite/ext/random/uniform_on_sphere_distribution/requirements:
621 Remove empty directory.
622
215acd2b
PC
6232014-08-14 Paolo Carlini <paolo.carlini@oracle.com>
624
625 * testsuite/26_numerics/random/linear_congruential_engine/
626 requirements/non_uint_neg.cc: Adjust for parser change.
627 * testsuite/tr1/5_numerical_facilities/random/linear_congruential/
628 requirements/non_uint_neg.cc: Likewise.
629
c6b3f349
JW
6302014-08-13 Jonathan Wakely <jwakely@redhat.com>
631
632 PR libstdc++/61841
633 * include/std/thread (thread::_M_start_thread): Declare new overload.
634 (thread::thread<_Callable, _Args...>): Call new overload with an
635 explicit reference to pthread_create.
636 * src/c++11/thread.cc (thread::_M_start_thread): Add new overload.
637 * config/abi/pre/gnu.ver: Export new function.
638
af1e0152 6392014-08-13 Sylvestre Ledru <sylvestre@debian.org>
07ec1009
SL
640
641 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
642
429e4fde
PC
6432014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
644
645 * Fix thinko in the last commit.
646
a3ee8851
PC
6472014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
648
649 PR libstdc++/62118
650 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
651 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
652
19173661
JW
6532014-08-12 Jonathan Wakely <jwakely@redhat.com>
654
655 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
656 and add overloads for rvalue streams.
657 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
658 New.
659 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
660 New.
661
caff45a6
JW
662 * include/bits/basic_string.h (getline): Declare inline.
663
83a4216d
UD
6642014-08-09 Ulrich Drepper <drepper@gmail.com>
665
666 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
667 (uniform_on_sphere_distribution::operator()): Use the new helper
668 class for the implementation.
669
670 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
671 equal.cc: Remove bogus part of comment.
672 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
673 inequal.cc: Likewise.
674 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
675 serialize.cc: Add check to verify result of serialzation and
676 deserialization.
677 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
678 generate.cc: New file.
679
42ee80b9 6802014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
6a6bdc3d
PC
681
682 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
683 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
684
01307898
FD
6852014-08-09 François Dumont <fdumont@gcc.gnu.org>
686
687 PR libstdc++/61667
688 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
689 _M_need_rehash to initialize the rehash policy and check if a rehash is
690 needed.
691 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
692
d0ef19a0
JW
6932014-08-07 Jonathan Wakely <jwakely@redhat.com>
694
695 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
696 Optimize.
697 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
698 Adjust dg-error line number.
699 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
700 Likewise.
701 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
702 Likewise.
703 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
704 Likewise.
705
4e48c109
JW
706 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
707 _M_do_set.
708 (_State_baseV2::_M_do_set): Change parameters to pointers.
709 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
710 (_State_baseV2::__setter): Initialize _Setter with pointers.
711 (_State_baseV2::__setter(promise<void>*)): Remove overload.
712 (promise::set_value, promise::set_exception): Pass setter directly
713 to _M_set_result.
714 (_State_baseV2::_Task_setter): Add template parameter for callable
715 type and replace std::function member with pointer to that type.
716 Change _M_result member from reference to pointer.
717 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
718 and initialize _Task_setter with pointers.
719 (__location_invariant): Specialize for _Setter and _Task_setter.
720
db0b7db3
JW
721 * include/std/future (__location_invariant): Move specializations
722 after preprocessor condition.
723
2821a748
PC
7242014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
725
726 PR c++/15339
727 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
728
a7f930e7
ZT
7292014-08-01 Zifei Tong <zifeitong@gmail.com>
730
731 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
732 _GLIBCXX_ prefix to macro.
733
3e5eda5b
JW
7342014-07-29 Jonathan Wakely <jwakely@redhat.com>
735
736 * python/libstdcxx/v6/printers.py
737 (SingleObjContainerPrinter._contained): Use compatibility mixin.
738
5c7c5f9a
FD
7392014-07-29 François Dumont <fdumont@gcc.gnu.org>
740
741 * testsuite/util/testsuite_allocator.h
742 (tracker_allocator_counter::allocate): Remove new invocation, only
743 collect information.
744 (tracker_allocator_counter::deallocate): Remove delete invocation, only
745 collect information.
746 (check_inconsistent_alloc_value_type): New.
747 (tracker_allocator): Transform as a facade for any allocator type.
748 (uneq_allocator): Likewise.
749 (propagating_allocator): Likewise.
750 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
751 explicitly non propagating allocator.
752 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
753 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
754 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
755 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
756 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
757 Likewise.
758 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
759 Likewise.
760 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
761 Likewise.
762 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
763 Likewise.
764 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
765
aec20dcf
JW
7662014-07-29 Jonathan Wakely <jwakely@redhat.com>
767
768 PR libstdc++/61946
769 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
770 const allocator_type&)): Pass non-const allocator to
771 _S_new_RopeFunction.
772 * testsuite/ext/rope/61946.cc: New.
773
f4081d13
JW
774 PR libstdc++/61947
775 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
776 disambiguate unary constructors.
777 (_Tuple_impl): Pass allocator_arg_t arguments.
778 * testsuite/20_util/tuple/61947.cc: New.
779 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
780
1c4ff014
ESR
7812014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
782
783 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
784 * include/bits/random.h (_Adaptor): static_assert for non floating-point
785 result type.
786 * include/bits/random.tcc (generate_canonical): Ditto.
787 * include/ext/random.tcc (hypergeometric_distribution::operator()):
788 Use double as a rng result type.
789 * testsuite/26_numerics/random/pr60037-neg.cc: New.
790 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
791
a3a2efc1
UB
7922014-07-25 Uros Bizjak <ubizjak@gmail.com>
793
794 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
795
0a9f0ecb
ESR
7962014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
797
798 * include/experimental/string_view: Make the literal operators
799 constexpr like the ctors they call.
800
2e1e91f1
L
8012014-07-23 H.J. Lu <hongjiu.lu@intel.com>
802
803 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
a6eb46e8 804
da03858b
JW
8052014-07-23 Jonathan Wakely <jwakely@redhat.com>
806
807 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
808 to string instead of using gdb.Type.name attribute.
809
773162d7
JW
8102014-07-19 Jonathan Wakely <jwakely@redhat.com>
811
812 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
813 AC_MSG_CHECKING.
814
faf7f829
JW
8152014-07-18 Jonathan Wakely <jwakely@redhat.com>
816
817 PR libstdc++/61835
818 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
819 raw string.
820 (SingleObjContainerPrinter): Check if type printers are in use.
821
026ae646
PC
8222014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
823
824 * include/ext/random: Minor formatting and cosmetic tweaks.
825 (uniform_on_sphere_distribution<>::operator==
826 (const uniform_on_sphere_distribution&,
827 const uniform_on_sphere_distribution&)): Compare the _M_nds.
828 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
829 (operator!=(const uniform_on_sphere_distribution&,
830 const uniform_on_sphere_distribution&)): Adjust.
831 * include/ext/random.tcc: Minor cosmetc tweaks.
832
077aa95e
JW
8332014-07-15 Jonathan Wakely <jwakely@redhat.com>
834
835 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
836 printer for class templates.
837 (register_type_printers): Use TemplateTypePrinter for containers
838 and other class templates with default template arguments.
839 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
840
6f440cce
JW
841 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
842 base class for experimental::any and experimental::optional printers.
843 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
844 New printers for Fundamentals TS types.
845 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
846
4228f932
TS
8472014-07-15 Tim Shen <timshen@google.com>
848
849 PR libstdc++/61720
850 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
851 Clear match queue for next use.
852 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
853
b40d9361
UD
8542014-07-14 Ulrich Drepper <drepper@gmail.com>
855
856 * include/ext/random.tcc: Unfortunately more fixes for
857 operator>> and operator<< for uniform_on_sphere_distribution.
858
5c8efaf2
UD
8592014-07-13 Ulrich Drepper <drepper@gmail.com>
860
861 * include/ext/random.tcc: Fix operator>> and operator<< for
862 uniform_on_sphere_distribution.
863
863a2c7e
UD
8642014-07-12 Ulrich Drepper <drepper@gmail.com>
865
866 * include/ext/random: Add uniform_on_sphere_distribution definition.
867 * include/ext/random.tcc: Add out-of-band member function definitions
868 for uniform_on_sphere_distribution.
869 * testsuite/ext/random/uniform_on_sphere_distribution/
870 cons/default.cc: New file.
871 * testsuite/ext/random/uniform_on_sphere_distribution/
872 operators/equal.cc: New file.
873 * testsuite/ext/random/uniform_on_sphere_distribution/
874 operators/inequal.cc: New file.
875 * testsuite/ext/random/uniform_on_sphere_distribution/
876 operators/serialize.cc: New file.
877
8daac774
ESR
8782014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
879
880 Add the logistic_distribution as an extension.
881 * include/ext/random: Add the logistic_distribution.
882 * include/ext/random.tcc: Add the logistic_distribution.
883 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
884 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
885 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
886 New.
887 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
888 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
889 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
890 New.
891
7cd41cda
SB
8922014-07-11 Samuel Bronson <naesten@gmail.com>
893
894 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
895 instead of insisting that GCC understand -fdiagnostics-color=never
896
f4da031c
SB
897 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
898 list loaded libs.
899
cdd1ba62
SB
9002014-07-11 Samuel Bronson <naesten@gmail.com>
901 Matthias Klose <doko@ubuntu.com>
902
903 PR libstdc++/58962
904 * python/libstdcxx/v6/printers.py: Port to Python 2+3
905 (imap): New compat function.
906 (izip): Likewise.
907 (Iterator): New mixin to allow writing iterators in Python 3 style
908 regardless of which version we're running on.
909 [Python3] (long) New compat alias for "int".
910 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
911
7757d79b
JW
9122014-07-10 Jonathan Wakely <jwakely@redhat.com>
913
914 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
915 tuple members to simplify pretty printing.
916 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
917 construction.
918 * testsuite/experimental/any/cons/4.cc: New.
919
a6ea72bf
JM
9202014-07-09 Jason Merrill <jason@redhat.com>
921
922 PR libstdc++/61728
923 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
924 * libsupc++/tinfo.h: Not here.
925
b3771d3f
JW
9262014-07-08 Jonathan Wakely <jwakely@redhat.com>
927
928 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
929 missing return.
930 * include/experimental/any: Remove unused header.
931 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
932 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
933 * testsuite/util/testsuite_regex.h: Move include guard.
934
5bcb66df
TS
9352014-07-01 Tim Shen <timshen@google.com>
936
05ae5af2 937 PR libstdc++/61601
5bcb66df
TS
938 PR libstdc++/61582
939 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
940 a NFA state limit. If it's exceeded, regex_constants::error_space
941 will be throwed.
942 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
943 map (which is sparse) instead of vector. This reduce n times clones'
944 cost from O(n^2) to O(n).
945 * include/std/regex: Add map dependency.
946 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
947 testcase.
948
ad9ec7b3
TS
9492014-07-01 Tim Shen <timshen@google.com>
950
951 PR libstdc++/61424
952 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
953 not just regex containing back-references.
954 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
955 exchange _M_next and _M_alt for alternative operator,
956 making matching from left to right.
957 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
958 Add position tracking fom DFS.
959 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
960 _Executor<>::_M_dfs): Likewise.
961 * include/bits/regex_scanner.h: Remove unused enum entry.
962 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
963 testcase from PR.
964
5796bf34
JM
9652014-06-30 Jason Merrill <jason@redhat.com>
966
967 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
968 is pure, not inline.
969
de35da36
PC
9702014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
971
972 Revert:
973 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
863a2c7e 974 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
de35da36
PC
975
976 PR libstdc++/61536
977 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
978
979 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
980
981 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
982
90631441
JW
9832014-06-26 Jonathan Wakely <jwakely@redhat.com>
984
985 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
986 parameter type.
987
484dc599
JW
9882014-06-25 Jonathan Wakely <jwakely@redhat.com>
989
990 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
991 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
992 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
993 Likewise.
994 * include/ext/alloc_traits.h: Fix comment.
995
b925bf59
JW
996 * include/Makefile.am: Add new header.
997 * include/Makefile.in: Regenerate.
998 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
999 New RAII utilities for working with allocators.
1000 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
1001 __allocator_type typedef and use new __allocated_ptr type.
1002 (_Sp_counted_ptr_inplace): Likewise.
1003 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
1004 __allocate_guarded to to simplify exception handling.
1005 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
1006 * include/std/future (_Result_alloc::_M_destroy): Likewise.
1007 (_Result_alloc::_S_allocate_result): Likewise.
1008 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
1009 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1010 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
1011 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
1012 with fancy pointer.
1013 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1014
6ab0d680
JW
1015 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
1016 allocator.
1017 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
1018 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
1019
3fa591d4
JW
10202014-06-24 Jonathan Wakely <jwakely@redhat.com>
1021
1022 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
1023 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
1024 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
1025 Remove unused typedef.
1026 (time_get::do_get_monthname): Likewise.
1027 * include/bits/stl_tree.h: Add system_header pragma.
1028 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
1029 redundant const-qualifier.
1030 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
1031 instead of _GLIBCXX_USE_CONSTEXPR.
1032
83387bbd
JW
10332014-06-23 Jonathan Wakely <jwakely@redhat.com>
1034
1035 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
1036 * include/std/chrono (_Checked_integral_constant): Allow zero.
1037 * testsuite/20_util/duration/literals/values.cc: Test non-positive
1038 values and digit separators.
863a2c7e 1039 * include/experimental/any
83387bbd 1040
bb85ec6e
JW
1041 PR libstdc++/61532
1042 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
1043 apply the signed specifier to wchar_t.
1044 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
1045 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
1046 cv-qualifier and size.
1047 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1048 Likewise.
1049
7ce56fc8
JW
1050 * include/experimental/any (any_v1): Rename namespace to
1051 fundamentals_v1. Change string returned by bad_any_cast::what().
1052 * include/experimental/optional (fundamentals_v1): Add namespace.
1053 * include/experimental/string_view (fundamentals_v1): Likewise.
1054 * testsuite/experimental/any/typedefs.cc: New.
1055 * testsuite/experimental/optional/typedefs.cc: New.
1056 * testsuite/experimental/string_view/typedefs.cc: New.
1057
ad4684c2
PC
10582014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
1059 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
1060
1061 PR libstdc++/61536
1062 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
1063
e8043fa6
JW
10642014-06-14 Jonathan Wakely <jwakely@redhat.com>
1065
1066 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
1067 * include/Makefile.am: Add new header.
1068 * include/Makefile.in: Regenerate.
1069 * include/experimental/any: New.
1070 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
1071 constructor.
1072 * testsuite/experimental/any/assign/1.cc: New.
1073 * testsuite/experimental/any/assign/2.cc: New.
1074 * testsuite/experimental/any/cons/1.cc: New.
1075 * testsuite/experimental/any/cons/2.cc: New.
1076 * testsuite/experimental/any/cons/3.cc: New.
1077 * testsuite/experimental/any/misc/any_cast.cc: New.
1078 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
1079 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
1080 * testsuite/experimental/any/misc/swap.cc: New.
1081 * testsuite/experimental/any/modifiers/1.cc: New.
1082 * testsuite/experimental/any/observers/type.cc: New.
1083
00541349
JW
1084 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
1085 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
1086 warnings.
1087 * include/bits/shared_ptr.h (shared_ptr): Likewise.
1088 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
1089 Likewise.
1090 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
1091 Likewise.
1092 * include/parallel/list_partition.h (__parallel::list_partition):
1093 Likewise.
1094 * include/std/iomanip (quoted): Likewise.
1095 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
1096
10d43d2f
JW
1097 * doc/xml/api.xml: Link to more recent API docs.
1098 * include/bits/allocator.h: Fix link in doxygen comment.
1099 * include/bits/char_traits.h: Likewise.
1100 * include/bits/ios_base.h: Likewise.
1101 * include/bits/stl_map.h: Likewise.
1102 * include/bits/stl_multimap.h: Likewise.
1103 * include/bits/stl_multiset.h: Likewise.
1104 * include/bits/stl_set.h: Likewise.
1105 * include/bits/unordered_map.h: Likewise.
1106 * include/bits/unordered_set.h: Likewise.
1107 * include/ext/mt_allocator.h: Likewise.
1108 * include/std/fstream: Likewise.
1109 * include/std/iosfwd: Likewise.
1110 * include/std/ostream: Likewise.
1111 * include/std/sstream: Likewise.
1112 * include/std/streambuf: Likewise.
1113 * doc/html/*: Regenerate.
1114
fb3bc977
JW
1115 * include/experimental/any (any_cast): Combine duplicate doxygen
1116 comments.
1117 * include/experimental/string_view (basic_string_view): Update
1118 doxygen comment.
1119 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
1120 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
1121 (dynamic_bitset): Improve Doxygen comments.
1122 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
1123 comment.
1124
58170a66
MR
11252014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
1126
1127 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
1128 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
1129
060269c4
JW
11302014-06-10 Jonathan Wakely <jwakely@redhat.com>
1131
1132 PR libstdc++/61390
1133 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
1134 (bin_search_tree_traits): Do not redeclare template-parameters.
1135 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
1136
109a3af4
JW
11372014-06-09 Jonathan Wakely <jwakely@redhat.com>
1138
1139 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
1140 parameter for DocBook HTML generation.
1141 * doc/Makefile.in: Regenerate.
1142 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
1143 * doc/xml/faq.xml: Update content and improve formatting.
1144 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
1145 * doc/xml/manual/allocator.xml: Add stable ID attribute.
1146 * doc/xml/manual/bitmap_allocator.xml: Likewise.
1147 * doc/xml/manual/build_hacking.xml: Likewise.
1148 * doc/xml/manual/codecvt.xml: Change URL.
1149 * doc/xml/manual/ctype.xml: Add stable ID attribute.
1150 * doc/xml/manual/debug_mode.xml: Likewise.
1151 * doc/xml/manual/documentation_hacking.xml: Likewise.
1152 * doc/xml/manual/evolution.xml: Likewise.
1153 * doc/xml/manual/extensions.xml: Likewise.
1154 * doc/xml/manual/locale.xml: Likewise.
1155 * doc/xml/manual/messages.xml: Make section id consistent, improve
1156 markup, change URL.
1157 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
1158 * doc/xml/manual/profile_mode.xml: Likewise.
1159 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
1160 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
1161 * doc/xml/manual/status_cxx2011.xml: Likewise.
1162 * doc/xml/manual/status_cxx2014.xml: Likewise.
1163 * doc/xml/manual/status_cxxtr1.xml: Likewise.
1164 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
1165 * doc/xml/manual/using.xml: Likewise.
1166 * doc/html/*: Regenerate.
1167
45b4a796
JW
11682014-06-09 Jonathan Wakely <jwakely@redhat.com>
1169
1170 * include/tr1/beta_function.tcc: Fix spelling of include guard in
1171 comment.
1172
cb90f114
PC
11732014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
1174
1175 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
1176
25608e3a
ESR
11772014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
1178
1179 DR 2344 - std::quoted doesn't respect padding
1180 * include/std/iomanip: Allow for padding in quoted inserters.
1181 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
1182 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
1183
4ac2509b
FD
11842014-06-06 François Dumont <fdumont@gcc.gnu.org>
1185
1186 * testsuite/23_containers/map/operators/1.cc: Simplify test.
1187
f0bb8736
JW
11882014-06-06 Jonathan Wakely <jwakely@redhat.com>
1189
1190 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
1191 code example.
1192 * doc/xml/manual/backwards_compatibility.xml
1193 (backwards.second.stringstreams): Likewise.
1194 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
1195 change of default.
1196 * doc/xml/manual/containers.xml (associative.bitset.type_string):
1197 Replace <quote> in code example.
1198 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
1199 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
1200 fix typos, improve markup.
1201 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
1202 <emphasis> with <replaceable>.
1203 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
1204 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
1205 and remove newlines in string literal.
1206
3c61a5ba
PC
12072014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
1208
1209 DR 1423
1210 PR c++/52174
1211 * testsuite/20_util/is_assignable/value.cc: Update.
1212
315eb4bb
JW
12132014-06-02 Jonathan Wakely <jwakely@redhat.com>
1214
1215 * include/std/condition_variable (condition_variable_any::_Unlock): Do
1216 not swallow __forced_unwind.
1217 * include/std/future (__future_base::_Task_setter): Likewise.
1218 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
1219 promise and rethrow.
1220 * include/std/mutex (try_lock): Likewise.
1221 * testsuite/30_threads/async/forced_unwind.cc: New.
1222 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
1223
097f0bcf
JW
1224 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
1225 members to avoid wasted space when not using a cache.
1226 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
1227 * include/bits/regex_compiler.tcc
1228 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
1229 search on set.
1230 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
1231 New enumeration type to indicate match mode.
1232 (__detail::_Executor::_State_info): New type holding members only
1233 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
1234 unique_ptr<bool[]>.
1235 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
1236 Replace template parameter with run-time function parameter.
1237 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
1238 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
1239 implement DFS and BFS mode.
1240 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
1241 Split implementation into ...
1242 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
1243 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
1244 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
1245 argument instead of template argument.
1246 (__detail::_Executor::_M_dfs): Likewise.
1247 * include/bits/regex_scanner.tcc: Fix typos in comments.
1248 * testsuite/performance/28_regex/range.cc: New.
1249
d3718027
RS
12502014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
1251 Jonathan Wakely <jwakely@redhat.com>
1252
1253 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
1254 helper struct.
1255 (aligned_union): New struct (C++11).
1256 (aligned_union_t): New type alias (C++14).
1257 * doc/xml/manual/status_cxx2011.xml: Update.
1258 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
1259 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1260 line number.
1261
16545743
JW
12622014-06-01 Jonathan Wakely <jwakely@redhat.com>
1263
1264 PR libstdc++/61374
1265 * include/experimental/string_view (operator basic_string): Correct
1266 order of arguments.
1267 (to_string): Replace with member function.
1268 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
1269 allow _M_str to be null.
1270 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
1271 default constructor semantics.
1272 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
1273 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
1274 copyright dates. Remove unused header.
1275 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
1276 Likewise.
1277 * testsuite/experimental/string_view/operations/data/char/1.cc:
1278 Fix copyright dates. Adjust to new default constructor semantics.
1279 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
1280 Likewise.
1281 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
1282
314efb66
JW
1283 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
1284 (__uses_allocator_arg): Remove unused type.
1285 (__uses_alloc0): Turn into a trivial type.
1286 (__uses_alloc): Add missing template parameter in primary template.
1287 (__uses_alloc_impl): Rename to __uses_alloc_t.
1288
29f09521
JW
12892014-05-30 Jonathan Wakely <jwakely@redhat.com>
1290
1291 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
1292 work with previous versions of Tcl.
1293
2c936344
JW
1294 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
1295 Benjamin's old email address.
1296
8e43535e
JW
1297 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
1298 Paolo's address too.
1299
710d672b
JW
13002014-05-29 Jonathan Wakely <jwakely@redhat.com>
1301
1302 * include/tr2/bool_set: Use UTF-8 for accented characters.
1303 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
1304 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
1305 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
1306
ecb249dd
JW
13072014-05-27 Jonathan Wakely <jwakely@redhat.com>
1308
1309 PR libstdc++/61329
1310 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
1311 inline specifier.
1312 (_State_base::_M_dot): Likewise.
1313
171fa27e
PC
13142014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
1315
1316 * include/profile/map.h: Fix typo in comment; minor formatting fix.
1317 * include/profile/multimap.h: Likewise.
1318 * include/profile/set.h: Likewise.
1319 * include/profile/multiset.h: Likewise.
1320
f3de79d4
FD
13212014-05-24 François Dumont <fdumont@gcc.gnu.org>
1322
1323 * include/profile/array: Clean useless white chars.
1324 * include/profile/base.h: Likewise.
1325 * include/profile/iterator_tracker.h: Likewise.
1326 * include/profile/bitset: Code cleanup and remove not instrumented code.
1327 * include/profile/deque: Likewise.
1328 * include/profile/forward_list: Likewise.
1329 * include/profile/list (std::__profile::_List_profile<>): New.
1330 (std::__profile::list<>): Inherit from latter and adapt.
1331 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
1332 advise to match any ordered to unordered container conversion.
1333 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
1334 New.
1335 * include/Makefile.am: Add latter.
1336 * include/Makefile.in: Regenerate.
1337 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
1338 remove not instrumented code.
1339 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
1340 * include/profile/set.h (std::__profile::set<>): Likewise.
1341 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
1342 * include/profile/unordered_base.h: Add some line feed.
1343 * include/profile/unordered_map: Clean useless white chars and replace
1344 spaces with tabs.
1345 * include/profile/unordered_set: Likewise.
1346 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
1347 (std::__profile::_Vector_profile_post<>): New.
1348 (std::__profile::vector<>): Inherit from latter and adapt.
1349
75a8a745
JW
13502014-05-23 Jonathan Wakely <jwakely@redhat.com>
1351
1352 PR libstdc++/60793
1353 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
1354 dragonfly target selector to all tests that run on freebsd.
1355
d90838f9
JW
1356 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
1357 dragonfly.
1358 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
1359 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
1360
cfbe41d0
JW
1361 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
1362 selector.
1363 * testsuite/30_threads/call_once/60497.cc: Likewise.
1364 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
1365 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
1366 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
1367 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
1368 * testsuite/30_threads/promise/60966.cc: Likewise.
1369 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
1370 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
1371 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
1372 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
1373 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
1374 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
1375 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
1376 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
1377 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
1378 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
1379 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
1380 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
1381 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
1382 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
1383 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
1384 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
1385 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
1386
95539f21
FD
13872014-05-21 François Dumont <fdumont@gcc.gnu.org>
1388
1389 PR libstdc++/61143
1390 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
1391 usable state.
1392 * testsuite/23_containers/unordered_set/61143.cc: New.
1393 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
1394
21e2806a
JW
13952014-05-21 Jonathan Wakely <jwakely@redhat.com>
1396
1397 PR libstdc++/61269
1398 * include/std/type_traits: Move include outside namespace std.
1399 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
1400 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
1401 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1402 Likewise.
1403
ab65e21a
JW
1404 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
1405 Fix warning.
1406
dbed5a9b
JM
14072014-05-21 John Marino <gnugcc@marino.st>
1408
1409 * acinclude.m4 (*-*-dragonfly*): New target.
1410 * configure: Regenerate.
1411 * configure.host (*-*-dragonfly*): New target.
1412 * config/locale/dragonfly/c_locale.cc: New.
1413 * config/locale/dragonfly/ctype_members.cc: New.
1414 * config/os/bsd/dragonfly/ctype_base.h: New.
1415 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
1416 * config/os/bsd/dragonfly/ctype_inline.h: New.
1417 * config/os/bsd/dragonfly/os_defines.h: New.
1418
6ed9c90a
CP
14192014-05-20 Cesar Philippidis <cesar@codesourcery.com>
1420
863a2c7e 1421 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
6ed9c90a 1422 libstdc++.exp imports those flags via getenv.
863a2c7e
UD
1423 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
1424 CXXFLAGS contains a '-O' flag.
6ed9c90a 1425
a852a67c
AM
14262014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1427
1428 PR libstdc++/61223
1429 Revert:
1430 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1431
1432 PR libstdc++/60758
1433 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1434 and add unwind directives.
1435
8ec7c36a
SH
14362014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
1437
1438 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
1439
4dae67e0
TS
14402014-05-20 Tim Shen <timshen91@gmail.com>
1441
1442 PR libstdc++/61227
1443 * include/bits/regex_compiler.h
1444 (_BracketMatcher<>::_M_add_character_class): Add negative character
1445 class support.
1446 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
1447 Likewise.
1448 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
1449 Add more testcases.
1450
47059228
JW
14512014-05-19 Jonathan Wakely <jwakely@redhat.com>
1452
1453 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
1454
80333d3d
MG
14552014-05-17 Marc Glisse <marc.glisse@inria.fr>
1456
1457 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
1458 * libsupc++/new_opnt.cc: Likewise.
1459
a0eaa08c
JW
14602014-05-17 Jonathan Wakely <jwakely@redhat.com>
1461
1462 PR libstdc++/60966
1463 * include/std/future (__future_base::_State_baseV2::_M_set_result):
1464 Pass lock into _M_do_set and hold it until the function returns.
1465 Signal condition variable after call_once completes.
1466 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
1467 signal here.
1468 * testsuite/30_threads/promise/60966.cc: New.
1469
cac363bc
IS
14702014-05-16 Iain Sandoe <iain@codesourcery.com>
1471 Sandra Loosemore <sandra@codesourcery.com>
1472
a0eaa08c
JW
1473 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
1474 until after checking that the test is eligible to be run.
cac363bc 1475
53caffbe
JW
14762014-05-16 Jonathan Wakely <jwakely@redhat.com>
1477
1478 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
1479 test for 32-bit target.
1480 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1481 Likewise.
1482 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
1483 Fix test.
1484
2a2794f7
AM
14852014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
1486
1487 PR libstdc++/60758
1488 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
1489 and add unwind directives.
1490
cd1464db
JW
14912014-05-16 Jonathan Wakely <jwakely@redhat.com>
1492
1493 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
1494 overflow.
1495 * include/std/chrono (chrono_literals::__select_type::_Select_type):
1496 Remove.
1497 (chrono_literals::_Checked_integral_constant): Define.
1498 Simplify UDL operator templates and check for overflow.
1499 * testsuite/20_util/duration/literals/range.cc: New.
1500
15012014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
a2f4bd2a
ESR
1502 Jonathan Wakely <jwakely@redhat.com>
1503
1504 PR libstdc++/61166
1505 * include/bits/parse_numbers.h: Use integral_constant to remove
1506 duplication and simplify.
1507 * testsuite/20_util/duration/literals/61166.cc: New.
1508
3a004764
JW
15092014-05-15 Jonathan Wakely <jwakely@redhat.com>
1510
c0eef1c8
JW
1511 PR libstdc++/60326
1512 * include/std/type_traits (__make_unsigned, __make_signed): Define
1513 specializations for wchar_t, char16_t and char32_t.
1514 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
1515 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
1516 test for make_unsigned<volatile wchar_t>.
1517 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
1518 Likewise.
1519 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
1520 line number.
1521 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
1522 Likewise.
1523 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
1524 Likewise.
1525
c6139a77 15262014-05-15 Jonathan Wakely <jwakely@redhat.com>
c0eef1c8 1527
3a004764
JW
1528 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
1529 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
1530 * include/std/utility (tuple_size, tuple_element): Likewise.
1531 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
1532 Adjust dg-error line number.
1533
af222e74
JW
15342014-05-14 Jonathan Wakely <jwakely@redhat.com>
1535
1536 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
1537 (__tuple_element_t): Define.
1538 (tuple_element): Use __tuple_element_t.
1539 (__cv_tuple_size): Define.
1540 (tuple_size<cv _Tp>): Use __cv_tuple_size.
1541 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
1542 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
1543 (__tuple_compare): Remove size check, re-order parameters.
1544 (operator==, operator<): Use static_assert to check requirements.
1545 * include/std/functional (__volget): use __tuple_element_t.
1546 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
1547 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
1548
75e75a08
JW
15492014-05-13 Jonathan Wakely <jwakely@redhat.com>
1550
1551 PR libstdc++/60497
1552 * include/std/tuple (get, __tuple_compare): Qualify more calls to
1553 prevent ADL. Cast comparison results to bool.
1554 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
1555 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
1556
b82f988e
JW
1557 PR libstdc++/60497
1558 * include/debug/array (get): Qualify call to other get overload.
1559 * include/profile/array (get): Likewise.
1560 * include/std/array (get): Likewise.
1561 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
1562 * include/std/mutex (unique_lock, call_once): Use __addressof.
1563 (__unlock_impl): Remove unused template.
1564 (__try_to_lock): Declare inline.
1565 (__try_lock_impl::__do_try_lock): Qualify function calls.
1566 (lock): Avoid narrowing conversion.
1567 * testsuite/20_util/bind/60497.cc: New.
1568 * testsuite/23_containers/array/element_access/60497.cc: New.
1569 * testsuite/30_threads/call_once/60497.cc: New.
1570 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
1571
a8218d79
JW
15722014-05-09 Jonathan Wakely <jwakely@redhat.com>
1573
1574 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
1575 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
1576 * acinclude.m4 (libtool_VERSION): Bump.
1577 * configure: Regenerate.
1578 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
1579 * testsuite/28_regex/regex_error/base.cc: New.
1580
e70c7f5b
JG
15812014-05-08 Joshua Gay <jgay@gnu.org>
1582
1583 PR libstdc++/61117
1584 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
1585 source" with "free software".
1586 * doc/html/faq.html: Likewise.
1587
f0fd118f
JW
15882014-05-08 Jonathan Wakely <jwakely@redhat.com>
1589
1590 PR libstdc++/57394
1591 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
1592 deleted for C++11.
1593 (operator=(const ios_base&)): Likewise.
1594 * include/std/streambuf: Remove trailing whitespace.
1595 (basic_streambuf(const basic_streambuf&)): Fix initializer for
1596 _M_out_end. Define as defaulted for C++11.
1597 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
1598 (swap(basic_streambuf&)): Define for C++11.
1599 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
1600
2735097a
JW
1601 PR libstdc++/13860
1602 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
1603
07e4f10a
JW
1604 * include/std/iostream: Fix URL in comment.
1605 * src/c++98/ios_init.cc: Fix path in comment.
1606
a3820abe
PC
16072014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
1608
1609 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
1610 * configure: Regenerate.
1611
2588652e
JW
16122014-05-07 Jonathan Wakely <jwakely@redhat.com>
1613
1614 PR libstdc++/61023
1615 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
1616 comparison function.
1617 * testsuite/23_containers/set/cons/61023.cc: New.
1618
bbf264c9
JW
1619 PR libstdc++/61086
1620 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
1621 Remove.
1622 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
1623 arithmetic to obtain a mutable iterator from const_iterator.
1624 * include/bits/vector.tcc (vector::insert): Likewise.
1625 * include/debug/vector (vector::erase): Likewise.
1626 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1627 Adjust dg-error line number.
1628 * testsuite/23_containers/vector/requirements/dr438/
1629 constructor_1_neg.cc: Likewise.
1630 * testsuite/23_containers/vector/requirements/dr438/
1631 constructor_2_neg.cc: Likewise.
1632 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1633 Likewise.
1634
f03d1bb9
PC
16352014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
1636
1637 * include/Makefile.in: Regenerate.
1638
15ee1a77
FD
16392014-05-06 François Dumont <fdumont@gcc.gnu.org>
1640
1641 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1642 parameter to pass the 2 instances to check allocator equality.
1643 * include/debug/safe_container.h: New, define _Safe_container<>.
1644 * include/Makefile.am: Add previous.
1645 * include/debug/deque (std::__debug::deque<>): Inherit
1646 _Safe_container<>. Use default implementation for all special
1647 functions.
1648 * include/debug/forward_list (std::__debug::forward_list<>):
1649 Likewise.
1650 * include/debug/list (std::__debug::list<>): Likewise.
1651 * include/debug/map.h (std::__debug::map<>): Likewise.
1652 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1653 * include/debug/set.h (std::__debug::set<>): Likewise.
1654 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1655 * include/debug/string (std::__debug::basic_string<>): Likewise.
1656 * include/debug/unordered_map
1657 (std::__debug::unordered_map<>): Likewise.
1658 (std::__debug::unordered_multimap<>): Likewise.
1659 * include/debug/unordered_set
1660 (std::__debug::unordered_set<>): Likewise.
1661 (std::__debug::unordered_multiset<>): Likewise.
1662 * include/debug/vector (std::__debug::vector<>): Likewise.
1663 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1664 noexcept.
1665 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1666 (~_Safe_sequence_base()): Add noexcept.
1667 * include/debug/safe_sequence.h
1668 (std::__debug::_Safe_node_sequence<>): New.
1669 * include/debug/safe_unordered_base.h
1670 (_Safe_unordered_container_base()): Add noexcept.
1671 (~_Safe_unordered_container_base()): Likewise.
1672 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1673 * include/debug/safe_unordered_container.h:
1674 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1675 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1676 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1677 qualifications.
1678 * testsuite/util/debug/checks.h (check_construct1): Just implement
1679 an invalid constructor invocation and no other operations
1680 potentially not supported by some types of container.
1681 (check_construct2): Likewise.
1682 (check_construct3): Likewise.
1683 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1684 check on iterators to make sure they are correctly moved in debug
1685 mode.
1686 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1687 Likewise.
1688 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1689 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1690 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1691 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1692 Likewise.
1693 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1694 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1695 Likewise.
1696 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1697 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1698 * testsuite/23_containers/unordered_map/allocator/move.cc:
1699 Likewise.
1700 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1701 Likewise.
1702 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1703 Likewise.
1704 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1705 Likewise.
1706 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1707 Likewise.
1708 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1709 Likewise.
1710 * testsuite/23_containers/unordered_set/allocator/move.cc:
1711 Likewise.
1712 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1713 Likewise.
1714 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1715 New.
1716 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1717 New.
1718 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1719 New.
1720 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1721 New.
1722 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1723 New.
1724 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1725 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1726 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1727 * testsuite/23_containers/map/debug/move_neg.cc: New.
1728 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1729 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1730 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1731 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1732 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1733 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1734 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1735 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1736 * testsuite/23_containers/set/debug/move_neg.cc: New.
1737 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1738 New.
1739 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1740 New.
1741 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1742 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1743 New.
1744 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1745 New.
1746 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1747 New.
1748 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1749 New.
1750 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1751 New.
1752 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1753 New.
1754 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1755 New.
1756 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1757 New.
1758 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1759 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1760
dd14d429
AS
17612014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1762
1763 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1764 (CXXABI_1.3.9): Remove __float128 symbols.
1765
047f1cec
JW
17662014-05-02 Jonathan Wakely <jwakely@redhat.com>
1767
1768 PR libstdc++/59476
1769 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1770 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1771 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1772 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1773 refer to...
1774 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1775
62da5a07
JW
1776 PR libstdc++/61036
1777 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1778 Check the correct type in the static assertion.
1779 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1780
a670a9bb
TS
17812014-04-27 Tim Shen <timshen91@gmail.com>
1782
1783 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1784 Add _S_opcode_repeat support to distingush a loop from
1785 _S_opcode_alternative.
1786 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1787 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1788 _StateSeq<>::_M_clone): Likewise.
1789 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1790 Likewise.
1791 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1792 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1793 Uglify local variable __i.
1794 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1795 Use size_t instead of int to compare with vector::size().
1796
17972014-04-27 Tim Shen <timshen91@gmail.com>
1798
1799 * include/bits/regex_executor.h: Add _M_rep_count to track how
1800 many times this repeat node are visited.
1801 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1802 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1803 infinite loop.
1804
18052014-04-27 Tim Shen <timshen91@gmail.com>
1806
1807 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1808 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1809 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1810 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1811 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1812 Adjust debug NFA dump.
1813
e2ce9436
LGB
18142014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1815
1816 PR libstdc++/60710
1817 * include/experimental/optional (operator!=): Implement in terms of
1818 operator==.
1819 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1820 * testsuite/experimental/optional/relops/2.cc: Likewise.
1821 * testsuite/experimental/optional/relops/3.cc: Likewise.
1822 * testsuite/experimental/optional/relops/4.cc: Likewise.
1823 * testsuite/experimental/optional/relops/5.cc: Likewise.
1824 * testsuite/experimental/optional/relops/6.cc: Likewise.
1825
4ec21835
JW
18262014-04-25 Jonathan Wakely <jwakely@redhat.com>
1827
1828 PR libstdc++/60958
1829 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1830 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1831 comment.
1832
e4012a04
MG
18332014-04-25 Marc Glisse <marc.glisse@inria.fr>
1834
1835 * testsuite/util/testsuite_abi.cc (check_version): Update for
1836 CXXABI_1.3.9.
1837
836c42f6
TS
18382014-04-24 Tim Shen <timshen91@gmail.com>
1839
1840 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1841 Do _M_alt before _M_next.
1842 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1843
b911b50d
MG
18442014-04-24 Marc Glisse <marc.glisse@inria.fr>
1845
1846 PR libstdc++/43622
1847 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1848 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1849 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1850
84c5df1c
AS
18512014-04-24 Andreas Schwab <schwab@suse.de>
1852
1853 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1854 new CXXABI_1.3.9 symbols.
1855
eab264af
AS
18562014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1857
1858 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1859 (CXXABI_1.3.9): New version.
1860
793c625f
MG
18612014-04-22 Marc Glisse <marc.glisse@inria.fr>
1862
1863 PR libstdc++/43622
1864 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1865 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1866 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1867
d9f069ab
RO
18682014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1869
1870 * configure.host: Remove solaris2.9 handling.
1871 Change os_include_dir to os/solaris/solaris2.10.
1872 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1873 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1874 * configure: Regenerate.
1875 * config/abi/post/solaris2.9: Remove.
1876 * config/os/solaris/solaris2.9: Rename to ...
1877 * config/os/solaris/solaris2.10: ... this.
1878 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1879 Remove.
1880
1881 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1882 Remove Solaris 9 reference.
1883 * doc/html/manual/configure.html: Regenerate.
1884
1885 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1886 Remove *-*-solaris2.9 xfail.
1887 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1888 Likewise.
1889
1890 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1891 xfail.
1892
6e2d247b
JW
18932014-04-16 Jonathan Wakely <jwakely@redhat.com>
1894
1895 * include/std/functional (__is_location_invariant): Use __or_ helper.
1896
4b3f9829
JW
18972014-04-15 Jonathan Wakely <jwakely@redhat.com>
1898
1899 PR libstdc++/60734
1900 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1901
9ffc6d0b
JW
1902 PR libstdc++/60695
1903 * include/std/atomic (atomic<_Tp>): Add static assertion.
1904 * testsuite/29_atomics/atomic/60695.cc: New.
1905
4803acce
JW
1906 PR libstdc++/60594
1907 * include/std/functional (function::_Callable): Exclude own type
1908 from the callable checks.
1909 * testsuite/20_util/function/60594.cc: New.
1910
260d16c8
JW
1911 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1912 const to constexpr member functions.
1913
ed39835f
JW
1914 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1915 delegating constructor.
1916 * include/bits/shared_ptr_base.h
1917 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1918
227df36e
JW
1919 * include/std/atomic: Uglify parameter names.
1920
3a0f3672
JW
1921 PR c++/60786
1922 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1923 1.cc: Fix invalid explicit instantiations with unqualified names.
1924 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1925 2.cc: Likweise.
1926 * testsuite/20_util/tuple/53648.cc: Likweise.
1927 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1928 Likewise.
1929 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1930 Likewise.
1931 * testsuite/23_containers/unordered_map/requirements/
1932 debug_container.cc: Likewise.
1933 * testsuite/23_containers/unordered_map/requirements/
1934 explicit_instantiation/3.cc: Likewise.
1935 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1936 Likewise.
1937 * testsuite/23_containers/unordered_multimap/requirements/
1938 explicit_instantiation/3.cc: Likewise.
1939 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1940 Likewise.
1941 * testsuite/23_containers/unordered_multiset/requirements/
1942 explicit_instantiation/3.cc: Likewise.
1943 * testsuite/23_containers/unordered_set/requirements/
1944 debug_container.cc: Likewise.
1945 * testsuite/23_containers/unordered_set/requirements/
1946 explicit_instantiation/3.cc: Likewise.
1947
a1e1bc90
JW
1948 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1949 not use uninitialized members in mem-initializers.
1950 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1951 * testsuite/util/testsuite_common_types.h: Update comment.
1952
b9de84c9
JW
1953 * include/experimental/string_view: Fix inconsistent exception specs.
1954
33fbb358
JW
1955 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1956 Remove name of unused parameter.
1957
5b99e0a0
JW
19582014-04-14 Jonathan Wakely <jwakely@redhat.com>
1959
1960 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1961 _Vector_base::_M_allocate): NullablePointer requirements do not
1962 include initialization from literal zero, use value-initialization.
1963 * include/bits/vector.tcc (vector::_M_insert_aux,
1964 vector::_M_explace_back_aux): Likewise for assignment.
1965
e364673d
JW
1966 * include/bits/allocator.h (operator==, operator!=): Add exception
1967 specifications.
1968
39e6a690
JW
1969 PR libstdc++/60497
1970 * include/std/tuple (get): Qualify calls to prevent ADL.
1971 * testsuite/20_util/tuple/60497.cc: New.
1972
025eac9b
JW
1973 * include/std/tuple (tuple_element_t): Define.
1974 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1975 test.
1976 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1977
4de3afd9
MG
19782014-04-11 Marc Glisse <marc.glisse@inria.fr>
1979
1980 PR libstdc++/59434
1981 * include/bits/stl_iterator.h (move_iterator::reference,
1982 move_iterator::operator*): Implement LWG 2106.
1983 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1984
742f66e7
MG
19852014-04-11 Marc Glisse <marc.glisse@inria.fr>
1986
1987 * include/std/complex (__complex_exp, pow): Specify the template
1988 parameter in calls to std::polar, for expression templates.
1989
9e837b7f
AS
19902014-04-10 Andreas Schwab <schwab@suse.de>
1991
4ada6d58
AS
1992 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1993 symbols.
1994 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1995 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1996
9e837b7f
AS
1997 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1998
631e3e1b
JW
19992014-04-07 Jonathan Wakely <jwakely@redhat.com>
2000
2001 * testsuite/20_util/exchange/1.cc: Add missing return statements.
2002 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
2003 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
2004 specifications.
2005
33466676
DH
20062014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
2007 Jack Howarth <howarth@bromo.med.uc.edu>
2008
2009 PR target/54407
2010 * testsuite/30_threads/condition_variable/54185.cc: Skip for
2011 darwin < 11.
2012
be35d328
JW
20132014-04-01 Jonathan Wakely <jwakely@redhat.com>
2014
2015 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
2016 Update link.
2017 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
2018 Fix broken links.
2019 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
2020 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
2021 * doc/xml/manual/concurrency_extensions.xml
2022 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
2023 * doc/html/*: Regenerate.
2024
71bdda56
LGB
20252014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
2026 Jonathan Wakely <jwakely@redhat.com>
2027
2028 PR libstdc++/60270
2029 * include/std/iomanip (_Quoted_string operator>>): Do not clear
2030 string if input is not quoted.
2031 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
2032
0812493f
JW
20332014-03-31 Jonathan Wakely <jwakely@redhat.com>
2034
2035 * libsupc++/eh_ptr.cc: Improve static_assert messages.
2036
750dc278
RO
20372014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2038
2039 * testsuite/18_support/exception_ptr/60612-terminate.cc
2040 (terminate, f): Wrap in _GLIBCXX_USE_C99.
2041 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
2042
25d24c42
JW
20432014-03-27 Jonathan Wakely <jwakely@redhat.com>
2044
2045 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
2046
6f8b5e0c
JW
2047 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
2048 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
2049 Likewise.
2050 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
2051 Likewise.
2052 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
2053
b08d3b68
JW
2054 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
2055 Fix bad s/part/chapter/ substitutions.
2056 * doc/xml/manual/io.xml (std.io): Likewise.
2057 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
2058 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
2059
ffcbf03f
JW
2060 * doc/html/*: Regenerate.
2061
3941b260
JW
20622014-03-27 Jonathan Wakely <jwakely@redhat.com>
2063
2064 PR libstdc++/60612
2065 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
2066 compatible with __cxa_exception.
2067 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
2068 Fix typos in comments.
2069 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
2070 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
2071
5ec16257
JW
20722014-03-25 Jonathan Wakely <jwakely@redhat.com>
2073
2074 PR libstdc++/60658
2075 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
2076 Use sizeof pointer type not the element type.
2077 * testsuite/29_atomics/atomic/60658.cc: New.
2078
6f6c00f3
JJ
20792014-03-24 Jakub Jelinek <jakub@redhat.com>
2080
2081 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
2082 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
2083 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
2084 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
2085 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
2086 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
2087 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
2088 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
2089 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
2090 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
2091 entries.
2092
76627edd
JDA
20932014-03-23 John David Anglin <danglin@gcc.gnu.org>
2094
2095 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
2096
f7279c1a
FD
20972014-03-23 François Dumont <fdumont@gcc.gnu.org>
2098
2099 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
2100 to delegated constructor.
2101 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
2102 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
2103 Likewise.
2104 (_Hashtable(
2105 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
2106
d570d678
JDA
21072014-03-23 John David Anglin <danglin@gcc.gnu.org>
2108
2109 PR libstdc++/60623
2110 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
2111
72d1f255
JW
21122014-03-21 Jonathan Wakely <jwakely@redhat.com>
2113
2114 PR libstdc++/60587
2115 * include/debug/functions.h (_Is_contiguous_sequence): Define.
2116 (__foreign_iterator): Accept additional iterator. Do not dispatch on
2117 iterator category.
2118 (__foreign_iterator_aux2): Likewise. Add overload for iterators
2119 from different types of debug container. Use _Is_contiguous_sequence
2120 instead of is_lvalue_reference.
2121 (__foreign_iterator_aux3): Accept additional iterator. Avoid
2122 dereferencing past-the-end iterator.
2123 (__foreign_iterator_aux4): Use const value_type* instead of
2124 potentially user-defined const_pointer type.
2125 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
2126 and pass end iterator to __gnu_debug::__foreign_iterator.
2127 (__glibcxx_check_insert_range_after): Likewise.
2128 (__glibcxx_check_max_load_factor): Fix comment.
2129 * include/debug/vector (_Is_contiguous_sequence): Define partial
2130 specializations.
2131 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
2132 -std=gnu++11 option and unused header.
2133 * testsuite/23_containers/vector/debug/60587.cc: New.
2134 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
2135
e70c4c41
UW
21362014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2137
2138 * crossconfig.m4: Support spu-*-elf* targets.
2139 * configure: Regenerate.
2140
f7e68d08
JW
21412014-03-18 Jonathan Wakely <jwakely@redhat.com>
2142
2143 PR libstdc++/60564
2144 * include/std/future (__future_base::_Task_state<>): Change
2145 constructors to template functions using perfect forwarding.
2146 (__create_task_state): Use decayed type as stored task.
2147 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
2148 * testsuite/30_threads/packaged_task/60564.cc: New.
2149
86faf710
FD
21502014-03-16 François Dumont <fdumont@gcc.gnu.org>
2151
2152 * scripts/create_testsuite_files: Add testsuite/experimental in
2153 the list of folders to search for tests.
2154
dcf39d82
AS
21552014-03-15 Andreas Schwab <schwab@linux-m68k.org>
2156
2157 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
2158
ee54a3b3
TS
21592014-03-15 Tim Shen <timshen91@gmail.com>
2160
2161 * include/bits/regex.h: Add/modify comments.
2162 * include/bits/regex_compiler.h: Likewise.
2163 * include/bits/regex_executor.h: Likewise.
2164 * include/bits/regex_executor.tcc: Likewise.
2165 * include/bits/regex_scanner.h: Likewise.
2166
b1520f3d
JW
21672014-03-14 Jonathan Wakely <jwakely@redhat.com>
2168
2169 PR ipa/58721
2170 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
2171 _ZNSt12system_errorC* symbols which are not exported on any target.
2172
90021b55
RM
21732014-03-12 Roland McGrath <mcgrathr@google.com>
2174 Mark Seaborn <mseaborn@google.com>
2175
2176 PR libstdc++/59392
2177 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
2178 the address of a null pointer, not with a null pointer to pointer.
2179 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
2180 * testsuite/18_support/bad_exception/59392.cc: New file.
2181
06dce007
JW
21822014-03-11 Jonathan Wakely <jwakely@redhat.com>
2183
2184 PR libstdc++/60499
2185 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
2186 Uglify name.
2187 * include/debug/map (map::operator=(map&&)): Likewise.
2188 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
2189 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
2190 * include/debug/set (set::operator=(set&&)): Likewise.
2191 * include/debug/unordered_map
2192 (unordered_map::operator=(unordered_map&&)): Likewise.
2193 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
2194 * include/debug/unordered_set
2195 (unordered_set::operator=(unordered_set&&)): Likewise.
2196 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
2197 * include/debug/vector (vector::operator=(vector&&)): Likewise.
2198 * testsuite/23_containers/forward_list/debug/60499.cc: New
2199 * testsuite/23_containers/map/debug/60499.cc: New
2200 * testsuite/23_containers/multimap/debug/60499.cc: New
2201 * testsuite/23_containers/multiset/debug/60499.cc: New
2202 * testsuite/23_containers/set/debug/60499.cc: New
2203 * testsuite/23_containers/unordered_map/debug/60499.cc: New
2204 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
2205 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
2206 * testsuite/23_containers/unordered_set/debug/60499.cc: New
2207 * testsuite/23_containers/vector/debug/60499.cc: New
2208
700bf0d3
ESR
22092014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
2210
2211 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
2212 for filesystem and fundamentals TS work items.
2213
064fd5a8
PC
22142014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
2215
2216 PR c++/60376
2217 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
2218 Adjust dg-error directives.
2219
91bb5cd9
TS
22202014-02-26 Tim Shen <timshen91@gmail.com>
2221
2222 * include/bits/regex.tcc (match_results<>::format,
2223 regex_replace<>): Update __out after calling std::copy.
2224 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
2225 Add testcase.
2226 * testsuite/28_regex/match_results/format.cc: Likewise.
2227
6aba6941
MG
22282014-02-22 Marc Glisse <marc.glisse@inria.fr>
2229
2230 PR libstdc++/60308
2231 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
2232 allocator_type&)): Remove redundant call to _M_initialize_map.
2233 (deque::deque(const allocator_type&)): Initialize _Base with a
2234 constructor that calls _M_initialize_map.
2235
2236 Partial revert:
2237
2238 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
2239 PR libstdc++/58338
2240 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
2241 _M_initialize_map.
2242
94ff3384
ESR
22432014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
2244
2245 Rename testsuite directory shared_mutex to shared_timed_mutex
2246 for consistency.
2247 * testsuite/30_threads/shared_mutex: Moved to...
2248 * testsuite/30_threads/shared_timed_mutex: ...here
2249
4bbfc5fa
ESR
22502014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
2251
2252 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
2253 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
2254 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
2255 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
2256 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
2257 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
2258 * testsuite/30_threads/shared_lock/requirements/
2259 explicit_instantiation.cc: Ditto.
2260 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
2261 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
2262 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
2263 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
2264 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
2265 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
2266 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
2267 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
2268 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
2269 * testsuite/30_threads/shared_mutex/requirements/
2270 standard_layout.cc: Ditto.
2271 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
2272 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
2273 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
2274 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
2275 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
2276
53a6d1ce
RO
22772014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2278
2279 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
2280 execution on i?86-*-solaris2.9, remove comment.
2281 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
2282
5a47e4c5
RS
22832014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
2284
2285 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
2286 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
2287 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
2288
85c13695 22892014-01-29 Jonathan Wakely <jwakely@redhat.com>
20067423
JW
2290
2291 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
2292 not use varargs when argument could be non-POD.
2293 (__alloctr_rebind_helper): Eliminate static const bool member by
2294 using true_type and false_type.
2295 (allocator_traits::__allocate_helper): Likewise.
2296 (allocator_traits::__construct_helper): Likewise.
2297 (allocator_traits::__destroy_helper): Likewise.
2298 (allocator_traits::__maxsize_helper): Likewise.
2299 (allocator_traits::__select_helper): Likewise.
2300 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
2301 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
2302 Remove redundant condition.
2303 * include/bits/stl_vector.h (vector::operator=(const vector&)):
2304 Likewise.
2305 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
2306 indirection through __alloc_traits.
2307 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
2308 Eliminate static const bool members by using true_type and false_type.
2309 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
2310 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
2311 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
2312 New.
2313 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
2314
8a972abd
JW
2315 PR libstdc++/59829
2316 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
2317 (vector::_M_data_ptr): New overloaded functions to ensure empty
2318 vectors do not dereference the pointer.
2319 * testsuite/23_containers/vector/59829.cc: New.
2320 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2321 Adjust dg-error line number.
2322 * testsuite/23_containers/vector/requirements/dr438/
2323 constructor_1_neg.cc: Likewise.
2324 * testsuite/23_containers/vector/requirements/dr438/
2325 constructor_2_neg.cc: Likewise.
2326 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2327 Likewise.
2328
d530142d
JW
2329 PR libstdc++/21609
2330 * include/ext/array_allocator.h: Add deprecated attribute.
2331
1492a408
JW
2332 PR libstdc++/57226
2333 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
2334 installation and use of python printers.
2335 * doc/xml/manual/status_cxx2011.xml: Update.
2336 * doc/html/*: Regenerate.
2337
156b60e0
JW
23382014-01-28 Jonathan Wakely <jwakely@redhat.com>
2339 Kyle Lippincott <spectral@google.com>
2340
2341 PR libstdc++/59656
2342 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
2343 constructor and grant friendship to weak_ptr.
2344 (weak_ptr::lock()): Use new constructor.
2345 * include/bits/shared_ptr_base.h
2346 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
2347 and define specializations.
2348 (__shared_count): Add new non-throwing constructor.
2349 (__shared_ptr): Add new non-throwing constructor and grant friendship
2350 to __weak_ptr.
2351 (__weak_ptr::lock()): Use new constructor.
2352 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
2353 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2354
fb1ca954
JW
23552014-01-27 Jonathan Wakely <jwakely@redhat.com>
2356
2357 PR libstdc++/59215
2358 * include/bits/shared_ptr_base.h
2359 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
2360 load.
2361
ccc2e73c
JM
23622014-01-27 Jason Merrill <jason@redhat.com>
2363
2364 Core DR 475
2365 PR c++/41174
2366 PR c++/59224
2367 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
2368 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
2369 (__cxa_allocate_exception): Don't set it here.
2370
4d0bb770
JW
23712014-01-26 Jonathan Wakely <jwakely@redhat.com>
2372
2373 * include/bits/stl_map.h: Remove anachronistic comment.
2374 * include/bits/stl_multimap.h: Add whitespace.
2375 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
2376 -std=gnu++11 instead of -std=c++11.
2377 * testsuite/23_containers/map/operators/2.cc: Likewise.
2378 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
2379 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
2380 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
2381
2720e16b
JW
2382 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
2383 * configure: Regenerate.
2384
bb393514
ESR
23852014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2386
2387 PR libstdc++/59531
2388 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
2389 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
2390
23912014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2392 Peter A. Bigot <pab@pabigot.com>
2393
2394 PR libstdc++/59531
2395 * include/experimental/string_view
2396 (copy(_CharT*, size_type, size_type) const): Correct throw string.
2397 Correct copy start location.
2398
23992014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2400 Peter A. Bigot <pab@pabigot.com>
2401
2402 PR libstdc++/59530
2403 * include/experimental/string_view (operator[](size_type) const):
2404 Fix one-off index error in debug check.
2405 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
2406 test basic_string_view at size().
2407 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
2408
24092014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
2410 Peter A. Bigot <pab@pabigot.com>
2411
2412 PR libstdc++/59529
2413 * include/experimental/string_view
2414 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
2415 * testsuite/experimental/string_view/operations/substr/char/1.cc:
2416 Comment out catch of out_of_range; No terminating null
2417 in basic_string_view. Check begin == end.
2418 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
2419 Ditto.
2420
f7491277
JW
24212014-01-24 Jonathan Wakely <jwakely@redhat.com>
2422
2423 PR libstdc++/59548
2424 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
2425 constructor to prevent it being implicitly defined as deleted, but
2426 do not copy anything.
2427 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
2428 Define copy and move constructors similar to _Safe_sequence_base's.
2429 * testsuite/23_containers/unordered_map/59548.cc: New.
2430
7370b9df
BRF
24312014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
2432 Steve Ellcey <sellcey@mips.com>
2433
2434 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
2435 function.
2436 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
2437 * (configure, config.h.in): Regenerate.
2438 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
2439
1f0affce
JW
24402014-01-23 Jonathan Wakely <jwakely@redhat.com>
2441
2442 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
2443 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
2444
6a5839c8
JW
2445 PR libstdc++/59872
2446 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
2447 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
2448 Likewise.
2449 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
2450 Likewise.
2451 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
2452 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
2453 functions to perform moving or copying of elements from rvalue tree.
2454 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
2455 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
2456 * testsuite/23_containers/map/59872.cc: New.
2457 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
2458
af0e0fa0
JW
24592014-01-22 Jonathan Wakely <jwakely@redhat.com>
2460
2461 * include/bits/stl_deque.h (_Deque_impl): Move comment.
2462
c3cdd71f
JW
2463 PR libstdc++/58764
2464 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
2465 Split into separate default constructor and constructor taking
2466 allocator.
2467 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
2468 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
2469 Likewise.
2470 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
2471 * include/debug/list (list::list(const _Allocator&)): Likewise.
2472 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
2473 Likewise.
2474 * include/debug/multimap.h
2475 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2476 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
2477 Likewise.
2478 * include/debug/multiset.h
2479 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2480 * include/debug/vector (vector::vector(const allocator_type&)):
2481 Likewise.
2482 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
2483 * include/profile/list (list::list(const _Allocator&)): Likewise.
2484 * include/profile/map.h
2485 (map::map(const _Compare&, const _Allocator&)): Likewise.
2486 * include/profile/multimap.h
2487 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
2488 * include/profile/set.h
2489 (set::set(const _Compare&, const _Allocator&)): Likewise.
2490 * include/profile/multiset.h
2491 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
2492 * include/profile/vector (vector::vector(const _Allocator&)):
2493 Likewise.
2494 * testsuite/23_containers/deque/58764.cc: New.
2495 * testsuite/23_containers/list/58764.cc: New.
2496 * testsuite/23_containers/map/58764.cc: New.
2497 * testsuite/23_containers/multimap/58764.cc: New.
2498 * testsuite/23_containers/set/58764.cc: New.
2499 * testsuite/23_containers/multiset/58764.cc: New.
2500 * testsuite/23_containers/vector/58764.cc: New.
2501 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
2502 Adjust dg-error line number.
2503 * testsuite/23_containers/deque/requirements/dr438/
2504 constructor_1_neg.cc: Likewise.
2505 * testsuite/23_containers/deque/requirements/dr438/
2506 constructor_2_neg.cc: Likewise.
2507 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
2508 Likewise.
2509 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2510 Likewise.
2511 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2512 Likewise.
2513 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2514 Likewise.
2515 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2516 Likewise.
2517 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2518 Likewise.
2519 * testsuite/23_containers/vector/requirements/dr438/
d9dcda6f
JW
2520 constructor_1_neg.cc: Likewise.
2521 * testsuite/23_containers/vector/requirements/dr438/
2522 constructor_2_neg.cc: Likewise.
2523 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2524 Likewise.
2525
2526 PR libstdc++/58764 (again)
2527 * include/bits/stl_list.h (list): Make default constructor's exception
2528 specification conditional.
2529 * include/bits/stl_vector.h (vector): Likewise.
2530 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
2531 to default constructor.
2532 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
2533 Adjust dg-error line number.
2534 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
2535 Likewise.
2536 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
2537 Likewise.
2538 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
2539 Likewise.
2540 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
2541 Likewise.
2542 * testsuite/23_containers/vector/requirements/dr438/
c3cdd71f
JW
2543 constructor_1_neg.cc: Likewise.
2544 * testsuite/23_containers/vector/requirements/dr438/
2545 constructor_2_neg.cc: Likewise.
2546 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
2547 Likewise.
2548
8f7082f5
TS
25492014-01-21 Tim Shen <timshen91@gmail.com>
2550
2551 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
2552 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
2553 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
2554
6ff956e3
JW
25552014-01-21 Jonathan Wakely <jwakely@redhat.com>
2556
2557 PR libstdc++/56267
2558 * include/bits/hashtable.h (__cache_default): Do not depend on
2559 whether the hash function is DefaultConstructible or CopyAssignable.
2560 (_Hashtable): Adjust static assertions.
2561 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
2562 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
2563 dg-error line number.
2564 * testsuite/23_containers/unordered_set/
2565 not_default_constructible_hash_neg.cc: Remove.
2566
9d0bb2ea
FD
25672014-01-20 François Dumont <fdumont@gcc.gnu.org>
2568
2569 * scripts/create_testsuite_files: Add testsuite/experimental in
2570 the list of folders to search for tests.
2571 * include/experimental/string_view
2572 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
2573 incompatible with constexpr qualifier.
2574 (basic_string_view<>::front()): Likewise.
2575 (basic_string_view<>::back()): Likewise.
2576 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
2577 Merge dg-options directives into one.
2578 * testsuite/experimental/string_view/element_access/char/2.cc:
2579 Likewise. Remove invalid experimental namespace scope on
2580 string_view_type.
2581
92e16228
JW
25822014-01-20 Jonathan Wakely <jwakely@redhat.com>
2583
2584 PR libstdc++/56267
2585 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
2586 friendship to _Local_iterator_base<..., false>.
2587 (_Local_iterator_base): Give protected access to all existing members.
2588 (_Local_iterator_base::_M_curr()): New public accessor.
2589 (_Local_iterator_base::_M_get_bucket()): New public accessor.
2590 (_Local_iterator_base<..., false>::_M_init()): New function to manage
2591 the lifetime of the _Hash_code_base explicitly.
2592 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
2593 (_Local_iterator_base<..., false>): Define copy constructor and copy
2594 assignment operator that use new functions to manage _Hash_code_base.
2595 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
2596 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
2597 Use public API for _Local_iterator_base.
2598 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
2599 * include/debug/unordered_map (__debug::unordered_map::erase(),
2600 __debug::unordered_multimap::erase()): Likewise.
2601 * include/debug/unordered_set (__debug::unordered_set::erase(),
2602 __debug::unordered_multiset::erase()): Likewise.
2603 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
2604
053eb1f3
TS
26052014-01-19 Tim Shen <timshen91@gmail.com>
2606
2607 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
2608 Fix parse error of multiple consecutive quantifiers like "a**".
2609 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
2610 Likewise.
2611 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
2612
1217ee06
FD
26132014-01-17 François Dumont <fdumont@gcc.gnu.org>
2614
2615 * include/profile/set.h (set): Implement C++11 allocator-aware
2616 container requirements.
2617 * include/profile/map.h (map): Likewise.
2618 * include/profile/multiset.h (multiset): Likewise.
2619 * include/profile/multimap.h (multimap): Likewise.
2620 * include/profile/set.h
2621 (set::operator=(const set&)): Define as default in C++11 mode.
2622 (set::operator=(set&&)): Likewise.
2623 * include/profile/map.h
2624 (map::operator=(const map&)): Likewise.
2625 (map::operator=(map&&)): Likewise.
2626 * include/profile/multiset.h
2627 (multiset::operator=(const multiset&)): Likewise.
2628 (multiset::operator=(multiset&&)): Likewise.
2629 * include/profile/multimap.h
2630 (multimap::operator=(const multimap&)): Likewise.
2631 (multimap::operator=(multimap&&)): Likewise.
2632 * include/profile/set.h (set::operator=(std::initializer_list<>)):
2633 Rely on the same operator from normal mode.
2634 * include/profile/map.h (map::operator=(std::initializer_list<>)):
2635 Likewise.
2636 * include/profile/multiset.h
2637 (multiset::operator=(std::initializer_list<>)): Likewise.
2638 * include/profile/multimap.h
2639 (multimap::operator=(std::initializer_list<>)): Likewise.
2640 * include/profile/set.h (set::swap(set&)): Add noexcept
2641 specification.
2642 * include/profile/map.h (map::swap(map&)): Likewise.
2643 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2644 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2645
ddf41e9d
TS
26462014-01-17 Tim Shen <timshen91@gmail.com>
2647
2648 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2649 use std::map.
2650 * include/bits/regex_automaton.h: Do not use std::set.
2651 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2652 _BracketMatcher<>::_M_add_collating_element(),
2653 _BracketMatcher<>::_M_add_equivalence_class(),
2654 _BracketMatcher<>::_M_make_range()): Likewise.
2655 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2656 Likewise.
2657 * include/bits/regex_executor.h: Do not use std::queue.
2658 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2659 _Executor<>::_M_dfs()): Likewise.
2660 * include/std/regex: Remove <map>, <set> and <queue>.
2661
26622014-01-17 Tim Shen <timshen91@gmail.com>
2663
2664 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2665 basic_regex<>::assign()): Change __compile_nfa to accept
2666 const _CharT* only.
2667 * include/bits/regex_compiler.h: Change _Compiler's template
2668 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2669 * include/bits/regex_compiler.tcc: Likewise.
2670
26712014-01-17 Tim Shen <timshen91@gmail.com>
2672
2673 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2674 templated.
2675 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2676 _ScannerBase from _Scanner; Change _Scanner's template argument from
2677 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2678 instead.
2679 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2680 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2681 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2682 Likewise.
2683 * include/std/regex: Add <cstring> for using strchr.
2684
26852014-01-17 Tim Shen <timshen91@gmail.com>
2686
2687 * bits/regex_automaton.tcc: Indentation fix.
2688 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2689 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2690 _BracketMatcher<>): Add bool option template parameters and
2691 specializations to make matching more efficient and space saving.
2692 * bits/regex_compiler.tcc: Likewise.
2693
1bb59e05
FD
26942014-01-15 François Dumont <fdumont@gcc.gnu.org>
2695
9b7dc56e 2696 PR libstdc++/59712
1bb59e05
FD
2697 * include/bits/hashtable_policy.h: Fix some long lines.
2698 * include/bits/hashtable.h (__hash_code_base_access): Define and
2699 use it to check its _M_bucket_index noexcept qualification. Use
2700 also in place of...
2701 (__access_protected_ctor): ...this.
2702 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2703 Adapt line number.
2704 * testsuite/23_containers/unordered_set/
2705 not_default_constructible_hash_neg.cc: Likewise.
2706
51835a80
FD
27072014-01-13 François Dumont <fdumont@gcc.gnu.org>
2708
2709 * include/debug/set.h (set): Implement C++11 allocator-aware
2710 container requirements.
2711 * include/debug/map.h (map): Likewise.
2712 * include/debug/multiset.h (multiset): Likewise.
2713 * include/debug/multimap.h (multimap): Likewise.
2714 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2715 fix implementation regarding management of safe iterators.
2716 * include/debug/map.h (map::operator=(map&&)): Likewise.
2717 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2718 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2719 Likewise.
2720 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2721 Rely on the same operator from normal mode.
2722 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2723 Likewise.
2724 * include/debug/multiset.h
2725 (multiset::operator=(std::initializer_list<>)): Likewise.
2726 * include/debug/multimap.h
2727 (multimap::operator=(std::initializer_list<>)): Likewise.
2728 * include/debug/set.h (set::swap(set&)): Add noexcept
2729 specification, add allocator equality check.
2730 * include/debug/map.h (map::swap(map&)): Likewise.
2731 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2732 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2733
92bf1382
JW
27342014-01-10 Jonathan Wakely <jwakely@redhat.com>
2735
2736 PR libstdc++/59698
2737 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2738 and stylistic improvements.
2739 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2740 and update for C++11.
2741 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2742
b1fb52ca
JW
2743 PR libstdc++/59687
2744 * doc/xml/manual/backwards_compatibility.xml
2745 (backwards.third.nocreate_noreplace): Correct and expand.
2746
48c7451e
JW
2747 PR libstdc++/59699
2748 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2749
f0bc4aea
JW
27502014-01-09 Jonathan Wakely <jwakely@redhat.com>
2751
2752 PR libstdc++/59738
2753 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2754 support for non-Movable types.
2755
4bc0ec32
JW
2756 PR libstdc++/59680
2757 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2758
ace295af
FD
27592014-01-08 François Dumont <fdumont@gcc.gnu.org>
2760
2761 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2762 *this allocator instance when building temporary vector instance
2763 so that *this allocator does not get moved.
2764 * include/debug/safe_base.h
2765 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2766 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2767 move constructor from _Safe_sequence_base.
2768 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2769 safe iterators if the instance is moved.
2770 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2771 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2772 check on a vector iterator.
2773 * testsuite/23_containers/vector/allocator/move_assign.cc
2774 (test02): Likewise.
2775 (test03): New, test with a non-propagating allocator.
2776 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2777
f43cc2a6
TS
27782014-01-07 Tim Shen <timshen91@gmail.com>
2779
2780 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2781 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2782 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2783 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2784 _BracketMatcher<>::_M_add_char(),
2785 _BracketMatcher<>::_M_add_collating_element(),
2786 _BracketMatcher<>::_M_add_equivalence_class(),
2787 _BracketMatcher<>::_M_add_character_class(),
2788 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2789 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2790 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2791 to template parameter; Add cache for _BracketMatcher. Adjust
2792 declarations from here...
2793 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2794 imbuing a regex will trigger a recompilation to rebuild the cache.
2795 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2796 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2797 different template bool parameters.
2798 * include/bits/regex_executor.h: Remove unnecessary declarations.
2799 * include/std/regex: Adjust including orders.
2800 * testsuite/28_regex/traits/char/user_defined.cc: New.
2801 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2802
14c12d0d
RO
28032014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2804
2805 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2806 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2807 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2808 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2809 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2810
aa118a03
RS
28112014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2812
2813 Update copyright years
2814
f9030485
RS
28152014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2816
2817 * testsuite/18_support/new_handler.cc,
2818 testsuite/18_support/terminate_handler.cc,
2819 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2820 the copyright notice.
86a2db33 2821\f
94c13a09 2822Copyright (C) 2014 Free Software Foundation, Inc.
3cc6dd4d 2823
86a2db33
JJ
2824Copying and distribution of this file, with or without modification,
2825are permitted in any medium without royalty provided the copyright
2826notice and this notice are preserved.