Fix the date ...
[gcc.git] / libstdc++-v3 / ChangeLog
1 2014-08-13 Sylvestre Ledru <sylvestre@debian.org>
2
3 * include/profile/impl/profiler_hash_func.h: Fix a comment typo
4
5 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
6
7 * Fix thinko in the last commit.
8
9 2014-08-13 Paolo Carlini <paolo.carlini@oracle.com>
10
11 PR libstdc++/62118
12 * include/ext/random.tcc (uniform_on_sphere_helper<2, _RealType>::
13 operator()): Use std::hypot only when _GLIBCXX_USE_C99_MATH_TR1.
14
15 2014-08-12 Jonathan Wakely <jwakely@redhat.com>
16
17 * include/bits/basic_string.h (getline): Qualify call to prevent ADL
18 and add overloads for rvalue streams.
19 * testsuite/21_strings/basic_string/inserters_extractors/char/12.cc:
20 New.
21 * testsuite/21_strings/basic_string/inserters_extractors/wchar_t/12.cc:
22 New.
23
24 * include/bits/basic_string.h (getline): Declare inline.
25
26 2014-08-09 Ulrich Drepper <drepper@gmail.com>
27
28 * include/ext/random.tcc (uniform_on_sphere_helper): Define.
29 (uniform_on_sphere_distribution::operator()): Use the new helper
30 class for the implementation.
31
32 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
33 equal.cc: Remove bogus part of comment.
34 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
35 inequal.cc: Likewise.
36 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
37 serialize.cc: Add check to verify result of serialzation and
38 deserialization.
39 * testsuite/ext/random/uniform_on_sphere_distribution/operators/
40 generate.cc: New file.
41
42 2014-08-09 Paolo Carlini <paolo.carlini@oracle.com>
43
44 * include/ext/pod_char_traits.h (char_traits<__gnu_cxx::
45 character<_Value, _Int, _St> >::eof): Fix vs narrowing conversion.
46
47 2014-08-09 François Dumont <fdumont@gcc.gnu.org>
48
49 PR libstdc++/61667
50 * include/bits/hashtable.h (_Hashtable<>::__rehash_policy): Use
51 _M_need_rehash to initialize the rehash policy and check if a rehash is
52 needed.
53 * testsuite/23_containers/unordered_map/modifiers/61667.cc: New.
54
55 2014-08-07 Jonathan Wakely <jwakely@redhat.com>
56
57 * include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
58 Optimize.
59 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
60 Adjust dg-error line number.
61 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
62 Likewise.
63 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
64 Likewise.
65 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
66 Likewise.
67
68 * include/std/future (_State_baseV2::_M_set_result): Pass pointers to
69 _M_do_set.
70 (_State_baseV2::_M_do_set): Change parameters to pointers.
71 (_State_baseV2::_Setter): Change _M_arg from reference to pointer.
72 (_State_baseV2::__setter): Initialize _Setter with pointers.
73 (_State_baseV2::__setter(promise<void>*)): Remove overload.
74 (promise::set_value, promise::set_exception): Pass setter directly
75 to _M_set_result.
76 (_State_baseV2::_Task_setter): Add template parameter for callable
77 type and replace std::function member with pointer to that type.
78 Change _M_result member from reference to pointer.
79 (_State_baseV2::_S_task_setter): Change parameter to lvalue reference
80 and initialize _Task_setter with pointers.
81 (__location_invariant): Specialize for _Setter and _Task_setter.
82
83 * include/std/future (__location_invariant): Move specializations
84 after preprocessor condition.
85
86 2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
87
88 PR c++/15339
89 * testsuite/26_numerics/headers/complex/synopsis.cc: Fix.
90
91 2014-08-01 Zifei Tong <zifeitong@gmail.com>
92
93 * libsupc++/atexit_thread.cc (HAVE___CXA_THREAD_ATEXIT_IMPL): Add
94 _GLIBCXX_ prefix to macro.
95
96 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
97
98 * python/libstdcxx/v6/printers.py
99 (SingleObjContainerPrinter._contained): Use compatibility mixin.
100
101 2014-07-29 François Dumont <fdumont@gcc.gnu.org>
102
103 * testsuite/util/testsuite_allocator.h
104 (tracker_allocator_counter::allocate): Remove new invocation, only
105 collect information.
106 (tracker_allocator_counter::deallocate): Remove delete invocation, only
107 collect information.
108 (check_inconsistent_alloc_value_type): New.
109 (tracker_allocator): Transform as a facade for any allocator type.
110 (uneq_allocator): Likewise.
111 (propagating_allocator): Likewise.
112 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc: Use an
113 explicitly non propagating allocator.
114 * testsuite/23_containers/map/debug/move_assign_neg.cc: Likewise.
115 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: likewise.
116 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: Likewise.
117 * testsuite/23_containers/set/debug/move_assign_neg.cc: Likewise.
118 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
119 Likewise.
120 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
121 Likewise.
122 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
123 Likewise.
124 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
125 Likewise.
126 * testsuite/23_containers/vector/debug/move_assign_neg.cc: Likewise.
127
128 2014-07-29 Jonathan Wakely <jwakely@redhat.com>
129
130 PR libstdc++/61946
131 * include/ext/rope (rope::rope(char_producer<_CharT>*, size_t, bool,
132 const allocator_type&)): Pass non-const allocator to
133 _S_new_RopeFunction.
134 * testsuite/ext/rope/61946.cc: New.
135
136 PR libstdc++/61947
137 * include/std/tuple (_Head_base): Use allocator_arg_t parameters to
138 disambiguate unary constructors.
139 (_Tuple_impl): Pass allocator_arg_t arguments.
140 * testsuite/20_util/tuple/61947.cc: New.
141 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error line.
142
143 2014-07-29 Ed Smith-Rowland <3dw4rd@verizon.net>
144
145 PR libstdc++/60037 - SIGFPE in std::generate_canonical<unsigned int...>
146 * include/bits/random.h (_Adaptor): static_assert for non floating-point
147 result type.
148 * include/bits/random.tcc (generate_canonical): Ditto.
149 * include/ext/random.tcc (hypergeometric_distribution::operator()):
150 Use double as a rng result type.
151 * testsuite/26_numerics/random/pr60037-neg.cc: New.
152 * testsuite/ext/random/hypergeometric_distribution/pr60037.cc: New.
153
154 2014-07-25 Uros Bizjak <ubizjak@gmail.com>
155
156 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
157
158 2014-07-25 Ed Smith-Rowland <3dw4rd@verizon.net>
159
160 * include/experimental/string_view: Make the literal operators
161 constexpr like the ctors they call.
162
163 2014-07-23 H.J. Lu <hongjiu.lu@intel.com>
164
165 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
166
167 2014-07-23 Jonathan Wakely <jwakely@redhat.com>
168
169 * python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
170 to string instead of using gdb.Type.name attribute.
171
172 2014-07-19 Jonathan Wakely <jwakely@redhat.com>
173
174 * acinclude.m4 (GLIBCXX_CHECK_SDT_H): Replace AC_MSG_RESULT with
175 AC_MSG_CHECKING.
176
177 2014-07-18 Jonathan Wakely <jwakely@redhat.com>
178
179 PR libstdc++/61835
180 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Use
181 raw string.
182 (SingleObjContainerPrinter): Check if type printers are in use.
183
184 2014-07-16 Paolo Carlini <paolo.carlini@oracle.com>
185
186 * include/ext/random: Minor formatting and cosmetic tweaks.
187 (uniform_on_sphere_distribution<>::operator==
188 (const uniform_on_sphere_distribution&,
189 const uniform_on_sphere_distribution&)): Compare the _M_nds.
190 (uniform_on_sphere_distribution<>::reset): Reset _M_nd.
191 (operator!=(const uniform_on_sphere_distribution&,
192 const uniform_on_sphere_distribution&)): Adjust.
193 * include/ext/random.tcc: Minor cosmetc tweaks.
194
195 2014-07-15 Jonathan Wakely <jwakely@redhat.com>
196
197 * python/libstdcxx/v6/printers.py (TemplateTypePrinter): Add type
198 printer for class templates.
199 (register_type_printers): Use TemplateTypePrinter for containers
200 and other class templates with default template arguments.
201 * testsuite/libstdc++-prettyprinters/whatis.cc: Test new recognizers.
202
203 * python/libstdcxx/v6/printers.py (SingleObjContainerPrinter): New
204 base class for experimental::any and experimental::optional printers.
205 (StdExpAnyPrinter, StdExpOptionalPrinter, StdExpStringViewPrinter):
206 New printers for Fundamentals TS types.
207 * testsuite/libstdc++-prettyprinters/libfundts.cc: New.
208
209 2014-07-15 Tim Shen <timshen@google.com>
210
211 PR libstdc++/61720
212 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch):
213 Clear match queue for next use.
214 * testsuite/28_regex/algorithms/regex_search/61720.cc: New file.
215
216 2014-07-14 Ulrich Drepper <drepper@gmail.com>
217
218 * include/ext/random.tcc: Unfortunately more fixes for
219 operator>> and operator<< for uniform_on_sphere_distribution.
220
221 2014-07-13 Ulrich Drepper <drepper@gmail.com>
222
223 * include/ext/random.tcc: Fix operator>> and operator<< for
224 uniform_on_sphere_distribution.
225
226 2014-07-12 Ulrich Drepper <drepper@gmail.com>
227
228 * include/ext/random: Add uniform_on_sphere_distribution definition.
229 * include/ext/random.tcc: Add out-of-band member function definitions
230 for uniform_on_sphere_distribution.
231 * testsuite/ext/random/uniform_on_sphere_distribution/
232 cons/default.cc: New file.
233 * testsuite/ext/random/uniform_on_sphere_distribution/
234 operators/equal.cc: New file.
235 * testsuite/ext/random/uniform_on_sphere_distribution/
236 operators/inequal.cc: New file.
237 * testsuite/ext/random/uniform_on_sphere_distribution/
238 operators/serialize.cc: New file.
239
240 2014-07-11 Edward Smith-Rowland <3dw4rd@verizon.net>
241
242 Add the logistic_distribution as an extension.
243 * include/ext/random: Add the logistic_distribution.
244 * include/ext/random.tcc: Add the logistic_distribution.
245 * testsuite/ext/random/logistic_distribution/cons/parms.cc: New.
246 * testsuite/ext/random/logistic_distribution/cons/default.cc: New.
247 * testsuite/ext/random/logistic_distribution/requirements/typedefs.cc:
248 New.
249 * testsuite/ext/random/logistic_distribution/operators/inequal.cc: New.
250 * testsuite/ext/random/logistic_distribution/operators/equal.cc: New.
251 * testsuite/ext/random/logistic_distribution/operators/serialize.cc:
252 New.
253
254 2014-07-11 Samuel Bronson <naesten@gmail.com>
255
256 * testsuite/lib/libstdc++.exp (libstdc++_init): Set $GCC_COLORS=""
257 instead of insisting that GCC understand -fdiagnostics-color=never
258
259 * testsuite/lib/gdb-test.exp (gdb-test): Turn off GDB's auto-load,
260 list loaded libs.
261
262 2014-07-11 Samuel Bronson <naesten@gmail.com>
263 Matthias Klose <doko@ubuntu.com>
264
265 PR libstdc++/58962
266 * python/libstdcxx/v6/printers.py: Port to Python 2+3
267 (imap): New compat function.
268 (izip): Likewise.
269 (Iterator): New mixin to allow writing iterators in Python 3 style
270 regardless of which version we're running on.
271 [Python3] (long) New compat alias for "int".
272 * testsuite/lib/gdb-test.exp: Port to Python 2+3 (print syntax)
273
274 2014-07-10 Jonathan Wakely <jwakely@redhat.com>
275
276 * include/experimental/any (any::_Manager_alloc::_Data): Reorder
277 tuple members to simplify pretty printing.
278 (any::_Manager_alloc::_Data::_M_construct): Fix uses-allocator
279 construction.
280 * testsuite/experimental/any/cons/4.cc: New.
281
282 2014-07-09 Jason Merrill <jason@redhat.com>
283
284 PR libstdc++/61728
285 * libsupc++/cxxabi.h: Define __pbase_type_info::__pointer_catch here.
286 * libsupc++/tinfo.h: Not here.
287
288 2014-07-08 Jonathan Wakely <jwakely@redhat.com>
289
290 * include/bits/allocated_ptr.h (__allocated_ptr::operator=): Add
291 missing return.
292 * include/experimental/any: Remove unused header.
293 * include/std/functional (_Maybe_wrap_member_pointer): Fix comments.
294 * testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.
295 * testsuite/util/testsuite_regex.h: Move include guard.
296
297 2014-07-01 Tim Shen <timshen@google.com>
298
299 PR libstdc++/61601
300 PR libstdc++/61582
301 * include/bits/regex_automaton.h (_NFA<>::_M_insert_state): Add
302 a NFA state limit. If it's exceeded, regex_constants::error_space
303 will be throwed.
304 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone): Use
305 map (which is sparse) instead of vector. This reduce n times clones'
306 cost from O(n^2) to O(n).
307 * include/std/regex: Add map dependency.
308 * testsuite/28_regex/algorithms/regex_match/ecma/char/61601.cc: New
309 testcase.
310
311 2014-07-01 Tim Shen <timshen@google.com>
312
313 PR libstdc++/61424
314 * include/bits/regex.tcc (__regex_algo_impl<>): Use DFS for ECMAScript,
315 not just regex containing back-references.
316 * include/bits/regex_compiler.tcc (_Compiler<>::_M_disjunction):
317 exchange _M_next and _M_alt for alternative operator,
318 making matching from left to right.
319 * include/bits/regex_executor.h (_State_info<>::_M_get_sol_pos):
320 Add position tracking fom DFS.
321 * include/bits/regex_executor.tcc (_Executor<>::_M_main_dispatch,
322 _Executor<>::_M_dfs): Likewise.
323 * include/bits/regex_scanner.h: Remove unused enum entry.
324 * testsuite/28_regex/algorithms/regex_search/61424.cc: New
325 testcase from PR.
326
327 2014-06-30 Jason Merrill <jason@redhat.com>
328
329 * libsupc++/cxxabi.h (class __pbase_type_info): __pointer_catch
330 is pure, not inline.
331
332 2014-06-28 Paolo Carlini <paolo.carlini@oracle.com>
333
334 Revert:
335 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
336 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
337
338 PR libstdc++/61536
339 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
340
341 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
342
343 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
344
345 2014-06-26 Jonathan Wakely <jwakely@redhat.com>
346
347 * include/bits/shared_ptr_base.h (__shared_ptr::_Deleter): Fix
348 parameter type.
349
350 2014-06-25 Jonathan Wakely <jwakely@redhat.com>
351
352 * include/bits/alloc_traits.h (__alloc_rebind): Define alias template.
353 * include/bits/forward_list.h (_Fwd_list_base): Use __alloc_rebind.
354 * include/bits/hashtable_policy.h (_Insert_base, _Hashtable_alloc):
355 Likewise.
356 * include/ext/alloc_traits.h: Fix comment.
357
358 * include/Makefile.am: Add new header.
359 * include/Makefile.in: Regenerate.
360 * include/bits/allocated_ptr.h (__allocated_ptr, __allocate_guarded):
361 New RAII utilities for working with allocators.
362 * include/bits/shared_ptr_base.h (_Sp_counted_deleter): Define
363 __allocator_type typedef and use new __allocated_ptr type.
364 (_Sp_counted_ptr_inplace): Likewise.
365 (__shared_count::__shared_count, __shared_ptr::__shared_ptr): Use
366 __allocate_guarded to to simplify exception handling.
367 * include/experimental/any (any::_Manager_alloc::_S_alloc): Likewise.
368 * include/std/future (_Result_alloc::_M_destroy): Likewise.
369 (_Result_alloc::_S_allocate_result): Likewise.
370 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line number.
371 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
372 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: New.
373 * testsuite/20_util/shared_ptr/creation/alloc.cc: Test allocator
374 with fancy pointer.
375 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
376
377 * testsuite/20_util/shared_ptr/creation/alloc.cc: Fix use of test
378 allocator.
379 * testsuite/20_util/shared_ptr/creation/no_rtti.cc: Likewise.
380 * testsuite/30_threads/promise/cons/alloc.cc: Likewise.
381
382 2014-06-24 Jonathan Wakely <jwakely@redhat.com>
383
384 * include/bits/functexcept.h (__throw_out_of_range_fmt): Change
385 attribute to __gnu_printf__ archetype to prevent warnings for "%zu".
386 * include/bits/locale_facets_nonio.tcc (time_get::do_get_weekday):
387 Remove unused typedef.
388 (time_get::do_get_monthname): Likewise.
389 * include/bits/stl_tree.h: Add system_header pragma.
390 * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): Remove
391 redundant const-qualifier.
392 * include/std/complex (complex::__rep): Use _GLIBCXX_CONSTEXPR macro
393 instead of _GLIBCXX_USE_CONSTEXPR.
394
395 2014-06-23 Jonathan Wakely <jwakely@redhat.com>
396
397 * include/bits/parse_numbers.h (_Number_help): Fix divide-by-zero.
398 * include/std/chrono (_Checked_integral_constant): Allow zero.
399 * testsuite/20_util/duration/literals/values.cc: Test non-positive
400 values and digit separators.
401 * include/experimental/any
402
403 PR libstdc++/61532
404 * testsuite/20_util/make_signed/requirements/typedefs-1.cc: Do not
405 apply the signed specifier to wchar_t.
406 * testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
407 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Check
408 cv-qualifier and size.
409 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
410 Likewise.
411
412 * include/experimental/any (any_v1): Rename namespace to
413 fundamentals_v1. Change string returned by bad_any_cast::what().
414 * include/experimental/optional (fundamentals_v1): Add namespace.
415 * include/experimental/string_view (fundamentals_v1): Likewise.
416 * testsuite/experimental/any/typedefs.cc: New.
417 * testsuite/experimental/optional/typedefs.cc: New.
418 * testsuite/experimental/string_view/typedefs.cc: New.
419
420 2014-06-18 Paolo Carlini <paolo.carlini@oracle.com>
421 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
422
423 PR libstdc++/61536
424 * config/abi/pre/gnu.ver: Adjust for out of line comparisons.
425
426 2014-06-14 Jonathan Wakely <jwakely@redhat.com>
427
428 * doc/xml/manual/status_cxx2014.xml: Update Fundamentals TS status.
429 * include/Makefile.am: Add new header.
430 * include/Makefile.in: Regenerate.
431 * include/experimental/any: New.
432 * include/ext/aligned_buffer.h (__aligned_buffer(nullptr_t)): New
433 constructor.
434 * testsuite/experimental/any/assign/1.cc: New.
435 * testsuite/experimental/any/assign/2.cc: New.
436 * testsuite/experimental/any/cons/1.cc: New.
437 * testsuite/experimental/any/cons/2.cc: New.
438 * testsuite/experimental/any/cons/3.cc: New.
439 * testsuite/experimental/any/misc/any_cast.cc: New.
440 * testsuite/experimental/any/misc/any_cast_neg.cc: New.
441 * testsuite/experimental/any/misc/any_cast_no_rtti.cc: New.
442 * testsuite/experimental/any/misc/swap.cc: New.
443 * testsuite/experimental/any/modifiers/1.cc: New.
444 * testsuite/experimental/any/observers/type.cc: New.
445
446 * doc/doxygen/user.cfg.in (INPUT): Add C++14 headers.
447 * include/bits/random.h (subtract_with_carry_engine): Fix Doxygen
448 warnings.
449 * include/bits/shared_ptr.h (shared_ptr): Likewise.
450 * include/bits/unordered_map.h (unordered_map, unordered_multimap):
451 Likewise.
452 * include/bits/unordered_set.h (unordered_set, unordered_multiset):
453 Likewise.
454 * include/parallel/list_partition.h (__parallel::list_partition):
455 Likewise.
456 * include/std/iomanip (quoted): Likewise.
457 * include/tr2/dynamic_bitset (dynamic_bitset): Likewise.
458
459 * doc/xml/api.xml: Link to more recent API docs.
460 * include/bits/allocator.h: Fix link in doxygen comment.
461 * include/bits/char_traits.h: Likewise.
462 * include/bits/ios_base.h: Likewise.
463 * include/bits/stl_map.h: Likewise.
464 * include/bits/stl_multimap.h: Likewise.
465 * include/bits/stl_multiset.h: Likewise.
466 * include/bits/stl_set.h: Likewise.
467 * include/bits/unordered_map.h: Likewise.
468 * include/bits/unordered_set.h: Likewise.
469 * include/ext/mt_allocator.h: Likewise.
470 * include/std/fstream: Likewise.
471 * include/std/iosfwd: Likewise.
472 * include/std/ostream: Likewise.
473 * include/std/sstream: Likewise.
474 * include/std/streambuf: Likewise.
475 * doc/html/*: Regenerate.
476
477 * include/experimental/any (any_cast): Combine duplicate doxygen
478 comments.
479 * include/experimental/string_view (basic_string_view): Update
480 doxygen comment.
481 * include/std/bitset (bitset): Move to Doxygen 'utilities' group.
482 * include/tr2/dynamic_bitset (_Bool2UChar): Remove unused templates.
483 (dynamic_bitset): Improve Doxygen comments.
484 * include/tr2/dynamic_bitset.tcc (operator>>): Improve Doxygen
485 comment.
486
487 2014-06-11 Maciej W. Rozycki <macro@codesourcery.com>
488
489 * testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/4402.cc
490 (test02) [TEST_NUMPUT_VERBOSE]: Use `wcout' rather than `cout'.
491
492 2014-06-10 Jonathan Wakely <jwakely@redhat.com>
493
494 PR libstdc++/61390
495 * include/ext/pb_ds/detail/bin_search_tree_/traits.hpp
496 (bin_search_tree_traits): Do not redeclare template-parameters.
497 * testsuite/util/testsuite_iterators.h (test_container): Likewise.
498
499 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
500
501 * doc/Makefile.am: Add missing file. Use generate.consistent.ids
502 parameter for DocBook HTML generation.
503 * doc/Makefile.in: Regenerate.
504 * doc/doxygen/user.cfg.in: Unset DOT_FONTNAME.
505 * doc/xml/faq.xml: Update content and improve formatting.
506 * doc/xml/manual/abi.xml: Add stable ID attribute and fix links.
507 * doc/xml/manual/allocator.xml: Add stable ID attribute.
508 * doc/xml/manual/bitmap_allocator.xml: Likewise.
509 * doc/xml/manual/build_hacking.xml: Likewise.
510 * doc/xml/manual/codecvt.xml: Change URL.
511 * doc/xml/manual/ctype.xml: Add stable ID attribute.
512 * doc/xml/manual/debug_mode.xml: Likewise.
513 * doc/xml/manual/documentation_hacking.xml: Likewise.
514 * doc/xml/manual/evolution.xml: Likewise.
515 * doc/xml/manual/extensions.xml: Likewise.
516 * doc/xml/manual/locale.xml: Likewise.
517 * doc/xml/manual/messages.xml: Make section id consistent, improve
518 markup, change URL.
519 * doc/xml/manual/parallel_mode.xml: Add stable ID attributes.
520 * doc/xml/manual/profile_mode.xml: Likewise.
521 * doc/xml/manual/shared_ptr.xml: Likewise. Also remove old info.
522 * doc/xml/manual/status_cxx1998.xml: Add stable ID attributes.
523 * doc/xml/manual/status_cxx2011.xml: Likewise.
524 * doc/xml/manual/status_cxx2014.xml: Likewise.
525 * doc/xml/manual/status_cxxtr1.xml: Likewise.
526 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
527 * doc/xml/manual/using.xml: Likewise.
528 * doc/html/*: Regenerate.
529
530 2014-06-09 Jonathan Wakely <jwakely@redhat.com>
531
532 * include/tr1/beta_function.tcc: Fix spelling of include guard in
533 comment.
534
535 2014-06-08 Paolo Carlini <paolo.carlini@oracle.com>
536
537 * config/abi/pre/gnu.ver: Tighten some patterns; tidy.
538
539 2014-06-06 Ed Smith-Rowland <3dw4rd@verizon.net>
540
541 DR 2344 - std::quoted doesn't respect padding
542 * include/std/iomanip: Allow for padding in quoted inserters.
543 * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
544 * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
545
546 2014-06-06 François Dumont <fdumont@gcc.gnu.org>
547
548 * testsuite/23_containers/map/operators/1.cc: Simplify test.
549
550 2014-06-06 Jonathan Wakely <jwakely@redhat.com>
551
552 * doc/xml/faq.xml (faq.stream_reopening_fails): Replace <quote> in
553 code example.
554 * doc/xml/manual/backwards_compatibility.xml
555 (backwards.second.stringstreams): Likewise.
556 * doc/xml/manual/configure.xml (--enable-libstdcxx-time): Document
557 change of default.
558 * doc/xml/manual/containers.xml (associative.bitset.type_string):
559 Replace <quote> in code example.
560 * doc/xml/manual/debug.xml: Clarify reference to ThreadSanitizer.
561 * doc/xml/manual/documentation_hacking.xml: Improve debugging tips,
562 fix typos, improve markup.
563 * doc/xml/manual/intro.xml (manual.intro.status.bugs.iso): Replace
564 <emphasis> with <replaceable>.
565 * doc/xml/manual/locale.xml (locale.impl.c): Remove backticks.
566 * doc/xml/manual/support.xml (std.support.memory): Replace <quote>
567 and remove newlines in string literal.
568
569 2014-06-03 Paolo Carlini <paolo.carlini@oracle.com>
570
571 DR 1423
572 PR c++/52174
573 * testsuite/20_util/is_assignable/value.cc: Update.
574
575 2014-06-02 Jonathan Wakely <jwakely@redhat.com>
576
577 * include/std/condition_variable (condition_variable_any::_Unlock): Do
578 not swallow __forced_unwind.
579 * include/std/future (__future_base::_Task_setter): Likewise.
580 (__future_base::_Async_state_impl): Turn __forced_unwind into broken
581 promise and rethrow.
582 * include/std/mutex (try_lock): Likewise.
583 * testsuite/30_threads/async/forced_unwind.cc: New.
584 * testsuite/30_threads/packaged_task/forced_unwind.cc: New.
585
586 * include/bits/regex_compiler.h (__detail::_BracketMatcher): Reorder
587 members to avoid wasted space when not using a cache.
588 (__detail::_BracketMatcher::_M_ready()): Sort and deduplicate set.
589 * include/bits/regex_compiler.tcc
590 (__detail::_BracketMatcher::_M_apply(_CharT, false_type)): Use binary
591 search on set.
592 * include/bits/regex_executor.h (__detail::_Executor::_Match_mode):
593 New enumeration type to indicate match mode.
594 (__detail::_Executor::_State_info): New type holding members only
595 needed in BFS-mode. Replace unique_ptr<vector<bool>> with
596 unique_ptr<bool[]>.
597 (__detail::_Executor::_M_rep_once_more, __detail::_Executor::_M_dfs):
598 Replace template parameter with run-time function parameter.
599 (__detail::_Executor::_M_main): Likewise. Dispatch to ...
600 (__detail::_Executor::_M_main_dispatch): New overloaded functions to
601 implement DFS and BFS mode.
602 * include/bits/regex_executor.tcc (__detail::_Executor::_M_main):
603 Split implementation into ...
604 (__detail::_Executor::_M_main_dispatch): New overloaded functions.
605 (__detail::_Executor::_M_lookahead): Create nested executor on stack.
606 (__detail::_Executor::_M_rep_once_more): Pass match mode as function
607 argument instead of template argument.
608 (__detail::_Executor::_M_dfs): Likewise.
609 * include/bits/regex_scanner.tcc: Fix typos in comments.
610 * testsuite/performance/28_regex/range.cc: New.
611
612 2014-06-02 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
613 Jonathan Wakely <jwakely@redhat.com>
614
615 * libstdc++-v3/include/std/type_traits (__strictest_alignment): New
616 helper struct.
617 (aligned_union): New struct (C++11).
618 (aligned_union_t): New type alias (C++14).
619 * doc/xml/manual/status_cxx2011.xml: Update.
620 * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New file.
621 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
622 line number.
623
624 2014-06-01 Jonathan Wakely <jwakely@redhat.com>
625
626 PR libstdc++/61374
627 * include/experimental/string_view (operator basic_string): Correct
628 order of arguments.
629 (to_string): Replace with member function.
630 Add inline specifiers. Remove unused header. Remove _S_empty_rep and
631 allow _M_str to be null.
632 * testsuite/experimental/string_view/cons/char/1.cc: Adjust to new
633 default constructor semantics.
634 * testsuite/experimental/string_view/cons/wchar_t/1.cc: Likewise.
635 * testsuite/experimental/string_view/operations/copy/char/1.cc: Fix
636 copyright dates. Remove unused header.
637 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc:
638 Likewise.
639 * testsuite/experimental/string_view/operations/data/char/1.cc:
640 Fix copyright dates. Adjust to new default constructor semantics.
641 * testsuite/experimental/string_view/operations/data/wchar_t/1.cc:
642 Likewise.
643 * testsuite/experimental/string_view/operations/to_string/1.cc: New.
644
645 * include/bits/uses_allocator.h (__uses_allocator_helper): Simplify.
646 (__uses_allocator_arg): Remove unused type.
647 (__uses_alloc0): Turn into a trivial type.
648 (__uses_alloc): Add missing template parameter in primary template.
649 (__uses_alloc_impl): Rename to __uses_alloc_t.
650
651 2014-05-30 Jonathan Wakely <jwakely@redhat.com>
652
653 * testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
654 work with previous versions of Tcl.
655
656 * doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
657 Benjamin's old email address.
658
659 * doc/xml/manual/appendix_contributing.xml (list.copyright): Add
660 Paolo's address too.
661
662 2014-05-29 Jonathan Wakely <jwakely@redhat.com>
663
664 * include/tr2/bool_set: Use UTF-8 for accented characters.
665 * scripts/run_doxygen: Handle Doxygen 1.8.x change.
666 * doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
667 QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.
668
669 2014-05-27 Jonathan Wakely <jwakely@redhat.com>
670
671 PR libstdc++/61329
672 * include/bits/regex_automaton.tcc (_State_base::_M_print): Add
673 inline specifier.
674 (_State_base::_M_dot): Likewise.
675
676 2014-05-25 Paolo Carlini <paolo.carlini@oracle.com>
677
678 * include/profile/map.h: Fix typo in comment; minor formatting fix.
679 * include/profile/multimap.h: Likewise.
680 * include/profile/set.h: Likewise.
681 * include/profile/multiset.h: Likewise.
682
683 2014-05-24 François Dumont <fdumont@gcc.gnu.org>
684
685 * include/profile/array: Clean useless white chars.
686 * include/profile/base.h: Likewise.
687 * include/profile/iterator_tracker.h: Likewise.
688 * include/profile/bitset: Code cleanup and remove not instrumented code.
689 * include/profile/deque: Likewise.
690 * include/profile/forward_list: Likewise.
691 * include/profile/list (std::__profile::_List_profile<>): New.
692 (std::__profile::list<>): Inherit from latter and adapt.
693 * include/profile/impl/profiler_map_to_unordered_map.h: Generalize
694 advise to match any ordered to unordered container conversion.
695 * include/profile/ordered_base.h (std::__profile::_Ordered_profile<>):
696 New.
697 * include/Makefile.am: Add latter.
698 * include/Makefile.in: Regenerate.
699 * include/profile/map.h (std::__profile::map<>): Inherit from latter,
700 remove not instrumented code.
701 * include/profile/multimap.h (std::__profile::multimap<>): Likewise.
702 * include/profile/set.h (std::__profile::set<>): Likewise.
703 * include/profile/multiset.h (std::__profile::multiset<>): Likewise.
704 * include/profile/unordered_base.h: Add some line feed.
705 * include/profile/unordered_map: Clean useless white chars and replace
706 spaces with tabs.
707 * include/profile/unordered_set: Likewise.
708 * include/profile/vector (std::__profile::_Vector_profile_pre<>): New.
709 (std::__profile::_Vector_profile_post<>): New.
710 (std::__profile::vector<>): Inherit from latter and adapt.
711
712 2014-05-23 Jonathan Wakely <jwakely@redhat.com>
713
714 PR libstdc++/60793
715 * testsuite/*: Use 's/\*-\*-freebsd\* /&*-*-dragonfly* /' to add
716 dragonfly target selector to all tests that run on freebsd.
717
718 * testsuite/23_containers/vector/capacity/resize/1.cc: Add xfail for
719 dragonfly.
720 * testsuite/30_threads/call_once/60497.cc: Add target selectors.
721 * testsuite/30_threads/condition_variable/members/53841.cc: Likewise.
722
723 * testsuite/30_threads/async/54297.cc: Remove duplicate dragonfly
724 selector.
725 * testsuite/30_threads/call_once/60497.cc: Likewise.
726 * testsuite/30_threads/condition_variable/54185.cc: Likewise.
727 * testsuite/30_threads/condition_variable_any/53830.cc: Likewise.
728 * testsuite/30_threads/packaged_task/60564.cc: Likewise.
729 * testsuite/30_threads/packaged_task/cons/56492.cc: Likewise.
730 * testsuite/30_threads/promise/60966.cc: Likewise.
731 * testsuite/30_threads/shared_lock/cons/1.cc: Likewise.
732 * testsuite/30_threads/shared_lock/cons/2.cc: Likewise.
733 * testsuite/30_threads/shared_lock/cons/3.cc: Likewise.
734 * testsuite/30_threads/shared_lock/cons/4.cc: Likewise.
735 * testsuite/30_threads/shared_lock/cons/5.cc: Likewise.
736 * testsuite/30_threads/shared_lock/cons/6.cc: Likewise.
737 * testsuite/30_threads/shared_lock/locking/1.cc: Likewise.
738 * testsuite/30_threads/shared_lock/locking/2.cc: Likewise.
739 * testsuite/30_threads/shared_lock/locking/3.cc: Likewise.
740 * testsuite/30_threads/shared_lock/locking/4.cc: Likewise.
741 * testsuite/30_threads/shared_lock/modifiers/1.cc: Likewise.
742 * testsuite/30_threads/shared_lock/modifiers/2.cc: Likewise.
743 * testsuite/30_threads/shared_timed_mutex/cons/1.cc: Likewise.
744 * testsuite/30_threads/shared_timed_mutex/try_lock/1.cc:
745 * testsuite/30_threads/shared_timed_mutex/try_lock/2.cc: Likewise.
746 * testsuite/30_threads/thread/native_handle/cancel.cc: Likewise.
747 * testsuite/30_threads/timed_mutex/try_lock_until/57641.cc: Likewise.
748
749 2014-05-21 François Dumont <fdumont@gcc.gnu.org>
750
751 PR libstdc++/61143
752 * include/bits/hashtable.h: Fix move semantic to leave hashtable in a
753 usable state.
754 * testsuite/23_containers/unordered_set/61143.cc: New.
755 * testsuite/23_containers/unordered_set/modifiers/swap.cc: New.
756
757 2014-05-21 Jonathan Wakely <jwakely@redhat.com>
758
759 PR libstdc++/61269
760 * include/std/type_traits: Move include outside namespace std.
761 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error.
762 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Likewise.
763 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
764 Likewise.
765
766 * config/locale/dragonfly/c_locale.cc (facet::_S_create_c_locale):
767 Fix warning.
768
769 2014-05-21 John Marino <gnugcc@marino.st>
770
771 * acinclude.m4 (*-*-dragonfly*): New target.
772 * configure: Regenerate.
773 * configure.host (*-*-dragonfly*): New target.
774 * config/locale/dragonfly/c_locale.cc: New.
775 * config/locale/dragonfly/ctype_members.cc: New.
776 * config/os/bsd/dragonfly/ctype_base.h: New.
777 * config/os/bsd/dragonfly/ctype_configure_char.cc: New.
778 * config/os/bsd/dragonfly/ctype_inline.h: New.
779 * config/os/bsd/dragonfly/os_defines.h: New.
780
781 2014-05-20 Cesar Philippidis <cesar@codesourcery.com>
782
783 * scripts/testsuite_flags.in (cxxflags): Remove @CXXFLAGS@ since
784 libstdc++.exp imports those flags via getenv.
785 * testsuite/lib/libstdc++.exp (libstdc++_init): Ensure that
786 CXXFLAGS contains a '-O' flag.
787
788 2014-05-20 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
789
790 PR libstdc++/61223
791 Revert:
792 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
793
794 PR libstdc++/60758
795 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
796 and add unwind directives.
797
798 2014-05-20 Sebastian Huber <sebastian.huber@embedded-brains.de>
799
800 * testsuite/lib/libstdc++.exp (load_gcc_lib): Register loaded libs.
801
802 2014-05-20 Tim Shen <timshen91@gmail.com>
803
804 PR libstdc++/61227
805 * include/bits/regex_compiler.h
806 (_BracketMatcher<>::_M_add_character_class): Add negative character
807 class support.
808 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply):
809 Likewise.
810 * testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
811 Add more testcases.
812
813 2014-05-19 Jonathan Wakely <jwakely@redhat.com>
814
815 * python/libstdcxx/v6/printers.py: Use Python3 raise syntax.
816
817 2014-05-17 Marc Glisse <marc.glisse@inria.fr>
818
819 * libsupc++/new_op.cc: Factor the calls to malloc, use __builtin_expect.
820 * libsupc++/new_opnt.cc: Likewise.
821
822 2014-05-17 Jonathan Wakely <jwakely@redhat.com>
823
824 PR libstdc++/60966
825 * include/std/future (__future_base::_State_baseV2::_M_set_result):
826 Pass lock into _M_do_set and hold it until the function returns.
827 Signal condition variable after call_once completes.
828 (__future_base::_State_baseV2::_M_do_set): Use lock argument. Do not
829 signal here.
830 * testsuite/30_threads/promise/60966.cc: New.
831
832 2014-05-16 Iain Sandoe <iain@codesourcery.com>
833 Sandra Loosemore <sandra@codesourcery.com>
834
835 * testsuite/libstdc++-abi/abi.exp: Defer setting of baseline_subdir
836 until after checking that the test is eligible to be run.
837
838 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
839
840 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
841 test for 32-bit target.
842 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
843 Likewise.
844 * testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
845 Fix test.
846
847 2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
848
849 PR libstdc++/60758
850 * libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
851 and add unwind directives.
852
853 2014-05-16 Jonathan Wakely <jwakely@redhat.com>
854
855 * include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
856 overflow.
857 * include/std/chrono (chrono_literals::__select_type::_Select_type):
858 Remove.
859 (chrono_literals::_Checked_integral_constant): Define.
860 Simplify UDL operator templates and check for overflow.
861 * testsuite/20_util/duration/literals/range.cc: New.
862
863 2014-05-16 Ed Smith-Rowland <3dw4rd@verizon.net>
864 Jonathan Wakely <jwakely@redhat.com>
865
866 PR libstdc++/61166
867 * include/bits/parse_numbers.h: Use integral_constant to remove
868 duplication and simplify.
869 * testsuite/20_util/duration/literals/61166.cc: New.
870
871 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
872
873 PR libstdc++/60326
874 * include/std/type_traits (__make_unsigned, __make_signed): Define
875 specializations for wchar_t, char16_t and char32_t.
876 * testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
877 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
878 test for make_unsigned<volatile wchar_t>.
879 * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
880 Likewise.
881 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
882 line number.
883 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
884 Likewise.
885 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
886 Likewise.
887
888 2014-05-15 Jonathan Wakely <jwakely@redhat.com>
889
890 * include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
891 * include/std/array (tuple_size, tuple_element): Add Doxygen comments.
892 * include/std/utility (tuple_size, tuple_element): Likewise.
893 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
894 Adjust dg-error line number.
895
896 2014-05-14 Jonathan Wakely <jwakely@redhat.com>
897
898 * include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
899 (__tuple_element_t): Define.
900 (tuple_element): Use __tuple_element_t.
901 (__cv_tuple_size): Define.
902 (tuple_size<cv _Tp>): Use __cv_tuple_size.
903 (get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
904 (get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
905 (__tuple_compare): Remove size check, re-order parameters.
906 (operator==, operator<): Use static_assert to check requirements.
907 * include/std/functional (__volget): use __tuple_element_t.
908 * testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
909 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
910
911 2014-05-13 Jonathan Wakely <jwakely@redhat.com>
912
913 PR libstdc++/60497
914 * include/std/tuple (get, __tuple_compare): Qualify more calls to
915 prevent ADL. Cast comparison results to bool.
916 * testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
917 * testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.
918
919 PR libstdc++/60497
920 * include/debug/array (get): Qualify call to other get overload.
921 * include/profile/array (get): Likewise.
922 * include/std/array (get): Likewise.
923 * include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
924 * include/std/mutex (unique_lock, call_once): Use __addressof.
925 (__unlock_impl): Remove unused template.
926 (__try_to_lock): Declare inline.
927 (__try_lock_impl::__do_try_lock): Qualify function calls.
928 (lock): Avoid narrowing conversion.
929 * testsuite/20_util/bind/60497.cc: New.
930 * testsuite/23_containers/array/element_access/60497.cc: New.
931 * testsuite/30_threads/call_once/60497.cc: New.
932 * testsuite/30_threads/unique_lock/cons/60497.cc: New.
933
934 2014-05-09 Jonathan Wakely <jwakely@redhat.com>
935
936 * config/abi/pre/gnu.ver (GLIBCXX_3.4.20): Correct regex_error export.
937 (GLIBCXX_3.4.21): Export base object constructor for regex_error.
938 * acinclude.m4 (libtool_VERSION): Bump.
939 * configure: Regenerate.
940 * testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.21 version.
941 * testsuite/28_regex/regex_error/base.cc: New.
942
943 2014-05-08 Joshua Gay <jgay@gnu.org>
944
945 PR libstdc++/61117
946 * doc/xml/faq.xml (faq.license.what_restrictions): Replace "open
947 source" with "free software".
948 * doc/html/faq.html: Likewise.
949
950 2014-05-08 Jonathan Wakely <jwakely@redhat.com>
951
952 PR libstdc++/57394
953 * include/bits/ios_base.h (ios_base(const ios_base&)): Define as
954 deleted for C++11.
955 (operator=(const ios_base&)): Likewise.
956 * include/std/streambuf: Remove trailing whitespace.
957 (basic_streambuf(const basic_streambuf&)): Fix initializer for
958 _M_out_end. Define as defaulted for C++11.
959 (operator=(const basic_streambuf&)): Define as defaulted for C++11.
960 (swap(basic_streambuf&)): Define for C++11.
961 * testsuite/27_io/basic_streambuf/cons/57394.cc: New.
962
963 PR libstdc++/13860
964 * include/std/fstream (basic_filebuf): Enforce requirements on traits.
965
966 * include/std/iostream: Fix URL in comment.
967 * src/c++98/ios_init.cc: Fix path in comment.
968
969 2014-05-08 Paolo Carlini <paolo.carlini@oracle.com>
970
971 * acinclude.m4 ([GLIBCXX_ENABLE_C99]): Avoid -Wwrite-strings warning.
972 * configure: Regenerate.
973
974 2014-05-07 Jonathan Wakely <jwakely@redhat.com>
975
976 PR libstdc++/61023
977 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): Copy the
978 comparison function.
979 * testsuite/23_containers/set/cons/61023.cc: New.
980
981 PR libstdc++/61086
982 * include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
983 Remove.
984 * include/bits/stl_vector.h (vector::insert, vector::erase): Use
985 arithmetic to obtain a mutable iterator from const_iterator.
986 * include/bits/vector.tcc (vector::insert): Likewise.
987 * include/debug/vector (vector::erase): Likewise.
988 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
989 Adjust dg-error line number.
990 * testsuite/23_containers/vector/requirements/dr438/
991 constructor_1_neg.cc: Likewise.
992 * testsuite/23_containers/vector/requirements/dr438/
993 constructor_2_neg.cc: Likewise.
994 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
995 Likewise.
996
997 2014-05-06 Paolo Carlini <paolo.carlini@oracle.com>
998
999 * include/Makefile.in: Regenerate.
1000
1001 2014-05-06 François Dumont <fdumont@gcc.gnu.org>
1002
1003 * include/debug/macros.h [__glibcxx_check_equal_allocs]: Add
1004 parameter to pass the 2 instances to check allocator equality.
1005 * include/debug/safe_container.h: New, define _Safe_container<>.
1006 * include/Makefile.am: Add previous.
1007 * include/debug/deque (std::__debug::deque<>): Inherit
1008 _Safe_container<>. Use default implementation for all special
1009 functions.
1010 * include/debug/forward_list (std::__debug::forward_list<>):
1011 Likewise.
1012 * include/debug/list (std::__debug::list<>): Likewise.
1013 * include/debug/map.h (std::__debug::map<>): Likewise.
1014 * include/debug/multimap.h (std::__debug::multimap<>): Likewise.
1015 * include/debug/set.h (std::__debug::set<>): Likewise.
1016 * include/debug/multiset.h (std::__debug::multiset<>): Likewise.
1017 * include/debug/string (std::__debug::basic_string<>): Likewise.
1018 * include/debug/unordered_map
1019 (std::__debug::unordered_map<>): Likewise.
1020 (std::__debug::unordered_multimap<>): Likewise.
1021 * include/debug/unordered_set
1022 (std::__debug::unordered_set<>): Likewise.
1023 (std::__debug::unordered_multiset<>): Likewise.
1024 * include/debug/vector (std::__debug::vector<>): Likewise.
1025 * include/debug/safe_base.h (_Safe_sequence_base()): Add
1026 noexcept.
1027 (_Safe_sequence_base(_Safe_sequence_base&&): Remove.
1028 (~_Safe_sequence_base()): Add noexcept.
1029 * include/debug/safe_sequence.h
1030 (std::__debug::_Safe_node_sequence<>): New.
1031 * include/debug/safe_unordered_base.h
1032 (_Safe_unordered_container_base()): Add noexcept.
1033 (~_Safe_unordered_container_base()): Likewise.
1034 (_M_swap(_Safe_unordered_container_base&)): Likewise.
1035 * include/debug/safe_unordered_container.h:
1036 (_Safe_unordered_container<>::_M_invalidate_locals()): New.
1037 (_Safe_unordered_container<>::_M_invalidate_all()): New.
1038 * src/c++11/debug.cc: Limit includes, adapt methods noexcept
1039 qualifications.
1040 * testsuite/util/debug/checks.h (check_construct1): Just implement
1041 an invalid constructor invocation and no other operations
1042 potentially not supported by some types of container.
1043 (check_construct2): Likewise.
1044 (check_construct3): Likewise.
1045 * testsuite/23_containers/forward_list/allocator/move.cc: Add
1046 check on iterators to make sure they are correctly moved in debug
1047 mode.
1048 * testsuite/23_containers/forward_list/allocator/move_assign.cc:
1049 Likewise.
1050 * testsuite/23_containers/map/allocator/move.cc: Likewise.
1051 * testsuite/23_containers/map/allocator/move_assign.cc: Likewise.
1052 * testsuite/23_containers/multimap/allocator/move.cc: Likewise.
1053 * testsuite/23_containers/multimap/allocator/move_assign.cc:
1054 Likewise.
1055 * testsuite/23_containers/multiset/allocator/move.cc: Likewise.
1056 * testsuite/23_containers/multiset/allocator/move_assign.cc:
1057 Likewise.
1058 * testsuite/23_containers/set/allocator/move.cc: Likewise.
1059 * testsuite/23_containers/set/allocator/move_assign.cc: Likewise.
1060 * testsuite/23_containers/unordered_map/allocator/move.cc:
1061 Likewise.
1062 * testsuite/23_containers/unordered_map/allocator/move_assign.cc:
1063 Likewise.
1064 * testsuite/23_containers/unordered_multimap/allocator/move.cc:
1065 Likewise.
1066 * testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
1067 Likewise.
1068 * testsuite/23_containers/unordered_multiset/allocator/move.cc:
1069 Likewise.
1070 * testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
1071 Likewise.
1072 * testsuite/23_containers/unordered_set/allocator/move.cc:
1073 Likewise.
1074 * testsuite/23_containers/unordered_set/allocator/move_assign.cc:
1075 Likewise.
1076 * testsuite/23_containers/forward_list/debug/construct1_neg.cc:
1077 New.
1078 * testsuite/23_containers/forward_list/debug/construct2_neg.cc:
1079 New.
1080 * testsuite/23_containers/forward_list/debug/construct3_neg.cc:
1081 New.
1082 * testsuite/23_containers/forward_list/debug/construct4_neg.cc:
1083 New.
1084 * testsuite/23_containers/forward_list/debug/move_assign_neg.cc:
1085 New.
1086 * testsuite/23_containers/forward_list/debug/move_neg.cc: New.
1087 * testsuite/23_containers/map/debug/construct5_neg.cc: New.
1088 * testsuite/23_containers/map/debug/move_assign_neg.cc: New.
1089 * testsuite/23_containers/map/debug/move_neg.cc: New.
1090 * testsuite/23_containers/multimap/debug/construct5_neg.cc: New.
1091 * testsuite/23_containers/multimap/debug/move_assign_neg.cc: New.
1092 * testsuite/23_containers/multimap/debug/move_neg.cc: New.
1093 * testsuite/23_containers/multiset/debug/construct5_neg.cc: New.
1094 * testsuite/23_containers/multiset/debug/move_assign_neg.cc: New.
1095 * testsuite/23_containers/multiset/debug/move_neg.cc: New.
1096 * testsuite/23_containers/set/debug/construct5_neg.cc: New.
1097 * testsuite/23_containers/set/debug/move_assign_neg.cc: New.
1098 * testsuite/23_containers/set/debug/move_neg.cc: New.
1099 * testsuite/23_containers/unordered_map/debug/construct5_neg.cc:
1100 New.
1101 * testsuite/23_containers/unordered_map/debug/move_assign_neg.cc:
1102 New.
1103 * testsuite/23_containers/unordered_map/debug/move_neg.cc: New.
1104 * testsuite/23_containers/unordered_multimap/debug/construct5_neg.cc:
1105 New.
1106 * testsuite/23_containers/unordered_multimap/debug/move_assign_neg.cc:
1107 New.
1108 * testsuite/23_containers/unordered_multimap/debug/move_neg.cc:
1109 New.
1110 * testsuite/23_containers/unordered_multiset/debug/construct5_neg.cc:
1111 New.
1112 * testsuite/23_containers/unordered_multiset/debug/move_assign_neg.cc:
1113 New.
1114 * testsuite/23_containers/unordered_multiset/debug/move_neg.cc:
1115 New.
1116 * testsuite/23_containers/unordered_set/debug/construct5_neg.cc:
1117 New.
1118 * testsuite/23_containers/unordered_set/debug/move_assign_neg.cc:
1119 New.
1120 * testsuite/23_containers/unordered_set/debug/move_neg.cc: New.
1121 * testsuite/23_containers/vector/debug/move_neg.cc: New.
1122
1123 2014-05-05 Andreas Schwab <schwab@linux-m68k.org>
1124
1125 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt
1126 (CXXABI_1.3.9): Remove __float128 symbols.
1127
1128 2014-05-02 Jonathan Wakely <jwakely@redhat.com>
1129
1130 PR libstdc++/59476
1131 * python/libstdcxx/v6/printers.py (get_value_from_Rb_tree_node): New
1132 function to handle both C++03 and C++11 _Rb_tree_node implementations.
1133 (StdRbtreeIteratorPrinter, StdMapPrinter, StdSetPrinter): Use it.
1134 * testsuite/libstdc++-prettyprinters/simple.cc: Update comment to
1135 refer to...
1136 * testsuite/libstdc++-prettyprinters/simple11.cc: New.
1137
1138 PR libstdc++/61036
1139 * include/bits/shared_ptr_base.h (__shared_ptr::__shared_ptr(_Tp1*)):
1140 Check the correct type in the static assertion.
1141 * testsuite/20_util/shared_ptr/cons/61036.cc: New.
1142
1143 2014-04-27 Tim Shen <timshen91@gmail.com>
1144
1145 * include/bits/regex_automaton.h (_NFA<>::_M_insert_repeat):
1146 Add _S_opcode_repeat support to distingush a loop from
1147 _S_opcode_alternative.
1148 * include/bits/regex_automaton.tcc (_State_base::_M_print,
1149 _State_base::_M_dot, _NFA<>::_M_eliminate_dummy,
1150 _StateSeq<>::_M_clone): Likewise.
1151 * include/bits/regex_compiler.tcc (_Compiler<>::_M_quantifier):
1152 Likewise.
1153 * include/bits/regex_executor.tcc (_Executor<>::_M_dfs): Likewise.
1154 * include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
1155 Uglify local variable __i.
1156 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_make_cache):
1157 Use size_t instead of int to compare with vector::size().
1158
1159 2014-04-27 Tim Shen <timshen91@gmail.com>
1160
1161 * include/bits/regex_executor.h: Add _M_rep_count to track how
1162 many times this repeat node are visited.
1163 * include/bits/regex_executor.tcc (_Executor<>::_M_rep_once_more,
1164 _Executor<>::_M_dfs): Use _M_rep_count to prevent entering
1165 infinite loop.
1166
1167 2014-04-27 Tim Shen <timshen91@gmail.com>
1168
1169 * include/bits/regex.tcc (__regex_algo_impl<>): Remove
1170 _GLIBCXX_REGEX_DFS_QUANTIFIERS_LIMIT and use
1171 _GLIBCXX_REGEX_USE_THOMPSON_NFA instead.
1172 * include/bits/regex_automaton.h: Remove quantifier counting variable.
1173 * include/bits/regex_automaton.tcc (_State_base::_M_dot):
1174 Adjust debug NFA dump.
1175
1176 2014-04-25 Lars Gullik Bjønnes <larsbj@gullik.org>
1177
1178 PR libstdc++/60710
1179 * include/experimental/optional (operator!=): Implement in terms of
1180 operator==.
1181 * testsuite/experimental/optional/relops/1.cc: Remove operator!=.
1182 * testsuite/experimental/optional/relops/2.cc: Likewise.
1183 * testsuite/experimental/optional/relops/3.cc: Likewise.
1184 * testsuite/experimental/optional/relops/4.cc: Likewise.
1185 * testsuite/experimental/optional/relops/5.cc: Likewise.
1186 * testsuite/experimental/optional/relops/6.cc: Likewise.
1187
1188 2014-04-25 Jonathan Wakely <jwakely@redhat.com>
1189
1190 PR libstdc++/60958
1191 * include/tr1/regex (regex_traits::isctype): Comment out broken code.
1192 * testsuite/util/testsuite_regex.h (regex_match_debug): Improve
1193 comment.
1194
1195 2014-04-25 Marc Glisse <marc.glisse@inria.fr>
1196
1197 * testsuite/util/testsuite_abi.cc (check_version): Update for
1198 CXXABI_1.3.9.
1199
1200 2014-04-24 Tim Shen <timshen91@gmail.com>
1201
1202 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()):
1203 Do _M_alt before _M_next.
1204 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: Add testcases.
1205
1206 2014-04-24 Marc Glisse <marc.glisse@inria.fr>
1207
1208 PR libstdc++/43622
1209 * config/abi/pre/gnu.ver (CXXABI_1.3.9): Remove __float128 symbols.
1210 * config/abi/pre/gnu-versioned-namespace.ver: Likewise.
1211 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1212
1213 2014-04-24 Andreas Schwab <schwab@suse.de>
1214
1215 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update for
1216 new CXXABI_1.3.9 symbols.
1217
1218 2014-04-23 Andreas Schwab <schwab@linux-m68k.org>
1219
1220 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt
1221 (CXXABI_1.3.9): New version.
1222
1223 2014-04-22 Marc Glisse <marc.glisse@inria.fr>
1224
1225 PR libstdc++/43622
1226 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols.
1227 * config/abi/pre/gnu-versioned-namespace.ver: New symbols.
1228 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1229
1230 2014-04-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1231
1232 * configure.host: Remove solaris2.9 handling.
1233 Change os_include_dir to os/solaris/solaris2.10.
1234 * acinclude.m4 (ac_has_gthreads): Remove solaris2.9* handling.
1235 * crossconfig.m4: Remove *-solaris2.9 handling, simplify.
1236 * configure: Regenerate.
1237 * config/abi/post/solaris2.9: Remove.
1238 * config/os/solaris/solaris2.9: Rename to ...
1239 * config/os/solaris/solaris2.10: ... this.
1240 * config/os/solaris/solaris2.10/os_defines.h (CLOCK_MONOTONIC):
1241 Remove.
1242
1243 * doc/xml/manual/configure.xml (--enable-libstdcxx-threads):
1244 Remove Solaris 9 reference.
1245 * doc/html/manual/configure.html: Regenerate.
1246
1247 * testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
1248 Remove *-*-solaris2.9 xfail.
1249 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
1250 Likewise.
1251
1252 * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.9
1253 xfail.
1254
1255 2014-04-16 Jonathan Wakely <jwakely@redhat.com>
1256
1257 * include/std/functional (__is_location_invariant): Use __or_ helper.
1258
1259 2014-04-15 Jonathan Wakely <jwakely@redhat.com>
1260
1261 PR libstdc++/60734
1262 * include/bits/stl_tree.h (_Rb_tree::_M_end): Fix invalid cast.
1263
1264 PR libstdc++/60695
1265 * include/std/atomic (atomic<_Tp>): Add static assertion.
1266 * testsuite/29_atomics/atomic/60695.cc: New.
1267
1268 PR libstdc++/60594
1269 * include/std/functional (function::_Callable): Exclude own type
1270 from the callable checks.
1271 * testsuite/20_util/function/60594.cc: New.
1272
1273 * include/bits/atomic_base.h (__atomic_base<_PTp*>::_M_type_size): Add
1274 const to constexpr member functions.
1275
1276 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)): Use
1277 delegating constructor.
1278 * include/bits/shared_ptr_base.h
1279 (__shared_ptr::__shared_ptr(nullptr_t)): Likewise
1280
1281 * include/std/atomic: Uglify parameter names.
1282
1283 PR c++/60786
1284 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1285 1.cc: Fix invalid explicit instantiations with unqualified names.
1286 * testsuite/20_util/shared_ptr/requirements/explicit_instantiation/
1287 2.cc: Likweise.
1288 * testsuite/20_util/tuple/53648.cc: Likweise.
1289 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/1.cc:
1290 Likewise.
1291 * testsuite/20_util/weak_ptr/requirements/explicit_instantiation/2.cc:
1292 Likewise.
1293 * testsuite/23_containers/unordered_map/requirements/
1294 debug_container.cc: Likewise.
1295 * testsuite/23_containers/unordered_map/requirements/
1296 explicit_instantiation/3.cc: Likewise.
1297 * testsuite/23_containers/unordered_multimap/requirements/debug.cc:
1298 Likewise.
1299 * testsuite/23_containers/unordered_multimap/requirements/
1300 explicit_instantiation/3.cc: Likewise.
1301 * testsuite/23_containers/unordered_multiset/requirements/debug.cc:
1302 Likewise.
1303 * testsuite/23_containers/unordered_multiset/requirements/
1304 explicit_instantiation/3.cc: Likewise.
1305 * testsuite/23_containers/unordered_set/requirements/
1306 debug_container.cc: Likewise.
1307 * testsuite/23_containers/unordered_set/requirements/
1308 explicit_instantiation/3.cc: Likewise.
1309
1310 * testsuite/24_iterators/insert_iterator/requirements/container.cc: Do
1311 not use uninitialized members in mem-initializers.
1312 * testsuite/ext/throw_value/cons.cc: Fix most vexing parse.
1313 * testsuite/util/testsuite_common_types.h: Update comment.
1314
1315 * include/experimental/string_view: Fix inconsistent exception specs.
1316
1317 * include/bits/shared_ptr.h (shared_ptr::shared_ptr(nullptr_t)):
1318 Remove name of unused parameter.
1319
1320 2014-04-14 Jonathan Wakely <jwakely@redhat.com>
1321
1322 * include/bits/stl_vector.h (_Vector_base::_Vector_impl,
1323 _Vector_base::_M_allocate): NullablePointer requirements do not
1324 include initialization from literal zero, use value-initialization.
1325 * include/bits/vector.tcc (vector::_M_insert_aux,
1326 vector::_M_explace_back_aux): Likewise for assignment.
1327
1328 * include/bits/allocator.h (operator==, operator!=): Add exception
1329 specifications.
1330
1331 PR libstdc++/60497
1332 * include/std/tuple (get): Qualify calls to prevent ADL.
1333 * testsuite/20_util/tuple/60497.cc: New.
1334
1335 * include/std/tuple (tuple_element_t): Define.
1336 * testsuite/20_util/tuple/tuple_element.cc: Change to compile-only
1337 test.
1338 * testsuite/20_util/tuple/tuple_element_t.cc: New.
1339
1340 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1341
1342 PR libstdc++/59434
1343 * include/bits/stl_iterator.h (move_iterator::reference,
1344 move_iterator::operator*): Implement LWG 2106.
1345 * testsuite/24_iterators/move_iterator/dr2106.cc: New file.
1346
1347 2014-04-11 Marc Glisse <marc.glisse@inria.fr>
1348
1349 * include/std/complex (__complex_exp, pow): Specify the template
1350 parameter in calls to std::polar, for expression templates.
1351
1352 2014-04-10 Andreas Schwab <schwab@suse.de>
1353
1354 * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Remove TLS
1355 symbols.
1356 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Likewise.
1357 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Likewise.
1358
1359 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
1360
1361 2014-04-07 Jonathan Wakely <jwakely@redhat.com>
1362
1363 * testsuite/20_util/exchange/1.cc: Add missing return statements.
1364 * testsuite/20_util/pair/40925.cc: Avoid most vexing parse.
1365 * testsuite/22_locale/codecvt_byname/50714.cc: Add missing exception
1366 specifications.
1367
1368 2014-04-02 Dominique d'Humieres <dominiq@lps.ens.fr>
1369 Jack Howarth <howarth@bromo.med.uc.edu>
1370
1371 PR target/54407
1372 * testsuite/30_threads/condition_variable/54185.cc: Skip for
1373 darwin < 11.
1374
1375 2014-04-01 Jonathan Wakely <jwakely@redhat.com>
1376
1377 * doc/xml/manual/backwards_compatibility.xml (backwards.third.headers):
1378 Update link.
1379 * doc/xml/manual/policy_data_structures_biblio.xml (bibliography):
1380 Fix broken links.
1381 * doc/xml/manual/shared_ptr.xml (shared_ptr.impl): Likewise.
1382 * doc/xml/manual/using_exceptions.xml (bibliography): Likewise.
1383 * doc/xml/manual/concurrency_extensions.xml
1384 (manual.ext.concurrency.impl.atomic_fallbacks): Likewise.
1385 * doc/html/*: Regenerate.
1386
1387 2014-03-31 Lars Gullik Bjønnes <larsbj@gullik.org>
1388 Jonathan Wakely <jwakely@redhat.com>
1389
1390 PR libstdc++/60270
1391 * include/std/iomanip (_Quoted_string operator>>): Do not clear
1392 string if input is not quoted.
1393 * testsuite/27_io/manipulators/standard/char/60270.cc: New.
1394
1395 2014-03-31 Jonathan Wakely <jwakely@redhat.com>
1396
1397 * libsupc++/eh_ptr.cc: Improve static_assert messages.
1398
1399 2014-03-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1400
1401 * testsuite/18_support/exception_ptr/60612-terminate.cc
1402 (terminate, f): Wrap in _GLIBCXX_USE_C99.
1403 * testsuite/18_support/exception_ptr/60612-unexpected.cc: Likewise.
1404
1405 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1406
1407 * doc/xml/manual/io.xml (std.io.objects): Additional markup.
1408
1409 * doc/xml/faq.xml (faq): Refer to clauses instead of chapters.
1410 * doc/xml/manual/appendix_contributing.xml (contrib.design_notes):
1411 Likewise.
1412 * doc/xml/manual/backwards_compatibility.xml (backwards.third):
1413 Likewise.
1414 * doc/xml/manual/test.xml (test.organization.layout): Likewise.
1415
1416 * doc/xml/manual/containers.xml (associative.bitset.size_variable):
1417 Fix bad s/part/chapter/ substitutions.
1418 * doc/xml/manual/io.xml (std.io): Likewise.
1419 * doc/xml/manual/numerics.xml (std.numerics.generalized_ops): Likewise.
1420 * doc/xml/manual/strings.xml (strings.string.Cstring): Likewise.
1421
1422 * doc/html/*: Regenerate.
1423
1424 2014-03-27 Jonathan Wakely <jwakely@redhat.com>
1425
1426 PR libstdc++/60612
1427 * libsupc++/eh_ptr.cc: Assert __cxa_dependent_exception layout is
1428 compatible with __cxa_exception.
1429 * libsupc++/unwind-cxx.h (__cxa_dependent_exception): Add padding.
1430 Fix typos in comments.
1431 * testsuite/18_support/exception_ptr/60612-terminate.cc: New.
1432 * testsuite/18_support/exception_ptr/60612-unexpected.cc: New.
1433
1434 2014-03-25 Jonathan Wakely <jwakely@redhat.com>
1435
1436 PR libstdc++/60658
1437 * include/bits/atomic_base.h (__atomic_base<_PTp*>::is_lock_free()):
1438 Use sizeof pointer type not the element type.
1439 * testsuite/29_atomics/atomic/60658.cc: New.
1440
1441 2014-03-24 Jakub Jelinek <jakub@redhat.com>
1442
1443 * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1444 * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Likewise.
1445 * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Likewise.
1446 * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Likewise.
1447 * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Likewise.
1448 * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Likewise.
1449 * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Likewise.
1450 * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Likewise.
1451 * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Likewise.
1452 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Remove TLS
1453 entries.
1454
1455 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1456
1457 * testsuite/23_containers/bitset/45713.cc: Skip compile on hppa*64*-*-*.
1458
1459 2014-03-23 François Dumont <fdumont@gcc.gnu.org>
1460
1461 * include/bits/hashtable.h (_Hashtable(allocator_type)): Fix call
1462 to delegated constructor.
1463 (_Hashtable(size_type, _H1, key_equal, allocator_type)): Likewise.
1464 (_Hashtable<_It>(_It, _It, size_type, _H1, key_equal, allocator_type)):
1465 Likewise.
1466 (_Hashtable(
1467 initializer_list, size_type, _H1, key_equal, allocator_type)): Likewise.
1468
1469 2014-03-23 John David Anglin <danglin@gcc.gnu.org>
1470
1471 PR libstdc++/60623
1472 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
1473
1474 2014-03-21 Jonathan Wakely <jwakely@redhat.com>
1475
1476 PR libstdc++/60587
1477 * include/debug/functions.h (_Is_contiguous_sequence): Define.
1478 (__foreign_iterator): Accept additional iterator. Do not dispatch on
1479 iterator category.
1480 (__foreign_iterator_aux2): Likewise. Add overload for iterators
1481 from different types of debug container. Use _Is_contiguous_sequence
1482 instead of is_lvalue_reference.
1483 (__foreign_iterator_aux3): Accept additional iterator. Avoid
1484 dereferencing past-the-end iterator.
1485 (__foreign_iterator_aux4): Use const value_type* instead of
1486 potentially user-defined const_pointer type.
1487 * include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
1488 and pass end iterator to __gnu_debug::__foreign_iterator.
1489 (__glibcxx_check_insert_range_after): Likewise.
1490 (__glibcxx_check_max_load_factor): Fix comment.
1491 * include/debug/vector (_Is_contiguous_sequence): Define partial
1492 specializations.
1493 * testsuite/23_containers/vector/debug/57779_neg.cc: Remove
1494 -std=gnu++11 option and unused header.
1495 * testsuite/23_containers/vector/debug/60587.cc: New.
1496 * testsuite/23_containers/vector/debug/60587_neg.cc: New.
1497
1498 2014-03-20 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
1499
1500 * crossconfig.m4: Support spu-*-elf* targets.
1501 * configure: Regenerate.
1502
1503 2014-03-18 Jonathan Wakely <jwakely@redhat.com>
1504
1505 PR libstdc++/60564
1506 * include/std/future (__future_base::_Task_state<>): Change
1507 constructors to template functions using perfect forwarding.
1508 (__create_task_state): Use decayed type as stored task.
1509 (packaged_task::packaged_task(_Fn&&)): Forward instead of moving.
1510 * testsuite/30_threads/packaged_task/60564.cc: New.
1511
1512 2014-03-16 François Dumont <fdumont@gcc.gnu.org>
1513
1514 * scripts/create_testsuite_files: Add testsuite/experimental in
1515 the list of folders to search for tests.
1516
1517 2014-03-15 Andreas Schwab <schwab@linux-m68k.org>
1518
1519 * config/abi/post/m68k-linux-gnu/baseline_symbols.txt: New file.
1520
1521 2014-03-15 Tim Shen <timshen91@gmail.com>
1522
1523 * include/bits/regex.h: Add/modify comments.
1524 * include/bits/regex_compiler.h: Likewise.
1525 * include/bits/regex_executor.h: Likewise.
1526 * include/bits/regex_executor.tcc: Likewise.
1527 * include/bits/regex_scanner.h: Likewise.
1528
1529 2014-03-14 Jonathan Wakely <jwakely@redhat.com>
1530
1531 PR ipa/58721
1532 * config/abi/pre/gnu.ver (GLIBCXX_3.4.11): Remove unused pattern for
1533 _ZNSt12system_errorC* symbols which are not exported on any target.
1534
1535 2014-03-12 Roland McGrath <mcgrathr@google.com>
1536 Mark Seaborn <mseaborn@google.com>
1537
1538 PR libstdc++/59392
1539 * libsupc++/eh_call.cc (__cxa_call_unexpected): Call __do_catch with
1540 the address of a null pointer, not with a null pointer to pointer.
1541 Copy comment for this case from eh_personality.cc:__cxa_call_unexpected.
1542 * testsuite/18_support/bad_exception/59392.cc: New file.
1543
1544 2014-03-11 Jonathan Wakely <jwakely@redhat.com>
1545
1546 PR libstdc++/60499
1547 * include/debug/forward_list (forward_list::operator=(forward_list&&)):
1548 Uglify name.
1549 * include/debug/map (map::operator=(map&&)): Likewise.
1550 * include/debug/multimap (multimap::operator=(multimap&&)): Likewise.
1551 * include/debug/multiset (multiset::operator=(multiset&&)): Likewise.
1552 * include/debug/set (set::operator=(set&&)): Likewise.
1553 * include/debug/unordered_map
1554 (unordered_map::operator=(unordered_map&&)): Likewise.
1555 (unordered_multimap::operator=(unordered_multimap&&)): Likewise.
1556 * include/debug/unordered_set
1557 (unordered_set::operator=(unordered_set&&)): Likewise.
1558 (unordered_multiset::operator=(unordered_multiset&&)): Likewise.
1559 * include/debug/vector (vector::operator=(vector&&)): Likewise.
1560 * testsuite/23_containers/forward_list/debug/60499.cc: New
1561 * testsuite/23_containers/map/debug/60499.cc: New
1562 * testsuite/23_containers/multimap/debug/60499.cc: New
1563 * testsuite/23_containers/multiset/debug/60499.cc: New
1564 * testsuite/23_containers/set/debug/60499.cc: New
1565 * testsuite/23_containers/unordered_map/debug/60499.cc: New
1566 * testsuite/23_containers/unordered_multimap/debug/60499.cc: New
1567 * testsuite/23_containers/unordered_multiset/debug/60499.cc: New
1568 * testsuite/23_containers/unordered_set/debug/60499.cc: New
1569 * testsuite/23_containers/vector/debug/60499.cc: New
1570
1571 2014-03-05 Ed Smith-Rowland <3dw4rd@verizon.net>
1572
1573 * doc/xml/manual/status_cxx2014.xml: Add new items and latest papers
1574 for filesystem and fundamentals TS work items.
1575
1576 2014-03-04 Paolo Carlini <paolo.carlini@oracle.com>
1577
1578 PR c++/60376
1579 * testsuite/29_atomics/headers/atomic/types_std_c++0x_neg.cc:
1580 Adjust dg-error directives.
1581
1582 2014-02-26 Tim Shen <timshen91@gmail.com>
1583
1584 * include/bits/regex.tcc (match_results<>::format,
1585 regex_replace<>): Update __out after calling std::copy.
1586 * testsuite/28_regex/algorithms/regex_replace/char/dr2213.cc:
1587 Add testcase.
1588 * testsuite/28_regex/match_results/format.cc: Likewise.
1589
1590 2014-02-22 Marc Glisse <marc.glisse@inria.fr>
1591
1592 PR libstdc++/60308
1593 * include/bits/stl_deque.h (_Deque_base::_Deque_base(const
1594 allocator_type&)): Remove redundant call to _M_initialize_map.
1595 (deque::deque(const allocator_type&)): Initialize _Base with a
1596 constructor that calls _M_initialize_map.
1597
1598 Partial revert:
1599
1600 2013-09-20 Marc Glisse <marc.glisse@inria.fr>
1601 PR libstdc++/58338
1602 (_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
1603 _M_initialize_map.
1604
1605 2014-02-21 Ed Smith-Rowland <3dw4rd@verizon.net>
1606
1607 Rename testsuite directory shared_mutex to shared_timed_mutex
1608 for consistency.
1609 * testsuite/30_threads/shared_mutex: Moved to...
1610 * testsuite/30_threads/shared_timed_mutex: ...here
1611
1612 2014-02-20 Ed Smith-Rowland <3dw4rd@verizon.net>
1613
1614 Rename shared_mutex to shared_timed_mutex per C++14 acceptance of N3891.
1615 * include/std/shared_mutex: Rename shared_mutex to shared_timed_mutex.
1616 * testsuite/30_threads/shared_lock/locking/2.cc: Ditto.
1617 * testsuite/30_threads/shared_lock/locking/4.cc: Ditto.
1618 * testsuite/30_threads/shared_lock/locking/1.cc: Ditto.
1619 * testsuite/30_threads/shared_lock/locking/3.cc: Ditto.
1620 * testsuite/30_threads/shared_lock/requirements/
1621 explicit_instantiation.cc: Ditto.
1622 * testsuite/30_threads/shared_lock/requirements/typedefs.cc: Ditto.
1623 * testsuite/30_threads/shared_lock/cons/2.cc: Ditto.
1624 * testsuite/30_threads/shared_lock/cons/4.cc: Ditto.
1625 * testsuite/30_threads/shared_lock/cons/1.cc: Ditto.
1626 * testsuite/30_threads/shared_lock/cons/6.cc: Ditto.
1627 * testsuite/30_threads/shared_lock/cons/3.cc: Ditto.
1628 * testsuite/30_threads/shared_lock/cons/5.cc: Ditto.
1629 * testsuite/30_threads/shared_lock/modifiers/2.cc: Ditto.
1630 * testsuite/30_threads/shared_lock/modifiers/1.cc: Ditto.
1631 * testsuite/30_threads/shared_mutex/requirements/
1632 standard_layout.cc: Ditto.
1633 * testsuite/30_threads/shared_mutex/cons/copy_neg.cc: Ditto.
1634 * testsuite/30_threads/shared_mutex/cons/1.cc: Ditto.
1635 * testsuite/30_threads/shared_mutex/cons/assign_neg.cc: Ditto.
1636 * testsuite/30_threads/shared_mutex/try_lock/2.cc: Ditto.
1637 * testsuite/30_threads/shared_mutex/try_lock/1.cc: Ditto.
1638
1639 2014-02-10 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1640
1641 * testsuite/22_locale/num_put/put/char/14220.cc: Don't xfail
1642 execution on i?86-*-solaris2.9, remove comment.
1643 * testsuite/22_locale/num_put/put/wchar_t/14220.cc: Likewise.
1644
1645 2014-02-09 Richard Sandiford <rdsandiford@googlemail.com>
1646
1647 * config/abi/post/mips64-linux-gnu/32/baseline_symbols.txt: New file.
1648 * config/abi/post/mips64-linux-gnu/baseline_symbols.txt: Update.
1649 * config/abi/post/mips64-linux-gnu/64/baseline_symbols.txt: Likewise.
1650
1651 2014-01-29 Jonathan Wakely <jwakely@redhat.com>
1652
1653 * include/bits/alloc_traits.h (allocator_traits::_S_allocate): Do
1654 not use varargs when argument could be non-POD.
1655 (__alloctr_rebind_helper): Eliminate static const bool member by
1656 using true_type and false_type.
1657 (allocator_traits::__allocate_helper): Likewise.
1658 (allocator_traits::__construct_helper): Likewise.
1659 (allocator_traits::__destroy_helper): Likewise.
1660 (allocator_traits::__maxsize_helper): Likewise.
1661 (allocator_traits::__select_helper): Likewise.
1662 * include/bits/ptr_traits.h (__ptrtr_rebind_helper): Likewise.
1663 * include/bits/stl_tree.h (_Rb_tree::operator=(const _Rb_tree&)):
1664 Remove redundant condition.
1665 * include/bits/stl_vector.h (vector::operator=(const vector&)):
1666 Likewise.
1667 (_Vector_impl::_M_allocate, _Vector_impl::_M_deallocate): Use
1668 indirection through __alloc_traits.
1669 * include/ext/alloc_traits.h (__allocator_always_compares_equal):
1670 Eliminate static const bool members by using true_type and false_type.
1671 (__gnu_cxx::__alloc_traits::__is_custom_pointer): Optimize.
1672 * testsuite/util/testsuite_allocator.h (PointerBase): Define.
1673 * testsuite/20_util/allocator_traits/members/allocate_hint_nonpod.cc:
1674 New.
1675 * testsuite/20_util/allocator_traits/requirements/typedefs2.cc: New.
1676
1677 PR libstdc++/59829
1678 * include/bits/stl_vector.h (vector::data()): Call _M_data_ptr.
1679 (vector::_M_data_ptr): New overloaded functions to ensure empty
1680 vectors do not dereference the pointer.
1681 * testsuite/23_containers/vector/59829.cc: New.
1682 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1683 Adjust dg-error line number.
1684 * testsuite/23_containers/vector/requirements/dr438/
1685 constructor_1_neg.cc: Likewise.
1686 * testsuite/23_containers/vector/requirements/dr438/
1687 constructor_2_neg.cc: Likewise.
1688 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1689 Likewise.
1690
1691 PR libstdc++/21609
1692 * include/ext/array_allocator.h: Add deprecated attribute.
1693
1694 PR libstdc++/57226
1695 * doc/xml/manual/debug.xml (debug.gdb): Update documentation for
1696 installation and use of python printers.
1697 * doc/xml/manual/status_cxx2011.xml: Update.
1698 * doc/html/*: Regenerate.
1699
1700 2014-01-28 Jonathan Wakely <jwakely@redhat.com>
1701 Kyle Lippincott <spectral@google.com>
1702
1703 PR libstdc++/59656
1704 * include/bits/shared_ptr.h (shared_ptr): Add new non-throwing
1705 constructor and grant friendship to weak_ptr.
1706 (weak_ptr::lock()): Use new constructor.
1707 * include/bits/shared_ptr_base.h
1708 (_Sp_counted_base::_M_add_ref_lock_nothrow()): Declare new function
1709 and define specializations.
1710 (__shared_count): Add new non-throwing constructor.
1711 (__shared_ptr): Add new non-throwing constructor and grant friendship
1712 to __weak_ptr.
1713 (__weak_ptr::lock()): Use new constructor.
1714 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error.
1715 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
1716
1717 2014-01-27 Jonathan Wakely <jwakely@redhat.com>
1718
1719 PR libstdc++/59215
1720 * include/bits/shared_ptr_base.h
1721 (_Sp_counted_base<_S_atomic>::_M_add_ref_lock()): Use relaxed atomic
1722 load.
1723
1724 2014-01-27 Jason Merrill <jason@redhat.com>
1725
1726 Core DR 475
1727 PR c++/41174
1728 PR c++/59224
1729 * libsupc++/eh_throw.cc (__cxa_throw): Set uncaughtExceptions.
1730 * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception)
1731 (__cxa_allocate_exception): Don't set it here.
1732
1733 2014-01-26 Jonathan Wakely <jwakely@redhat.com>
1734
1735 * include/bits/stl_map.h: Remove anachronistic comment.
1736 * include/bits/stl_multimap.h: Add whitespace.
1737 * testsuite/23_containers/map/modifiers/emplace/1.cc: Use
1738 -std=gnu++11 instead of -std=c++11.
1739 * testsuite/23_containers/map/operators/2.cc: Likewise.
1740 * testsuite/23_containers/multimap/modifiers/emplace/1.cc: Likewise.
1741 * testsuite/23_containers/multiset/modifiers/emplace/1.cc: Likewise.
1742 * testsuite/23_containers/set/modifiers/emplace/1.cc: Likewise.
1743
1744 * acinclude.m4 (GLIBCXX_ENABLE_C99): Fix typo.
1745 * configure: Regenerate.
1746
1747 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1748
1749 PR libstdc++/59531
1750 * testsuite/experimental/string_view/operations/copy/char/1.cc: New.
1751 * testsuite/experimental/string_view/operations/copy/wchar_t/1.cc: New.
1752
1753 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1754 Peter A. Bigot <pab@pabigot.com>
1755
1756 PR libstdc++/59531
1757 * include/experimental/string_view
1758 (copy(_CharT*, size_type, size_type) const): Correct throw string.
1759 Correct copy start location.
1760
1761 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1762 Peter A. Bigot <pab@pabigot.com>
1763
1764 PR libstdc++/59530
1765 * include/experimental/string_view (operator[](size_type) const):
1766 Fix one-off index error in debug check.
1767 * testsuite/experimental/string_view/element_access/char/1.cc: Don't
1768 test basic_string_view at size().
1769 * testsuite/experimental/string_view/element_access/wchar_t/1.cc: Ditto.
1770
1771 2014-01-24 Ed Smith-Rowland <3dw4rd@verizon.net>
1772 Peter A. Bigot <pab@pabigot.com>
1773
1774 PR libstdc++/59529
1775 * include/experimental/string_view
1776 (basic_string_view(const _CharT*, size_type)): Don't care if len == 0.
1777 * testsuite/experimental/string_view/operations/substr/char/1.cc:
1778 Comment out catch of out_of_range; No terminating null
1779 in basic_string_view. Check begin == end.
1780 * testsuite/experimental/string_view/operations/substr/wchar_t/1.cc:
1781 Ditto.
1782
1783 2014-01-24 Jonathan Wakely <jwakely@redhat.com>
1784
1785 PR libstdc++/59548
1786 * include/debug/safe_base.h (_Safe_sequence_base): Define copy
1787 constructor to prevent it being implicitly defined as deleted, but
1788 do not copy anything.
1789 * include/debug/safe_unordered_base.h (_Safe_unordered_container_base):
1790 Define copy and move constructors similar to _Safe_sequence_base's.
1791 * testsuite/23_containers/unordered_map/59548.cc: New.
1792
1793 2014-01-23 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
1794 Steve Ellcey <sellcey@mips.com>
1795
1796 * acinclude.m4 (GLIBCXX_CHECK_TMPNAM): New check for tmpnam
1797 function.
1798 * configure.ac: Use GLIBCXX_CHECK_TMPNAM.
1799 * (configure, config.h.in): Regenerate.
1800 * include/c_global/cstdio: Guard ::tmpnam with _GLIBCXX_USE_TMPNAM
1801
1802 2014-01-23 Jonathan Wakely <jwakely@redhat.com>
1803
1804 * doc/xml/faq.xml (a-how_to_set_paths): Expand FAQ answer.
1805 * doc/xml/manual/abi.xml (abi.versioning.history): Correct symver.
1806
1807 PR libstdc++/59872
1808 * include/bits/stl_map.h (map::operator=(map&&)): Fix comment.
1809 * include/bits/stl_multimap.h (multimap::operator=(multimap&&)):
1810 Likewise.
1811 * include/bits/stl_multiset.h (multiset::operator=(multiset&&)):
1812 Likewise.
1813 * include/bits/stl_set.h (set::operator=(set&&)): Likewise.
1814 * include/bits/stl_tree.h (_Rb_tree::_M_move_data): New overloaded
1815 functions to perform moving or copying of elements from rvalue tree.
1816 (_Rb_tree::_Rb_tree(_Rb_tree&&)): Use _M_move_data.
1817 (_Rb_tree::_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Likewise.
1818 * testsuite/23_containers/map/59872.cc: New.
1819 * testsuite/23_containers/map/56613.cc: Remove duplicate include.
1820
1821 2014-01-22 Jonathan Wakely <jwakely@redhat.com>
1822
1823 * include/bits/stl_deque.h (_Deque_impl): Move comment.
1824
1825 PR libstdc++/58764
1826 * include/bits/stl_deque.h (deque::deque(const allocator_type&):
1827 Split into separate default constructor and constructor taking
1828 allocator.
1829 * include/bits/stl_list.h (list::list(const allocator_type&): Likewise.
1830 * include/bits/stl_vector.h (vector::vector(const allocator_type&):
1831 Likewise.
1832 * include/debug/deque (deque::deque(const allocator_type&)): Likewise.
1833 * include/debug/list (list::list(const _Allocator&)): Likewise.
1834 * include/debug/map.h (map::map(const _Compare&, const _Allocator&)):
1835 Likewise.
1836 * include/debug/multimap.h
1837 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1838 * include/debug/set.h (set::set(const _Compare&, const _Allocator&)):
1839 Likewise.
1840 * include/debug/multiset.h
1841 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1842 * include/debug/vector (vector::vector(const allocator_type&)):
1843 Likewise.
1844 * include/profile/deque (deque::deque(const _Allocator&)): Likewise.
1845 * include/profile/list (list::list(const _Allocator&)): Likewise.
1846 * include/profile/map.h
1847 (map::map(const _Compare&, const _Allocator&)): Likewise.
1848 * include/profile/multimap.h
1849 (multimap::multimap(const _Compare&, const _Allocator&)): Likewise.
1850 * include/profile/set.h
1851 (set::set(const _Compare&, const _Allocator&)): Likewise.
1852 * include/profile/multiset.h
1853 (multiset::multiset(const _Compare&, const _Allocator&)): Likewise.
1854 * include/profile/vector (vector::vector(const _Allocator&)):
1855 Likewise.
1856 * testsuite/23_containers/deque/58764.cc: New.
1857 * testsuite/23_containers/list/58764.cc: New.
1858 * testsuite/23_containers/map/58764.cc: New.
1859 * testsuite/23_containers/multimap/58764.cc: New.
1860 * testsuite/23_containers/set/58764.cc: New.
1861 * testsuite/23_containers/multiset/58764.cc: New.
1862 * testsuite/23_containers/vector/58764.cc: New.
1863 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
1864 Adjust dg-error line number.
1865 * testsuite/23_containers/deque/requirements/dr438/
1866 constructor_1_neg.cc: Likewise.
1867 * testsuite/23_containers/deque/requirements/dr438/
1868 constructor_2_neg.cc: Likewise.
1869 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
1870 Likewise.
1871 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1872 Likewise.
1873 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1874 Likewise.
1875 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1876 Likewise.
1877 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1878 Likewise.
1879 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1880 Likewise.
1881 * testsuite/23_containers/vector/requirements/dr438/
1882 constructor_1_neg.cc: Likewise.
1883 * testsuite/23_containers/vector/requirements/dr438/
1884 constructor_2_neg.cc: Likewise.
1885 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1886 Likewise.
1887
1888 PR libstdc++/58764 (again)
1889 * include/bits/stl_list.h (list): Make default constructor's exception
1890 specification conditional.
1891 * include/bits/stl_vector.h (vector): Likewise.
1892 * testsuite/util/testsuite_allocator.h (SimpleAllocator): Add noexcept
1893 to default constructor.
1894 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
1895 Adjust dg-error line number.
1896 * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
1897 Likewise.
1898 * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
1899 Likewise.
1900 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
1901 Likewise.
1902 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
1903 Likewise.
1904 * testsuite/23_containers/vector/requirements/dr438/
1905 constructor_1_neg.cc: Likewise.
1906 * testsuite/23_containers/vector/requirements/dr438/
1907 constructor_2_neg.cc: Likewise.
1908 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
1909 Likewise.
1910
1911 2014-01-21 Tim Shen <timshen91@gmail.com>
1912
1913 * include/bits/regex.tcc: Remove incorrect `nosubs` handling.
1914 * include/bits/regex_scanner.tcc: Handle `nosubs` correctly.
1915 * testsuite/28_regex/constants/syntax_option_type.cc: Add a test case.
1916
1917 2014-01-21 Jonathan Wakely <jwakely@redhat.com>
1918
1919 PR libstdc++/56267
1920 * include/bits/hashtable.h (__cache_default): Do not depend on
1921 whether the hash function is DefaultConstructible or CopyAssignable.
1922 (_Hashtable): Adjust static assertions.
1923 * doc/xml/manual/containers.xml (containers.unordered.cache): Update.
1924 * testsuite/23_containers/unordered_set/instantiation_neg.cc: Adjust
1925 dg-error line number.
1926 * testsuite/23_containers/unordered_set/
1927 not_default_constructible_hash_neg.cc: Remove.
1928
1929 2014-01-20 François Dumont <fdumont@gcc.gnu.org>
1930
1931 * scripts/create_testsuite_files: Add testsuite/experimental in
1932 the list of folders to search for tests.
1933 * include/experimental/string_view
1934 (basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
1935 incompatible with constexpr qualifier.
1936 (basic_string_view<>::front()): Likewise.
1937 (basic_string_view<>::back()): Likewise.
1938 * testsuite/experimental/string_view/element_access/wchar_t/2.cc:
1939 Merge dg-options directives into one.
1940 * testsuite/experimental/string_view/element_access/char/2.cc:
1941 Likewise. Remove invalid experimental namespace scope on
1942 string_view_type.
1943
1944 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
1945
1946 PR libstdc++/56267
1947 * include/bits/hashtable_policy.h (_Hash_code_base<... false>): Grant
1948 friendship to _Local_iterator_base<..., false>.
1949 (_Local_iterator_base): Give protected access to all existing members.
1950 (_Local_iterator_base::_M_curr()): New public accessor.
1951 (_Local_iterator_base::_M_get_bucket()): New public accessor.
1952 (_Local_iterator_base<..., false>::_M_init()): New function to manage
1953 the lifetime of the _Hash_code_base explicitly.
1954 (_Local_iterator_base<..., false>::_M_destroy()): Likewise.
1955 (_Local_iterator_base<..., false>): Define copy constructor and copy
1956 assignment operator that use new functions to manage _Hash_code_base.
1957 (operator==(const _Local_iterator_base&, const _Local_iterator_base&),
1958 operator==(const _Local_iterator_base&, const _Local_iterator_base&)):
1959 Use public API for _Local_iterator_base.
1960 * include/debug/safe_local_iterator.h (_Safe_local_iterator): Likewise.
1961 * include/debug/unordered_map (__debug::unordered_map::erase(),
1962 __debug::unordered_multimap::erase()): Likewise.
1963 * include/debug/unordered_set (__debug::unordered_set::erase(),
1964 __debug::unordered_multiset::erase()): Likewise.
1965 * testsuite/23_containers/unordered_set/56267-2.cc: New test.
1966
1967 2014-01-19 Tim Shen <timshen91@gmail.com>
1968
1969 * include/bits/regex_compiler.h (_Comipler<>::_M_quantifier()):
1970 Fix parse error of multiple consecutive quantifiers like "a**".
1971 * include/bits/regex_compiler.tcc (_Comipler<>::_M_quantifier()):
1972 Likewise.
1973 * testsuite/28_regex/basic_regex/multiple_quantifiers.cc: New.
1974
1975 2014-01-17 François Dumont <fdumont@gcc.gnu.org>
1976
1977 * include/profile/set.h (set): Implement C++11 allocator-aware
1978 container requirements.
1979 * include/profile/map.h (map): Likewise.
1980 * include/profile/multiset.h (multiset): Likewise.
1981 * include/profile/multimap.h (multimap): Likewise.
1982 * include/profile/set.h
1983 (set::operator=(const set&)): Define as default in C++11 mode.
1984 (set::operator=(set&&)): Likewise.
1985 * include/profile/map.h
1986 (map::operator=(const map&)): Likewise.
1987 (map::operator=(map&&)): Likewise.
1988 * include/profile/multiset.h
1989 (multiset::operator=(const multiset&)): Likewise.
1990 (multiset::operator=(multiset&&)): Likewise.
1991 * include/profile/multimap.h
1992 (multimap::operator=(const multimap&)): Likewise.
1993 (multimap::operator=(multimap&&)): Likewise.
1994 * include/profile/set.h (set::operator=(std::initializer_list<>)):
1995 Rely on the same operator from normal mode.
1996 * include/profile/map.h (map::operator=(std::initializer_list<>)):
1997 Likewise.
1998 * include/profile/multiset.h
1999 (multiset::operator=(std::initializer_list<>)): Likewise.
2000 * include/profile/multimap.h
2001 (multimap::operator=(std::initializer_list<>)): Likewise.
2002 * include/profile/set.h (set::swap(set&)): Add noexcept
2003 specification.
2004 * include/profile/map.h (map::swap(map&)): Likewise.
2005 * include/profile/multiset.h (multiset::swap(multiset&)): Likewise.
2006 * include/profile/multimap.h (multimap::swap(multimap&)): Likewise.
2007
2008 2014-01-17 Tim Shen <timshen91@gmail.com>
2009
2010 * include/bits/regex_automaton.tcc (_StateSeq<>::_M_clone()): Do not
2011 use std::map.
2012 * include/bits/regex_automaton.h: Do not use std::set.
2013 * include/bits/regex_compiler.h (_BracketMatcher<>::_M_add_char(),
2014 _BracketMatcher<>::_M_add_collating_element(),
2015 _BracketMatcher<>::_M_add_equivalence_class(),
2016 _BracketMatcher<>::_M_make_range()): Likewise.
2017 * include/bits/regex_compiler.tcc (_BracketMatcher<>::_M_apply()):
2018 Likewise.
2019 * include/bits/regex_executor.h: Do not use std::queue.
2020 * include/bits/regex_executor.tcc (_Executor<>::_M_main(),
2021 _Executor<>::_M_dfs()): Likewise.
2022 * include/std/regex: Remove <map>, <set> and <queue>.
2023
2024 2014-01-17 Tim Shen <timshen91@gmail.com>
2025
2026 * include/bits/regex.h (__compile_nfa<>(), basic_regex<>::basic_regex(),
2027 basic_regex<>::assign()): Change __compile_nfa to accept
2028 const _CharT* only.
2029 * include/bits/regex_compiler.h: Change _Compiler's template
2030 argument from <_FwdIter, _TraitsT> to <_TraitsT>.
2031 * include/bits/regex_compiler.tcc: Likewise.
2032
2033 2014-01-17 Tim Shen <timshen91@gmail.com>
2034
2035 * include/bits/regex_compiler.h: Change _ScannerT into char-type
2036 templated.
2037 * include/bits/regex_scanner.h (_Scanner<>::_Scanner()): Separate
2038 _ScannerBase from _Scanner; Change _Scanner's template argument from
2039 _FwdIter to _CharT. Avoid use of std::map and std::set by using arrays
2040 instead.
2041 * include/bits/regex_scanner.tcc (_Scanner<>::_Scanner(),
2042 _Scanner<>::_M_scan_normal(), _Scanner<>::_M_eat_escape_ecma(),
2043 _Scanner<>::_M_eat_escape_posix(), _Scanner<>::_M_eat_escape_awk()):
2044 Likewise.
2045 * include/std/regex: Add <cstring> for using strchr.
2046
2047 2014-01-17 Tim Shen <timshen91@gmail.com>
2048
2049 * bits/regex_automaton.tcc: Indentation fix.
2050 * bits/regex_compiler.h (__compile_nfa<>(), _Compiler<>,
2051 _RegexTranslator<> _AnyMatcher<>, _CharMatcher<>,
2052 _BracketMatcher<>): Add bool option template parameters and
2053 specializations to make matching more efficient and space saving.
2054 * bits/regex_compiler.tcc: Likewise.
2055
2056 2014-01-15 François Dumont <fdumont@gcc.gnu.org>
2057
2058 PR libstdc++/59712
2059 * include/bits/hashtable_policy.h: Fix some long lines.
2060 * include/bits/hashtable.h (__hash_code_base_access): Define and
2061 use it to check its _M_bucket_index noexcept qualification. Use
2062 also in place of...
2063 (__access_protected_ctor): ...this.
2064 * testsuite/23_containers/unordered_set/instantiation_neg.cc:
2065 Adapt line number.
2066 * testsuite/23_containers/unordered_set/
2067 not_default_constructible_hash_neg.cc: Likewise.
2068
2069 2014-01-13 François Dumont <fdumont@gcc.gnu.org>
2070
2071 * include/debug/set.h (set): Implement C++11 allocator-aware
2072 container requirements.
2073 * include/debug/map.h (map): Likewise.
2074 * include/debug/multiset.h (multiset): Likewise.
2075 * include/debug/multimap.h (multimap): Likewise.
2076 * include/debug/set.h (set::operator=(set&&)): Add noexcept and
2077 fix implementation regarding management of safe iterators.
2078 * include/debug/map.h (map::operator=(map&&)): Likewise.
2079 * include/debug/multiset.h (multiset::operator=(multiset&&)): Likewise.
2080 * include/debug/multimap.h (multimap::operator=(multimap&&)):
2081 Likewise.
2082 * include/debug/set.h (set::operator=(std::initializer_list<>)):
2083 Rely on the same operator from normal mode.
2084 * include/debug/map.h (map::operator=(std::initializer_list<>)):
2085 Likewise.
2086 * include/debug/multiset.h
2087 (multiset::operator=(std::initializer_list<>)): Likewise.
2088 * include/debug/multimap.h
2089 (multimap::operator=(std::initializer_list<>)): Likewise.
2090 * include/debug/set.h (set::swap(set&)): Add noexcept
2091 specification, add allocator equality check.
2092 * include/debug/map.h (map::swap(map&)): Likewise.
2093 * include/debug/multiset.h (multiset::swap(multiset&)): Likewise.
2094 * include/debug/multimap.h (multimap::swap(multimap&)): Likewise.
2095
2096 2014-01-10 Jonathan Wakely <jwakely@redhat.com>
2097
2098 PR libstdc++/59698
2099 * doc/xml/manual/status_cxx1998.xml (iso.1998.specific): Markup
2100 and stylistic improvements.
2101 * doc/xml/manual/codecvt.xml (std.localization.facet.codecvt): Likewise
2102 and update for C++11.
2103 * doc/xml/manual/ctype.xml (std.localization.facet.ctype): Likewise.
2104
2105 PR libstdc++/59687
2106 * doc/xml/manual/backwards_compatibility.xml
2107 (backwards.third.nocreate_noreplace): Correct and expand.
2108
2109 PR libstdc++/59699
2110 * doc/xml/manual/support.xml (std.support.types.null): Update links.
2111
2112 2014-01-09 Jonathan Wakely <jwakely@redhat.com>
2113
2114 PR libstdc++/59738
2115 * include/bits/stl_vector.h (vector<>::_M_move_assign): Restore
2116 support for non-Movable types.
2117
2118 PR libstdc++/59680
2119 * src/c++11/thread.cc (__sleep_for): Fix call to ::sleep.
2120
2121 2014-01-08 François Dumont <fdumont@gcc.gnu.org>
2122
2123 * include/bits/stl_vector.h (std::vector<>::_M_move_assign): Pass
2124 *this allocator instance when building temporary vector instance
2125 so that *this allocator does not get moved.
2126 * include/debug/safe_base.h
2127 (_Safe_sequence_base(_Safe_sequence_base&&)): New.
2128 * include/debug/vector (__gnu_debug::vector<>(vector&&)): Use new
2129 move constructor from _Safe_sequence_base.
2130 (__gnu_debug::vector<>(vector&&, const allocator_type&)): Swap
2131 safe iterators if the instance is moved.
2132 (__gnu_debug::vector<>::operator=(vector&&)): Likewise.
2133 * testsuite/23_containers/vector/allocator/move.cc (test01): Add
2134 check on a vector iterator.
2135 * testsuite/23_containers/vector/allocator/move_assign.cc
2136 (test02): Likewise.
2137 (test03): New, test with a non-propagating allocator.
2138 * testsuite/23_containers/vector/debug/move_assign_neg.cc: New.
2139
2140 2014-01-07 Tim Shen <timshen91@gmail.com>
2141
2142 * include/bits/regex_compiler.h (_AnyMatcher<>::_AnyMatcher(),
2143 _AnyMatcher<>::operator(), _AnyMatcher<>::_M_apply(),
2144 _CharMatcher<>::_CharMatcher(), _CharMatcher<>::_M_translate(),
2145 _BracketMatcher<>::_BracketMatcher(), _BracketMatcher<>::operator(),
2146 _BracketMatcher<>::_M_add_char(),
2147 _BracketMatcher<>::_M_add_collating_element(),
2148 _BracketMatcher<>::_M_add_equivalence_class(),
2149 _BracketMatcher<>::_M_add_character_class(),
2150 _BracketMatcher<>::_M_make_range(), _BracketMatcher<>::_M_ready(),
2151 _BracketMatcher<>::_M_apply(), _BracketMatcher<>::_M_make_cache()):
2152 Fix _AnyMatcher behavior of POSIX style and move _M_flags
2153 to template parameter; Add cache for _BracketMatcher. Adjust
2154 declarations from here...
2155 * include/bits/regex.h (basic_regex<>::imbue()): ...to here. Also,
2156 imbuing a regex will trigger a recompilation to rebuild the cache.
2157 * include/bits/regex_compiler.tcc (_Compiler<>::_M_atom(),
2158 _Compiler<>::_M_bracket_expression()): Adjust matchers' caller for
2159 different template bool parameters.
2160 * include/bits/regex_executor.h: Remove unnecessary declarations.
2161 * include/std/regex: Adjust including orders.
2162 * testsuite/28_regex/traits/char/user_defined.cc: New.
2163 * testsuite/28_regex/traits/wchar_t/user_defined.cc: New.
2164
2165 2014-01-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
2166
2167 * config/abi/post/solaris2.9/baseline_symbols.txt: Regenerate.
2168 * config/abi/post/solaris2.9/sparcv9/baseline_symbols.txt: Likewise.
2169 * config/abi/post/solaris2.10/baseline_symbols.txt: Likewise.
2170 * config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
2171 * config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
2172
2173 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2174
2175 Update copyright years
2176
2177 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
2178
2179 * testsuite/18_support/new_handler.cc,
2180 testsuite/18_support/terminate_handler.cc,
2181 testsuite/18_support/unexpected_handler.cc: Use the standard form for
2182 the copyright notice.
2183 \f
2184 Copyright (C) 2014 Free Software Foundation, Inc.
2185
2186 Copying and distribution of this file, with or without modification,
2187 are permitted in any medium without royalty provided the copyright
2188 notice and this notice are preserved.