ChangeLog revision 1.1.1.19 1 1.1.1.19 mrg 2020-03-12 Release Manager
2 1.1.1.16 mrg
3 1.1.1.19 mrg * GCC 9.3.0 released.
4 1.1.1.19 mrg
5 1.1.1.19 mrg 2020-03-06 Jonathan Wakely <jwakely (a] redhat.com>
6 1.1.1.19 mrg
7 1.1.1.19 mrg Backport from mainline
8 1.1.1.19 mrg 2020-03-06 Jonathan Wakely <jwakely (a] redhat.com>
9 1.1.1.19 mrg
10 1.1.1.19 mrg PR libstdc++/94069
11 1.1.1.19 mrg * include/std/shared_mutex [!PTHREAD_RWLOCK_INITIALIZER]
12 1.1.1.19 mrg (__shared_mutex_pthread::__shared_mutex_pthread()): Remove incorrect
13 1.1.1.19 mrg second argument to __glibcxx_rwlock_init.
14 1.1.1.19 mrg * testsuite/30_threads/shared_timed_mutex/94069.cc: New test.
15 1.1.1.19 mrg
16 1.1.1.19 mrg 2020-03-05 Jonathan Wakely <jwakely (a] redhat.com>
17 1.1.1.19 mrg
18 1.1.1.19 mrg Backport from mainline
19 1.1.1.19 mrg 2020-03-05 Jonathan Wakely <jwakely (a] redhat.com>
20 1.1.1.19 mrg
21 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/all.cc: Mark unused variable.
22 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/copy.cc: Fix typo.
23 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
24 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/file_size.cc: Use correct type
25 1.1.1.19 mrg for return value, and in comparison.
26 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
27 1.1.1.19 mrg
28 1.1.1.19 mrg Backport from mainline
29 1.1.1.19 mrg 2019-09-27 Jonathan Wakely <jwakely (a] redhat.com>
30 1.1.1.19 mrg
31 1.1.1.19 mrg PR libstdc++/91910
32 1.1.1.19 mrg * src/c++11/debug.cc (_Safe_iterator_base::_M_detach()): Load pointer
33 1.1.1.19 mrg atomically and lock the mutex before accessing the sequence.
34 1.1.1.19 mrg (_Safe_local_iterator_base::_M_detach()): Likewise.
35 1.1.1.19 mrg (_Safe_iterator_base::_M_reset()): Clear _M_sequence atomically.
36 1.1.1.19 mrg
37 1.1.1.19 mrg Backport from mainline
38 1.1.1.19 mrg 2019-06-17 Jonathan Wakely <jwakely (a] redhat.com>
39 1.1.1.19 mrg
40 1.1.1.19 mrg * include/c_global/cmath (__lerp, lerp): Add noexcept (LWG 3201).
41 1.1.1.19 mrg
42 1.1.1.19 mrg Backport from mainline
43 1.1.1.19 mrg 2019-11-07 Jonathan Wakely <jwakely (a] redhat.com>
44 1.1.1.19 mrg
45 1.1.1.19 mrg * include/bits/stl_algo.h (for_each_n): Handle negative count.
46 1.1.1.19 mrg * testsuite/25_algorithms/for_each/for_each_n_debug.cc: New test.
47 1.1.1.19 mrg
48 1.1.1.19 mrg Backport from mainline
49 1.1.1.19 mrg 2020-01-28 Jonathan Wakely <jwakely (a] redhat.com>
50 1.1.1.19 mrg
51 1.1.1.19 mrg PR libstdc++/93470
52 1.1.1.19 mrg * include/bits/refwrap.h (reference_wrapper::operator()): Restrict
53 1.1.1.19 mrg static assertion to object types.
54 1.1.1.19 mrg
55 1.1.1.19 mrg 2020-01-28 Jonathan Wakely <jwakely (a] redhat.com>
56 1.1.1.19 mrg
57 1.1.1.19 mrg PR libstdc++/93325
58 1.1.1.19 mrg * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Use AC_SEARCH_LIBS for
59 1.1.1.19 mrg clock_gettime instead of explicit glibc version check.
60 1.1.1.19 mrg * configure: Regenerate.
61 1.1.1.19 mrg
62 1.1.1.19 mrg 2020-03-01 H.J. Lu <hongjiu.lu (a] intel.com>
63 1.1.1.19 mrg
64 1.1.1.19 mrg * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
65 1.1.1.19 mrg
66 1.1.1.19 mrg 2020-02-29 John David Anglin <danglin (a] gcc.gnu.org>
67 1.1.1.19 mrg
68 1.1.1.19 mrg * testsuite/17_intro/headers/c++1998/charset.cc: Skip on *-*-hpux*.
69 1.1.1.19 mrg * testsuite/17_intro/headers/c++2011/charset.cc: Likewise.
70 1.1.1.19 mrg * testsuite/17_intro/headers/c++2014/charset.cc: Likewise.
71 1.1.1.19 mrg * testsuite/17_intro/headers/c++2017/charset.cc: Likewise.
72 1.1.1.19 mrg * testsuite/17_intro/headers/c++2020/charset.cc: Likewise.
73 1.1.1.18 mrg
74 1.1.1.18 mrg 2020-02-26 Jonathan Wakely <jwakely (a] redhat.com>
75 1.1.1.18 mrg
76 1.1.1.18 mrg Backport from mainline
77 1.1.1.18 mrg 2020-01-09 Jonathan Wakely <jwakely (a] redhat.com>
78 1.1.1.18 mrg
79 1.1.1.18 mrg PR libstdc++/93205
80 1.1.1.18 mrg * include/bits/random.h (operator>>): Check stream operation succeeds.
81 1.1.1.18 mrg * include/bits/random.tcc (operator>>): Likewise.
82 1.1.1.18 mrg (__extract_params): New function to fill a vector from a stream.
83 1.1.1.18 mrg * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error line.
84 1.1.1.18 mrg
85 1.1.1.18 mrg Backport from mainline
86 1.1.1.18 mrg 2019-12-10 Jonathan Wakely <jwakely (a] redhat.com>
87 1.1.1.18 mrg
88 1.1.1.18 mrg PR libstdc++/92886
89 1.1.1.18 mrg * include/bits/ios_base.h (std::ios_base::trunc): Fix comment.
90 1.1.1.18 mrg
91 1.1.1.18 mrg Backport from mainline
92 1.1.1.18 mrg 2020-01-28 Jonathan Wakely <jwakely (a] redhat.com>
93 1.1.1.18 mrg
94 1.1.1.18 mrg PR libstdc++/93325
95 1.1.1.18 mrg * acinclude.m4 (GLIBCXX_ENABLE_LIBSTDCXX_TIME): Use AC_SEARCH_LIBS for
96 1.1.1.18 mrg clock_gettime instead of explicit glibc version check.
97 1.1.1.18 mrg * configure: Regenerate.
98 1.1.1.18 mrg
99 1.1.1.18 mrg Backport from mainline
100 1.1.1.18 mrg 2020-02-04 Jonathan Wakely <jwakely (a] redhat.com>
101 1.1.1.18 mrg
102 1.1.1.18 mrg PR libstdc++/93562
103 1.1.1.18 mrg * include/bits/unique_ptr.h (__uniq_ptr_impl::swap): Define.
104 1.1.1.18 mrg (unique_ptr::swap, unique_ptr<T[], D>::swap): Call it.
105 1.1.1.18 mrg * testsuite/20_util/unique_ptr/modifiers/93562.cc: New test.
106 1.1.1.18 mrg
107 1.1.1.18 mrg Backport from mainline
108 1.1.1.18 mrg 2020-01-17 Jonathan Wakely <jwakely (a] redhat.com>
109 1.1.1.18 mrg
110 1.1.1.18 mrg PR libstdc++/92376
111 1.1.1.19 mrg * include/bits/c++config: Only do PSTL config when the header is
112 1.1.1.19 mrg present, to fix freestanding.
113 1.1.1.18 mrg * libsupc++/new_opa.cc [!_GLIBCXX_HOSTED]: Declare allocation
114 1.1.1.18 mrg functions if they were detected by configure.
115 1.1.1.18 mrg
116 1.1.1.18 mrg Backport from mainline
117 1.1.1.18 mrg 2019-10-09 Jonathan Wakely <jwakely (a] redhat.com>
118 1.1.1.18 mrg
119 1.1.1.18 mrg PR libstdc++/78552
120 1.1.1.18 mrg * src/c++98/locale_init.cc (locale::classic()): Do not construct a new
121 1.1.1.18 mrg locale object for every call.
122 1.1.1.18 mrg (locale::_S_initialize_once()): Construct C locale here.
123 1.1.1.18 mrg
124 1.1.1.19 mrg 2020-01-24 Jonathan Wakely <jwakely (a] redhat.com>
125 1.1.1.19 mrg
126 1.1.1.18 mrg Backport from mainline
127 1.1.1.18 mrg 2020-01-23 Jonathan Wakely <jwakely (a] redhat.com>
128 1.1.1.18 mrg
129 1.1.1.18 mrg PR libstdc++/91947
130 1.1.1.18 mrg * include/Makefile.am (${host_builddir}/largefile-config.h): Simplify
131 1.1.1.18 mrg rule.
132 1.1.1.18 mrg * include/Makefile.in: Regenerate.
133 1.1.1.18 mrg
134 1.1.1.18 mrg Backport from mainline
135 1.1.1.18 mrg 2020-01-20 Jonathan Wakely <jwakely (a] redhat.com>
136 1.1.1.18 mrg
137 1.1.1.18 mrg * doc/xml/faq.xml: Fix grammar.
138 1.1.1.18 mrg * doc/xml/manual/appendix_contributing.xml: Improve instructions.
139 1.1.1.18 mrg * doc/xml/manual/spine.xml: Update copyright years.
140 1.1.1.18 mrg * doc/html/*: Regenerate.
141 1.1.1.18 mrg
142 1.1.1.18 mrg 2020-01-19 Eric S. Raymond <esr (a] thyrsus.com>
143 1.1.1.18 mrg Sandra Loosemore <sandra (a] codesourcery.com>
144 1.1.1.18 mrg
145 1.1.1.18 mrg Partial backport from mainline:
146 1.1.1.18 mrg
147 1.1.1.18 mrg 2020-01-19 Eric S. Raymond <esr (a] thyrsus.com>
148 1.1.1.18 mrg * doc/xml/faq.xml: Update for SVN -> Git transition.
149 1.1.1.18 mrg * doc/xml/manual/appendix_contributing.xml: Likewise.
150 1.1.1.18 mrg
151 1.1.1.18 mrg 2020-01-13 Jonathan Wakely <jwakely (a] redhat.com>
152 1.1.1.18 mrg
153 1.1.1.19 mrg Backport from mainlne
154 1.1.1.19 mrg 2019-10-04 Jonathan Wakely <jwakely (a] redhat.com>
155 1.1.1.19 mrg
156 1.1.1.19 mrg PR libstdc++/81091
157 1.1.1.19 mrg PR libstdc++/91947
158 1.1.1.19 mrg * configure.ac: Use AC_SYS_LARGEFILE to enable 64-bit file APIs.
159 1.1.1.19 mrg * config.h.in: Regenerate:
160 1.1.1.19 mrg * configure: Regenerate:
161 1.1.1.19 mrg * include/Makefile.am (${host_builddir}/largefile-config.h): New
162 1.1.1.19 mrg target to generate config header for filesystem library.
163 1.1.1.19 mrg (${host_builddir}/c++config.h): Rename macros for large file support.
164 1.1.1.19 mrg * include/Makefile.in: Regenerate.
165 1.1.1.19 mrg * src/c++17/fs_dir.cc: Include new config header.
166 1.1.1.19 mrg * src/c++17/fs_ops.cc: Likewise.
167 1.1.1.19 mrg (filesystem::file_size): Use uintmax_t for size.
168 1.1.1.19 mrg * src/filesystem/dir.cc: Include new config header.
169 1.1.1.19 mrg * src/filesystem/ops.cc: Likewise.
170 1.1.1.19 mrg (experimental::filesystem::file_size): Use uintmax_t for size.
171 1.1.1.19 mrg
172 1.1.1.18 mrg * doc/xml/manual/status_cxx1998.xml: Replace incorrect statement
173 1.1.1.18 mrg about documenting mainline.
174 1.1.1.18 mrg * doc/xml/manual/status_cxx2011.xml: Likewise.
175 1.1.1.18 mrg * doc/xml/manual/status_cxx2014.xml: Likewise.
176 1.1.1.18 mrg * doc/xml/manual/status_cxx2017.xml: Likewise.
177 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Likewise.
178 1.1.1.18 mrg * doc/xml/manual/status_cxxtr1.xml: Likewise.
179 1.1.1.18 mrg * doc/xml/manual/status_cxxtr24733.xml: Likewise.
180 1.1.1.18 mrg * doc/html/*: Regenerate.
181 1.1.1.18 mrg
182 1.1.1.19 mrg 2020-01-09 Jonathan Wakely <jwakely (a] redhat.com>
183 1.1.1.19 mrg
184 1.1.1.19 mrg PR libstdc++/93208
185 1.1.1.19 mrg * config/abi/pre/gnu.ver: Add new exports.
186 1.1.1.19 mrg * include/std/memory_resource (memory_resource::~memory_resource()):
187 1.1.1.19 mrg Do not define inline.
188 1.1.1.19 mrg (monotonic_buffer_resource::~monotonic_buffer_resource()): Likewise.
189 1.1.1.19 mrg * src/c++17/memory_resource.cc (memory_resource::~memory_resource()):
190 1.1.1.19 mrg Define.
191 1.1.1.19 mrg (monotonic_buffer_resource::~monotonic_buffer_resource()): Define.
192 1.1.1.19 mrg * testsuite/20_util/monotonic_buffer_resource/93208.cc: New test.
193 1.1.1.19 mrg
194 1.1.1.18 mrg 2020-01-08 Jonathan Wakely <jwakely (a] redhat.com>
195 1.1.1.18 mrg
196 1.1.1.18 mrg PR libstdc++/93201
197 1.1.1.18 mrg * src/c++17/fs_ops.cc (remove_all(const path&, error_code&)): Check
198 1.1.1.18 mrg result of recursive call before incrementing iterator.
199 1.1.1.18 mrg * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
200 1.1.1.18 mrg Likewise.
201 1.1.1.18 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Check errors
202 1.1.1.18 mrg are reported correctly.
203 1.1.1.18 mrg * testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
204 1.1.1.16 mrg
205 1.1.1.19 mrg 2019-12-11 Jonathan Wakely <jwakely (a] redhat.com>
206 1.1.1.19 mrg
207 1.1.1.19 mrg Backport from mainline
208 1.1.1.19 mrg 2019-11-25 Jonathan Wakely <jwakely (a] redhat.com>
209 1.1.1.19 mrg
210 1.1.1.19 mrg PR libstdc++/91786
211 1.1.1.19 mrg * include/bits/fs_path.h (filesystem_error): Move definition before
212 1.1.1.19 mrg the use in u8path.
213 1.1.1.19 mrg
214 1.1.1.19 mrg 2019-12-10 Thomas Rodgers <trodgers (a] redhat.com>
215 1.1.1.19 mrg
216 1.1.1.19 mrg Backport from mainline
217 1.1.1.19 mrg 2019-12-10 Thomas Rodgers <trodgers (a] redhat.com>
218 1.1.1.19 mrg
219 1.1.1.19 mrg * include/pstl/glue_numeric_defs.h: Restore enable_if lost during
220 1.1.1.19 mrg original import of pstl.
221 1.1.1.19 mrg * include/pstl/glue_numeric_impl.h: Likewise.
222 1.1.1.19 mrg
223 1.1.1.19 mrg 2019-12-09 Jonathan Wakely <jwakely (a] redhat.com>
224 1.1.1.19 mrg
225 1.1.1.19 mrg Backport from mainline
226 1.1.1.19 mrg 2019-12-09 Jonathan Wakely <jwakely (a] redhat.com>
227 1.1.1.19 mrg
228 1.1.1.19 mrg PR libstdc++/92853
229 1.1.1.19 mrg * src/c++17/fs_path.cc (filesystem::path::operator+=(const path&)):
230 1.1.1.19 mrg Do not process a trailing directory separator twice.
231 1.1.1.19 mrg * testsuite/27_io/filesystem/path/concat/92853.cc: New test.
232 1.1.1.19 mrg * testsuite/27_io/filesystem/path/concat/path.cc: Test more cases.
233 1.1.1.19 mrg * testsuite/27_io/filesystem/path/concat/strings.cc: Test more cases.
234 1.1.1.19 mrg
235 1.1.1.19 mrg 2019-11-22 Jonathan Wakely <jwakely (a] redhat.com>
236 1.1.1.19 mrg
237 1.1.1.19 mrg Backport from mainline
238 1.1.1.19 mrg 2019-10-29 Jonathan Wakely <jwakely (a] redhat.com>
239 1.1.1.19 mrg
240 1.1.1.19 mrg PR libstdc++/92267
241 1.1.1.19 mrg * include/bits/stl_deque.h (_Deque_iterator(const _Deque_iterator&)):
242 1.1.1.19 mrg Do not define as defaulted.
243 1.1.1.19 mrg * testsuite/23_containers/deque/types/92267.cc: New test.
244 1.1.1.19 mrg
245 1.1.1.19 mrg 2019-10-28 John David Anglin <danglin (a] gcc.gnu.org>
246 1.1.1.19 mrg
247 1.1.1.19 mrg * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
248 1.1.1.19 mrg
249 1.1.1.16 mrg 2019-10-24 Jonathan Wakely <jwakely (a] redhat.com>
250 1.1.1.16 mrg
251 1.1.1.16 mrg Backport from mainline
252 1.1.1.19 mrg 2019-05-31 Jonathan Wakely <jwakely (a] redhat.com>
253 1.1.1.19 mrg
254 1.1.1.19 mrg PR libstdc++/90682
255 1.1.1.19 mrg * libsupc++/eh_term_handler.cc: Include eh_term_handler.h to get
256 1.1.1.19 mrg definition of _GLIBCXX_DEFAULT_TERM_HANDLER.
257 1.1.1.19 mrg * libsupc++/eh_term_handler.h: New header defining
258 1.1.1.19 mrg _GLIBCXX_DEFAULT_TERM_HANDLER.
259 1.1.1.19 mrg * libsupc++/eh_terminate.cc: Include eh_term_handler.h.
260 1.1.1.19 mrg (set_terminate): Restore default handler when argument is null.
261 1.1.1.19 mrg (set_unexpected): Likewise.
262 1.1.1.19 mrg * testsuite/18_support/set_terminate.cc: New test.
263 1.1.1.19 mrg * testsuite/18_support/set_unexpected.cc: New test.
264 1.1.1.19 mrg
265 1.1.1.19 mrg Backport from mainline
266 1.1.1.19 mrg 2019-05-01 Jonathan Wakely <jwakely (a] redhat.com>
267 1.1.1.19 mrg
268 1.1.1.19 mrg PR libstdc++/61761
269 1.1.1.19 mrg * include/std/complex (__complex_proj): Return parameter unchanged.
270 1.1.1.19 mrg [_GLIBCXX_USE_C99_COMPLEX] (__complex_proj): Change overloads for
271 1.1.1.19 mrg floating-point types to take std::complex arguments.
272 1.1.1.19 mrg [_GLIBCXX_USE_C99_MATH_TR1] (__complex_proj): Add overloads for
273 1.1.1.19 mrg floating-point types.
274 1.1.1.19 mrg * testsuite/26_numerics/complex/proj.cc: New test.
275 1.1.1.19 mrg
276 1.1.1.19 mrg Backport from mainline
277 1.1.1.19 mrg 2019-06-06 Jonathan Wakely <jwakely (a] redhat.com>
278 1.1.1.19 mrg
279 1.1.1.19 mrg * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Add
280 1.1.1.19 mrg dg-prune-output for different C++98 diagnostic.
281 1.1.1.19 mrg * testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
282 1.1.1.19 mrg Likewise.
283 1.1.1.19 mrg * testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
284 1.1.1.19 mrg Likewise.
285 1.1.1.19 mrg * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
286 1.1.1.19 mrg Likewise.
287 1.1.1.19 mrg * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
288 1.1.1.19 mrg Likewise.
289 1.1.1.19 mrg * testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
290 1.1.1.19 mrg Likewise.
291 1.1.1.19 mrg * testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
292 1.1.1.19 mrg Likewise.
293 1.1.1.19 mrg * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
294 1.1.1.19 mrg Likewise.
295 1.1.1.19 mrg * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
296 1.1.1.19 mrg Likewise.
297 1.1.1.19 mrg * testsuite/23_containers/vector/requirements/dr438/
298 1.1.1.19 mrg constructor_1_neg.cc: Likewise.
299 1.1.1.19 mrg * testsuite/23_containers/vector/requirements/dr438/
300 1.1.1.19 mrg constructor_2_neg.cc: Likewise.
301 1.1.1.19 mrg * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
302 1.1.1.19 mrg Likewise.
303 1.1.1.19 mrg * testsuite/libstdc++-prettyprinters/compat.cc: Do not run for C++98.
304 1.1.1.19 mrg
305 1.1.1.19 mrg Backport from mainline
306 1.1.1.18 mrg 2019-06-06 Jonathan Wakely <jwakely (a] redhat.com>
307 1.1.1.18 mrg
308 1.1.1.18 mrg * testsuite/20_util/is_nothrow_invocable/value.cc: Test converting to
309 1.1.1.18 mrg void.
310 1.1.1.18 mrg * testsuite/experimental/names.cc: Do not run for C++98 mode. Do not
311 1.1.1.18 mrg include Library Fundamentals or Networking headers in C++11 mode.
312 1.1.1.19 mrg * testsuite/ext/char8_t/atomic-1.cc: Do not run for C++98 mode.
313 1.1.1.19 mrg
314 1.1.1.19 mrg Backport from mainline
315 1.1.1.19 mrg 2019-05-14 Jonathan Wakely <jwakely (a] redhat.com>
316 1.1.1.19 mrg
317 1.1.1.19 mrg * testsuite/util/testsuite_allocator.h (memory_resource)
318 1.1.1.19 mrg (default_resource_mgr): Fix indentation.
319 1.1.1.19 mrg
320 1.1.1.19 mrg Backport from mainline
321 1.1.1.19 mrg 2019-08-30 Jonathan Wakely <jwakely (a] redhat.com>
322 1.1.1.19 mrg
323 1.1.1.19 mrg PR libstdc++/89164
324 1.1.1.19 mrg * include/bits/stl_algobase.h (__copy_move): Give descriptive names
325 1.1.1.19 mrg to template parameters.
326 1.1.1.19 mrg * include/bits/stl_uninitialized.h (uninitialized_copy)
327 1.1.1.19 mrg (uninitialized_fill, uninitialized_fill_n): Add static assertions to
328 1.1.1.19 mrg diagnose invalid uses.
329 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy/1.cc:
330 1.1.1.19 mrg Adjust expected error.
331 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy/89164.cc:
332 1.1.1.19 mrg New test.
333 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
334 1.1.1.19 mrg 89164.cc: New test.
335 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill/89164.cc:
336 1.1.1.19 mrg New test.
337 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/
338 1.1.1.19 mrg 89164.cc: New test.
339 1.1.1.19 mrg * testsuite/23_containers/vector/cons/89164.cc: New test.
340 1.1.1.19 mrg * testsuite/23_containers/vector/cons/89164_c++17.cc: New test.
341 1.1.1.18 mrg
342 1.1.1.18 mrg Backport from mainline
343 1.1.1.18 mrg 2019-10-22 Jonathan Wakely <jwakely (a] redhat.com>
344 1.1.1.18 mrg
345 1.1.1.18 mrg * include/bits/memoryfwd.h (uses_allocator): Do not declare for C++98.
346 1.1.1.18 mrg * testsuite/17_intro/names.cc: Check uses_allocator in C++98.
347 1.1.1.18 mrg
348 1.1.1.18 mrg Backport from mainline
349 1.1.1.16 mrg 2019-10-18 Jonathan Wakely <jwakely (a] redhat.com>
350 1.1.1.16 mrg
351 1.1.1.16 mrg PR libstdc++/92143
352 1.1.1.16 mrg * libsupc++/new_opa.cc (operator new) [__APPLE__]: Increase alignment
353 1.1.1.16 mrg to at least sizeof(void*).
354 1.1.1.16 mrg
355 1.1.1.16 mrg Backport from mainline
356 1.1.1.19 mrg 2019-06-06 Jonathan Wakely <jwakely (a] redhat.com>
357 1.1.1.19 mrg
358 1.1.1.19 mrg * testsuite/23_containers/unordered_map/requirements/debug_container.cc:
359 1.1.1.19 mrg Do not test allocator rebinding extension for C++2a.
360 1.1.1.19 mrg * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Change
361 1.1.1.19 mrg dg-do directive for C++17 and C++2a.
362 1.1.1.19 mrg
363 1.1.1.19 mrg Backport from mainline
364 1.1.1.19 mrg 2019-05-23 Jonathan Wakely <jwakely (a] redhat.com>
365 1.1.1.19 mrg
366 1.1.1.19 mrg * testsuite/20_util/function_objects/invoke/1.cc: Add more tests.
367 1.1.1.19 mrg Move C++17-specific tests to ...
368 1.1.1.19 mrg * testsuite/20_util/function_objects/invoke/3.cc: New test.
369 1.1.1.19 mrg * testsuite/23_containers/unordered_set/allocator/ext_ptr.cc: Change
370 1.1.1.19 mrg "compile" test to "run".
371 1.1.1.19 mrg
372 1.1.1.19 mrg Backport from mainline
373 1.1.1.16 mrg 2019-10-08 Jonathan Wakely <jwakely (a] redhat.com>
374 1.1.1.16 mrg
375 1.1.1.16 mrg * doc/Makefile.am (doc-html-docbook-regenerate): New target.
376 1.1.1.16 mrg (${docbook_outdir}/html): Do not create unused 'html/ext' directory.
377 1.1.1.16 mrg * doc/Makefile.in: Regenerate.
378 1.1.1.16 mrg * doc/xml/manual/documentation_hacking.xml: Document new target.
379 1.1.1.16 mrg * doc/html/*: Regenerate.
380 1.1.1.16 mrg
381 1.1.1.16 mrg * doc/xml/manual/allocator.xml: Use archived copy of CUJ article.
382 1.1.1.16 mrg
383 1.1.1.16 mrg Backport from mainline
384 1.1.1.16 mrg 2019-05-31 Gerald Pfeifer <gerald (a] pfeifer.com>
385 1.1.1.16 mrg
386 1.1.1.16 mrg * doc/xml/manual/allocator.xml: Move hoard.org back to http.
387 1.1.1.16 mrg
388 1.1.1.18 mrg Backport from mainline
389 1.1.1.19 mrg 2019-08-15 Jonathan Wakely <jwakely (a] redhat.com>
390 1.1.1.19 mrg
391 1.1.1.19 mrg PR libstdc++/91456
392 1.1.1.19 mrg * include/bits/std_function.h (__check_func_return_type): Remove.
393 1.1.1.19 mrg (function::_Callable): Use std::__is_invocable_impl instead of
394 1.1.1.19 mrg __check_func_return_type.
395 1.1.1.19 mrg * include/std/type_traits (__is_invocable_impl): Add another defaulted
396 1.1.1.19 mrg template parameter. Define a separate partial specialization for
397 1.1.1.19 mrg INVOKE and INVOKE<void>. For INVOKE<R> replace is_convertible check
398 1.1.1.19 mrg with a check that models delayed temporary materialization.
399 1.1.1.19 mrg * testsuite/20_util/function/91456.cc: New test.
400 1.1.1.19 mrg * testsuite/20_util/is_invocable/91456.cc: New test.
401 1.1.1.19 mrg
402 1.1.1.19 mrg Backport from mainline
403 1.1.1.19 mrg 2019-09-30 Andreas Tobler <andreast (a] gcc.gnu.org>
404 1.1.1.19 mrg
405 1.1.1.19 mrg * include/experimental/internet: Include netinet/in.h if we have
406 1.1.1.19 mrg _GLIBCXX_HAVE_NETINET_IN_H defined.
407 1.1.1.19 mrg
408 1.1.1.19 mrg Backport from mainline
409 1.1.1.19 mrg 2019-09-26 Jonathan Wakely <jwakely (a] redhat.com>
410 1.1.1.19 mrg
411 1.1.1.19 mrg * include/experimental/internet (operator==, operator<): Fix loop
412 1.1.1.19 mrg condition to avoid reading past the end of the array.
413 1.1.1.19 mrg
414 1.1.1.19 mrg Backport from mainline
415 1.1.1.19 mrg 2019-08-06 Jonathan Wakely <jwakely (a] redhat.com>
416 1.1.1.19 mrg
417 1.1.1.19 mrg P1651R0 bind_front should not unwrap reference_wrapper
418 1.1.1.19 mrg * include/std/functional (bind_front): Don't unwrap reference_wrapper.
419 1.1.1.19 mrg * include/std/version (__cpp_lib_bind_front): Update value.
420 1.1.1.19 mrg * testsuite/20_util/function_objects/bind_front/1.cc: Fix test for
421 1.1.1.19 mrg feature test macro.
422 1.1.1.19 mrg * testsuite/20_util/function_objects/bind_front/2.cc: New test.
423 1.1.1.19 mrg
424 1.1.1.19 mrg Backport from mainline
425 1.1.1.18 mrg 2019-10-11 Jonathan Wakely <jwakely (a] redhat.com>
426 1.1.1.18 mrg
427 1.1.1.18 mrg PR libstdc++/92059
428 1.1.1.18 mrg * include/tr2/dynamic_bitset (__dynamic_bitset_base): Define all
429 1.1.1.18 mrg special member functions as defaulted. Add noexcept to most members.
430 1.1.1.18 mrg (__dynamic_bitset_base(size_t, unsigned long long, const _Alloc&)):
431 1.1.1.18 mrg Mask off unwanted bits in the __val parameter. Avoid undefined left
432 1.1.1.18 mrg shifts.
433 1.1.1.18 mrg (__dynamic_bitset_base::_M_assign): Remove.
434 1.1.1.18 mrg (__dynamic_bitset_base::_M_do_reset): Use std::fill.
435 1.1.1.18 mrg (__dynamic_bitset_base::_M_are_all_aux): Avoid integer promotion when
436 1.1.1.18 mrg block_type has lower rank than int.
437 1.1.1.18 mrg (dynamic_bitset): Add noexcept to most members. Use injected-class-name
438 1.1.1.18 mrg in return types and parameter types.
439 1.1.1.18 mrg (dynamic_bitset::_M_Nb): Add default member initializer.
440 1.1.1.18 mrg (dynamic_bitset(), dynamic_bitset(const dynamic_bitset&)): Define as
441 1.1.1.18 mrg defaulted.
442 1.1.1.18 mrg (dynamic_bitset(dynamic_bitset&&)): Clear source object after move.
443 1.1.1.18 mrg (dynamic_bitset::operator=(const dynamic_bitset&)): Define as
444 1.1.1.18 mrg defaulted.
445 1.1.1.18 mrg (dynamic_bitset::operator=(dynamic_bitset&&)): Add noexcept-specifier.
446 1.1.1.18 mrg Define without using swap, to propagate allocator correctly.
447 1.1.1.18 mrg (dynamic_bitset(const char*, const _Alloc&)): Use strlen.
448 1.1.1.18 mrg (dynamic_bitset::_M_do_sanitize, dynamic_bitset::_M_do_fill): Use
449 1.1.1.18 mrg casts to avoid unwanted integer promotions.
450 1.1.1.18 mrg (dynamic_bitset::_M_copy_from_ptr): Rearrange template parameters and
451 1.1.1.18 mrg add default template arguments and default argument to simplify usage.
452 1.1.1.18 mrg (dynamic_bitset::_M_copy_from_string): Adjust call to _M_copy_from_ptr.
453 1.1.1.18 mrg (operator==(const dynamic_bitset&, const dynamic_bitset&))
454 1.1.1.18 mrg (operator<(const dynamic_bitset&, const dynamic_bitset&)): Use _M_Nb.
455 1.1.1.18 mrg * include/tr2/dynamic_bitset.tcc (dynamic_bitset::_M_copy_from_ptr):
456 1.1.1.18 mrg Adjust template parameters to match declaration.
457 1.1.1.18 mrg * testsuite/tr2/dynamic_bitset/cmp.cc: New test.
458 1.1.1.18 mrg * testsuite/tr2/dynamic_bitset/cons.cc: New test.
459 1.1.1.18 mrg * testsuite/tr2/dynamic_bitset/copy.cc: New test.
460 1.1.1.18 mrg * testsuite/tr2/dynamic_bitset/move.cc: New test.
461 1.1.1.18 mrg * testsuite/tr2/dynamic_bitset/pr92059.cc: New test.
462 1.1.1.18 mrg
463 1.1.1.19 mrg 2019-09-12 Jonathan Wakely <jwakely (a] redhat.com>
464 1.1.1.19 mrg
465 1.1.1.19 mrg PR libstdc++/91748
466 1.1.1.19 mrg * include/bits/stl_algo.h (for_each_n): Fix random access iterator
467 1.1.1.19 mrg case.
468 1.1.1.19 mrg * testsuite/25_algorithms/for_each/for_each_n.cc: Test with random
469 1.1.1.19 mrg access iterators.
470 1.1.1.19 mrg
471 1.1.1.16 mrg 2019-09-11 Jonathan Wakely <jwakely (a] redhat.com>
472 1.1.1.16 mrg
473 1.1.1.16 mrg * python/libstdcxx/v6/xmethods.py (SharedPtrUseCountWorker.__call__):
474 1.1.1.16 mrg Fix syntax error.
475 1.1.1.16 mrg
476 1.1.1.19 mrg 2019-09-09 Edward Smith-Rowland <3dw4rd (a] verizon.net>
477 1.1.1.19 mrg
478 1.1.1.19 mrg Update docs for p858 - Constexpr iterator changes available since 9.1.
479 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Update p0858r0 status.
480 1.1.1.19 mrg
481 1.1.1.16 mrg 2019-09-02 Jonathan Wakely <jwakely (a] redhat.com>
482 1.1.1.16 mrg
483 1.1.1.19 mrg * doc/xml/manual/abi.xml: Document 9.x library versions.
484 1.1.1.18 mrg * doc/html/*: Regenerate.
485 1.1.1.16 mrg
486 1.1.1.19 mrg 2019-09-02 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
487 1.1.1.19 mrg
488 1.1.1.19 mrg * config/abi/post/i386-solaris2.10/baseline_symbols.txt: Regenerate.
489 1.1.1.19 mrg * config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: Likewise.
490 1.1.1.19 mrg * config/abi/post/i386-solaris2.11/baseline_symbols.txt: Likewise.
491 1.1.1.19 mrg * config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: Likewise.
492 1.1.1.19 mrg * config/abi/post/sparc-solaris2.10/baseline_symbols.txt: Likewise.
493 1.1.1.19 mrg * config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
494 1.1.1.19 mrg Likewise.
495 1.1.1.19 mrg * config/abi/post/sparc-solaris2.11/baseline_symbols.txt: Likewise.
496 1.1.1.19 mrg * config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
497 1.1.1.19 mrg Likewise.
498 1.1.1.19 mrg
499 1.1.1.19 mrg 2019-08-29 Jonathan Wakely <jwakely (a] redhat.com>
500 1.1.1.19 mrg
501 1.1.1.19 mrg PR libstdc++/91067
502 1.1.1.19 mrg * acinclude.m4 (libtool_VERSION): Bump to 6:28:0.
503 1.1.1.19 mrg * configure: Regenerate.
504 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.28): Add new version. Export
505 1.1.1.19 mrg missing symbols.
506 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/91067.cc: Test move
507 1.1.1.19 mrg constructors.
508 1.1.1.19 mrg * testsuite/util/testsuite_abi.cc: Add new symbol version.
509 1.1.1.19 mrg
510 1.1.1.19 mrg 2019-08-29 Jakub Jelinek <jakub (a] redhat.com
511 1.1.1.19 mrg
512 1.1.1.19 mrg * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
513 1.1.1.19 mrg * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
514 1.1.1.19 mrg
515 1.1.1.19 mrg 2019-08-28 Jonathan Wakely <jwakely (a] redhat.com>
516 1.1.1.19 mrg
517 1.1.1.19 mrg * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
518 1.1.1.19 mrg * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
519 1.1.1.19 mrg * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update.
520 1.1.1.19 mrg * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
521 1.1.1.19 mrg * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
522 1.1.1.19 mrg * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
523 1.1.1.19 mrg * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
524 1.1.1.19 mrg
525 1.1.1.19 mrg 2019-08-23 Joseph Myers <joseph (a] codesourcery.com>
526 1.1.1.19 mrg
527 1.1.1.19 mrg * src/filesystem/ops-common.h [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
528 1.1.1.19 mrg (std::filesystem::__gnu_posix::lstat): Add return type.
529 1.1.1.19 mrg
530 1.1.1.19 mrg 2019-08-20 Jonathan Wakely <jwakely (a] redhat.com>
531 1.1.1.19 mrg
532 1.1.1.19 mrg * include/std/numeric (reduce): Fix Doxygen markup.
533 1.1.1.19 mrg
534 1.1.1.19 mrg Backport from mainline
535 1.1.1.19 mrg 2019-06-19 Jonathan Wakely <jwakely (a] redhat.com>
536 1.1.1.19 mrg
537 1.1.1.19 mrg * include/std/numeric (reduce(Iter, Iter, T, BinOp)): Fix value
538 1.1.1.19 mrg category used in invocable check.
539 1.1.1.19 mrg (reduce(Iter, Iter, T)): Pass initial value as rvalue.
540 1.1.1.19 mrg * testsuite/26_numerics/reduce/2.cc: New test.
541 1.1.1.19 mrg
542 1.1.1.19 mrg Backport from mainline
543 1.1.1.19 mrg 2019-06-18 Jonathan Wakely <jwakely (a] redhat.com>
544 1.1.1.19 mrg
545 1.1.1.19 mrg * include/bits/algorithmfwd.h: Change title of doc group.
546 1.1.1.19 mrg * include/bits/stl_algo.h (for_each_n): Add new C++17 algorithm from
547 1.1.1.19 mrg P0024R2.
548 1.1.1.19 mrg * include/bits/stl_numeric.h: Define doc group and add algos to it.
549 1.1.1.19 mrg * include/std/numeric (__is_random_access_iter): New internal trait.
550 1.1.1.19 mrg (reduce, transform_reduce, exclusive_scan, inclusive_scan)
551 1.1.1.19 mrg (transform_exclusive_scan, transform_inclusive_scan): Likewise.
552 1.1.1.19 mrg * testsuite/25_algorithms/for_each/for_each_n.cc: New test.
553 1.1.1.19 mrg * testsuite/26_numerics/exclusive_scan/1.cc: New test.
554 1.1.1.19 mrg * testsuite/26_numerics/inclusive_scan/1.cc: New test.
555 1.1.1.19 mrg * testsuite/26_numerics/reduce/1.cc: New test.
556 1.1.1.19 mrg * testsuite/26_numerics/transform_exclusive_scan/1.cc: New test.
557 1.1.1.19 mrg * testsuite/26_numerics/transform_inclusive_scan/1.cc: New test.
558 1.1.1.19 mrg * testsuite/26_numerics/transform_reduce/1.cc: New test.
559 1.1.1.19 mrg * testsuite/util/testsuite_iterators.h (test_container::size()): New
560 1.1.1.19 mrg member function.
561 1.1.1.19 mrg
562 1.1.1.19 mrg 2019-08-20 Uros Bizjak <ubizjak (a] gmail.com>
563 1.1.1.19 mrg
564 1.1.1.19 mrg * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
565 1.1.1.19 mrg
566 1.1.1.19 mrg 2019-08-13 Jonathan Wakely <jwakely (a] redhat.com>
567 1.1.1.19 mrg
568 1.1.1.19 mrg Backport from mainline
569 1.1.1.19 mrg 2019-08-12 Jonathan Wakely <jwakely (a] redhat.com>
570 1.1.1.19 mrg
571 1.1.1.19 mrg PR libstdc++/90361
572 1.1.1.19 mrg * src/c++17/string-inst.cc: Use _GLIBCXX_USE_CXX11_ABI=1 by default.
573 1.1.1.16 mrg
574 1.1.1.19 mrg 2019-08-12 Release Manager
575 1.1.1.19 mrg
576 1.1.1.19 mrg * GCC 9.2.0 released.
577 1.1.1.19 mrg
578 1.1.1.19 mrg 2019-07-31 Jonathan Wakely <jwakely (a] redhat.com>
579 1.1.1.19 mrg
580 1.1.1.19 mrg * testsuite/26_numerics/midpoint/floating.cc: Use standard macros
581 1.1.1.19 mrg instead of GCC-specific ones.
582 1.1.1.18 mrg
583 1.1.1.18 mrg Backport from mainline
584 1.1.1.19 mrg 2019-06-24 Jonathan Wakely <jwakely (a] redhat.com>
585 1.1.1.18 mrg
586 1.1.1.19 mrg * testsuite/18_support/headers/cfloat/values_c++17.cc: New test.
587 1.1.1.18 mrg
588 1.1.1.19 mrg 2019-07-31 Jonathan Wakely <jwakely (a] redhat.com>
589 1.1.1.18 mrg
590 1.1.1.18 mrg Backport from mainline
591 1.1.1.19 mrg 2019-07-31 Jonathan Wakely <jwakely (a] redhat.com>
592 1.1.1.18 mrg
593 1.1.1.19 mrg * include/std/memory (make_obj_using_allocator): Qualify call to
594 1.1.1.19 mrg uses_allocator_construction_args.
595 1.1.1.18 mrg
596 1.1.1.19 mrg 2019-07-31 Jonathan Wakely <jwakely (a] redhat.com>
597 1.1.1.18 mrg
598 1.1.1.16 mrg Backport from mainline
599 1.1.1.16 mrg 2019-07-31 Jonathan Wakely <jwakely (a] redhat.com>
600 1.1.1.16 mrg
601 1.1.1.16 mrg PR libstdc++/91308
602 1.1.1.16 mrg * include/bits/unique_ptr.h (unique_ptr::__safe_conversion_up): Remove
603 1.1.1.16 mrg constraints on deleter that should only apply to the constructor.
604 1.1.1.16 mrg (unique_ptr<T[], D>::__safe_conversion_up): Likewise.
605 1.1.1.16 mrg (unique_ptr<T[], D>::unique_ptr(unique_ptr<U, D>&&)): Restore
606 1.1.1.16 mrg constraints on deleter here.
607 1.1.1.16 mrg * testsuite/20_util/unique_ptr/assign/91308.cc: New test.
608 1.1.1.16 mrg
609 1.1.1.19 mrg 2019-07-31 Jonathan Wakely <jwakely (a] redhat.com>
610 1.1.1.16 mrg
611 1.1.1.16 mrg Backport from mainline
612 1.1.1.16 mrg 2019-07-29 Jonathan Wakely <jwakely (a] redhat.com>
613 1.1.1.16 mrg
614 1.1.1.16 mrg PR libstdc++/51333
615 1.1.1.16 mrg * libsupc++/cxxabi.h (__gnu_cxx::recursive_init_error): Do not define
616 1.1.1.16 mrg constructor inline.
617 1.1.1.16 mrg * libsupc++/guard_error.cc (__gnu_cxx::recursive_init_error): Define
618 1.1.1.16 mrg constructor.
619 1.1.1.16 mrg * testsuite/18_support/51333.cc: New test.
620 1.1.1.16 mrg
621 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
622 1.1.1.19 mrg
623 1.1.1.19 mrg Backport from mainline
624 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
625 1.1.1.19 mrg
626 1.1.1.19 mrg * include/std/bit (__cpp_lib_endian): Define.
627 1.1.1.19 mrg * include/std/version (__cpp_lib_endian): Define.
628 1.1.1.19 mrg * testsuite/26_numerics/endian/2.cc: New.
629 1.1.1.19 mrg * testsuite/26_numerics/endian/3.cc: New.
630 1.1.1.19 mrg * testsuite/26_numerics/endian/4.cc: New.
631 1.1.1.19 mrg
632 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
633 1.1.1.19 mrg
634 1.1.1.19 mrg Backport from mainline
635 1.1.1.19 mrg 2019-07-25 Jonathan Wakely <jwakely (a] redhat.com>
636 1.1.1.19 mrg
637 1.1.1.19 mrg * include/std/bit (endian): Move definition here as per P1612R1.
638 1.1.1.19 mrg * include/std/type_traits (endian): Remove definition from here.
639 1.1.1.19 mrg * testsuite/20_util/endian/1.cc: Rename to ...
640 1.1.1.19 mrg * testsuite/26_numerics/endian/1.cc: ... here. Adjust header.
641 1.1.1.19 mrg
642 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
643 1.1.1.19 mrg
644 1.1.1.19 mrg Backport from mainline
645 1.1.1.19 mrg 2019-07-22 Jonathan Wakely <jwakely (a] redhat.com>
646 1.1.1.19 mrg
647 1.1.1.19 mrg * include/std/bit (__rotl, __rotr): Change second parameter from
648 1.1.1.19 mrg unsigned int to int and handle negative values.
649 1.1.1.19 mrg (rotl, rotr): Remove check for __STRICT_ANSI__. Change second
650 1.1.1.19 mrg parameter from unsigned int to int. Add nodiscard attribute.
651 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.rot/rotl.cc: Rename to ...
652 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.rotate/rotl.cc: Here. Test negative
653 1.1.1.19 mrg shifts.
654 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.rot/rotr.cc: Rename to ...
655 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.rotate/rotr.cc: Here. Test negative
656 1.1.1.19 mrg shifts.
657 1.1.1.19 mrg
658 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
659 1.1.1.19 mrg
660 1.1.1.19 mrg Backport from mainline
661 1.1.1.19 mrg 2019-07-22 Jonathan Wakely <jwakely (a] redhat.com>
662 1.1.1.19 mrg
663 1.1.1.19 mrg * include/std/bit (__ceil2): Make unrepresentable results undefined,
664 1.1.1.19 mrg as per P1355R2. Add debug assertion. Perform one left shift, not two,
665 1.1.1.19 mrg so that out of range values cause undefined behaviour. Ensure that
666 1.1.1.19 mrg shift will still be undefined if left operand is promoted.
667 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Replace checks for
668 1.1.1.19 mrg unrepresentable values with checks that they are not core constant
669 1.1.1.19 mrg expressions.
670 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2_neg.cc: New test.
671 1.1.1.19 mrg
672 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
673 1.1.1.19 mrg
674 1.1.1.19 mrg Backport from mainline (partial)
675 1.1.1.19 mrg 2019-06-26 Jonathan Wakely <jwakely (a] redhat.com>
676 1.1.1.19 mrg
677 1.1.1.19 mrg * include/std/bit (rotl(byte, unsigned), rotr(byte, unsigned))
678 1.1.1.19 mrg (countl_zero(byte), countl_one(byte), countr_zero(byte))
679 1.1.1.19 mrg (countr_one(byte), popcount(byte), ispow2(byte), ceil2(byte))
680 1.1.1.19 mrg (floor2(byte), log2p1(byte)): Remove.
681 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.pow.two/ceil2.cc: Remove test for
682 1.1.1.19 mrg std::byte overload.
683 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.pow.two/floor2.cc: Likewise.
684 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.pow.two/ispow2.cc: Likewise.
685 1.1.1.19 mrg * testsuite/26_numerics/bit/bit.pow.two/log2p1.cc: Likewise.
686 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.count/countl_one.cc: Likewise.
687 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.count/countl_zero.cc: Likewise.
688 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.count/countr_one.cc: Likewise.
689 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.count/countr_zero.cc: Likewise.
690 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.count/popcount.cc: Likewise.
691 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.rot/rotl.cc: Likewise.
692 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.rot/rotr.cc: Likewise.
693 1.1.1.19 mrg
694 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
695 1.1.1.19 mrg
696 1.1.1.19 mrg Backport from mainline
697 1.1.1.19 mrg 2019-07-16 Jason Merrill <jason (a] redhat.com>
698 1.1.1.19 mrg
699 1.1.1.19 mrg * include/std/memory (uses_allocator_construction_args): Add parens
700 1.1.1.19 mrg around constraint.
701 1.1.1.19 mrg
702 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
703 1.1.1.19 mrg
704 1.1.1.19 mrg Backport from mainline
705 1.1.1.19 mrg 2019-07-02 Jonathan Wakely <jwakely (a] redhat.com>
706 1.1.1.19 mrg
707 1.1.1.19 mrg * include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_LAUNDER)
708 1.1.1.19 mrg (_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED): Use __has_builtin
709 1.1.1.19 mrg instead of __is_identifier to detect Clang support.
710 1.1.1.19 mrg
711 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
712 1.1.1.16 mrg
713 1.1.1.16 mrg Backport from mainline
714 1.1.1.16 mrg 2019-05-23 Jonathan Wakely <jwakely (a] redhat.com>
715 1.1.1.16 mrg
716 1.1.1.16 mrg * doc/xml/manual/status_cxx2017.xml: Add feature test macro for
717 1.1.1.16 mrg P0040R3.
718 1.1.1.16 mrg * doc/html/*: Regenerate.
719 1.1.1.16 mrg
720 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
721 1.1.1.19 mrg
722 1.1.1.16 mrg Backport from mainline
723 1.1.1.16 mrg 2019-06-20 Jonathan Wakely <jwakely (a] redhat.com>
724 1.1.1.16 mrg
725 1.1.1.16 mrg * doc/xml/manual/status_cxx2017.xml: Fix outdated reference to
726 1.1.1.16 mrg C++17 working draft.
727 1.1.1.16 mrg
728 1.1.1.19 mrg 2019-07-26 Jonathan Wakely <jwakely (a] redhat.com>
729 1.1.1.16 mrg
730 1.1.1.19 mrg Backport from mainline
731 1.1.1.19 mrg 2019-06-25 Jonathan Wakely <jwakely (a] redhat.com>
732 1.1.1.16 mrg
733 1.1.1.19 mrg * include/std/numeric (midpoint(T, T)): Avoid std::abs in constexpr
734 1.1.1.19 mrg function.
735 1.1.1.18 mrg
736 1.1.1.18 mrg Backport from mainline
737 1.1.1.19 mrg 2019-06-24 Jonathan Wakely <jwakely (a] redhat.com>
738 1.1.1.18 mrg
739 1.1.1.19 mrg * include/std/numeric (midpoint(T, T)): Change implementation for
740 1.1.1.19 mrg floating-point types to avoid incorrect rounding of denormals.
741 1.1.1.19 mrg * testsuite/26_numerics/midpoint/floating.cc: Add check for correct
742 1.1.1.19 mrg rounding with denormals.
743 1.1.1.19 mrg * testsuite/26_numerics/gcd/gcd_neg.cc: Adjust dg-error line numbers.
744 1.1.1.19 mrg * testsuite/26_numerics/lcm/lcm_neg.cc: Likewise.
745 1.1.1.18 mrg
746 1.1.1.19 mrg 2019-07-03 Jonathan Wakely <jwakely (a] redhat.com>
747 1.1.1.18 mrg
748 1.1.1.19 mrg PR libstdc++/91067
749 1.1.1.19 mrg * acinclude.m4 (libtool_VERSION): Bump to 6:27:0.
750 1.1.1.19 mrg * configure: Regenerate.
751 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.27): Add new version. Export
752 1.1.1.19 mrg missing symbols.
753 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/91067.cc: New test.
754 1.1.1.19 mrg * testsuite/util/testsuite_abi.cc: Add new symbol version.
755 1.1.1.19 mrg
756 1.1.1.19 mrg Backport from mainline
757 1.1.1.19 mrg 2019-07-02 Jonathan Wakely <jwakely (a] redhat.com>
758 1.1.1.19 mrg
759 1.1.1.19 mrg * include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_LAUNDER)
760 1.1.1.19 mrg (_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED): Use __has_builtin
761 1.1.1.19 mrg instead of __is_identifier to detect Clang support.
762 1.1.1.19 mrg
763 1.1.1.19 mrg 2019-06-27 Jonathan Wakely <jwakely (a] redhat.com>
764 1.1.1.19 mrg
765 1.1.1.19 mrg PR libstdc++/85494 use rand_s in std::random_device
766 1.1.1.19 mrg * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_CRT_RAND_S): Define.
767 1.1.1.19 mrg * src/c++11/cow-string-inst.cc (random_device::_M_init_pretr1)
768 1.1.1.19 mrg [_GLIBCXX_USE_CRT_RAND_S]: Do nothing if rand_s will be used.
769 1.1.1.19 mrg * src/c++11/random.cc [_GLIBCXX_USE_CRT_RAND_S] (__winxp_rand_s):
770 1.1.1.19 mrg Define new function.
771 1.1.1.19 mrg (random_device::_M_init_pretr1) [_GLIBCXX_USE_CRT_RAND_S]: Do nothing
772 1.1.1.19 mrg if rand_s will be used.
773 1.1.1.19 mrg (random_device::_M_getval_pretr1) [_GLIBCXX_USE_CRT_RAND_S]: Use
774 1.1.1.19 mrg __winxp_rand_s().
775 1.1.1.19 mrg * testsuite/26_numerics/random/random_device/85494.cc: New test.
776 1.1.1.19 mrg
777 1.1.1.19 mrg PR libstdc++/91012
778 1.1.1.19 mrg * src/c++17/fs_path.cc (filesystem_error::_Impl): Use a string_view
779 1.1.1.19 mrg for the what_arg parameters.
780 1.1.1.19 mrg (filesystem_error::filesystem_error): Pass system_error::what() to
781 1.1.1.19 mrg the _Impl constructor.
782 1.1.1.19 mrg * testsuite/27_io/filesystem/filesystem_error/cons.cc: Ensure that
783 1.1.1.19 mrg filesystem_error::what() contains system_error::what().
784 1.1.1.19 mrg
785 1.1.1.19 mrg 2019-06-21 Jonathan Wakely <jwakely (a] redhat.com>
786 1.1.1.19 mrg
787 1.1.1.19 mrg Backport from mainline
788 1.1.1.19 mrg 2019-06-19 Jonathan Wakely <jwakely (a] redhat.com>
789 1.1.1.19 mrg
790 1.1.1.19 mrg PR libstdc++/90920 partially revert r263433
791 1.1.1.19 mrg * include/bits/stl_algo.h (__rotate): Restore checks for empty ranges.
792 1.1.1.19 mrg (rotate): Remove checks.
793 1.1.1.19 mrg * testsuite/25_algorithms/rotate/90920.cc: New test.
794 1.1.1.19 mrg
795 1.1.1.19 mrg 2019-06-17 Jonathan Wakely <jwakely (a] redhat.com>
796 1.1.1.19 mrg
797 1.1.1.19 mrg PR libstdc++/90281 Fix string conversions for filesystem::path
798 1.1.1.19 mrg * include/bits/fs_path.h (u8path) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]:
799 1.1.1.19 mrg Use codecvt_utf8_utf16 instead of codecvt_utf8. Use
800 1.1.1.19 mrg __str_codecvt_in_all to fail for partial conversions and throw on
801 1.1.1.19 mrg error.
802 1.1.1.19 mrg [!_GLIBCXX_FILESYSTEM_IS_WINDOWS && _GLIBCXX_USE_CHAR8_T]
803 1.1.1.19 mrg (path::_Cvt<char8_t>): Add explicit specialization.
804 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS] (path::_Cvt::_S_wconvert): Remove
805 1.1.1.19 mrg overloads.
806 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS] (path::_Cvt::_S_convert): Use
807 1.1.1.19 mrg if-constexpr instead of dispatching to _S_wconvert. Use codecvt
808 1.1.1.19 mrg instead of codecvt_utf8. Use __str_codecvt_in_all and
809 1.1.1.19 mrg __str_codecvt_out_all.
810 1.1.1.19 mrg [!_GLIBCXX_FILESYSTEM_IS_WINDOWS] (path::_Cvt::_S_convert): Use
811 1.1.1.19 mrg codecvt instead of codecvt_utf8. Use __str_codecvt_out_all.
812 1.1.1.19 mrg (path::_S_str_convert) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use
813 1.1.1.19 mrg codecvt_utf8_utf16 instead of codecvt_utf8. Construct return values
814 1.1.1.19 mrg with allocator. Use __str_codecvt_out_all. Fallthrough to POSIX code
815 1.1.1.19 mrg after converting to UTF-8.
816 1.1.1.19 mrg (path::_S_str_convert): Use codecvt instead of codecvt_utf8. Use
817 1.1.1.19 mrg __str_codecvt_in_all.
818 1.1.1.19 mrg (path::string): Fix initialization of string types with different
819 1.1.1.19 mrg allocators.
820 1.1.1.19 mrg (path::u8string) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use
821 1.1.1.19 mrg codecvt_utf8_utf16 instead of codecvt_utf8. Use __str_codecvt_out_all.
822 1.1.1.19 mrg * include/bits/locale_conv.h (__do_str_codecvt): Reorder static and
823 1.1.1.19 mrg runtime conditions.
824 1.1.1.19 mrg (__str_codecvt_out_all, __str_codecvt_in_all): New functions that
825 1.1.1.19 mrg return false for partial conversions.
826 1.1.1.19 mrg * include/experimental/bits/fs_path.h (u8path):
827 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Implement correctly for mingw.
828 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS] (path::_Cvt::_S_wconvert): Add
829 1.1.1.19 mrg missing handling for char8_t. Use codecvt and codecvt_utf8_utf16
830 1.1.1.19 mrg instead of codecvt_utf8. Use __str_codecvt_in_all and
831 1.1.1.19 mrg __str_codecvt_out_all.
832 1.1.1.19 mrg [!_GLIBCXX_FILESYSTEM_IS_WINDOWS] (path::_Cvt::_S_convert): Use
833 1.1.1.19 mrg codecvt instead of codecvt_utf8. Use __str_codecvt_out_all.
834 1.1.1.19 mrg (path::string) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use
835 1.1.1.19 mrg codecvt_utf8_utf16 instead of codecvt_utf8. Construct return values
836 1.1.1.19 mrg with allocator. Use __str_codecvt_out_all and __str_codecvt_in_all.
837 1.1.1.19 mrg (path::string) [!_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use
838 1.1.1.19 mrg __str_codecvt_in_all.
839 1.1.1.19 mrg (path::u8string) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use
840 1.1.1.19 mrg codecvt_utf8_utf16 instead of codecvt_utf8. Use __str_codecvt_out_all.
841 1.1.1.19 mrg * src/c++17/fs_path.cc (path::_S_convert_loc): Use
842 1.1.1.19 mrg __str_codecvt_in_all.
843 1.1.1.19 mrg * src/filesystem/path.cc (path::_S_convert_loc): Likewise.
844 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/90281.cc: New test.
845 1.1.1.19 mrg * testsuite/27_io/filesystem/path/factory/u8path.cc: New test.
846 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/string.cc: Test with empty
847 1.1.1.19 mrg strings and with Unicode characters outside the basic multilingual
848 1.1.1.19 mrg plane.
849 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/alloc.cc: New test.
850 1.1.1.19 mrg * testsuite/experimental/filesystem/path/construct/90281.cc: New test.
851 1.1.1.19 mrg * testsuite/experimental/filesystem/path/factory/u8path.cc: New test.
852 1.1.1.19 mrg * testsuite/experimental/filesystem/path/native/alloc.cc: New test.
853 1.1.1.19 mrg * testsuite/experimental/filesystem/path/native/string.cc: Test with
854 1.1.1.19 mrg empty strings and with Unicode characters outside the basic
855 1.1.1.19 mrg multilingual plane.
856 1.1.1.19 mrg
857 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
858 1.1.1.19 mrg
859 1.1.1.19 mrg Backport from mainline
860 1.1.1.19 mrg 2019-04-26 Jonathan Wakely <jwakely (a] redhat.com>
861 1.1.1.19 mrg
862 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace wildcard that matches
863 1.1.1.19 mrg wstring::_M_replace_dispatch with more specific patterns.
864 1.1.1.19 mrg * include/bits/fs_path.h (path::_S_convert_loc<_InputIterator>):
865 1.1.1.19 mrg Create const std::string to avoid redundant call to _S_convert_loc
866 1.1.1.19 mrg with non-const pointers.
867 1.1.1.19 mrg * include/bits/locale_conv.h (__do_str_codecvt): Use if-constexpr to
868 1.1.1.19 mrg avoid unnecessary basic_string::assign instantiations.
869 1.1.1.19 mrg
870 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
871 1.1.1.19 mrg
872 1.1.1.19 mrg Backport from mainline
873 1.1.1.19 mrg 2019-04-26 Jonathan Wakely <jwakely (a] redhat.com>
874 1.1.1.19 mrg
875 1.1.1.19 mrg * include/experimental/bits/fs_path.h
876 1.1.1.19 mrg (path::_S_convert_loc<_InputIterator>): Create const std::string to
877 1.1.1.19 mrg avoid redundant call to _S_convert_loc with non-const pointers.
878 1.1.1.19 mrg
879 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
880 1.1.1.19 mrg
881 1.1.1.19 mrg Backport from mainline
882 1.1.1.19 mrg 2019-05-29 Jonathan Wakely <jwakely (a] redhat.com>
883 1.1.1.19 mrg
884 1.1.1.19 mrg PR libstdc++/88881
885 1.1.1.19 mrg * src/c++17/fs_ops.cc [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
886 1.1.1.19 mrg (status(const path&, error_code&)): Use parent_path() to remove
887 1.1.1.19 mrg trailing slash.
888 1.1.1.19 mrg (symlink_status(const path&, error_code&)): Duplicate workaround for
889 1.1.1.19 mrg bug in _wstat for paths with trailing slash.
890 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Check path
891 1.1.1.19 mrg with trailing slash.
892 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/status.cc: Likewise.
893 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/symlink_status.cc: Likewise.
894 1.1.1.19 mrg
895 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
896 1.1.1.19 mrg
897 1.1.1.19 mrg Backport from mainline
898 1.1.1.19 mrg 2019-05-29 Jonathan Wakely <jwakely (a] redhat.com>
899 1.1.1.19 mrg
900 1.1.1.19 mrg * src/c++17/fs_path.cc (path::parent_path()): Create whole path at
901 1.1.1.19 mrg once instead of building it iteratively.
902 1.1.1.19 mrg
903 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
904 1.1.1.19 mrg
905 1.1.1.19 mrg Backport from mainline
906 1.1.1.19 mrg 2019-05-07 Jonathan Wakely <jwakely (a] redhat.com>
907 1.1.1.19 mrg
908 1.1.1.19 mrg * doc/xml/manual/intro.xml: Fix DR 2537 and DR 2566 confusion.
909 1.1.1.19 mrg
910 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
911 1.1.1.19 mrg
912 1.1.1.19 mrg Backport from mainline
913 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
914 1.1.1.19 mrg
915 1.1.1.19 mrg * include/std/version (__cpp_lib_bind_front): Add missing macro.
916 1.1.1.19 mrg
917 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
918 1.1.1.19 mrg
919 1.1.1.19 mrg Backport from mainline
920 1.1.1.19 mrg 2019-06-12 Jonathan Wakely <jwakely (a] redhat.com>
921 1.1.1.19 mrg
922 1.1.1.19 mrg * include/std/algorithm (__cpp_lib_parallel_algorithm): Fix value.
923 1.1.1.19 mrg * include/std/memory (__cpp_lib_parallel_algorithm): Likewise.
924 1.1.1.19 mrg * include/std/numeric (__cpp_lib_parallel_algorithm): Likewise.
925 1.1.1.19 mrg * testsuite/25_algorithms/pstl/feature_test.cc: New test.
926 1.1.1.18 mrg
927 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
928 1.1.1.18 mrg
929 1.1.1.18 mrg Backport from mainline
930 1.1.1.18 mrg 2019-06-07 Jonathan Wakely <jwakely (a] redhat.com>
931 1.1.1.18 mrg
932 1.1.1.18 mrg PR libstdc++/90770
933 1.1.1.18 mrg * src/Makefile.am (stamp-debug): Also test for missing makefile.
934 1.1.1.18 mrg * src/Makefile.in: Regenerate.
935 1.1.1.18 mrg
936 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
937 1.1.1.16 mrg
938 1.1.1.16 mrg Backport from mainline
939 1.1.1.19 mrg 2019-05-21 Jonathan Wakely <jwakely (a] redhat.com>
940 1.1.1.16 mrg
941 1.1.1.19 mrg PR libstdc++/90252
942 1.1.1.19 mrg * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
943 1.1.1.19 mrg Use "additional_flags" to pass -ltbb to v3_target_compile command.
944 1.1.1.19 mrg Use check_v3_target_prop_cached to cache the result of the test.
945 1.1.1.18 mrg
946 1.1.1.18 mrg Backport from mainline
947 1.1.1.19 mrg 2019-05-20 Thomas Rodgers <trodgers (a] redhat.com>
948 1.1.1.18 mrg
949 1.1.1.19 mrg PR libstdc++/90252
950 1.1.1.19 mrg * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
951 1.1.1.19 mrg Changed v3_target_compile check from preprocess to executable.
952 1.1.1.19 mrg Added "-ltbb" to v3_target_compile flags.
953 1.1.1.18 mrg
954 1.1.1.18 mrg Backport from mainline
955 1.1.1.19 mrg 2019-05-20 Thomas Rodgers <trodgers (a] redhat.com>
956 1.1.1.18 mrg
957 1.1.1.19 mrg * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
958 1.1.1.19 mrg Add check for Thread Building Blocks 2018 or later.
959 1.1.1.18 mrg
960 1.1.1.19 mrg 2019-06-14 Jonathan Wakely <jwakely (a] redhat.com>
961 1.1.1.16 mrg
962 1.1.1.16 mrg Backport from mainline
963 1.1.1.19 mrg 2019-05-21 Jonathan Wakely <jwakely (a] redhat.com>
964 1.1.1.18 mrg
965 1.1.1.19 mrg * doc/xml/manual/shared_ptr.xml: Fix names of lock policy constants.
966 1.1.1.18 mrg
967 1.1.1.19 mrg 2019-06-11 Edward Smith-Rowland <3dw4rd (a] verizon.net>
968 1.1.1.18 mrg
969 1.1.1.19 mrg Fix ConstexprIterator requirements tests - No constexpr algorithms!
970 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/requirements/constexpr_iter.cc:
971 1.1.1.19 mrg Replace copy with hand-rolled loop.
972 1.1.1.19 mrg * testsuite/23_containers/array/requirements/constexpr_iter.cc:
973 1.1.1.19 mrg Ditto.
974 1.1.1.19 mrg
975 1.1.1.19 mrg 2019-06-09 Edward Smith-Rowland <3dw4rd (a] verizon.net>
976 1.1.1.19 mrg
977 1.1.1.19 mrg Test for C++20 p0858 - ConstexprIterator requirements.
978 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/requirements/constexpr_iter.cc:
979 1.1.1.19 mrg New test.
980 1.1.1.19 mrg * testsuite/23_containers/array/requirements/constexpr_iter.cc:
981 1.1.1.19 mrg New test.
982 1.1.1.19 mrg
983 1.1.1.19 mrg 2019-06-05 Jakub Jelinek <jakub (a] redhat.com>
984 1.1.1.19 mrg
985 1.1.1.19 mrg Backported from mainline
986 1.1.1.19 mrg 2019-05-29 Jakub Jelinek <jakub (a] redhat.com>
987 1.1.1.19 mrg
988 1.1.1.19 mrg PR c++/90598
989 1.1.1.19 mrg 2019-05-02 Jonathan Wakely <jwakely (a] redhat.com>
990 1.1.1.19 mrg
991 1.1.1.19 mrg * testsuite/experimental/propagate_const/requirements2.cc: Adjust
992 1.1.1.19 mrg dg-error.
993 1.1.1.19 mrg
994 1.1.1.19 mrg 2019-06-03 Jonathan Wakely <jwakely (a] redhat.com>
995 1.1.1.19 mrg
996 1.1.1.19 mrg PR libstdc++/90700
997 1.1.1.19 mrg * include/std/tuple
998 1.1.1.19 mrg (tuple(allocator_arg_t, const A&, const tuple<UTypes...>&)): Fix
999 1.1.1.19 mrg value category of template argument to _TC::_NonNestedTuple.
1000 1.1.1.19 mrg * testsuite/20_util/tuple/cons/90700.cc: New test.
1001 1.1.1.19 mrg
1002 1.1.1.19 mrg PR libstdc++/90686
1003 1.1.1.19 mrg * doc/xml/manual/status_cxx2014.xml: Document what's missing from
1004 1.1.1.19 mrg <experimental/memory_resource>.
1005 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Document status of P0777R1,
1006 1.1.1.19 mrg P0339R6, P0340R3, P1164R1 and P1357R1.
1007 1.1.1.19 mrg * doc/html/*: Regenerate.
1008 1.1.1.19 mrg
1009 1.1.1.19 mrg * include/std/tuple (make_from_tuple): Use remove_reference_t instead
1010 1.1.1.19 mrg of decay_t (P0777R1).
1011 1.1.1.19 mrg
1012 1.1.1.19 mrg 2019-05-30 Jonathan Wakely <jwakely (a] redhat.com>
1013 1.1.1.19 mrg
1014 1.1.1.19 mrg * doc/xml/manual/status_cxx2017.xml: Fix typo in documentation of
1015 1.1.1.19 mrg implementation-defined support for [fs.conform.9945].
1016 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Add feature-test macro for
1017 1.1.1.19 mrg P0811R3. Change status of P1353R0.
1018 1.1.1.18 mrg * doc/html/*: Regenerate.
1019 1.1.1.18 mrg
1020 1.1.1.18 mrg 2019-05-28 Jonathan Wakely <jwakely (a] redhat.com>
1021 1.1.1.18 mrg
1022 1.1.1.19 mrg Backport from mainline
1023 1.1.1.19 mrg 2019-05-28 Jonathan Wakely <jwakely (a] redhat.com>
1024 1.1.1.16 mrg
1025 1.1.1.16 mrg PR libstdc++/90634
1026 1.1.1.19 mrg * include/experimental/bits/fs_path.h (path::path(path&&)): Only call
1027 1.1.1.16 mrg _M_split_cmpts() for a path with multiple components.
1028 1.1.1.16 mrg (path::_S_is_dir_sep()): Add missing 'static' keyword to function.
1029 1.1.1.16 mrg * src/filesystem/path.cc (path::_M_split_cmpts()): Count number of
1030 1.1.1.16 mrg components and reserve space in vector. Return early when there is
1031 1.1.1.16 mrg only one component.
1032 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/90634.cc: New test.
1033 1.1.1.19 mrg * testsuite/experimental/filesystem/path/construct/90634.cc: New test.
1034 1.1.1.16 mrg
1035 1.1.1.19 mrg Backport from mainline
1036 1.1.1.19 mrg 2019-05-28 Jonathan Wakely <jwakely (a] redhat.com>
1037 1.1.1.19 mrg
1038 1.1.1.19 mrg * testsuite/util/testsuite_fs.h (compare_paths): Use three-argument
1039 1.1.1.19 mrg form of std::equals for C++11 compatibility.
1040 1.1.1.19 mrg
1041 1.1.1.19 mrg 2019-05-24 Jonathan Wakely <jwakely (a] redhat.com>
1042 1.1.1.16 mrg
1043 1.1.1.16 mrg Backport from mainline
1044 1.1.1.19 mrg 2019-05-24 Jonathan Wakely <jwakely (a] redhat.com>
1045 1.1.1.16 mrg
1046 1.1.1.19 mrg * include/std/numeric (midpoint(T*, T*)): Fix incorrect result.
1047 1.1.1.19 mrg * testsuite/26_numerics/midpoint/pointer.cc: Change "compile" test
1048 1.1.1.19 mrg to "run".
1049 1.1.1.16 mrg
1050 1.1.1.19 mrg Backport from mainline
1051 1.1.1.19 mrg 2019-05-17 Jonathan Wakely <jwakely (a] redhat.com>
1052 1.1.1.16 mrg
1053 1.1.1.19 mrg * include/bits/random.h (seed_seq::param): Fix non-reserved name.
1054 1.1.1.19 mrg * include/experimental/type_traits (is_detected_exact)
1055 1.1.1.19 mrg (is_detected_exact_v): Likewise.
1056 1.1.1.19 mrg * include/pstl/execution_defs.h (is_execution_policy)
1057 1.1.1.19 mrg (is_execution_policy_v, __enable_if_execution_policy): Likewise.
1058 1.1.1.19 mrg * include/pstl/execution_impl.h (__policy_traits): Likewise.
1059 1.1.1.19 mrg * testsuite/17_intro/names.cc: Check for more non-reserved names.
1060 1.1.1.19 mrg * testsuite/experimental/names.cc: New test.
1061 1.1.1.19 mrg
1062 1.1.1.19 mrg Backport from mainline
1063 1.1.1.19 mrg 2019-05-17 Jonathan Wakely <jwakely (a] redhat.com>
1064 1.1.1.19 mrg
1065 1.1.1.19 mrg PR libstdc++/85965
1066 1.1.1.19 mrg * include/bits/hashtable.h (_Hashtable::~_Hashtable()): Remove static
1067 1.1.1.19 mrg assertions from the destructor.
1068 1.1.1.19 mrg * include/bits/hashtable_policy.h (_Hash_code_base::_M_hash_code):
1069 1.1.1.19 mrg Move static_assert for hash function to here.
1070 1.1.1.19 mrg (_Hash_table_base::_M_equals): Move static_assert for equality
1071 1.1.1.19 mrg predicate to here.
1072 1.1.1.19 mrg * include/bits/stl_tree.h (_Rb_tree::_S_key(_Const_Link_type)): Move
1073 1.1.1.19 mrg assertions here. Access the value directly instead of calling _S_value.
1074 1.1.1.19 mrg (_Rb_tree::_S_key(_Const_Base_ptr)): Do downcast and forward to
1075 1.1.1.19 mrg _S_key(_Const_Link_type).
1076 1.1.1.19 mrg * testsuite/23_containers/set/85965.cc: Check construction,
1077 1.1.1.19 mrg destruction, assignment and size() do not trigger the assertions.
1078 1.1.1.19 mrg * testsuite/23_containers/unordered_set/85965.cc: Likewise.
1079 1.1.1.19 mrg * testsuite/23_containers/map/48101_neg.cc: Call find and adjust
1080 1.1.1.19 mrg expected errors.
1081 1.1.1.19 mrg * testsuite/23_containers/multimap/48101_neg.cc: Likewise.
1082 1.1.1.19 mrg * testsuite/23_containers/multiset/48101_neg.cc: Likewise.
1083 1.1.1.19 mrg * testsuite/23_containers/set/48101_neg.cc: Likewise.
1084 1.1.1.19 mrg * testsuite/23_containers/unordered_map/48101_neg.cc: Likewise.
1085 1.1.1.19 mrg * testsuite/23_containers/unordered_multimap/48101_neg.cc: Likewise.
1086 1.1.1.19 mrg * testsuite/23_containers/unordered_multiset/48101_neg.cc: Likewise.
1087 1.1.1.19 mrg * testsuite/23_containers/unordered_set/48101_neg.cc: Likewise.
1088 1.1.1.16 mrg
1089 1.1.1.16 mrg 2019-05-23 Jonathan Wakely <jwakely (a] redhat.com>
1090 1.1.1.16 mrg
1091 1.1.1.16 mrg Backport from mainline
1092 1.1.1.16 mrg 2019-05-23 Jonathan Wakely <jwakely (a] redhat.com>
1093 1.1.1.16 mrg
1094 1.1.1.16 mrg * include/experimental/any (__any_caster): Use RTTI if comparing
1095 1.1.1.16 mrg addresses fails, to support non-unique addresses in shared libraries.
1096 1.1.1.16 mrg * include/std/any (__any_caster): Likewise.
1097 1.1.1.16 mrg * testsuite/experimental/any/misc/any_cast_neg.cc: Use 0 for dg-error
1098 1.1.1.16 mrg line number.
1099 1.1.1.16 mrg
1100 1.1.1.16 mrg Backport from mainline
1101 1.1.1.16 mrg 2019-05-23 Jonathan Wakely <jwakely (a] redhat.com>
1102 1.1.1.16 mrg
1103 1.1.1.16 mrg PR libstdc++/90220
1104 1.1.1.16 mrg * include/experimental/any (__any_caster): Constrain to only be
1105 1.1.1.16 mrg callable for object types. Use remove_cv_t instead of decay_t.
1106 1.1.1.16 mrg If the type decays or isn't copy constructible, compare the manager
1107 1.1.1.16 mrg function to a dummy specialization.
1108 1.1.1.16 mrg (__any_caster): Add overload constrained for non-object types.
1109 1.1.1.16 mrg (any::_Manager_internal<_Op>): Add dummy specialization.
1110 1.1.1.16 mrg * testsuite/experimental/any/misc/any_cast.cc: Test function types
1111 1.1.1.16 mrg and array types.
1112 1.1.1.16 mrg
1113 1.1.1.19 mrg 2019-05-22 Jonathan Wakely <jwakely (a] redhat.com>
1114 1.1.1.16 mrg
1115 1.1.1.16 mrg Backport from mainline
1116 1.1.1.19 mrg 2019-05-22 Jonathan Wakely <jwakely (a] redhat.com>
1117 1.1.1.16 mrg
1118 1.1.1.19 mrg PR libstdc++/90557
1119 1.1.1.19 mrg * src/c++17/fs_path.cc (path::_List::operator=(const _List&)): Fix
1120 1.1.1.19 mrg reversed arguments to uninitialized_copy_n.
1121 1.1.1.19 mrg * testsuite/27_io/filesystem/path/assign/copy.cc: Check that source
1122 1.1.1.19 mrg is unchanged by copy assignment.
1123 1.1.1.19 mrg * testsuite/util/testsuite_fs.h (compare_paths): Use std::equal to
1124 1.1.1.19 mrg compare path components.
1125 1.1.1.18 mrg
1126 1.1.1.18 mrg 2019-05-20 Jonathan Wakely <jwakely (a] redhat.com>
1127 1.1.1.18 mrg
1128 1.1.1.18 mrg Backported from mainline
1129 1.1.1.18 mrg 2019-05-20 Jonathan Wakely <jwakely (a] redhat.com>
1130 1.1.1.18 mrg
1131 1.1.1.18 mrg PR c++/90532 Ensure __is_constructible(T[]) is false
1132 1.1.1.18 mrg * include/std/type_traits (__do_is_default_constructible_impl)
1133 1.1.1.18 mrg (__is_default_constructible_atom, __is_default_constructible_safe):
1134 1.1.1.18 mrg Remove.
1135 1.1.1.18 mrg (is_default_constructible): Use is_constructible.
1136 1.1.1.18 mrg * testsuite/20_util/is_constructible/value.cc: Check int[] case.
1137 1.1.1.18 mrg * testsuite/20_util/is_default_constructible/value.cc: Likewise.
1138 1.1.1.18 mrg * testsuite/20_util/is_trivially_constructible/value.cc: Likewise.
1139 1.1.1.18 mrg * testsuite/20_util/is_trivially_default_constructible/value.cc:
1140 1.1.1.18 mrg Likewise.
1141 1.1.1.18 mrg
1142 1.1.1.19 mrg 2019-05-16 Jonathan Wakely <jwakely (a] redhat.com>
1143 1.1.1.19 mrg
1144 1.1.1.19 mrg Backport from mainline
1145 1.1.1.19 mrg 2019-05-16 Jonathan Wakely <jwakely (a] redhat.com>
1146 1.1.1.19 mrg
1147 1.1.1.19 mrg * src/c++17/fs_ops.cc (absolute(const path&, error_code&))
1148 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Remove bogus assertion.
1149 1.1.1.18 mrg
1150 1.1.1.18 mrg Backport from mainline
1151 1.1.1.18 mrg 2019-05-04 Jonathan Wakely <jwakely (a] redhat.com>
1152 1.1.1.18 mrg
1153 1.1.1.18 mrg PR libstdc++/90299
1154 1.1.1.19 mrg * src/c++17/fs_ops.cc (absolute(const path&)): Report an error if the
1155 1.1.1.19 mrg argument is an empty path.
1156 1.1.1.18 mrg (absolute(const path&, error_code&)): Use invalid_argument as error
1157 1.1.1.18 mrg code instead of no_such_file_or_directory.
1158 1.1.1.18 mrg * testsuite/27_io/filesystem/operations/absolute.cc: Check handling
1159 1.1.1.18 mrg of non-existent paths and empty paths with both overloads of absolute.
1160 1.1.1.18 mrg
1161 1.1.1.18 mrg 2019-05-15 Jonathan Wakely <jwakely (a] redhat.com>
1162 1.1.1.18 mrg
1163 1.1.1.18 mrg Backport from mainline
1164 1.1.1.18 mrg 2019-04-30 Jonathan Wakely <jwakely (a] redhat.com>
1165 1.1.1.18 mrg
1166 1.1.1.18 mrg * testsuite/27_io/filesystem/path/decompose/root_path.cc: Remove
1167 1.1.1.18 mrg macros accidentally left in.
1168 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/string-char8_t.cc: Remove
1169 1.1.1.19 mrg unnecessary -lstdc++fs option. Fix test for mingw.
1170 1.1.1.19 mrg * testsuite/experimental/filesystem/path/native/string-char8_t.cc:
1171 1.1.1.19 mrg Fix test for mingw.
1172 1.1.1.18 mrg
1173 1.1.1.18 mrg Backport from mainline
1174 1.1.1.18 mrg 2019-05-13 Jonathan Wakely <jwakely (a] redhat.com>
1175 1.1.1.18 mrg
1176 1.1.1.18 mrg PR libstdc++/90454.cc path construction from void*
1177 1.1.1.18 mrg * include/bits/fs_path.h (path::_Path): Use remove_pointer so that
1178 1.1.1.18 mrg pointers to void are rejected as well as void.
1179 1.1.1.18 mrg * include/experimental/bits/fs_path.h (path::_Path): Likewise.
1180 1.1.1.18 mrg * testsuite/27_io/filesystem/path/construct/80762.cc: Also check
1181 1.1.1.18 mrg pointers to void.
1182 1.1.1.18 mrg * testsuite/experimental/filesystem/path/construct/80762.cc: Likewise.
1183 1.1.1.18 mrg
1184 1.1.1.19 mrg 2019-05-13 Edward Smith-Rowland <3dw4rd (a] verizon.net>
1185 1.1.1.19 mrg
1186 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Document P0811R3 status.
1187 1.1.1.19 mrg
1188 1.1.1.18 mrg 2019-05-11 Jonathan Wakely <jwakely (a] redhat.com>
1189 1.1.1.18 mrg
1190 1.1.1.18 mrg Backport from mainline
1191 1.1.1.18 mrg 2019-05-10 Jonathan Wakely <jwakely (a] redhat.com>
1192 1.1.1.18 mrg
1193 1.1.1.18 mrg PR libstdc++/81266
1194 1.1.1.18 mrg * testsuite/util/thread/all.h: Do not use remove_pointer for
1195 1.1.1.18 mrg std::thread::native_handle_type.
1196 1.1.1.18 mrg
1197 1.1.1.19 mrg 2019-05-10 Jonathan Wakely <jwakely (a] redhat.com>
1198 1.1.1.19 mrg
1199 1.1.1.19 mrg PR libstdc++/90397
1200 1.1.1.19 mrg * include/std/variant (variant): Add noexcept to friend declaration.
1201 1.1.1.18 mrg
1202 1.1.1.18 mrg Backport from mainline
1203 1.1.1.19 mrg 2019-04-26 Jonathan Wakely <jwakely (a] redhat.com>
1204 1.1.1.18 mrg
1205 1.1.1.19 mrg * include/std/memory (__uses_alloc_args): Add string-literal to
1206 1.1.1.19 mrg static_assert, to match the one in __uses_alloc.
1207 1.1.1.19 mrg [__cpp_concepts] (_Std_pair): Use C++2a syntax for concept.
1208 1.1.1.19 mrg * testsuite/20_util/polymorphic_allocator/construct_c++2a.cc: Check
1209 1.1.1.19 mrg for recursive uses-allocator construction of nested pairs.
1210 1.1.1.19 mrg * testsuite/20_util/scoped_allocator/construct_pair_c++2a.cc:: Add
1211 1.1.1.19 mrg comment.
1212 1.1.1.18 mrg
1213 1.1.1.18 mrg Backport from mainline
1214 1.1.1.19 mrg 2019-04-25 Jonathan Wakely <jwakely (a] redhat.com>
1215 1.1.1.18 mrg
1216 1.1.1.19 mrg PR libstdc++/90239
1217 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Amend P0591R4 status.
1218 1.1.1.19 mrg * include/std/scoped_allocator [__cplusplus > 201703L]
1219 1.1.1.19 mrg (scoped_allocator_adaptor::construct): Define in terms of
1220 1.1.1.19 mrg uses_allocator_construction_args, as per P0591R4.
1221 1.1.1.19 mrg * testsuite/20_util/scoped_allocator/construct_pair_c++2a.cc: New test.
1222 1.1.1.19 mrg * testsuite/util/testsuite_allocator.h: Remove name of unused
1223 1.1.1.19 mrg parameter.
1224 1.1.1.19 mrg * doc/html/*: Regenerate.
1225 1.1.1.19 mrg
1226 1.1.1.19 mrg 2019-05-03 Release Manager
1227 1.1.1.19 mrg
1228 1.1.1.19 mrg * GCC 9.1.0 released.
1229 1.1.1.19 mrg
1230 1.1.1.19 mrg 2019-05-01 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1231 1.1.1.19 mrg
1232 1.1.1.19 mrg * config/abi/post/i386-solaris2.10/baseline_symbols.txt: Regenerate.
1233 1.1.1.19 mrg * config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: Likewise.
1234 1.1.1.19 mrg * config/abi/post/i386-solaris2.11/baseline_symbols.txt: Likewise.
1235 1.1.1.19 mrg * config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: Likewise.
1236 1.1.1.19 mrg * config/abi/post/sparc-solaris2.10/baseline_symbols.txt: Likewise.
1237 1.1.1.19 mrg * config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
1238 1.1.1.19 mrg Likewise.
1239 1.1.1.19 mrg * config/abi/post/sparc-solaris2.11/baseline_symbols.txt: Likewise.
1240 1.1.1.19 mrg * config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
1241 1.1.1.19 mrg Likewise.
1242 1.1.1.19 mrg
1243 1.1.1.19 mrg 2019-04-30 Jakub Jelinek <jakub (a] redhat.com>
1244 1.1.1.19 mrg
1245 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Change _Lock_policyE2 exports
1246 1.1.1.19 mrg to _Lock_policyE[012].
1247 1.1.1.19 mrg * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
1248 1.1.1.19 mrg
1249 1.1.1.19 mrg * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: Update.
1250 1.1.1.19 mrg
1251 1.1.1.19 mrg 2019-04-26 H.J. Lu <hongjiu.lu (a] intel.com>
1252 1.1.1.18 mrg
1253 1.1.1.18 mrg Backport from mainline
1254 1.1.1.19 mrg 2019-04-26 H.J. Lu <hongjiu.lu (a] intel.com>
1255 1.1.1.19 mrg
1256 1.1.1.19 mrg * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
1257 1.1.1.19 mrg
1258 1.1.1.19 mrg 2019-04-26 Jonathan Wakely <jwakely (a] redhat.com>
1259 1.1.1.19 mrg
1260 1.1.1.19 mrg Backport from mainline
1261 1.1.1.19 mrg 2019-04-26 Jonathan Wakely <jwakely (a] redhat.com>
1262 1.1.1.19 mrg
1263 1.1.1.19 mrg * testsuite/20_util/variant/run.cc: Use a new Hashable type to test
1264 1.1.1.19 mrg hashing, because pmr::string depends on _GLIBCXX_USE_CXX11_ABI==1.
1265 1.1.1.19 mrg * testsuite/21_strings/basic_string/hash/hash.cc
1266 1.1.1.19 mrg [!_GLIBCXX_USE_CXX11_ABI]: Don't test pmr strings.
1267 1.1.1.19 mrg * testsuite/21_strings/basic_string/hash/hash_char8_t.cc
1268 1.1.1.19 mrg [!_GLIBCXX_USE_CXX11_ABI]: Likewise.
1269 1.1.1.19 mrg
1270 1.1.1.19 mrg 2019-04-26 Jonathan Wakely <jwakely (a] redhat.com>
1271 1.1.1.19 mrg
1272 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace wildcard that matches
1273 1.1.1.19 mrg wstring::_M_replace_dispatch with more specific patterns.
1274 1.1.1.19 mrg
1275 1.1.1.19 mrg 2019-04-26 Jakub Jelinek <jakub (a] redhat.com>
1276 1.1.1.19 mrg
1277 1.1.1.19 mrg * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt: Update.
1278 1.1.1.19 mrg * config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
1279 1.1.1.19 mrg * config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update.
1280 1.1.1.19 mrg * config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
1281 1.1.1.19 mrg
1282 1.1.1.19 mrg * config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
1283 1.1.1.19 mrg * config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
1284 1.1.1.19 mrg * config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
1285 1.1.1.19 mrg * config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
1286 1.1.1.19 mrg * config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
1287 1.1.1.19 mrg * config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
1288 1.1.1.19 mrg * config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
1289 1.1.1.19 mrg
1290 1.1.1.19 mrg 2019-04-25 Jonathan Wakely <jwakely (a] redhat.com>
1291 1.1.1.19 mrg
1292 1.1.1.19 mrg PR libstdc++/90239
1293 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Correct status of P0591R4.
1294 1.1.1.19 mrg * doc/html/*: Regenerate.
1295 1.1.1.19 mrg
1296 1.1.1.19 mrg 2019-04-24 Jonathan Wakely <jwakely (a] redhat.com>
1297 1.1.1.19 mrg
1298 1.1.1.19 mrg * doc/xml/manual/status_cxx2017.xml: Document P0024R2 status.
1299 1.1.1.19 mrg * doc/html/*: Regenerate.
1300 1.1.1.19 mrg
1301 1.1.1.19 mrg * include/bits/fs_path.h (operator<, operator<=, operator>)
1302 1.1.1.19 mrg (operator>=, operator==, operator!=): Make hidden friends, as per
1303 1.1.1.19 mrg LWG 3065.
1304 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/string-char8_t.cc: Fix
1305 1.1.1.19 mrg string type in test.
1306 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/string.cc: Likewise.
1307 1.1.1.19 mrg
1308 1.1.1.19 mrg * include/std/any (any::any(ValueType&&)): Use __and_v.
1309 1.1.1.19 mrg * include/std/numeric (midpoint(T, T, T), midpoint(T*, T*, T*)):
1310 1.1.1.19 mrg Likewise.
1311 1.1.1.19 mrg
1312 1.1.1.19 mrg * include/std/tuple (apply): Use remove_reference_t instead of decay_t
1313 1.1.1.19 mrg as per P0777R1.
1314 1.1.1.19 mrg * include/std/type_traits (__result_of_memfun): Use remove_reference
1315 1.1.1.19 mrg instead of __remove_cvref_t and remove redundant is_same check.
1316 1.1.1.19 mrg (__inv_unwrap): Use __remove_cvref_t instead of decay_t.
1317 1.1.1.19 mrg
1318 1.1.1.19 mrg * include/experimental/string_view (basic_string_view::pointer)
1319 1.1.1.19 mrg (basic_string_view::reference): Fix to refer to non-const value_type.
1320 1.1.1.19 mrg * include/bits/basic_string.h (basic_string): Use __sv_check and
1321 1.1.1.19 mrg __sv_limit instead of basic_string_view::_M_check and
1322 1.1.1.19 mrg basic_string_view::_M_limit.
1323 1.1.1.19 mrg * include/std/string_view (__sv_check, __sv_limit): New
1324 1.1.1.19 mrg helper functions to replace basic_string_view::_M_check and
1325 1.1.1.19 mrg basic_string_view::_M_limit.
1326 1.1.1.19 mrg (basic_string_view): Add static assertions to enforce ill-formed
1327 1.1.1.19 mrg requirement for traits_type::char_type from P1148R0, and to enforce
1328 1.1.1.19 mrg required properties of char-like types.
1329 1.1.1.19 mrg (basic_string_view::pointer, basic_string_view::reference): Fix to
1330 1.1.1.19 mrg refer to non-const value_type.
1331 1.1.1.19 mrg (basic_string_view::operator[], basic_string_view::at)
1332 1.1.1.19 mrg (basic_string_view::front, basic_string_view::back)
1333 1.1.1.19 mrg (basic_string_view::data): Use const_reference and const_pointer
1334 1.1.1.19 mrg typedefs for return types.
1335 1.1.1.19 mrg (basic_string_view::_M_check, basic_string_view::_M_limit): Remove.
1336 1.1.1.19 mrg (hash<wstring_view>): Fix argument_type typedef.
1337 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
1338 1.1.1.19 mrg char/1.cc: Fix expected return type of basic_string_view::data().
1339 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_prefix/
1340 1.1.1.19 mrg wchar_t/1.cc: Likewise.
1341 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
1342 1.1.1.19 mrg char/1.cc: Likewise.
1343 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/modifiers/remove_suffix/
1344 1.1.1.19 mrg wchar_t/1.cc: Likewise.
1345 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/requirements/traits_neg.cc:
1346 1.1.1.19 mrg New test.
1347 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
1348 1.1.1.19 mrg Check reference and pointer typedefs.
1349 1.1.1.19 mrg * testsuite/experimental/string_view/requirements/typedefs.cc:
1350 1.1.1.19 mrg Likewise.
1351 1.1.1.19 mrg * testsuite/experimental/string_view/modifiers/remove_prefix/char/1.cc:
1352 1.1.1.19 mrg Fix expected return type of basic_string_view::data().
1353 1.1.1.19 mrg * testsuite/experimental/string_view/modifiers/remove_prefix/wchar_t/
1354 1.1.1.19 mrg 1.cc: Likewise.
1355 1.1.1.19 mrg * testsuite/experimental/string_view/modifiers/remove_suffix/char/1.cc:
1356 1.1.1.19 mrg Likewise.
1357 1.1.1.19 mrg * testsuite/experimental/string_view/modifiers/remove_suffix/wchar_t/
1358 1.1.1.19 mrg 1.cc: Likewise.
1359 1.1.1.19 mrg
1360 1.1.1.19 mrg PR libstdc++/90220
1361 1.1.1.19 mrg * include/std/any (__any_caster): Use remove_cv_t instead of decay_t.
1362 1.1.1.19 mrg Avoid a runtime check for types that can never be stored in std::any.
1363 1.1.1.19 mrg * testsuite/20_util/any/misc/any_cast.cc: Test std::any_cast with
1364 1.1.1.19 mrg array types.
1365 1.1.1.19 mrg
1366 1.1.1.19 mrg PR libstdc++/90220 (partial)
1367 1.1.1.19 mrg * include/std/any (any_cast<T>(any*), any_cast<T>(const any*)): Do
1368 1.1.1.19 mrg not attempt ill-formed static_cast to pointers to non-object types.
1369 1.1.1.19 mrg * testsuite/20_util/any/misc/any_cast.cc: Test std::any_cast with
1370 1.1.1.19 mrg function types.
1371 1.1.1.19 mrg
1372 1.1.1.19 mrg * testsuite/20_util/variant/run.cc: Catch exception by reference to
1373 1.1.1.19 mrg prevent -Wcatch-value warning.
1374 1.1.1.19 mrg
1375 1.1.1.19 mrg * include/std/variant (__variant_construct): Use template parameter
1376 1.1.1.19 mrg type instead of equivalent decltype-specifier.
1377 1.1.1.19 mrg (_Move_ctor_base<false, Types...>::_Move_ctor_base(_Move_ctor_base&&)):
1378 1.1.1.19 mrg Replace forward with move.
1379 1.1.1.19 mrg (_Move_ctor_base<false, Types...>::_M_destructive_move)
1380 1.1.1.19 mrg (_Move_ctor_base<false, Types...>::_M_destructive_copy)
1381 1.1.1.19 mrg (_Move_ctor_base<true, Types...>::_M_destructive_move)
1382 1.1.1.19 mrg (_Move_ctor_base<true, Types...>::_M_destructive_copy): Only set the
1383 1.1.1.19 mrg index after construction succeeds.
1384 1.1.1.19 mrg (_Copy_assign_base<false, Types...>::operator=): Remove redundant
1385 1.1.1.19 mrg if-constexpr checks that are always true. Use __remove_cvref_t instead
1386 1.1.1.19 mrg of remove_reference so that is_nothrow_move_constructible check
1387 1.1.1.19 mrg doesn't use a const rvalue parameter. In the potentially-throwing case
1388 1.1.1.19 mrg construct a temporary and move assign it, as per LWG 2904.
1389 1.1.1.19 mrg (_Move_assign_base<false, Types...>::operator=): Remove redundant
1390 1.1.1.19 mrg if-constexpr checks that are always true. Use emplace as per LWG 2904.
1391 1.1.1.19 mrg (variant::operator=(T&&)): Only use emplace conditionally, otherwise
1392 1.1.1.19 mrg construct a temporary and move assign from it, as per LWG 2904.
1393 1.1.1.19 mrg * testsuite/20_util/variant/exception_safety.cc: Check that
1394 1.1.1.19 mrg assignment operators have strong exception safety guarantee.
1395 1.1.1.19 mrg
1396 1.1.1.19 mrg 2019-04-23 Thomas Rodgers <trodgers (a] redhat.com>
1397 1.1.1.19 mrg
1398 1.1.1.19 mrg Document PSTL linker flags
1399 1.1.1.19 mrg
1400 1.1.1.19 mrg * doc/xml/manual/using.xml: Add PSTL linker flags to table 3.1.
1401 1.1.1.19 mrg
1402 1.1.1.19 mrg 2019-04-23 Jonathan Wakely <jwakely (a] redhat.com>
1403 1.1.1.19 mrg
1404 1.1.1.19 mrg * include/std/variant (__detail::__variant::_Traits): Make
1405 1.1.1.19 mrg _S_trivial_copy_assign depend on _S_trivial_copy_ctor and make
1406 1.1.1.19 mrg _S_trivial_move_assign depend on _S_trivial_move_ctor, as per
1407 1.1.1.19 mrg P0602R4.
1408 1.1.1.19 mrg (__detail::__variant::_Copy_assign_alias): Only depend on
1409 1.1.1.19 mrg _S_trivial_copy_assign, which subsumes _S_trivial_copy_ctor now.
1410 1.1.1.19 mrg * testsuite/20_util/variant/compile.cc: Correct checks for trivial
1411 1.1.1.19 mrg move assignment operators.
1412 1.1.1.16 mrg
1413 1.1.1.18 mrg PR libstdc++/90165
1414 1.1.1.19 mrg * include/std/variant (variant::__not_self): New helper for the
1415 1.1.1.19 mrg is_same_v<remove_cvref_t<T>, variant>==false constraints.
1416 1.1.1.19 mrg (variant::__to_type_impl): Remove.
1417 1.1.1.19 mrg (variant::__to_type): Add default argument to check pack size, instead
1418 1.1.1.19 mrg of using __to_type_impl.
1419 1.1.1.19 mrg (variant::__accepted_type): Add default argument using __not_self.
1420 1.1.1.19 mrg (variant::__is_in_place_tag, variant::__not_in_place_tag): New helpers
1421 1.1.1.19 mrg for variant(T&&) constructor constraint.
1422 1.1.1.18 mrg (variant::variant(T&&)): Use __not_in_place_tag in constraints.
1423 1.1.1.19 mrg Extract __accepted_type into a named template parameter for reuse in
1424 1.1.1.19 mrg other constraints and in the exception specification.
1425 1.1.1.19 mrg (variant::variant(in_place_type_t<T>, Args&&...))
1426 1.1.1.19 mrg (variant::variant(in_place_type_t<T>, initializer_list<U>, Args&&...))
1427 1.1.1.19 mrg (variant::variant(in_place_index_t<T>, Args&&...))
1428 1.1.1.19 mrg (variant::variant(in_place_index_t<T>, initializer_list<U>, Args&&...))
1429 1.1.1.19 mrg (variant::operator=T&&)): Remove redundant && from trait arguments.
1430 1.1.1.18 mrg * testsuite/20_util/variant/compile.cc: Check variant(T&&) constructor
1431 1.1.1.18 mrg isn't used for in_place_type or in_place_index arguments.
1432 1.1.1.16 mrg
1433 1.1.1.19 mrg * include/std/type_traits (unwrap_reference_t): Define for C++2a.
1434 1.1.1.19 mrg (unwrap_ref_decay): Remove inheritance from unwrap_reference.
1435 1.1.1.19 mrg * testsuite/20_util/unwrap_reference/1.cc: Adjust test to use alias.
1436 1.1.1.19 mrg
1437 1.1.1.19 mrg 2019-04-23 Ramana Radhakrishnan <ramana.radhakrishnan (a] arm.com>
1438 1.1.1.19 mrg Bernd Edlinger <bernd.edlinger (a] hotmail.de>
1439 1.1.1.19 mrg Jakub Jelinek <jakub (a] redhat.com>
1440 1.1.1.19 mrg
1441 1.1.1.19 mrg PR target/89093
1442 1.1.1.19 mrg * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Add
1443 1.1.1.19 mrg general-regs-only target attribute for ARM.
1444 1.1.1.19 mrg
1445 1.1.1.19 mrg 2019-04-23 Jonathan Wakely <jwakely (a] redhat.com>
1446 1.1.1.19 mrg
1447 1.1.1.19 mrg PR libstdc++/87431
1448 1.1.1.19 mrg * include/bits/basic_string.h (_Never_valueless_alt): Make partial
1449 1.1.1.19 mrg specialization also depend on is_nothrow_move_constructible.
1450 1.1.1.19 mrg * include/std/variant (__detail::__variant::__never_valueless()):
1451 1.1.1.19 mrg Only true if the variant would have a move assignment operator.
1452 1.1.1.19 mrg (__detail::__variant::_Variant_storage<false, T...>::_M_valid()):
1453 1.1.1.19 mrg Check __never_valueless<T...>().
1454 1.1.1.19 mrg (variant::emplace): Only perform non-throwing move assignments
1455 1.1.1.19 mrg for never-valueless alternatives if the variant has a move assignment
1456 1.1.1.19 mrg operator.
1457 1.1.1.19 mrg * testsuite/20_util/variant/compile.cc: Check that never-valueless
1458 1.1.1.19 mrg types can be emplaced into non-assignable variants.
1459 1.1.1.19 mrg * testsuite/20_util/variant/run.cc: Check that never-valueless types
1460 1.1.1.19 mrg don't get copied when emplaced into non-assignable variants.
1461 1.1.1.19 mrg
1462 1.1.1.19 mrg * include/std/variant (__detail::__variant::__ref_cast): Remove
1463 1.1.1.19 mrg unused function.
1464 1.1.1.19 mrg (__detail::__variant::_Uninitialized::_M_get)
1465 1.1.1.19 mrg (__detail::__variant::__get)
1466 1.1.1.19 mrg (__gen_vtable_impl::__element_by_index_or_cookie): Add noexcept.
1467 1.1.1.19 mrg
1468 1.1.1.19 mrg 2019-04-21 Iain Sandoe <iain (a] sandoe.co.uk>
1469 1.1.1.19 mrg
1470 1.1.1.19 mrg * testsuite/17_intro/headers/c++1998/charset.cc: Skip for Darwin8
1471 1.1.1.19 mrg to Darwin10.
1472 1.1.1.19 mrg * testsuite/17_intro/headers/c++2011/charset.cc: Likewise.
1473 1.1.1.19 mrg * testsuite/17_intro/headers/c++2014/charset.cc: Likewise.
1474 1.1.1.19 mrg * testsuite/17_intro/headers/c++2017/charset.cc: Likewise.
1475 1.1.1.19 mrg * testsuite/17_intro/headers/c++2020/charset.cc: Likewise.
1476 1.1.1.19 mrg
1477 1.1.1.19 mrg 2019-04-20 Thomas Rodgers <trodgers (a] redhat.com>
1478 1.1.1.19 mrg
1479 1.1.1.19 mrg Delegate PSTL configuration to pstl/pstl_config.h
1480 1.1.1.19 mrg
1481 1.1.1.19 mrg * include/bits/c++config: Remove explicit PSTL configuration
1482 1.1.1.19 mrg macros and use definitions from <pstl/pstl_config.h>.
1483 1.1.1.19 mrg
1484 1.1.1.19 mrg 2019-04-20 Thomas Rodgers <trodgers (a] redhat.com>
1485 1.1.1.19 mrg
1486 1.1.1.19 mrg Cleanup algorithm implementations
1487 1.1.1.19 mrg * include/pstl/glue_algorithm_impl.h (stable_sort): Forward
1488 1.1.1.19 mrg execution policy.
1489 1.1.1.19 mrg (mismatch): Forward execution policy.
1490 1.1.1.19 mrg (equal): Qualify call to std::equal().
1491 1.1.1.19 mrg (partial_sort): Forward execution policy.
1492 1.1.1.19 mrg (inplace_merge): Forward execution policy.
1493 1.1.1.19 mrg
1494 1.1.1.19 mrg 2019-04-19 Thomas Rodgers <trodgers (a] redhat.com>
1495 1.1.1.19 mrg
1496 1.1.1.19 mrg Improve implementation of parallel equal()
1497 1.1.1.19 mrg * include/pstl/algorithm_impl.h
1498 1.1.1.19 mrg (__internal::__brick_equal): use "4 iterator" version of
1499 1.1.1.19 mrg std::equal().
1500 1.1.1.19 mrg (__internal::__brick_equal): use simd for random access
1501 1.1.1.19 mrg iterators on unsequenced execution policies.
1502 1.1.1.19 mrg (__internal::__pattern_equal): add "4 iterator" version
1503 1.1.1.19 mrg (__internal::__pattern_equal): dispatch to simd __brick_equal
1504 1.1.1.19 mrg for vector-only execution policies.
1505 1.1.1.19 mrg (__internal::__pattern_equal): dispatch to __parallel_or for
1506 1.1.1.19 mrg parallel execution policies.
1507 1.1.1.19 mrg * include/pstl/glue_algorithm_impl.h
1508 1.1.1.19 mrg (std::equal): dispatch to "4 iterator" version of
1509 1.1.1.19 mrg __internal::__pattern_equal().
1510 1.1.1.19 mrg
1511 1.1.1.19 mrg 2019-04-17 Jonathan Wakely <jwakely (a] redhat.com>
1512 1.1.1.16 mrg
1513 1.1.1.16 mrg PR libstdc++/90105
1514 1.1.1.19 mrg * include/bits/forward_list.h (operator==): Do not use operator!= to
1515 1.1.1.16 mrg compare elements.
1516 1.1.1.16 mrg (forward_list<T, A>::sort(Comp)): When elements are equal take the one
1517 1.1.1.16 mrg earlier in the list, so that sort is stable.
1518 1.1.1.16 mrg * testsuite/23_containers/forward_list/operations/90105.cc: New test.
1519 1.1.1.16 mrg * testsuite/23_containers/forward_list/comparable.cc: Test with
1520 1.1.1.16 mrg types that meet the minimum EqualityComparable and LessThanComparable
1521 1.1.1.16 mrg requirements. Remove irrelevant comment.
1522 1.1.1.16 mrg
1523 1.1.1.19 mrg * include/std/variant (__detail::__variant::_Traits::_S_copy_assign):
1524 1.1.1.19 mrg Do not depend on whether all alternative types are move constructible.
1525 1.1.1.19 mrg (__detail::__variant::_Copy_assign_base::operator=): Remove cv-quals
1526 1.1.1.19 mrg from the operand when deciding whether to perform the assignment.
1527 1.1.1.19 mrg * testsuite/20_util/variant/compile.cc (DeletedMoves): Define type
1528 1.1.1.19 mrg with deleted move constructor and deleted move assignment operator.
1529 1.1.1.19 mrg (default_ctor, copy_ctor, move_ctor, copy_assign, move_assign): Check
1530 1.1.1.19 mrg behaviour of variants with DeletedMoves as an alternative.
1531 1.1.1.19 mrg * testsuite/20_util/variant/run.cc (DeletedMoves): Define same type.
1532 1.1.1.19 mrg (move_ctor, move_assign): Check that moving a variant with a
1533 1.1.1.19 mrg DeletedMoves alternative falls back to copying instead of moving.
1534 1.1.1.19 mrg
1535 1.1.1.19 mrg * testsuite/20_util/variant/compile.cc: Remove empty string literals
1536 1.1.1.19 mrg from static_assert declarations.
1537 1.1.1.19 mrg
1538 1.1.1.19 mrg * testsuite/20_util/variant/compile.cc (MoveCtorOnly): Fix type to
1539 1.1.1.19 mrg actually match its name.
1540 1.1.1.19 mrg (MoveCtorAndSwapOnly): Define new type that adds swap to MoveCtorOnly.
1541 1.1.1.19 mrg (test_swap()): Fix result for MoveCtorOnly and check
1542 1.1.1.19 mrg MoveCtorAndSwapOnly.
1543 1.1.1.18 mrg
1544 1.1.1.18 mrg * include/std/optional (optional::value_or(U&&) &&): Add missing
1545 1.1.1.18 mrg constexpr specifier.
1546 1.1.1.18 mrg * testsuite/20_util/optional/constexpr/observers/4.cc: Check value_or
1547 1.1.1.18 mrg for disengaged optionals and rvalue optionals.
1548 1.1.1.18 mrg * testsuite/20_util/optional/observers/4.cc: Likewise.
1549 1.1.1.18 mrg
1550 1.1.1.19 mrg 2019-04-12 Thomas Rodgers <trodgers (a] redhat.com>
1551 1.1.1.19 mrg
1552 1.1.1.19 mrg * include/pstl/algorithm_impl.h: Uglify identfiers.
1553 1.1.1.19 mrg * include/pstl/numeric_impl.h: Uglify identfiers.
1554 1.1.1.19 mrg * include/pstl/parallel_backend_tbb.h: Uglify identfiers.
1555 1.1.1.19 mrg
1556 1.1.1.19 mrg 2019-04-11 Thomas Rodgers <trodgers (a] redhat.com>
1557 1.1.1.19 mrg
1558 1.1.1.19 mrg * include/bits/c++config:
1559 1.1.1.19 mrg Add definition for __PSTL_ASSERT.
1560 1.1.1.19 mrg Add definition for __PSTL_ASSERT_MSG.
1561 1.1.1.19 mrg * include/pstl/algorithm_impl.h: Replace use of assert().
1562 1.1.1.19 mrg * include/pstl/numeric_impl.h: Replace use of assert().
1563 1.1.1.19 mrg * include/pstl/parallel_backend_tbb.h:
1564 1.1.1.19 mrg Replace use of assert().
1565 1.1.1.19 mrg Replace use of __TBB_ASSERT().
1566 1.1.1.19 mrg * include/pstl/parallel_backend_utils.h: Replace use of assert().
1567 1.1.1.19 mrg
1568 1.1.1.19 mrg 2019-04-11 Jonathan Wakely <jwakely (a] redhat.com>
1569 1.1.1.19 mrg
1570 1.1.1.19 mrg PR libstdc++/90046
1571 1.1.1.19 mrg * src/c++17/memory_resource.cc
1572 1.1.1.19 mrg (monotonic_buffer_resource::_Chunk::allocate): Increase alignment if
1573 1.1.1.19 mrg needed to allow placing a _Chunk at the end of the buffer.
1574 1.1.1.19 mrg (monotonic_buffer_resource::_M_new_buffer): Remove static_assert.
1575 1.1.1.19 mrg
1576 1.1.1.19 mrg 2019-04-10 Jonathan Wakely <jwakely (a] redhat.com>
1577 1.1.1.18 mrg
1578 1.1.1.18 mrg * doc/xml/faq.xml: Add information about emergency EH pool.
1579 1.1.1.18 mrg * doc/xml/manual/debug.xml: Update list of memory debugging tools.
1580 1.1.1.18 mrg Move outdated information on mt_allocator to a separate section.
1581 1.1.1.18 mrg * doc/xml/manual/evolution.xml: Clarify that GLIBCXX_FORCE_NEW
1582 1.1.1.18 mrg doesn't affect the default allocator.
1583 1.1.1.18 mrg
1584 1.1.1.19 mrg * testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): Fix
1585 1.1.1.19 mrg typo.
1586 1.1.1.19 mrg
1587 1.1.1.19 mrg PR libstdc++/89851
1588 1.1.1.19 mrg * testsuite/20_util/variant/89851.cc: New test.
1589 1.1.1.19 mrg
1590 1.1.1.19 mrg 2019-04-09 Jonathan Wakely <jwakely (a] redhat.com>
1591 1.1.1.18 mrg
1592 1.1.1.19 mrg * include/std/variant: Adjust whitespace. Add comments.
1593 1.1.1.19 mrg (_Multi_array): Leave primary template undefined.
1594 1.1.1.19 mrg (_Multi_array<_Tp>): Define partial specialization for base case of
1595 1.1.1.19 mrg recursion.
1596 1.1.1.19 mrg (__gen_vtable_impl, __gen_vtable): Remove redundant && from type
1597 1.1.1.19 mrg which is always a reference.
1598 1.1.1.19 mrg (__gen_vtable::_S_apply()): Remove function, inline body into
1599 1.1.1.19 mrg default member initializer.
1600 1.1.1.19 mrg * testsuite/20_util/variant/visit.cc: Test with noncopyable types.
1601 1.1.1.19 mrg
1602 1.1.1.19 mrg * include/std/variant (__variant_idx_cookie): Add member type.
1603 1.1.1.19 mrg (__visitor_result_type): Remove.
1604 1.1.1.19 mrg (__do_visit): Use invoke_result instead of __visitor_result_type.
1605 1.1.1.19 mrg * testsuite/20_util/variant/visit.cc: New test.
1606 1.1.1.19 mrg
1607 1.1.1.19 mrg PR libstdc++/90008
1608 1.1.1.19 mrg * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Remove
1609 1.1.1.19 mrg unused capture.
1610 1.1.1.19 mrg * testsuite/20_util/variant/90008.cc: New test.
1611 1.1.1.19 mrg
1612 1.1.1.19 mrg 2019-04-09 Thomas Rodgers <trodgers (a] redhat.com>
1613 1.1.1.19 mrg
1614 1.1.1.19 mrg * include/pstl/algorithm_impl.h: Add namespace qualification.
1615 1.1.1.19 mrg * include/pstl/execution_defs.h: Add namespace qualification.
1616 1.1.1.19 mrg * include/pstl/execution_impl.h: Add namespace qualification.
1617 1.1.1.19 mrg * include/pstl/numeric_impl.h: Add namespace qualification.
1618 1.1.1.19 mrg * include/pstl/parallel_backend_tbb.h: Add namespace qualification.
1619 1.1.1.19 mrg * include/pstl/unseq_backend_simd.h: Add namespace qualification.
1620 1.1.1.19 mrg * include/pstl/parallel_backend_utils.h: Include <cassert>.
1621 1.1.1.19 mrg
1622 1.1.1.19 mrg 2019-04-08 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1623 1.1.1.19 mrg
1624 1.1.1.19 mrg Fix visit<R> for variant.
1625 1.1.1.19 mrg * include/std/variant (__do_visit): Add a template parameter
1626 1.1.1.19 mrg for enforcing same return types for visit.
1627 1.1.1.19 mrg (__gen_vtable_impl): Likewise.
1628 1.1.1.19 mrg (_S_apply_single_alt): Adjust.
1629 1.1.1.19 mrg (__visit_invoke_impl): New. Handle casting to void.
1630 1.1.1.19 mrg (__do_visit_invoke): New. Enforces same return types.
1631 1.1.1.19 mrg (__do_visit_invoke_r): New. Converts return types.
1632 1.1.1.19 mrg (__visit_invoke): Adjust.
1633 1.1.1.19 mrg (__gen_vtable): Add a template parameter for enforcing
1634 1.1.1.19 mrg same return types for visit.
1635 1.1.1.19 mrg * testsuite/20_util/variant/visit_r.cc: Add a test for a visitor with
1636 1.1.1.19 mrg different return types.
1637 1.1.1.19 mrg * testsuite/20_util/variant/visit_neg.cc: New. Ensures that
1638 1.1.1.19 mrg visitors with different return types don't accidentally
1639 1.1.1.19 mrg compile with regular visitation.
1640 1.1.1.19 mrg
1641 1.1.1.19 mrg 2019-04-08 Christophe Lyon <christophe.lyon (a] linaro.org>
1642 1.1.1.19 mrg
1643 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/caching.cc: Add
1644 1.1.1.19 mrg dg-require-filesystem-ts.
1645 1.1.1.19 mrg
1646 1.1.1.19 mrg 2019-04-05 Jonathan Wakely <jwakely (a] redhat.com>
1647 1.1.1.19 mrg
1648 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Update status.
1649 1.1.1.19 mrg * include/std/variant (visit<R>): Define for C++2a (P0655R1).
1650 1.1.1.19 mrg * testsuite/20_util/variant/visit_r.cc: New test.
1651 1.1.1.19 mrg
1652 1.1.1.19 mrg * include/bits/fs_dir.h (directory_iterator::operator*)
1653 1.1.1.19 mrg (directory_iterator::operator->): Add noexcept.
1654 1.1.1.19 mrg (operator==, operator!=): Replace namespace-scope equality operators
1655 1.1.1.19 mrg for directory iterators with hidden friends.
1656 1.1.1.19 mrg
1657 1.1.1.19 mrg PR libstdc++/89986
1658 1.1.1.19 mrg * config/abi/pre/gnu.ver: Add missing exports.
1659 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/directory_iterator.cc: Test
1660 1.1.1.19 mrg increment member.
1661 1.1.1.19 mrg
1662 1.1.1.19 mrg * config/abi/pre/gnu.ver: Export new symbols.
1663 1.1.1.19 mrg * include/bits/fs_dir.h (recursive_directory_iterator::options())
1664 1.1.1.19 mrg (recursive_directory_iterator::recursion_pending())
1665 1.1.1.19 mrg (recursive_directory_iterator::disable_recursion_pending()): Remove
1666 1.1.1.19 mrg inline definitions. Make noexcept.
1667 1.1.1.19 mrg (recursive_directory_iterator::depth())
1668 1.1.1.19 mrg (recursive_directory_iterator::operator*())
1669 1.1.1.19 mrg (recursive_directory_iterator::operator->()): Make noexcept.
1670 1.1.1.19 mrg (recursive_directory_iterator::_M_options)
1671 1.1.1.19 mrg (recursive_directory_iterator::_M_pending): Remove data members.
1672 1.1.1.19 mrg * src/c++17/fs_path.cc (_Dir_stack): Add constructor and data members.
1673 1.1.1.19 mrg (recursive_directory_iterator::recursive_directory_iterator): Remove
1674 1.1.1.19 mrg ctor-initializer. Use new constructor for _Dir_stack.
1675 1.1.1.19 mrg (recursive_directory_iterator::options())
1676 1.1.1.19 mrg (recursive_directory_iterator::recursion_pending())
1677 1.1.1.19 mrg (recursive_directory_iterator::disable_recursion_pending()): Add
1678 1.1.1.19 mrg non-inline definitions.
1679 1.1.1.19 mrg (recursive_directory_iterator::depth()): Make noexcept.
1680 1.1.1.19 mrg (recursive_directory_iterator::increment(error_code&))
1681 1.1.1.19 mrg (recursive_directory_iterator::pop(error_code&)): Adjust to new
1682 1.1.1.19 mrg location of options and recursion_pending members.
1683 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/recursion_pending.cc: New test.
1684 1.1.1.19 mrg * testsuite/util/testsuite_fs.h (__gnu_test::scoped_file): Add
1685 1.1.1.19 mrg user-declared move constructor and assignment operator, to make the
1686 1.1.1.19 mrg type move-only.
1687 1.1.1.19 mrg
1688 1.1.1.19 mrg * src/c++17/fs_dir.cc (_Dir::advance(bool, error_code&)): Handle
1689 1.1.1.18 mrg d_type == DT_UNKNOWN immediately.
1690 1.1.1.18 mrg (_Dir::should_recurse(bool, error_code&)): Remove file_type::unknown
1691 1.1.1.18 mrg handling here.
1692 1.1.1.18 mrg * testsuite/27_io/filesystem/iterators/caching.cc: New test.
1693 1.1.1.18 mrg
1694 1.1.1.18 mrg * include/bits/fs_path.h (path::operator=(path&&)): Check for self
1695 1.1.1.18 mrg assignment.
1696 1.1.1.19 mrg * src/c++17/fs_path.cc (path::operator=(const path&)): Likewise.
1697 1.1.1.18 mrg * testsuite/27_io/filesystem/path/assign/copy.cc: Test self
1698 1.1.1.18 mrg assignment.
1699 1.1.1.18 mrg
1700 1.1.1.19 mrg PR libstdc++/87431 (again)
1701 1.1.1.19 mrg * include/bits/basic_string.h (__variant::_Never_valueless_alt):
1702 1.1.1.19 mrg Define partial specialization for basic_string.
1703 1.1.1.19 mrg * include/bits/shared_ptr.h (_Never_valueless_alt): Likewise for
1704 1.1.1.19 mrg shared_ptr and weak_ptr.
1705 1.1.1.19 mrg * include/bits/std_function.h (_Never_valueless_alt): Likewise for
1706 1.1.1.19 mrg function.
1707 1.1.1.19 mrg * include/bits/stl_vector.h (_Never_valueless_alt): Likewise for
1708 1.1.1.19 mrg vector.
1709 1.1.1.19 mrg * include/bits/unique_ptr.h (_Never_valueless_alt): Likewise for
1710 1.1.1.19 mrg unique_ptr.
1711 1.1.1.19 mrg * include/debug/vector (_Never_valueless_alt): Likewise for debug
1712 1.1.1.19 mrg vector.
1713 1.1.1.19 mrg * include/std/any (_Never_valueless_alt): Define explicit
1714 1.1.1.19 mrg specialization for any.
1715 1.1.1.19 mrg * include/std/variant (_Never_valueless_alt): Define primary template.
1716 1.1.1.19 mrg (__never_valueless): Use _Never_valueless_alt instead of
1717 1.1.1.19 mrg is_trivially_copyable.
1718 1.1.1.19 mrg (variant::emplace<N>(Args&&...)): Add special case for non-throwing
1719 1.1.1.19 mrg initializations to avoid try-catch overhead. Add special case for
1720 1.1.1.19 mrg scalars produced by potentially-throwing conversions. Use
1721 1.1.1.19 mrg _Never_valueless_alt instead of is_trivially_copyable for the
1722 1.1.1.19 mrg remaining strong exception-safety cases.
1723 1.1.1.19 mrg (variant::emplace<N>(initializer_list<U>, Args&&...)): Likewise.
1724 1.1.1.19 mrg * testsuite/20_util/variant/87431.cc: Run both test functions.
1725 1.1.1.19 mrg * testsuite/20_util/variant/exception_safety.cc: New test.
1726 1.1.1.19 mrg * testsuite/20_util/variant/run.cc: Use pmr::string instead of string,
1727 1.1.1.19 mrg so the variant becomes valueless.
1728 1.1.1.19 mrg
1729 1.1.1.19 mrg 2019-04-03 Jonathan Wakely <jwakely (a] redhat.com>
1730 1.1.1.19 mrg
1731 1.1.1.19 mrg PR libstdc++/85184
1732 1.1.1.19 mrg * include/std/variant (_Copy_assign_base, _Move_assign_base, variant):
1733 1.1.1.19 mrg Remove assertions.
1734 1.1.1.19 mrg (variant::emplace<_Tp>): Return result of emplace<N> directly.
1735 1.1.1.19 mrg
1736 1.1.1.19 mrg * include/std/string (__hash_string_base): New class template defining
1737 1.1.1.19 mrg operator() for hashing strings.
1738 1.1.1.19 mrg (hash<pmr::string>, hash<pmr::u8string>, hash<pmr::u16string>)
1739 1.1.1.19 mrg (hash<pmr::u32string>, hash<pmr::wstring>): Define for C++17.
1740 1.1.1.19 mrg * testsuite/21_strings/basic_string/hash/hash.cc: New test.
1741 1.1.1.19 mrg * testsuite/21_strings/basic_string/hash/hash_char8_t.cc: New test.
1742 1.1.1.19 mrg
1743 1.1.1.19 mrg 2019-04-01 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1744 1.1.1.19 mrg
1745 1.1.1.19 mrg Use single-visitation in variant assignment and swap and relops.
1746 1.1.1.19 mrg Also use indices instead of types when checking whether
1747 1.1.1.19 mrg variants hold the same thing.
1748 1.1.1.19 mrg * include/std/variant (__do_visit): Add a template parameter
1749 1.1.1.19 mrg for index visitation, invoke with indices if index visitation
1750 1.1.1.19 mrg is used.
1751 1.1.1.19 mrg (__variant_idx_cookie): New.
1752 1.1.1.19 mrg (__visit_with_index): Likewise.
1753 1.1.1.19 mrg (_Copy_assign_base::operator=): Do single-visitation with
1754 1.1.1.19 mrg an index visitor.
1755 1.1.1.19 mrg (_Move_assign_base::operator=): Likewise.
1756 1.1.1.19 mrg (_Extra_visit_slot_needed): Adjust.
1757 1.1.1.19 mrg (__visit_invoke): Call with indices if it's an index visitor.
1758 1.1.1.19 mrg (relops): Do single-visitation with an index visitor.
1759 1.1.1.19 mrg (swap): Likewise.
1760 1.1.1.19 mrg (__visitor_result_type): New.
1761 1.1.1.19 mrg
1762 1.1.1.19 mrg 2019-03-30 Eric Botcazou <ebotcazou (a] adacore.com>
1763 1.1.1.19 mrg
1764 1.1.1.19 mrg * src/c++17/fs_ops.cc (fs::permissions): Use std::errc::not_supported.
1765 1.1.1.19 mrg
1766 1.1.1.19 mrg 2019-03-28 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1767 1.1.1.19 mrg
1768 1.1.1.19 mrg Don't revisit a variant we are already visiting.
1769 1.1.1.19 mrg * include/std/variant (__variant_construct_single): New.
1770 1.1.1.19 mrg (__variant_construct): Use it.
1771 1.1.1.19 mrg (_M_destructive_move): Likewise.
1772 1.1.1.19 mrg (_M_destructive_copy): Likewise.
1773 1.1.1.19 mrg (_Copy_assign_base::operator=): Adjust.
1774 1.1.1.19 mrg (_Move_assign_base::operator=): Likewise.
1775 1.1.1.19 mrg (swap): Likewise.
1776 1.1.1.19 mrg
1777 1.1.1.19 mrg 2019-03-26 Jonathan Wakely <jwakely (a] redhat.com>
1778 1.1.1.18 mrg
1779 1.1.1.18 mrg PR libstdc++/85965
1780 1.1.1.18 mrg * include/bits/hashtable.h (_Hashtable): Move static assertions to
1781 1.1.1.18 mrg destructor so they are not evaluated until the _Key type is complete.
1782 1.1.1.18 mrg * include/bits/stl_tree.h (_Rb_tree): Likewise.
1783 1.1.1.18 mrg * testsuite/23_containers/set/85965.cc: New test.
1784 1.1.1.18 mrg * testsuite/23_containers/unordered_set/85965.cc: New test.
1785 1.1.1.18 mrg * testsuite/23_containers/map/48101_neg.cc: Replace "here" errors
1786 1.1.1.18 mrg with regexp matching the corresponding _Rb_tree specialization.
1787 1.1.1.18 mrg * testsuite/23_containers/multimap/48101_neg.cc: Likewise.
1788 1.1.1.18 mrg * testsuite/23_containers/multiset/48101_neg.cc: Remove "here" error.
1789 1.1.1.18 mrg * testsuite/23_containers/set/48101_neg.cc: Likewise.
1790 1.1.1.18 mrg * testsuite/23_containers/unordered_map/48101_neg.cc: Likewise.
1791 1.1.1.18 mrg * testsuite/23_containers/unordered_multimap/48101_neg.cc: Likewise.
1792 1.1.1.18 mrg * testsuite/23_containers/unordered_multiset/48101_neg.cc: Likewise.
1793 1.1.1.18 mrg * testsuite/23_containers/unordered_set/48101_neg.cc: Likewise.
1794 1.1.1.18 mrg
1795 1.1.1.19 mrg 2019-03-26 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1796 1.1.1.19 mrg
1797 1.1.1.19 mrg PR libstdc++/89825
1798 1.1.1.19 mrg Fix based on a suggestion by Antony Polukhin.
1799 1.1.1.19 mrg * include/std/variant (__never_valueless): New.
1800 1.1.1.19 mrg (_M_valid): Use it.
1801 1.1.1.19 mrg (_Extra_visit_slot_needed): New.
1802 1.1.1.19 mrg (_Multi_array): Use it.
1803 1.1.1.19 mrg (_S_apply_all_alts): Likewise.
1804 1.1.1.19 mrg
1805 1.1.1.19 mrg 2019-03-26 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1806 1.1.1.19 mrg
1807 1.1.1.19 mrg PR libstdc++/89824
1808 1.1.1.19 mrg Fix based on a suggestion by Antony Polukhin.
1809 1.1.1.19 mrg * include/std/variant (__gen_vtable): Don't reserve an
1810 1.1.1.19 mrg additional table slot, _Multi_array already does that.
1811 1.1.1.19 mrg
1812 1.1.1.19 mrg 2019-03-26 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1813 1.1.1.19 mrg
1814 1.1.1.19 mrg PR libstdc++/89816
1815 1.1.1.19 mrg Fix based on a suggestion by Antony Polukhin.
1816 1.1.1.19 mrg * include/std/variant (__variant_construct): Capture a pointer
1817 1.1.1.19 mrg to the storage and visit just one variant.
1818 1.1.1.19 mrg
1819 1.1.1.19 mrg 2019-03-22 Jonathan Wakely <jwakely (a] redhat.com>
1820 1.1.1.19 mrg
1821 1.1.1.19 mrg * doc/xml/manual/backwards_compatibility.xml: Remove link to
1822 1.1.1.19 mrg Doxygen-generated pages with unstable URL.
1823 1.1.1.19 mrg * doc/xml/manual/concurrency_extensions.xml: Likewise.
1824 1.1.1.19 mrg * doc/xml/manual/extensions.xml: Likewise.
1825 1.1.1.19 mrg * doc/xml/manual/parallel_mode.xml: Likewise.
1826 1.1.1.19 mrg * doc/xml/manual/support.xml: Likewise.
1827 1.1.1.19 mrg
1828 1.1.1.19 mrg * include/bits/stl_algobase.h (__lg): Do arithmetic on type int to
1829 1.1.1.19 mrg avoid -Wconversion warnings.
1830 1.1.1.19 mrg
1831 1.1.1.19 mrg 2019-03-21 Thomas Rodgers <trodgers (a] redhat.com>
1832 1.1.1.19 mrg
1833 1.1.1.19 mrg * include/Makefile.am (std_header): Add ${std_srcdir}/execution.
1834 1.1.1.19 mrg (pstl_srcdir, pstl_builddir, pstl_headers): New variables.
1835 1.1.1.19 mrg (allstamped): Add stamp-pstl.
1836 1.1.1.19 mrg (install-headers): Add ptsl_builddir.
1837 1.1.1.19 mrg * include/Makefile.in: Regenerate.
1838 1.1.1.19 mrg * include/bits/c++config: Add pstl configuration.
1839 1.1.1.19 mrg * include/pstl/LICENSE.txt: New file.
1840 1.1.1.19 mrg * include/pstl/algorithm_fwd.h: New file.
1841 1.1.1.19 mrg * include/pstl/algorithm_impl.h: New file.
1842 1.1.1.19 mrg * include/pstl/execution_defs.h: New file.
1843 1.1.1.19 mrg * include/pstl/execution_impl.h: New file.
1844 1.1.1.19 mrg * include/pstl/glue_algorithm_defs.h: New file.
1845 1.1.1.19 mrg * include/pstl/glue_algorithm_impl.h: New file.
1846 1.1.1.19 mrg * include/pstl/glue_execution_defs.h: New file.
1847 1.1.1.19 mrg * include/pstl/glue_memory_defs.h: New file.
1848 1.1.1.19 mrg * include/pstl/glue_memory_impl.h: New file.
1849 1.1.1.19 mrg * include/pstl/glue_numeric_defs.h: New file.
1850 1.1.1.19 mrg * include/pstl/glue_numeric_impl.h: New file.
1851 1.1.1.19 mrg * include/pstl/memory_impl.h: New file.
1852 1.1.1.19 mrg * include/pstl/numeric_fwd.h: New file.
1853 1.1.1.19 mrg * include/pstl/numeric_impl.h: New file.
1854 1.1.1.19 mrg * include/pstl/parallel_backend.h: New file.
1855 1.1.1.19 mrg * include/pstl/parallel_backend_tbb.h: New file.
1856 1.1.1.19 mrg * include/pstl/parallel_backend_utils.h: New file.
1857 1.1.1.19 mrg * include/pstl/parallel_impl.h: New file.
1858 1.1.1.19 mrg * include/pstl/pstl_config.h: New file.
1859 1.1.1.19 mrg * include/pstl/unseq_backend_simd.h: New file.
1860 1.1.1.19 mrg * include/pstl/utils.h: New file.
1861 1.1.1.19 mrg * include/std/algorithm: Include parallel algorithm implementations.
1862 1.1.1.19 mrg * include/std/execution: New file.
1863 1.1.1.19 mrg * include/std/memory: Include parallel algorithm implementations.
1864 1.1.1.19 mrg * include/std/numeric: Include parallel algorithm implementations.
1865 1.1.1.19 mrg * include/std/version: Add parallel algorithms feature test macro.
1866 1.1.1.19 mrg * testsuite/util/pstl/pstl_test_config.h: New file.
1867 1.1.1.19 mrg * testsuite/util/pstl/test_utils.h: New file.
1868 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc: New file.
1869 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc: New file.
1870 1.1.1.19 mrg * testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc: New file.
1871 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc: New file.
1872 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_merge/merge.cc: New file.
1873 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/copy_if.cc: New file.
1874 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/copy_move.cc: New file.
1875 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/fill.cc: New file.
1876 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/generate.cc: New file.
1877 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/is_partitioned.cc: New file.
1878 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/partition.cc: New file.
1879 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/partition_copy.cc: New file.
1880 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/remove.cc: New file.
1881 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/remove_copy.cc: New file.
1882 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/replace.cc: New file.
1883 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/replace_copy.cc: New file.
1884 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/rotate.cc: New file.
1885 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc: New file.
1886 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/swap_ranges.cc: New file.
1887 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc: New file.
1888 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/transform_unary.cc: New file.
1889 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/unique.cc: New file.
1890 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_modifying_operations/unique_copy_equal.cc: New file.
1891 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/adjacent_find.cc: New file.
1892 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/all_of.cc: New file.
1893 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/any_of.cc: New file.
1894 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/count.cc: New file.
1895 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/equal.cc: New file.
1896 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find.cc: New file.
1897 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc: New file.
1898 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_first_of.cc: New file.
1899 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/find_if.cc: New file.
1900 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/for_each.cc: New file.
1901 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.cc: New file.
1902 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/none_of.cc: New file.
1903 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc: New file.
1904 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/reverse.cc: New file.
1905 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/reverse_copy.cc: New file.
1906 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc: New file.
1907 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/includes.cc: New file.
1908 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/is_heap.cc: New file.
1909 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/is_sorted.cc: New file.
1910 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/lexicographical_compare.cc: New file.
1911 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/minmax_element.cc: New file.
1912 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc: New file.
1913 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/partial_sort_copy.cc: New file.
1914 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/set.cc: New file.
1915 1.1.1.19 mrg * testsuite/25_algorithms/pstl/alg_sorting/sort.cc: New file.
1916 1.1.1.19 mrg * testsuite/26_numerics/pstl/numeric_ops/adjacent_difference.cc: New file.
1917 1.1.1.19 mrg * testsuite/26_numerics/pstl/numeric_ops/reduce.cc: New file.
1918 1.1.1.19 mrg * testsuite/26_numerics/pstl/numeric_ops/scan.cc: New file.
1919 1.1.1.19 mrg * testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc: New file.
1920 1.1.1.19 mrg * testsuite/26_numerics/pstl/numeric_ops/transform_scan.cc: New file.
1921 1.1.1.19 mrg * testsuite/testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc: New file.
1922 1.1.1.19 mrg * testsuite/testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc: New file.
1923 1.1.1.19 mrg * testsuite/testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc: New file.
1924 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_merge/inplace_merge.cc: New file.
1925 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_merge/merge.cc: New file.
1926 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/copy_if.cc: New file.
1927 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/copy_move.cc: New file.
1928 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/fill.cc: New file.
1929 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/generate.cc: New file.
1930 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/is_partitioned.cc: New file.
1931 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/partition.cc: New file.
1932 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/partition_copy.cc: New file.
1933 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/remove.cc: New file.
1934 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/remove_copy.cc: New file.
1935 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/replace.cc: New file.
1936 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/replace_copy.cc: New file.
1937 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/rotate.cc: New file.
1938 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/rotate_copy.cc: New file.
1939 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/swap_ranges.cc: New file.
1940 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/transform_binary.cc: New file.
1941 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/transform_unary.cc: New file.
1942 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/unique.cc: New file.
1943 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_modifying_operations/unique_copy_equal.cc: New file.
1944 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/adjacent_find.cc: New file.
1945 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/all_of.cc: New file.
1946 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/any_of.cc: New file.
1947 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/count.cc: New file.
1948 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/equal.cc: New file.
1949 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/find.cc: New file.
1950 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/find_end.cc: New file.
1951 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/find_first_of.cc: New file.
1952 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/find_if.cc: New file.
1953 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/for_each.cc: New file.
1954 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/mismatch.cc: New file.
1955 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/none_of.cc: New file.
1956 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/nth_element.cc: New file.
1957 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/reverse.cc: New file.
1958 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/reverse_copy.cc: New file.
1959 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_nonmodifying/search_n.cc: New file.
1960 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/includes.cc: New file.
1961 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/is_heap.cc: New file.
1962 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/is_sorted.cc: New file.
1963 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/lexicographical_compare.cc: New file.
1964 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/minmax_element.cc: New file.
1965 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/partial_sort.cc: New file.
1966 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/partial_sort_copy.cc: New file.
1967 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/set.cc: New file.
1968 1.1.1.19 mrg * testsuite/testsuite/25_algorithms/pstl/alg_sorting/sort.cc: New file.
1969 1.1.1.19 mrg * testsuite/testsuite/26_numerics/pstl/numeric_ops/adjacent_difference.cc: New file.
1970 1.1.1.19 mrg * testsuite/testsuite/26_numerics/pstl/numeric_ops/reduce.cc: New file.
1971 1.1.1.19 mrg * testsuite/testsuite/26_numerics/pstl/numeric_ops/scan.cc: New file.
1972 1.1.1.19 mrg * testsuite/testsuite/26_numerics/pstl/numeric_ops/transform_reduce.cc: New file.
1973 1.1.1.19 mrg * testsuite/testsuite/26_numerics/pstl/numeric_ops/transform_scan.cc: New file.
1974 1.1.1.19 mrg
1975 1.1.1.19 mrg 2019-03-21 Jonathan Wakely <jwakely (a] redhat.com>
1976 1.1.1.19 mrg
1977 1.1.1.19 mrg * include/c_compatibility/math.h [!__STDCPP_WANT_MATH_SPEC_FUNCS__]
1978 1.1.1.19 mrg (assoc_laguerre, assoc_laguerref, assoc_laguerrel, assoc_legendre)
1979 1.1.1.19 mrg (assoc_legendref, assoc_legendrel, beta, betaf, betal, comp_ellint_1)
1980 1.1.1.19 mrg (comp_ellint_1f, comp_ellint_1l, comp_ellint_2, comp_ellint_2f)
1981 1.1.1.19 mrg (comp_ellint_2l, comp_ellint_3, comp_ellint_3f, comp_ellint_3l)
1982 1.1.1.19 mrg (cyl_bessel_i, cyl_bessel_if, cyl_bessel_il, cyl_bessel_j)
1983 1.1.1.19 mrg (cyl_bessel_jf, cyl_bessel_jl, cyl_bessel_k, cyl_bessel_kf)
1984 1.1.1.19 mrg (cyl_bessel_kl, cyl_neumann, cyl_neumannf, cyl_neumannl, ellint_1)
1985 1.1.1.19 mrg (ellint_1f, ellint_1l, ellint_2, ellint_2f, ellint_2l, ellint_3)
1986 1.1.1.19 mrg (ellint_3f, ellint_3l, expint, expintf, expintl, hermite, hermitef)
1987 1.1.1.19 mrg (hermitel, laguerre, laguerref, laguerrel, legendre, legendref)
1988 1.1.1.19 mrg (legendrel, riemann_zeta, riemann_zetaf, riemann_zetal, sph_bessel)
1989 1.1.1.19 mrg (sph_besself, sph_bessell, sph_legendre, sph_legendref, sph_legendrel)
1990 1.1.1.19 mrg (sph_neumann, sph_neumannf, sph_neumannl): Only add using-declarations
1991 1.1.1.19 mrg when the special functions IS is enabled, not for C++17.
1992 1.1.1.19 mrg * testsuite/26_numerics/headers/cmath/functions_global_c++17.cc:
1993 1.1.1.19 mrg Replace with ...
1994 1.1.1.19 mrg * testsuite/26_numerics/headers/cmath/functions_global.cc: New test,
1995 1.1.1.19 mrg without checks for special functions in C++17.
1996 1.1.1.19 mrg * testsuite/26_numerics/headers/cmath/special_functions_global.cc:
1997 1.1.1.19 mrg New test.
1998 1.1.1.19 mrg
1999 1.1.1.19 mrg PR libstdc++/88066
2000 1.1.1.19 mrg * include/backward/hash_map: Use <> for includes not "".
2001 1.1.1.19 mrg * include/backward/hash_set: Likewise.
2002 1.1.1.19 mrg * include/backward/strstream: Likewise.
2003 1.1.1.19 mrg * include/tr1/bessel_function.tcc: Likewise.
2004 1.1.1.19 mrg * include/tr1/exp_integral.tcc: Likewise.
2005 1.1.1.19 mrg * include/tr1/legendre_function.tcc: Likewise.
2006 1.1.1.19 mrg * include/tr1/modified_bessel_func.tcc: Likewise.
2007 1.1.1.19 mrg * include/tr1/riemann_zeta.tcc: Likewise.
2008 1.1.1.19 mrg
2009 1.1.1.19 mrg 2019-03-19 Jonathan Wakely <jwakely (a] redhat.com>
2010 1.1.1.19 mrg
2011 1.1.1.19 mrg * doc/xml/manual/allocator.xml: Link to table documenting evolution
2012 1.1.1.19 mrg of extension allocators.
2013 1.1.1.19 mrg * doc/xml/manual/evolution.xml: Use angle brackets for header names.
2014 1.1.1.19 mrg Document new headers in 7.2, 8.1 and 9.1 releases.
2015 1.1.1.19 mrg * doc/xml/manual/using.xml: Adjust link target for new_allocator.
2016 1.1.1.19 mrg * doc/html/*: Regenerate.
2017 1.1.1.19 mrg
2018 1.1.1.19 mrg 2019-03-12 John David Anglin <dave.anglin (a] bell.net>
2019 1.1.1.19 mrg
2020 1.1.1.19 mrg PR libstdc++/89461
2021 1.1.1.19 mrg * testsuite/lib/libstdc++.exp: Locate libatomic.
2022 1.1.1.19 mrg * testsuite/lib/dg-options.exp (add_options_for_libatomic): New.
2023 1.1.1.19 mrg * testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
2024 1.1.1.19 mrg libatomic options.
2025 1.1.1.19 mrg * testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
2026 1.1.1.19 mrg * testsuite/experimental/net/timer/waitable/cons.cc: Likewise.
2027 1.1.1.19 mrg * testsuite/experimental/net/timer/waitable/dest.cc: Likewise.
2028 1.1.1.19 mrg * testsuite/experimental/net/timer/waitable/ops.cc: Likewise.
2029 1.1.1.19 mrg
2030 1.1.1.19 mrg 2019-03-11 Jonathan Wakely <jwakely (a] redhat.com>
2031 1.1.1.19 mrg
2032 1.1.1.19 mrg PR libstdc++/89460
2033 1.1.1.19 mrg * configure.ac: Check for sockatmark.
2034 1.1.1.19 mrg * crossconfig.m4: Check for sockatmark.
2035 1.1.1.19 mrg * config.h.in: Regenerate.
2036 1.1.1.19 mrg * configure: Regenerate.
2037 1.1.1.19 mrg * include/experimental/internet (address_v4::_S_hton): Rename
2038 1.1.1.19 mrg overloaded functions to _S_hton_16 and _S_ntoh_16.
2039 1.1.1.19 mrg (address_v4::_S_ntoh): Rename to _S_ntoh_16 and _S_ntoh_32.
2040 1.1.1.19 mrg (basic_endpoint): Adjust calls to _S_hton and _S_ntoh.
2041 1.1.1.19 mrg * include/experimental/socket (basic_socket::at_mark): Check
2042 1.1.1.19 mrg _GLIBCXX_HAVE_SOCKATMARK.
2043 1.1.1.19 mrg
2044 1.1.1.19 mrg * testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Use
2045 1.1.1.19 mrg const variables instead of macros.
2046 1.1.1.16 mrg
2047 1.1.1.16 mrg PR libstdc++/89629
2048 1.1.1.16 mrg * libsupc++/hash_bytes.cc [__SIZEOF_SIZE_T__ == 8] (_Hash_bytes):
2049 1.1.1.16 mrg Use correct type for len_aligned.
2050 1.1.1.16 mrg * testsuite/20_util/hash/89629.cc: New test.
2051 1.1.1.16 mrg
2052 1.1.1.19 mrg 2019-03-11 Jakub Jelinek <jakub (a] redhat.com>
2053 1.1.1.18 mrg
2054 1.1.1.19 mrg PR libstdc++/89641
2055 1.1.1.19 mrg * include/std/atomic (atomic<T>::store, atomic<T>::load,
2056 1.1.1.19 mrg atomic<T>::exchange, atomic<T>::compare_exchange_weak,
2057 1.1.1.19 mrg atomic<T>::compare_exchange_strong): Cast __m or __s and __f to int.
2058 1.1.1.19 mrg * include/bits/atomic_base.h (__atomic_base<T>::operator++,
2059 1.1.1.19 mrg __atomic_base<T>::operator--, __atomic_base<T>::operator+=,
2060 1.1.1.19 mrg __atomic_base<T>::operator-=, __atomic_base<T>::operator&=,
2061 1.1.1.19 mrg __atomic_base<T>::operator|=, __atomic_base<T>::operator^=,
2062 1.1.1.19 mrg __atomic_base<T*>::operator++, __atomic_base<T*>::operator--,
2063 1.1.1.19 mrg __atomic_base<T*>::operator+=, __atomic_base<T*>::operator-=): Cast
2064 1.1.1.19 mrg memory_order_seq_cst to int.
2065 1.1.1.18 mrg
2066 1.1.1.19 mrg 2019-03-08 Jonathan Wakely <jwakely (a] redhat.com>
2067 1.1.1.18 mrg
2068 1.1.1.19 mrg * doc/xml/manual/using.xml: Use link element instead of xref.
2069 1.1.1.19 mrg * doc/html/*: Regenerate.
2070 1.1.1.18 mrg
2071 1.1.1.19 mrg * include/bits/fs_path.h (path::format): Add fixed underlying type.
2072 1.1.1.18 mrg
2073 1.1.1.19 mrg 2019-03-08 Franois Dumont <fdumont (a] gcc.gnu.org>
2074 1.1.1.18 mrg
2075 1.1.1.19 mrg PR libstdc++/89477
2076 1.1.1.19 mrg * include/debug/map.h (map): Use _RequireNotAllocator to constrain
2077 1.1.1.19 mrg parameters in deduction guides.
2078 1.1.1.19 mrg * include/debug/multimap.h (multimap): Likewise.
2079 1.1.1.19 mrg * include/debug/set.h (multimap): Likewise.
2080 1.1.1.19 mrg * include/debug/multiset.h (multimap): Likewise.
2081 1.1.1.19 mrg * include/debug/unordered_map (unordered_map): Likewise.
2082 1.1.1.19 mrg (unordered_multimap): Likewise.
2083 1.1.1.19 mrg * include/debug/unordered_set (unordered_set): Likewise.
2084 1.1.1.19 mrg (unordered_multiset): Likewise.
2085 1.1.1.19 mrg
2086 1.1.1.19 mrg PR libstdc++/89608
2087 1.1.1.19 mrg * include/debug/unordered_map (unordered_map<>::_M_check_rehashed):
2088 1.1.1.19 mrg Invalidate all iterators in case of rehash.
2089 1.1.1.19 mrg (unordered_multimap<>::_M_check_rehashed): Likewise.
2090 1.1.1.19 mrg * include/debug/unordered_set
2091 1.1.1.19 mrg (unordered_set<>::_M_check_rehashed): Likewise.
2092 1.1.1.19 mrg (unordered_multiset<>::_M_check_rehashed): Likewise.
2093 1.1.1.19 mrg * testsuite/23_containers/unordered_set/debug/89608_neg.cc: New.
2094 1.1.1.19 mrg
2095 1.1.1.19 mrg 2019-03-07 Andreas Schwab <schwab (a] suse.de>
2096 1.1.1.19 mrg
2097 1.1.1.19 mrg * config/abi/post/riscv64-linux-gnu: New directory.
2098 1.1.1.19 mrg * config/abi/post/riscv64-linux-gnu/baseline_symbols.txt: New file.
2099 1.1.1.16 mrg
2100 1.1.1.19 mrg 2019-03-07 Jonathan Wakely <jwakely (a] redhat.com>
2101 1.1.1.16 mrg
2102 1.1.1.19 mrg * testsuite/20_util/function_objects/bind_front/1.cc: Change from
2103 1.1.1.19 mrg compile test to run. Fix typo.
2104 1.1.1.15 mrg
2105 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Update C++20 status.
2106 1.1.1.19 mrg * doc/html/*: Regenerate.
2107 1.1.1.15 mrg
2108 1.1.1.19 mrg P0356R5 Simplified partial function application
2109 1.1.1.19 mrg * include/std/functional [C++20] (_Bind_front, _Bind_front_t): Define
2110 1.1.1.19 mrg helpers for bind_front.
2111 1.1.1.19 mrg (bind_front, __cpp_lib_bind_front): Define.
2112 1.1.1.19 mrg * testsuite/20_util/function_objects/bind_front/1.cc: New test.
2113 1.1.1.19 mrg
2114 1.1.1.19 mrg 2019-03-06 Jonathan Wakely <jwakely (a] redhat.com>
2115 1.1.1.19 mrg
2116 1.1.1.19 mrg * include/std/type_traits (__cpp_lib_bounded_array_traits): Define.
2117 1.1.1.19 mrg * include/std/version (__cpp_lib_bounded_array_traits): Likewise.
2118 1.1.1.19 mrg * testsuite/20_util/is_bounded_array/value.cc: Check for macro.
2119 1.1.1.19 mrg * testsuite/20_util/is_unbounded_array/value.cc: Likewise.
2120 1.1.1.19 mrg
2121 1.1.1.19 mrg 2019-03-06 Edward Smith-Rowland <3dw4rd (a] verizon.net>
2122 1.1.1.19 mrg
2123 1.1.1.19 mrg PR libstdc++/86655 - std::assoc_legendre should not constrain
2124 1.1.1.19 mrg the value of m (or x).
2125 1.1.1.19 mrg * include/tr1/legendre_function.tcc (__assoc_legendre_p,
2126 1.1.1.19 mrg __sph_legendre): If degree > order Don't throw, return 0.
2127 1.1.1.19 mrg (__legendre_p, __assoc_legendre_p): Don't constrain x either.
2128 1.1.1.19 mrg * testsuite/special_functions/02_assoc_legendre/pr86655.cc: New test.
2129 1.1.1.19 mrg * testsuite/special_functions/20_sph_legendre/pr86655.cc: New test.
2130 1.1.1.19 mrg * testsuite/tr1/5_numerical_facilities/special_functions/
2131 1.1.1.19 mrg 02_assoc_legendre/pr86655.cc: New test.
2132 1.1.1.19 mrg * testsuite/tr1/5_numerical_facilities/special_functions/
2133 1.1.1.19 mrg 22_sph_legendre/pr86655.cc: New test.
2134 1.1.1.18 mrg
2135 1.1.1.19 mrg 2019-03-06 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2136 1.1.1.15 mrg
2137 1.1.1.19 mrg Rewrite variant.
2138 1.1.1.19 mrg Also PR libstdc++/85517
2139 1.1.1.19 mrg * include/std/variant (__do_visit): New.
2140 1.1.1.19 mrg (__variant_cast): Likewise.
2141 1.1.1.19 mrg (__variant_cookie): Likewise.
2142 1.1.1.19 mrg (__erased_*): Remove.
2143 1.1.1.19 mrg (_Variant_storage::_S_vtable): Likewise.
2144 1.1.1.19 mrg (_Variant_storage::__M_reset_impl): Adjust to use __do_visit.
2145 1.1.1.19 mrg (_Variant_storage::__M_reset): Adjust.
2146 1.1.1.19 mrg (__variant_construct): New.
2147 1.1.1.19 mrg (_Copy_ctor_base(const _Copy_ctor_base&)): Adjust to use
2148 1.1.1.19 mrg __variant_construct.
2149 1.1.1.19 mrg (_Move_ctor_base(_Move_ctor_base&&)): Likewise.
2150 1.1.1.19 mrg (_Move_ctor_base::__M_destructive_copy): New.
2151 1.1.1.19 mrg (_Move_ctor_base::__M_destructive_move): Adjust to use
2152 1.1.1.19 mrg __variant_construct.
2153 1.1.1.19 mrg (_Copy_assign_base::operator=): Adjust to use __do_visit.
2154 1.1.1.19 mrg (_Copy_assign_alias): Adjust to check both copy assignment
2155 1.1.1.19 mrg and copy construction for triviality.
2156 1.1.1.19 mrg (_Move_assign_base::operator=): Adjust to use __do_visit.
2157 1.1.1.19 mrg (_Multi_array): Add support for visitors that accept and return
2158 1.1.1.19 mrg a __variant_cookie.
2159 1.1.1.19 mrg (__gen_vtable_impl::_S_apply_all_alts): Likewise.
2160 1.1.1.19 mrg (__gen_vtable_impl::_S_apply_single_alt): Likewise.
2161 1.1.1.19 mrg (__gen_vtable_impl::__element_by_index_or_cookie): New. Generate
2162 1.1.1.19 mrg a __variant_cookie temporary for a variant that is valueless and..
2163 1.1.1.19 mrg (__gen_vtable_impl::__visit_invoke): ..adjust here.
2164 1.1.1.19 mrg (__gen_vtable::_Array_type): Conditionally make space for
2165 1.1.1.19 mrg the __variant_cookie visitor case.
2166 1.1.1.19 mrg (__variant_construct_by_index): New.
2167 1.1.1.19 mrg (get_if): Adjust to use std::addressof.
2168 1.1.1.19 mrg (relops): Adjust to use __do_visit.
2169 1.1.1.19 mrg (variant): Add __variant_cast and __variant_construct_by_index
2170 1.1.1.19 mrg as friends.
2171 1.1.1.19 mrg (variant::emplace): Use _M_reset() and __variant_construct_by_index
2172 1.1.1.19 mrg instead of self-destruction.
2173 1.1.1.19 mrg (variant::swap): Adjust to use __do_visit.
2174 1.1.1.19 mrg (visit): Reimplement in terms of __do_visit.
2175 1.1.1.19 mrg (__variant_hash_call_base_impl::operator()): Adjust to use __do_visit.
2176 1.1.1.19 mrg * testsuite/20_util/variant/compile.cc: Adjust.
2177 1.1.1.19 mrg * testsuite/20_util/variant/run.cc: Likewise.
2178 1.1.1.19 mrg
2179 1.1.1.19 mrg 2019-03-06 Jonathan Wakely <jwakely (a] redhat.com>
2180 1.1.1.19 mrg
2181 1.1.1.19 mrg * include/bits/c++config.h (_cpp_lib_char8_t): Add L suffix to
2182 1.1.1.19 mrg constant.
2183 1.1.1.19 mrg * testsuite/experimental/feat-char8_t.cc: Likewise.
2184 1.1.1.19 mrg
2185 1.1.1.19 mrg * include/std/type_traits [C++20] (is_bounded_array)
2186 1.1.1.19 mrg (is_unbounded_array, is_bounded_array_v, is_unbounded_array_v):
2187 1.1.1.19 mrg Define.
2188 1.1.1.19 mrg * testsuite/20_util/is_bounded_array/requirements/
2189 1.1.1.19 mrg explicit_instantiation.cc: New test.
2190 1.1.1.19 mrg * testsuite/20_util/is_bounded_array/requirements/typedefs.cc: New
2191 1.1.1.19 mrg test.
2192 1.1.1.19 mrg * testsuite/20_util/is_bounded_array/value.cc: New test.
2193 1.1.1.19 mrg * testsuite/20_util/is_unbounded_array/requirements/
2194 1.1.1.19 mrg explicit_instantiation.cc: New test.
2195 1.1.1.19 mrg * testsuite/20_util/is_unbounded_array/requirements/typedefs.cc: New
2196 1.1.1.19 mrg * test.
2197 1.1.1.19 mrg * testsuite/20_util/is_unbounded_array/value.cc: New test.
2198 1.1.1.19 mrg
2199 1.1.1.19 mrg * include/bits/ptr_traits.h [C++20] (pointer_traits<T*>::pointer_to):
2200 1.1.1.19 mrg Add constexpr.
2201 1.1.1.19 mrg * testsuite/20_util/pointer_traits/pointer_to_constexpr.cc: New test.
2202 1.1.1.15 mrg
2203 1.1.1.19 mrg 2019-03-05 Jonathan Wakely <jwakely (a] redhat.com>
2204 1.1.1.15 mrg
2205 1.1.1.19 mrg * include/c_compatibility/math.h [C++20] (lerp): Add using
2206 1.1.1.19 mrg declaration.
2207 1.1.1.19 mrg * include/c_global/cmath [C++20] (__cpp_lib_interpolate): Define.
2208 1.1.1.19 mrg (__lerp): Define function template to implement lerp.
2209 1.1.1.19 mrg (lerp(float, float, float), lerp(double, double, double))
2210 1.1.1.19 mrg (lerp(long double, long double, long double)): Define for C++20.
2211 1.1.1.19 mrg * include/std/numeric [C++20] (__cpp_lib_interpolate): Define.
2212 1.1.1.19 mrg (midpoint(T, T), midpoint(T*, T*)): Define.
2213 1.1.1.19 mrg * include/std::version [C++20] (__cpp_lib_interpolate): Define.
2214 1.1.1.19 mrg * testsuite/26_numerics/lerp.cc: New test.
2215 1.1.1.19 mrg * testsuite/26_numerics/midpoint/floating.cc: New test.
2216 1.1.1.19 mrg * testsuite/26_numerics/midpoint/integral.cc: New test.
2217 1.1.1.19 mrg * testsuite/26_numerics/midpoint/pointer.cc: New test.
2218 1.1.1.19 mrg
2219 1.1.1.19 mrg 2019-03-04 Edward Smith-Rowland <3dw4rd (a] verizon.net>
2220 1.1.1.19 mrg
2221 1.1.1.19 mrg PR libstdc++/88996 Implement P0439R0
2222 1.1.1.19 mrg Make std::memory_order a scoped enumeration.
2223 1.1.1.19 mrg * include/bits/atomic_base.h: For C++20 make memory_order a scoped enum,
2224 1.1.1.19 mrg add variables for the old enumerators. Adjust calls.
2225 1.1.1.19 mrg * testsuite/29_atomics/headers/atomic/types_std_c++2a.cc: New test.
2226 1.1.1.19 mrg * testsuite/29_atomics/headers/atomic/types_std_c++2a_neg.cc: New test.
2227 1.1.1.19 mrg
2228 1.1.1.19 mrg 2019-03-04 Jonathan Wakely <jwakely (a] redhat.com>
2229 1.1.1.19 mrg
2230 1.1.1.19 mrg * testsuite/26_numerics/bit/bitops.rot/rotl.cc: Remove bogus dg-do
2231 1.1.1.19 mrg directive.
2232 1.1.1.19 mrg
2233 1.1.1.19 mrg * include/std/memory_resource (polymorphic_allocator): Add default
2234 1.1.1.19 mrg template argument for C++20.
2235 1.1.1.19 mrg (polymorphic_allocator::allocate_bytes)
2236 1.1.1.19 mrg (polymorphic_allocator::deallocate_bytes)
2237 1.1.1.19 mrg (polymorphic_allocator::allocate_object)
2238 1.1.1.19 mrg (polymorphic_allocator::deallocate_object)
2239 1.1.1.19 mrg (polymorphic_allocator::new_object)
2240 1.1.1.19 mrg (polymorphic_allocator::delete_object): New member functions for
2241 1.1.1.19 mrg C++20.
2242 1.1.1.19 mrg * testsuite/20_util/polymorphic_allocator/allocate_object.cc: New
2243 1.1.1.19 mrg test.
2244 1.1.1.15 mrg
2245 1.1.1.19 mrg 2019-03-03 Jonathan Wakely <jwakely (a] redhat.com>
2246 1.1.1.15 mrg
2247 1.1.1.19 mrg PR libstdc++/89562
2248 1.1.1.19 mrg * src/filesystem/ops-common.h (do_copy_file): Open files in binary
2249 1.1.1.19 mrg mode for mingw.
2250 1.1.1.19 mrg
2251 1.1.1.19 mrg 2019-03-01 Jonathan Wakely <jwakely (a] redhat.com>
2252 1.1.1.19 mrg
2253 1.1.1.19 mrg * testsuite/util/testsuite_allocator.h (__gnu_test::memory_resource)
2254 1.1.1.19 mrg [!__cpp_sized_deallocation]: Do not pass size to operator delete.
2255 1.1.1.19 mrg
2256 1.1.1.19 mrg * include/std/memory (uses_allocator_construction_args): New set of
2257 1.1.1.19 mrg overloaded functions.
2258 1.1.1.19 mrg (make_obj_using_allocator, uninitialized_construct_using_allocator):
2259 1.1.1.19 mrg New functions.
2260 1.1.1.19 mrg * include/std/memory_resource (polymorphic_allocator::construct)
2261 1.1.1.19 mrg [__cplusplus > 201703l]: Replace all overloads with a single function
2262 1.1.1.19 mrg using uses_allocator_construction_args.
2263 1.1.1.19 mrg * testsuite/20_util/polymorphic_allocator/construct_c++2a.cc: New
2264 1.1.1.19 mrg test.
2265 1.1.1.19 mrg * testsuite/20_util/uses_allocator/make_obj.cc: New test.
2266 1.1.1.15 mrg
2267 1.1.1.19 mrg 2019-02-27 Jonathan Wakely <jwakely (a] redhat.com>
2268 1.1.1.15 mrg
2269 1.1.1.19 mrg PR libstdc++/89466
2270 1.1.1.19 mrg * acinclude.m4 (GLIBCXX_CONFIGURE_DOCBOOK): Reorder check for local
2271 1.1.1.19 mrg stylesheet directories before check for xsltproc. Try to use
2272 1.1.1.19 mrg xmlcatalog to find local stylesheet directory before trying hardcoded
2273 1.1.1.19 mrg paths. Add path used by suse to hardcoded paths. Adjust xsltproc
2274 1.1.1.19 mrg check to look for the same stylesheet as doc/Makefile.am uses. Don't
2275 1.1.1.19 mrg use xsltproc if xmlcatalog fails to find a local stylesheet.
2276 1.1.1.19 mrg * configure.ac: Check for xmlcatalog.
2277 1.1.1.19 mrg * Makefile.in: Regenerate.
2278 1.1.1.19 mrg * configure: Likewise.
2279 1.1.1.19 mrg * doc/Makefile.in: Likewise.
2280 1.1.1.19 mrg * include/Makefile.in: Likewise.
2281 1.1.1.19 mrg * libsupc++/Makefile.in: Likewise.
2282 1.1.1.19 mrg * po/Makefile.in: Likewise.
2283 1.1.1.19 mrg * python/Makefile.in: Likewise.
2284 1.1.1.19 mrg * src/Makefile.in: Likewise.
2285 1.1.1.19 mrg * src/c++11/Makefile.in: Likewise.
2286 1.1.1.19 mrg * src/c++17/Makefile.in: Likewise.
2287 1.1.1.19 mrg * src/c++98/Makefile.in: Likewise.
2288 1.1.1.19 mrg * src/filesystem/Makefile.in: Likewise.
2289 1.1.1.19 mrg * testsuite/Makefile.in: Likewise.
2290 1.1.1.15 mrg
2291 1.1.1.19 mrg 2019-02-26 Jonathan Wakely <jwakely (a] redhat.com>
2292 1.1.1.15 mrg
2293 1.1.1.19 mrg PR libstdc++/89477
2294 1.1.1.19 mrg * include/bits/alloc_traits.h (_RequireNotAllocator): New helper for
2295 1.1.1.19 mrg container deduction guides.
2296 1.1.1.19 mrg * include/bits/hashtable.h (_RequireNotAllocatorOrIntegral): Likewise.
2297 1.1.1.19 mrg * include/bits/stl_map.h (map): Use _RequireNotAllocator to constrain
2298 1.1.1.19 mrg parameters in deduction guides.
2299 1.1.1.19 mrg * include/bits/stl_multimap.h (multimap): Likewise.
2300 1.1.1.19 mrg * include/bits/stl_multiset.h (multiset): Likewise.
2301 1.1.1.19 mrg * include/bits/stl_queue.h (queue, priority_queue): Likewise.
2302 1.1.1.19 mrg * include/bits/stl_set.h (set): Likewise.
2303 1.1.1.19 mrg * include/bits/stl_stack.h (stack): Likewise.
2304 1.1.1.19 mrg * include/bits/unordered_map.h (unordered_map, unordered_multimap):
2305 1.1.1.19 mrg use _RequireNotAllocator and _RequireNotAllocatorOrIntegral to
2306 1.1.1.19 mrg constrain parameters in deduction guides.
2307 1.1.1.19 mrg * include/bits/unordered_set.h (unordered_set, unordered_multiset):
2308 1.1.1.19 mrg Likewise.
2309 1.1.1.19 mrg * testsuite/23_containers/map/cons/deduction.cc: Test additional
2310 1.1.1.19 mrg deduction cases.
2311 1.1.1.19 mrg * testsuite/23_containers/multiset/cons/deduction.cc: Likewise.
2312 1.1.1.19 mrg * testsuite/23_containers/set/cons/deduction.cc: Likewise.
2313 1.1.1.19 mrg * testsuite/23_containers/unordered_map/cons/deduction.cc: Likewise.
2314 1.1.1.19 mrg * testsuite/23_containers/unordered_multimap/cons/deduction.cc:
2315 1.1.1.19 mrg Likewise.
2316 1.1.1.19 mrg * testsuite/23_containers/unordered_multiset/cons/deduction.cc:
2317 1.1.1.19 mrg Likewise.
2318 1.1.1.19 mrg * testsuite/23_containers/unordered_set/cons/deduction.cc: Likewise.
2319 1.1.1.19 mrg
2320 1.1.1.19 mrg PR libstdc++/89416
2321 1.1.1.19 mrg * include/bits/alloc_traits.h (__is_alloc_insertable_impl): Change
2322 1.1.1.19 mrg to class template and partial specialization using void_t.
2323 1.1.1.19 mrg (__is_copy_insertable, __is_move_insertable): Adjust base class.
2324 1.1.1.19 mrg
2325 1.1.1.19 mrg 2019-02-24 Jonathan Wakely <jwakely (a] redhat.com>
2326 1.1.1.19 mrg
2327 1.1.1.19 mrg PR libstdc++/89416
2328 1.1.1.19 mrg * include/bits/alloc_traits.h (__is_alloc_insertable_impl): Make
2329 1.1.1.19 mrg copy and move members public.
2330 1.1.1.19 mrg
2331 1.1.1.19 mrg 2019-02-23 Jonathan Wakely <jwakely (a] redhat.com>
2332 1.1.1.19 mrg
2333 1.1.1.19 mrg * include/std/type_traits (__underlying_type_impl): New helper to
2334 1.1.1.19 mrg make underlying_type SFINAE-friendly.
2335 1.1.1.19 mrg (underlying_type): Derive from __underlying_type_impl.
2336 1.1.1.19 mrg * testsuite/20_util/underlying_type/requirements/typedefs-3.cc: New
2337 1.1.1.19 mrg test.
2338 1.1.1.15 mrg
2339 1.1.1.19 mrg PR libstdc++/89446
2340 1.1.1.19 mrg * include/bits/char_traits.h (__constant_char_array): Check index is
2341 1.1.1.19 mrg in range before dereferencing.
2342 1.1.1.19 mrg (char_traits<char>::compare, char_traits<char>::find)
2343 1.1.1.19 mrg (char_traits<char8_t>::compare, char_traits<char8_t>::find): Return
2344 1.1.1.19 mrg immediately if n is zero.
2345 1.1.1.19 mrg (char_traits<wchar_t>::compare, char_traits<wchar_t>::find): Likewise.
2346 1.1.1.19 mrg Remove workarounds for PR 67026.
2347 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/operators/char/89446.cc:
2348 1.1.1.19 mrg New test.
2349 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/operators/wchar_t/89446.cc:
2350 1.1.1.19 mrg New test.
2351 1.1.1.15 mrg
2352 1.1.1.19 mrg 2019-02-22 Eric Botcazou <ebotcazou (a] adacore.com>
2353 1.1.1.15 mrg
2354 1.1.1.19 mrg * config/abi/post/sparc64-linux-gnu/baseline_symbols.txt: Adjust.
2355 1.1.1.19 mrg * config/abi/post/sparc64-linux-gnu/32/baseline_symbols.txt: Likewise.
2356 1.1.1.15 mrg
2357 1.1.1.19 mrg 2019-02-22 Jakub Jelinek <jakub (a] redhat.com>
2358 1.1.1.15 mrg
2359 1.1.1.19 mrg PR libstdc++/89402
2360 1.1.1.19 mrg * src/c++98/compatibility-ldbl.cc (_ZNKSt4hashIeEclEe): Change return
2361 1.1.1.19 mrg type to std::size_t and argument to type to long double.
2362 1.1.1.15 mrg
2363 1.1.1.19 mrg 2019-02-22 Eric Botcazou <ebotcazou (a] adacore.com>
2364 1.1.1.15 mrg
2365 1.1.1.19 mrg * configure.host (abi_baseline_pair): Adjust for SPARC64/Linux.
2366 1.1.1.19 mrg * config/abi/post/sparc64-linux-gnu: New directory.
2367 1.1.1.19 mrg * config/abi/post/sparc64-linux-gnu/baseline_symbols.txt: New file.
2368 1.1.1.19 mrg * config/abi/post/sparc64-linux-gnu/32: New directory.
2369 1.1.1.19 mrg * config/abi/post/sparc64-linux-gnu/32/baseline_symbols.txt: New file.
2370 1.1.1.15 mrg
2371 1.1.1.19 mrg 2019-02-21 Jonathan Wakely <jwakely (a] redhat.com>
2372 1.1.1.17 mrg
2373 1.1.1.19 mrg * testsuite/29_atomics/headers/atomic/types_std_c++20.cc: New test.
2374 1.1.1.19 mrg * testsuite/29_atomics/headers/atomic/types_std_c++20_neg.cc: New
2375 1.1.1.19 mrg test.
2376 1.1.1.15 mrg
2377 1.1.1.19 mrg 2019-02-22 Tom Honermann <tom (a] honermann.net>
2378 1.1.1.15 mrg
2379 1.1.1.19 mrg * python/libstdcxx/v6/printers.py (register_type_printers): Add type
2380 1.1.1.19 mrg printers for u8string and u8string_view.
2381 1.1.1.15 mrg
2382 1.1.1.19 mrg 2019-02-22 Tom Honermann <tom (a] honermann.net>
2383 1.1.1.15 mrg
2384 1.1.1.19 mrg * testsuite/18_support/byte/ops.cc: Validate
2385 1.1.1.19 mrg std::to_integer<char8_t>, std::to_integer<char16_t>, and
2386 1.1.1.19 mrg std::to_integer<char32_t>.
2387 1.1.1.19 mrg * testsuite/18_support/numeric_limits/dr559.cc: Validate
2388 1.1.1.19 mrg std::numeric_limits<char8_t>.
2389 1.1.1.19 mrg * testsuite/18_support/numeric_limits/lowest.cc: Validate
2390 1.1.1.19 mrg std::numeric_limits<char8_t>::lowest().
2391 1.1.1.19 mrg * testsuite/18_support/numeric_limits/max_digits10.cc: Validate
2392 1.1.1.19 mrg std::numeric_limits<char8_t>::max_digits10.
2393 1.1.1.19 mrg * testsuite/18_support/type_info/fundamental.cc: Validate
2394 1.1.1.19 mrg typeinfo for char8_t.
2395 1.1.1.19 mrg * testsuite/20_util/from_chars/1_c++20_neg.cc: New test, validating
2396 1.1.1.19 mrg std::from_chars with char8_t.
2397 1.1.1.19 mrg * testsuite/20_util/hash/requirements/explicit_instantiation.cc:
2398 1.1.1.19 mrg Validate explicit instantiation of std::hash<char8_t>.
2399 1.1.1.19 mrg * testsuite/20_util/is_integral/value.cc: Validate
2400 1.1.1.19 mrg std::is_integral<char8_t>.
2401 1.1.1.19 mrg * testsuite/20_util/make_signed/requirements/typedefs-4.cc:
2402 1.1.1.19 mrg Validate std::make_signed<char8_t>.
2403 1.1.1.19 mrg * testsuite/21_strings/basic_string/cons/char/deduction.cc:
2404 1.1.1.19 mrg Validate u8string construction from char8_t sources.
2405 1.1.1.19 mrg * testsuite/21_strings/basic_string/types/pmr_typedefs.cc: Validate
2406 1.1.1.19 mrg std::pmr::u8string.
2407 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/operations/compare/
2408 1.1.1.19 mrg char/70483.cc: Validate substr operations on u8string_view.
2409 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/typedefs.cc: Validate that
2410 1.1.1.19 mrg the u8string_view typedef is defined.
2411 1.1.1.19 mrg * testsuite/21_strings/char_traits/requirements/
2412 1.1.1.19 mrg constexpr_functions.cc: Validate char_traits<char8_t> constexpr
2413 1.1.1.19 mrg member functions.
2414 1.1.1.19 mrg * testsuite/21_strings/char_traits/requirements/
2415 1.1.1.19 mrg constexpr_functions_c++17.cc: Validate char_traits<char8_t> C++17
2416 1.1.1.19 mrg constexpr member functions.
2417 1.1.1.19 mrg * testsuite/21_strings/headers/string/types_std_c++0x.cc: Validate
2418 1.1.1.19 mrg that the u8string typedef is defined.
2419 1.1.1.19 mrg * testsuite/22_locale/locale/cons/unicode.cc: Validate the presence
2420 1.1.1.19 mrg of the std::codecvt<char16_t, char8_t, std::mbstate_t> and
2421 1.1.1.19 mrg std::codecvt<char32_t, char8_t, std::mbstate_t> facets.
2422 1.1.1.19 mrg * testsuite/29_atomics/atomic/cons/assign_neg.cc: Update line
2423 1.1.1.19 mrg numbers.
2424 1.1.1.19 mrg * testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
2425 1.1.1.19 mrg * testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
2426 1.1.1.19 mrg Likewise.
2427 1.1.1.19 mrg * testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
2428 1.1.1.19 mrg * testsuite/29_atomics/atomic_integral/is_always_lock_free.cc:
2429 1.1.1.19 mrg Validate std::atomic<char8_t>::is_always_lock_free
2430 1.1.1.19 mrg * testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
2431 1.1.1.19 mrg Update line numbers.
2432 1.1.1.19 mrg * testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
2433 1.1.1.19 mrg Likewise.
2434 1.1.1.19 mrg * testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
2435 1.1.1.19 mrg Likewise.
2436 1.1.1.19 mrg * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
2437 1.1.1.19 mrg Validate std::experimental::pmr::u8string.
2438 1.1.1.19 mrg * testsuite/experimental/string_view/typedefs.cc: Validate that the
2439 1.1.1.19 mrg u8string_view typedef is defined.
2440 1.1.1.19 mrg * testsuite/util/testsuite_common_types.h: Add char8_t, char16_t and
2441 1.1.1.19 mrg char32_t to the typelists.
2442 1.1.1.19 mrg
2443 1.1.1.19 mrg 2019-02-22 Tom Honermann <tom (a] honermann.net>
2444 1.1.1.19 mrg
2445 1.1.1.19 mrg * include/ext/typelist.h: Constrain a partial specialization of
2446 1.1.1.19 mrg typelist::detail::append_ to only match chain<T1,T2>.
2447 1.1.1.19 mrg
2448 1.1.1.19 mrg 2019-02-21 Jonathan Wakely <jwakely (a] redhat.com>
2449 1.1.1.19 mrg
2450 1.1.1.19 mrg PR libstdc++/89416
2451 1.1.1.19 mrg * include/bits/alloc_traits.h (__is_alloc_insertable_impl): Replace
2452 1.1.1.19 mrg class template with class. Replace move and copy member types with
2453 1.1.1.19 mrg member alias templates, so they are only instantiated when needed.
2454 1.1.1.19 mrg (__is_copy_insertable, __is_move_insertable): Adjust base class.
2455 1.1.1.19 mrg * testsuite/23_containers/vector/modifiers/push_back/89130.cc: Enable
2456 1.1.1.19 mrg test for C++11/14/17 as well.
2457 1.1.1.19 mrg * testsuite/23_containers/vector/modifiers/push_back/89416.cc: New
2458 1.1.1.19 mrg test.
2459 1.1.1.13 mrg
2460 1.1.1.19 mrg 2019-02-20 Jakub Jelinek <jakub (a] redhat.com>
2461 1.1.1.13 mrg
2462 1.1.1.19 mrg PR libstdc++/89402
2463 1.1.1.19 mrg * src/c++98/compatibility-ldbl.cc (_ZNKSt4hashIeEclEe): Add
2464 1.1.1.19 mrg _GLIBCXX_PURE to the alias declaration.
2465 1.1.1.19 mrg
2466 1.1.1.19 mrg 2019-02-19 Jonathan Wakely <jwakely (a] redhat.com>
2467 1.1.1.19 mrg
2468 1.1.1.19 mrg * testsuite/21_strings/basic_string/literals/types.cc
2469 1.1.1.19 mrg [_GLIBCXX_USE_CHAR8_T]: Adjust expected string type for u8 literal.
2470 1.1.1.19 mrg * testsuite/21_strings/basic_string/literals/values.cc
2471 1.1.1.19 mrg [_GLIBCXX_USE_CHAR8_T]: Likewise.
2472 1.1.1.19 mrg * testsuite/22_locale/codecvt/char16_t.cc: Adjust for u8 literals
2473 1.1.1.19 mrg potentially having different type.
2474 1.1.1.19 mrg * testsuite/22_locale/codecvt/char32_t.cc: Likewise.
2475 1.1.1.19 mrg * testsuite/22_locale/codecvt/codecvt_utf8/79980.cc: Cast u8 literal
2476 1.1.1.19 mrg to char.
2477 1.1.1.19 mrg * testsuite/22_locale/codecvt/codecvt_utf8/wchar_t/1.cc: Likewise.
2478 1.1.1.19 mrg * testsuite/22_locale/codecvt/utf8.cc: Likewise.
2479 1.1.1.19 mrg * testsuite/22_locale/conversions/string/2.cc: Remove u8 prefix from
2480 1.1.1.19 mrg string literals only using basic character set.
2481 1.1.1.19 mrg * testsuite/22_locale/conversions/string/3.cc: Likewise. Cast other
2482 1.1.1.19 mrg u8 literals to char.
2483 1.1.1.19 mrg * testsuite/29_atomics/headers/atomic/macros.cc [_GLIBCXX_USE_CHAR8_T]:
2484 1.1.1.19 mrg Test ATOMIC_CHAR8_T_LOCK_FREE.
2485 1.1.1.19 mrg Add missing #error to ATOMIC_CHAR16_T_LOCK_FREE test.
2486 1.1.1.19 mrg * testsuite/29_atomics/headers/atomic/types_std_c++0x.cc
2487 1.1.1.19 mrg [_GLIBCXX_USE_CHAR8_T]: Check for std::atomic_char8_t.
2488 1.1.1.19 mrg * testsuite/experimental/string_view/literals/types.cc
2489 1.1.1.19 mrg [_GLIBCXX_USE_CHAR8_T]: Adjust expected string_view type for u8
2490 1.1.1.19 mrg literal.
2491 1.1.1.19 mrg * testsuite/experimental/string_view/literals/values.cc
2492 1.1.1.19 mrg [_GLIBCXX_USE_CHAR8_T]: Likewise.
2493 1.1.1.19 mrg
2494 1.1.1.19 mrg 2019-02-19 Tom Honermann <tom (a] honermann.net>
2495 1.1.1.19 mrg
2496 1.1.1.19 mrg * testsuite/18_support/numeric_limits/char8_t.cc: New test cloned
2497 1.1.1.19 mrg from char16_32_t.cc; validates numeric_limits<char8_t>.
2498 1.1.1.19 mrg * testsuite/21_strings/basic_string/literals/types-char8_t.cc: New
2499 1.1.1.19 mrg test cloned from types.cc; validates operator""s for char8_t
2500 1.1.1.19 mrg returns u8string.
2501 1.1.1.19 mrg * testsuite/21_strings/basic_string/literals/values-char8_t.cc: New
2502 1.1.1.19 mrg test cloned from values.cc; validates construction and comparison
2503 1.1.1.19 mrg of u8string values.
2504 1.1.1.19 mrg * testsuite/21_strings/basic_string/requirements/
2505 1.1.1.19 mrg /explicit_instantiation/char8_t/1.cc: New test cloned from
2506 1.1.1.19 mrg char16_t/1.cc; validates explicit instantiation of
2507 1.1.1.19 mrg basic_string<char8_t>.
2508 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
2509 1.1.1.19 mrg New test cloned from types.cc; validates operator""sv for char8_t
2510 1.1.1.19 mrg returns u8string_view.
2511 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/literals/
2512 1.1.1.19 mrg values-char8_t.cc: New test cloned from values.cc; validates
2513 1.1.1.19 mrg construction and comparison of u8string_view values.
2514 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/requirements/
2515 1.1.1.19 mrg explicit_instantiation/char8_t/1.cc: New test cloned from
2516 1.1.1.19 mrg char16_t/1.cc; validates explicit instantiation of
2517 1.1.1.19 mrg basic_string_view<char8_t>.
2518 1.1.1.19 mrg * testsuite/21_strings/char_traits/requirements/char8_t/65049.cc:
2519 1.1.1.19 mrg New test cloned from char16_t/65049.cc; validates that
2520 1.1.1.19 mrg char_traits<char8_t> is not vulnerable to the concerns in PR65049.
2521 1.1.1.19 mrg * testsuite/21_strings/char_traits/requirements/char8_t/
2522 1.1.1.19 mrg typedefs.cc: New test cloned from char16_t/typedefs.cc; validates
2523 1.1.1.19 mrg that char_traits<char8_t> member typedefs are present and correct.
2524 1.1.1.19 mrg * testsuite/21_strings/char_traits/requirements/
2525 1.1.1.19 mrg explicit_instantiation/char8_t/1.cc: New test cloned from
2526 1.1.1.19 mrg char16_t/1.cc; validates explicit instantiation of
2527 1.1.1.19 mrg char_traits<char8_t>.
2528 1.1.1.19 mrg * testsuite/22_locale/codecvt/char16_t-char8_t.cc: New test cloned
2529 1.1.1.19 mrg from char16_t.cc: validates
2530 1.1.1.19 mrg codecvt<char16_t, char8_t, mbstate_t>.
2531 1.1.1.19 mrg * testsuite/22_locale/codecvt/char32_t-char8_t.cc: New test cloned
2532 1.1.1.19 mrg from char32_t.cc: validates
2533 1.1.1.19 mrg codecvt<char32_t, char8_t, mbstate_t>.
2534 1.1.1.19 mrg * testsuite/22_locale/codecvt/utf8-char8_t.cc: New test cloned from
2535 1.1.1.19 mrg utf8.cc; validates codecvt<char16_t, char8_t, std::mbstate_t> and
2536 1.1.1.19 mrg codecvt<char32_t, char8_t, std::mbstate_t>.
2537 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/string-char8_t.cc: New
2538 1.1.1.19 mrg test cloned from string.cc; validates filesystem::path construction
2539 1.1.1.19 mrg from char8_t input.
2540 1.1.1.19 mrg * testsuite/experimental/feat-char8_t.cc: New test; validates that
2541 1.1.1.19 mrg the __cpp_lib_char8_t feature test macro is defined with the
2542 1.1.1.19 mrg correct value.
2543 1.1.1.19 mrg * testsuite/experimental/filesystem/path/native/string-char8_t.cc:
2544 1.1.1.19 mrg New test cloned from string.cc; validates filesystem::path
2545 1.1.1.19 mrg construction from char8_t input.
2546 1.1.1.19 mrg * testsuite/experimental/string_view/literals/types-char8_t.cc: New
2547 1.1.1.19 mrg test cloned from types.cc; validates operator""sv for char8_t
2548 1.1.1.19 mrg returns u8string_view.
2549 1.1.1.19 mrg * testsuite/experimental/string_view/literals/values-char8_t.cc:
2550 1.1.1.19 mrg New test cloned from values.cc; validates construction and
2551 1.1.1.19 mrg comparison of u8string_view values.
2552 1.1.1.19 mrg * testsuite/experimental/string_view/requirements/
2553 1.1.1.19 mrg explicit_instantiation/char8_t/1.cc: New test cloned from
2554 1.1.1.19 mrg char16_t/1.cc; validates explicit instantiation of
2555 1.1.1.19 mrg basic_string_view<char8_t>.
2556 1.1.1.19 mrg * testsuite/ext/char8_t/atomic-1.cc: New test; validates that
2557 1.1.1.19 mrg ATOMIC_CHAR8_T_LOCK_FREE is not defined if char8_t support is not
2558 1.1.1.19 mrg enabled.
2559 1.1.1.19 mrg
2560 1.1.1.19 mrg 2019-02-19 Tom Honermann <tom (a] honermann.net>
2561 1.1.1.19 mrg
2562 1.1.1.19 mrg P0482R5 char8_t: Standard library support
2563 1.1.1.19 mrg * config/abi/pre/gnu-versioned-namespace.ver (CXXABI_2.0): Add
2564 1.1.1.19 mrg typeinfo symbols for char8_t.
2565 1.1.1.19 mrg * config/abi/pre/gnu.ver: Add CXXABI_1.3.12.
2566 1.1.1.19 mrg (GLIBCXX_3.4.26): Add symbols for specializations of
2567 1.1.1.19 mrg numeric_limits and codecvt that involve char8_t.
2568 1.1.1.19 mrg (CXXABI_1.3.12): Add typeinfo symbols for char8_t.
2569 1.1.1.19 mrg * include/bits/atomic_base.h: Add atomic_char8_t.
2570 1.1.1.19 mrg * include/bits/basic_string.h: Add std::hash<u8string> and
2571 1.1.1.19 mrg operator""s(const char8_t*, size_t).
2572 1.1.1.19 mrg * include/bits/c++config: Define _GLIBCXX_USE_CHAR8_T and
2573 1.1.1.19 mrg __cpp_lib_char8_t.
2574 1.1.1.19 mrg * include/bits/char_traits.h: Add char_traits<char8_t>.
2575 1.1.1.19 mrg * include/bits/codecvt.h: Add
2576 1.1.1.19 mrg codecvt<char16_t, char8_t, mbstate_t>,
2577 1.1.1.19 mrg codecvt<char32_t, char8_t, mbstate_t>,
2578 1.1.1.19 mrg codecvt_byname<char16_t, char8_t, mbstate_t>, and
2579 1.1.1.19 mrg codecvt_byname<char32_t, char8_t, mbstate_t>.
2580 1.1.1.19 mrg * include/bits/cpp_type_traits.h: Add __is_integer<char8_t> to
2581 1.1.1.19 mrg recognize char8_t as an integral type.
2582 1.1.1.19 mrg * include/bits/fs_path.h: (path::__is_encoded_char): Recognize
2583 1.1.1.19 mrg char8_t.
2584 1.1.1.19 mrg (path::u8string): Return std::u8string when char8_t support is
2585 1.1.1.19 mrg enabled.
2586 1.1.1.19 mrg (path::generic_u8string): Likewise.
2587 1.1.1.19 mrg (path::_S_convert): Handle conversion from char8_t input.
2588 1.1.1.19 mrg (path::_S_str_convert): Likewise.
2589 1.1.1.19 mrg * include/bits/functional_hash.h: Add hash<char8_t>.
2590 1.1.1.19 mrg * include/bits/locale_conv.h (__str_codecvt_out): Add overloads for
2591 1.1.1.19 mrg char8_t.
2592 1.1.1.19 mrg * include/bits/locale_facets.h (_GLIBCXX_NUM_UNICODE_FACETS): Bump
2593 1.1.1.19 mrg for new char8_t specializations.
2594 1.1.1.19 mrg * include/bits/localefwd.h: Add missing declarations of
2595 1.1.1.19 mrg codecvt<char16_t, char, mbstate_t> and
2596 1.1.1.19 mrg codecvt<char32_t, char, mbstate_t>. Add char8_t declarations
2597 1.1.1.19 mrg codecvt<char16_t, char8_t, mbstate_t> and
2598 1.1.1.19 mrg codecvt<char32_t, char8_t, mbstate_t>.
2599 1.1.1.19 mrg * include/bits/postypes.h: Add u8streampos
2600 1.1.1.19 mrg * include/bits/stringfwd.h: Add declarations of
2601 1.1.1.19 mrg char_traits<char8_t> and u8string.
2602 1.1.1.19 mrg * include/c_global/cstddef: Add __byte_operand<char8_t>.
2603 1.1.1.19 mrg * include/experimental/bits/fs_path.h (path::__is_encoded_char):
2604 1.1.1.19 mrg Recognize char8_t.
2605 1.1.1.19 mrg (path::u8string): Return std::u8string when char8_t support is
2606 1.1.1.19 mrg enabled.
2607 1.1.1.19 mrg (path::generic_u8string): Likewise.
2608 1.1.1.19 mrg (path::_S_convert): Handle conversion from char8_t input.
2609 1.1.1.19 mrg (path::_S_str_convert): Likewise.
2610 1.1.1.19 mrg * include/experimental/string: Add u8string.
2611 1.1.1.19 mrg * include/experimental/string_view: Add u8string_view,
2612 1.1.1.19 mrg hash<experimental::u8string_view>, and
2613 1.1.1.19 mrg operator""sv(const char8_t*, size_t).
2614 1.1.1.19 mrg * include/std/atomic: Add atomic<char8_t> and atomic_char8_t.
2615 1.1.1.19 mrg * include/std/charconv (__is_int_to_chars_type): Recognize char8_t
2616 1.1.1.19 mrg as a character type.
2617 1.1.1.19 mrg * include/std/limits: Add numeric_limits<char8_t>.
2618 1.1.1.19 mrg * include/std/string_view: Add u8string_view,
2619 1.1.1.19 mrg hash<experimental::u8string_view>, and
2620 1.1.1.19 mrg operator""sv(const char8_t*, size_t).
2621 1.1.1.19 mrg * include/std/type_traits: Add __is_integral_helper<char8_t>,
2622 1.1.1.19 mrg __make_unsigned<char8_t>, and __make_signed<char8_t>.
2623 1.1.1.19 mrg * libsupc++/atomic_lockfree_defines.h: Define
2624 1.1.1.19 mrg ATOMIC_CHAR8_T_LOCK_FREE.
2625 1.1.1.19 mrg * src/c++11/Makefile.am: Compile with -fchar8_t when compiling
2626 1.1.1.19 mrg codecvt.cc and limits.cc so that char8_t specializations of
2627 1.1.1.19 mrg numeric_limits and codecvt and emitted.
2628 1.1.1.19 mrg * src/c++11/Makefile.in: Likewise.
2629 1.1.1.19 mrg * src/c++11/codecvt.cc: Define members of
2630 1.1.1.19 mrg codecvt<char16_t, char8_t, mbstate_t>,
2631 1.1.1.19 mrg codecvt<char32_t, char8_t, mbstate_t>,
2632 1.1.1.19 mrg codecvt_byname<char16_t, char8_t, mbstate_t>, and
2633 1.1.1.19 mrg codecvt_byname<char32_t, char8_t, mbstate_t>.
2634 1.1.1.19 mrg * src/c++11/limits.cc: Define members of
2635 1.1.1.19 mrg numeric_limits<char8_t>.
2636 1.1.1.19 mrg * src/c++98/Makefile.am: Compile with -fchar8_t when compiling
2637 1.1.1.19 mrg locale_init.cc and localename.cc.
2638 1.1.1.19 mrg * src/c++98/Makefile.in: Likewise.
2639 1.1.1.19 mrg * src/c++98/locale_init.cc: Add initialization for the
2640 1.1.1.19 mrg codecvt<char16_t, char8_t, mbstate_t> and
2641 1.1.1.19 mrg codecvt<char32_t, char8_t, mbstate_t> facets.
2642 1.1.1.19 mrg * src/c++98/localename.cc: Likewise.
2643 1.1.1.19 mrg * testsuite/util/testsuite_abi.cc: Validate ABI bump.
2644 1.1.1.19 mrg
2645 1.1.1.19 mrg 2019-02-18 Wilco Dijkstra <wdijkstr (a] arm.com>
2646 1.1.1.19 mrg
2647 1.1.1.19 mrg * 27_io/filesystem/operations/all.cc: Add dg-require-filesystem-ts.
2648 1.1.1.19 mrg * 27_io/filesystem/operations/resize_file.cc: Likewise.
2649 1.1.1.19 mrg * 27_io/filesystem/path/generation/normal2.cc: Likewise.
2650 1.1.1.13 mrg
2651 1.1.1.19 mrg 2019-02-14 Jonathan Wakely <jwakely (a] redhat.com>
2652 1.1.1.13 mrg
2653 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Update P0887R1 status.
2654 1.1.1.19 mrg * doc/html/*: Regenerate.
2655 1.1.1.18 mrg
2656 1.1.1.19 mrg * doc/xml/manual/status_cxx2017.xml: Add P0063R3 to status table.
2657 1.1.1.19 mrg * doc/html/*: Regenerate.
2658 1.1.1.18 mrg
2659 1.1.1.19 mrg * doc/xml/manual/intro.xml: Document LWG 2586 status.
2660 1.1.1.19 mrg * include/bits/uses_allocator.h (__uses_alloc): Use const lvalue
2661 1.1.1.19 mrg allocator type in is_constructible checks.
2662 1.1.1.19 mrg * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
2663 1.1.1.19 mrg * testsuite/20_util/scoped_allocator/dr2586.cc: New test.
2664 1.1.1.19 mrg * testsuite/20_util/tuple/cons/allocators.cc: Add test using
2665 1.1.1.19 mrg problematic type from LWG 2586 discussion.
2666 1.1.1.19 mrg * testsuite/20_util/uses_allocator/69293_neg.cc: Adjust dg-error.
2667 1.1.1.19 mrg * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2668 1.1.1.18 mrg
2669 1.1.1.19 mrg * configure.ac: Check for C11 timespec_get function.
2670 1.1.1.19 mrg * crossconfig.m4 (freebsd, linux, gnu, cygwin, solaris, netbsd)
2671 1.1.1.19 mrg (openbsd): Likewise
2672 1.1.1.19 mrg * config.h.in: Regenerate.
2673 1.1.1.19 mrg * configure: Regenerate.
2674 1.1.1.19 mrg * include/c_global/ctime (timespec, timespec_get): Add to namespace
2675 1.1.1.19 mrg std for C++17 and up.
2676 1.1.1.18 mrg
2677 1.1.1.19 mrg * doc/xml/manual/intro.xml: Document LWG 2537 status.
2678 1.1.1.19 mrg * include/bits/stl_queue.h
2679 1.1.1.19 mrg (priority_queue(const Compare&, const Container&, const Alloc&))
2680 1.1.1.19 mrg (priority_queue(const Compare&, Container&&, const Alloc&)): Call
2681 1.1.1.19 mrg make_heap.
2682 1.1.1.19 mrg * testsuite/23_containers/priority_queue/dr2537.cc: New test.
2683 1.1.1.18 mrg
2684 1.1.1.19 mrg * doc/xml/manual/intro.xml: Document LWG 2566 status.
2685 1.1.1.19 mrg * include/bits/stl_queue.h (queue, priority_queue): Add static
2686 1.1.1.19 mrg assertions to enforce LWG 2566 requirement on value_type.
2687 1.1.1.19 mrg * include/bits/stl_stack.h (stack): Likewise.
2688 1.1.1.18 mrg
2689 1.1.1.19 mrg PR middle-end/89303
2690 1.1.1.19 mrg * testsuite/20_util/enable_shared_from_this/89303.cc: New test.
2691 1.1.1.18 mrg
2692 1.1.1.19 mrg * doc/xml/manual/intro.xml: Document LWG 2735 status.
2693 1.1.1.19 mrg * include/bits/std_abs.h: Add comment about LWG 2735.
2694 1.1.1.19 mrg * testsuite/26_numerics/headers/cstdlib/dr2735.cc: New test.
2695 1.1.1.19 mrg
2696 1.1.1.19 mrg 2019-02-13 Jonathan Wakely <jwakely (a] redhat.com>
2697 1.1.1.19 mrg
2698 1.1.1.19 mrg PR libstdc++/89345
2699 1.1.1.19 mrg * include/std/version [__cpp_impl_destroying_delete]
2700 1.1.1.19 mrg (__cpp_lib_destroying_delete): Only define for C++2a and later.
2701 1.1.1.19 mrg * libsupc++/new [__cpp_impl_destroying_delete]
2702 1.1.1.19 mrg (__cpp_lib_destroying_delete): Likewise.
2703 1.1.1.19 mrg (destroying_delete_t, destroying_delete): Likewise, but define even
2704 1.1.1.19 mrg when __cpp_impl_destroying_delete is not defined.
2705 1.1.1.19 mrg * testsuite/18_support/destroying_delete.cc: New test.
2706 1.1.1.19 mrg
2707 1.1.1.19 mrg 2019-02-11 Jonathan Wakely <jwakely (a] redhat.com>
2708 1.1.1.19 mrg
2709 1.1.1.19 mrg PR libstdc++/89023
2710 1.1.1.19 mrg * testsuite/17_intro/headers/c++2011/parallel_mode.cc: New test.
2711 1.1.1.19 mrg * testsuite/17_intro/headers/c++2014/parallel_mode.cc: New test.
2712 1.1.1.19 mrg * testsuite/17_intro/headers/c++2017/parallel_mode.cc: New test.
2713 1.1.1.19 mrg * testsuite/28_regex/headers/regex/parallel_mode.cc: Remove.
2714 1.1.1.18 mrg
2715 1.1.1.19 mrg 2019-02-09 Jonathan Wakely <jwakely (a] redhat.com>
2716 1.1.1.19 mrg
2717 1.1.1.19 mrg PR libstdc++/71044
2718 1.1.1.19 mrg * include/bits/fs_path.h (path::has_root_name)
2719 1.1.1.19 mrg (path::has_root_directory, path::has_root_path)
2720 1.1.1.19 mrg (path::has_relative_path, path::has_parent_path)
2721 1.1.1.19 mrg (path::has_filename, path::has_stem, path::has_extension)
2722 1.1.1.19 mrg (path::is_absolute, path::is_relative, path::_M_find_extension): Add
2723 1.1.1.18 mrg noexcept.
2724 1.1.1.19 mrg * src/c++17/fs_path.cc (path::has_root_name)
2725 1.1.1.19 mrg (path::has_root_directory, path::has_root_path)
2726 1.1.1.19 mrg (path::has_relative_path, path::has_parent_path)
2727 1.1.1.19 mrg (path::has_filename, path::_M_find_extension): Add noexcept.
2728 1.1.1.18 mrg
2729 1.1.1.19 mrg 2019-02-06 Jonathan Wakely <jwakely (a] redhat.com>
2730 1.1.1.19 mrg
2731 1.1.1.19 mrg PR libstdc++/89102 (partial)
2732 1.1.1.19 mrg * include/std/type_traits (common_type<>): Define.
2733 1.1.1.19 mrg (common_type<T>): Derive from common_type<T, T>.
2734 1.1.1.19 mrg * testsuite/20_util/common_type/requirements/explicit_instantiation.cc:
2735 1.1.1.19 mrg Test zero-length template argument list.
2736 1.1.1.19 mrg * testsuite/20_util/common_type/requirements/sfinae_friendly_1.cc:
2737 1.1.1.19 mrg Test additional single argument cases.
2738 1.1.1.19 mrg * testsuite/20_util/common_type/requirements/sfinae_friendly_2.cc:
2739 1.1.1.19 mrg Adjust expected error.
2740 1.1.1.18 mrg
2741 1.1.1.19 mrg 2019-02-05 Jonathan Wakely <jwakely (a] redhat.com>
2742 1.1.1.18 mrg
2743 1.1.1.19 mrg PR libstdc++/89128
2744 1.1.1.19 mrg * include/bits/stl_queue.h (queue, priority_queue): Add deduction
2745 1.1.1.19 mrg guides.
2746 1.1.1.19 mrg * include/bits/stl_stack.h (stack): Likewise.
2747 1.1.1.19 mrg * testsuite/23_containers/priority_queue/deduction.cc: New test.
2748 1.1.1.19 mrg * testsuite/23_containers/queue/deduction.cc: New test.
2749 1.1.1.19 mrg * testsuite/23_containers/stack/deduction.cc: New test.
2750 1.1.1.19 mrg
2751 1.1.1.19 mrg PR libstdc++/89194
2752 1.1.1.19 mrg * include/std/type_traits (__is_convertible_helper)
2753 1.1.1.19 mrg (__is_convertible_helper<_From, _To, false>): Revert changes to
2754 1.1.1.19 mrg support is_nothrow_convertible.
2755 1.1.1.19 mrg (__is_nt_convertible_helper): New helper.
2756 1.1.1.19 mrg (is_nothrow_convertible): Use __is_nt_convertible_helper.
2757 1.1.1.19 mrg
2758 1.1.1.19 mrg * testsuite/23_containers/vector/modifiers/push_back/49836.cc: Restore
2759 1.1.1.19 mrg use of CopyConsOnlyType, but also test DelAnyAssign for completeness.
2760 1.1.1.19 mrg
2761 1.1.1.19 mrg PR libstdc++/89130
2762 1.1.1.19 mrg * include/bits/alloc_traits.h (__is_copy_insertable_impl): Rename to
2763 1.1.1.19 mrg __is_alloc_insertable_impl. Replace single type member with two
2764 1.1.1.19 mrg members, one for each of copy and move insertable.
2765 1.1.1.19 mrg (__is_move_insertable): New trait for internal use.
2766 1.1.1.19 mrg * include/bits/stl_vector.h (vector::_S_nothrow_relocate(true_type))
2767 1.1.1.19 mrg (vector::_S_nothrow_relocate(true_type)): New functions to
2768 1.1.1.19 mrg conditionally check if __relocate_a can throw.
2769 1.1.1.19 mrg (vector::_S_use_relocate()): Dispatch to _S_nothrow_relocate based
2770 1.1.1.19 mrg on __is_move_insertable.
2771 1.1.1.19 mrg (vector::_S_do_relocate): New overloaded functions to conditionally
2772 1.1.1.19 mrg call __relocate_a.
2773 1.1.1.19 mrg (vector::_S_relocate): New function that dispatches to _S_do_relocate
2774 1.1.1.19 mrg based on _S_use_relocate.
2775 1.1.1.19 mrg * include/bits/vector.tcc (vector::reserve, vector::_M_realloc_insert)
2776 1.1.1.19 mrg (vector::_M_default_append): Call _S_relocate instead of __relocate_a.
2777 1.1.1.19 mrg * testsuite/23_containers/vector/modifiers/push_back/89130.cc: New.
2778 1.1.1.19 mrg
2779 1.1.1.19 mrg PR libstdc++/89090
2780 1.1.1.19 mrg * include/bits/stl_uninitialized.h (__relocate_a_1): Make unused
2781 1.1.1.19 mrg parameter unnamed. Add message to static assertion.
2782 1.1.1.19 mrg * include/bits/vector.tcc (vector::reserve, vector::_M_realloc_insert)
2783 1.1.1.19 mrg (vector::_M_default_append): Use _GLIBCXX17_CONSTEXPR for if constexpr
2784 1.1.1.19 mrg in C++11 code.
2785 1.1.1.19 mrg
2786 1.1.1.19 mrg 2019-02-05 Marc Glisse <marc.glisse (a] inria.fr>
2787 1.1.1.19 mrg
2788 1.1.1.19 mrg PR libstdc++/87106
2789 1.1.1.19 mrg * include/bits/stl_uninitialized.h (__is_trivially_relocatable):
2790 1.1.1.19 mrg Rename...
2791 1.1.1.19 mrg (__is_bitwise_relocatable): ... to this.
2792 1.1.1.19 mrg (__relocate_a_1): Adapt.
2793 1.1.1.19 mrg * include/bits/stl_deque.h (__is_trivially_relocatable): Rename...
2794 1.1.1.19 mrg (__is_bitwise_relocatable): ... to this.
2795 1.1.1.19 mrg
2796 1.1.1.19 mrg 2019-01-30 Jonathan Wakely <jwakely (a] redhat.com>
2797 1.1.1.18 mrg
2798 1.1.1.18 mrg PR libstdc++/89117
2799 1.1.1.18 mrg * src/c++17/fs_path.cc (path::replace_extension): Erase extension from
2800 1.1.1.19 mrg final component as well as from _M_pathname. Append the dot using
2801 1.1.1.19 mrg operator+= instead of only to _M_pathname.
2802 1.1.1.19 mrg (path::_M_find_extension): Reformat slightly.
2803 1.1.1.18 mrg * testsuite/27_io/filesystem/path/modifiers/replace_extension.cc:
2804 1.1.1.18 mrg Add more test cases.
2805 1.1.1.18 mrg
2806 1.1.1.19 mrg 2019-01-30 Ulrich Drepper <drepper (a] redhat.com>
2807 1.1.1.18 mrg
2808 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Update P0600 entry.
2809 1.1.1.19 mrg
2810 1.1.1.19 mrg 2019-01-29 Jonathan Wakely <jwakely (a] redhat.com>
2811 1.1.1.19 mrg
2812 1.1.1.19 mrg * testsuite/26_numerics/headers/complex/synopsis.cc: Remove incorrect
2813 1.1.1.19 mrg constexpr specifiers from arg and proj.
2814 1.1.1.19 mrg
2815 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Add missing exports for
2816 1.1.1.19 mrg __shared_ptr instantiations used by gcc4-compatible ABI.
2817 1.1.1.19 mrg
2818 1.1.1.19 mrg * include/experimental/forward_list (experimental::erase): Qualify
2819 1.1.1.19 mrg call to erase_if.
2820 1.1.1.19 mrg * include/experimental/list (experimental::erase): Likewise.
2821 1.1.1.19 mrg * include/std/forward_list (std::erase): Likewise.
2822 1.1.1.19 mrg * include/std/list (std::erase): Likewise.
2823 1.1.1.19 mrg
2824 1.1.1.19 mrg * testsuite/20_util/reference_wrapper/result_type.cc: Disable for
2825 1.1.1.19 mrg C++2a.
2826 1.1.1.19 mrg * testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
2827 1.1.1.19 mrg * testsuite/20_util/reference_wrapper/typedefs-3.cc: Likewise.
2828 1.1.1.19 mrg * testsuite/20_util/reference_wrapper/typedefs.cc: Likewise.
2829 1.1.1.19 mrg * testsuite/30_threads/async/54297.cc: Suppress nodiscard warning.
2830 1.1.1.19 mrg * testsuite/ext/array_allocator/26875.cc: Likewise.
2831 1.1.1.19 mrg * testsuite/ext/pool_allocator/allocate_chunk.cc: Likewise.
2832 1.1.1.19 mrg * testsuite/util/replacement_memory_operators.h: Likewise.
2833 1.1.1.19 mrg * testsuite/util/testsuite_allocator.h: Likewise.
2834 1.1.1.19 mrg
2835 1.1.1.19 mrg * include/std/memory_resource (__pool_resource::_M_unpooled): Use
2836 1.1.1.19 mrg normal mode vector, even for debug mode.
2837 1.1.1.19 mrg * include/std/vector [_GLIBCXX_DEBUG] (_GLIBCXX_STD_C::pmr::vector):
2838 1.1.1.19 mrg Define alias template for normal mode vector.
2839 1.1.1.19 mrg
2840 1.1.1.19 mrg 2019-01-28 Jonathan Wakely <jwakely (a] redhat.com>
2841 1.1.1.19 mrg
2842 1.1.1.19 mrg PR libstdc++/68737
2843 1.1.1.19 mrg * config/locale/generic/c_locale.h (__convert_from_v)
2844 1.1.1.19 mrg [_GLIBCXX_USE_C99_STDIO]: Also check _GLIBCXX_HAVE_BROKEN_VSNPRINTF.
2845 1.1.1.19 mrg * config/os/hpux/os_defines.h: Define _GLIBCXX_HAVE_BROKEN_VSNPRINTF.
2846 1.1.1.19 mrg * include/bits/locale_facets.tcc (num_put::_M_insert_float)
2847 1.1.1.19 mrg [_GLIBCXX_USE_C99_STDIO]: Also check _GLIBCXX_HAVE_BROKEN_VSNPRINTF.
2848 1.1.1.19 mrg
2849 1.1.1.19 mrg 2019-01-24 Jonathan Wakely <jwakely (a] redhat.com>
2850 1.1.1.19 mrg
2851 1.1.1.19 mrg PR libstdc++/88840
2852 1.1.1.19 mrg * include/bits/stl_vector.h (vector::__use_relocate): Replace static
2853 1.1.1.19 mrg data member with static member function _S_use_relocate().
2854 1.1.1.19 mrg * include/bits/vector.tcc (vector::reserve, vector::_M_realloc_insert)
2855 1.1.1.19 mrg (vector::_M_default_append): Use _S_use_relocate() instead of
2856 1.1.1.19 mrg __use_relocate.
2857 1.1.1.19 mrg
2858 1.1.1.19 mrg * testsuite/27_io/filesystem/path/compare/strings.cc: Only compare
2859 1.1.1.19 mrg sign of results.
2860 1.1.1.19 mrg
2861 1.1.1.19 mrg 2019-01-22 Jonathan Wakely <jwakely (a] redhat.com>
2862 1.1.1.19 mrg
2863 1.1.1.19 mrg PR libstdc++/88740
2864 1.1.1.19 mrg * testsuite/util/testsuite_hooks.h [stderr] (VERIFY): Use fprintf to
2865 1.1.1.19 mrg write to stderr instead of using printf.
2866 1.1.1.19 mrg
2867 1.1.1.19 mrg 2019-01-21 Jakub Jelinek <jakub (a] redhat.com>
2868 1.1.1.19 mrg
2869 1.1.1.19 mrg PR libstdc++/86590
2870 1.1.1.19 mrg * include/bits/char_traits.h (__constant_string_p,
2871 1.1.1.19 mrg __constant_char_array_p): Use __builtin_is_constant_evaluated if
2872 1.1.1.19 mrg available.
2873 1.1.1.19 mrg
2874 1.1.1.19 mrg 2019-01-20 Ulrich Drepper <drepper (a] redhat.com>
2875 1.1.1.19 mrg
2876 1.1.1.19 mrg Implement C++20 P0600r1.
2877 1.1.1.19 mrg * include/backward/hash_map: Add nodiscard attribute to empty.
2878 1.1.1.19 mrg * include/backward/hash_set: Likewise.
2879 1.1.1.19 mrg * backward/hashtable.h: Likewise.
2880 1.1.1.19 mrg * include/bits/basic_string.h: Likewise.
2881 1.1.1.19 mrg * include/bits/forward_list.h: Likewise.
2882 1.1.1.19 mrg * include/bits/hashtable.h: Likewise.
2883 1.1.1.19 mrg * include/bits/regex.h: Likewise.
2884 1.1.1.19 mrg * include/bits/stl_deque.h: Likewise.
2885 1.1.1.19 mrg * include/bits/stl_list.h: Likewise.
2886 1.1.1.19 mrg * include/bits/stl_map.h: Likewise.
2887 1.1.1.19 mrg * include/bits/stl_multimap.h: Likewise.
2888 1.1.1.19 mrg * include/bits/stl_multiset.h: Likewise.
2889 1.1.1.19 mrg * include/bits/stl_queue.h: Likewise.
2890 1.1.1.19 mrg * include/bits/stl_set.h: Likewise.
2891 1.1.1.19 mrg * include/bits/stl_stack.h: Likewise.
2892 1.1.1.19 mrg * include/bits/stl_tree.h: Likewise.
2893 1.1.1.19 mrg * include/bits/stl_vector.h: Likewise.
2894 1.1.1.19 mrg * include/bits/unordered_map.h: Likewise.
2895 1.1.1.19 mrg * include/bits/unordered_set.h: Likewise.
2896 1.1.1.19 mrg * include/debug/array: Likewise.
2897 1.1.1.19 mrg * include/experimental/any: Likewise.
2898 1.1.1.19 mrg * include/experimental/bits/fs_path.h: Likewise.
2899 1.1.1.19 mrg * include/experimental/internet: Likewise.
2900 1.1.1.19 mrg * include/experimental/string_view: Likewise.
2901 1.1.1.19 mrg * include/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp:
2902 1.1.1.19 mrg Likewise.
2903 1.1.1.19 mrg * include/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp:
2904 1.1.1.19 mrg Likewise.
2905 1.1.1.19 mrg * include/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp:
2906 1.1.1.19 mrg Likewise.
2907 1.1.1.19 mrg * include/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp:
2908 1.1.1.19 mrg Likewise.
2909 1.1.1.19 mrg * include/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp:
2910 1.1.1.19 mrg Likewise.
2911 1.1.1.19 mrg * include/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp:
2912 1.1.1.19 mrg Likewise.
2913 1.1.1.19 mrg * include/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp:
2914 1.1.1.19 mrg Likewise.
2915 1.1.1.19 mrg * include/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp:
2916 1.1.1.19 mrg Likewise.
2917 1.1.1.19 mrg * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2918 1.1.1.19 mrg info_fn_imps.hpp: Likewise.
2919 1.1.1.19 mrg * include/ext/pb_ds/detail/left_child_next_sibling_heap_/
2920 1.1.1.19 mrg left_child_next_sibling_heap_.hpp: Likewise.
2921 1.1.1.19 mrg * include/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp:
2922 1.1.1.19 mrg Likewise.
2923 1.1.1.19 mrg * include/ext/pb_ds/detail/list_update_map_/lu_map_.hpp:
2924 1.1.1.19 mrg Likewise.
2925 1.1.1.19 mrg * include/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp:
2926 1.1.1.19 mrg Likewise.
2927 1.1.1.19 mrg * include/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hp:
2928 1.1.1.19 mrg Likewise.
2929 1.1.1.19 mrg * include/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp:
2930 1.1.1.19 mrg Likewise.
2931 1.1.1.19 mrg * include/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp:
2932 1.1.1.19 mrg Likewise.
2933 1.1.1.19 mrg * include/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp:
2934 1.1.1.19 mrg Likewise.
2935 1.1.1.19 mrg * include/ext/pb_ds/detail/tree_trace_base.hpp: Likewise.
2936 1.1.1.19 mrg * include/ext/pb_ds/trie_policy.hpp: Likewise.
2937 1.1.1.19 mrg * include/ext/rope: Likewise.
2938 1.1.1.19 mrg * include/ext/slist: Likewise.
2939 1.1.1.19 mrg * include/ext/vstring.h: Likewise.
2940 1.1.1.19 mrg * include/profile/array: Likewise.
2941 1.1.1.19 mrg * include/std/array: Likewise.
2942 1.1.1.19 mrg * include/tr1/array: Likewise.
2943 1.1.1.19 mrg * include/tr1/hashtable.h: Likewise.
2944 1.1.1.19 mrg * include/tr1/regex: Likewise.
2945 1.1.1.19 mrg * include/tr2/dynamic_bitset: Likewise.
2946 1.1.1.19 mrg * include/bits/alloc_traits.h: Add nodiscard attribute to
2947 1.1.1.19 mrg allocate.
2948 1.1.1.19 mrg * include/experimental/memory_resource: Likewise.
2949 1.1.1.19 mrg * include/ext/alloc_traits.h: Likewise.
2950 1.1.1.19 mrg * include/ext/array_allocator.h: Likewise.
2951 1.1.1.19 mrg * include/ext/bitmap_allocator.h: Likewise.
2952 1.1.1.19 mrg * include/ext/debug_allocator.h: Likewise.
2953 1.1.1.19 mrg * include/ext/extptr_allocator.h: Likewise.
2954 1.1.1.19 mrg * include/ext/mt_allocator.h: Likewise.
2955 1.1.1.19 mrg * include/ext/new_allocator.h: Likewise.
2956 1.1.1.19 mrg * include/ext/pool_allocator.h: Likewise.
2957 1.1.1.19 mrg * include/ext/throw_allocator.h: Likewise.
2958 1.1.1.19 mrg * include/std/scoped_allocator: Likewise.
2959 1.1.1.19 mrg * libsupc++/eh_alloc.cc: Likewise.
2960 1.1.1.19 mrg * include/std/future: Add nodiscard attribute to async.
2961 1.1.1.19 mrg * libsupc++/new: Add nodiscard attribute to new.
2962 1.1.1.19 mrg
2963 1.1.1.19 mrg 2019-01-18 Jonathan Wakely <jwakely (a] redhat.com>
2964 1.1.1.18 mrg
2965 1.1.1.18 mrg PR libstdc++/87514
2966 1.1.1.18 mrg PR libstdc++/87520
2967 1.1.1.18 mrg PR libstdc++/88782
2968 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Export new symbol.
2969 1.1.1.18 mrg * include/bits/shared_ptr.h
2970 1.1.1.18 mrg (shared_ptr(_Sp_make_shared_tag, const Alloc&, Args&&...))
2971 1.1.1.18 mrg (allocate_shared): Change to use new tag type.
2972 1.1.1.19 mrg * include/bits/shared_ptr_base.h (_Sp_make_shared_tag::_S_eq):
2973 1.1.1.19 mrg Declare new member function.
2974 1.1.1.18 mrg (_Sp_alloc_shared_tag): Define new type.
2975 1.1.1.18 mrg (_Sp_counted_ptr_inplace): Declare __shared_count<_Lp> as a friend.
2976 1.1.1.19 mrg (_Sp_counted_ptr_inplace::_M_get_deleter) [!__cpp_rtti]: Use
2977 1.1.1.19 mrg _Sp_make_shared_tag::_S_eq to check type_info.
2978 1.1.1.18 mrg (__shared_count(Ptr, Deleter),__shared_count(Ptr, Deleter, Alloc)):
2979 1.1.1.18 mrg Constrain to prevent being called with _Sp_alloc_shared_tag.
2980 1.1.1.18 mrg (__shared_count(_Sp_make_shared_tag, const _Alloc&, Args&&...)):
2981 1.1.1.18 mrg Replace constructor with ...
2982 1.1.1.18 mrg (__shared_count(Tp*&, _Sp_alloc_shared_tag<_Alloc>, Args&&...)): Use
2983 1.1.1.18 mrg reference parameter so address of the new object can be returned to
2984 1.1.1.18 mrg the caller. Obtain the allocator from the tag type.
2985 1.1.1.18 mrg (__shared_ptr(_Sp_make_shared_tag, const Alloc&, Args&&...)): Replace
2986 1.1.1.18 mrg constructor with ...
2987 1.1.1.18 mrg (__shared_ptr(_Sp_alloc_shared_tag<Alloc>, Args&&...)): Pass _M_ptr
2988 1.1.1.18 mrg to the __shared_count constructor.
2989 1.1.1.18 mrg (__allocate_shared): Change to use new tag type.
2990 1.1.1.19 mrg * src/c++11/shared_ptr.cc (_Sp_make_shared_tag::_S_eq): Define.
2991 1.1.1.18 mrg
2992 1.1.1.19 mrg 2019-01-17 Jonathan Wakely <jwakely (a] redhat.com>
2993 1.1.1.18 mrg
2994 1.1.1.19 mrg * src/c++17/fs_ops.cc
2995 1.1.1.19 mrg (equivalent(const path&, const path&, error_code&))
2996 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Use GetFileInformationByHandle to
2997 1.1.1.19 mrg compare files instead of relying on incomplete info returned by stat.
2998 1.1.1.18 mrg
2999 1.1.1.19 mrg PR libstdc++/88884
3000 1.1.1.19 mrg * src/c++17/fs_ops.cc (absolute(const path&, error_code&)): Do nothing
3001 1.1.1.19 mrg if the path is already absolute.
3002 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Normalize root-directory.
3003 1.1.1.19 mrg [!_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Pass error_code to current_path.
3004 1.1.1.18 mrg
3005 1.1.1.19 mrg PR libstdc++/88881
3006 1.1.1.19 mrg * src/c++17/fs_ops.cc (canonical(const path&, error_code&))
3007 1.1.1.19 mrg [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Normalize path, to match behaviour
3008 1.1.1.19 mrg of filesystem::exists.
3009 1.1.1.19 mrg (create_directories(const path&, error_code&)): Add assertions.
3010 1.1.1.19 mrg (status(const path&, error_code&)) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]:
3011 1.1.1.19 mrg Add workaround for bug in _wstat for paths with trailing slash.
3012 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/create_directories.cc: Adjust
3013 1.1.1.19 mrg for expected behaviour on mingw.
3014 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/create_directories.cc:
3015 1.1.1.19 mrg Likewise.
3016 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/temp_directory_path.cc: Use
3017 1.1.1.19 mrg "TMP" instead of "TMPDIR" and clean environment before each test. Do
3018 1.1.1.19 mrg not test permissions on mingw targets.
3019 1.1.1.19 mrg
3020 1.1.1.19 mrg 2019-01-16 Jonathan Wakely <jwakely (a] redhat.com>
3021 1.1.1.19 mrg
3022 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Add exports for fstream
3023 1.1.1.19 mrg constructors and open members taking wide strings. Fix patterns for
3024 1.1.1.19 mrg filesystem::path members to match wstring_view parameters. Add
3025 1.1.1.19 mrg exports for shared_ptr members used by directory iterators.
3026 1.1.1.19 mrg * src/c++17/fs_ops.cc (remove(const path&, error_code&)): Clear the
3027 1.1.1.19 mrg error code parameter if the file doesn't exist.
3028 1.1.1.19 mrg * src/filesystem/ops.cc (remove(const path&, error_code&)):
3029 1.1.1.19 mrg Likewise.
3030 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/canonical.cc: Fix expected
3031 1.1.1.19 mrg values for mingw targets, where "/" is not an absolute path. Do not
3032 1.1.1.19 mrg test symlinks on mingw targets.
3033 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
3034 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/copy.cc: Do not test symlinks
3035 1.1.1.19 mrg on mingw targets.
3036 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
3037 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/create_directories.cc: Check
3038 1.1.1.19 mrg that each component of the path is created.
3039 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/create_directories.cc:
3040 1.1.1.19 mrg Likewise.
3041 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/exists.cc: Do not test
3042 1.1.1.19 mrg permissions on mingw targets.
3043 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
3044 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
3045 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
3046 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/permissions.cc: XFAIL for
3047 1.1.1.19 mrg mingw targets.
3048 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/permissions.cc:
3049 1.1.1.19 mrg Likewise.
3050 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/remove.cc: Do not test
3051 1.1.1.19 mrg symlinks or permissions on mingw targets.
3052 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/remove.cc: Likewise.
3053 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Do not test
3054 1.1.1.19 mrg symlinks on mingw targets.
3055 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/remove_all.cc:
3056 1.1.1.19 mrg Likewise.
3057 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/status.cc: Do not test
3058 1.1.1.19 mrg permissions on mingw targets.
3059 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/weakly_canonical.cc: Do not
3060 1.1.1.19 mrg test symlinks on mingw targets.
3061 1.1.1.19 mrg * testsuite/experimental/filesystem/operations/space.cc: Fix test
3062 1.1.1.19 mrg for mingw targets.
3063 1.1.1.19 mrg
3064 1.1.1.19 mrg 2019-02-14 Ulrich Drepper <drepper (a] redhat.com>
3065 1.1.1.19 mrg
3066 1.1.1.19 mrg PR libstdc++/88738
3067 1.1.1.19 mrg Warn about unused comparisons of shared_ptr/unique_ptr
3068 1.1.1.19 mrg * include/bits/c++config [_GLIBCXX_NODISCARD]: Define.
3069 1.1.1.19 mrg * include/bits/shared_ptr.h: Use it for operator ==, !=,
3070 1.1.1.19 mrg <, <=, >, >= for shared_ptr.
3071 1.1.1.19 mrg * include/bits/unique_ptr.h: Likewise for unique_ptr.
3072 1.1.1.19 mrg
3073 1.1.1.19 mrg 2019-01-15 Jonathan Wakely <jwakely (a] redhat.com>
3074 1.1.1.19 mrg
3075 1.1.1.19 mrg * include/bits/shared_ptr_base.h (__cpp_lib_shared_ptr_arrays): Define
3076 1.1.1.19 mrg as 201611L, because P0497R0 changes are supported.
3077 1.1.1.19 mrg * include/std/version (__cpp_lib_shared_ptr_arrays): Likewise.
3078 1.1.1.19 mrg
3079 1.1.1.19 mrg * include/bits/erase_if.h [__cplusplus > 201703L]
3080 1.1.1.19 mrg (__cpp_lib_erase_if): Only define for C++2a.
3081 1.1.1.19 mrg * include/std/iterator [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
3082 1.1.1.19 mrg (__cpp_lib_null_iterators): Define.
3083 1.1.1.19 mrg * include/std/version [__cplusplus >= 201402L && !_GLIBCXX_DEBUG]
3084 1.1.1.19 mrg (__cpp_lib_null_iterators): Define.
3085 1.1.1.19 mrg [__cpp_impl_destroying_delete] (__cpp_lib_destroying_delete): Define.
3086 1.1.1.18 mrg
3087 1.1.1.19 mrg * doc/xml/manual/status_cxx2017.xml: Document P0032R3 and P0307R2
3088 1.1.1.19 mrg status.
3089 1.1.1.19 mrg * include/bits/stl_uninitialized.h (__cpp_lib_raw_memory_algorithms):
3090 1.1.1.19 mrg Define.
3091 1.1.1.19 mrg * include/std/any (__cpp_lib_any): Define as 201606L, because P0032R3
3092 1.1.1.19 mrg changes are supported.
3093 1.1.1.19 mrg * include/std/optional (__cpp_lib_optional): Likewise.
3094 1.1.1.19 mrg * include/std/variant (__cpp_lib_variant): Likewise.
3095 1.1.1.19 mrg * include/std/version [!__STRICT_ANSI__]
3096 1.1.1.19 mrg (__cpp_lib_uncaught_exceptions): Define as long integer.
3097 1.1.1.19 mrg [__cplusplus >= 201703L] (__cpp_lib_any)
3098 1.1.1.19 mrg (__cpp_lib_raw_memory_algorithms, __cpp_lib_uncaught_exceptions)
3099 1.1.1.19 mrg (__cpp_lib_variant): Define for C++17.
3100 1.1.1.19 mrg [__cplusplus >= 201703L] (__cpp_lib_optional): Update value and define
3101 1.1.1.19 mrg as long integer.
3102 1.1.1.19 mrg * libsupc++/exception (__cpp_lib_uncaught_exceptions): Define as long
3103 1.1.1.19 mrg integer.
3104 1.1.1.18 mrg
3105 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Update P1123R0 status.
3106 1.1.1.18 mrg
3107 1.1.1.19 mrg 2019-01-12 Jonathan Wakely <jwakely (a] redhat.com>
3108 1.1.1.18 mrg
3109 1.1.1.19 mrg PR libstdc++/88811
3110 1.1.1.19 mrg PR libstdc++/83306
3111 1.1.1.19 mrg * src/filesystem/path.cc: Fix typo. If first path is empty, show []
3112 1.1.1.19 mrg before second path.
3113 1.1.1.19 mrg * testsuite/experimental/filesystem/filesystem_error/cons.cc: New
3114 1.1.1.19 mrg test.
3115 1.1.1.18 mrg
3116 1.1.1.19 mrg 2019-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3117 1.1.1.18 mrg
3118 1.1.1.19 mrg * doc/xml/manual/intro.xml: Include new section.
3119 1.1.1.19 mrg * doc/xml/manual/status_cxx2017.xml: Document more
3120 1.1.1.19 mrg implementation-defined properties of the library.
3121 1.1.1.19 mrg * doc/xml/manual/status_cxx2020.xml: Document C++2a status.
3122 1.1.1.19 mrg * doc/html/*: Regenerate.
3123 1.1.1.19 mrg
3124 1.1.1.19 mrg * include/bits/refwrap.h [__cplusplus > 201703L]
3125 1.1.1.19 mrg (_Refwrap_base_arg1, _Refwrap_base_arg2, _Reference_wrapper_base)
3126 1.1.1.19 mrg (_Reference_wrapper_base_memfun): Do not define for C++2a.
3127 1.1.1.19 mrg (reference_wrapper): Do not derive from _Reference_wrapper_base_memfun
3128 1.1.1.19 mrg for C++2a.
3129 1.1.1.19 mrg (reference_wrapper::operator()): Add static assertion.
3130 1.1.1.19 mrg * testsuite/20_util/reference_wrapper/incomplete.cc: New test.
3131 1.1.1.19 mrg
3132 1.1.1.19 mrg * include/std/chrono (duration_values::zero(), duration_values::min())
3133 1.1.1.19 mrg (duration_values::max()): Add noexcept.
3134 1.1.1.19 mrg (duration::zero(), duration::min(), duration::max()): Likewise.
3135 1.1.1.19 mrg (time_point::zero(), time_point::min(), time_point::max()): Likewise.
3136 1.1.1.19 mrg * testsuite/20_util/duration/requirements/noexcept.cc: New test.
3137 1.1.1.19 mrg * testsuite/20_util/time_point/requirements/noexcept.cc: New test.
3138 1.1.1.19 mrg
3139 1.1.1.19 mrg * include/std/version (__cpp_lib_erase_if): Move to C++20 group.
3140 1.1.1.19 mrg
3141 1.1.1.19 mrg 2019-01-11 Jakub Jelinek <jakub (a] redhat.com>
3142 1.1.1.18 mrg
3143 1.1.1.19 mrg * include/std/type_traits (__cpp_lib_is_constant_evaluated): Define.
3144 1.1.1.19 mrg * include/std/version (__cpp_lib_is_constant_evaluated): Define.
3145 1.1.1.19 mrg
3146 1.1.1.19 mrg 2019-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3147 1.1.1.19 mrg
3148 1.1.1.19 mrg PR libstdc++/88802
3149 1.1.1.19 mrg * include/bits/functional_hash.h (hash<nullptr_t>): Define
3150 1.1.1.19 mrg specialization for C++17 (P0513R0, LWG 2817).
3151 1.1.1.19 mrg * testsuite/20_util/hash/nullptr.cc: New test.
3152 1.1.1.19 mrg
3153 1.1.1.19 mrg PR libstdc++/88125
3154 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.6): Remove unused duplicate
3155 1.1.1.19 mrg pattern for std::basic_stringbuf::str().
3156 1.1.1.19 mrg
3157 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4): Correct recent changes to
3158 1.1.1.19 mrg basic_ostream::operator<< patterns.
3159 1.1.1.18 mrg
3160 1.1.1.18 mrg 2019-01-10 Jonathan Wakely <jwakely (a] redhat.com>
3161 1.1.1.18 mrg
3162 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/last_write_time.cc: Fix
3163 1.1.1.19 mrg test failures on targets with 32-bit time_t.
3164 1.1.1.19 mrg
3165 1.1.1.19 mrg * include/bits/erase_if.h: Define __cpp_lib_erase_if.
3166 1.1.1.19 mrg * include/std/deque: Likewise.
3167 1.1.1.19 mrg * include/std/forward_list: Likewise.
3168 1.1.1.19 mrg * include/std/list: Likewise.
3169 1.1.1.19 mrg * include/std/string: Likewise.
3170 1.1.1.19 mrg * include/std/vector: Likewise.
3171 1.1.1.19 mrg * include/std/version: Likewise.
3172 1.1.1.19 mrg * testsuite/21_strings/basic_string/erasure.cc: Test macro.
3173 1.1.1.19 mrg * testsuite/23_containers/deque/erasure.cc: Likewise.
3174 1.1.1.19 mrg * testsuite/23_containers/forward_list/erasure.cc: Likewise.
3175 1.1.1.19 mrg * testsuite/23_containers/list/erasure.cc: Likewise.
3176 1.1.1.19 mrg * testsuite/23_containers/map/erasure.cc: Likewise.
3177 1.1.1.19 mrg * testsuite/23_containers/set/erasure.cc: Likewise.
3178 1.1.1.19 mrg * testsuite/23_containers/unordered_map/erasure.cc: Likewise.
3179 1.1.1.19 mrg * testsuite/23_containers/unordered_set/erasure.cc: Likewise.
3180 1.1.1.19 mrg * testsuite/23_containers/vector/erasure.cc: Likewise.
3181 1.1.1.19 mrg
3182 1.1.1.19 mrg * include/experimental/internet [AI_NUMERICSERV]
3183 1.1.1.19 mrg (resolver_base::numeric_service): Define conditionally.
3184 1.1.1.19 mrg * testsuite/experimental/net/internet/resolver/base.cc: Test it
3185 1.1.1.19 mrg conditionally.
3186 1.1.1.19 mrg * testsuite/experimental/net/internet/resolver/ops/lookup.cc:
3187 1.1.1.19 mrg Likewise.
3188 1.1.1.19 mrg
3189 1.1.1.19 mrg 2019-01-10 Ville Voutilainen <ville.voutilainen (a] gmail.com>
3190 1.1.1.19 mrg Jonathan Wakely <jwakely (a] redhat.com>
3191 1.1.1.19 mrg
3192 1.1.1.19 mrg Implement LWG 2221
3193 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4): Tighten patterns.
3194 1.1.1.19 mrg (GLIBCXX_3.4.26): Add new exports.
3195 1.1.1.19 mrg * include/Makefile.am: Add ostream-inst.cc. Move string-inst.cc to
3196 1.1.1.19 mrg correct list of sources.
3197 1.1.1.19 mrg * include/Makefile.in: Regenerate.
3198 1.1.1.19 mrg * include/std/ostream (operator<<(nullptr_t)): New member function.
3199 1.1.1.19 mrg * src/c++17/ostream-inst.cc: New file.
3200 1.1.1.19 mrg * testsuite/27_io/basic_ostream/inserters_other/char/lwg2221.cc: New
3201 1.1.1.19 mrg test.
3202 1.1.1.19 mrg
3203 1.1.1.19 mrg 2019-01-10 Jonathan Wakely <jwakely (a] redhat.com>
3204 1.1.1.18 mrg
3205 1.1.1.18 mrg * testsuite/util/testsuite_fs.h (nonexistent_path): Include name
3206 1.1.1.18 mrg of the source file containing the caller.
3207 1.1.1.18 mrg * testsuite/27_io/filesystem/iterators/directory_iterator.cc: Remove
3208 1.1.1.18 mrg directories created by test.
3209 1.1.1.18 mrg * testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
3210 1.1.1.18 mrg Likewise.
3211 1.1.1.18 mrg * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
3212 1.1.1.18 mrg Likewise.
3213 1.1.1.18 mrg * testsuite/experimental/filesystem/iterators/
3214 1.1.1.18 mrg recursive_directory_iterator.cc: Likewise.
3215 1.1.1.18 mrg
3216 1.1.1.19 mrg 2019-01-10 Jakub Jelinek <jakub (a] redhat.com>
3217 1.1.1.18 mrg
3218 1.1.1.19 mrg PR tree-optimization/88775
3219 1.1.1.19 mrg * include/bits/stl_function.h (greater<_Tp*>::operator(),
3220 1.1.1.19 mrg less<_Tp*>::operator(), greater_equal<_Tp*>::operator(),
3221 1.1.1.19 mrg less_equal<_Tp*>::operator()): Use __builtin_is_constant_evaluated
3222 1.1.1.19 mrg instead of __builtin_constant_p if available. Don't bother with
3223 1.1.1.19 mrg the pointer comparison in C++11 and earlier.
3224 1.1.1.18 mrg
3225 1.1.1.19 mrg 2019-01-09 Sandra Loosemore <sandra (a] codesourcery.com>
3226 1.1.1.18 mrg
3227 1.1.1.19 mrg PR other/16615
3228 1.1.1.18 mrg
3229 1.1.1.19 mrg * include/ext/bitmap_allocator.h: Mechanically replace "can not"
3230 1.1.1.19 mrg with "cannot".
3231 1.1.1.18 mrg
3232 1.1.1.18 mrg 2019-01-09 Jonathan Wakely <jwakely (a] redhat.com>
3233 1.1.1.18 mrg
3234 1.1.1.19 mrg * testsuite/libstdc++-prettyprinters/cxx17.cc: Fix expected output
3235 1.1.1.19 mrg for filesystem::path. Give variables more distinctive names.
3236 1.1.1.18 mrg
3237 1.1.1.19 mrg * include/std/optional (_Optional_payload_base::_M_copy_assign): New
3238 1.1.1.19 mrg member function to perform non-trivial assignment.
3239 1.1.1.19 mrg (_Optional_payload_base::_M_move_assign): Likewise.
3240 1.1.1.19 mrg (_Optional_payload<T, true, false, true>::operator=)
3241 1.1.1.19 mrg (_Optional_payload<T, true, true, false>::operator=)
3242 1.1.1.19 mrg (_Optional_payload<T, true, false, false>::operator=): Call
3243 1.1.1.19 mrg _M_copy_assign and/or _M_move_assign to do non-trivial assignments.
3244 1.1.1.19 mrg
3245 1.1.1.19 mrg PR libstdc++/88204
3246 1.1.1.19 mrg * testsuite/26_numerics/complex/operators/more_constexpr.cc: Do not
3247 1.1.1.19 mrg test std::complex<long double> if long double format is IBM128.
3248 1.1.1.19 mrg * testsuite/26_numerics/complex/requirements/more_constexpr.cc:
3249 1.1.1.19 mrg Likewise.
3250 1.1.1.19 mrg
3251 1.1.1.19 mrg 2019-01-08 Jonathan Wakely <jwakely (a] redhat.com>
3252 1.1.1.19 mrg
3253 1.1.1.19 mrg * testsuite/libstdc++-prettyprinters/compat.cc: Test printer support
3254 1.1.1.19 mrg for old std::unique_ptr layout.
3255 1.1.1.19 mrg * testsuite/libstdc++-prettyprinters/cxx17.cc: Fix std::variant test
3256 1.1.1.19 mrg to become valueless. Add filesystem::path tests.
3257 1.1.1.18 mrg
3258 1.1.1.18 mrg PR libstdc++/87855
3259 1.1.1.18 mrg * include/std/optional (_Optional_payload_base): New class template
3260 1.1.1.18 mrg for common code hoisted from _Optional_payload specializations. Use
3261 1.1.1.18 mrg a template for the union, to allow a partial specialization for
3262 1.1.1.18 mrg types with non-trivial destructors. Add constructors for in-place
3263 1.1.1.18 mrg initialization to the union.
3264 1.1.1.18 mrg (_Optional_payload(bool, const _Optional_payload&)): Use _M_construct
3265 1.1.1.18 mrg to perform non-trivial copy construction, instead of relying on
3266 1.1.1.18 mrg non-standard copy elision in a delegating constructor.
3267 1.1.1.18 mrg (_Optional_payload(bool, _Optional_payload&&)): Likewise for
3268 1.1.1.18 mrg non-trivial move construction.
3269 1.1.1.18 mrg (_Optional_payload): Derive from _Optional_payload_base and use it
3270 1.1.1.18 mrg for everything except the non-trivial assignment operators, which are
3271 1.1.1.18 mrg defined as needed.
3272 1.1.1.18 mrg (_Optional_payload<false, C, M>): Derive from the specialization
3273 1.1.1.18 mrg _Optional_payload<true, false, false> and add a destructor.
3274 1.1.1.18 mrg (_Optional_base_impl::_M_destruct, _Optional_base_impl::_M_reset):
3275 1.1.1.18 mrg Forward to corresponding members of _Optional_payload.
3276 1.1.1.18 mrg (_Optional_base_impl::_M_is_engaged, _Optional_base_impl::_M_get):
3277 1.1.1.18 mrg Hoist common members from _Optional_base.
3278 1.1.1.18 mrg (_Optional_base): Make all members and base class public.
3279 1.1.1.18 mrg (_Optional_base::_M_get, _Optional_base::_M_is_engaged): Move to
3280 1.1.1.18 mrg _Optional_base_impl.
3281 1.1.1.18 mrg * python/libstdcxx/v6/printers.py (StdExpOptionalPrinter): Add
3282 1.1.1.18 mrg support for new std::optional layout.
3283 1.1.1.18 mrg * testsuite/libstdc++-prettyprinters/compat.cc: New test.
3284 1.1.1.18 mrg
3285 1.1.1.19 mrg PR libstdc++/88066
3286 1.1.1.19 mrg * include/bits/locale_conv.h: Use <> for includes not "".
3287 1.1.1.19 mrg * include/ext/random: Likewise.
3288 1.1.1.19 mrg * include/ext/vstring.h: Likewise.
3289 1.1.1.18 mrg
3290 1.1.1.19 mrg 2019-01-08 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
3291 1.1.1.18 mrg
3292 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4): Tighten existing patterns.
3293 1.1.1.19 mrg (GLIBCXX_3.4.21): Likewise.
3294 1.1.1.18 mrg
3295 1.1.1.19 mrg 2019-01-08 Jonathan Wakely <jwakely (a] redhat.com>
3296 1.1.1.18 mrg
3297 1.1.1.19 mrg PR libstdc++/88749
3298 1.1.1.19 mrg * src/filesystem/ops.cc (last_write_time): Fix preprocessor condition
3299 1.1.1.19 mrg to match the one that controls whether utimbuf and utime are declared.
3300 1.1.1.18 mrg
3301 1.1.1.19 mrg 2019-01-07 Jonathan Wakely <jwakely (a] redhat.com>
3302 1.1.1.18 mrg
3303 1.1.1.19 mrg PR libstdc++/87787
3304 1.1.1.19 mrg * include/bits/char_traits.h (char_traits::move): Do not pass null
3305 1.1.1.19 mrg pointers to memmove.
3306 1.1.1.19 mrg * include/bits/locale_facets.h
3307 1.1.1.19 mrg (ctype<char>::widen(const char*, const char*, char*)): Do not
3308 1.1.1.19 mrg pass null pointers to memcpy.
3309 1.1.1.19 mrg (ctype<char>::narrow(const char*, const char*, char, char*)):
3310 1.1.1.19 mrg Likewise.
3311 1.1.1.19 mrg (ctype<char>::do_widen(const char*, const char*, char*)):
3312 1.1.1.19 mrg Likewise.
3313 1.1.1.19 mrg (ctype<char>::do_narrow(const char*, const char*, char, char*)):
3314 1.1.1.19 mrg Likewise.
3315 1.1.1.18 mrg
3316 1.1.1.19 mrg * doc/xml/manual/spine.xml: Update copyright years.
3317 1.1.1.19 mrg * doc/xml/manual/status_cxx2017.xml: Adjust note about -lstdc++fs.
3318 1.1.1.19 mrg * doc/xml/manual/using.xml: Remove requirement to link with -lstdc++fs
3319 1.1.1.19 mrg for C++17 filesystem library.
3320 1.1.1.19 mrg * doc/html/*: Regenerate.
3321 1.1.1.18 mrg
3322 1.1.1.19 mrg * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for truncate.
3323 1.1.1.19 mrg * config.h.in: Regenerate.
3324 1.1.1.19 mrg * config/abi/pre/gnu.ver: Order patterns for filesystem operations
3325 1.1.1.19 mrg alphabetically and add missing entries for copy_symlink,
3326 1.1.1.19 mrg hard_link_count, rename, and resize_file.
3327 1.1.1.14 mrg * configure: Regenerate.
3328 1.1.1.19 mrg * src/c++17/fs_ops.cc (resize_file): Remove #if so posix::truncate is
3329 1.1.1.19 mrg used unconditionally.
3330 1.1.1.19 mrg * src/filesystem/ops-common.h (__gnu_posix::truncate)
3331 1.1.1.19 mrg [!_GLIBCXX_HAVE_TRUNCATE]: Provide fallback definition that only
3332 1.1.1.19 mrg supports truncating to zero length.
3333 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/all.cc: New test.
3334 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/resize_file.cc: New test.
3335 1.1.1.19 mrg
3336 1.1.1.19 mrg 2019-01-06 Jonathan Wakely <jwakely (a] redhat.com>
3337 1.1.1.19 mrg
3338 1.1.1.19 mrg PR libstdc++/86756
3339 1.1.1.19 mrg * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for utime and
3340 1.1.1.19 mrg lstat and define _GLIBCXX_USE_UTIME and _GLIBCXX_USE_LSTAT.
3341 1.1.1.19 mrg * config.h.in: Regenerate.
3342 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Export symbols for
3343 1.1.1.19 mrg remaining std::filesystem types and functions.
3344 1.1.1.18 mrg * configure: Regenerate.
3345 1.1.1.19 mrg * src/c++17/Makefile.am: Add C++17 filesystem sources.
3346 1.1.1.19 mrg * src/c++17/Makefile.in: Regenerate.
3347 1.1.1.19 mrg * src/c++17/cow-fs_dir.cc: Move src/filesystem/cow-std-dir.cc to
3348 1.1.1.19 mrg here, and change name of included file.
3349 1.1.1.19 mrg * src/c++17/cow-fs_ops.cc: Move src/filesystem/cow-std-ops.cc to
3350 1.1.1.19 mrg here, and change name of included file.
3351 1.1.1.19 mrg * src/c++17/fs_dir.cc: Move src/filesystem/std-dir.cc to here. Change
3352 1.1.1.19 mrg path to dir-common.h.
3353 1.1.1.19 mrg * src/c++17/fs_ops.cc: Move src/filesystem/std-ops.cc to here. Change
3354 1.1.1.19 mrg path to ops-common.h. Disable -Wunused-parameter warnings.
3355 1.1.1.19 mrg (internal_file_clock): Define unconditionally.
3356 1.1.1.19 mrg [!_GLIBCXX_HAVE_SYS_STAT_H] (internal_file_clock::from_stat): Do not
3357 1.1.1.19 mrg define.
3358 1.1.1.19 mrg (do_copy_file, do_space): Move definitions to ops.common.h.
3359 1.1.1.19 mrg (copy, file_size, hard_link_count, last_write_time, space): Only
3360 1.1.1.19 mrg perform operation when _GLIBCXX_HAVE_SYS_STAT_H is defined, otherwise
3361 1.1.1.19 mrg report an error.
3362 1.1.1.19 mrg (last_write_time, read_symlink): Remove unused attributes from
3363 1.1.1.19 mrg parameters.
3364 1.1.1.19 mrg * src/filesystem/Makefile.am: Remove C++17 filesystem sources.
3365 1.1.1.19 mrg * src/filesystem/Makefile.in: Regenerate.
3366 1.1.1.19 mrg * src/filesystem/cow-std-dir.cc: Move to src/c++17/cow-fs_dir.cc.
3367 1.1.1.19 mrg * src/filesystem/cow-std-ops.cc: Move to src/c++17/cow-fs_ops.cc.
3368 1.1.1.19 mrg * src/filesystem/std-dir.cc: Move to src/c++17/fs_dir.cc.
3369 1.1.1.19 mrg * src/filesystem/std-ops.cc: Move to src/c++17/fs_ops.cc.
3370 1.1.1.19 mrg * src/filesystem/dir-common.h [!_GLIBCXX_HAVE_DIRENT_H]: Define
3371 1.1.1.19 mrg dummy types and functions instead of using #error.
3372 1.1.1.19 mrg * src/filesystem/dir.cc [!_GLIBCXX_HAVE_DIRENT_H]: Use #error.
3373 1.1.1.19 mrg * src/filesystem/ops-common.h [!_GLIBCXX_USE_LSTAT] (lstat): Define
3374 1.1.1.19 mrg in terms of stat.
3375 1.1.1.19 mrg [!_GLIBCXX_HAVE_UNISTD_H]: Define dummy types and functions.
3376 1.1.1.19 mrg (do_copy_file, do_space): Move definitions here from std-ops.cc.
3377 1.1.1.19 mrg * src/filesystem/ops.cc: Adjust calls to do_copy_file and do_space
3378 1.1.1.19 mrg to account for new namespace.
3379 1.1.1.19 mrg * testsuite/27_io/filesystem/directory_entry/86597.cc: Remove
3380 1.1.1.19 mrg -lstdc++fs from dg-options.
3381 1.1.1.19 mrg * testsuite/27_io/filesystem/directory_entry/lwg3171.cc: Likewise.
3382 1.1.1.19 mrg * testsuite/27_io/filesystem/file_status/1.cc: Likewise.
3383 1.1.1.19 mrg * testsuite/27_io/filesystem/filesystem_error/cons.cc: Likewise.
3384 1.1.1.19 mrg * testsuite/27_io/filesystem/filesystem_error/copy.cc: Likewise.
3385 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/directory_iterator.cc:
3386 1.1.1.18 mrg Likewise.
3387 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/pop.cc: Likewise.
3388 1.1.1.19 mrg * testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
3389 1.1.1.18 mrg Likewise.
3390 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/absolute.cc: Likewise.
3391 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/canonical.cc: Likewise.
3392 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/copy.cc: Likewise.
3393 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/copy_file.cc: Likewise.
3394 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/create_directories.cc:
3395 1.1.1.19 mrg Likewise.
3396 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/create_directory.cc: Likewise.
3397 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/create_symlink.cc: Likewise.
3398 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/current_path.cc: Likewise.
3399 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/equivalent.cc: Likewise.
3400 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/exists.cc: Likewise.
3401 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/file_size.cc: Likewise.
3402 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/is_empty.cc: Likewise.
3403 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/last_write_time.cc: Likewise.
3404 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/permissions.cc: Likewise.
3405 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/proximate.cc: Likewise.
3406 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/read_symlink.cc: Likewise.
3407 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/relative.cc: Likewise.
3408 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/remove.cc: Likewise.
3409 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/remove_all.cc: Likewise.
3410 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/space.cc: Likewise.
3411 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/status.cc: Likewise.
3412 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/symlink_status.cc: Likewise.
3413 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/temp_directory_path.cc:
3414 1.1.1.19 mrg Likewise.
3415 1.1.1.19 mrg * testsuite/27_io/filesystem/operations/weakly_canonical.cc: Likewise.
3416 1.1.1.19 mrg
3417 1.1.1.19 mrg
3418 1.1.1.19 mrg PR libstdc++/86756
3419 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4): Make various patterns for
3420 1.1.1.19 mrg typeinfo and vtables less greedy.
3421 1.1.1.19 mrg (GLIBCXX_3.4.26): Export symbols for std::filesystem::path.
3422 1.1.1.19 mrg * src/c++17/Makefile.am: Add fs_path.cc and cow-fs_path.cc.
3423 1.1.1.19 mrg * src/c++17/Makefile.in: Regenerate.
3424 1.1.1.19 mrg * src/c++17/cow-fs_path.cc: Move src/filesystem/cow-std-path.cc to
3425 1.1.1.19 mrg here, and change name of included file.
3426 1.1.1.19 mrg * src/c++17/fs_path.cc: Move src/filesystem/std-path.cc to here.
3427 1.1.1.19 mrg * src/filesystem/Makefile.am: Remove std-path.cc and cow-std-path.cc
3428 1.1.1.19 mrg from sources.
3429 1.1.1.19 mrg * src/filesystem/Makefile.in: Regenerate.
3430 1.1.1.19 mrg * src/filesystem/cow-std-path.cc: Move to src/c++17/cow-fs_path.cc.
3431 1.1.1.19 mrg * src/filesystem/std-path.cc: Move to src/c++17/fs_path.cc.
3432 1.1.1.19 mrg * testsuite/27_io/filesystem/path/append/path.cc: Remove -lstdc++fs
3433 1.1.1.19 mrg from dg-options and remove dg-require-filesystem-ts.
3434 1.1.1.19 mrg * testsuite/27_io/filesystem/path/append/source.cc: Likewise.
3435 1.1.1.19 mrg * testsuite/27_io/filesystem/path/assign/assign.cc: Likewise.
3436 1.1.1.19 mrg * testsuite/27_io/filesystem/path/assign/copy.cc: Likewise.
3437 1.1.1.19 mrg * testsuite/27_io/filesystem/path/compare/compare.cc: Likewise.
3438 1.1.1.19 mrg * testsuite/27_io/filesystem/path/compare/lwg2936.cc: Likewise.
3439 1.1.1.19 mrg * testsuite/27_io/filesystem/path/compare/path.cc: Likewise.
3440 1.1.1.19 mrg * testsuite/27_io/filesystem/path/compare/strings.cc: Likewise.
3441 1.1.1.19 mrg * testsuite/27_io/filesystem/path/concat/path.cc: Likewise.
3442 1.1.1.19 mrg * testsuite/27_io/filesystem/path/concat/strings.cc: Likewise.
3443 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/80762.cc: Likewise.
3444 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/copy.cc: Likewise.
3445 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/default.cc: Likewise.
3446 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/format.cc: Likewise.
3447 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/locale.cc: Likewise.
3448 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/range.cc: Likewise.
3449 1.1.1.19 mrg * testsuite/27_io/filesystem/path/construct/string_view.cc: Likewise.
3450 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/extension.cc: Likewise.
3451 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/filename.cc: Likewise.
3452 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/parent_path.cc: Likewise.
3453 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/relative_path.cc: Likewise.
3454 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/root_directory.cc:
3455 1.1.1.19 mrg Likewise.
3456 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/root_name.cc: Likewise.
3457 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/root_path.cc: Likewise.
3458 1.1.1.19 mrg * testsuite/27_io/filesystem/path/decompose/stem.cc: Likewise.
3459 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generation/normal.cc: Likewise.
3460 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generation/normal2.cc: Likewise.
3461 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generation/proximate.cc: Likewise.
3462 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generation/relative.cc: Likewise.
3463 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generic/generic_string.cc: Likewise.
3464 1.1.1.19 mrg * testsuite/27_io/filesystem/path/itr/components.cc: Likewise.
3465 1.1.1.19 mrg * testsuite/27_io/filesystem/path/itr/traversal.cc: Likewise.
3466 1.1.1.19 mrg * testsuite/27_io/filesystem/path/modifiers/clear.cc: Likewise.
3467 1.1.1.19 mrg * testsuite/27_io/filesystem/path/modifiers/make_preferred.cc:
3468 1.1.1.18 mrg Likewise.
3469 1.1.1.19 mrg * testsuite/27_io/filesystem/path/modifiers/remove_filename.cc:
3470 1.1.1.18 mrg Likewise.
3471 1.1.1.19 mrg * testsuite/27_io/filesystem/path/modifiers/replace_extension.cc:
3472 1.1.1.14 mrg Likewise.
3473 1.1.1.19 mrg * testsuite/27_io/filesystem/path/modifiers/replace_filename.cc:
3474 1.1.1.18 mrg Likewise.
3475 1.1.1.19 mrg * testsuite/27_io/filesystem/path/modifiers/swap.cc: Likewise.
3476 1.1.1.19 mrg * testsuite/27_io/filesystem/path/native/string.cc: Likewise.
3477 1.1.1.19 mrg * testsuite/27_io/filesystem/path/nonmember/append.cc: Likewise.
3478 1.1.1.19 mrg * testsuite/27_io/filesystem/path/nonmember/hash_value.cc: Likewise.
3479 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/empty.cc: Likewise.
3480 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_extension.cc: Likewise.
3481 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_filename.cc: Likewise.
3482 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_parent_path.cc: Likewise.
3483 1.1.1.19 mrg * testsuite/27_io/filesystem/path/query/has_relative_path.cc: Likewise.
3484 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_root_directory.cc:
3485 1.1.1.18 mrg Likewise.
3486 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_root_name.cc: Likewise.
3487 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_root_path.cc: Likewise.
3488 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise.
3489 1.1.1.19 mrg * testsuite/27_io/filesystem/path/query/is_absolute.cc: Likewise.
3490 1.1.1.18 mrg * testsuite/27_io/filesystem/path/query/is_relative.cc: Likewise.
3491 1.1.1.18 mrg
3492 1.1.1.19 mrg PR libstdc++/87431
3493 1.1.1.19 mrg * include/std/variant (_Variant_storage<true, _Types...>::_M_valid):
3494 1.1.1.19 mrg Check is_trivially_copyable instead of is_scalar.
3495 1.1.1.19 mrg (variant::emplace<N, Args>(Args&&...)): If construction of the new
3496 1.1.1.19 mrg contained value can throw and its type is trivially copyable then
3497 1.1.1.19 mrg construct into a temporary variant and move from it, to provide the
3498 1.1.1.19 mrg strong exception safety guarantee.
3499 1.1.1.19 mrg (variant::emplace<N, U, Args>(initializer_list<U>, Args&&...)):
3500 1.1.1.19 mrg Likewise.
3501 1.1.1.19 mrg * testsuite/20_util/variant/87431.cc: New test.
3502 1.1.1.19 mrg * testsuite/20_util/variant/run.cc: Adjust test so that throwing
3503 1.1.1.19 mrg conversion causes valueless state.
3504 1.1.1.19 mrg
3505 1.1.1.19 mrg PR libstdc++/88607
3506 1.1.1.19 mrg * testsuite/17_intro/headers/c++1998/charset.cc: New test.
3507 1.1.1.19 mrg * testsuite/17_intro/headers/c++2011/charset.cc: New test.
3508 1.1.1.19 mrg * testsuite/17_intro/headers/c++2014/charset.cc: New test.
3509 1.1.1.19 mrg * testsuite/17_intro/headers/c++2017/charset.cc: New test.
3510 1.1.1.19 mrg * testsuite/17_intro/headers/c++2020/charset.cc: New test.
3511 1.1.1.19 mrg
3512 1.1.1.19 mrg 2019-01-05 Jonathan Wakely <jwakely (a] redhat.com>
3513 1.1.1.19 mrg
3514 1.1.1.19 mrg * include/bits/fs_fwd.h (__file_clock): Define new clock.
3515 1.1.1.19 mrg (file_time_type): Redefine in terms of __file_clock.
3516 1.1.1.19 mrg * src/filesystem/ops-common.h (file_time): Add FIXME comment about
3517 1.1.1.19 mrg overflow.
3518 1.1.1.19 mrg * src/filesystem/std-ops.cc (is_set(perm_options, perm_options)): Give
3519 1.1.1.19 mrg internal linkage.
3520 1.1.1.19 mrg (internal_file_lock): New helper type for accessing __file_clock.
3521 1.1.1.19 mrg (do_copy_file): Use internal_file_lock to convert system time to
3522 1.1.1.19 mrg file_time_type.
3523 1.1.1.19 mrg (last_write_time(const path&, error_code&)): Likewise.
3524 1.1.1.19 mrg (last_write_time(const path&, file_time_type, error_code&)): Likewise.
3525 1.1.1.19 mrg
3526 1.1.1.19 mrg 2019-01-04 Jonathan Wakely <jwakely (a] redhat.com>
3527 1.1.1.19 mrg
3528 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.21): Make patterns less greedy
3529 1.1.1.19 mrg for const member functions of std::basic_string.
3530 1.1.1.19 mrg (GLIBCXX_3.4.26): Export member functions of std::basic_string added
3531 1.1.1.19 mrg in C++17.
3532 1.1.1.19 mrg * include/bits/basic_string.h (basic_string(__sv_wrapper, const A&)):
3533 1.1.1.19 mrg Make non-standard constructor private.
3534 1.1.1.19 mrg [!_GLIBCXX_USE_CXX11_ABI] (basic_string(__sv_wrapper, const A&)):
3535 1.1.1.19 mrg Likewise.
3536 1.1.1.19 mrg * include/bits/basic_string.tcc (std::string, std::wstring): Declare
3537 1.1.1.19 mrg explicit instantiations for C++17 as well as earlier dialects.
3538 1.1.1.19 mrg * src/c++17/Makefile.am: Add new source files.
3539 1.1.1.19 mrg * src/c++17/Makefile.in: Regenerate.
3540 1.1.1.19 mrg * src/c++17/cow-string-inst.cc: New file defining explicit
3541 1.1.1.19 mrg instantiations for basic_string member functions added in C++17.
3542 1.1.1.19 mrg * src/c++17/string-inst.cc: Likewise.
3543 1.1.1.18 mrg
3544 1.1.1.19 mrg * config/abi/pre/gnu.ver (GLIBCXX_3.4.26): Export allocator-extended
3545 1.1.1.19 mrg copy/move constructors for old std::basic_string.
3546 1.1.1.19 mrg * include/bits/basic_string.h [!_GLIBCXX_USE_CXX11_ABI]
3547 1.1.1.19 mrg (basic_string::reference, basic_string::const_reference): Define
3548 1.1.1.19 mrg as plain references for C++11 and later.
3549 1.1.1.19 mrg (basic_string::basic_string()): Put constructor body outside
3550 1.1.1.19 mrg preprocessor conditional groups.
3551 1.1.1.19 mrg (basic_string::basic_string(basic_string&&)): Move _Alloc_hider
3552 1.1.1.19 mrg instead of copying it.
3553 1.1.1.19 mrg (basic_string::basic_string(const basic_string&, const _Alloc&)):
3554 1.1.1.19 mrg Define.
3555 1.1.1.19 mrg (basic_string::basic_string(basic_string&&, const _Alloc&)):
3556 1.1.1.19 mrg Define.
3557 1.1.1.19 mrg * include/bits/fs_path.h [!_GLIBCXX_USE_CXX11_ABI]: Remove special
3558 1.1.1.19 mrg cases for old basic_string.
3559 1.1.1.19 mrg * testsuite/21_strings/basic_string/cons/char/8.cc: Test
3560 1.1.1.19 mrg allocator-extended constructors unconditionally. Add extra members to
3561 1.1.1.19 mrg allocator type when using old string ABI.
3562 1.1.1.19 mrg * testsuite/21_strings/basic_string/allocator/71964.cc: Enable test
3563 1.1.1.19 mrg for old string ABI.
3564 1.1.1.19 mrg * testsuite/21_strings/basic_string/cons/wchar_t/8.cc: Likewise.
3565 1.1.1.19 mrg
3566 1.1.1.19 mrg * testsuite/23_containers/list/61347.cc: Avoid spurious failure when
3567 1.1.1.19 mrg -fno-inline added to test flags.
3568 1.1.1.19 mrg
3569 1.1.1.19 mrg * testsuite/21_strings/basic_string/requirements/
3570 1.1.1.19 mrg explicit_instantiation/debug.cc: Remove XFAIL for old ABI.
3571 1.1.1.19 mrg
3572 1.1.1.19 mrg * testsuite/27_io/filesystem/filesystem_error/copy.cc: Fix static
3573 1.1.1.19 mrg assertion failures with old std::string ABI.
3574 1.1.1.19 mrg
3575 1.1.1.19 mrg * include/bits/fs_path.h (path::_List::erase): Replace both overloads
3576 1.1.1.19 mrg with ...
3577 1.1.1.19 mrg (path::pop_back(), path::_M_erase_from(const_iterator)): New member
3578 1.1.1.19 mrg functions that will only erase elements at the end.
3579 1.1.1.19 mrg * src/filesystem/std-path.cc (path::_List::_Impl::pop_back()): Define.
3580 1.1.1.19 mrg (path::_List::_Impl::_M_erase_from(const_iterator)): Define.
3581 1.1.1.19 mrg (path::_List::operator=(const _List&)): Use _M_erase_from(p) instead
3582 1.1.1.19 mrg of erase(p, end()).
3583 1.1.1.19 mrg (path::_List::pop_back()): Define.
3584 1.1.1.19 mrg (path::_List::_M_erase_from(const_iterator)): Define.
3585 1.1.1.19 mrg (path::operator/=(const path&)): Use pop_back to remove last component
3586 1.1.1.19 mrg and _M_erase_from to remove multiple components.
3587 1.1.1.19 mrg (path::_M_append(basic_string_view<value_type>)): Likewise.
3588 1.1.1.19 mrg (path::operator+=(const path&)): Likewise.
3589 1.1.1.19 mrg (path::_M_concat(basic_string_view<value_type>)): Likewise.
3590 1.1.1.19 mrg (path::remove_filename()): Likewise.
3591 1.1.1.19 mrg (path::lexically_normal()): Use _List::_Impl iterators instead of
3592 1.1.1.19 mrg path::iterator. Use pop_back to remove components from the end. Clear
3593 1.1.1.19 mrg trailing filename, instead of using erase(const_iterator) to remove
3594 1.1.1.19 mrg a non-final component.
3595 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generation/normal.cc: Test
3596 1.1.1.19 mrg additional cases.
3597 1.1.1.19 mrg * testsuite/27_io/filesystem/path/generation/normal2.cc: New test.
3598 1.1.1.18 mrg
3599 1.1.1.19 mrg * src/filesystem/std-path.cc (path::operator+=(const path&)): Fix
3600 1.1.1.19 mrg incorrect treatment of empty filename after trailing slash.
3601 1.1.1.19 mrg * testsuite/27_io/filesystem/path/concat/path.cc: Test problem case.
3602 1.1.1.18 mrg
3603 1.1.1.19 mrg * testsuite/21_strings/basic_string/modifiers/assign/char/
3604 1.1.1.19 mrg move_assign_optim.cc: Avoid spurious failure when -fno-inline added
3605 1.1.1.19 mrg to test flags.
3606 1.1.1.19 mrg * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
3607 1.1.1.19 mrg move_assign_optim.cc: Likewise.
3608 1.1.1.14 mrg
3609 1.1.1.19 mrg 2019-01-03 Jonathan Wakely <jwakely (a] redhat.com>
3610 1.1.1.14 mrg Jakub Jelinek <jakub (a] redhat.com>
3611 1.1.1.14 mrg
3612 1.1.1.19 mrg PR libstdc++/88607
3613 1.1.1.19 mrg * include/experimental/memory: Replace UTF-8 quote characters.
3614 1.1.1.19 mrg * include/std/future: Replace UTF-8 "em dash" characters.
3615 1.1.1.19 mrg
3616 1.1.1.19 mrg 2019-01-03 Jonathan Wakely <jwakely (a] redhat.com>
3617 1.1.1.19 mrg
3618 1.1.1.19 mrg PR libstdc++/88607
3619 1.1.1.19 mrg * include/bits/forward_list.h: Replace UTF-8 "ligature fi" character.
3620 1.1.1.19 mrg * include/debug/forward_list: Likewise.
3621 1.1.1.19 mrg * include/experimental/bits/shared_ptr.h: Remove UTF-8 "section sign"
3622 1.1.1.19 mrg character.
3623 1.1.1.19 mrg * include/experimental/chrono: Likewise.
3624 1.1.1.19 mrg * include/experimental/functional: Likewise.
3625 1.1.1.19 mrg * include/experimental/ratio: Likewise.
3626 1.1.1.19 mrg * include/experimental/system_error: Likewise.
3627 1.1.1.19 mrg * include/experimental/tuple: Likewise.
3628 1.1.1.19 mrg * include/experimental/type_traits: Likewise.
3629 1.1.1.19 mrg * include/parallel/workstealing.h: Replace UTF-8 "en dash" character.
3630 1.1.1.19 mrg * include/parallel/multiseq_selection.h: Likewise.
3631 1.1.1.19 mrg
3632 1.1.1.19 mrg PR libstdc++/88681
3633 1.1.1.19 mrg * config/abi/pre/gnu.ver: Add missing exports.
3634 1.1.1.19 mrg * testsuite/22_locale/collate_byname/88681.cc: New test.
3635 1.1.1.19 mrg * testsuite/22_locale/time_get/get/char/88681.cc: New test.
3636 1.1.1.19 mrg * testsuite/22_locale/time_get/get/wchar_t/88681.cc: New test.
3637 1.1.1.19 mrg
3638 1.1.1.19 mrg 2019-01-02 Jonathan Wakely <jwakely (a] redhat.com>
3639 1.1.1.19 mrg
3640 1.1.1.19 mrg * testsuite/23_containers/map/cons/deduction.cc: Test deduction from
3641 1.1.1.19 mrg initializer_list<value_type> and from input iterator ranges.
3642 1.1.1.19 mrg * testsuite/23_containers/multimap/cons/deduction.cc: Likewise.
3643 1.1.1.19 mrg
3644 1.1.1.19 mrg * testsuite/experimental/string_view/element_access/char/empty.cc:
3645 1.1.1.19 mrg Fix year range in copyright header.
3646 1.1.1.17 mrg
3647 1.1.1.19 mrg 2019-01-02 Joel Brobecker <brobecker (a] adacore.com>
3648 1.1.1.11 mrg
3649 1.1.1.19 mrg * testsuite/21_strings/basic_string_view/element_access/char/empty.cc:
3650 1.1.1.19 mrg Fix year range in copyright header.
3651 1.1.1.14 mrg
3652 1.1.1.19 mrg 2019-01-01 Jakub Jelinek <jakub (a] redhat.com>
3653 1.1 mrg
3654 1.1.1.9 mrg Update copyright years.
3655 1.1.1.3 mrg
3657 1.1 mrg Copyright (C) 2019 Free Software Foundation, Inc.
3658 1.1.1.3 mrg
3659 1.1.1.3 mrg Copying and distribution of this file, with or without modification,
3660 1.1.1.3 mrg are permitted in any medium without royalty provided the copyright
3661 notice and this notice are preserved.
3662