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