2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
[gcc.git] / libstdc++-v3 / ChangeLog
1 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
2
3 PR libstdc++/61329
4 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
5 inline specifier.
6 (_State_base::_M_dot): Likewise.
7
8 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
9
10 * include/profile/map.h: Fix typo in comment; minor formatting fix.
11 * include/profile/multimap.h: Likewise.
12 * include/profile/set.h: Likewise.
13 * include/profile/multiset.h: Likewise.
14
15 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
16
17 * include/profile/array: Clean useless white chars.
18 * include/profile/base.h: Likewise.
19 * include/profile/iterator_tracker.h: Likewise.
20 * include/profile/bitset: Code cleanup and remove not instrumented code.
21 * include/profile/deque: Likewise.
22 * include/profile/forward_list: Likewise.
23 * include/profile/list (std::__profile::_List_profile<>): New.
24 (std::__profile::list<>): Inherit from latter and adapt.
25 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
26 advise to match any ordered to unordered container conversion.
27 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
28 New.
29 * include/Makefile.am: Add latter.
30 * include/Makefile.in: Regenerate.
31 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
32 remove not instrumented code.
33 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
34 * include/profile/set.h (std::__profile::set<>): Likewise.
35 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
36 * include/profile/unordered_base.h: Add some line feed.
37 * include/profile/unordered_map: Clean useless white chars and replace
38 spaces with tabs.
39 * include/profile/unordered_set: Likewise.
40 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
41 (std::__profile::_Vector_profile_post<>): New.
42 (std::__profile::vector<>): Inherit from latter and adapt.
43
44 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
45
46 PR libstdc++/60793
47 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
48 dragonfly target selector to all tests that run on freebsd.
49
50 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
51 dragonfly.
52 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
53 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
54
55 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
56 selector.
57 * testsuite/30_threads/call_once/60497.cc: Likewise.
58 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
59 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
60 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
61 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
62 * testsuite/30_threads/promise/60966.cc: Likewise.
63 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
64 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
65 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
66 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
67 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
68 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
69 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
70 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
71 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
72 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
73 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
74 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
75 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
76 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
77 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
78 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
79 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
80
81 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
82
83 PR libstdc++/61143
84 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
85 usable state.
86 * testsuite/23_containers/unordered_set/61143.cc: New.
87 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
88
89 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
90
91 PR libstdc++/61269
92 * include/std/type_traits: Move include outside namespace std.
93 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
94 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
95 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
96 Likewise.
97
98 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
99 Fix warning.
100
101 2014-05-21 John Marino <gnugcc@marino.st>
102
103 * acinclude.m4 (*-*-dragonfly*): New target.
104 * configure: Regenerate.
105 * configure.host (*-*-dragonfly*): New target.
106 * config/locale/dragonfly/c_locale.cc: New.
107 * config/locale/dragonfly/ctype_members.cc: New.
108 * config/os/bsd/dragonfly/ctype_base.h: New.
109 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
110 * config/os/bsd/dragonfly/ctype_inline.h: New.
111 * config/os/bsd/dragonfly/os_defines.h: New.
112
113 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
114
115 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
116 libstdc++.exp imports those flags via getenv.
117 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
118 CXXFLAGS contains a '-O' flag.
119
120 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
121
122 PR libstdc++/61223
123 Revert:
124 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
125
126 PR libstdc++/60758
127 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
128 and add unwind directives.
129
130 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
131
132 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
133
134 2014-05-20 Tim Shen <timshen91@gmail.com>
135
136 PR libstdc++/61227
137 * include/bits/regex_compiler.h
138 (_BracketMatcher<>::_M_add_character_class): Add negative character
139 class support.
140 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
141 Likewise.
142 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
143 Add more testcases.
144
145 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
146
147 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
148
149 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
150
151 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
152 * libsupc++/new_opnt.cc: Likewise.
153
154 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
155
156 PR libstdc++/60966
157 * include/std/future (__future_base::_State_baseV2::_M_set_result):
158 Pass lock into _M_do_set and hold it until the function returns.
159 Signal condition variable after call_once completes.
160 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
161 signal here.
162 * testsuite/30_threads/promise/60966.cc: New.
163
164 2014-05-16 Iain Sandoe <iain@codesourcery.com>
165 Sandra Loosemore <sandra@codesourcery.com>
166
167 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
168 until after checking that the test is eligible to be run.
169
170 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
171
172 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
173 test for 32-bit target.
174 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
175 Likewise.
176 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
177 Fix test.
178
179 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
180
181 PR libstdc++/60758
182 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
183 and add unwind directives.
184
185 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
186
187 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
188 overflow.
189 * include/std/chrono (chrono_literals::__select_type::_Select_type):
190 Remove.
191 (chrono_literals::_Checked_integral_constant): Define.
192 Simplify UDL operator templates and check for overflow.
193 * testsuite/20_util/duration/literals/range.cc: New.
194
195 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
196 Jonathan Wakely <jwakely@redhat.com>
197
198 PR libstdc++/61166
199 * include/bits/parse_numbers.h: Use integral_constant to remove
200 duplication and simplify.
201 * testsuite/20_util/duration/literals/61166.cc: New.
202
203 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
204
205 PR libstdc++/60326
206 * include/std/type_traits (__make_unsigned, __make_signed): Define
207 specializations for wchar_t, char16_t and char32_t.
208 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
209 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
210 test for make_unsigned<volatile wchar_t>.
211 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
212 Likewise.
213 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
214 line number.
215 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
216 Likewise.
217 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
218 Likewise.
219
220 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
221
222 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
223 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
224 * include/std/utility (tuple_size, tuple_element): Likewise.
225 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
226 Adjust dg-error line number.
227
228 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
229
230 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
231 (__tuple_element_t): Define.
232 (tuple_element): Use __tuple_element_t.
233 (__cv_tuple_size): Define.
234 (tuple_size<cv _Tp>): Use __cv_tuple_size.
235 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
236 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
237 (__tuple_compare): Remove size check, re-order parameters.
238 (operator==, operator<): Use static_assert to check requirements.
239 * include/std/functional (__volget): use __tuple_element_t.
240 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
241 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
242
243 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
244
245 PR libstdc++/60497
246 * include/std/tuple (get, __tuple_compare): Qualify more calls to
247 prevent ADL. Cast comparison results to bool.
248 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
249 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
250
251 PR libstdc++/60497
252 * include/debug/array (get): Qualify call to other get overload.
253 * include/profile/array (get): Likewise.
254 * include/std/array (get): Likewise.
255 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
256 * include/std/mutex (unique_lock, call_once): Use __addressof.
257 (__unlock_impl): Remove unused template.
258 (__try_to_lock): Declare inline.
259 (__try_lock_impl::__do_try_lock): Qualify function calls.
260 (lock): Avoid narrowing conversion.
261 * testsuite/20_util/bind/60497.cc: New.
262 * testsuite/23_containers/array/element_access/60497.cc: New.
263 * testsuite/30_threads/call_once/60497.cc: New.
264 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
265
266 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
267
268 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
269 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
270 * acinclude.m4 (libtool_VERSION): Bump.
271 * configure: Regenerate.
272 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
273 * testsuite/28_regex/regex_error/base.cc: New.
274
275 2014-05-08 Joshua Gay <jgay@gnu.org>
276
277 PR libstdc++/61117
278 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
279 source" with "free software".
280 * doc/html/faq.html: Likewise.
281
282 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
283
284 PR libstdc++/57394
285 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
286 deleted for C++11.
287 (operator=(const ios_base&)): Likewise.
288 * include/std/streambuf: Remove trailing whitespace.
289 (basic_streambuf(const basic_streambuf&)): Fix initializer for
290 _M_out_end. Define as defaulted for C++11.
291 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
292 (swap(basic_streambuf&)): Define for C++11.
293 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
294
295 PR libstdc++/13860
296 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
297
298 * include/std/iostream: Fix URL in comment.
299 * src/c++98/ios_init.cc: Fix path in comment.
300
301 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
302
303 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
304 * configure: Regenerate.
305
306 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
307
308 PR libstdc++/61023
309 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
310 comparison function.
311 * testsuite/23_containers/set/cons/61023.cc: New.
312
313 PR libstdc++/61086
314 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
315 Remove.
316 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
317 arithmetic to obtain a mutable iterator from const_iterator.
318 * include/bits/vector.tcc (vector::insert): Likewise.
319 * include/debug/vector (vector::erase): Likewise.
320 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
321 Adjust dg-error line number.
322 * testsuite/23_containers/vector/requirements/dr438/
323 constructor_1_neg.cc: Likewise.
324 * testsuite/23_containers/vector/requirements/dr438/
325 constructor_2_neg.cc: Likewise.
326 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
327 Likewise.
328
329 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
330
331 * include/Makefile.in: Regenerate.
332
333 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
334
335 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
336 parameter to pass the 2 instances to check allocator equality.
337 * include/debug/safe_container.h: New, define _Safe_container<>.
338 * include/Makefile.am: Add previous.
339 * include/debug/deque (std::__debug::deque<>): Inherit
340 _Safe_container<>. Use default implementation for all special
341 functions.
342 * include/debug/forward_list (std::__debug::forward_list<>):
343 Likewise.
344 * include/debug/list (std::__debug::list<>): Likewise.
345 * include/debug/map.h (std::__debug::map<>): Likewise.
346 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
347 * include/debug/set.h (std::__debug::set<>): Likewise.
348 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
349 * include/debug/string (std::__debug::basic_string<>): Likewise.
350 * include/debug/unordered_map
351 (std::__debug::unordered_map<>): Likewise.
352 (std::__debug::unordered_multimap<>): Likewise.
353 * include/debug/unordered_set
354 (std::__debug::unordered_set<>): Likewise.
355 (std::__debug::unordered_multiset<>): Likewise.
356 * include/debug/vector (std::__debug::vector<>): Likewise.
357 * include/debug/safe_base.h (_Safe_sequence_base()): Add
358 noexcept.
359 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
360 (~_Safe_sequence_base()): Add noexcept.
361 * include/debug/safe_sequence.h
362 (std::__debug::_Safe_node_sequence<>): New.
363 * include/debug/safe_unordered_base.h
364 (_Safe_unordered_container_base()): Add noexcept.
365 (~_Safe_unordered_container_base()): Likewise.
366 (_M_swap(_Safe_unordered_container_base&)): Likewise.
367 * include/debug/safe_unordered_container.h:
368 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
369 (_Safe_unordered_container<>::_M_invalidate_all()): New.
370 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
371 qualifications.
372 * testsuite/util/debug/checks.h (check_construct1): Just implement
373 an invalid constructor invocation and no other operations
374 potentially not supported by some types of container.
375 (check_construct2): Likewise.
376 (check_construct3): Likewise.
377 * testsuite/23_containers/forward_list/allocator/move.cc: Add
378 check on iterators to make sure they are correctly moved in debug
379 mode.
380 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
381 Likewise.
382 * testsuite/23_containers/map/allocator/move.cc: Likewise.
383 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
384 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
385 * testsuite/23_containers/multimap/allocator/move_assign.cc:
386 Likewise.
387 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
388 * testsuite/23_containers/multiset/allocator/move_assign.cc:
389 Likewise.
390 * testsuite/23_containers/set/allocator/move.cc: Likewise.
391 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
392 * testsuite/23_containers/unordered_map/allocator/move.cc:
393 Likewise.
394 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
395 Likewise.
396 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
397 Likewise.
398 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
399 Likewise.
400 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
401 Likewise.
402 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
403 Likewise.
404 * testsuite/23_containers/unordered_set/allocator/move.cc:
405 Likewise.
406 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
407 Likewise.
408 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
409 New.
410 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
411 New.
412 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
413 New.
414 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
415 New.
416 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
417 New.
418 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
419 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
420 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
421 * testsuite/23_containers/map/debug/move_neg.cc: New.
422 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
423 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
424 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
425 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
426 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
427 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
428 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
429 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
430 * testsuite/23_containers/set/debug/move_neg.cc: New.
431 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
432 New.
433 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
434 New.
435 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
436 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
437 New.
438 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
439 New.
440 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
441 New.
442 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
443 New.
444 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
445 New.
446 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
447 New.
448 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
449 New.
450 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
451 New.
452 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
453 * testsuite/23_containers/vector/debug/move_neg.cc: New.
454
455 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
456
457 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
458 (CXXABI_1.3.9): Remove __float128 symbols.
459
460 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
461
462 PR libstdc++/59476
463 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
464 function to handle both C++03 and C++11 _Rb_tree_node implementations.
465 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
466 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
467 refer to...
468 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
469
470 PR libstdc++/61036
471 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
472 Check the correct type in the static assertion.
473 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
474
475 2014-04-27 Tim Shen <timshen91@gmail.com>
476
477 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
478 Add _S_opcode_repeat support to distingush a loop from
479 _S_opcode_alternative.
480 * include/bits/regex_automaton.tcc (_State_base::_M_print,
481 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
482 _StateSeq<>::_M_clone): Likewise.
483 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
484 Likewise.
485 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
486 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
487 Uglify local variable __i.
488 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
489 Use size_t instead of int to compare with vector::size().
490
491 2014-04-27 Tim Shen <timshen91@gmail.com>
492
493 * include/bits/regex_executor.h: Add _M_rep_count to track how
494 many times this repeat node are visited.
495 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
496 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
497 infinite loop.
498
499 2014-04-27 Tim Shen <timshen91@gmail.com>
500
501 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
502 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
503 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
504 * include/bits/regex_automaton.h: Remove quantifier counting variable.
505 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
506 Adjust debug NFA dump.
507
508 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
509
510 PR libstdc++/60710
511 * include/experimental/optional (operator!=): Implement in terms of
512 operator==.
513 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
514 * testsuite/experimental/optional/relops/2.cc: Likewise.
515 * testsuite/experimental/optional/relops/3.cc: Likewise.
516 * testsuite/experimental/optional/relops/4.cc: Likewise.
517 * testsuite/experimental/optional/relops/5.cc: Likewise.
518 * testsuite/experimental/optional/relops/6.cc: Likewise.
519
520 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
521
522 PR libstdc++/60958
523 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
524 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
525 comment.
526
527 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
528
529 * testsuite/util/testsuite_abi.cc (check_version): Update for
530 CXXABI_1.3.9.
531
532 2014-04-24 Tim Shen <timshen91@gmail.com>
533
534 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
535 Do _M_alt before _M_next.
536 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
537
538 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
539
540 PR libstdc++/43622
541 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
542 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
543 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
544
545 2014-04-24 Andreas Schwab <schwab@suse.de>
546
547 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
548 new CXXABI_1.3.9 symbols.
549
550 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
551
552 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
553 (CXXABI_1.3.9): New version.
554
555 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
556
557 PR libstdc++/43622
558 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
559 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
560 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
561
562 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
563
564 * configure.host: Remove solaris2.9 handling.
565 Change os_include_dir to os/solaris/solaris2.10.
566 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
567 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
568 * configure: Regenerate.
569 * config/abi/post/solaris2.9: Remove.
570 * config/os/solaris/solaris2.9: Rename to ...
571 * config/os/solaris/solaris2.10: ... this.
572 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
573 Remove.
574
575 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
576 Remove Solaris 9 reference.
577 * doc/html/manual/configure.html: Regenerate.
578
579 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
580 Remove *-*-solaris2.9 xfail.
581 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
582 Likewise.
583
584 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
585 xfail.
586
587 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
588
589 * include/std/functional (__is_location_invariant): Use __or_ helper.
590
591 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
592
593 PR libstdc++/60734
594 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
595
596 PR libstdc++/60695
597 * include/std/atomic (atomic<_Tp>): Add static assertion.
598 * testsuite/29_atomics/atomic/60695.cc: New.
599
600 PR libstdc++/60594
601 * include/std/functional (function::_Callable): Exclude own type
602 from the callable checks.
603 * testsuite/20_util/function/60594.cc: New.
604
605 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
606 const to constexpr member functions.
607
608 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
609 delegating constructor.
610 * include/bits/shared_ptr_base.h
611 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
612
613 * include/std/atomic: Uglify parameter names.
614
615 PR c++/60786
616 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
617 1.cc: Fix invalid explicit instantiations with unqualified names.
618 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
619 2.cc: Likweise.
620 * testsuite/20_util/tuple/53648.cc: Likweise.
621 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
622 Likewise.
623 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
624 Likewise.
625 * testsuite/23_containers/unordered_map/requirements/
626 debug_container.cc: Likewise.
627 * testsuite/23_containers/unordered_map/requirements/
628 explicit_instantiation/3.cc: Likewise.
629 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
630 Likewise.
631 * testsuite/23_containers/unordered_multimap/requirements/
632 explicit_instantiation/3.cc: Likewise.
633 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
634 Likewise.
635 * testsuite/23_containers/unordered_multiset/requirements/
636 explicit_instantiation/3.cc: Likewise.
637 * testsuite/23_containers/unordered_set/requirements/
638 debug_container.cc: Likewise.
639 * testsuite/23_containers/unordered_set/requirements/
640 explicit_instantiation/3.cc: Likewise.
641
642 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
643 not use uninitialized members in mem-initializers.
644 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
645 * testsuite/util/testsuite_common_types.h: Update comment.
646
647 * include/experimental/string_view: Fix inconsistent exception specs.
648
649 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
650 Remove name of unused parameter.
651
652 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
653
654 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
655 _Vector_base::_M_allocate): NullablePointer requirements do not
656 include initialization from literal zero, use value-initialization.
657 * include/bits/vector.tcc (vector::_M_insert_aux,
658 vector::_M_explace_back_aux): Likewise for assignment.
659
660 * include/bits/allocator.h (operator==, operator!=): Add exception
661 specifications.
662
663 PR libstdc++/60497
664 * include/std/tuple (get): Qualify calls to prevent ADL.
665 * testsuite/20_util/tuple/60497.cc: New.
666
667 * include/std/tuple (tuple_element_t): Define.
668 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
669 test.
670 * testsuite/20_util/tuple/tuple_element_t.cc: New.
671
672 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
673
674 PR libstdc++/59434
675 * include/bits/stl_iterator.h (move_iterator::reference,
676 move_iterator::operator*): Implement LWG 2106.
677 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
678
679 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
680
681 * include/std/complex (__complex_exp, pow): Specify the template
682 parameter in calls to std::polar, for expression templates.
683
684 2014-04-10 Andreas Schwab <schwab@suse.de>
685
686 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
687 symbols.
688 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
689 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
690
691 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
692
693 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
694
695 * testsuite/20_util/exchange/1.cc: Add missing return statements.
696 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
697 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
698 specifications.
699
700 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
701 Jack Howarth <howarth@bromo.med.uc.edu>
702
703 PR target/54407
704 * testsuite/30_threads/condition_variable/54185.cc: Skip for
705 darwin < 11.
706
707 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
708
709 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
710 Update link.
711 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
712 Fix broken links.
713 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
714 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
715 * doc/xml/manual/concurrency_extensions.xml
716 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
717 * doc/html/*: Regenerate.
718
719 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
720 Jonathan Wakely <jwakely@redhat.com>
721
722 PR libstdc++/60270
723 * include/std/iomanip (_Quoted_string operator>>): Do not clear
724 string if input is not quoted.
725 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
726
727 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
728
729 * libsupc++/eh_ptr.cc: Improve static_assert messages.
730
731 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
732
733 * testsuite/18_support/exception_ptr/60612-terminate.cc
734 (terminate, f): Wrap in _GLIBCXX_USE_C99.
735 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
736
737 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
738
739 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
740
741 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
742 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
743 Likewise.
744 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
745 Likewise.
746 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
747
748 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
749 Fix bad s/part/chapter/ substitutions.
750 * doc/xml/manual/io.xml (std.io): Likewise.
751 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
752 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
753
754 * doc/html/*: Regenerate.
755
756 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
757
758 PR libstdc++/60612
759 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
760 compatible with __cxa_exception.
761 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
762 Fix typos in comments.
763 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
764 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
765
766 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
767
768 PR libstdc++/60658
769 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
770 Use sizeof pointer type not the element type.
771 * testsuite/29_atomics/atomic/60658.cc: New.
772
773 2014-03-24 Jakub Jelinek <jakub@redhat.com>
774
775 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
776 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
777 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
778 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
779 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
780 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
781 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
782 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
783 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
784 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
785 entries.
786
787 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
788
789 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
790
791 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
792
793 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
794 to delegated constructor.
795 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
796 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
797 Likewise.
798 (_Hashtable(
799 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
800
801 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
802
803 PR libstdc++/60623
804 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
805
806 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
807
808 PR libstdc++/60587
809 * include/debug/functions.h (_Is_contiguous_sequence): Define.
810 (__foreign_iterator): Accept additional iterator. Do not dispatch on
811 iterator category.
812 (__foreign_iterator_aux2): Likewise. Add overload for iterators
813 from different types of debug container. Use _Is_contiguous_sequence
814 instead of is_lvalue_reference.
815 (__foreign_iterator_aux3): Accept additional iterator. Avoid
816 dereferencing past-the-end iterator.
817 (__foreign_iterator_aux4): Use const value_type* instead of
818 potentially user-defined const_pointer type.
819 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
820 and pass end iterator to __gnu_debug::__foreign_iterator.
821 (__glibcxx_check_insert_range_after): Likewise.
822 (__glibcxx_check_max_load_factor): Fix comment.
823 * include/debug/vector (_Is_contiguous_sequence): Define partial
824 specializations.
825 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
826 -std=gnu++11 option and unused header.
827 * testsuite/23_containers/vector/debug/60587.cc: New.
828 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
829
830 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
831
832 * crossconfig.m4: Support spu-*-elf* targets.
833 * configure: Regenerate.
834
835 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
836
837 PR libstdc++/60564
838 * include/std/future (__future_base::_Task_state<>): Change
839 constructors to template functions using perfect forwarding.
840 (__create_task_state): Use decayed type as stored task.
841 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
842 * testsuite/30_threads/packaged_task/60564.cc: New.
843
844 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
845
846 * scripts/create_testsuite_files: Add testsuite/experimental in
847 the list of folders to search for tests.
848
849 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
850
851 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
852
853 2014-03-15 Tim Shen <timshen91@gmail.com>
854
855 * include/bits/regex.h: Add/modify comments.
856 * include/bits/regex_compiler.h: Likewise.
857 * include/bits/regex_executor.h: Likewise.
858 * include/bits/regex_executor.tcc: Likewise.
859 * include/bits/regex_scanner.h: Likewise.
860
861 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
862
863 PR ipa/58721
864 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
865 _ZNSt12system_errorC* symbols which are not exported on any target.
866
867 2014-03-12 Roland McGrath <mcgrathr@google.com>
868 Mark Seaborn <mseaborn@google.com>
869
870 PR libstdc++/59392
871 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
872 the address of a null pointer, not with a null pointer to pointer.
873 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
874 * testsuite/18_support/bad_exception/59392.cc: New file.
875
876 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
877
878 PR libstdc++/60499
879 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
880 Uglify name.
881 * include/debug/map (map::operator=(map&&)): Likewise.
882 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
883 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
884 * include/debug/set (set::operator=(set&&)): Likewise.
885 * include/debug/unordered_map
886 (unordered_map::operator=(unordered_map&&)): Likewise.
887 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
888 * include/debug/unordered_set
889 (unordered_set::operator=(unordered_set&&)): Likewise.
890 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
891 * include/debug/vector (vector::operator=(vector&&)): Likewise.
892 * testsuite/23_containers/forward_list/debug/60499.cc: New
893 * testsuite/23_containers/map/debug/60499.cc: New
894 * testsuite/23_containers/multimap/debug/60499.cc: New
895 * testsuite/23_containers/multiset/debug/60499.cc: New
896 * testsuite/23_containers/set/debug/60499.cc: New
897 * testsuite/23_containers/unordered_map/debug/60499.cc: New
898 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
899 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
900 * testsuite/23_containers/unordered_set/debug/60499.cc: New
901 * testsuite/23_containers/vector/debug/60499.cc: New
902
903 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
904
905 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
906 for filesystem and fundamentals TS work items.
907
908 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
909
910 PR c++/60376
911 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
912 Adjust dg-error directives.
913
914 2014-02-26 Tim Shen <timshen91@gmail.com>
915
916 * include/bits/regex.tcc (match_results<>::format,
917 regex_replace<>): Update __out after calling std::copy.
918 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
919 Add testcase.
920 * testsuite/28_regex/match_results/format.cc: Likewise.
921
922 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
923
924 PR libstdc++/60308
925 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
926 allocator_type&)): Remove redundant call to _M_initialize_map.
927 (deque::deque(const allocator_type&)): Initialize _Base with a
928 constructor that calls _M_initialize_map.
929
930 Partial revert:
931
932 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
933 PR libstdc++/58338
934 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
935 _M_initialize_map.
936
937 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
938
939 Rename testsuite directory shared_mutex to shared_timed_mutex
940 for consistency.
941 * testsuite/30_threads/shared_mutex: Moved to...
942 * testsuite/30_threads/shared_timed_mutex: ...here
943
944 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
945
946 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
947 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
948 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
949 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
950 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
951 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
952 * testsuite/30_threads/shared_lock/requirements/
953 explicit_instantiation.cc: Ditto.
954 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
955 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
956 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
957 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
958 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
959 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
960 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
961 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
962 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
963 * testsuite/30_threads/shared_mutex/requirements/
964 standard_layout.cc: Ditto.
965 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
966 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
967 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
968 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
969 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
970
971 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
972
973 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
974 execution on i?86-*-solaris2.9, remove comment.
975 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
976
977 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
978
979 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
980 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
981 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
982
983 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
984
985 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
986 not use varargs when argument could be non-POD.
987 (__alloctr_rebind_helper): Eliminate static const bool member by
988 using true_type and false_type.
989 (allocator_traits::__allocate_helper): Likewise.
990 (allocator_traits::__construct_helper): Likewise.
991 (allocator_traits::__destroy_helper): Likewise.
992 (allocator_traits::__maxsize_helper): Likewise.
993 (allocator_traits::__select_helper): Likewise.
994 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
995 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
996 Remove redundant condition.
997 * include/bits/stl_vector.h (vector::operator=(const vector&)):
998 Likewise.
999 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1000 indirection through __alloc_traits.
1001 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1002 Eliminate static const bool members by using true_type and false_type.
1003 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1004 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1005 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1006 New.
1007 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1008
1009 PR libstdc++/59829
1010 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1011 (vector::_M_data_ptr): New overloaded functions to ensure empty
1012 vectors do not dereference the pointer.
1013 * testsuite/23_containers/vector/59829.cc: New.
1014 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1015 Adjust dg-error line number.
1016 * testsuite/23_containers/vector/requirements/dr438/
1017 constructor_1_neg.cc: Likewise.
1018 * testsuite/23_containers/vector/requirements/dr438/
1019 constructor_2_neg.cc: Likewise.
1020 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1021 Likewise.
1022
1023 PR libstdc++/21609
1024 * include/ext/array_allocator.h: Add deprecated attribute.
1025
1026 PR libstdc++/57226
1027 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1028 installation and use of python printers.
1029 * doc/xml/manual/status_cxx2011.xml: Update.
1030 * doc/html/*: Regenerate.
1031
1032 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1033 Kyle Lippincott <spectral@google.com>
1034
1035 PR libstdc++/59656
1036 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1037 constructor and grant friendship to weak_ptr.
1038 (weak_ptr::lock()): Use new constructor.
1039 * include/bits/shared_ptr_base.h
1040 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1041 and define specializations.
1042 (__shared_count): Add new non-throwing constructor.
1043 (__shared_ptr): Add new non-throwing constructor and grant friendship
1044 to __weak_ptr.
1045 (__weak_ptr::lock()): Use new constructor.
1046 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1047 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1048
1049 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1050
1051 PR libstdc++/59215
1052 * include/bits/shared_ptr_base.h
1053 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1054 load.
1055
1056 2014-01-27 Jason Merrill <jason@redhat.com>
1057
1058 Core DR 475
1059 PR c++/41174
1060 PR c++/59224
1061 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1062 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1063 (__cxa_allocate_exception): Don't set it here.
1064
1065 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1066
1067 * include/bits/stl_map.h: Remove anachronistic comment.
1068 * include/bits/stl_multimap.h: Add whitespace.
1069 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1070 -std=gnu++11 instead of -std=c++11.
1071 * testsuite/23_containers/map/operators/2.cc: Likewise.
1072 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1073 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1074 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1075
1076 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1077 * configure: Regenerate.
1078
1079 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1080
1081 PR libstdc++/59531
1082 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1083 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1084
1085 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1086 Peter A. Bigot <pab@pabigot.com>
1087
1088 PR libstdc++/59531
1089 * include/experimental/string_view
1090 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1091 Correct copy start location.
1092
1093 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1094 Peter A. Bigot <pab@pabigot.com>
1095
1096 PR libstdc++/59530
1097 * include/experimental/string_view (operator[](size_type) const):
1098 Fix one-off index error in debug check.
1099 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1100 test basic_string_view at size().
1101 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1102
1103 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1104 Peter A. Bigot <pab@pabigot.com>
1105
1106 PR libstdc++/59529
1107 * include/experimental/string_view
1108 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1109 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1110 Comment out catch of out_of_range; No terminating null
1111 in basic_string_view. Check begin == end.
1112 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1113 Ditto.
1114
1115 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1116
1117 PR libstdc++/59548
1118 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1119 constructor to prevent it being implicitly defined as deleted, but
1120 do not copy anything.
1121 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1122 Define copy and move constructors similar to _Safe_sequence_base's.
1123 * testsuite/23_containers/unordered_map/59548.cc: New.
1124
1125 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1126 Steve Ellcey <sellcey@mips.com>
1127
1128 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1129 function.
1130 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1131 * (configure, config.h.in): Regenerate.
1132 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1133
1134 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1135
1136 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1137 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1138
1139 PR libstdc++/59872
1140 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1141 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1142 Likewise.
1143 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1144 Likewise.
1145 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1146 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1147 functions to perform moving or copying of elements from rvalue tree.
1148 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1149 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1150 * testsuite/23_containers/map/59872.cc: New.
1151 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1152
1153 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1154
1155 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1156
1157 PR libstdc++/58764
1158 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1159 Split into separate default constructor and constructor taking
1160 allocator.
1161 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1162 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1163 Likewise.
1164 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1165 * include/debug/list (list::list(const _Allocator&)): Likewise.
1166 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1167 Likewise.
1168 * include/debug/multimap.h
1169 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1170 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1171 Likewise.
1172 * include/debug/multiset.h
1173 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1174 * include/debug/vector (vector::vector(const allocator_type&)):
1175 Likewise.
1176 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1177 * include/profile/list (list::list(const _Allocator&)): Likewise.
1178 * include/profile/map.h
1179 (map::map(const _Compare&, const _Allocator&)): Likewise.
1180 * include/profile/multimap.h
1181 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1182 * include/profile/set.h
1183 (set::set(const _Compare&, const _Allocator&)): Likewise.
1184 * include/profile/multiset.h
1185 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1186 * include/profile/vector (vector::vector(const _Allocator&)):
1187 Likewise.
1188 * testsuite/23_containers/deque/58764.cc: New.
1189 * testsuite/23_containers/list/58764.cc: New.
1190 * testsuite/23_containers/map/58764.cc: New.
1191 * testsuite/23_containers/multimap/58764.cc: New.
1192 * testsuite/23_containers/set/58764.cc: New.
1193 * testsuite/23_containers/multiset/58764.cc: New.
1194 * testsuite/23_containers/vector/58764.cc: New.
1195 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1196 Adjust dg-error line number.
1197 * testsuite/23_containers/deque/requirements/dr438/
1198 constructor_1_neg.cc: Likewise.
1199 * testsuite/23_containers/deque/requirements/dr438/
1200 constructor_2_neg.cc: Likewise.
1201 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1202 Likewise.
1203 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1204 Likewise.
1205 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1206 Likewise.
1207 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1208 Likewise.
1209 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1210 Likewise.
1211 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1212 Likewise.
1213 * testsuite/23_containers/vector/requirements/dr438/
1214 constructor_1_neg.cc: Likewise.
1215 * testsuite/23_containers/vector/requirements/dr438/
1216 constructor_2_neg.cc: Likewise.
1217 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1218 Likewise.
1219
1220 PR libstdc++/58764 (again)
1221 * include/bits/stl_list.h (list): Make default constructor's exception
1222 specification conditional.
1223 * include/bits/stl_vector.h (vector): Likewise.
1224 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1225 to default constructor.
1226 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1227 Adjust dg-error line number.
1228 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1229 Likewise.
1230 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1231 Likewise.
1232 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1233 Likewise.
1234 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1235 Likewise.
1236 * testsuite/23_containers/vector/requirements/dr438/
1237 constructor_1_neg.cc: Likewise.
1238 * testsuite/23_containers/vector/requirements/dr438/
1239 constructor_2_neg.cc: Likewise.
1240 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1241 Likewise.
1242
1243 2014-01-21 Tim Shen <timshen91@gmail.com>
1244
1245 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1246 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1247 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1248
1249 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1250
1251 PR libstdc++/56267
1252 * include/bits/hashtable.h (__cache_default): Do not depend on
1253 whether the hash function is DefaultConstructible or CopyAssignable.
1254 (_Hashtable): Adjust static assertions.
1255 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1256 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1257 dg-error line number.
1258 * testsuite/23_containers/unordered_set/
1259 not_default_constructible_hash_neg.cc: Remove.
1260
1261 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1262
1263 * scripts/create_testsuite_files: Add testsuite/experimental in
1264 the list of folders to search for tests.
1265 * include/experimental/string_view
1266 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1267 incompatible with constexpr qualifier.
1268 (basic_string_view<>::front()): Likewise.
1269 (basic_string_view<>::back()): Likewise.
1270 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1271 Merge dg-options directives into one.
1272 * testsuite/experimental/string_view/element_access/char/2.cc:
1273 Likewise. Remove invalid experimental namespace scope on
1274 string_view_type.
1275
1276 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1277
1278 PR libstdc++/56267
1279 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1280 friendship to _Local_iterator_base<..., false>.
1281 (_Local_iterator_base): Give protected access to all existing members.
1282 (_Local_iterator_base::_M_curr()): New public accessor.
1283 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1284 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1285 the lifetime of the _Hash_code_base explicitly.
1286 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1287 (_Local_iterator_base<..., false>): Define copy constructor and copy
1288 assignment operator that use new functions to manage _Hash_code_base.
1289 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1290 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1291 Use public API for _Local_iterator_base.
1292 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1293 * include/debug/unordered_map (__debug::unordered_map::erase(),
1294 __debug::unordered_multimap::erase()): Likewise.
1295 * include/debug/unordered_set (__debug::unordered_set::erase(),
1296 __debug::unordered_multiset::erase()): Likewise.
1297 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1298
1299 2014-01-19 Tim Shen <timshen91@gmail.com>
1300
1301 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1302 Fix parse error of multiple consecutive quantifiers like "a**".
1303 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1304 Likewise.
1305 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1306
1307 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
1308
1309 * include/profile/set.h (set): Implement C++11 allocator-aware
1310 container requirements.
1311 * include/profile/map.h (map): Likewise.
1312 * include/profile/multiset.h (multiset): Likewise.
1313 * include/profile/multimap.h (multimap): Likewise.
1314 * include/profile/set.h
1315 (set::operator=(const set&)): Define as default in C++11 mode.
1316 (set::operator=(set&&)): Likewise.
1317 * include/profile/map.h
1318 (map::operator=(const map&)): Likewise.
1319 (map::operator=(map&&)): Likewise.
1320 * include/profile/multiset.h
1321 (multiset::operator=(const multiset&)): Likewise.
1322 (multiset::operator=(multiset&&)): Likewise.
1323 * include/profile/multimap.h
1324 (multimap::operator=(const multimap&)): Likewise.
1325 (multimap::operator=(multimap&&)): Likewise.
1326 * include/profile/set.h (set::operator=(std::initializer_list<>)):
1327 Rely on the same operator from normal mode.
1328 * include/profile/map.h (map::operator=(std::initializer_list<>)):
1329 Likewise.
1330 * include/profile/multiset.h
1331 (multiset::operator=(std::initializer_list<>)): Likewise.
1332 * include/profile/multimap.h
1333 (multimap::operator=(std::initializer_list<>)): Likewise.
1334 * include/profile/set.h (set::swap(set&)): Add noexcept
1335 specification.
1336 * include/profile/map.h (map::swap(map&)): Likewise.
1337 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
1338 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
1339
1340 2014-01-17 Tim Shen <timshen91@gmail.com>
1341
1342 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
1343 use std::map.
1344 * include/bits/regex_automaton.h: Do not use std::set.
1345 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
1346 _BracketMatcher<>::_M_add_collating_element(),
1347 _BracketMatcher<>::_M_add_equivalence_class(),
1348 _BracketMatcher<>::_M_make_range()): Likewise.
1349 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
1350 Likewise.
1351 * include/bits/regex_executor.h: Do not use std::queue.
1352 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
1353 _Executor<>::_M_dfs()): Likewise.
1354 * include/std/regex: Remove <map>, <set> and <queue>.
1355
1356 2014-01-17 Tim Shen <timshen91@gmail.com>
1357
1358 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
1359 basic_regex<>::assign()): Change __compile_nfa to accept
1360 const _CharT* only.
1361 * include/bits/regex_compiler.h: Change _Compiler's template
1362 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
1363 * include/bits/regex_compiler.tcc: Likewise.
1364
1365 2014-01-17 Tim Shen <timshen91@gmail.com>
1366
1367 * include/bits/regex_compiler.h: Change _ScannerT into char-type
1368 templated.
1369 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
1370 _ScannerBase from _Scanner; Change _Scanner's template argument from
1371 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
1372 instead.
1373 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
1374 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
1375 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
1376 Likewise.
1377 * include/std/regex: Add <cstring> for using strchr.
1378
1379 2014-01-17 Tim Shen <timshen91@gmail.com>
1380
1381 * bits/regex_automaton.tcc: Indentation fix.
1382 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
1383 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
1384 _BracketMatcher<>): Add bool option template parameters and
1385 specializations to make matching more efficient and space saving.
1386 * bits/regex_compiler.tcc: Likewise.
1387
1388 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
1389
1390 PR libstdc++/59712
1391 * include/bits/hashtable_policy.h: Fix some long lines.
1392 * include/bits/hashtable.h (__hash_code_base_access): Define and
1393 use it to check its _M_bucket_index noexcept qualification. Use
1394 also in place of...
1395 (__access_protected_ctor): ...this.
1396 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
1397 Adapt line number.
1398 * testsuite/23_containers/unordered_set/
1399 not_default_constructible_hash_neg.cc: Likewise.
1400
1401 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
1402
1403 * include/debug/set.h (set): Implement C++11 allocator-aware
1404 container requirements.
1405 * include/debug/map.h (map): Likewise.
1406 * include/debug/multiset.h (multiset): Likewise.
1407 * include/debug/multimap.h (multimap): Likewise.
1408 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
1409 fix implementation regarding management of safe iterators.
1410 * include/debug/map.h (map::operator=(map&&)): Likewise.
1411 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
1412 * include/debug/multimap.h (multimap::operator=(multimap&&)):
1413 Likewise.
1414 * include/debug/set.h (set::operator=(std::initializer_list<>)):
1415 Rely on the same operator from normal mode.
1416 * include/debug/map.h (map::operator=(std::initializer_list<>)):
1417 Likewise.
1418 * include/debug/multiset.h
1419 (multiset::operator=(std::initializer_list<>)): Likewise.
1420 * include/debug/multimap.h
1421 (multimap::operator=(std::initializer_list<>)): Likewise.
1422 * include/debug/set.h (set::swap(set&)): Add noexcept
1423 specification, add allocator equality check.
1424 * include/debug/map.h (map::swap(map&)): Likewise.
1425 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
1426 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
1427
1428 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
1429
1430 PR libstdc++/59698
1431 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
1432 and stylistic improvements.
1433 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
1434 and update for C++11.
1435 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
1436
1437 PR libstdc++/59687
1438 * doc/xml/manual/backwards_compatibility.xml
1439 (backwards.third.nocreate_noreplace): Correct and expand.
1440
1441 PR libstdc++/59699
1442 * doc/xml/manual/support.xml (std.support.types.null): Update links.
1443
1444 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
1445
1446 PR libstdc++/59738
1447 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
1448 support for non-Movable types.
1449
1450 PR libstdc++/59680
1451 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
1452
1453 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
1454
1455 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
1456 *this allocator instance when building temporary vector instance
1457 so that *this allocator does not get moved.
1458 * include/debug/safe_base.h
1459 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
1460 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
1461 move constructor from _Safe_sequence_base.
1462 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
1463 safe iterators if the instance is moved.
1464 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
1465 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
1466 check on a vector iterator.
1467 * testsuite/23_containers/vector/allocator/move_assign.cc
1468 (test02): Likewise.
1469 (test03): New, test with a non-propagating allocator.
1470 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
1471
1472 2014-01-07 Tim Shen <timshen91@gmail.com>
1473
1474 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
1475 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
1476 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
1477 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
1478 _BracketMatcher<>::_M_add_char(),
1479 _BracketMatcher<>::_M_add_collating_element(),
1480 _BracketMatcher<>::_M_add_equivalence_class(),
1481 _BracketMatcher<>::_M_add_character_class(),
1482 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
1483 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
1484 Fix _AnyMatcher behavior of POSIX style and move _M_flags
1485 to template parameter; Add cache for _BracketMatcher. Adjust
1486 declarations from here...
1487 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
1488 imbuing a regex will trigger a recompilation to rebuild the cache.
1489 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
1490 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
1491 different template bool parameters.
1492 * include/bits/regex_executor.h: Remove unnecessary declarations.
1493 * include/std/regex: Adjust including orders.
1494 * testsuite/28_regex/traits/char/user_defined.cc: New.
1495 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
1496
1497 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1498
1499 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
1500 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
1501 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
1502 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
1503 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
1504
1505 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1506
1507 Update copyright years
1508
1509 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
1510
1511 * testsuite/18_support/new_handler.cc,
1512 testsuite/18_support/terminate_handler.cc,
1513 testsuite/18_support/unexpected_handler.cc: Use the standard form for
1514 the copyright notice.
1515 \f
1516 Copyright (C) 2014 Free Software Foundation, Inc.
1517
1518 Copying and distribution of this file, with or without modification,
1519 are permitted in any medium without royalty provided the copyright
1520 notice and this notice are preserved.