ChangeLog revision 1.1.1.13 1 2018-10-26 Release Manager
2
3 * GCC 6.5.0 released.
4
5 2018-10-25 Jonathan Wakely <jwakely (a] redhat.com>
6
7 PR libstdc++/87749
8 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
9 (basic_string::operator=(basic_string&&)): For short strings copy the
10 buffer inline. Only fall back to using assign(const basic_string&) to
11 do a deep copy when reallocation is needed.
12 * testsuite/21_strings/basic_string/modifiers/assign/char/87749.cc:
13 New test.
14 * testsuite/21_strings/basic_string/modifiers/assign/char/
15 move_assign_optim.cc: New test.
16 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/87749.cc:
17 New test.
18 * testsuite/21_strings/basic_string/modifiers/assign/wchar_t/
19 move_assign_optim.cc: New test.
20
21 2018-10-25 Jonathan Wakely <jwakely (a] redhat.com>
22
23
24 Backport from mainline
25 2018-10-23 Jonathan Wakely <jwakely (a] redhat.com>
26
27 PR libstdc++/87704
28 * include/bits/unique_ptr.h (unique_ptr::unique_ptr(nullptr_t)): Do
29 not delegate to default constructor.
30 (unique_ptr<T[], D>::unique_ptr(nullptr_t)): Likewise.
31 * testsuite/20_util/unique_ptr/cons/incomplete.cc: New test.
32 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error.
33 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Likewise.
34
35 2018-10-18 Jonathan Wakely <jwakely (a] redhat.com>
36
37 Backport from mainline
38 2018-10-18 Jonathan Wakely <jwakely (a] redhat.com>
39
40 PR libstdc++/87641
41 * include/bits/valarray_array.h (__valarray_sum): Use first element
42 to initialize accumulator instead of value-initializing it.
43 * testsuite/26_numerics/valarray/87641.cc: New test.
44
45 2018-10-15 Jonathan Wakely <jwakely (a] redhat.com>
46
47 * testsuite/22_locale/numpunct/members/char/3.cc: Adjust test to
48 account for change to glibc it_IT localedata (glibc bz#10797).
49
50 2018-10-15 Jonathan Wakely <jwakely (a] redhat.com>
51
52 Backport from mainline
53 2018-07-31 Jonathan Wakely <jwakely (a] redhat.com>
54
55 PR libstdc++/86751
56 * include/bits/stl_pair.h (__pair_base): New class with deleted copy
57 assignment operator.
58 (pair): Derive from __pair_base.
59 (pair::operator=): Remove deleted overload.
60 * python/libstdcxx/v6/printers.py (StdPairPrinter): New pretty printer
61 so that new base class isn't shown in GDB.
62 * testsuite/20_util/pair/86751.cc: New test.
63 * testsuite/20_util/pair/ref_assign.cc: New test.
64
65 2018-10-12 Jonathan Wakely <jwakely (a] redhat.com>
66
67 Backport from mainline
68 2018-08-30 Jonathan Wakely <jwakely (a] redhat.com>
69
70 * include/ext/pointer.h (_Pointer_adapter): Define operators for
71 pointer arithmetic using long long offsets.
72 * testsuite/ext/ext_pointer/1.cc: Test pointer arithmetic using
73 long long values.
74
75 2018-10-12 Jonathan Wakely <jwakely (a] redhat.com>
76
77 Backport from mainline
78 2018-08-22 Jonathan Wakely <jwakely (a] redhat.com>
79
80 PR libstdc++/87061
81 * include/experimental/regex [!_GLIBCXX_USE_CXX11_ABI]
82 (experimental::pmr::match_results, experimental::pmr::cmatch)
83 (experimental::pmr::smatch, experimental::pmr::wcmatch)
84 (experimental::pmr::wsmatch): Do not declare for gcc4-compatible ABI,
85 because COW strings don't support C++11 allocator model.
86 * include/experimental/string [!_GLIBCXX_USE_CXX11_ABI]
87 (experimental::pmr::basic_string, experimental::pmr::string)
88 (experimental::pmr::u16string, experimental::pmr::u32string)
89 (experimental::pmr::wstring): Likewise.
90
91 Backport from mainline
92 2018-08-15 Jonathan Wakely <jwakely (a] redhat.com>
93
94 * include/experimental/regex: Remove begin/end macros for namespace.
95 * include/experimental/string: Likewise.
96 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_deque.cc:
97 New test.
98 * testsuite/experimental/polymorphic_allocator/
99 pmr_typedefs_forward_list.cc: New test.
100 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_list.cc:
101 New test.
102 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_map.cc:
103 New test.
104 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_match.cc:
105 New test.
106 * testsuite/experimental/polymorphic_allocator/
107 pmr_typedefs_multimap.cc: New test.
108 * testsuite/experimental/polymorphic_allocator/
109 pmr_typedefs_multiset.cc: New test.
110 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_set.cc:
111 New test.
112 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
113 New test.
114 * testsuite/experimental/polymorphic_allocator/
115 pmr_typedefs_unordered_map.cc: New test.
116 * testsuite/experimental/polymorphic_allocator/
117 pmr_typedefs_unordered_multimap.cc: New test.
118 * testsuite/experimental/polymorphic_allocator/
119 pmr_typedefs_unordered_multiset.cc: New test.
120 * testsuite/experimental/polymorphic_allocator/
121 pmr_typedefs_unordered_set.cc: New test.
122 * testsuite/experimental/polymorphic_allocator/pmr_typedefs_vector.cc:
123 New test.
124
125 2018-10-12 Jonathan Wakely <jwakely (a] redhat.com>
126
127 Backport from mainline
128 2018-07-24 Jonathan Wakely <jwakely (a] redhat.com>
129
130 PR libstdc++/70966
131 * include/experimental/memory_resource (__get_default_resource): Use
132 placement new to create an object with dynamic storage duration.
133
134 Backport from mainline
135 2018-06-20 Jonathan Wakely <jwakely (a] redhat.com>
136
137 PR libstdc++/70966
138 * include/experimental/memory_resource (__resource_adaptor_imp): Add
139 static assertions to enforce requirements on pointer types.
140 (__resource_adaptor_imp::get_allocator()): Add noexcept.
141 (new_delete_resource, null_memory_resource): Return address of an
142 object with dynamic storage duration.
143 (__null_memory_resource): Remove.
144 * testsuite/experimental/memory_resource/70966.cc: New.
145
146 2018-10-12 Jonathan Wakely <jwakely (a] redhat.com>
147
148 PR libstdc++/77854
149 * doc/xml/manual/status_cxx1998.xml: Document size_type and
150 difference_type for containers.
151 * doc/html/*: Regenerate.
152
153 2018-10-12 Jonathan Wakely <jwakely (a] redhat.com>
154
155 Backport from mainline
156 2018-05-18 Jonathan Wakely <jwakely (a] redhat.com>
157
158 PR libstdc++/85098
159 * include/bits/regex.h [__cplusplus < 201703L] (basic_regex::icase)
160 (basic_regex::nosubs, basic_regex::optimize, basic_regex::collate)
161 (basic_regex::ECMAScript, basic_regex::basic, basic_regex::extended)
162 (basic_regex::awk, basic_regex::grep, basic_regex::egrep): Add
163 definitions.
164 * include/bits/regex_automaton.h (_NFA::_M_insert_state): Adjust
165 whitespace.
166 * testsuite/28_regex/basic_regex/85098.cc: New
167
168 2018-10-08 Joseph Myers <joseph (a] codesourcery.com>
169
170 Backport from mainline
171 2018-10-02 Joseph Myers <joseph (a] codesourcery.com>
172
173 * testsuite/lib/libstdc++.exp (libstdc++_init): Use
174 -fno-show-column in default cxxflags.
175
176 2018-08-08 Jonathan Wakely <jwakely (a] redhat.com>
177
178 Backport from mainline
179 2018-06-14 Daniel Trebbien <dtrebbien (a] gmail.com>
180 Jonathan Wakely <jwakely (a] redhat.com>
181
182 PR libstdc++/83982
183 * include/bits/vector.tcc (vector::_M_default_append(size_type)):
184 Default-construct new elements before moving existing ones.
185 * testsuite/23_containers/vector/capacity/resize/strong_guarantee.cc:
186 New.
187
188 Backport from mainline
189 2017-12-01 Jonathan Wakely <jwakely (a] redhat.com>
190
191 * include/std/type_traits (integral_constant): Make member functions
192 noexcept (LWG 2346).
193 * include/std/utility (integer_sequence): Likewise.
194
195 Backport from mainline
196 2018-06-18 Jonathan Wakely <jwakely (a] redhat.com>
197
198 LWG 3050 Fix cv-qualification of convertibility constraints
199 * include/std/chrono (duration, operator*, operator/, operator%): Use
200 const-qualified type as source type in is_convertible constraints.
201 * testsuite/20_util/duration/arithmetic/dr3050.cc: New.
202 * testsuite/20_util/duration/cons/dr3050.cc: New.
203 * testsuite/20_util/duration/literals/range.cc: Rename to...
204 * testsuite/20_util/duration/literals/range_neg.cc: Here. Adjust
205 dg-error lineno.
206
207 Backport from mainline
208 2017-11-16 Jonathan Wakely <jwakely (a] redhat.com>
209
210 * include/std/future (shared_future): Add noexcept to copy constructor
211 and copy-assignment operator (LWG 2799).
212
213 Backport from mainline
214 2017-06-17 Jonathan Wakely <jwakely (a] redhat.com>
215
216 PR libstdc++/80893
217 * testsuite/23_containers/vector/bool/80893.cc: Add { target c++11 }.
218
219 Backport from mainline
220 2017-05-31 Jonathan Wakely <jwakely (a] redhat.com>
221
222 PR libstdc++/80893
223 * include/bits/stl_bvector.h (vector<bool>::_M_initialize): Avoid
224 null pointer dereference when size is zero.
225 * testsuite/23_containers/vector/bool/80893.cc: New.
226 * testsuite/util/testsuite_allocator.h (PointerBase::PointerBase):
227 Add non-explicit constructor from nullptr.
228 (PointerBase::derived() const): Add const-qualified overload.
229
230 Backport from mainline
231 2017-12-14 Jonathan Wakely <jwakely (a] redhat.com>
232
233 PR libstdc++/68519
234 * include/std/condition_variable (condition_variable::wait_for):
235 Convert duration to native clock's duration before addition.
236 * testsuite/30_threads/condition_variable/members/68519.cc: New test.
237
238 Backport from mainline
239 2018-06-25 Jonathan Wakely <jwakely (a] redhat.com>
240
241 PR libstdc++/86292
242 * include/bits/stl_vector.h (vector::_M_range_initialize<InputIter>):
243 Add try-catch block.
244 * testsuite/23_containers/vector/cons/86292.cc: New.
245
246 Backport from mainline
247 2018-07-31 Jonathan Wakely <jwakely (a] redhat.com>
248
249 * doc/xml/manual/using.xml: Document all headers for C++11 and later.
250 * doc/html/*: Regenerate.
251
252 Backport from mainline
253 2018-08-03 Jonathan Wakely <jwakely (a] redhat.com>
254
255 * src/c++11/system_error.cc
256 (system_error_category::default_error_condition): Add workaround for
257 ENOTEMPTY and EEXIST having the same value on AIX.
258 * testsuite/19_diagnostics/error_category/system_category.cc: Add
259 extra testcases for EDOM, EILSEQ, ERANGE, EEXIST and ENOTEMPTY.
260
261 Backport from mainline
262 2018-08-01 Jonathan Wakely <jwakely (a] redhat.com>
263
264 PR libstdc++/60555
265 * src/c++11/system_error.cc
266 (system_error_category::default_error_condition): New override to
267 check for POSIX errno values.
268 * testsuite/19_diagnostics/error_category/generic_category.cc: New
269 * testsuite/19_diagnostics/error_category/system_category.cc: New
270 test.
271
272 Backport from mainline
273 2018-07-30 Jonathan Wakely <jwakely (a] redhat.com>
274
275 PR libstdc++/86734
276 * include/bits/stl_iterator.h (reverse_iterator::operator->): Use
277 addressof (LWG 2188).
278 * testsuite/24_iterators/reverse_iterator/dr2188.cc: New test.
279
280 Backport from mainline
281 2018-05-19 Jonathan Wakely <jwakely (a] redhat.com>
282
283 * src/c++11/codecvt.cc (__codecvt_utf8_base<wchar_t>::do_in)
284 [__SIZEOF_WCHAR_T__==2 && __BYTE_ORDER__!=__ORDER_BIG_ENDIAN__]: Set
285 little_endian element in bitmask.
286 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Run all tests.
287 * testsuite/22_locale/codecvt/codecvt_utf8/wchar_t/1.cc: New.
288
289 PR libstdc++/66145
290 Backport from mainline
291 2018-04-10 Jonathan Wakely <jwakely (a] redhat.com>
292
293 PR libstdc++/85222
294 * src/c++11/cxx11-ios_failure.cc (__construct_ios_failure)
295 (__destroy_ios_failure, is_ios_failure_handler): New functions.
296 * src/c++11/ios.cc (__throw_ios_failure): Remove definition.
297 (_GLIBCXX_USE_CXX11_ABI): Don't define here.
298 * src/c++98/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
299 ios_failure.cc to rewrite type info for __ios_failure.
300 * src/c++98/Makefile.in: Regenerate.
301 * src/c++98/ios_failure.cc [_GLIBCXX_USE_DUAL_ABI]
302 (__iosfailure, __iosfailure_type_info): New types.
303 (__throw_ios_failure): Define here.
304 * testsuite/27_io/ios_base/failure/dual_abi.cc: New.
305 * testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
306 add -D_GLIBCXX_USE_CXX11_ABI=0 to dg-options.
307 * testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
308 * testsuite/27_io/basic_istream/extractors_arithmetic/char/
309 exceptions_failbit.cc: Likewise.
310 * testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
311 exceptions_failbit.cc: Likewise.
312 * testsuite/27_io/basic_istream/extractors_other/char/
313 exceptions_null.cc: Likewise.
314 * testsuite/27_io/basic_istream/extractors_other/wchar_t/
315 exceptions_null.cc: Likewise.
316 * testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
317 * testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
318 * testsuite/27_io/basic_ostream/inserters_other/char/
319 exceptions_null.cc: Likewise.
320 * testsuite/27_io/basic_ostream/inserters_other/wchar_t/
321 exceptions_null.cc: Likewise.
322 * testsuite/27_io/ios_base/storage/2.cc: Likewise.
323
324 2018-07-05 Franois Dumont <fdumont (a] gcc.gnu.org>
325
326 Backport from mainline
327 2018-07-04 Franois Dumont <fdumont (a] gcc.gnu.org>
328
329 PR libstdc++/86272
330 * include/debug/string
331 (__gnu_debug::basic_string<>::insert<_Ite>(const_iterator, _Ite, _Ite)):
332 Use __glibcxx_check_insert_range.
333
334 2018-05-14 Jonathan Wakely <jwakely (a] redhat.com>
335
336 PR libstdc++/67554
337 * include/bits/valarray_array.h (_Array_copy_ctor<_Tp, true>)
338 (_Array_copier<_Tp, true>): Do not pass null pointers to memcpy.
339
340 2018-05-10 Jonathan Wakely <jwakely (a] redhat.com>
341
342 * doc/xml/manual/debug_mode.xml: Add array and forward_list to list
343 of C++11 containers with Debug Mode support.
344 * doc/xml/manual/using.xml: Document Dual ABI for ios_base::failure.
345 * doc/html/*: Regenerate.
346
347 2018-05-03 Jonathan Wakely <jwakely (a] redhat.com>
348
349 PR libstdc++/85632 use uintmax_t for arithmetic
350 * src/filesystem/ops.cc (experimental::filesystem::space): Perform
351 arithmetic in result type.
352 * testsuite/experimental/filesystem/operations/space.cc: New.
353
354 2018-03-02 Jonathan Wakely <jwakely (a] redhat.com>
355
356 Backport from mainline
357 2018-03-02 Jonathan Wakely <jwakely (a] redhat.com>
358
359 PR libstdc++/84671
360 * include/bits/parse_numbers.h (_Number_help): Add partial
361 specialization to handle digit separators. Adjust partial
362 specialization for recursion temrination to require _Pow == 1ULL.
363 * testsuite/20_util/duration/literals/84671.cc: New
364
365 2018-02-19 Jonathan Wakely <jwakely (a] redhat.com>
366
367 Backport from mainline
368 2018-02-15 Jonathan Wakely <jwakely (a] redhat.com>
369
370 PR libstdc++/81797
371 * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
372 * configure: Regenerate.
373 * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
374 defined.
375 * include/Makefile.in: Regenerate.
376
377 2018-01-29 Jonathan Wakely <jwakely (a] redhat.com>
378
379 Backport from mainline
380 2018-01-15 Jonathan Wakely <jwakely (a] redhat.com>
381
382 PR libstdc++/83833
383 * include/bits/random.h (chi_squared_distribution::param): Update
384 gamma distribution parameter.
385 * testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
386 test.
387
388 2018-01-19 Jonathan Wakely <jwakely (a] redhat.com>
389
390 Backport from mainline
391 2018-01-16 Jonathan Wakely <jwakely (a] redhat.com>
392
393 PR libstdc++/83834
394 * config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
395 pattern with exact match for std::cerr.
396
397 2018-01-15 Jonathan Wakely <jwakely (a] redhat.com>
398
399 * python/libstdcxx/v6/printers.py (register_type_printers): Remove
400 printer for experimental::any. Fix printers for experimental::optional
401 and experimental::basic_string_view.
402
403 Backport from mainline
404 2018-01-04 Jonathan Wakely <jwakely (a] redhat.com>
405
406 PR libstdc++/83626
407 * src/filesystem/ops.cc (remove(const path&, error_code&))): Do not
408 return an error for non-existent paths. Remove unnecessary
409 symlink_status call.
410 (remove_all(const path&)): Fix type of result variable.
411 (remove_all(const path&, error_code&))): Use non-throwing increment
412 for directory iterator. Do not return an error for non-existent paths.
413 * testsuite/experimental/filesystem/operations/remove.cc: New test.
414 * testsuite/experimental/filesystem/operations/remove_all.cc: Fix
415 expected results for non-existent paths.
416
417 2018-01-05 Jonathan Wakely <jwakely (a] redhat.com>
418
419 Backport from mainline
420 2017-11-14 Jonathan Wakely <jwakely (a] redhat.com>
421
422 * include/bits/locale_conv.h (wbuffer_convert::_M_conv_get): Fix typo.
423 * testsuite/22_locale/conversions/buffer/3.cc: New test.
424
425 Backport from mainline
426 2017-10-19 Jonathan Wakely <jwakely (a] redhat.com>
427
428 * testsuite/experimental/filesystem/iterators/
429 recursive_directory_iterator.cc: Ensure that error_code arguments are
430 cleared when required.
431 * testsuite/experimental/filesystem/operations/create_directory.cc:
432 Remove redundant check.
433 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
434 Ensure that error_code argument is cleared when required.
435
436 Backport from mainline
437 2017-12-27 Jonathan Wakely <jwakely (a] redhat.com>
438
439 PR libstdc++/83600
440 * include/bits/regex.h (match_results::end()): Return valid iterator
441 when not ready.
442 * testsuite/28_regex/match_results/ctors/char/default.cc: Check that
443 unready objects are empty and have equal begin and end iterators.
444 * testsuite/28_regex/match_results/ctors/wchar_t/default.cc: Likewise.
445
446 Backport from mainline
447 2017-12-27 Jonathan Wakely <jwakely (a] redhat.com>
448
449 PR libstdc++/83598
450 * include/bits/regex.h (basic_regex): Don't modify flags passed to
451 constructors.
452 * testsuite/28_regex/basic_regex/ctors/83598.cc: New test.
453
454 Backport from mainline
455 2017-12-14 Jonathan Wakely <jwakely (a] redhat.com>
456
457 PR libstdc++/83279
458 * src/filesystem/std-ops.cc (do_copy_file): Handle sendfile not
459 copying entire file.
460
461 Backport from mainline
462 2018-01-04 Jonathan Wakely <jwakely (a] redhat.com>
463
464 * include/experimental/fs_ops.h (exists(const path&, error_code&))):
465 Only check status_known once.
466
467 Backport from mainline
468 2017-10-25 Jonathan Wakely <jwakely (a] redhat.com>
469
470 PR libstdc++/79283
471 * src/filesystem/ops.cc (read_symlink): Handle st_size being zero.
472
473 2017-12-14 Jonathan Wakely <jwakely (a] redhat.com>
474
475 PR libstdc++/59568
476 * include/std/complex (operator>>): Only use putback if a character
477 was successfully extracted and only set the value if a number was
478 successfully extracted.
479 * testsuite/26_numerics/complex/inserters_extractors/char/59568.cc:
480 New test.
481
482 2017-11-11 John David Anglin <danglin (a] gcc.gnu.org>
483
484 Backport from mainline
485 2017-08-20 John David Anglin <danglin (a] gcc.gnu.org>
486
487 PR testsuite/81056
488 * testsuite/17_intro/names.cc: Undef 'd' and 'r' on __hpux__.
489
490 2017-10-25 Jonathan Wakely <jwakely (a] redhat.com>
491
492 * doc/xml/manual/status_cxx1998.xml: Correct statement about
493 what the doc covers.
494 * doc/xml/manual/status_cxxtr1.xml: Likewise.
495 * doc/xml/manual/status_cxxtr24733.xml: Likewise.
496 * doc/html/*: Regenerate.
497
498 2017-10-23 Jonathan Wakely <jwakely (a] redhat.com>
499
500 Backport from mainline
501 2017-07-18 Jonathan Wakely <jwakely (a] redhat.com>
502
503 PR libstdc++/81395
504 * include/bits/fstream.tcc (basic_filebuf::xsgetn): Don't set buffer
505 pointers for write mode after reading.
506 * testsuite/27_io/basic_filebuf/sgetn/char/81395.cc: New.
507
508 Backport from mainline
509 2017-10-19 Jonathan Wakely <jwakely (a] redhat.com>
510
511 * include/experimental/bits/fs_path.h (path::iterator++(int))
512 (path::iterator--(int)): Fix for paths with only one component.
513 * testsuite/experimental/filesystem/path/itr/traversal.cc: Test
514 post-increment and post-decrement.
515
516 2017-09-20 Jonathan Wakely <jwakely (a] redhat.com>
517
518 Backport from mainline
519 2017-02-16 Jonathan Wakely <jwakely (a] redhat.com>
520
521 PR libstdc++/60936
522 * src/c++11/snprintf_lite.cc (__concat_size_t): Calculate length
523 written to buffer, not length remaining in buffer.
524
525 Backport from mainline
526 2017-02-08 Gerald Pfeifer <gerald (a] pfeifer.com>
527
528 * src/c++11/snprintf_lite.cc (__err): Update bug reporting URL.
529
530 2017-09-18 Jonathan Wakely <jwakely (a] redhat.com>
531
532 Backport from mainline
533 2017-02-03 Jonathan Wakely <jwakely (a] redhat.com>
534
535 PR libstdc++/60936
536 * src/c++11/Makefile.am: Add new files.
537 * src/c++11/Makefile.in: Regenerate.
538 * src/c++11/cow-string-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
539 (operator<<, operator>>, getline): Move explicit instantiations to ...
540 * src/c++11/cow-string-io-inst.cc: ... new file.
541 * src/c++11/cow-wstring-inst.cc [!_GLIBCXX_USE_CXX11_ABI]
542 (operator<<, operator>>, getline): Move explicit instantiations to ...
543 * src/c++11/cow-wstring-io-inst.cc: ... new file.
544 * src/c++11/functexcept.cc (__throw_ios_failure, __throw_system_error)
545 (__throw_future_error, __throw_bad_function_call):
546 (__throw_regex_error): Move functions for C++11 exceptions to the
547 files that define the exception types.
548 * src/c++11/functional.cc (__throw_bad_function_call): Move here.
549 * src/c++11/future.cc (__throw_future_error): Likewise.
550 * src/c++11/ios.cc (__throw_ios_failure): Likewise.
551 * src/c++11/regex.cc (__throw_regex_error): Likewise.
552 * src/c++11/snprintf_lite.cc (__concat_size_t): Print decimal
553 representation directly instead of calling __int_to_char.
554 * src/c++11/sso_string.cc (__sso_string): New file for definition
555 of __sso_string type.
556 * src/c++11/string-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
557 explicit instantiations of narrow string I/O functions.
558 * src/c++11/system_error.cc (__throw_system_error): Move here.
559 (__sso_string): Move to new file.
560 * src/c++11/wstring-io-inst.cc [_GLIBCXX_USE_CXX11_ABI]: New file for
561 explicit instantiations of wide string I/O functions.
562 * src/c++98/misc-inst.cc [_GLIBCXX_USE_CXX11_ABI] (operator<<)
563 (operator>>, getline): Remove explicit instantiations from here.
564
565 2017-09-13 Jonathan Wakely <jwakely (a] redhat.com>
566
567 PR libstdc++/81468
568 * include/std/chrono (time_point(const time_point<_Dur2>&)): Add
569 missing constraint from LWG DR 1177.
570 * testsuite/20_util/duration/cons/dr1177.cc: New.
571 * testsuite/20_util/time_point/cons/81468.cc: New.
572 * testsuite/20_util/duration/literals/range.cc: Update dg-error line.
573
574 * doc/doxygen/mainpage.html: Fix broken URLs.
575
576 PR libstdc++/81835
577 * doc/xml/manual/extensions.xml: Replace unstable URL.
578 * doc/html/manual/ext_demangling.html: Regenerate.
579 * libsupc++/cxxabi.h (__cxa_demangle): Fix broken URL.
580
581 2017-09-05 Jonathan Wakely <jwakely (a] redhat.com>
582
583 * testsuite/20_util/owner_less/noexcept.cc: Remove owner_less<void>
584 tests.
585
586 2017-09-04 Jonathan Wakely <jwakely (a] redhat.com>
587
588 Backport from mainline
589 2017-08-09 Jonathan Wakely <jwakely (a] redhat.com>
590
591 PR libstdc++/79820
592 PR libstdc++/81751
593 * config/io/basic_file_stdio.cc (sys_open(FILE*, ios_base::openmode)):
594 Call fflush on the stream instead of calling sync() while _M_cfile is
595 null. Restore original value of errno.
596 * testsuite/ext/stdio_filebuf/char/79820.cc: New.
597 * testsuite/ext/stdio_filebuf/char/81751.cc: New.
598
599 Backport from mainline
600 2017-07-25 Jonathan Wakely <jwakely (a] redhat.com>
601
602 PR libstdc++/53984
603 * include/bits/basic_ios.h (basic_ios::_M_setstate): Adjust comment.
604 * include/bits/istream.tcc (basic_istream::sentry): Handle exceptions
605 during construction.
606 * include/std/istream: Adjust comments for formatted input functions
607 and unformatted input functions.
608 * testsuite/27_io/basic_fstream/53984.cc: New.
609 * testsuite/27_io/basic_istream/sentry/char/53984.cc: New.
610
611 Backport from mainline
612 2017-06-08 Jonathan Wakely <jwakely (a] redhat.com>
613
614 PR libstdc++/81017
615 * include/std/functional (function::function(function&&))
616 (function::operator=(function&&)): Add noexcept.
617 * testsuite/20_util/function/assign/move.cc: Check for noexcept.
618 * testsuite/20_util/function/cons/move.cc: Likewise.
619
620 Backport from mainline
621 2017-06-05 Jonathan Wakely <jwakely (a] redhat.com>
622
623 * include/bits/shared_ptr_base.h (__shared_ptr::owner_before)
624 (__weak_ptr::owner_before, _Sp_owner_less::operator()): Add noexcept
625 specifiers as per LWG 2873 and LWG 2942.
626 * testsuite/20_util/owner_less/noexcept.cc: New.
627 * testsuite/20_util/shared_ptr/observers/owner_before.cc: Test
628 noexcept guarantees.
629 * testsuite/20_util/weak_ptr/observers/owner_before.cc: Likewise.
630
631 Backport from mainline
632 2017-08-31 Jonathan Wakely <jwakely (a] redhat.com>
633
634 PR c++/82039
635 * include/ext/new_allocator.h (__gnu_cxx::new_allocator::allocate):
636 Adjust null pointer constant to avoid warning.
637
638 Backport from mainline
639 2017-08-18 Jonathan Wakely <jwakely (a] redhat.com>
640
641 PR libstdc++/81891
642 * include/bits/hashtable.h (_Hashtable(_InputIterator, _InputIterator,
643 size_type, const _H1&, const _H2&, const _Hash&, const _Equal&,
644 const _ExtractKey&, const allocator_type&)): Let destructor do clean
645 up if an exception is thrown.
646 * testsuite/23_containers/unordered_map/cons/81891.cc: New.
647
648 Backport from mainline
649 2017-07-31 Marek Polacek <polacek (a] redhat.com>
650
651 PR libstdc++/81599
652 * include/bits/stl_stack.h: Fix typo.
653
654 Backport from mainline
655 2017-07-10 Jonathan Wakely <jwakely (a] redhat.com>
656
657 PR libstdc++/81338
658 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI] (basic_string):
659 Declare basic_stringbuf to be a friend.
660 * include/bits/sstream.tcc (basic_stringbuf::overflow)
661 [_GLIBCXX_USE_CXX11_ABI]: Use unused capacity before reallocating.
662 * include/std/sstream (basic_stringbuf::__xfer_bufptrs): Update string
663 length to buffer length.
664 * testsuite/27_io/basic_stringstream/assign/81338.cc: New.
665
666 2017-07-12 Jonathan Wakely <jwakely (a] redhat.com>
667
668 * testsuite/30_threads/promise/members/at_thread_exit2.cc: Require
669 atomic builtins.
670
671 2017-07-11 Jonathan Wakely <jwakely (a] redhat.com>
672
673 Backport from mainline
674 2017-04-21 Jonathan Wakely <jwakely (a] redhat.com>
675
676 PR libstdc++/80316
677 * include/std/future (_State_baseV2::_Setter::operator()): Remove
678 _S_check calls that are done after the pointer to the shared state is
679 already dereferenced.
680 (_State_baseV2::_Setter<_Res, void>): Define specialization for void
681 as partial specialization so it can be defined within the definition
682 of _State_baseV2.
683 (_State_baseV2::__setter): Call _S_check.
684 (_State_baseV2::__setter(promise<void>*)): Add overload for use by
685 promise<void>::set_value and promise<void>::set_value_at_thread_exit.
686 (promise<T>, promise<T&>, promise<void>): Make _State a friend.
687 (_State_baseV2::_Setter<void, void>): Remove explicit specialization.
688 (promise<void>::set_value, promise<void>::set_value_at_thread_exit):
689 Use new __setter overload.
690 * testsuite/30_threads/promise/members/at_thread_exit2.cc: New test.
691 * testsuite/30_threads/promise/members/set_exception.cc: Test
692 promise<T&> and promise<void> specializations.
693 * testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
694 Test for no_state error condition.
695 * testsuite/30_threads/promise/members/set_value2.cc: Likewise.
696
697 2017-07-04 Release Manager
698
699 * GCC 6.4.0 released.
700
701 2017-06-16 Jonathan Wakely <jwakely (a] redhat.com>
702
703 * include/bits/locale_conv.h (wbuffer_convert::sync): Fix condition.
704 * testsuite/22_locale/conversions/buffer/2.cc: New.
705
706 * doc/xml/manual/appendix_contributing.xml: Link to the list of bad
707 names, and link to the test docs and note higher DejaGnu version
708 requirement.
709 * doc/xml/manual/allocator.xml: Fix ViewCVS URLs.
710 * doc/xml/manual/mt_allocator.xml: Likewise.
711 * doc/html/*: Regenerate.
712
713 * include/bits/locale_conv.h (wbuffer_convert::_M_put): Add missing
714 return statement.
715 * testsuite/23_containers/map/modifiers/insert_or_assign/1.cc: Add
716 missing return statements.
717 * testsuite/23_containers/unordered_map/modifiers/insert_or_assign.cc:
718 Likewise.
719
720 2017-06-07 Jonathan Wakely <jwakely (a] redhat.com>
721
722 PR libstdc++/81002
723 * include/bits/regex_compiler.h (__compile_nfa): Add template argument
724 list to specify traits type.
725 * testsuite/28_regex/basic_regex/ctors/basic/iter.cc: New.
726
727 2017-05-26 Jonathan Wakely <jwakely (a] redhat.com>
728
729 Backport from mainline
730 2017-01-20 Joe Seymour <joe.s (a] somniumtech.com>
731
732 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): Support uint20_t.
733 * configure: Regenerate.
734
735 Backport from mainline
736 2016-12-06 Felipe Magno de Almeida <felipe (a] expertisesolutions.com.br>
737
738 * src/c++11/cow-stdexcept.cc: Add special case for 16 bit pointers.
739
740 2017-05-18 Jonathan Wakely <jwakely (a] redhat.com>
741
742 Backport from mainline
743 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
744
745 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/
746 check_value.cc: Do not add special functions to namespace std in TR1
747 test.
748
749 Backport from mainline
750 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
751
752 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Only
753 run for C++11 and later.
754 * testsuite/ext/special_functions/conf_hyperg/check_value.cc:
755 Likewise.
756 * testsuite/ext/special_functions/conf_hyperg/compile.cc: Likewise.
757 * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
758 * testsuite/ext/special_functions/hyperg/check_value.cc: Likewise.
759 * testsuite/ext/special_functions/hyperg/compile.cc: Likewise.
760 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
761 Likewise.
762 * testsuite/special_functions/01_assoc_laguerre/check_value.cc:
763 Likewise.
764 * testsuite/special_functions/01_assoc_laguerre/compile.cc: Likewise.
765 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc:
766 Likewise.
767 * testsuite/special_functions/02_assoc_legendre/check_nan.cc:
768 Likewise.
769 * testsuite/special_functions/02_assoc_legendre/check_value.cc:
770 Likewise.
771 * testsuite/special_functions/02_assoc_legendre/compile.cc: Likewise.
772 * testsuite/special_functions/02_assoc_legendre/compile_2.cc:
773 * testsuite/special_functions/03_beta/check_nan.cc: Likewise.
774 * testsuite/special_functions/03_beta/check_value.cc: Likewise.
775 * testsuite/special_functions/03_beta/compile.cc: Likewise.
776 * testsuite/special_functions/03_beta/compile_2.cc: Likewise.
777 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: Likewise.
778 * testsuite/special_functions/04_comp_ellint_1/check_value.cc:
779 Likewise.
780 * testsuite/special_functions/04_comp_ellint_1/compile.cc: Likewise.
781 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Likewise.
782 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: Likewise.
783 * testsuite/special_functions/05_comp_ellint_2/check_value.cc:
784 Likewise.
785 * testsuite/special_functions/05_comp_ellint_2/compile.cc: Likewise.
786 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Likewise.
787 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: Likewise.
788 * testsuite/special_functions/06_comp_ellint_3/check_value.cc:
789 Likewise.
790 * testsuite/special_functions/06_comp_ellint_3/compile.cc: Likewise.
791 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Likewise.
792 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: Likewise.
793 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc:
794 Likewise.
795 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: Likewise.
796 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Likewise.
797 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: Likewise.
798 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: Likewise.
799 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc:
800 Likewise.
801 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: Likewise.
802 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Likewise.
803 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: Likewise.
804 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc:
805 Likewise.
806 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: Likewise.
807 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Likewise.
808 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: Likewise.
809 * testsuite/special_functions/10_cyl_neumann/check_value.cc: Likewise.
810 * testsuite/special_functions/10_cyl_neumann/compile.cc: Likewise.
811 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Likewise.
812 * testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
813 * testsuite/special_functions/11_ellint_1/check_value.cc: Likewise.
814 * testsuite/special_functions/11_ellint_1/compile.cc: Likewise.
815 * testsuite/special_functions/11_ellint_1/compile_2.cc: Likewise.
816 * testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
817 * testsuite/special_functions/12_ellint_2/check_value.cc: Likewise.
818 * testsuite/special_functions/12_ellint_2/compile.cc: Likewise.
819 * testsuite/special_functions/12_ellint_2/compile_2.cc: Likewise.
820 * testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
821 * testsuite/special_functions/13_ellint_3/check_value.cc: Likewise.
822 * testsuite/special_functions/13_ellint_3/compile.cc: Likewise.
823 * testsuite/special_functions/13_ellint_3/compile_2.cc: Likewise.
824 * testsuite/special_functions/14_expint/check_nan.cc: Likewise.
825 * testsuite/special_functions/14_expint/check_value.cc: Likewise.
826 * testsuite/special_functions/14_expint/compile.cc: Likewise.
827 * testsuite/special_functions/14_expint/compile_2.cc: Likewise.
828 * testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
829 * testsuite/special_functions/15_hermite/check_value.cc: Likewise.
830 * testsuite/special_functions/15_hermite/compile.cc: Likewise.
831 * testsuite/special_functions/15_hermite/compile_2.cc: Likewise.
832 * testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
833 * testsuite/special_functions/16_laguerre/check_value.cc: Likewise.
834 * testsuite/special_functions/16_laguerre/compile.cc: Likewise.
835 * testsuite/special_functions/16_laguerre/compile_2.cc: Likewise.
836 * testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
837 * testsuite/special_functions/17_legendre/check_value.cc: Likewise.
838 * testsuite/special_functions/17_legendre/compile.cc: Likewise.
839 * testsuite/special_functions/17_legendre/compile_2.cc: Likewise.
840 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: Likewise.
841 * testsuite/special_functions/18_riemann_zeta/check_value.cc:
842 Likewise.
843 * testsuite/special_functions/18_riemann_zeta/compile.cc: Likewise.
844 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Likewise.
845 * testsuite/special_functions/19_sph_bessel/check_nan.cc: Likewise.
846 * testsuite/special_functions/19_sph_bessel/check_value.cc: Likewise.
847 * testsuite/special_functions/19_sph_bessel/compile.cc: Likewise.
848 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Likewise.
849 * testsuite/special_functions/20_sph_legendre/check_nan.cc: Likewise.
850 * testsuite/special_functions/20_sph_legendre/check_value.cc:
851 Likewise.
852 * testsuite/special_functions/20_sph_legendre/compile.cc: Likewise.
853 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Likewise.
854 * testsuite/special_functions/21_sph_neumann/check_nan.cc: Likewise.
855 * testsuite/special_functions/21_sph_neumann/check_value.cc: Likewise.
856 * testsuite/special_functions/21_sph_neumann/compile.cc: Likewise.
857 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Likewise.
858
859 Backport from mainline
860 2016-07-31 Jonathan Wakely <jwakely (a] redhat.com>
861
862 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
863 Adjust dg-prune-output pattern for error in C++98 mode.
864
865 Backport from mainline
866 2016-07-28 Jonathan Wakely <jwakely (a] redhat.com>
867
868 * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
869 Adjust dg-prune-output pattern for error in C++98 mode.
870 * testsuite/23_containers/deque/requirements/dr438/
871 constructor_1_neg.cc: Likewise.
872 * testsuite/23_containers/deque/requirements/dr438/
873 constructor_2_neg.cc: Likewise.
874 * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
875 Likewise.
876 * testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
877 Likewise.
878 * testsuite/23_containers/list/requirements/dr438/
879 constructor_1_neg.cc: Likewise.
880 * testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
881 Likewise.
882 * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
883 Likewise.
884 * testsuite/23_containers/vector/requirements/dr438/
885 constructor_1_neg.cc: Likewise.
886 * testsuite/23_containers/vector/requirements/dr438/
887 constructor_2_neg.cc: Likewise.
888 * testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
889 Likewise.
890
891 Backport from mainline
892 2016-08-01 Jonathan Wakely <jwakely (a] redhat.com>
893
894 * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Use
895 C++98-compatible initialization for array.
896
897 Backport from mainline
898 2016-08-01 Jonathan Wakely <jwakely (a] redhat.com>
899
900 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc:
901 Limit test to C++11 and later.
902
903 Backport from mainline
904 2016-08-17 Jonathan Wakely <jwakely (a] redhat.com>
905
906 * testsuite/20_util/tuple/67844.cc: Require c++11 effective target.
907 * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Likewise.
908 * testsuite/27_io/rvalue_streams.cc: Likewise.
909
910 Backport from mainline
911 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
912
913 * testsuite/18_support/bad_exception/23591_thread-1.c: Skip test if
914 options are present that aren't valid for C.
915 * testsuite/abi/header_cxxabi.c: Likewise.
916
917 Backport from mainline
918 2016-04-18 Jonathan Wakely <jwakely (a] redhat.com>
919
920 * testsuite/experimental/memory_resource/null_memory_resource.cc:
921 Don't include internal header.
922 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
923 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
924 Likewise. Add licence and change to compile-only test.
925
926 Backport from mainline
927 2016-08-01 Jonathan Wakely <jwakely (a] redhat.com>
928
929 * testsuite/27_io/ios_base/types/fmtflags/case_label.cc: Make test
930 supported for C++11 and later.
931 * testsuite/27_io/ios_base/types/iostate/case_label.cc: Likewise.
932 * testsuite/27_io/ios_base/types/openmode/case_label.cc: Likewise.
933
934 Backport from mainline
935 2017-03-23 Jonathan Wakely <jwakely (a] redhat.com>
936
937 * testsuite/23_containers/list/operations/78389.cc: Fix for C++11
938 mode. Fix less-than to define a valid strict weak ordering.
939
940 Backport from mainline
941 2017-04-24 Jonathan Wakely <jwakely (a] redhat.com>
942
943 PR libstdc++/80504
944 * include/std/functional (ref, cref): Qualify calls.
945 * testsuite/20_util/reference_wrapper/80504.cc: New test.
946
947 Backport from mainline
948 2017-04-24 Jonathan Wakely <jwakely (a] redhat.com>
949
950 PR libstdc++/80493
951 * include/experimental/optional (optional::swap): Fix exception
952 specification.
953
954 Backport from mainline
955 2017-04-19 Jonathan Wakely <jwakely (a] redhat.com>
956
957 PR libstdc++/80448
958 * include/experimental/bits/fs_dir.h (directory_iterator)
959 (recursive_directory_iterator): Remove noexcept from defaulted
960 constructors.
961
962 Backport from mainline
963 2017-04-03 Jonathan Wakely <jwakely (a] redhat.com>
964
965 * testsuite/20_util/reference_wrapper/invoke.cc: Uncomment tests
966 that no longer fail.
967
968 Backport from mainline
969 2017-04-03 Jonathan Wakely <jwakely (a] redhat.com>
970
971 * include/bits/ios_base.h: Correct comment.
972 * testsuite/util/testsuite_hooks.h: Likewise.
973
974 Backport from mainline
975 2017-03-28 Jonathan Wakely <jwakely (a] redhat.com>
976
977 PR libstdc++/80137
978 * include/bits/random.tcc (generate_canonical): Use std::nextafter
979 or numeric_limits::epsilon() to reduce out-of-range values.
980 * testsuite/26_numerics/random/uniform_real_distribution/operators/
981 64351.cc: Verify complexity requirement is met.
982
983 Backport from mainline
984 2017-03-16 Jonathan Wakely <jwakely (a] redhat.com>
985
986 PR libstdc++/67440
987 * python/libstdcxx/v6/printers.py (find_type): Avoid gdb.Type.name
988 for GDB 7.6 compatibility, use gdb.Type.unqualified instead.
989
990 Backport from mainline
991 2017-01-17 Jonathan Wakely <jwakely (a] redhat.com>
992
993 PR libstdc++/69699
994 * doc/xml/manual/abi.xml (abi.versioning.history): Explain why the
995 _GLIBCXX__ macro is not useful. Remove redundant date information
996 and link to the GCC release timeline.
997 (abi.versioning.active): Move partial sentence into the previous
998 paragraph.
999 * doc/html/*: Regenerate.
1000
1001 * doc/xml/manual/abi.xml: Document libstdc++.so.6.0.22 version.
1002
1003 Backport from mainline
1004 2016-12-21 Jonathan Wakely <jwakely (a] redhat.com>
1005
1006 PR libstdc++/71444
1007 * config/os/mingw32-w64/error_constants.h
1008 (address_family_not_supported, address_in_use, address_not_available)
1009 (already_connected, connection_aborted, connection_already_in_progress)
1010 connection_refused, connection_reset, cross_device_link)
1011 (destination_address_required, host_unreachable, message_size)
1012 (network_down, network_reset, network_unreachable, no_buffer_space)
1013 (no_protocol_option, not_a_socket, not_connected, operation_canceled)
1014 (operation_in_progress, operation_not_supported, protocol_error)
1015 (protocol_not_supported, too_many_links, too_many_symbolic_link_levels)
1016 (value_too_large, wrong_protocol_type): Define.
1017 (bad_message, identifier_removed, no_link, no_message_available)
1018 (no_message, no_stream_resources, not_a_stream, owner_dead)
1019 (state_not_recoverable, stream_timeout, text_file_busy): Define
1020 conditionally.
1021 * testsuite/19_diagnostics/headers/system_error/errc_std_c++0x.cc:
1022 Guard test for no_message with _GLIBCXX_HAVE_ENOMSG.
1023
1024 Backport from mainline
1025 2016-11-09 Tim Shen <timshen (a] google.com>
1026
1027 PR libstdc++/78236
1028 * libstdc++-v3/include/bits/regex.h (regex_iterator::regex_iterator()):
1029 Define end() as _M_pregex == nullptr.
1030 * libstdc++-v3/include/bits/regex.tcc (regex_iterator::operator==(),
1031 regex_iterator::operator++()): Fix operator==() and operator++() to
1032 look at null-ness of _M_pregex on both sides.
1033 * testsuite/28_regex/regression.cc: New testcase.
1034
1035 2017-05-18 Jonathan Wakely <jwakely (a] redhat.com>
1036
1037 * testsuite/libstdc++-prettyprinters/59161.cc: Fix for C++98 mode.
1038
1039 2017-04-03 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1040
1041 Backport from mainline
1042 2017-04-03 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1043
1044 PR libstdc++/79141
1045 * include/bits/stl_pair.h (__nonesuch_no_braces): New.
1046 (operator=(typename conditional<
1047 __and_<is_copy_assignable<_T1>,
1048 is_copy_assignable<_T2>>::value,
1049 const pair&, const __nonesuch&>::type)): Change __nonesuch
1050 to __nonesuch_no_braces.
1051 (operator=(typename conditional<
1052 __not_<__and_<is_copy_assignable<_T1>,
1053 is_copy_assignable<_T2>>>::value,
1054 const pair&, const __nonesuch&>::type)): Likewise.
1055 (operator=(typename conditional<
1056 __and_<is_move_assignable<_T1>,
1057 is_move_assignable<_T2>>::value,
1058 pair&&, __nonesuch&&>::type)): Likewise.
1059 * testsuite/20_util/pair/79141.cc: New.
1060
1061 2017-03-28 Jonathan Wakely <jwakely (a] redhat.com>
1062
1063 PR libstdc++/80137
1064 * include/bits/random.tcc (generate_canonical): Use std::nextafter
1065 or numeric_limits::epsilon() to reduce out-of-range values.
1066 * testsuite/26_numerics/random/uniform_real_distribution/operators/
1067 64351.cc: Verify complexity requirement is met.
1068
1069 Backport from mainline
1070 2017-03-15Xi Ruoyao<ryxi (a] stu.xidian.edu.cn>
1071
1072 PR libstdc++/62045
1073 * include/ext/pb_ds/qdetail/binary_heap_/binary_heap_.hpp
1074 (is_heap): Remove.
1075 (push_heap): Remove the wrong checking using is_heap.
1076 (make_heap): Remove the assertion using is_heap.
1077 * include/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp
1078 (modify): Ditto.
1079 (resize_for_insert_if_needed): Add PB_DS_ASSERT_VALID after
1080 calling make_heap.
1081
1082 Backport from mainline
1083 2017-03-15 Jonathan Wakely <jwakely (a] redhat.com>
1084
1085 PR libstdc++/62045
1086 * testsuite/ext/pb_ds/regression/priority_queue_binary_heap-62045.cc:
1087 New test.
1088 * testsuite/ext/pb_ds/regression/priority_queues.cc: Fix copy&paste
1089 error in comment.
1090
1091 Backport from mainline
1092 2017-02-23 Jonathan Wakely <jwakely (a] redhat.com>
1093
1094 * include/experimental/iterator: Include <iterator>.
1095 * testsuite/experimental/iterator/requirements.cc: Check for contents
1096 of <iterator>.
1097
1098 2017-03-17 Jonathan Wakely <jwakely (a] redhat.com>
1099
1100 Backport from mainline
1101 2017-03-17 Jonathan Wakely <jwakely (a] redhat.com>
1102
1103 * src/c++11/codecvt.cc (range): Add non-type template parameter and
1104 define oerloaded operators for reading and writing code units.
1105 (range<Elem, false>): Define partial specialization for accessing
1106 wide characters in potentially unaligned byte ranges.
1107 (ucs2_span(const char16_t*, const char16_t*, ...))
1108 (ucs4_span(const char16_t*, const char16_t*, ...)): Change parameters
1109 to range<const char16_t, false> in order to avoid unaligned reads.
1110 (__codecvt_utf16_base<char16_t>::do_out)
1111 (__codecvt_utf16_base<char32_t>::do_out)
1112 (__codecvt_utf16_base<wchar_t>::do_out): Use range specialization for
1113 unaligned data to avoid unaligned writes.
1114 (__codecvt_utf16_base<char16_t>::do_in)
1115 (__codecvt_utf16_base<char32_t>::do_in)
1116 (__codecvt_utf16_base<wchar_t>::do_in): Likewise for writes. Return
1117 error if there are unprocessable trailing bytes.
1118 (__codecvt_utf16_base<char16_t>::do_length)
1119 (__codecvt_utf16_base<char32_t>::do_length)
1120 (__codecvt_utf16_base<wchar_t>::do_length): Pass arguments of type
1121 range<const char16_t, false> to span functions.
1122 * testsuite/22_locale/codecvt/codecvt_utf16/misaligned.cc: New test.
1123
1124 Backport from mainline
1125 2017-03-16 Jonathan Wakely <jwakely (a] redhat.com>
1126
1127 PR libstdc++/79980
1128 * src/c++11/codecvt.cc (to_integer(codecvt_mode)): Fix target type.
1129
1130 PR libstdc++/80041
1131 * src/c++11/codecvt.cc (__codecvt_utf16_base<wchar_t>::do_out)
1132 (__codecvt_utf16_base<wchar_t>::do_in): Convert char arguments to
1133 char16_t to work with UTF-16 instead of UTF-8.
1134 * testsuite/22_locale/codecvt/codecvt_utf16/80041.cc: New test.
1135
1136 * src/c++11/codecvt.cc (codecvt<char16_t, char, mbstate_t>)
1137 (codecvt<char32_t, char, mbstate_t>, __codecvt_utf8_base<char16_t>)
1138 (__codecvt_utf8_base<char32_t>, __codecvt_utf8_base<wchar_t>)
1139 (__codecvt_utf16_base<char16_t>, __codecvt_utf16_base<char32_t>)
1140 (__codecvt_utf16_base<wchar_t>, __codecvt_utf8_utf16_base<char16_t>)
1141 (__codecvt_utf8_utf16_base<char32_t>)
1142 (__codecvt_utf8_utf16_base<wchar_t>): Fix do_encoding() and
1143 do_max_length() return values.
1144 * testsuite/22_locale/codecvt/codecvt_utf16/members.cc: New test.
1145 * testsuite/22_locale/codecvt/codecvt_utf8/members.cc: New test.
1146 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/members.cc: New test.
1147
1148 PR libstdc++/79980
1149 * include/bits/locale_conv.h (__do_str_codecvt): Set __count on
1150 error path.
1151 * src/c++11/codecvt.cc (operator&=, operator|=, operator~): Overloads
1152 for manipulating codecvt_mode values.
1153 (read_utf16_bom): Compare input to BOM constants instead of integral
1154 constants that depend on endianness. Take mode parameter by
1155 reference and adjust it, to distinguish between no BOM present and
1156 UTF-16BE BOM present.
1157 (ucs4_in, ucs2_span, ucs4_span): Adjust calls to read_utf16_bom.
1158 (surrogates): New enumeration type.
1159 (utf16_in, utf16_out): Add surrogates parameter to choose between
1160 UTF-16 and UCS2 behaviour.
1161 (utf16_span, ucs2_span): Use std::min not std::max.
1162 (ucs2_out): Use std::min not std::max. Disallow surrogate pairs.
1163 (ucs2_in): Likewise. Adjust calls to read_utf16_bom.
1164 * testsuite/22_locale/codecvt/codecvt_utf16/79980.cc: New test.
1165 * testsuite/22_locale/codecvt/codecvt_utf8/79980.cc: New test.
1166
1167 PR libstdc++/79511
1168 * src/c++11/codecvt.cc (write_utf16_code_point): Don't write 0xffff
1169 as a surrogate pair.
1170 (__codecvt_utf8_utf16_base<char32_t>::do_in): Use native endianness
1171 for internal representation.
1172 (__codecvt_utf8_utf16_base<wchar_t>::do_in): Likewise.
1173 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/79511.cc: New test.
1174
1175 2017-03-14 Jonathan Wakely <jwakely (a] redhat.com>
1176
1177 * testsuite/17_intro/names.cc: Undefine macros that clash with
1178 identifiers in AIX system headers.
1179
1180 2017-03-13 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1181
1182 PR libstdc++/80034
1183 * include/bits/list.tcc (merge(list&&)): Use const for the size_t
1184 in the function and in the catch-block, qualify uses of std::distance.
1185 (merge(list&&, _StrictWeakOrdering)): Likewise.
1186 * testsuite/23_containers/list/operations/80034.cc: New.
1187
1188 2017-03-10 George Lander <george.lander (a] arm.com>
1189
1190 * acinclude.m4 (glibcxx_cv_obsolete_isnan): Define
1191 _GLIBCXX_INCLUDE_NEXT_C_HEADERS before including math.h.
1192 * configure: Regenerate.
1193
1194 2017-03-02 Jonathan Wakely <jwakely (a] redhat.com>
1195
1196 PR libstdc++/79789
1197 * include/bits/ios_base.h (make_error_code, make_error_condition):
1198 Likewise.
1199 * include/bits/mask_array.h (mask_array): Likewise.
1200 * include/bits/regex.h (regex_token_iterator): Likewise.
1201 * include/bits/slice_array.h (slice_array): Likewise.
1202 * include/std/memory (undeclare_no_pointers): Likewise.
1203 * testsuite/17_intro/names.cc: New test.
1204
1205 2017-02-15 Jonathan Wakely <jwakely (a] redhat.com>
1206
1207 PR libstdc++/79114
1208 * testsuite/18_support/nested_exception/79114.cc: Add dg-require.
1209
1210 Backport from mainline
1211 2016-12-15 Jonathan Wakely <jwakely (a] redhat.com>
1212
1213 PR libstdc++/59170
1214 * python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
1215 (StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
1216 (StdRbtreeIteratorPrinter.to_string)
1217 (StdDequeIteratorPrinter.to_string): Add check for value-initialized
1218 iterators.
1219 * testsuite/libstdc++-prettyprinters/simple.cc: Test them.
1220 * testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
1221
1222 Backport from mainline
1223 2016-12-15 Jonathan Wakely <jwakely (a] redhat.com>
1224
1225 PR libstdc++/59161
1226 * python/libstdcxx/v6/printers.py (StdListIteratorPrinter.to_string)
1227 (StdSlistIteratorPrinter.to_string, StdVectorIteratorPrinter.to_string)
1228 (StdRbtreeIteratorPrinter.to_string, StdDequeIteratorPrinter.to_string)
1229 (StdDebugIteratorPrinter.to_string): Return string instead of
1230 gdb.Value.
1231 * testsuite/libstdc++-prettyprinters/59161.cc: New test.
1232
1233 Backport from mainline
1234 2016-12-15 Jonathan Wakely <jwakely (a] redhat.com>
1235
1236 * python/libstdcxx/v6/printers.py (UniquePointerPrinter.to_string):
1237 Remove redundant parentheses.
1238 (RbtreeIterator, StdRbtreeIteratorPrinter): Add docstrings.
1239 (StdForwardListPrinter.to_string): Remove redundant parentheses.
1240 (StdExpOptionalPrinter.to_string): Use string formatting instead of
1241 concatenation.
1242 (TemplateTypePrinter): Adjust whitespace.
1243
1244 Backport from mainline
1245 2016-12-15 Jonathan Wakely <jwakely (a] redhat.com>
1246
1247 * python/libstdcxx/v6/xmethods.py (UniquePtrGetWorker.__init__): Use
1248 correct element type for unique_ptr<T[]>.
1249 (UniquePtrGetWorker._supports, UniquePtrDerefWorker._supports): New
1250 functions to disable unsupported operators for unique_ptr<T[]>.
1251 (UniquePtrSubscriptWorker): New worker for operator[].
1252 (UniquePtrMethodsMatcher.__init__): Register UniquePtrSubscriptWorker.
1253 (UniquePtrMethodsMatcher.match): Call _supports on the chosen worker.
1254 (SharedPtrGetWorker, SharedPtrDerefWorker, SharedPtrSubscriptWorker)
1255 (SharedPtrUseCountWorker, SharedPtrUniqueWorker): New workers.
1256 (SharedPtrMethodsMatcher): New matcher for shared_ptr.
1257 (register_libstdcxx_xmethods): Register SharedPtrMethodsMatcher.
1258 * testsuite/libstdc++-xmethods/unique_ptr.cc: Test arrays.
1259 * testsuite/libstdc++-xmethods/shared_ptr.cc: New test.
1260
1261 2017-02-14 Jonathan Wakely <jwakely (a] redhat.com>
1262
1263 Backport from mainline
1264 2017-01-20 Jonathan Wakely <jwakely (a] redhat.com>
1265
1266 PR libstdc++/72792
1267 * include/bits/alloc_traits.h (__allocator_traits_base::__diff_type)
1268 (__allocator_traits_base::__size_type): Remove.
1269 (allocator_traits::_Ptr): New class template to detect const and void
1270 pointer types without instantiating pointer_traits::rebind
1271 unnecessarily.
1272 (allocator_traits::_Diff): Likewise for detecting difference_type.
1273 (allocator_traits::_Size): New class template to detect size_type
1274 without instantiating make_unsigned unnecessarily.
1275 * include/bits/ptr_traits.h (pointer_traits::element_type): Use
1276 __detected_or_t instead of __detected_or_t_.
1277 * include/std/type_traits (__detected_or_t_): Remove.
1278 * testsuite/20_util/allocator_traits/members/pointers.cc: New test.
1279
1280 Backport from mainline
1281 2017-01-20 Jonathan Wakely <jwakely (a] redhat.com>
1282
1283 PR libstdc++/72792
1284 PR libstdc++/72793
1285 * include/bits/alloc_traits.h (__allocator_traits_base::__rebind):
1286 Replace with class template using void_t.
1287 (__alloc_rebind): Define in terms of
1288 __allocator_traits_base::__rebind.
1289 (allocator_traits): Remove unconditional static_assert for
1290 rebind_alloc.
1291 * include/bits/ptr_traits.h (__replace_first_arg): Remove type member.
1292 (pointer_traits::__rebind): Replace with class template using void_t.
1293 (pointer_traits::rebind): Define in terms of __rebind.
1294 (pointer_traits): Remove unconditional static_assert for rebind.
1295 * testsuite/20_util/allocator_traits/members/rebind_alloc.cc: New test.
1296 * testsuite/20_util/pointer_traits/rebind.cc: New test.
1297
1298 Backport from mainline
1299 2017-01-20 Jonathan Wakely <jwakely (a] redhat.com>
1300
1301 PR libstdc++/69321
1302 * include/experimental/any (__any_caster): Avoid instantiating
1303 manager function for types that can't be stored in any.
1304 * testsuite/experimental/any/misc/any_cast.cc: Test non-copyable type.
1305
1306 Backport from mainline
1307 2017-01-18 Jonathan Wakely <jwakely (a] redhat.com>
1308
1309 PR libstdc++/69301
1310 * include/std/atomic (atomic<T>::load, atomic<T>::exchange): Use
1311 aligned buffer instead of default-initialized variable.
1312 * testsuite/29_atomics/atomic/69301.cc: New test.
1313 * include/experimental/memory (observer_ptr::release): Use reserved
1314 name.
1315 * include/ext/pointer.h (_Pointer_adapter::operator++(int))
1316 (_Pointer_adapter::operator--(int)): Likewise.
1317
1318 Backport from mainline
1319 2017-01-17 Jonathan Wakely <jwakely (a] redhat.com>
1320
1321 PR libstdc++/79114
1322 * libsupc++/nested_exception.h (throw_with_nested): Use decay instead
1323 of remove_reference.
1324 * testsuite/18_support/nested_exception/79114.cc: New test.
1325
1326 Backport from mainline
1327 2017-01-16 Jonathan Wakely <jwakely (a] redhat.com>
1328
1329 PR libstdc++/78702
1330 * include/bits/locale_classes.h (locale::facet::__shim): Change from
1331 private to protected.
1332 * src/c++11/cxx11-shim_facets.cc (__shim_accessor): Define helper to
1333 make locale::facet::__shim accessible.
1334
1335 Backport from mainline
1336 2017-01-11 Jonathan Wakely <jwakely (a] redhat.com>
1337
1338 PR libstdc++/78134
1339 * include/bits/stl_map.h (map::lower_bound, map::upper_bound)
1340 (map::equal_range): Fix return type of heterogeneous overloads.
1341 * include/bits/stl_multimap.h (multimap::lower_bound)
1342 (multimap::upper_bound, multimap::equal_range): Likewise.
1343 * include/bits/stl_multiset.h (multiset::lower_bound)
1344 (multiset::upper_bound, multiset::equal_range): Likewise.
1345 * include/bits/stl_set.h (set::lower_bound, set::upper_bound)
1346 (set::equal_range): Likewise.
1347 * testsuite/23_containers/map/operations/2.cc: Check return types.
1348 * testsuite/23_containers/multimap/operations/2.cc: Likewise.
1349 * testsuite/23_containers/multiset/operations/2.cc: Likewise.
1350 * testsuite/23_containers/set/operations/2.cc: Likewise.
1351
1352 Backport from mainline
1353 2017-01-11 Jonathan Wakely <jwakely (a] redhat.com>
1354
1355 PR libstdc++/78273
1356 * include/bits/stl_map.h (map::count<_Kt>(const _Kt&)): Don't assume
1357 the heterogeneous comparison can only find one match.
1358 * include/bits/stl_set.h (set::count<_Kt>(const _Kt&)): Likewise.
1359 * testsuite/23_containers/map/operations/2.cc: Test count works with
1360 comparison function that just partitions rather than sorting.
1361 * testsuite/23_containers/set/operations/2.cc: Likewise.
1362
1363 2017-02-01 Jonathan Wakely <jwakely (a] redhat.com>
1364
1365 PR libstdc++/78346
1366 * include/bits/predefined_ops.h (_Iter_equals_iter): Store iterator
1367 not its referent.
1368 (_Iter_comp_to_iter): Likewise.
1369 * testsuite/25_algorithms/search/78346.cc: New test.
1370
1371 PR libstdc++/79195
1372 * include/experimental/array (make_array): Use common_type<_Dest>
1373 and delay instantiation of common_type until after conditional_t.
1374 Qualify std::forward call.
1375 (to_array): Add exception specification.
1376 * testsuite/experimental/array/make_array.cc: Test argument types
1377 without a common type.
1378
1379 PR libstdc++/79254
1380 * include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI]
1381 (basic_string::operator=(const basic_string&)): If source object is
1382 small just deallocate, otherwise perform new allocation before
1383 making any changes.
1384 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
1385 Test exception-safety of copy assignment when allocator propagates.
1386 * testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
1387 Likewise.
1388 * testsuite/util/testsuite_allocator.h (uneq_allocator::swap): Make
1389 std::swap visible.
1390
1391 2017-01-22 Gerald Pfeifer <gerald (a] pfeifer.com>
1392
1393 Backport from mainline
1394 2017-01-01 Gerald Pfeifer <gerald (a] pfeifer.com>
1395
1396 * doc/xml/faq.xml: Update address of C++ ABI link.
1397 * doc/xml/manual/abi.xml: Ditto.
1398
1399 2017-01-16 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1400
1401 Backport from mainline
1402 2017-01-16 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1403
1404 PR libstdc++/78389
1405 * include/bits/list.tcc (merge(list&&)): Fix backwards size adjustments.
1406 (merge(list&&, _StrictWeakOrdering)): Likewise.
1407 * testsuite/23_containers/list/operations/78389.cc: Add
1408 better test for the sizes.
1409
1410 2017-01-15 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1411
1412 Backport from mainline
1413 2017-01-13 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1414
1415 PR libstdc++/78389
1416 * include/bits/list.tcc (merge(list&&)):
1417 Adjust list sizes if the comparator throws.
1418 (merge(list&&, _StrictWeakOrdering)): Likewise.
1419 * testsuite/23_containers/list/operations/78389.cc: New.
1420
1421 2017-01-15 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1422
1423 Backport from mainline
1424 2016-12-19 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1425
1426 Make the perfect-forwarding constructor of a two-element tuple
1427 sfinae away when the first argument is an allocator_arg.
1428 * include/std/tuple (tuple(_U1&&, _U2&&)): Constrain.
1429 * testsuite/20_util/tuple/cons/allocator_with_any.cc: New.
1430
1431 2017-01-06 Jonathan Wakely <jwakely (a] redhat.com>
1432
1433 Backport from mainline
1434 2017-01-03 Jonathan Wakely <jwakely (a] redhat.com>
1435
1436 PR libstdc++/78956
1437 * include/std/thread (thread(const thread&&)): Add deleted
1438 constructor.
1439 * testsuite/30_threads/thread/cons/lwg2097.cc: New test.
1440
1441 2017-01-06 Jonathan Wakely <jwakely (a] redhat.com>
1442
1443 PR libstdc++/78991
1444 * include/bits/predefined_ops.h (_Iter_comp_iter, _Iter_comp_val)
1445 (_Val_comp_iter, _Iter_equals_val, _Iter_pred, _Iter_comp_to_val)
1446 (_Iter_comp_to_iter, _Iter_negate): Make constructors explicit.
1447 * testsuite/25_algorithms/sort/78991.cc: New test.
1448
1449 2016-12-21 Release Manager
1450
1451 * GCC 6.3.0 released.
1452
1453 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
1454
1455 Backport from mainline
1456 2016-10-26 Uros Bizjak <ubizjak (a] gmail.com>
1457
1458 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Include <limits.h>
1459 for PATH_MAX in realpath test.
1460 * configure: Regenerate.
1461
1462 Backport from mainline
1463 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
1464
1465 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
1466 * configure: Regenerate.
1467 * config.h.in: Regenerate.
1468
1469 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
1470
1471 Backport from mainline
1472 2016-12-07 Jonathan Wakely <jwakely (a] redhat.com>
1473
1474 * testsuite/18_support/headers/new/synopsis.cc: Add C++14 declarations
1475 and use effective-target to do test for C++11 and later.
1476 * testsuite/18_support/headers/new/synopsis_cxx98.cc: New test.
1477
1478 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
1479
1480 Backport from mainline
1481 2016-11-22 Jonathan Wakely <jwakely (a] redhat.com>
1482
1483 PR libstdc++/78465
1484 * testsuite/29_atomics/headers/atomic/macros.cc: Replace runtime tests
1485 with preprocessor conditions.
1486
1487 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
1488
1489 Backport from mainline
1490 2016-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1491
1492 * include/experimental/bits/shared_ptr.h (experimental::shared_ptr):
1493 Change relevant constructors to call _M_enable_shared_from_this_with.
1494 (experimental::shared_ptr::__efst_base_t)
1495 (experimental::shared_ptr::__has_efst_base): Helpers to detect
1496 accessible and unambiguous enable_shared_from_this bases.
1497 (experimental::shared_ptr::_M_enable_shared_from_this_with): Define.
1498 (experimental::__enable_shared_from_this_helper): Remove overload for
1499 std::experimental::enable_shared_from_this.
1500 (experimental::__expt_enable_shared_from_this_base): Define friend
1501 function to select a std::experimental::enable_shared_from_this base.
1502 * testsuite/experimental/memory/shared_ptr/cons/
1503 enable_shared_from_this.cc: New test.
1504 * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1505 Adjust expected behaviour for shared_ptr<A[]>.
1506
1507 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
1508
1509 * testsuite/experimental/filesystem/operations/is_empty.cc:
1510 Remove stray character at end of dg-do directive.
1511
1512 2016-12-12 Jonathan Wakely <jwakely (a] redhat.com>
1513
1514 Backport from mainline
1515 PR libstdc++/70975
1516 PR libstdc++/71337
1517 PR libstdc++/78111
1518 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
1519 Overload pop (LWG 2706).
1520 * include/experimental/bits/fs_fwd.h (perms::resolve_symlinks):
1521 Replace with symlink_nofollow (LWG 2720).
1522 * include/experimental/bits/fs_ops.h
1523 (exists(const path&, error_code&)): Clear error if status is known
1524 (LWG 2725).
1525 * include/experimental/bits/fs_path.h (__is_path_src)
1526 (_S_range_begin, _S_range_end): Overload to treat string_view as a
1527 Source object.
1528 (path::operator+=, path::compare): Overload for basic_string_view.
1529 (path::path(string_type&&))
1530 (path::operator=(string&&), path::assign(string_type&&)): Define
1531 construction and assignment from string_type rvalues (LWG 2707).
1532 (path::_S_convert<_Iter>(_Iter, _Iter)): Remove cv-qualifiers from
1533 iterator's value_type.
1534 (path::_S_convert<_Iter>(_Iter __first, __null_terminated)): Likewise.
1535 Do not use operation not supported by input iterators.
1536 (path::__is_path_iter_src): Add partial specialization for const
1537 encoded character types.
1538 * src/filesystem/dir.cc (open_dir): Return same value for errors
1539 whether ignored or not.
1540 (_Dir::advance(error_code*, directory_options)): Return false on
1541 error.
1542 (directory_iterator(const path&, directory_options, error_code*)):
1543 Create end iterator on error (LWG 2723).
1544 (recursive_directory_iterator(const path&, directory_options,
1545 error_code*)): Likewise.
1546 (recursive_directory_iterator::increment): Reset state on error.
1547 (recursive_directory_iterator::pop): Define new overload.
1548 * src/filesystem/ops.cc (canonical): Set error for non-existent path.
1549 (file_time): Take error_code parameter and check for overflow.
1550 (close_fd): Remove.
1551 (do_copy_file): Report an error if source or destination is not a
1552 regular file (LWG 2712). Pass error_code in file_time calls. Just
1553 use close(3) instead of close_fd, to prevent retrying on error.
1554 Check if _GLIBCXX_USE_FCHMODAT is defined.
1555 [_GLIBCXX_USE_SENDFILE]: Fallback to read/write operations in case
1556 sendfile fails with ENOSYS or EINVAL. Pass non-null pointer to
1557 sendfile for offset argument.
1558 (copy): Update comment to refer to LWG 2681. Implement 2682 and 2683
1559 resolutions.
1560 (equivalent): Fix error handling and result when only one file exists.
1561 (is_empty): Fix error handling.
1562 (last_write_time(const path&, error_code&)): Pass error_code in
1563 file_time calls.
1564 (last_write_time(const path&, file_time_type, error_code&)): Handle
1565 negative times correctly.
1566 (permissions(const path&, perms, error_code&)): Handle
1567 symlink_nofollow.
1568 (read_symlink): Add missing ec.clear().
1569 (status(const path&, error_code&)): Handle EOVERFLOW.
1570 (temp_directory_path): Pass error_code argument to other filesystem
1571 operations.
1572 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
1573 Update expected behaviour on error.
1574 * testsuite/experimental/filesystem/iterators/pop.cc: New.
1575 * testsuite/experimental/filesystem/iterators/
1576 recursive_directory_iterator.cc: Update expected behaviour on error.
1577 * testsuite/experimental/filesystem/operations/copy.cc: Update
1578 expected behaviour for copying directories with create_symlinks.
1579 Verify that error_code arguments are cleared if there's no error.
1580 Remove files created by tests. Test copying directories.
1581 * testsuite/experimental/filesystem/operations/copy_file.cc: Remove
1582 files created by tests.
1583 * testsuite/experimental/filesystem/operations/create_symlink.cc: New.
1584 * testsuite/experimental/filesystem/operations/equivalent.cc: New.
1585 * testsuite/experimental/filesystem/operations/exists.cc: Test
1586 overload taking an error_code.
1587 * testsuite/experimental/filesystem/operations/is_empty.cc: New.
1588 * testsuite/experimental/filesystem/operations/last_write_time.cc:
1589 New.
1590 * testsuite/experimental/filesystem/operations/permissions.cc: Test
1591 overload taking error_code. Test symlink_nofollow on non-symlinks.
1592 * testsuite/experimental/filesystem/operations/read_symlink.cc: New.
1593 * testsuite/experimental/filesystem/operations/remove_all.cc: New.
1594 * testsuite/experimental/filesystem/operations/temp_directory_path.cc:
1595 Add testcase for inaccessible directory.
1596 * testsuite/experimental/filesystem/path/construct/range.cc: Test
1597 construction from input iterators with const value types.
1598 * testsuite/experimental/filesystem/path/construct/string_view.cc:
1599 New.
1600 * testsuite/util/testsuite_fs.h (scoped_file): Define RAII helper.
1601
1602 2016-12-09 Jonathan Wakely <jwakely (a] redhat.com>
1603
1604 Backport from mainline
1605 2016-12-08 David Edelsohn <dje.gcc (a] gmail.com>
1606
1607 * testsuite/25_algorithms/headers/algorithm/
1608 parallel_algorithm_assert2.cc: Move dg-do run first.
1609
1610 2016-12-08 Jonathan Wakely <jwakely (a] redhat.com>
1611
1612 PR libstdc++/71856
1613 * doc/xml/manual/using.xml: Document macro.
1614 * include/bits/c++config [_GLIBCXX_DEBUG || _GLIBCXX_PARALLEL]
1615 (__glibcxx_assert): Rename to __glibcxx_assert_impl.
1616 [_GLIBCXX_DEBUG] (__glibcxx_assert): Expand to __glibcxx_assert_impl.
1617 * include/parallel/base.h [_GLIBCXX_PARALLEL_ASSERTIONS]
1618 (_GLIBCXX_PARALLEL_ASSERT): Expand to __glibcxx_assert_impl.
1619 [!_GLIBCXX_PARALLEL_ASSERTIONS] (_GLIBCXX_PARALLEL_ASSERT): Define as
1620 empty.
1621 * testsuite/25_algorithms/headers/algorithm/
1622 parallel_algorithm_assert2.cc: New test.
1623
1624 2016-12-08 Jonathan Wakely <jwakely (a] redhat.com>
1625
1626 Backport from mainline
1627 2016-11-10 Franois Dumont <fdumont (a] gcc.gnu.org>
1628
1629 PR libstdc++/77459
1630 * src/c++11/debug.cc (format_word): Delete.
1631 (print_literal): New. Replace call to print_word for literals.
1632
1633 2016-12-07 Jonathan Wakely <jwakely (a] redhat.com>
1634
1635 Backport from mainline
1636 2016-11-13 Jonathan Wakely <jwakely (a] redhat.com>
1637
1638 PR libstdc++/78326
1639 * include/experimental/memory_resource (memory_resource::_S_max_align):
1640 Change access to protected.
1641
1642 Backport from mainline
1643 2016-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1644
1645 * testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
1646 Add tests for valid and invalid conversions.
1647 * testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
1648 Likewise.
1649
1650 Backport from mainline
1651 2016-10-19 Jonathan Wakely <jwakely (a] redhat.com>
1652
1653 * include/experimental/bits/shared_ptr.h
1654 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_Compatible): Just use
1655 is_convertible for non-array specialization.
1656 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::_UniqCompatible): New
1657 constraint for conversions from unique_ptr.
1658 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::__shared_ptr): Constrain.
1659 (__shared_ptr<__libfund_v1<_Tp, false>, _Lp>::reset): Likewise.
1660 (__sp_compatible_v): New variable template for trait.
1661 (__sp_is_constructible): New trait to check shared_ptr constraints.
1662 (__sp_is_constructible_v): New variable template for trait.
1663 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_SafeConv): New
1664 constraint for construction/reset, using __sp_is_constructible_v.
1665 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::_UniqCompatible): New
1666 constraint for conversions from unique_ptr.
1667 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::__shared_ptr): Constrain.
1668 (__shared_ptr<__libfund_v1<_Tp, true>, _Lp>::reset): Likewise.
1669 (shared_ptr::_SafeConv): Constraint for checking constructors.
1670 (shared_ptr(Tp1*), shared_ptr(_Tp1, _Deleter))
1671 (shared_ptr(_Tp1, _Deleter, _Alloc)): Constrain with _SafeConv.
1672 (shared_ptr(const weak_ptr<_Tp1>&)): Constrain with _Compatible.
1673 (shared_ptr(auto_ptr<_Tp1>&&)): Fix, remove TODO.
1674 * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
1675 Remove tests using invalid conversions.
1676 * testsuite/experimental/memory/shared_ptr/cons/pointer_ctor_neg.cc:
1677 New test.
1678 * testsuite/experimental/memory/shared_ptr/cons/torture.cc: New test.
1679 * testsuite/experimental/memory/shared_ptr/modifiers/reset.cc: Remove
1680 tests using invalid conversions.
1681 * testsuite/experimental/memory/shared_ptr/modifiers/reset_neg.cc: New
1682 test.
1683 * testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
1684 Remove tests using invalid conversions.
1685
1686 Backport from mainline
1687 2016-10-18 Jonathan Wakely <jwakely (a] redhat.com>
1688
1689 * include/experimental/bits/shared_ptr.h: Fix indentation.
1690
1691 Backport from mainline
1692 2016-10-18 Jonathan Wakely <jwakely (a] redhat.com>
1693
1694 * include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
1695 Remove const from parameter.
1696 (operator<(const shared_ptr<T>&, nullptr_t)): Use correct
1697 specialization of std::less.
1698 * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
1699 Test comparison with nullptr and actually call test functions.
1700
1701 Backport from mainline
1702 2016-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1703
1704 * doc/xml/manual/intro.xml: Document LWG 2484 status.
1705 * libsupc++/nested_exception.h (_Throw_with_nested_impl)
1706 (_Throw_with_nested_helper): Remove.
1707 (__throw_with_nested_impl): New overloaded functions to implement
1708 throw_with_nested logic.
1709 (throw_with_nested): Call __throw_with_nested_impl.
1710 (_Rethrow_if_nested_impl): Remove
1711 (__rethrow_if_nested_impl): New overloaded functions to implement
1712 rethrow_if_nested logic.
1713 (rethrow_if_nested): Call __rethrow_if_nested_impl.
1714 * testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
1715 problem cases from LWG 2484.
1716
1717 Backport from mainline
1718 2016-10-11 Jonathan Wakely <jwakely (a] redhat.com>
1719
1720 * python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
1721 Register printer for std::__cxx11::list.
1722 * python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
1723 std::__cxx11::list as well as std::list.
1724
1725 Backport from mainline
1726 2016-10-12 Jonathan Wakely <jwakely (a] redhat.com>
1727
1728 * doc/xml/manual/intro.xml: Document LWG 2442 status.
1729 * include/std/mutex [_GLIBCXX_HAVE_TLS] (__once_call_impl): Remove.
1730 (call_once): Use lambda expression and std::__invoke instead of
1731 __bind_simple and __once_call_impl.
1732 * testsuite/30_threads/call_once/dr2442.cc: New test.
1733
1734 Backport from mainline
1735 2016-10-10 Jonathan Wakely <jwakely (a] redhat.com>
1736
1737 * include/bits/allocator.h (allocator<T>::is_always_equal): Define.
1738 * testsuite/20_util/allocator/requirements/typedefs.cc: Test for
1739 is_always_equal.
1740 * testsuite/util/testsuite_allocator.h
1741 (uneq_allocator::is_always_equal): Define as false_type.
1742
1743 Backport from mainline
1744 2016-10-06 Jonathan Wakely <jwakely (a] redhat.com>
1745
1746 * doc/xml/manual/status_cxx2011.xml: Update status.
1747 * include/std/scoped_allocator (__outer_allocator_t, __outermost_type):
1748 New helpers for recursive OUTERMOST.
1749 (__outermost): Use __outermost_type::_S_outermost.
1750 (__do_outermost, scoped_allocator_adaptor::__outermost_type): Remove.
1751 (scoped_allocator_adaptor::__outermost_alloc_traits): Use new
1752 __outermost_type helper.
1753 (scoped_allocator_adaptor::_Constructible): New alias template.
1754 (scoped_allocator_adaptor::scoped_allocator_adaptor<_Outer2>):
1755 Constrain template constructors.
1756 * testsuite/20_util/scoped_allocator/3.cc: New test.
1757 * testsuite/20_util/scoped_allocator/outermost.cc: New test.
1758
1759 Backport from mainline
1760 2016-08-26 Jonathan Wakely <jwakely (a] redhat.com>
1761
1762 PR libstdc++/51960
1763 * doc/xml/manual/intro.xml: Document DR 2127 change.
1764 * doc/html/*: Regenerate.
1765 * include/bits/stl_raw_storage_iter.h (operator=(_Tp&&)): Add.
1766 (operator++(), operator++(int)): Use injected class name.
1767 * testsuite/20_util/raw_storage_iterator/dr2127.cc: New test.
1768
1769 Backport from mainline
1770 2016-08-04 Jonathan Wakely <jwakely (a] redhat.com>
1771
1772 * include/std/functional (_Unwrap): Rename to __inv_unwrap.
1773 (__invfwd): Adjust.
1774 (__invoke_impl): Remove unused template parameters.
1775 * testsuite/20_util/function_objects/invoke/59768.cc: Remove unused
1776 parameter.
1777 * testsuite/20_util/function_objects/invoke/ref_ext.cc: Copy 59768.cc
1778 and test __invoke extension for C++11.
1779
1780 2016-12-07 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1781
1782 Backport from mainline
1783 2016-12-06 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1784
1785 Constrain optional's __constexpr_addressof in its return type
1786 and use a constexpr addressof for optional, if available.
1787 * include/experimental/optional (__constexpr_addressof):
1788 Constrain in the return type instead of in a template parameter.
1789 (_Has_addressof_mem)
1790 (_Has_addressof_free, _Has_addressof, __constexpr_addressof):
1791 Guard with #ifndef __cpp_lib_addressof_constexpr.
1792 (operator->()): Use std::__addressof if it's constexpr.
1793
1794 2016-12-06 Aditya Kumar <hiraditya (a] msn.com>
1795
1796 * src/c++11/shared_ptr.cc (_Sp_locker::_Sp_locker(const void* p)): Add
1797 noexcept on constructor.
1798 (_Sp_locker::_Sp_locker(const void* p1, const void* p2)): Same.
1799
1800 2016-12-01 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1801
1802 Backport from mainline
1803 2016-11-21 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
1804
1805 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Update comments.
1806 (__CORRECT_ISO_CPP11_MATH_H_PROTO): Rename to ...
1807 (__CORRECT_ISO_CPP11_MATH_H_PROTO_FP): ... this.
1808 Add test for C++11 <math.h> integral overloads.
1809 * configure: Regenerate.
1810 * config.h.in: Regenerate.
1811
1812 * include/c_global/cmath [__cplusplus >= 201103L]: Reflect
1813 __CORRECT_ISO_CPP11_MATH_H_PROTO to
1814 __CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
1815 * include/c_global/cmath [_GLIBCXX_USE_C99_MATH &&
1816 !_GLIBCXX_USE_C99_FP_MACROS_DYNAMIC && __cplusplus >= 201103L]
1817 (std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO_INT.
1818 (std::isfinite): Likewise.
1819 (std::isinf): Likewise.
1820 (std::isnan): Likewise.
1821 (std::isnormal): Likewise.
1822 (std::signbit): Likewise.
1823 (std::isgreater): Likewise.
1824 (std::isgreaterequal): Likewise.
1825 (std::isless): Likewise.
1826 (std::islessequal): Likewise.
1827 (std::islessgreater): Likewise.
1828 (std::isunordered): Likewise.
1829 [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]
1830 (std::acosh): Likewise.
1831 (std::asinh): Likewise.
1832 (std::atanh): Likewise.
1833 (std::cbrt): Likewise.
1834 (std::copysign): Likewise.
1835 (std::erf): Likewise.
1836 (std::erfc): Likewise.
1837 (std::exp2): Likewise.
1838 (std::expm1): Likewise.
1839 (std::fdim): Likewise.
1840 (std::fma): Likewise.
1841 (std::fmax): Likewise.
1842 (std::fmin): Likewise.
1843 (std::hypot): Likewise.
1844 (std::ilogb): Likewise.
1845 (std::lgamma): Likewise.
1846 (std::llrint): Likewise.
1847 (std::llround): Likewise.
1848 (std::log1p): Likewise.
1849 (std::log2): Likewise.
1850 (std::logb): Likewise.
1851 (std::lrint): Likewise.
1852 (std::lround): Likewise.
1853 (std::nearbyint): Likewise.
1854 (std::nextafter): Likewise.
1855 (std::nexttoward): Likewise.
1856 (std::remainder): Likewise.
1857 (std::remquo): Likewise.
1858 (std::rint): Likewise.
1859 (std::round): Likewise.
1860 (std::scalbln): Likewise.
1861 (std::scalbn): Likewise.
1862 (std::tgamma): Likewise.
1863 (std::trunc): Likewise.
1864 * include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1 && __cplusplus >=
1865 201103L]: Reflect __CORRECT_ISO_CPP11_MATH_H_PROTO to
1866 __CORRECT_ISO_CPP11_MATH_H_PROTO_FP rename.
1867
1868 2016-11-23 Jonathan Wakely <jwakely (a] redhat.com>
1869
1870 * testsuite/24_iterators/reverse_iterator/71771.cc: Replace calls to
1871 C++14 std::rbeing and std::rend. Use dg-options instead of
1872 effective-target.
1873 * testsuite/27_io/headers/cstdio/functions_neg.cc: Use dg-options
1874 instead of effective-target.
1875 * testsuite/experimental/numeric/77801.cc: Likewise.
1876
1877 2016-11-23 Felix Morgner <felix.morgner (a] gmail.com>
1878 Jonathan Wakely <jwakely (a] redhat.com>
1879
1880 PR libstdc++/78490
1881 * include/experimental/propagate_const (propagate_const::operator=):
1882 Add missing return statements.
1883 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
1884 Adjust dg-error line numbers.
1885 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
1886
1887 2016-11-22 Uros Bizjak <ubizjak (a] gmail.com>
1888
1889 * testsuite/Makefile.am
1890 (check-DEJAGNU $(check_DEJAGNU_normal_targets)): Fix detection
1891 of -j argument.
1892 * testsuite/Makefile.in: Regenereate.
1893
1894 2016-11-15 Jonathan Wakely <jwakely (a] redhat.com>
1895
1896 * testsuite/experimental/any/typedefs.cc: Fix license text.
1897 * testsuite/experimental/array/make_array.cc: Likewise.
1898 * testsuite/experimental/array/neg.cc: Likewise.
1899 * testsuite/experimental/chrono/value.cc: Likewise.
1900 * testsuite/experimental/deque/erasure.cc: Likewise.
1901 * testsuite/experimental/forward_list/erasure.cc: Likewise.
1902 * testsuite/experimental/list/erasure.cc: Likewise.
1903 * testsuite/experimental/map/erasure.cc: Likewise.
1904 * testsuite/experimental/memory/observer_ptr/assignment/assign.cc:
1905 Likewise.
1906 * testsuite/experimental/memory/observer_ptr/cons/cons.cc: Likewise.
1907 * testsuite/experimental/memory/observer_ptr/hash/hash.cc: Likewise.
1908 * testsuite/experimental/memory/observer_ptr/make_observer.cc:
1909 Likewise.
1910 * testsuite/experimental/memory/observer_ptr/relops/relops.cc:
1911 Likewise.
1912 * testsuite/experimental/memory/observer_ptr/requirements.cc: Likewise.
1913 * testsuite/experimental/memory/observer_ptr/swap/swap.cc: Likewise.
1914 * testsuite/experimental/memory/observer_ptr/typedefs.cc: Likewise.
1915 * testsuite/experimental/optional/77288.cc: Likewise.
1916 * testsuite/experimental/optional/assignment/1.cc: Likewise.
1917 * testsuite/experimental/optional/assignment/2.cc: Likewise.
1918 * testsuite/experimental/optional/assignment/3.cc: Likewise.
1919 * testsuite/experimental/optional/assignment/4.cc: Likewise.
1920 * testsuite/experimental/optional/assignment/5.cc: Likewise.
1921 * testsuite/experimental/optional/assignment/6.cc: Likewise.
1922 * testsuite/experimental/optional/cons/77727.cc: Likewise.
1923 * testsuite/experimental/optional/cons/move.cc: Likewise.
1924 * testsuite/experimental/optional/cons/value.cc: Likewise.
1925 * testsuite/experimental/optional/cons/value_neg.cc: Likewise.
1926 * testsuite/experimental/optional/constexpr/cons/value.cc: Likewise.
1927 * testsuite/experimental/optional/constexpr/make_optional.cc: Likewise.
1928 * testsuite/experimental/optional/constexpr/observers/1.cc: Likewise.
1929 * testsuite/experimental/optional/constexpr/observers/2.cc: Likewise.
1930 * testsuite/experimental/optional/constexpr/observers/3.cc: Likewise.
1931 * testsuite/experimental/optional/constexpr/observers/4.cc: Likewise.
1932 * testsuite/experimental/optional/constexpr/observers/5.cc: Likewise.
1933 * testsuite/experimental/optional/constexpr/relops/1.cc: Likewise.
1934 * testsuite/experimental/optional/constexpr/relops/2.cc: Likewise.
1935 * testsuite/experimental/optional/constexpr/relops/3.cc: Likewise.
1936 * testsuite/experimental/optional/constexpr/relops/4.cc: Likewise.
1937 * testsuite/experimental/optional/constexpr/relops/5.cc: Likewise.
1938 * testsuite/experimental/optional/constexpr/relops/6.cc: Likewise.
1939 * testsuite/experimental/optional/make_optional.cc: Likewise.
1940 * testsuite/experimental/optional/observers/1.cc: Likewise.
1941 * testsuite/experimental/optional/observers/2.cc: Likewise.
1942 * testsuite/experimental/optional/observers/3.cc: Likewise.
1943 * testsuite/experimental/optional/observers/4.cc: Likewise.
1944 * testsuite/experimental/optional/observers/5.cc: Likewise.
1945 * testsuite/experimental/optional/relops/1.cc: Likewise.
1946 * testsuite/experimental/optional/relops/2.cc: Likewise.
1947 * testsuite/experimental/optional/relops/3.cc: Likewise.
1948 * testsuite/experimental/optional/relops/4.cc: Likewise.
1949 * testsuite/experimental/optional/relops/5.cc: Likewise.
1950 * testsuite/experimental/optional/relops/6.cc: Likewise.
1951 * testsuite/experimental/optional/requirements.cc: Likewise.
1952 * testsuite/experimental/optional/swap/1.cc: Likewise.
1953 * testsuite/experimental/optional/typedefs.cc: Likewise.
1954 * testsuite/experimental/propagate_const/assignment/move.cc: Likewise.
1955 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
1956 Likewise.
1957 * testsuite/experimental/propagate_const/cons/move.cc: Likewise.
1958 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
1959 * testsuite/experimental/propagate_const/hash/1.cc: Likewise.
1960 * testsuite/experimental/propagate_const/observers/1.cc: Likewise.
1961 * testsuite/experimental/propagate_const/relops/1.cc: Likewise.
1962 * testsuite/experimental/propagate_const/requirements1.cc: Likewise.
1963 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
1964 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
1965 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
1966 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
1967 * testsuite/experimental/propagate_const/swap/1.cc: Likewise.
1968 * testsuite/experimental/propagate_const/typedefs.cc: Likewise.
1969 * testsuite/experimental/random/randint.cc: Likewise.
1970 * testsuite/experimental/ratio/value.cc: Likewise.
1971 * testsuite/experimental/set/erasure.cc: Likewise.
1972 * testsuite/experimental/string/erasure.cc: Likewise.
1973 * testsuite/experimental/string_view/typedefs.cc: Likewise.
1974 * testsuite/experimental/system_error/value.cc: Likewise.
1975 * testsuite/experimental/tuple/tuple_size.cc: Likewise.
1976 * testsuite/experimental/type_traits/value.cc: Likewise.
1977 * testsuite/experimental/unordered_map/erasure.cc: Likewise.
1978 * testsuite/experimental/unordered_set/erasure.cc: Likewise.
1979 * testsuite/experimental/vector/erasure.cc: Likewise.
1980
1981 2016-10-24 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1982
1983 Backport from mainline:
1984
1985 2016-10-24 Ville Voutilainen <ville.voutilainen (a] gmail.com>
1986 Cross-port the latest resolution of LWG2756 and some
1987 bug-fixes to experimental::optional.
1988 PR libstdc++/77288
1989 PR libstdc++/77727
1990 * include/experimental/optional (_Optional_base):
1991 Remove constructors that take a _Tp.
1992 (__is_optional_impl, __is_optional): Remove.
1993 (__converts_from_optional): New.
1994 (optional(_Up&&)): Fix constraints, call base with in_place.
1995 (optional(const optional<_Up>&)): Fix constraints, use emplace.
1996 (optional(optional<_Up>&&)): Likewise.
1997 (operator=(_Up&&)): Fix constraints.
1998 (operator=(const optional<_Up>&)): Likewise.
1999 (operator=(optional<_Up>&&)): Likewise.
2000 (emplace(_Args&&...)): Constrain.
2001 (emplace(initializer_list<_Up>, _Args&&...)): Likewise.
2002 * testsuite/experimental/optional/77288.cc: New.
2003 * testsuite/experimental/optional/assignment/5.cc: Adjust.
2004 * testsuite/experimental/optional/cons/77727.cc: New.
2005 * testsuite/experimental/optional/cons/value.cc: Adjust.
2006
2007 2016-10-20 Jonathan Wakely <jwakely (a] redhat.com>
2008
2009 PR libstdc++/78052
2010 * include/bits/allocator.h (allocator<void>::construct)
2011 (allocator<void>::destroy): Define.
2012 * testsuite/20_util/allocator/void.cc: New test.
2013
2014 2016-10-19 Jonathan Wakely <jwakely (a] redhat.com>
2015
2016 * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Move negative tests
2017 to new file.
2018 * testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: New file. Fix
2019 test for incompatible deleters to not also use incompatible types.
2020 Add tests for incompatible array types.
2021
2022 PR libstdc++/77990
2023 * include/bits/unique_ptr.h (unique_ptr::unique_ptr(pointer)): Set
2024 pointer member after value-initialization of tuple.
2025 * testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-errors.
2026 * testsuite/20_util/unique_ptr/cons/77990.cc: New test.
2027 * testsuite/20_util/unique_ptr/cons/cv_qual.cc: Adjust dg-error.
2028
2029 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2030
2031 PR libstdc++/77987
2032 * include/bits/unique_ptr.h (unique_ptr<T[], D>::reset<U>(U)): Copy
2033 value to pointer of the correct type to swap, to support conversions
2034 allowed by LWG 2118 / N4089.
2035 * testsuite/20_util/unique_ptr/assign/assign_neg.cc: Move test for
2036 incompatible deleters from ...
2037 * testsuite/20_util/unique_ptr/assign/cv_qual.cc: ... here.
2038 * testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: Move tests for
2039 incompatible pointers to ...
2040 * testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: ... here. Move
2041 destructor definition to base class. Test for invalid derived-to-base
2042 conversion.
2043
2044 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2045
2046 * testsuite/20_util/function/77322.cc: Remove effective-target from
2047 dg-do directive.
2048 * testsuite/20_util/function/cons/72820.cc: Likewise.
2049
2050 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2051
2052 Backport from mainline:
2053 2016-10-10 Jonathan Wakely <jwakely (a] redhat.com>
2054
2055 * doc/xml/manual/appendix_contributing.xml (contrib.organization):
2056 Replace <literallayout> with nested <variablelist> elements. Update
2057 some more outdated text.
2058 * doc/html/*: Regenerate.
2059
2060 Backport from mainline:
2061 2016-10-10 Jonathan Wakely <jwakely (a] redhat.com>
2062
2063 * doc/xml/manual/appendix_contributing.xml (contrib.organization):
2064 Describe other subdirectories and add markup. Remove outdated
2065 reference to check-script target.
2066
2067 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2068
2069 Backport from mainline:
2070 2016-10-10 Jonathan Wakely <jwakely (a] redhat.com>
2071
2072 * doc/xml/manual/status_cxx2011.xml: Correct C++11 status.
2073
2074 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2075
2076 Backport from mainline:
2077 2016-10-13 Jonathan Wakely <jwakely (a] redhat.com>
2078
2079 * testsuite/26_numerics/random/default_random_engine.cc: Use VERIFY
2080 instead of assert.
2081
2082 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2083
2084 Backport from mainline:
2085 2016-10-11 Jonathan Wakely <jwakely (a] redhat.com>
2086
2087 * include/experimental/string_view (basic_string_view::_S_compare):
2088 Remove redundant const from return type.
2089
2090 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2091
2092 Backport from mainline:
2093 2016-10-13 Jonathan Wakely <jwakely (a] redhat.com>
2094
2095 * include/experimental/functional (boyer_moore_searcher)
2096 (__boyer_moore_map_base, __boyer_moore_array_base): Qualify containers
2097 with _GLIBCXX_STD_C.
2098
2099 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2100
2101 Backport from mainline:
2102 2016-10-13 Jonathan Wakely <jwakely (a] redhat.com>
2103
2104 * include/experimental/propagate_const (element_type): Qualify
2105 declval.
2106
2107 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2108
2109 Backport from mainline:
2110 2016-08-22 Jonathan Wakely <jwakely (a] redhat.com>
2111
2112 PR libstdc++/77322
2113 * doc/xml/manual/intro.xml: Document DR 2062 change.
2114 * include/std/functional (function::swap): Add noexcept.
2115 (swap(function<Res(Args...)&, function<Res(Args...)&)): Likewise.
2116 * testsuite/20_util/function/77322.cc: New test.
2117
2118 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2119
2120 Backport from mainline:
2121 2016-08-17 Jonathan Wakely <jwakely (a] redhat.com>
2122
2123 * testsuite/20_util/reference_wrapper/invoke-2.cc: Fix invalid dg-do
2124 directive and use effective target instead of dg-options.
2125
2126 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2127
2128 Backport from mainline:
2129 2016-08-06 Jonathan Wakely <jwakely (a] redhat.com>
2130
2131 PR libstdc++/72820
2132 * include/std/functional (_Function_base::_Base_manager::_M_clone):
2133 Qualify new operator.
2134 * testsuite/20_util/function/cons/72820.cc: New test.
2135
2136 2016-10-17 Jonathan Wakely <jwakely (a] redhat.com>
2137
2138 PR libstdc++/77994
2139 * include/experimental/algorithm (experimental::sample): Convert size
2140 argument to iterator difference type. Fix invalid use of input
2141 iterator. Defend against overloaded comma operator.
2142
2143 2016-10-05 Jonathan Wakely <jwakely (a] redhat.com>
2144
2145 PR libstdc++/70101
2146 * include/bits/stl_queue.h (priority_queue): Fix allocator-extended
2147 constructors.
2148 * testsuite/23_containers/priority_queue/allocator.cc: New test.
2149
2150 PR libstdc++/77864
2151 * include/bits/stl_map.h (map::map()): Use nothrow constructibility
2152 of comparison function in conditional noexcept.
2153 * include/bits/stl_multimap.h (multimap::multimap()): Likewise.
2154 * include/bits/stl_multiset.h (multiset::multiset()): Likewise.
2155 * include/bits/stl_set.h (set::set()): Likewise.
2156 * testsuite/23_containers/map/cons/noexcept_default_construct.cc:
2157 New test.
2158 * testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
2159 Likewise.
2160 * testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
2161 Likewise.
2162 * testsuite/23_containers/set/cons/noexcept_default_construct.cc:
2163 Likewise.
2164
2165 * include/bits/node_handle.h (_Node_handle): Remove invalid and unused
2166 alias declaration.
2167
2168 PR libstdc++/70564
2169 * include/experimental/functional (_Not_fn): Add second parameter to
2170 disambiguate copying from initialization by not_fn.
2171 (not_fn): Add second argument to initialization.
2172 * testsuite/experimental/functional/not_fn.cc: Copy call wrapper using
2173 direct-initialization. Test abstract class.
2174
2175 2016-10-03 Jonathan Wakely <jwakely (a] redhat.com>
2176
2177 PR libstdc++/68323
2178 PR libstdc++/77794
2179 * config/abi/pre/gnu-versioned-namespace.ver: Add exports for
2180 __cxa_thread_atexit and __gnu_cxx::__freeres.
2181 * include/Makefile.am: Add <experimental/bits/lfts_config.h>
2182 * include/Makefile.in: Regenerate.
2183 * include.bits/basic_string.h: Fix nesting of versioned namespaces.
2184 * include/bits/c++config: Declare versioned namespaces for literals.
2185 * include/bits/regex.h (basic_regex, match_results): Add workarounds
2186 for PR c++/59256.
2187 * include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
2188 * include/std/chrono: Likewise.
2189 * include/std/complex: Likewise.
2190 * include/experimental/bits/fs_fwd.h: Declare versioned namespace.
2191 * include/experimental/bits/lfts_config.h: Declare versioned
2192 namespaces.
2193 * include/experimental/algorithm: Include
2194 <experimental/bits/lfts_config.h>.
2195 * include/experimental/any: Likewise.
2196 * include/experimental/bits/erase_if.h: Likewise.
2197 * include/experimental/chrono: Likewise.
2198 * include/experimental/functional: Likewise.
2199 * include/experimental/memory_resource: Likewise.
2200 * include/experimental/optional: Likewise.
2201 * include/experimental/propagate_const: Likewise.
2202 * include/experimental/random: Likewise.
2203 * include/experimental/ratio: Likewise.
2204 * include/experimental/system_error: Likewise.
2205 * include/experimental/tuple: Likewise.
2206 * include/experimental/type_traits: Likewise.
2207 * include/experimental/utility: Likewise.
2208 * include/experimental/string_view: Likewise. Fix nesting of
2209 versioned namespaces.
2210 * include/experimental/bits/string_view.tcc: Reopen inline namespace
2211 for non-inline function definitions.
2212 * testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
2213 * testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
2214 * testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
2215 * testsuite/experimental/propagate_const/assignment/move_neg.cc:
2216 Likewise.
2217 * testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
2218 * testsuite/experimental/propagate_const/requirements2.cc: Likewise.
2219 * testsuite/experimental/propagate_const/requirements3.cc: Likewise.
2220 * testsuite/experimental/propagate_const/requirements4.cc: Likewise.
2221 * testsuite/experimental/propagate_const/requirements5.cc: Likewise.
2222 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
2223
2224 2016-09-30 Jonathan Wakely <jwakely (a] redhat.com>
2225
2226 PR libstdc++/77795
2227 * acinclude.m4 (GLIBCXX_CHECK_STDIO_PROTO): Use -std=gnu++11 to check
2228 for gets.
2229 * config.h.in: Regenerate.
2230 * configure: Regenerate.
2231 * include/c_global/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Only declare
2232 for C++98 and C++11.
2233 * include/c_std/cstdio [!_GLIBCXX_HAVE_GETS] (gets): Likewise.
2234 * testsuite/27_io/headers/cstdio/functions_neg.cc: New test.
2235
2236 PR libstdc++/77801
2237 * include/experimental/numeric: Include <numeric>.
2238 (__abs): Define.
2239 (gcd, lcm): Use __abs instead of std::abs.
2240 * testsuite/experimental/numeric/77801.cc: New test.
2241 * testsuite/experimental/numeric/gcd.cc: Test unsigned inputs.
2242 * testsuite/experimental/numeric/lcm.cc: Likewise.
2243
2244 2016-09-28 Jonathan Wakely <jwakely (a] redhat.com>
2245
2246 PR libstdc++/77686
2247 * include/std/functional (_Any_data): Add may_alias attribute.
2248
2249 2016-09-27 Jonathan Wakely <jwakely (a] redhat.com>
2250
2251 * include/debug/safe_iterator.h (_Safe_iterator::operator++()): Fix
2252 lifetime of lock.
2253
2254 2015-09-27 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
2255
2256 Backport from mainline
2257 2015-09-23 Sebastian Huber <sebastian.huber (a] embedded-brains.de>
2258
2259 * config/cpu/m68k/atomicity.h: Adjust comment.
2260 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Honor
2261 explicit atomicity_dir setup via configure.host.
2262 * configure.host (rtems-*): Set atomicity_dir.
2263 * configure: Regenerate.
2264
2265 2016-09-26 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2266
2267 Backport from mainline
2268 2016-09-21 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2269
2270 Implement LWG 2729 for pair.
2271 * include/bits/stl_pair.h (_PCC): New.
2272 (_ConstructiblePair, _ImplicitlyConvertiblePair):
2273 Turn into static member functions of _PCC.
2274 (_MoveConstructiblePair, _ImplicitlyMoveConvertiblePair): Likewise.
2275 (_PCCP): New.
2276 (pair(const _T1&, const _T2&)): Adjust.
2277 (_PCCFP): New.
2278 (pair(const pair<_U1, _U2>&)): Adjust.
2279 (pair(_U1&&, const _T2&)): Likewise.
2280 (pair(const _T1&, _U2&&)): Likewise.
2281 (pair(_U1&&, _U2&&)): Likewise.
2282 (pair(pair<_U1, _U2>&&)): Likewise.
2283 (operator=(const pair&)): Make conditionally deleted.
2284 (operator=(pair&&)): Make conditionally suppressed.
2285 (operator=(const pair<_U1, _U2>&)): Constrain.
2286 (operator=(pair<_U1, _U2>&&): Likewise.
2287 * include/std/type_traits (__nonesuch): New.
2288 * testsuite/20_util/pair/traits.cc: New.
2289
2290 2016-09-20 Jonathan Wakely <jwakely (a] redhat.com>
2291
2292 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
2293 (DequeWorkerBase.index, VectorWorkerBase.get): Use // for division.
2294
2295 2016-09-19 Jonathan Wakely <jwakely (a] redhat.com>
2296
2297 PR libstdc++/77645
2298 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.__init__)
2299 (DequeWorkerBase.index, VectorWorkerBase.get): Cast results of
2300 division to int to work with Python 3.
2301
2302 PR libstdc++/77645
2303 * python/libstdcxx/v6/xmethods.py (DequeWorkerBase.index): Rename
2304 argument.
2305 (ListWorkerBase.get_value_from_node): Define new method.
2306 (ListFrontWorker.__call__, ListBackWorker.__call__): Use it.
2307
2308 2016-08-31 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2309
2310 PR libstdc++/77395
2311 * include/std/type_traits (is_constructible): Forward-declare...
2312 (__is_base_to_derived_ref): ...and use here.
2313 * testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
2314 * testsuite/20_util/is_constructible/77395.cc: New.
2315 * testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
2316 * testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
2317 Likewise.
2318 * testsuite/20_util/tuple/77395.cc: New.
2319
2320 2016-08-30 Jonathan Wakely <jwakely (a] redhat.com>
2321
2322 Backport from mainline
2323 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
2324
2325 * scripts/testsuite_flags.in: Add -fno-show-column to cxxflags.
2326
2327 Backport from mainline
2328 2016-07-27 Jonathan Wakely <jwakely (a] redhat.com>
2329
2330 * testsuite/20_util/forward/1_neg.cc: Move dg-error to right line.
2331
2332 2016-08-23 Jonathan Wakely <jwakely (a] redhat.com>
2333
2334 * testsuite/23_containers/map/77334.cc: Use dg-options for C++11.
2335
2336 2016-08-23 Jonathan Wakely <jwakely (a] redhat.com>
2337
2338 PR libstdc++/77334
2339 * include/bits/stl_tree.h (_Rb_tree::_M_move_assign): New functions.
2340 (_Rb_tree::operator=(_Rb_tree&&)): Dispatch to _M_move_assign.
2341 * testsuite/23_containers/map/77334.cc: New test.
2342
2343 * doc/xml/api.xml: Replace hardcoded links for specific versions with
2344 link to docs for all releases.
2345 * doc/html/*: Regenerate.
2346
2347 * include/bits/stl_iterator.h
2348 (operator-(reverse_iterator<Iter>, reverse_iterator<Iter>): Constrain
2349 for C++11 and later.
2350 * testsuite/24_iterators/reverse_iterator/71771.cc: New test.
2351
2352 2016-08-22 Release Manager
2353
2354 * GCC 6.2.0 released.
2355
2356 2016-08-06 Jonathan Wakely <jwakely (a] redhat.com>
2357
2358 Backport from mainline
2359 2016-08-05 Jonathan Wakely <jwakely (a] redhat.com>
2360
2361 * include/std/functional (function::_Callable): Use lvalue in
2362 result_of expression.
2363 * testsuite/20_util/function/cons/refqual.cc: New test.
2364
2365 Backport from mainline
2366 2016-07-22 Jonathan Wakely <jwakely (a] redhat.com>
2367
2368 PR libstdc++/71964
2369 * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Move allocator.
2370 * testsuite/23_containers/set/allocator/71964.cc: New test.
2371
2372 Backport from mainline
2373 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
2374
2375 * testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc:
2376 Remove reundant check for _GLIBCXX_USE_WCHAR_T and fix char type.
2377 * testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
2378 Likewise.
2379 * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc:
2380 Likewise.
2381 * testsuite/21_strings/basic_string/allocator/wchar_t/move.cc:
2382 Likewise.
2383 * testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
2384 Likewise.
2385 * testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc:
2386 Likewise.
2387 * testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc:
2388 Likewise.
2389
2390 Backport from mainline
2391 2016-05-04 Jonathan Wakely <jwakely (a] redhat.com>
2392
2393 PR libstdc++/70940
2394 * include/experimental/memory_resource
2395 (__resource_adaptor_imp::do_allocate): Do not default-construct
2396 rebound allocator.
2397 (__resource_adaptor_imp::do_deallocate): Likewise. Use
2398 allocator_traits to get pointer type.
2399 (__null_memory_resource::do_allocate): Remove unused parameters.
2400 (__null_memory_resource::do_deallocate): Likewise.
2401 (__null_memory_resource::do_is_equal): Likewise. Add return statement.
2402 * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
2403 * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
2404 move to ...
2405 * testsuite/experimental/memory_resource/1.cc: Here.
2406 * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
2407 * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
2408
2409 Backport from mainline
2410 2016-08-03 Jonathan Wakely <jwakely (a] redhat.com>
2411
2412 * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
2413 Define feature-test macro.
2414 * include/std/shared_mutex (__cpp_lib_shared_mutex): Uncomment.
2415 * include/std/type_traits (__cpp_lib_logical_traits): Fix value.
2416
2417 Backport from mainline
2418 2016-08-03 Jonathan Wakely <jwakely (a] redhat.com>
2419
2420 * include/bits/stl_function.h: Remove commented-out macro.
2421 * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
2422 Define feature-test macro.
2423 * testsuite/experimental/feat-cxx14.cc: Add tests for more macros.
2424
2425 * testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Improve
2426 comments.
2427
2428 * doc/xml/manual/status_cxx2011.xml: Change "mainline GCC SVN" to
2429 refer to the release series.
2430 * doc/xml/manual/status_cxx2014.xml: Likewise. Update TS status.
2431 * doc/xml/manual/status_cxx2017.xml: Likewise.
2432 * doc/html/manual/status.html: Regenerate.
2433
2434 * include/experimental/propagate_const (propagate_const::__t): Rename
2435 to _M_t and remove comment. Qualify std::move and std::forward.
2436 * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
2437
2438 2016-08-02 Jonathan Wakely <jwakely (a] redhat.com>
2439
2440 * testsuite/lib/libstdc++.exp (v3-build_support): Add
2441 -fno-lto to additional flags for compiling libtestc++.a objects.
2442
2443 2016-07-29 Jonathan Wakely <jwakely (a] redhat.com>
2444
2445 * doc/xml/manual/abi.xml: Document 6.0.22 library version.
2446 * doc/html/manual/abi.html: Regenerate.
2447
2448 2016-07-19 Jonathan Wakely <jwakely (a] redhat.com>
2449
2450 Backport from mainline
2451 2016-07-14 Jonathan Wakely <jwakely (a] redhat.com>
2452
2453 * include/experimental/functional: Include <parallel/algorithm> in
2454 Parallel Mode.
2455
2456 Backport from mainline
2457 2016-07-14 Jonathan Wakely <jwakely (a] redhat.com>
2458
2459 * testsuite/experimental/functional/searchers.cc: Include <algorithm>
2460 for std::search.
2461
2462 PR libstdc++/71856
2463 * include/bits/c++config (_GLIBCXX_ASSERTIONS): Define to 1 not empty.
2464 * include/parallel/balanced_quicksort.h: Include <unistd.h> for sleep.
2465 * include/parallel/compiletime_settings.h (_GLIBCXX_ASSERTIONS):
2466 Do not define here.
2467
2468 Backport from mainline
2469 2016-06-06 Jonathan Wakely <jwakely (a] redhat.com>
2470
2471 PR libstdc++/71320
2472 * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
2473 Add or remove permissions according to perms argument.
2474 * testsuite/experimental/filesystem/operations/permissions.cc: New
2475 test.
2476
2477 2016-07-06 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2478
2479 Implement LWG 2451, optional<T> should 'forward' T's
2480 implicit conversions.
2481 * include/experimental/optional (__is_optional_impl, __is_optional):
2482 New.
2483 (optional()): Make constexpr and default.
2484 (optional(_Up&&), optional(const optional<_Up>&),
2485 optional(optional<_Up>&& __t): New.
2486 (operator=(_Up&&)): Constrain.
2487 (operator=(const optional<_Up>&), operator=(optional<_Up>&&)): New.
2488 * testsuite/experimental/optional/cons/value.cc:
2489 Add tests for the functionality added by LWG 2451.
2490 * testsuite/experimental/optional/cons/value_neg.cc: New.
2491
2492 2016-07-05 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2493
2494 Implement LWG 2509,
2495 any_cast doesn't work with rvalue reference targets and cannot
2496 move with a value target.
2497 * include/experimental/any (any(_ValueType&&)): Constrain and
2498 add an overload that doesn't forward.
2499 (any_cast(any&&)): Constrain and add an overload that moves.
2500 * testsuite/experimental/any/misc/any_cast.cc: Add tests for
2501 the functionality added by LWG 2509.
2502
2503 2016-07-04 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2504
2505 PR libstdc++/71313
2506 * src/filesystem/ops.cc (remove_all(const path&, error_code&)):
2507 Call remove_all for children of a directory.
2508 * testsuite/experimental/filesystem/operations/create_directories.cc:
2509 Adjust.
2510
2511 2016-06-17 Jonathan Wakely <jwakely (a] redhat.com>
2512
2513 PR libstdc++/71545
2514 * include/bits/stl_algobase.h (lower_bound, lexicographical_compare):
2515 Remove irreflexive checks.
2516 * include/bits/stl_algo.h (lower_bound, upper_bound, equal_range,
2517 binary_search): Likewise.
2518 * testsuite/25_algorithms/equal_range/partitioned.cc: New test.
2519 * testsuite/25_algorithms/lexicographical_compare/71545.cc: New test.
2520 * testsuite/25_algorithms/lower_bound/partitioned.cc: New test.
2521 * testsuite/25_algorithms/upper_bound/partitioned.cc: New test.
2522 * testsuite/util/testsuite_iterators.h (__gnu_test::test_container):
2523 Add constructor from array.
2524
2525 2016-05-26 Jonathan Wakely <jwakely (a] redhat.com>
2526
2527 Backport from mainline
2528 2016-04-24 Jonathan Wakely <jwakely (a] redhat.com>
2529
2530 PR libstdc++/70762
2531 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
2532 static counter to return a different path on every call.
2533
2534 * testsuite/experimental/filesystem/path/native/string.cc: Add
2535 dg-require-filesystem-ts directive.
2536
2537 2016-05-25 Jonathan Wakely <jwakely (a] redhat.com>
2538
2539 Backport from mainline
2540 2016-04-20 Jonathan Wakely <jwakely (a] redhat.com>
2541
2542 PR libstdc++/69703
2543 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
2544 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
2545
2546 Backport from mainline
2547 2016-04-19 Jonathan Wakely <jwakely (a] redhat.com>
2548
2549 PR libstdc++/69703
2550 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in)):
2551 Override endianness bit in mode.
2552 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
2553 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
2554 that little_endian mode is ignored.
2555 * testsuite/experimental/filesystem/path/native/string.cc: New test.
2556
2557 Backport from mainline
2558 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
2559
2560 * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
2561 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
2562 Test begin and end functions.
2563 * testsuite/experimental/filesystem/iterators/
2564 recursive_directory_iterator.cc: Likewise.
2565
2566 Backport from mainline
2567 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
2568
2569 PR libstdc++/71038
2570 * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
2571 * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
2572
2573 Backport from mainline
2574 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
2575
2576 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
2577 Overload operator* to move from rvalues.
2578
2579 Backport from mainline
2580 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
2581
2582 PR libstdc++/71036
2583 * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
2584 * testsuite/experimental/filesystem/operations/create_directory.cc:
2585 New test.
2586
2587 Backport from mainline
2588 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
2589
2590 PR libstdc++/71037
2591 * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
2592 base path to exception.
2593 * testsuite/experimental/filesystem/operations/canonical.cc: Test
2594 paths contained in exception.
2595
2596 Backport from mainline
2597 2016-05-10 Jonathan Wakely <jwakely (a] redhat.com>
2598
2599 PR libstdc++/71005
2600 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
2601 New type.
2602 (directory_iterator::operator++(int)): Return proxy.
2603 (recursive_directory_iterator::operator++(int)): Likewise.
2604 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
2605 Test post-increment.
2606 * testsuite/experimental/filesystem/iterators/
2607 recursive_directory_iterator.cc: Likewise.
2608
2609 Backport from mainline
2610 2016-05-09 Jonathan Wakely <jwakely (a] redhat.com>
2611
2612 PR libstdc++/71004
2613 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
2614 Initialize scalar member variables in default constructor.
2615 * testsuite/experimental/filesystem/iterators/
2616 recursive_directory_iterator.cc: Test default construction.
2617
2618 Backport from mainline
2619 2016-04-19 Jonathan Wakely <jwakely (a] redhat.com>
2620
2621 PR libstdc++/70609
2622 * src/filesystem/ops.cc (close_fd): New function.
2623 (do_copy_file): Set permissions before copying file contents. Check
2624 result of closing file descriptors. Don't copy streambuf when file
2625 is empty.
2626 (copy(const path&, const path&, copy_options, error_code&)): Use
2627 lstat for source file when copy_symlinks is set.
2628 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
2629
2630 Backport from mainline
2631 2016-04-19 Jonathan Wakely <jwakely (a] redhat.com>
2632
2633 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
2634 operator~ operator&=, operator|=, operator^=): Add noexcept to
2635 overloaded operators for copy_options, perms and directory_options.
2636 * src/filesystem/ops.cc (make_file_type, make_file_status,
2637 is_not_found_errno, file_time): Add noexcept.
2638
2639 2016-05-11 Jonathan Wakely <jwakely (a] redhat.com>
2640
2641 PR libstdc++/71049
2642 * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
2643 exception constructors with __sso_string parameters.
2644
2645 2016-05-09 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2646
2647 Avoid endless run-time recursion for copying single-element
2648 tuples where the element type is by-value constructible
2649 from any type.
2650 * include/std/tuple (_NotSameTuple): New.
2651 * include/std/tuple (tuple(_UElements&&...): Use it.
2652 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
2653
2654 2016-04-27 Release Manager
2655
2656 * GCC 6.1.0 released.
2657
2658 2016-04-19 Jonathan Wakely <jwakely (a] redhat.com>
2659
2660 * include/bits/random.h: Fix filename in comment.
2661
2662 2016-04-14 Jason Merrill <jason (a] redhat.com>
2663
2664 Revert Jonathan's empty ABI change from yesterday.
2665
2666 2016-04-13 Martin Sebor <msebor (a] redhat.com>
2667
2668 PR c++/69517
2669 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
2670 upper bound is positive.
2671
2672 2016-04-13 Jonathan Wakely <jwakely (a] redhat.com>
2673
2674 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
2675 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
2676 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
2677 of functions taking empty structs by value. Add a template parameter
2678 to overloads without hints. Rename overloads with hints to
2679 _M_emplace_hint.
2680 (_Hashtable::_M_erase(true_type, const_iterator),
2681 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
2682 by reordering parameters.
2683 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
2684 _M_emplace_hint instead of _M_emplace.
2685 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
2686 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
2687 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
2688 __shared_ptr): Likewise.
2689 * include/bits/stl_algo.h (replace_if): Likewise.
2690 * include/bits/stl_pair.h (piecewise_construct_t,
2691 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
2692 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
2693 __uses_alloc0): Likewise.
2694 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
2695 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
2696 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
2697 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
2698 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
2699 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
2700 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
2701
2702 2016-04-12 Edward Smith-Rowland <3dw4rd (a] verizon.net>
2703
2704 Document C++17/TR29124 C++ Special Math Functions.
2705 * include/bits/specfun.h: Add Doxygen markup.
2706
2707 2016-04-07 Jonathan Wakely <jwakely (a] redhat.com>
2708
2709 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
2710
2711 2016-04-06 Eric Botcazou <ebotcazou (a] adacore.com>
2712
2713 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
2714 * src/Makefile.in: Regenerate.
2715
2716 2016-04-05 Jonathan Wakely <jwakely (a] redhat.com>
2717
2718 PR libstdc++/70554
2719 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
2720 __atomic_fetch_add for bool.
2721 * configure: Regenerate.
2722
2723 * testsuite/30_threads/thread/70503.cc: Require -static to work.
2724
2725 PR libstdc++/70503
2726 * src/c++11/thread.cc (execute_native_thread_routine,
2727 execute_native_thread_routine_compat): Give internal linkage.
2728 * testsuite/30_threads/thread/70503.cc: New test.
2729
2730 2016-04-05 Ville Voutilainen <ville.voutilainen (a] gmail.com>
2731
2732 PR libstdc++/70437
2733 * include/bits/stl_pair.h (_ConstructiblePair,
2734 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
2735 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
2736 for same-type cases.
2737 * testsuite/20_util/pair/70437.cc: New.
2738
2739 2016-03-24 Jonathan Wakely <jwakely (a] redhat.com>
2740
2741 PR libstdc++/69945
2742 * config/abi/pre/gnu.ver: Add new symbol.
2743 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
2744 * testsuite/18_support/free_eh_pool.cc: New test.
2745
2746 2016-03-23 Bernd Edlinger <bernd.edlinger (a] hotmail.de>
2747
2748 * include/Makefile.am (install-freestanding-headers): Add
2749 concept_check.h and move.h to the installed headers.
2750 * include/Makefile.in: Regenerated.
2751 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
2752 freestanding implementations.
2753 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
2754 that this macro has no effect for freestanding implementations.
2755 * doc/html/manual/using_macros.html: Likewise.
2756
2757 2016-02-24 Jonathan Wakely <jwakely (a] redhat.com>
2758
2759 PR libstdc++/69939
2760 * include/experimental/tuple (__apply_impl): Qualify get and forward.
2761
2762 2016-02-23 Jonathan Wakely <jwakely (a] redhat.com>
2763
2764 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
2765 * doc/html/*: Regenerate.
2766
2767 PR libstdc++/69893
2768 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
2769 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
2770 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
2771 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
2772 trunc) [__cplusplus >= 201103L]: Import from namespace std.
2773 (fabs) [__cplusplus < 201103L]: Import from namespace std.
2774 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
2775 Likewise.
2776 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
2777 namespace before including TR1 headers.
2778 * testsuite/tr1/headers/c++200x/math.cc: New test.
2779
2780 2016-02-23 Bernd Edlinger <bernd.edlinger (a] hotmail.de>
2781
2782 PR libstdc++/69881
2783 * include/c_global/cstdarg: Undefine __need___va_list.
2784 * include/c_global/cstddef: Undefine all kinds of __need_*.
2785
2786 2016-02-16 Tim Shen <timshen (a] google.com>
2787
2788 PR libstdc++/69794
2789 * include/bits/regex_scanner.h: Add different special character
2790 sets for grep and egrep regex.
2791 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
2792 * testsuite/28_regex/regression.cc: Add new testcase.
2793
2794 2016-02-08 Jonathan Wakely <jwakely (a] redhat.com>
2795
2796 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
2797 added 'constexpr' in previous commit.
2798 * configure: Regenerate.
2799
2800 PR libstdc++/48891
2801 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
2802 checks for all targets except *-*-solaris2.* and ensure we find the
2803 libc math.h header not our own.
2804 * configure: Regenerate.
2805
2806 2016-02-05 Dominik Vogt <vogt (a] linux.vnet.ibm.com>
2807
2808 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
2809 New file. Copied over from s390-linux-gnu.
2810
2811 2016-02-04 Jonathan Wakely <jwakely (a] redhat.com>
2812
2813 PR libstdc++/69626
2814 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
2815 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
2816 * config.h.in: Regenerate.
2817 * configure: Regenerate.
2818 * testsuite/21_strings/c_strings/char/69626.cc: New.
2819
2820 * doc/html/index.html: Regenerate.
2821
2822 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
2823 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
2824 * doc/html/*: Regenerate.
2825
2826 2016-02-01 Bernd Edlinger <bernd.edlinger (a] hotmail.de>
2827
2828 PR libstdc++/69581
2829 * include/c_compatibility/math.h: Move header guards.
2830 * include/c_compatibility/stdlib.h: Likewise.
2831
2832 2016-01-29 Jonathan Wakely <jwakely (a] redhat.com>
2833
2834 PR libstdc++/69506
2835 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
2836
2837 2016-01-28 John David Anglin <danglin (a] gcc.gnu.org>
2838
2839 PR libstdc++/69450
2840 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
2841 isinf and isnan functions into two independent checks. Check on hpux.
2842 * config.h.in: Regenerate.
2843 * configure: Regenerate.
2844 * include/c_global/cmath (isinf(double), isnan(double)): Use
2845 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
2846 respectively.
2847
2848 2016-01-27 Jakub Jelinek <jakub (a] redhat.com>
2849
2850 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
2851
2852 2016-01-27 Jonathan Wakely <jwakely (a] redhat.com>
2853
2854 PR libstdc++/69295
2855 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
2856 -ffp-contract=off, and -ffloat-store to disable excess precision.
2857 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
2858 -ffp-contract=off.
2859
2860 2016-01-26 Jonathan Wakely <jwakely (a] redhat.com>
2861
2862 PR libstdc++/69478
2863 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
2864 random_access_iterator_tag>): Check is_move_assignable when moving.
2865 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
2866 Likewise.
2867 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
2868 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
2869 * testsuite/25_algorithms/move/69478.cc: New.
2870 * testsuite/25_algorithms/move_backward/69478.cc: new.
2871
2872 2016-01-26 Andris Pavenis <andris.pavenis (a] iki.fi>
2873
2874 * include/c_compatibility/stdlib.h: Include wide character related
2875 definitions only when they are available in cstdlib.
2876
2877 2016-01-25 Jonathan Wakely <jwakely (a] redhat.com>
2878
2879 PR libstdc++/69464
2880 * include/Makefile.am: Add new header.
2881 * include/Makefile.in: Regenerate.
2882 * include/bits/random.h (uniform_int_distribution): Move to
2883 bits/uniform_int_dist.h.
2884 * include/bits/random.tcc (uniform_int_distribution::operator(),
2885 uniform_int_distribution::__generate_impl): Likewise.
2886 * include/bits/uniform_int_dist.h: New header.
2887 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
2888 <bits/uniform_int_dist.h> instead of <random>.
2889 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
2890 move_iterators/1.cc: Include correct header for uninitialized_copy.
2891 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
2892 move_iterators/1.cc: Likewise.
2893 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
2894 header for vector.
2895 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
2896
2897 2016-01-23 John David Anglin <danglin (a] gcc.gnu.org>
2898
2899 PR libstdc++/69446
2900 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
2901
2902 2016-01-22 Edward Smith-Rowland <3dw4rd (a] verizon.net>
2903
2904 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
2905 * include/c_compatibility/math.h: Import the TR29124 functions
2906 into the global namespace.
2907 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
2908 xfail and make compile-only.
2909 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
2910 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
2911 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
2912 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
2913 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
2914 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
2915 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
2916 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
2917 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
2918 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
2919 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
2920 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
2921 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
2922 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
2923 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
2924 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
2925 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
2926 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
2927 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
2928 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
2929
2930 2016-01-22 Jonathan Wakely <jwakely (a] redhat.com>
2931
2932 PR libstdc++/69116
2933 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
2934 define result_type for types which can be safely used with valarrays.
2935 * testsuite/26_numerics/valarray/69116.cc: New.
2936
2937 PR libstdc++/69413
2938 * config/os/gnu-linux/os_defines.h: Define
2939 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
2940 * include/c_global/cmath (isinf, isnan): Check it.
2941 * doc/xml/manual/internals.xml: Document it.
2942 * doc/html/*: Regenerate.
2943
2944 2016-01-21 Jonathan Wakely <jwakely (a] redhat.com>
2945
2946 PR libstdc++/69406
2947 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
2948 * include/ext/type_traits.h: Likewise.
2949 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
2950 for presence of C headers.
2951 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
2952 dg-error line number.
2953 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
2954 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
2955 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
2956
2957 2016-01-20 Torvald Riegel <triegel (a] redhat.com>
2958
2959 PR libstdc++/69310
2960 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
2961
2962 2016-01-20 Jonathan Wakely <jwakely (a] redhat.com>
2963
2964 PR libstdc++/60401
2965 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
2966 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
2967 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
2968 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
2969 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
2970 Add using declarations.
2971 * testsuite/26_numerics/headers/cmath/60401.cc: New.
2972
2973 PR libstdc++/69386
2974 * include/c_global/ccomplex: Ensure C++ language linkage.
2975 * include/c_global/cmath: Likewise.
2976 * include/c_global/cstdlib: Likewise.
2977 * include/c_global/ctgmath: Likewise.
2978 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
2979
2980 2016-01-19 Jonathan Wakely <jwakely (a] redhat.com>
2981
2982 PR libstdc++/14608
2983 PR libstdc++/60401
2984 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
2985 --enable-cheaders=c_global configs.
2986 * include/Makefile.in: Regenerate.
2987 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
2988 test and allow inclusion from C files.
2989 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
2990 (at_quick_exit, quick_exit): Add using directives.
2991 * include/c_global/cmath: Use #include_next for math.h.
2992 * include/c_global/cstdlib: Use #include_next for stdlib.h.
2993 * testsuite/26_numerics/headers/cmath/14608.cc: New.
2994 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
2995 Remove xfail for most targets.
2996 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
2997
2998 2016-01-18 Torvald Riegel <triegel (a] redhat.com>
2999
3000 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
3001 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
3002 and move after its definition.
3003 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
3004 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
3005 __GXX_WEAK__, and only provide transactional clones if
3006 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
3007 functions.
3008
3009 2016-01-18 Jonathan Wakely <jwakely (a] redhat.com>
3010
3011 PR libstdc++/60637
3012 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
3013
3014 PR libstdc++/69243
3015 * include/std/functional (_Function_base::_M_not_empty_function):
3016 Change overloads for pointers to take arguments by value.
3017 * testsuite/20_util/function/cons/57465.cc: Add tests for
3018 pointer-to-member cases.
3019
3020 PR libstdc++/69340
3021 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
3022 Use macros for exception handling and fix unused parameter warning.
3023
3024 2016-01-17 John David Anglin <danglin (a] gcc.gnu.org>
3025
3026 PR libstdc++/68734
3027 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
3028
3029 2016-01-17 Torvald Riegel <triegel (a] redhat.com>
3030
3031 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
3032
3033 2016-01-16 H.J. Lu <hongjiu.lu (a] intel.com>
3034
3035 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
3036 __int128 symbols.
3037
3038 2016-01-15 Jonathan Wakely <jwakely (a] redhat.com>
3039
3040 PR libstdc++/69293
3041 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
3042 static assertion that type is constructible from the arguments.
3043 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
3044 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
3045 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
3046
3047 PR libstdc++/69294
3048 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
3049 and isnan on AIX. Quote variables.
3050 * configure: Regenerate.
3051
3052 2016-01-15 Torvald Riegel <triegel (a] redhat.com>
3053
3054 * include/bits/basic_string.h (basic_string): Declare friends.
3055 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
3056 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
3057 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
3058 length_error, out_of_range, runtime_error, range_error,
3059 underflow_error, overflow_error): Declare members as transaction-safe.
3060 (logic_error, runtime_error): Declare friend functions.
3061 * libsupc++/exception (exception, bad_exception): Declare members as
3062 transaction-safe.
3063 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
3064 transaction-safe members of exceptions and helper functions.
3065 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
3066 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
3067 (CXXABI_1.3.10): New.
3068 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
3069 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
3070 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
3071 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
3072 * include/Makefile.in: Regenerate.
3073 * config.h.in: Regenerate.
3074 * configure: Regenerate.
3075 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
3076
3077 2016-01-15 Steve Ellcey <sellcey (a] imgtec.com>
3078
3079 * include/ext/random.tcc: Use __builtin_isfinite instead of
3080 std::isfinite.
3081
3082 2016-01-15 Jonathan Wakely <jwakely (a] redhat.com>
3083
3084 * include/bits/std_mutex.h: Fix Doxygen @file name.
3085
3086 2016-01-14 Edward Smith-Rowland <3dw4rd (a] verizon.net>
3087 Jonathan Wakely <jwakely (a] redhat.com>
3088 Florian Goth <CaptainSifff (a] gmx.de>
3089
3090 Implement TR29124 C++ special Math Functions.
3091 * include/Makefile.am: Add new headers.
3092 * include/Makefile.in: Regenerate.
3093 * include/bits/specfun.h: New.
3094 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
3095 * include/tr1/bessel_function.tcc: Ditto.
3096 * include/tr1/beta_function.tcc: Ditto.
3097 * include/tr1/cmath: Ditto.
3098 * include/tr1/ell_integral.tcc: Ditto.
3099 * include/tr1/exp_integral.tcc: Ditto.
3100 * include/tr1/gamma.tcc: Ditto.
3101 * include/tr1/hypergeometric.tcc: Ditto.
3102 * include/tr1/legendre_function.tcc: Ditto.
3103 * include/tr1/modified_bessel_func.tcc: Ditto.
3104 * include/tr1/poly_hermite.tcc: Ditto.
3105 * include/tr1/poly_laguerre.tcc: Ditto.
3106 * include/tr1/riemann_zeta.tcc: Ditto.
3107 * include/tr1/special_function_util.h: Ditto.
3108 * testsuite/ext/special_functions/conf_hyperg: New.
3109 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
3110 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
3111 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
3112 * testsuite/ext/special_functions/hyperg: New.
3113 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
3114 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
3115 * testsuite/ext/special_functions/hyperg/compile.cc: New.
3116 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
3117 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
3118 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
3119 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
3120 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
3121 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
3122 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
3123 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
3124 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
3125 * testsuite/special_functions/03_beta/check_nan.cc: New.
3126 * testsuite/special_functions/03_beta/check_value.cc: New.
3127 * testsuite/special_functions/03_beta/compile.cc: New.
3128 * testsuite/special_functions/03_beta/compile_2.cc: New.
3129 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
3130 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
3131 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
3132 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
3133 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
3134 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
3135 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
3136 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
3137 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
3138 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
3139 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
3140 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
3141 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
3142 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
3143 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
3144 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
3145 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
3146 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
3147 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
3148 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
3149 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
3150 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
3151 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
3152 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
3153 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
3154 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
3155 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
3156 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
3157 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
3158 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
3159 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
3160 * testsuite/special_functions/11_ellint_1/compile.cc: New.
3161 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
3162 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
3163 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
3164 * testsuite/special_functions/12_ellint_2/compile.cc: New.
3165 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
3166 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
3167 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
3168 * testsuite/special_functions/13_ellint_3/compile.cc: New.
3169 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
3170 * testsuite/special_functions/14_expint/check_nan.cc: New.
3171 * testsuite/special_functions/14_expint/check_value.cc: New.
3172 * testsuite/special_functions/14_expint/compile.cc: New.
3173 * testsuite/special_functions/14_expint/compile_2.cc: New.
3174 * testsuite/special_functions/15_hermite/check_nan.cc: New.
3175 * testsuite/special_functions/15_hermite/check_value.cc: New.
3176 * testsuite/special_functions/15_hermite/compile.cc: New.
3177 * testsuite/special_functions/15_hermite/compile_2.cc: New.
3178 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
3179 * testsuite/special_functions/16_laguerre/check_value.cc: New.
3180 * testsuite/special_functions/16_laguerre/compile.cc: New.
3181 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
3182 * testsuite/special_functions/17_legendre/check_nan.cc: New.
3183 * testsuite/special_functions/17_legendre/check_value.cc: New.
3184 * testsuite/special_functions/17_legendre/compile.cc: New.
3185 * testsuite/special_functions/17_legendre/compile_2.cc: New.
3186 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
3187 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
3188 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
3189 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
3190 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
3191 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
3192 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
3193 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
3194 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
3195 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
3196 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
3197 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
3198 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
3199 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
3200 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
3201 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
3202 * testsuite/util/specfun_testcase.h: New.
3203 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
3204 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
3205 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
3206 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
3207 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
3208 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
3209 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
3210
3211 2016-01-13 Jonathan Wakely <jwakely (a] redhat.com>
3212
3213 PR libstdc++/48891
3214 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
3215 and isnan functions.
3216 * config.h.in: Regenerate.
3217 * configure: Regenerate.
3218 * include/c_global/cmath (isinf(double), isnan(double))
3219 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
3220 * testsuite/26_numerics/headers/cmath/48891.cc: New.
3221
3222 2016-01-13 Rainer Orth <ro (a] CeBiTec.Uni-Bielefeld.DE>
3223
3224 PR libstdc++/66006
3225 * configure.host (abi_baseline_pair): Use separate baseline for
3226 Solaris 11+ and Solaris 10 with gld.
3227 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
3228 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
3229 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
3230
3231 2016-01-12 Daniel Kruegler <daniel.kruegler (a] gmail.com>
3232
3233 PR libstdc++/68877
3234 * include/std/type_traits: Following N4511, reimplement __is_swappable
3235 and __is_nothrow_swappable. Move __is_swappable to namespace std,
3236 adjust callers. Use __is_nothrow_swappable in swap.
3237 * include/bits/move.h: Use __is_nothrow_swappable in swap.
3238 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
3239 __is_swappable related tests.
3240 * testsuite/20_util/is_swappable/value.cc: New.
3241 * testsuite/20_util/is_swappable/requirements/
3242 explicit_instantiation.cc: New.
3243 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
3244 * testsuite/25_algorithms/swap/68877.cc: New.
3245
3246 2016-01-12 Jonathan Wakely <jwakely (a] redhat.com>
3247
3248 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
3249
3250 PR libstdc++/69005
3251 PR libstdc++/69222
3252 * include/std/functional (function::_Invoke): Remove, use result_of.
3253 (function::_Callable): Replace alias template with class template
3254 and use partial specialization instead of _NotSelf alias template.
3255 (function(_Functor)): Add "not self" constraint so that _Callable is
3256 not used while type is incomplete.
3257 * testsuite/20_util/function/69222.cc: New.
3258
3259 2016-01-11 Jonathan Wakely <jwakely (a] redhat.com>
3260
3261 PR libstdc++/60976
3262 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
3263 Define partial specialization.
3264 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
3265 destroy members to std::allocator explicit specialization.
3266
3267 2016-01-08 Jonathan Wakely <jwakely (a] redhat.com>
3268
3269 * testsuite/26_numerics/headers/cmath/
3270 c99_classification_macros_c++.cc: Rename to ...
3271 * testsuite/26_numerics/headers/cmath/
3272 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
3273 * testsuite/26_numerics/headers/cmath/
3274 c99_classification_macros_c++0x.cc: Rename to ...
3275 * testsuite/26_numerics/headers/cmath/
3276 c99_classification_macros_c++11.cc: Here.
3277
3278 PR libstdc++/69190
3279 * include/bits/uses_allocator.h: Add missing include.
3280
3281 2016-01-07 Jonathan Wakely <jwakely (a] redhat.com>
3282
3283 PR libstdc++/69105
3284 PR libstdc++/69106
3285 PR libstdc++/69114
3286 * include/bits/stl_iterator.h (back_insert_iterator,
3287 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
3288 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
3289 * include/std/future (__future::base::_State_baseV2::__setter):
3290 Likewise.
3291 * include/std/scoped_allocator (__outermost): Likewise.
3292 * testsuite/20_util/scoped_allocator/69114.cc: New.
3293 * testsuite/20_util/uses_allocator/69114.cc: New.
3294 * testsuite/30_threads/promise/69106.cc: New.
3295
3296 2016-01-06 Jonathan Wakely <jwakely (a] redhat.com>
3297
3298 PR libstdc++/69092
3299 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
3300 Remove _GLIBCXX_NOEXCEPT.
3301 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
3302
3303 * include/Makefile.am: Adjust.
3304 * include/Makefile.in: Regenerate.
3305 * include/bits/mutex.h: Rename to bits/std_mutex.h.
3306 * include/std/condition_variable: Adjust include.
3307 * include/std/mutex: Likewise.
3308
3309 2016-01-04 Jakub Jelinek <jakub (a] redhat.com>
3310
3311 Update copyright years.
3312
3314 Copyright (C) 2016 Free Software Foundation, Inc.
3315
3316 Copying and distribution of this file, with or without modification,
3317 are permitted in any medium without royalty provided the copyright
3318 notice and this notice are preserved.
3319