safe_iterator.h (_Safe_iterator<>::_M_constant()): Rename in...
[gcc.git] / libstdc++-v3 / ChangeLog
1 2018-05-09 François Dumont <fdumont@gcc.gnu.org>
2
3 * include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant()):
4 Rename in...
5 (_Safe_iterator<>::_S_constant()): ...that.
6 * include/debug/safe_local_iterator.h
7 (_Safe_local_iterator<>::_M_constant()): Rename in...
8 (_Safe_local_iterator<>::_S_constant()): ...that.
9 * include/debug/formatter.h: Remove bits/cpp_type_traits.h include.
10 (_Iterator_state::__rbegin): New.
11 (_Iterator_state::__rmiddle): New.
12 (_Iterator_state::__rend): New.
13 (_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
14 _Is_iterator)): Use _Safe_iterator<>::_S_constant. Grab normal underlying
15 iterator type.
16 (_Parameter::_Parameter(const _Safe_local_iterator<>&, const char*,
17 _Is_iterator)): Likewise.
18 (_Parameter::_S_reverse_state(_Iterator_state)): New.
19 (_Parameter(__gnu_cxx::__normal_iterator<> const&, const char*,
20 _Is_iterator)): New.
21 (_Parameter(std::reverse_iterator<> const&, const char*,
22 _Is_iterator)): New.
23 (_Parameter(std::reverse_iterator<_Safe_iterator<>> const&,
24 const char*, _Is_iterator)): New.
25 (_Parameter(std::move_iterator<> const&, const char*, _Is_iterator):
26 New.
27 (_Parameter(std::move_iterator<_Safe_iterator<>> const&, const char*,
28 _Is_iterator)): New.
29 * testsuite/24_iterators/move_iterator/debug_neg.cc: New.
30 * testsuite/24_iterators/normal_iterator/debug_neg.cc: New.
31 * testsuite/24_iterators/reverse_iterator/debug_neg.cc: New.
32
33 2018-05-09 Jonathan Wakely <jwakely@redhat.com>
34
35 * include/bits/std_function.h (_Base_manager::_M_get_pointer):
36 Use constexpr if in C++17 mode.
37 (_Base_manager::_M_clone(_Any_data&, const _Any_data&, true_type)):
38 Copy from const object.
39 * testsuite/20_util/function/cons/non_copyconstructible.cc: New.
40
41 2018-05-08 François Dumont <fdumont@gcc.gnu.org>
42
43 * src/c++11/debug.cc [_GLIBCXX_HAVE_EXECINFO_H]: Include execinfo.h.
44 [_GLIBCXX_HAVE_EXECINFO_H](_Error_formatter::_M_error): Render
45 backtrace.
46
47 * include/debug/macros.h (__glibcxx_check_valid_range_at): New.
48 * include/debug/functions.h (__check_valid_range): Use latter.
49 * include/debug/macros.h (__glibcxx_check_valid_constructor_range): New,
50 use latter.
51 * include/debug/deque
52 (deque::deque<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
53 * include/debug/forward_list
54 (forward_list::forward_list<_Iter>(_Iter, _Iter, const _Alloc&)):
55 Likewise.
56 * include/debug/list
57 (list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
58 * include/debug/list
59 (list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
60 * include/debug/map.h
61 (map::map<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
62 (map::map<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
63 Likewise.
64 * include/debug/multimap.h
65 (multimap::multimap<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
66 (multimap::multimap<_Iter>(_Iter, _Iter, const _Compare&,
67 const _Alloc&)): Likewise.
68 * include/debug/set.h
69 (set::set<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
70 (set::set<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
71 Likewise.
72 * include/debug/multiset.h
73 (multiset::multiset<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
74 (multiset::multiset<_Iter>(_Iter, _Iter, const _Compare&,
75 const _Alloc&)): Likewise.
76 * include/debug/string
77 (basic_string::basic_string<_Iter>(_Iter, _Iter, const _Alloc&)):
78 Likewise.
79 * include/debug/unordered_map
80 (unordered_map::unordered_map<_Iter>(_Iter, _Iter, const _Alloc&)):
81 Likewise.
82 (unordered_multimap::unordered_multimap<_Iter>(_Iter, _Iter,
83 const _Alloc&)): Likewise.
84 * include/debug/unordered_set
85 (unordered_set::unordered_set<_Iter>(_Iter, _Iter, const _Alloc&)):
86 Likewise.
87 (unordered_multiset::unordered_multiset<_Iter>(_Iter, _Iter,
88 const _Alloc&)): Likewise.
89 * include/debug/vector
90 (vector::vector<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
91
92 * include/debug/formatter.h (_Error_formatter::_M_function): New.
93 (_Error_formatter(const char*, unsigned int)): Adapt.
94 (_Error_formatter::_M_at): Rename in...
95 (_Error_formatter::_S_at): ...that and adapt.
96 * include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_AT_F): New.
97 (_GLIBCXX_DEBUG_VERIFY_AT, _GLIBCXX_DEBUG_VERIFY): Adapt.
98 * src/c++11/debug.cc (_Error_formatter::_M_error): Render _M_function
99 when available.
100
101 2018-05-08 Jonathan Wakely <jwakely@redhat.com>
102
103 * include/bits/regex_automaton.h (_NFA_base::_M_paren_stack, _NFA):
104 Use normal std::vector even in Debug Mode.
105
106 PR libstdc++/85672
107 * include/Makefile.am [!ENABLE_FLOAT128]: Change c++config.h entry
108 to #undef _GLIBCXX_USE_FLOAT128 instead of defining it to zero.
109 * include/Makefile.in: Regenerate.
110 * include/bits/c++config (_GLIBCXX_USE_FLOAT128): Move definition
111 within conditional block.
112
113 2018-05-07 Jonathan Wakely <jwakely@redhat.com>
114
115 * doc/xml/manual/using.xml (table.cmd_options): Document that the
116 C++17 Filesystem implementation also needs -lstdc++fs.
117
118 PR libstdc++/85671
119 * include/bits/fs_path.h (operator/): Permit copy elision.
120 * include/experimental/bits/fs_path.h (operator/): Likewise.
121
122 2018-05-07 Edward Smith-Rowland <3dw4rd@verizon.net>
123
124 Moar PR libstdc++/80506
125 * include/bits/random.tcc (gamma_distribution::__generate_impl()):
126 Fix magic number used in loop condition.
127
128 2018-05-04 Jonathan Wakely <jwakely@redhat.com>
129
130 PR libstdc++/85642 fix is_nothrow_default_constructible<optional<T>>
131 * include/std/optional (_Optional_payload): Add noexcept to default
132 constructor. Re-indent.
133 (_Optional_payload<_Tp, true, true, true>): Likewise. Add noexcept to
134 constructor for copying disengaged payloads.
135 (_Optional_payload<_Tp, true, false, true>): Likewise.
136 (_Optional_payload<_Tp, true, true, false>): Likewise.
137 (_Optional_payload<_Tp, true, false, false>): Likewise.
138 * testsuite/20_util/optional/cons/85642.cc: New.
139 * testsuite/20_util/optional/cons/value_neg.cc: Adjust dg-error lines.
140
141 2018-05-03 Jonathan Wakely <jwakely@redhat.com>
142
143 PR libstdc++/82644
144 * include/tr1/cmath [__STRICT_ANSI__] (hypergf, hypergl, hyperg): Use
145 inline definitions instead of using-declarations.
146 [__STRICT_ANSI__] (conf_hypergf, conf_hypergl, conf_hyperg): Likewise.
147 * testsuite/tr1/5_numerical_facilities/special_functions/
148 07_conf_hyperg/compile_cxx17.cc: New.
149 * testsuite/tr1/5_numerical_facilities/special_functions/
150 17_hyperg/compile_cxx17.cc: New.
151
152 PR libstdc++/84769
153 * include/std/variant (visit): Qualify std::get call.
154
155 PR libstdc++/85632 use uintmax_t for arithmetic
156 * src/filesystem/ops.cc (experimental::filesystem::space): Perform
157 arithmetic in result type.
158 * src/filesystem/std-ops.cc (filesystem::space): Likewise.
159 * testsuite/27_io/filesystem/operations/space.cc: Check total capacity
160 is greater than free space.
161 * testsuite/experimental/filesystem/operations/space.cc: New.
162
163 * testsuite/20_util/remove_cvref/requirements/alias_decl.cc: New.
164 * testsuite/20_util/remove_cvref/requirements/explicit_instantiation.cc:
165 New.
166 * testsuite/20_util/remove_cvref/value.cc: New.
167 * testsuite/20_util/remove_cvref/value_ext.cc: New.
168
169 PR libstdc++/84087 LWG DR 2268 basic_string default arguments
170 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI=1]
171 (append(const basic_string&, size_type, size_type)
172 (assign(const basic_string&, size_type, size_type)
173 (insert(size_type, const basic_string&, size_type, size_type)
174 (replace(size_type,size_type,const basic_string&,size_type,size_type)
175 (compare(size_type,size_type,constbasic_string&,size_type,size_type)):
176 Add default arguments (LWG 2268).
177 [_GLIBCXX_USE_CXX11_ABI=0]
178 (append(const basic_string&, size_type, size_type)
179 (assign(const basic_string&, size_type, size_type)
180 (insert(size_type, const basic_string&, size_type, size_type)
181 (replace(size_type,size_type,const basic_string&,size_type,size_type)
182 (compare(size_type,size_type,constbasic_string&,size_type,size_type)):
183 Likewise.
184 * testsuite/21_strings/basic_string/dr2268.cc: New test.
185
186 PR libstdc++/84535
187 * include/std/thread (thread::__not_same): New SFINAE helper.
188 (thread::thread(_Callable&&, _Args&&...)): Add SFINAE constraint that
189 first argument is not a std::thread. Add static assertion to check
190 INVOKE expression is valid.
191 (thread::thread(thread&), thread::thread(const thread&&)): Remove.
192 (thread::_Invoke::_M_invoke, thread::_Invoke::operator()): Use
193 __invoke_result for return types and remove exception specifications.
194 * testsuite/30_threads/thread/cons/84535.cc: New.
195
196 * include/std/future (__async_result_of): Use __invoke_result instead
197 of result_of.
198
199 * include/std/any (any_cast): Use __remove_cvref_t.
200 * include/std/tuple (__make_tuple): Likewise.
201 * include/std/type_traits (__remove_cvref_t): Define.
202 (__result_of_memobj, __result_of_memfun): Use __remove_cvref_t.
203 [__cplusplus > 201703L] (remove_cvref, remove_cvref_t): Define.
204 * include/std/variant (__erased_hash): Use __remove_cvref_t.
205
206 2018-05-02 François Dumont <fdumont@gcc.gnu.org>
207
208 * include/bits/deque.tcc (deque<>::_M_assign_aux): Cast to void to
209 ensure overloaded comma not used.
210 * include/bits/list.tcc (list<>::_M_assign_dispatch): Likewise.
211 * include/bits/vector.tcc (vector<>::_M_assign_aux): Likewise.
212 * include/bits/stl_bvector.h (vector<bool>::_M_assign_aux): Likewise.
213 * testsuite/23_containers/deque/modifiers/assign/1.cc: New.
214 * testsuite/23_containers/list/modifiers/assign/1.cc: New.
215 * testsuite/23_containers/vector/bool/modifiers/assign/1.cc: New.
216 * testsuite/23_containers/vector/modifiers/assign/1.cc: New.
217
218 2018-05-02 Jonathan Wakely <jwakely@redhat.com>
219
220 PR libstdc++/68197
221 * include/bits/ios_base.h (ios_base::iword, ios_base::pword): Cast
222 indices to unsigned.
223 * src/c++11/ios.cc (ios_base::_M_grow_words): Treat negative indices
224 as failure. Refactor error handling.
225 * testsuite/27_io/ios_base/storage/68197.cc: New.
226
227 PR libstdc++/57997
228 PR libstdc++/83860
229 * include/bits/gslice_array.h (gslice_array): Define default
230 constructor as deleted, as per C++11 standard.
231 * include/bits/mask_array.h (mask_array): Likewise.
232 * include/bits/slice_array.h (slice_array): Likewise.
233 * include/bits/valarray_after.h (_GBase, _GClos, _IBase, _IClos): Move
234 to namespace __detail.
235 (_GBase::_M_expr, _IBase::_M_expr): Use _ValArrayRef for type of data
236 members.
237 * include/bits/valarray_before.h (_ValArrayRef): New helper for type
238 of data members in closure objects.
239 (_FunBase, _ValFunClos, _RefFunClos, _UnBase, _UnClos, _BinBase)
240 (_BinBase2, _BinBase1, _BinClos, _SBase, _SClos): Move to namespace
241 __detail.
242 (_FunBase::_M_expr, _UnBase::_M_expr, _BinBase::_M_expr1)
243 (_BinBase::_M_expr2, _BinBase2::_M_expr1, _BinBase1::_M_expr2)
244 (_SBase::_M_expr): Use _ValArrayRef for type of data members.
245 * include/std/valarray (_UnClos, _BinClos, _SClos, _GClos, _IClos)
246 (_ValFunClos, _RefFunClos): Move to namespace __detail and add
247 using-declarations to namespace std.
248 * testsuite/26_numerics/valarray/83860.cc: New.
249
250 * testsuite/backward/strstream_move.cc: Remove duplicate function
251 call.
252
253 PR libstdc++/69608
254 * include/backward/strstream (strstreambuf): Define move constructor
255 and move assignment operator.
256 (istrstream, ostrstream, strstream): Likewise.
257 * testsuite/backward/strstream_move.cc: New.
258
259 2018-05-01 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
260
261 PR libstdc++/84654
262 * acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128.
263 * config.h.in: Remove references to _GLIBCXX_USE_FLOAT128.
264 * configure: Regenerate.
265 * include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128
266 based on ENABLE_FLOAT128.
267 * include/Makefile.in: Regenerate.
268 * include/bits/c++config: Define _GLIBCXX_USE_FLOAT128.
269 [!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine
270 _GLIBCXX_USE_FLOAT128.
271
272 2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
273
274 * configure: Regenerated.
275
276 2018-04-19 Jakub Jelinek <jakub@redhat.com>
277
278 * configure: Regenerated.
279
280 2018-04-18 Jonathan Wakely <jwakely@redhat.com>
281 Jakub Jelinek <jakub@redhat.com>
282
283 PR libstdc++/85442
284 * src/c++11/Makefile.am: Don't generate debuginfo again for
285 cxx11-ios_failure-lt.s and cxx11-ios_failure.s files.
286 * src/c++11/Makefile.in: Regenerate.
287
288 2018-04-18 Jonathan Wakely <jwakely@redhat.com>
289
290 PR libstdc++/84442
291 * testsuite/30_threads/thread/cons/terminate.cc
292 [!_GLIBCXX_USE_C99_STDLIB] : Use _exit or std::exit instead of _Exit.
293
294 2018-04-18 David Malcolm <dmalcolm@redhat.com>
295
296 PR jit/85384
297 * configure: Regenerate.
298
299 2018-04-16 Jonathan Wakely <jwakely@redhat.com>
300
301 * testsuite/experimental/filesystem/file_status/1.cc: Add
302 -DUSE_FILESYSTEM_TS to dg-options.
303 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
304 Likewise.
305 * testsuite/experimental/filesystem/iterators/pop.cc: Likewise.
306 * testsuite/experimental/filesystem/iterators/
307 recursive_directory_iterator.cc: Likewise.
308 * testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
309 * testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
310 * testsuite/experimental/filesystem/operations/copy.cc: Likewise.
311 * testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
312 * testsuite/experimental/filesystem/operations/create_directories.cc:
313 Likewise.
314 * testsuite/experimental/filesystem/operations/create_directory.cc:
315 Likewise.
316 * testsuite/experimental/filesystem/operations/create_symlink.cc:
317 Likewise.
318 * testsuite/experimental/filesystem/operations/current_path.cc:
319 Likewise.
320 * testsuite/experimental/filesystem/operations/equivalent.cc: Likewise.
321 * testsuite/experimental/filesystem/operations/exists.cc: Likewise.
322 * testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
323 * testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
324 * testsuite/experimental/filesystem/operations/last_write_time.cc:
325 Likewise.
326 * testsuite/experimental/filesystem/operations/permissions.cc:
327 Likewise.
328 * testsuite/experimental/filesystem/operations/read_symlink.cc:
329 Likewise.
330 * testsuite/experimental/filesystem/operations/remove.cc: Likewise.
331 * testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
332 * testsuite/experimental/filesystem/operations/status.cc: Likewise.
333 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
334 Likewise.
335 * testsuite/experimental/filesystem/path/append/path.cc: Likewise.
336 * testsuite/experimental/filesystem/path/assign/assign.cc: Likewise.
337 * testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
338 * testsuite/experimental/filesystem/path/compare/compare.cc: Likewise.
339 * testsuite/experimental/filesystem/path/compare/path.cc: Likewise.
340 * testsuite/experimental/filesystem/path/compare/strings.cc: Likewise.
341 * testsuite/experimental/filesystem/path/concat/path.cc: Likewise.
342 * testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
343 * testsuite/experimental/filesystem/path/construct/copy.cc: Likewise.
344 * testsuite/experimental/filesystem/path/construct/default.cc:
345 Likewise.
346 * testsuite/experimental/filesystem/path/construct/locale.cc: Likewise.
347 * testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
348 * testsuite/experimental/filesystem/path/construct/string_view.cc:
349 Likewise.
350 * testsuite/experimental/filesystem/path/decompose/extension.cc:
351 Likewise.
352 * testsuite/experimental/filesystem/path/decompose/filename.cc:
353 Likewise.
354 * testsuite/experimental/filesystem/path/decompose/parent_path.cc:
355 Likewise.
356 * testsuite/experimental/filesystem/path/decompose/relative_path.cc:
357 Likewise.
358 * testsuite/experimental/filesystem/path/decompose/root_directory.cc:
359 Likewise.
360 * testsuite/experimental/filesystem/path/decompose/root_name.cc:
361 Likewise.
362 * testsuite/experimental/filesystem/path/decompose/root_path.cc:
363 Likewise.
364 * testsuite/experimental/filesystem/path/decompose/stem.cc: Likewise.
365 * testsuite/experimental/filesystem/path/generic/generic_string.cc:
366 Likewise.
367 * testsuite/experimental/filesystem/path/itr/traversal.cc: Likewise.
368 * testsuite/experimental/filesystem/path/modifiers/clear.cc: Likewise.
369 * testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
370 Likewise.
371 * testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
372 Likewise.
373 * testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
374 Likewise.
375 * testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
376 Likewise.
377 * testsuite/experimental/filesystem/path/modifiers/swap.cc: Likewise.
378 * testsuite/experimental/filesystem/path/native/string.cc: Likewise.
379 * testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
380 Likewise.
381 * testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
382 * testsuite/experimental/filesystem/path/query/has_extension.cc:
383 Likewise.
384 * testsuite/experimental/filesystem/path/query/has_filename.cc:
385 Likewise.
386 * testsuite/experimental/filesystem/path/query/has_parent_path.cc:
387 Likewise.
388 * testsuite/experimental/filesystem/path/query/has_relative_path.cc:
389 Likewise.
390 * testsuite/experimental/filesystem/path/query/has_root_directory.cc:
391 Likewise.
392 * testsuite/experimental/filesystem/path/query/has_root_name.cc:
393 Likewise.
394 * testsuite/experimental/filesystem/path/query/has_root_path.cc:
395 Likewise.
396 * testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
397 * testsuite/experimental/filesystem/path/query/is_relative.cc:
398 Likewise.
399
400 2018-04-13 Jonathan Wakely <jwakely@redhat.com>
401
402 * src/c++11/Makefile.am: Fix sed command.
403 * src/c++11/Makefile.in: Regenerate.
404
405 * src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
406 handle mangled names starting with double underscores on darwin.
407 * src/c++11/Makefile.in: Regenerate.
408
409 2018-04-12 Jonathan Wakely <jwakely@redhat.com>
410
411 * src/c++11/Makefile.am: Fix comment.
412 * src/c++11/Makefile.in: Regenerate.
413 * src/c++11/cxx11-ios_failure.cc: Fix comment.
414 * src/c++98/ios_failure.cc: Likewise.
415
416 * src/c++11/ios.cc: Remove redundant macro definition.
417
418 2018-04-11 Jonathan Wakely <jwakely@redhat.com>
419
420 * doc/xml/manual/abi.xml: Document header locations in recent
421 releases.
422 * doc/xml/manual/evolution.xml: Add API changes since GCC 5.
423 * doc/xml/manual/spine.xml: Update copyright years.
424 * doc/xml/manual/strings.xml: Adjust tolower example to avoid
425 undefined behaviour.
426 * doc/xml/manual/test.xml: Update outdated notes on VERIFY in tests.
427 * doc/html/*: Regenerate.
428
429 2018-04-10 Jonathan Wakely <jwakely@redhat.com>
430
431 * doc/xml/faq.xml: Update links to archived copy of SGI STL docs.
432 * doc/xml/manual/backwards_compatibility.xml: Likewise.
433 * doc/xml/manual/containers.xml: Likewise.
434 * doc/xml/manual/debug_mode.xml: Likewise.
435 * doc/xml/manual/extensions.xml: Likewise.
436 * doc/xml/manual/policy_data_structures_biblio.xml: Likewise.
437 * doc/xml/manual/using.xml: Likewise.
438 * doc/xml/manual/utilities.xml: Likewise.
439
440 PR libstdc++/85222
441 * src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
442 cxx11-ios_failure.cc to rewrite type info for __ios_failure.
443 * src/c++11/Makefile.in: Regenerate.
444 * src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
445 New types.
446 [_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
447 * src/c++11/ios.cc (__throw_ios_failure): Remove definition.
448 * src/c++98/ios_failure.cc (__construct_ios_failure)
449 (__destroy_ios_failure, is_ios_failure_handler): New functions.
450 [!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
451 * testsuite/27_io/ios_base/failure/dual_abi.cc: New.
452 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
453 handler types, to always catch std::ios_base::failure.
454 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
455 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
456 exceptions_failbit.cc: Likewise.
457 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
458 exceptions_failbit.cc: Likewise.
459 * testsuite/27_io/basic_istream/extractors_other/char/
460 exceptions_null.cc: Likewise.
461 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
462 exceptions_null.cc: Likewise.
463 * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
464 * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
465 * testsuite/27_io/basic_ostream/inserters_other/char/
466 exceptions_null.cc: Likewise.
467 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
468 exceptions_null.cc: Likewise.
469 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
470
471 2018-04-05 Jonathan Wakely <jwakely@redhat.com>
472
473 * include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify
474 __get calls to avoid ADL and avoid ambiguity due to Clang bug.
475
476 2018-04-03 Jonathan Wakely <jwakely@redhat.com>
477
478 PR libstdc++/85183
479 * include/std/variant (_Move_assign_base::operator=): Fix incorrect
480 value categories.
481 * testsuite/20_util/variant/85183.cc: New.
482
483 2018-03-26 Jonathan Wakely <jwakely@redhat.com>
484
485 * include/std/variant (__get): Qualify calls to avoid ADL.
486 (__select_index): Adjust whitespace.
487 (variant): Add using-declaration to workaround Clang bug.
488
489 2018-03-22 Jonathan Wakely <jwakely@redhat.com>
490
491 PR libstdc++/85040
492 * include/bits/stl_function.h (greater::__not_overloaded)
493 (less::__not_overloaded, greater_equal::__not_overloaded)
494 (less_equal::__not_overloaded): Fix ambiguous specializations.
495 * testsuite/20_util/function_objects/comparisons_pointer.cc: Add
496 tests for type with overloaded operators.
497
498 2018-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
499
500 PR libstdc++/77691
501 * testsuite/experimental/memory_resource/resource_adaptor.cc:
502 xfail execution on 32-bit Solaris/x86.
503
504 2018-03-21 Jonathan Wakely <jwakely@redhat.com>
505
506 * testsuite/20_util/function_objects/comparisons_pointer.cc: Use
507 VERIFY instead of assert.
508 * testsuite/20_util/hash/84998.cc: New test.
509 * testsuite/23_containers/vector/cons/destructible_debug_neg.cc: New
510 copy of test adjusted for Debug Mode.
511 * testsuite/23_containers/vector/cons/destructible_neg.cc: Do not run
512 test in Debug Mode.
513
514 2018-03-20 François Dumont <fdumont@gcc.gnu.org>
515
516 PR libstdc++/84998
517 * include/bits/stl_bvector.h: Fix std::hash friend declaration.
518 * include/std/bitset: Likewise.
519 * include/bits/stl_map.h (std::map<>): Fix _Rb_tree_merge_helper friend
520 declaration.
521 * include/bits/stl_multimap.h (std::multimap<>): Likewise.
522 * include/bits/stl_multiset.h (std::multiset<>): Likewise.
523 * include/bits/stl_set.h (std::set<>): Likewise.
524 * include/bits/unordered_map.h (std::unordered_map<>): Fix
525 _Hash_merge_helper friend declaration.
526 (std::unordered_multimap<>): Likewise.
527 * include/bits/unordered_set.h (std::unordered_set<>): Likewise.
528 (std::unordered_multiset<>): Likewise.
529
530 2018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
531
532 * doc/xml/api.xml: www.fsf.org has moved to https. Also omit
533 trailing slash for domain level link.
534 * doc/xml/faq.xml: Ditto.
535 * doc/xml/manual/appendix_free.xml (software): Ditto.
536 * doc/xml/manual/intro.xml: Ditto.
537 * doc/xml/manual/spine.xml: Ditto.
538 * doc/xml/spine.xml: Ditto.
539
540 2018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
541
542 * doc/xml/manual/documentation_hacking.xml: Adjust link to
543 docbook.org.
544
545 2018-03-17 Jonathan Wakely <jwakely@redhat.com>
546
547 * testsuite/20_util/function_objects/comparisons_pointer.cc: Adjust
548 to compile as C++98.
549
550 2018-03-14 Jonathan Wakely <jwakely@redhat.com>
551
552 PR libstdc++/78420
553 * include/bits/stl_function.h (greater<_Tp*>, less<_Tp*>)
554 (greater_equal<_Tp*>, less_equal<_Tp>*): Add partial specializations
555 to ensure total order for pointers.
556 (greater<void>, less<void>, greater_equal<void>, less_equal<void>):
557 Add operator() overloads for pointer arguments and make generic
558 overloads dispatch to new _S_cmp functions when comparisons would
559 use built-in operators for pointers.
560 * testsuite/20_util/function_objects/comparisons_pointer.cc: New.
561
562 2018-03-12 Jonathan Wakely <jwakely@redhat.com>
563
564 PR libstdc++/84773
565 PR libstdc++/83662
566 * crossconfig.m4: Check for aligned_alloc etc. on freebsd and mingw32.
567 * configure: Regenerate.
568 * include/c_global/cstdlib [_GLIBCXX_HAVE_ALIGNED_ALLOC]
569 (aligned_alloc): Add using-declaration.
570 * testsuite/18_support/aligned_alloc/aligned_alloc.cc: New test.
571
572 2018-03-09 François Dumont <fdumont@gcc.gnu.org>
573
574 * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
575 Fix std::_Fwd_list_iterator and std::_Fwd_list_const_iterator printers
576 registration.
577
578 2018-03-09 Jonathan Wakely <jwakely@redhat.com>
579
580 PR libstdc++/84769
581 * include/std/variant (get<_Tp, _Types...>, get_if<_Tp, _Types...>):
582 Qualify calls to get<_Np, Types...> and get_if<_Np, _Types...>.
583
584 src/filesystem/ops.cc (create_dir): Pass error_code to is_directory.
585 src/filesystem/std-ops.cc (create_dir): Likewise.
586
587 2018-03-08 François Dumont <fdumont@gcc.gnu.org>
588
589 * python/libstdcxx/v6/printers.py (NodeIteratorPrinter): New.
590 (StdListIteratorPrinter): Inherit from latter.
591 (StdFwdListIteratorPrinter): New, inherit from latter.
592 (StdDebugIteratorPrinter.to_string): Use non-debug iterator printer
593 when iterator has no associated container.
594 (build_libstdcxx_dictionary): Add __gnu_cxx::_Fwd_list_iterator and
595 __gnu_cxx::_Fwd_list_const_iterator printers. Remove __norm namespace
596 registrations.
597 * testsuite/libstdc++-prettyprinters/debug.cc: Adapt.
598 * testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Adapt.
599
600 2018-03-06 Ville Voutilainen <ville.voutilainen@gmail.com>
601
602 PR libstdc++/84601
603 * include/std/optional (_Optional_payload): Split into multiple
604 specializations that can handle different cases of trivial or
605 non-trivial assignment operators.
606 * testsuite/20_util/optional/84601.cc: New.
607 * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
608
609 2018-03-02 Jonathan Wakely <jwakely@redhat.com>
610
611 PR libstdc++/84671
612 * include/bits/parse_numbers.h (_Number_help): Add partial
613 specialization to handle digit separators. Adjust partial
614 specialization for recursion temrination to require _Pow == 1ULL.
615 * testsuite/20_util/duration/literals/84671.cc: New
616
617 2018-02-27 Ville Voutilainen <ville.voutilainen@gmail.com>
618
619 Implement the missing bits of LWG 2769
620 * include/std/any (any_cast(const any&)): Add static_assert.
621 (any_cast(any&)): Likewise.
622 (any_cast(any&&)): Likewise, and remove the handling
623 for copyable-but-not-movable type.
624 * testsuite/20_util/any/misc/any_cast.cc: Adjust.
625 * testsuite/20_util/any/misc/any_cast_neg.cc: Likewise, and
626 add new tests.
627
628 2018-02-23 Jonathan Wakely <jwakely@redhat.com>
629
630 PR libstdc++/84532
631 * include/std/thread (thread::__make_invoker): Construct tuple
632 directly instead of using make_tuple.
633 * testsuite/30_threads/async/84532.cc: New.
634 * testsuite/30_threads/thread/84532.cc: New.
635
636 2018-02-20 François Dumont <fdumont@gcc.gnu.org>
637
638 * include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
639 (template<> __aligned_buffer): Define as __aligned_membuf alias.
640
641 2018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
642
643 PR target/84148
644 * configure: Regenerate.
645
646 2018-02-15 Jonathan Wakely <jwakely@redhat.com>
647
648 PR libstdc++/81797
649 * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
650 * configure: Regenerate.
651 * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
652 defined.
653 * include/Makefile.in: Regenerate.
654
655 2018-01-29 Jonathan Wakely <jwakely@redhat.com>
656
657 PR libstdc++/83833
658 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc:
659 Add -ffloat-store to options for m68k and ia32.
660
661 * doc/xml/faq.xml: Update copyright years.
662 * doc/html/*: Regenerate.
663
664 PR libstdc++/83658
665 * include/std/any (any::__do_emplace): Only set _M_manager after
666 constructing the contained object.
667 * testsuite/20_util/any/misc/any_cast_neg.cc: Adjust dg-error line.
668 * testsuite/20_util/any/modifiers/83658.cc: New test.
669
670 2018-01-25 Jonathan Wakely <jwakely@redhat.com>
671
672 PR libstdc++/81076
673 * include/c_global/cstddef (__byte_operand): Define primary template.
674 * testsuite/18_support/byte/81076.cc: New test.
675
676 2018-01-19 Christophe Lyon <christophe.lyon@linaro.org>
677
678 * testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix
679 dg-options and dg-add-options order.
680 * testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise.
681 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc:
682 Likewise.
683 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
684 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
685 Likewise.
686 * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
687 Likewise.
688 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
689 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc:
690 Likewise.
691 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc:
692 Likewise.
693 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc:
694 Likewise.
695 * testsuite/special_functions/06_comp_ellint_3/pr66689.cc:
696 Likewise.
697 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc:
698 Likewise.
699 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc:
700 Likewise.
701 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc:
702 Likewise.
703 * testsuite/special_functions/10_cyl_neumann/check_nan.cc:
704 Likewise.
705 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
706 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
707 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
708 * testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise.
709 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
710 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
711 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
712 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
713 * testsuite/special_functions/18_riemann_zeta/check_nan.cc:
714 Likewise.
715 * testsuite/special_functions/19_sph_bessel/check_nan.cc:
716 Likewise.
717 * testsuite/special_functions/20_sph_legendre/check_nan.cc:
718 Likewise.
719 * testsuite/special_functions/21_sph_neumann/check_nan.cc:
720 Likewise.
721
722 2018-01-18 Uros Bizjak <ubizjak@gmail.com>
723
724 * configure.ac (AC_CHECK_HEADERS): Add linux/types.h. Conditionally
725 include linux/types.h when checking linux/random.h header.
726 * config.h.in: Regenerate.
727 * configure: Ditto.
728 * src/c++11/random.cc: Conditionally include linux/types.h.
729
730 2018-01-16 Eric Botcazou <ebotcazou@adacore.com>
731
732 * testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
733
734 2018-01-16 Jonathan Wakely <jwakely@redhat.com>
735
736 PR libstdc++/83834
737 * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
738 pattern with exact match for std::cerr.
739
740 2018-01-15 Jonathan Wakely <jwakely@redhat.com>
741
742 PR libstdc++/83833
743 * include/bits/random.h (chi_squared_distribution::param): Update
744 gamma distribution parameter.
745 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
746 test.
747
748 PR libstdc++/83830
749 * include/std/type_traits (has_unique_object_representations_v): Add
750 variable template.
751 * testsuite/20_util/has_unique_object_representations/value.cc: Check
752 variable template.
753
754 2018-01-15 Ville Voutilainen <ville.voutilainen@gmail.com>
755
756 Make optional conditionally
757 trivially_{copy,move}_{constructible,assignable}
758 * include/std/optional (_Optional_payload): Fix the comment in
759 the class head and turn into a primary and one specialization.
760 (_Optional_payload::_M_engaged): Strike the NSDMI.
761 (_Optional_payload<_Tp, false>::operator=(const _Optional_payload&)):
762 New.
763 (_Optional_payload<_Tp, false>::operator=(_Optional_payload&&)):
764 Likewise.
765 (_Optional_payload<_Tp, false>::_M_get): Likewise.
766 (_Optional_payload<_Tp, false>::_M_reset): Likewise.
767 (_Optional_base_impl): Likewise.
768 (_Optional_base): Turn into a primary and three specializations.
769 (optional(nullopt)): Change the base init.
770 * testsuite/20_util/optional/assignment/8.cc: New.
771 * testsuite/20_util/optional/cons/trivial.cc: Likewise.
772 * testsuite/20_util/optional/cons/value_neg.cc: Adjust.
773
774 2018-01-15 Jonathan Wakely <jwakely@redhat.com>
775
776 PR libstdc++/80276
777 * python/libstdcxx/v6/printers.py (strip_inline_namespaces): New.
778 (get_template_arg_list): New.
779 (StdVariantPrinter._template_args): Remove, use get_template_arg_list
780 instead.
781 (TemplateTypePrinter): Rewrite to work with gdb.Type objects instead
782 of strings and regular expressions.
783 (add_one_template_type_printer): Adapt to new TemplateTypePrinter.
784 (FilteringTypePrinter): Add docstring. Match using startswith. Use
785 strip_inline_namespaces instead of strip_versioned_namespace.
786 (add_one_type_printer): Prepend namespace to match argument.
787 (register_type_printers): Add type printers for char16_t and char32_t
788 string types and for types using cxx11 ABI. Update calls to
789 add_one_template_type_printer to provide default argument dicts.
790 * testsuite/libstdc++-prettyprinters/80276.cc: New test.
791 * testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for
792 basic_string<unsigned char> and basic_string<signed char>.
793 * testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc
794 to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI.
795
796 2018-01-14 Andreas Schwab <schwab@linux-m68k.org>
797
798 PR libstdc++/81092
799 * config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
800
801 2018-01-13 Tim Shen <timshen@google.com>
802
803 PR libstdc++/83601
804 * include/bits/regex.tcc (regex_replace): Fix escaping in sed.
805 * testsuite/28_regex/algorithms/regex_replace/char/pr83601.cc: Tests.
806 * testsuite/28_regex/algorithms/regex_replace/wchar_t/pr83601.cc: Tests.
807
808 2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
809
810 PR libstdc++/64054
811 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
812 Remove dg-xfail-run-if.
813
814 2018-01-10 François Dumont <fdumont@gcc.gnu.org>
815
816 * include/bits/forward_list.h
817 (_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
818 (_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
819 (_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
820 (_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
821 (_Fwd_list_impl()): Add noexcept qualification.
822 (_Fwd_list_impl(const _Node_alloc_type&)): Delete.
823 (_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
824 (_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
825 (_Fwd_list_base()): Default.
826 (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
827 (_Fwd_list_base(_Fwd_list_base&&)): Default.
828 (forward_list<>()): Default.
829 (forward_list<>(forward_list&&)): Default.
830 (forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
831 (forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
832 (forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
833 * include/bits/forward_list.tcc
834 (_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
835 _M_impl._M_head move assignment.
836 (forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
837 * testsuite/23_containers/forward_list/allocator/default_init.cc: New.
838
839 2018-01-09 Jonathan Wakely <jwakely@redhat.com>
840
841 PR libstdc++/80276
842 * python/libstdcxx/v6/printers.py (SharedPointerPrinter)
843 (UniquePointerPrinter): Print correct template argument, not type of
844 the pointer.
845 (TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
846 a type.
847 * testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
848 array type.
849 * testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
850 weak_ptr of array types.
851
852 2018-01-09 François Dumont <fdumont@gcc.gnu.org>
853
854 PR libstdc++/83709
855 * include/bits/hashtable_policy.h
856 (__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
857 __first != __last.
858 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
859 (_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
860 Add false_type parameter.
861 (_Insert_base::insert): Adapt.
862 * include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
863 Adapt.
864 (_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
865 Add __n_elt parameter, defaulted to 1.
866 (_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
867 policy _M_need_rehash.
868 (_Hashtable::_M_merge_unique): Pass target number of elements to add to
869 produce only 1 rehash if necessary.
870 * testsuite/23_containers/unordered_map/insert/83709.cc: New.
871 * testsuite/23_containers/unordered_set/insert/83709.cc: New.
872
873 2018-01-09 Juraj Oršulić <juraj.orsulic@fer.hr>
874 Jonathan Wakely <jwakely@redhat.com>
875
876 PR libstdc++/59253 (partial)
877 * python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
878 type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
879 (SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
880 children.
881 * testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
882 of unique_ptr printer.
883 * testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
884 output of shared_ptr printer.
885
886 2018-01-05 Jonathan Wakely <jwakely@redhat.com>
887
888 PR libstdc++/83626
889 * src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
890 unnecessary symlink_status call.
891 (remove_all(const path&, error_code&)): Use filesystem::remove.
892 * src/filesystem/std-ops.cc: Likewise.
893
894 PR libstdc++/83279
895 * src/filesystem/std-ops.cc (do_copy_file): Use non-null offset with
896 sendfile.
897
898 PR libstdc++/83626
899 * src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
900 report an error for ENOENT.
901 (remove_all(const path&)): Fix type of result variable.
902 (remove_all(const path&, error_code&)): Use non-throwing increment
903 for directory iterator. Call POSIX remove directly to avoid redundant
904 calls to symlink_status. Do not report errors for ENOENT.
905 * src/filesystem/std-ops.cc: Likewise.
906 * testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
907 overload.
908 * testsuite/experimental/filesystem/operations/remove_all.cc:
909 Likewise.
910
911 2018-01-04 Jonathan Wakely <jwakely@redhat.com>
912
913 PR libstdc++/83626
914 * src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
915 redundant call to ec.clear().
916 (remove_all(const path&, error_code&))): Do not return an error for
917 non-existent paths.
918 * src/filesystem/std-ops.cc: Likewise.
919 * testsuite/27_io/filesystem/operations/remove.cc: New test.
920 * testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
921 results for non-existent paths.
922 * testsuite/experimental/filesystem/operations/remove.cc: New test.
923 * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
924 expected results for non-existent paths.
925
926 * include/bits/fs_ops.h (exists(const path&, error_code&))): Only
927 check status_known once.
928 * include/experimental/bits/fs_ops.h: Likewise.
929
930 PR libstdc++/83607
931 * include/std/functional (__is_byte_like): New trait.
932 (__is_std_equal_to): Remove.
933 (__boyer_moore_base_t): Use __is_byte_like instead of
934 __is_std_equal_to.
935 * include/experimental/functional (__is_std_equal_to): Remove.
936 (__boyer_moore_base_t): Use __is_byte_like instead of
937 __is_std_equal_to.
938 * testsuite/20_util/function_objects/83607.cc: New test.
939
940 2018-01-03 Ville Voutilainen <ville.voutilainen@gmail.com>
941
942 Protect optional's deduction guide with the feature macro
943 * include/std/optional: Use the feature macro.
944
945 2018-01-03 Jakub Jelinek <jakub@redhat.com>
946
947 Update copyright years.
948 \f
949 Copyright (C) 2018 Free Software Foundation, Inc.
950
951 Copying and distribution of this file, with or without modification,
952 are permitted in any medium without royalty provided the copyright
953 notice and this notice are preserved.