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