crossconfig.m4: Support spu-*-elf* targets.
[gcc.git] / libstdc++-v3 / ChangeLog
1 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
2
3 * crossconfig.m4: Support spu-*-elf* targets.
4 * configure: Regenerate.
5
6 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
7
8 PR libstdc++/60564
9 * include/std/future (__future_base::_Task_state<>): Change
10 constructors to template functions using perfect forwarding.
11 (__create_task_state): Use decayed type as stored task.
12 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
13 * testsuite/30_threads/packaged_task/60564.cc: New.
14
15 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
16
17 * scripts/create_testsuite_files: Add testsuite/experimental in
18 the list of folders to search for tests.
19
20 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
21
22 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
23
24 2014-03-15 Tim Shen <timshen91@gmail.com>
25
26 * include/bits/regex.h: Add/modify comments.
27 * include/bits/regex_compiler.h: Likewise.
28 * include/bits/regex_executor.h: Likewise.
29 * include/bits/regex_executor.tcc: Likewise.
30 * include/bits/regex_scanner.h: Likewise.
31
32 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
33
34 PR ipa/58721
35 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
36 _ZNSt12system_errorC* symbols which are not exported on any target.
37
38 2014-03-12 Roland McGrath <mcgrathr@google.com>
39 Mark Seaborn <mseaborn@google.com>
40
41 PR libstdc++/59392
42 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
43 the address of a null pointer, not with a null pointer to pointer.
44 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
45 * testsuite/18_support/bad_exception/59392.cc: New file.
46
47 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
48
49 PR libstdc++/60499
50 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
51 Uglify name.
52 * include/debug/map (map::operator=(map&&)): Likewise.
53 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
54 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
55 * include/debug/set (set::operator=(set&&)): Likewise.
56 * include/debug/unordered_map
57 (unordered_map::operator=(unordered_map&&)): Likewise.
58 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
59 * include/debug/unordered_set
60 (unordered_set::operator=(unordered_set&&)): Likewise.
61 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
62 * include/debug/vector (vector::operator=(vector&&)): Likewise.
63 * testsuite/23_containers/forward_list/debug/60499.cc: New
64 * testsuite/23_containers/map/debug/60499.cc: New
65 * testsuite/23_containers/multimap/debug/60499.cc: New
66 * testsuite/23_containers/multiset/debug/60499.cc: New
67 * testsuite/23_containers/set/debug/60499.cc: New
68 * testsuite/23_containers/unordered_map/debug/60499.cc: New
69 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
70 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
71 * testsuite/23_containers/unordered_set/debug/60499.cc: New
72 * testsuite/23_containers/vector/debug/60499.cc: New
73
74 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
75
76 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
77 for filesystem and fundamentals TS work items.
78
79 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
80
81 PR c++/60376
82 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
83 Adjust dg-error directives.
84
85 2014-02-26 Tim Shen <timshen91@gmail.com>
86
87 * include/bits/regex.tcc (match_results<>::format,
88 regex_replace<>): Update __out after calling std::copy.
89 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
90 Add testcase.
91 * testsuite/28_regex/match_results/format.cc: Likewise.
92
93 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
94
95 PR libstdc++/60308
96 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
97 allocator_type&)): Remove redundant call to _M_initialize_map.
98 (deque::deque(const allocator_type&)): Initialize _Base with a
99 constructor that calls _M_initialize_map.
100
101 Partial revert:
102
103 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
104 PR libstdc++/58338
105 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
106 _M_initialize_map.
107
108 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
109
110 Rename testsuite directory shared_mutex to shared_timed_mutex
111 for consistency.
112 * testsuite/30_threads/shared_mutex: Moved to...
113 * testsuite/30_threads/shared_timed_mutex: ...here
114
115 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
116
117 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
118 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
119 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
120 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
121 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
122 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
123 * testsuite/30_threads/shared_lock/requirements/
124 explicit_instantiation.cc: Ditto.
125 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
126 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
127 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
128 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
129 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
130 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
131 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
132 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
133 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
134 * testsuite/30_threads/shared_mutex/requirements/
135 standard_layout.cc: Ditto.
136 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
137 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
138 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
139 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
140 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
141
142 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
143
144 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
145 execution on i?86-*-solaris2.9, remove comment.
146 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
147
148 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
149
150 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
151 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
152 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
153
154 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
155
156 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
157 not use varargs when argument could be non-POD.
158 (__alloctr_rebind_helper): Eliminate static const bool member by
159 using true_type and false_type.
160 (allocator_traits::__allocate_helper): Likewise.
161 (allocator_traits::__construct_helper): Likewise.
162 (allocator_traits::__destroy_helper): Likewise.
163 (allocator_traits::__maxsize_helper): Likewise.
164 (allocator_traits::__select_helper): Likewise.
165 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
166 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
167 Remove redundant condition.
168 * include/bits/stl_vector.h (vector::operator=(const vector&)):
169 Likewise.
170 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
171 indirection through __alloc_traits.
172 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
173 Eliminate static const bool members by using true_type and false_type.
174 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
175 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
176 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
177 New.
178 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
179
180 PR libstdc++/59829
181 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
182 (vector::_M_data_ptr): New overloaded functions to ensure empty
183 vectors do not dereference the pointer.
184 * testsuite/23_containers/vector/59829.cc: New.
185 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
186 Adjust dg-error line number.
187 * testsuite/23_containers/vector/requirements/dr438/
188 constructor_1_neg.cc: Likewise.
189 * testsuite/23_containers/vector/requirements/dr438/
190 constructor_2_neg.cc: Likewise.
191 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
192 Likewise.
193
194 PR libstdc++/21609
195 * include/ext/array_allocator.h: Add deprecated attribute.
196
197 PR libstdc++/57226
198 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
199 installation and use of python printers.
200 * doc/xml/manual/status_cxx2011.xml: Update.
201 * doc/html/*: Regenerate.
202
203 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
204 Kyle Lippincott <spectral@google.com>
205
206 PR libstdc++/59656
207 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
208 constructor and grant friendship to weak_ptr.
209 (weak_ptr::lock()): Use new constructor.
210 * include/bits/shared_ptr_base.h
211 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
212 and define specializations.
213 (__shared_count): Add new non-throwing constructor.
214 (__shared_ptr): Add new non-throwing constructor and grant friendship
215 to __weak_ptr.
216 (__weak_ptr::lock()): Use new constructor.
217 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
218 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
219
220 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
221
222 PR libstdc++/59215
223 * include/bits/shared_ptr_base.h
224 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
225 load.
226
227 2014-01-27 Jason Merrill <jason@redhat.com>
228
229 Core DR 475
230 PR c++/41174
231 PR c++/59224
232 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
233 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
234 (__cxa_allocate_exception): Don't set it here.
235
236 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
237
238 * include/bits/stl_map.h: Remove anachronistic comment.
239 * include/bits/stl_multimap.h: Add whitespace.
240 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
241 -std=gnu++11 instead of -std=c++11.
242 * testsuite/23_containers/map/operators/2.cc: Likewise.
243 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
244 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
245 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
246
247 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
248 * configure: Regenerate.
249
250 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
251
252 PR libstdc++/59531
253 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
254 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
255
256 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
257 Peter A. Bigot <pab@pabigot.com>
258
259 PR libstdc++/59531
260 * include/experimental/string_view
261 (copy(_CharT*, size_type, size_type) const): Correct throw string.
262 Correct copy start location.
263
264 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
265 Peter A. Bigot <pab@pabigot.com>
266
267 PR libstdc++/59530
268 * include/experimental/string_view (operator[](size_type) const):
269 Fix one-off index error in debug check.
270 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
271 test basic_string_view at size().
272 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
273
274 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
275 Peter A. Bigot <pab@pabigot.com>
276
277 PR libstdc++/59529
278 * include/experimental/string_view
279 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
280 * testsuite/experimental/string_view/operations/substr/char/1.cc:
281 Comment out catch of out_of_range; No terminating null
282 in basic_string_view. Check begin == end.
283 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
284 Ditto.
285
286 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
287
288 PR libstdc++/59548
289 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
290 constructor to prevent it being implicitly defined as deleted, but
291 do not copy anything.
292 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
293 Define copy and move constructors similar to _Safe_sequence_base's.
294 * testsuite/23_containers/unordered_map/59548.cc: New.
295
296 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
297 Steve Ellcey <sellcey@mips.com>
298
299 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
300 function.
301 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
302 * (configure, config.h.in): Regenerate.
303 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
304
305 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
306
307 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
308 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
309
310 PR libstdc++/59872
311 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
312 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
313 Likewise.
314 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
315 Likewise.
316 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
317 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
318 functions to perform moving or copying of elements from rvalue tree.
319 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
320 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
321 * testsuite/23_containers/map/59872.cc: New.
322 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
323
324 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
325
326 * include/bits/stl_deque.h (_Deque_impl): Move comment.
327
328 PR libstdc++/58764
329 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
330 Split into separate default constructor and constructor taking
331 allocator.
332 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
333 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
334 Likewise.
335 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
336 * include/debug/list (list::list(const _Allocator&)): Likewise.
337 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
338 Likewise.
339 * include/debug/multimap.h
340 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
341 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
342 Likewise.
343 * include/debug/multiset.h
344 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
345 * include/debug/vector (vector::vector(const allocator_type&)):
346 Likewise.
347 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
348 * include/profile/list (list::list(const _Allocator&)): Likewise.
349 * include/profile/map.h
350 (map::map(const _Compare&, const _Allocator&)): Likewise.
351 * include/profile/multimap.h
352 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
353 * include/profile/set.h
354 (set::set(const _Compare&, const _Allocator&)): Likewise.
355 * include/profile/multiset.h
356 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
357 * include/profile/vector (vector::vector(const _Allocator&)):
358 Likewise.
359 * testsuite/23_containers/deque/58764.cc: New.
360 * testsuite/23_containers/list/58764.cc: New.
361 * testsuite/23_containers/map/58764.cc: New.
362 * testsuite/23_containers/multimap/58764.cc: New.
363 * testsuite/23_containers/set/58764.cc: New.
364 * testsuite/23_containers/multiset/58764.cc: New.
365 * testsuite/23_containers/vector/58764.cc: New.
366 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
367 Adjust dg-error line number.
368 * testsuite/23_containers/deque/requirements/dr438/
369 constructor_1_neg.cc: Likewise.
370 * testsuite/23_containers/deque/requirements/dr438/
371 constructor_2_neg.cc: Likewise.
372 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
373 Likewise.
374 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
375 Likewise.
376 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
377 Likewise.
378 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
379 Likewise.
380 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
381 Likewise.
382 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
383 Likewise.
384 * testsuite/23_containers/vector/requirements/dr438/
385 constructor_1_neg.cc: Likewise.
386 * testsuite/23_containers/vector/requirements/dr438/
387 constructor_2_neg.cc: Likewise.
388 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
389 Likewise.
390
391 PR libstdc++/58764 (again)
392 * include/bits/stl_list.h (list): Make default constructor's exception
393 specification conditional.
394 * include/bits/stl_vector.h (vector): Likewise.
395 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
396 to default constructor.
397 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
398 Adjust dg-error line number.
399 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
400 Likewise.
401 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
402 Likewise.
403 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
404 Likewise.
405 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
406 Likewise.
407 * testsuite/23_containers/vector/requirements/dr438/
408 constructor_1_neg.cc: Likewise.
409 * testsuite/23_containers/vector/requirements/dr438/
410 constructor_2_neg.cc: Likewise.
411 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
412 Likewise.
413
414 2014-01-21 Tim Shen <timshen91@gmail.com>
415
416 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
417 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
418 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
419
420 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
421
422 PR libstdc++/56267
423 * include/bits/hashtable.h (__cache_default): Do not depend on
424 whether the hash function is DefaultConstructible or CopyAssignable.
425 (_Hashtable): Adjust static assertions.
426 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
427 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
428 dg-error line number.
429 * testsuite/23_containers/unordered_set/
430 not_default_constructible_hash_neg.cc: Remove.
431
432 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
433
434 * scripts/create_testsuite_files: Add testsuite/experimental in
435 the list of folders to search for tests.
436 * include/experimental/string_view
437 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
438 incompatible with constexpr qualifier.
439 (basic_string_view<>::front()): Likewise.
440 (basic_string_view<>::back()): Likewise.
441 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
442 Merge dg-options directives into one.
443 * testsuite/experimental/string_view/element_access/char/2.cc:
444 Likewise. Remove invalid experimental namespace scope on
445 string_view_type.
446
447 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
448
449 PR libstdc++/56267
450 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
451 friendship to _Local_iterator_base<..., false>.
452 (_Local_iterator_base): Give protected access to all existing members.
453 (_Local_iterator_base::_M_curr()): New public accessor.
454 (_Local_iterator_base::_M_get_bucket()): New public accessor.
455 (_Local_iterator_base<..., false>::_M_init()): New function to manage
456 the lifetime of the _Hash_code_base explicitly.
457 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
458 (_Local_iterator_base<..., false>): Define copy constructor and copy
459 assignment operator that use new functions to manage _Hash_code_base.
460 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
461 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
462 Use public API for _Local_iterator_base.
463 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
464 * include/debug/unordered_map (__debug::unordered_map::erase(),
465 __debug::unordered_multimap::erase()): Likewise.
466 * include/debug/unordered_set (__debug::unordered_set::erase(),
467 __debug::unordered_multiset::erase()): Likewise.
468 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
469
470 2014-01-19 Tim Shen <timshen91@gmail.com>
471
472 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
473 Fix parse error of multiple consecutive quantifiers like "a**".
474 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
475 Likewise.
476 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
477
478 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
479
480 * include/profile/set.h (set): Implement C++11 allocator-aware
481 container requirements.
482 * include/profile/map.h (map): Likewise.
483 * include/profile/multiset.h (multiset): Likewise.
484 * include/profile/multimap.h (multimap): Likewise.
485 * include/profile/set.h
486 (set::operator=(const set&)): Define as default in C++11 mode.
487 (set::operator=(set&&)): Likewise.
488 * include/profile/map.h
489 (map::operator=(const map&)): Likewise.
490 (map::operator=(map&&)): Likewise.
491 * include/profile/multiset.h
492 (multiset::operator=(const multiset&)): Likewise.
493 (multiset::operator=(multiset&&)): Likewise.
494 * include/profile/multimap.h
495 (multimap::operator=(const multimap&)): Likewise.
496 (multimap::operator=(multimap&&)): Likewise.
497 * include/profile/set.h (set::operator=(std::initializer_list<>)):
498 Rely on the same operator from normal mode.
499 * include/profile/map.h (map::operator=(std::initializer_list<>)):
500 Likewise.
501 * include/profile/multiset.h
502 (multiset::operator=(std::initializer_list<>)): Likewise.
503 * include/profile/multimap.h
504 (multimap::operator=(std::initializer_list<>)): Likewise.
505 * include/profile/set.h (set::swap(set&)): Add noexcept
506 specification.
507 * include/profile/map.h (map::swap(map&)): Likewise.
508 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
509 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
510
511 2014-01-17 Tim Shen <timshen91@gmail.com>
512
513 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
514 use std::map.
515 * include/bits/regex_automaton.h: Do not use std::set.
516 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
517 _BracketMatcher<>::_M_add_collating_element(),
518 _BracketMatcher<>::_M_add_equivalence_class(),
519 _BracketMatcher<>::_M_make_range()): Likewise.
520 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
521 Likewise.
522 * include/bits/regex_executor.h: Do not use std::queue.
523 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
524 _Executor<>::_M_dfs()): Likewise.
525 * include/std/regex: Remove <map>, <set> and <queue>.
526
527 2014-01-17 Tim Shen <timshen91@gmail.com>
528
529 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
530 basic_regex<>::assign()): Change __compile_nfa to accept
531 const _CharT* only.
532 * include/bits/regex_compiler.h: Change _Compiler's template
533 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
534 * include/bits/regex_compiler.tcc: Likewise.
535
536 2014-01-17 Tim Shen <timshen91@gmail.com>
537
538 * include/bits/regex_compiler.h: Change _ScannerT into char-type
539 templated.
540 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
541 _ScannerBase from _Scanner; Change _Scanner's template argument from
542 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
543 instead.
544 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
545 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
546 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
547 Likewise.
548 * include/std/regex: Add <cstring> for using strchr.
549
550 2014-01-17 Tim Shen <timshen91@gmail.com>
551
552 * bits/regex_automaton.tcc: Indentation fix.
553 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
554 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
555 _BracketMatcher<>): Add bool option template parameters and
556 specializations to make matching more efficient and space saving.
557 * bits/regex_compiler.tcc: Likewise.
558
559 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
560
561 PR libstdc++/59712
562 * include/bits/hashtable_policy.h: Fix some long lines.
563 * include/bits/hashtable.h (__hash_code_base_access): Define and
564 use it to check its _M_bucket_index noexcept qualification. Use
565 also in place of...
566 (__access_protected_ctor): ...this.
567 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
568 Adapt line number.
569 * testsuite/23_containers/unordered_set/
570 not_default_constructible_hash_neg.cc: Likewise.
571
572 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
573
574 * include/debug/set.h (set): Implement C++11 allocator-aware
575 container requirements.
576 * include/debug/map.h (map): Likewise.
577 * include/debug/multiset.h (multiset): Likewise.
578 * include/debug/multimap.h (multimap): Likewise.
579 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
580 fix implementation regarding management of safe iterators.
581 * include/debug/map.h (map::operator=(map&&)): Likewise.
582 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
583 * include/debug/multimap.h (multimap::operator=(multimap&&)):
584 Likewise.
585 * include/debug/set.h (set::operator=(std::initializer_list<>)):
586 Rely on the same operator from normal mode.
587 * include/debug/map.h (map::operator=(std::initializer_list<>)):
588 Likewise.
589 * include/debug/multiset.h
590 (multiset::operator=(std::initializer_list<>)): Likewise.
591 * include/debug/multimap.h
592 (multimap::operator=(std::initializer_list<>)): Likewise.
593 * include/debug/set.h (set::swap(set&)): Add noexcept
594 specification, add allocator equality check.
595 * include/debug/map.h (map::swap(map&)): Likewise.
596 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
597 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
598
599 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
600
601 PR libstdc++/59698
602 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
603 and stylistic improvements.
604 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
605 and update for C++11.
606 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
607
608 PR libstdc++/59687
609 * doc/xml/manual/backwards_compatibility.xml
610 (backwards.third.nocreate_noreplace): Correct and expand.
611
612 PR libstdc++/59699
613 * doc/xml/manual/support.xml (std.support.types.null): Update links.
614
615 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
616
617 PR libstdc++/59738
618 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
619 support for non-Movable types.
620
621 PR libstdc++/59680
622 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
623
624 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
625
626 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
627 *this allocator instance when building temporary vector instance
628 so that *this allocator does not get moved.
629 * include/debug/safe_base.h
630 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
631 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
632 move constructor from _Safe_sequence_base.
633 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
634 safe iterators if the instance is moved.
635 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
636 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
637 check on a vector iterator.
638 * testsuite/23_containers/vector/allocator/move_assign.cc
639 (test02): Likewise.
640 (test03): New, test with a non-propagating allocator.
641 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
642
643 2014-01-07 Tim Shen <timshen91@gmail.com>
644
645 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
646 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
647 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
648 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
649 _BracketMatcher<>::_M_add_char(),
650 _BracketMatcher<>::_M_add_collating_element(),
651 _BracketMatcher<>::_M_add_equivalence_class(),
652 _BracketMatcher<>::_M_add_character_class(),
653 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
654 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
655 Fix _AnyMatcher behavior of POSIX style and move _M_flags
656 to template parameter; Add cache for _BracketMatcher. Adjust
657 declarations from here...
658 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
659 imbuing a regex will trigger a recompilation to rebuild the cache.
660 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
661 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
662 different template bool parameters.
663 * include/bits/regex_executor.h: Remove unnecessary declarations.
664 * include/std/regex: Adjust including orders.
665 * testsuite/28_regex/traits/char/user_defined.cc: New.
666 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
667
668 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
669
670 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
671 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
672 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
673 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
674 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
675
676 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
677
678 Update copyright years
679
680 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
681
682 * testsuite/18_support/new_handler.cc,
683 testsuite/18_support/terminate_handler.cc,
684 testsuite/18_support/unexpected_handler.cc: Use the standard form for
685 the copyright notice.
686 \f
687 Copyright (C) 2014 Free Software Foundation, Inc.
688
689 Copying and distribution of this file, with or without modification,
690 are permitted in any medium without royalty provided the copyright
691 notice and this notice are preserved.