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