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