libstdc++/70762 fix fallback implementation of nonexistent_path
[gcc.git] / libstdc++-v3 / ChangeLog
1 2016-04-24 Jonathan Wakely <jwakely@redhat.com>
2
3 PR libstdc++/70762
4 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
5 static counter to return a different path on every call.
6
7 2016-04-22 Tim Shen <timshen@google.com>
8
9 PR libstdc++/70745
10 * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
11 Fix the match_not_bow and match_not_eow behavior.
12 * testsuite/28_regex/regression.cc: Add testcase.
13
14 2016-04-20 Jonathan Wakely <jwakely@redhat.com>
15
16 PR libstdc++/69703
17 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
18 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
19
20 2016-04-19 Jonathan Wakely <jwakely@redhat.com>
21
22 PR libstdc++/69703
23 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
24 Override endianness bit in mode.
25 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
26 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
27 that little_endian mode is ignored.
28 * testsuite/experimental/filesystem/path/native/string.cc: New test.
29
30 PR libstdc++/70609
31 * src/filesystem/ops.cc (close_fd): New function.
32 (do_copy_file): Set permissions before copying file contents. Check
33 result of closing file descriptors. Don't copy streambuf when file
34 is empty.
35 (copy(const path&, const path&, copy_options, error_code&)): Use
36 lstat for source file when copy_symlinks is set.
37 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
38
39 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
40 operator~ operator&=, operator|=, operator^=): Add noexcept to
41 overloaded operators for copy_options, perms and directory_options.
42 * src/filesystem/ops.cc (make_file_type, make_file_status,
43 is_not_found_errno, file_time): Add noexcept.
44
45 2016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net>
46
47 * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
48
49 2016-04-18 Jonathan Wakely <jwakely@redhat.com>
50
51 PR libstdc++/41759
52 * include/bits/random.h: Reword static assertion messages to state
53 positive conditions.
54 * include/bits/random.tcc: Likewise.
55 * include/bits/uniform_int_dist.h: Likewise.
56 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
57 patterns.
58
59 * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
60
61 * config/cpu/sh/atomicity.h: Fix typo in comment.
62
63 PR libstdc++/70294
64 * include/std/thread (operator<, operator==): Move definitions to
65 namespace-scope.
66 * testsuite/30_threads/thread/id/70294.cc: New test.
67
68 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
69 -Wno-pedantic to dg-options.
70 * testsuite/20_util/align/2.cc: Use type as operand of alignof.
71 * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
72 to dg-options.
73 * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
74 Remove extra semi-colon.
75 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
76 Always supply second argument to static_assert.
77 * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
78 semi-colon.
79 * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
80 dg-options.
81 * testsuite/26_numerics/complex/literals/values.cc: Likewise.
82 * testsuite/29_atomics/atomic/60695.cc: Likewise.
83 * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
84 alignof when operand is an object not a type.
85 * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
86 * testsuite/decimal/make-decimal.cc: Likewise.
87 * testsuite/experimental/type_traits/value.cc: Always supply second
88 argument to static_assert.
89 * testsuite/util/testsuite_common_types.h: Use __extension__ for
90 __int128 types.
91
92 * testsuite/experimental/type_erased_allocator/1.cc: Don't include
93 internal header.
94 * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
95 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
96 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
97 Likewise. Add licence and change to compile-only test.
98
99 * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
100 unused parameter.
101 * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
102
103 * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
104 warnings.
105
106 2016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net>
107
108 * include/bits/specfun.h: Trivial comment misspelling.
109
110 2016-04-14 Jason Merrill <jason@redhat.com>
111
112 Revert Jonathan's empty ABI change from yesterday.
113
114 2016-04-13 Martin Sebor <msebor@redhat.com>
115
116 PR c++/69517
117 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
118 upper bound is positive.
119
120 2016-04-13 Jonathan Wakely <jwakely@redhat.com>
121
122 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
123 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
124 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
125 of functions taking empty structs by value. Add a template parameter
126 to overloads without hints. Rename overloads with hints to
127 _M_emplace_hint.
128 (_Hashtable::_M_erase(true_type, const_iterator),
129 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
130 by reordering parameters.
131 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
132 _M_emplace_hint instead of _M_emplace.
133 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
134 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
135 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
136 __shared_ptr): Likewise.
137 * include/bits/stl_algo.h (replace_if): Likewise.
138 * include/bits/stl_pair.h (piecewise_construct_t,
139 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
140 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
141 __uses_alloc0): Likewise.
142 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
143 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
144 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
145 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
146 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
147 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
148 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
149
150 2016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net>
151
152 Document C++17/TR29124 C++ Special Math Functions.
153 * include/bits/specfun.h: Add Doxygen markup.
154
155 2016-04-07 Jonathan Wakely <jwakely@redhat.com>
156
157 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
158
159 2016-04-06 Eric Botcazou <ebotcazou@adacore.com>
160
161 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
162 * src/Makefile.in: Regenerate.
163
164 2016-04-05 Jonathan Wakely <jwakely@redhat.com>
165
166 PR libstdc++/70554
167 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
168 __atomic_fetch_add for bool.
169 * configure: Regenerate.
170
171 * testsuite/30_threads/thread/70503.cc: Require -static to work.
172
173 PR libstdc++/70503
174 * src/c++11/thread.cc (execute_native_thread_routine,
175 execute_native_thread_routine_compat): Give internal linkage.
176 * testsuite/30_threads/thread/70503.cc: New test.
177
178 2016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com>
179
180 PR libstdc++/70437
181 * include/bits/stl_pair.h (_ConstructiblePair,
182 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
183 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
184 for same-type cases.
185 * testsuite/20_util/pair/70437.cc: New.
186
187 2016-03-24 Jonathan Wakely <jwakely@redhat.com>
188
189 PR libstdc++/69945
190 * config/abi/pre/gnu.ver: Add new symbol.
191 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
192 * testsuite/18_support/free_eh_pool.cc: New test.
193
194 2016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
195
196 * include/Makefile.am (install-freestanding-headers): Add
197 concept_check.h and move.h to the installed headers.
198 * include/Makefile.in: Regenerated.
199 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
200 freestanding implementations.
201 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
202 that this macro has no effect for freestanding implementations.
203 * doc/html/manual/using_macros.html: Likewise.
204
205 2016-02-24 Jonathan Wakely <jwakely@redhat.com>
206
207 PR libstdc++/69939
208 * include/experimental/tuple (__apply_impl): Qualify get and forward.
209
210 2016-02-23 Jonathan Wakely <jwakely@redhat.com>
211
212 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
213 * doc/html/*: Regenerate.
214
215 PR libstdc++/69893
216 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
217 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
218 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
219 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
220 trunc) [__cplusplus >= 201103L]: Import from namespace std.
221 (fabs) [__cplusplus < 201103L]: Import from namespace std.
222 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
223 Likewise.
224 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
225 namespace before including TR1 headers.
226 * testsuite/tr1/headers/c++200x/math.cc: New test.
227
228 2016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
229
230 PR libstdc++/69881
231 * include/c_global/cstdarg: Undefine __need___va_list.
232 * include/c_global/cstddef: Undefine all kinds of __need_*.
233
234 2016-02-16 Tim Shen <timshen@google.com>
235
236 PR libstdc++/69794
237 * include/bits/regex_scanner.h: Add different special character
238 sets for grep and egrep regex.
239 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
240 * testsuite/28_regex/regression.cc: Add new testcase.
241
242 2016-02-08 Jonathan Wakely <jwakely@redhat.com>
243
244 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
245 added 'constexpr' in previous commit.
246 * configure: Regenerate.
247
248 PR libstdc++/48891
249 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
250 checks for all targets except *-*-solaris2.* and ensure we find the
251 libc math.h header not our own.
252 * configure: Regenerate.
253
254 2016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com>
255
256 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
257 New file. Copied over from s390-linux-gnu.
258
259 2016-02-04 Jonathan Wakely <jwakely@redhat.com>
260
261 PR libstdc++/69626
262 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
263 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
264 * config.h.in: Regenerate.
265 * configure: Regenerate.
266 * testsuite/21_strings/c_strings/char/69626.cc: New.
267
268 * doc/html/index.html: Regenerate.
269
270 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
271 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
272 * doc/html/*: Regenerate.
273
274 2016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
275
276 PR libstdc++/69581
277 * include/c_compatibility/math.h: Move header guards.
278 * include/c_compatibility/stdlib.h: Likewise.
279
280 2016-01-29 Jonathan Wakely <jwakely@redhat.com>
281
282 PR libstdc++/69506
283 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
284
285 2016-01-28 John David Anglin <danglin@gcc.gnu.org>
286
287 PR libstdc++/69450
288 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
289 isinf and isnan functions into two independent checks. Check on hpux.
290 * config.h.in: Regenerate.
291 * configure: Regenerate.
292 * include/c_global/cmath (isinf(double), isnan(double)): Use
293 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
294 respectively.
295
296 2016-01-27 Jakub Jelinek <jakub@redhat.com>
297
298 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
299
300 2016-01-27 Jonathan Wakely <jwakely@redhat.com>
301
302 PR libstdc++/69295
303 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
304 -ffp-contract=off, and -ffloat-store to disable excess precision.
305 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
306 -ffp-contract=off.
307
308 2016-01-26 Jonathan Wakely <jwakely@redhat.com>
309
310 PR libstdc++/69478
311 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
312 random_access_iterator_tag>): Check is_move_assignable when moving.
313 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
314 Likewise.
315 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
316 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
317 * testsuite/25_algorithms/move/69478.cc: New.
318 * testsuite/25_algorithms/move_backward/69478.cc: new.
319
320 2016-01-26 Andris Pavenis <andris.pavenis@iki.fi>
321
322 * include/c_compatibility/stdlib.h: Include wide character related
323 definitions only when they are available in cstdlib.
324
325 2016-01-25 Jonathan Wakely <jwakely@redhat.com>
326
327 PR libstdc++/69464
328 * include/Makefile.am: Add new header.
329 * include/Makefile.in: Regenerate.
330 * include/bits/random.h (uniform_int_distribution): Move to
331 bits/uniform_int_dist.h.
332 * include/bits/random.tcc (uniform_int_distribution::operator(),
333 uniform_int_distribution::__generate_impl): Likewise.
334 * include/bits/uniform_int_dist.h: New header.
335 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
336 <bits/uniform_int_dist.h> instead of <random>.
337 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
338 move_iterators/1.cc: Include correct header for uninitialized_copy.
339 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
340 move_iterators/1.cc: Likewise.
341 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
342 header for vector.
343 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
344
345 2016-01-23 John David Anglin <danglin@gcc.gnu.org>
346
347 PR libstdc++/69446
348 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
349
350 2016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
351
352 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
353 * include/c_compatibility/math.h: Import the TR29124 functions
354 into the global namespace.
355 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
356 xfail and make compile-only.
357 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
358 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
359 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
360 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
361 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
362 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
363 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
364 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
365 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
366 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
367 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
368 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
369 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
370 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
371 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
372 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
373 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
374 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
375 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
376 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
377
378 2016-01-22 Jonathan Wakely <jwakely@redhat.com>
379
380 PR libstdc++/69116
381 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
382 define result_type for types which can be safely used with valarrays.
383 * testsuite/26_numerics/valarray/69116.cc: New.
384
385 PR libstdc++/69413
386 * config/os/gnu-linux/os_defines.h: Define
387 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
388 * include/c_global/cmath (isinf, isnan): Check it.
389 * doc/xml/manual/internals.xml: Document it.
390 * doc/html/*: Regenerate.
391
392 2016-01-21 Jonathan Wakely <jwakely@redhat.com>
393
394 PR libstdc++/69406
395 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
396 * include/ext/type_traits.h: Likewise.
397 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
398 for presence of C headers.
399 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
400 dg-error line number.
401 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
402 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
403 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
404
405 2016-01-20 Torvald Riegel <triegel@redhat.com>
406
407 PR libstdc++/69310
408 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
409
410 2016-01-20 Jonathan Wakely <jwakely@redhat.com>
411
412 PR libstdc++/60401
413 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
414 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
415 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
416 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
417 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
418 Add using declarations.
419 * testsuite/26_numerics/headers/cmath/60401.cc: New.
420
421 PR libstdc++/69386
422 * include/c_global/ccomplex: Ensure C++ language linkage.
423 * include/c_global/cmath: Likewise.
424 * include/c_global/cstdlib: Likewise.
425 * include/c_global/ctgmath: Likewise.
426 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
427
428 2016-01-19 Jonathan Wakely <jwakely@redhat.com>
429
430 PR libstdc++/14608
431 PR libstdc++/60401
432 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
433 --enable-cheaders=c_global configs.
434 * include/Makefile.in: Regenerate.
435 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
436 test and allow inclusion from C files.
437 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
438 (at_quick_exit, quick_exit): Add using directives.
439 * include/c_global/cmath: Use #include_next for math.h.
440 * include/c_global/cstdlib: Use #include_next for stdlib.h.
441 * testsuite/26_numerics/headers/cmath/14608.cc: New.
442 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
443 Remove xfail for most targets.
444 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
445
446 2016-01-18 Torvald Riegel <triegel@redhat.com>
447
448 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
449 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
450 and move after its definition.
451 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
452 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
453 __GXX_WEAK__, and only provide transactional clones if
454 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
455 functions.
456
457 2016-01-18 Jonathan Wakely <jwakely@redhat.com>
458
459 PR libstdc++/60637
460 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
461
462 PR libstdc++/69243
463 * include/std/functional (_Function_base::_M_not_empty_function):
464 Change overloads for pointers to take arguments by value.
465 * testsuite/20_util/function/cons/57465.cc: Add tests for
466 pointer-to-member cases.
467
468 PR libstdc++/69340
469 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
470 Use macros for exception handling and fix unused parameter warning.
471
472 2016-01-17 John David Anglin <danglin@gcc.gnu.org>
473
474 PR libstdc++/68734
475 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
476
477 2016-01-17 Torvald Riegel <triegel@redhat.com>
478
479 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
480
481 2016-01-16 H.J. Lu <hongjiu.lu@intel.com>
482
483 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
484 __int128 symbols.
485
486 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
487
488 PR libstdc++/69293
489 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
490 static assertion that type is constructible from the arguments.
491 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
492 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
493 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
494
495 PR libstdc++/69294
496 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
497 and isnan on AIX. Quote variables.
498 * configure: Regenerate.
499
500 2016-01-15 Torvald Riegel <triegel@redhat.com>
501
502 * include/bits/basic_string.h (basic_string): Declare friends.
503 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
504 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
505 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
506 length_error, out_of_range, runtime_error, range_error,
507 underflow_error, overflow_error): Declare members as transaction-safe.
508 (logic_error, runtime_error): Declare friend functions.
509 * libsupc++/exception (exception, bad_exception): Declare members as
510 transaction-safe.
511 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
512 transaction-safe members of exceptions and helper functions.
513 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
514 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
515 (CXXABI_1.3.10): New.
516 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
517 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
518 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
519 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
520 * include/Makefile.in: Regenerate.
521 * config.h.in: Regenerate.
522 * configure: Regenerate.
523 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
524
525 2016-01-15 Steve Ellcey <sellcey@imgtec.com>
526
527 * include/ext/random.tcc: Use __builtin_isfinite instead of
528 std::isfinite.
529
530 2016-01-15 Jonathan Wakely <jwakely@redhat.com>
531
532 * include/bits/std_mutex.h: Fix Doxygen @file name.
533
534 2016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
535 Jonathan Wakely <jwakely@redhat.com>
536 Florian Goth <CaptainSifff@gmx.de>
537
538 Implement TR29124 C++ special Math Functions.
539 * include/Makefile.am: Add new headers.
540 * include/Makefile.in: Regenerate.
541 * include/bits/specfun.h: New.
542 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
543 * include/tr1/bessel_function.tcc: Ditto.
544 * include/tr1/beta_function.tcc: Ditto.
545 * include/tr1/cmath: Ditto.
546 * include/tr1/ell_integral.tcc: Ditto.
547 * include/tr1/exp_integral.tcc: Ditto.
548 * include/tr1/gamma.tcc: Ditto.
549 * include/tr1/hypergeometric.tcc: Ditto.
550 * include/tr1/legendre_function.tcc: Ditto.
551 * include/tr1/modified_bessel_func.tcc: Ditto.
552 * include/tr1/poly_hermite.tcc: Ditto.
553 * include/tr1/poly_laguerre.tcc: Ditto.
554 * include/tr1/riemann_zeta.tcc: Ditto.
555 * include/tr1/special_function_util.h: Ditto.
556 * testsuite/ext/special_functions/conf_hyperg: New.
557 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
558 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
559 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
560 * testsuite/ext/special_functions/hyperg: New.
561 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
562 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
563 * testsuite/ext/special_functions/hyperg/compile.cc: New.
564 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
565 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
566 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
567 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
568 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
569 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
570 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
571 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
572 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
573 * testsuite/special_functions/03_beta/check_nan.cc: New.
574 * testsuite/special_functions/03_beta/check_value.cc: New.
575 * testsuite/special_functions/03_beta/compile.cc: New.
576 * testsuite/special_functions/03_beta/compile_2.cc: New.
577 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
578 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
579 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
580 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
581 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
582 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
583 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
584 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
585 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
586 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
587 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
588 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
589 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
590 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
591 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
592 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
593 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
594 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
595 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
596 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
597 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
598 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
599 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
600 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
601 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
602 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
603 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
604 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
605 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
606 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
607 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
608 * testsuite/special_functions/11_ellint_1/compile.cc: New.
609 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
610 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
611 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
612 * testsuite/special_functions/12_ellint_2/compile.cc: New.
613 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
614 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
615 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
616 * testsuite/special_functions/13_ellint_3/compile.cc: New.
617 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
618 * testsuite/special_functions/14_expint/check_nan.cc: New.
619 * testsuite/special_functions/14_expint/check_value.cc: New.
620 * testsuite/special_functions/14_expint/compile.cc: New.
621 * testsuite/special_functions/14_expint/compile_2.cc: New.
622 * testsuite/special_functions/15_hermite/check_nan.cc: New.
623 * testsuite/special_functions/15_hermite/check_value.cc: New.
624 * testsuite/special_functions/15_hermite/compile.cc: New.
625 * testsuite/special_functions/15_hermite/compile_2.cc: New.
626 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
627 * testsuite/special_functions/16_laguerre/check_value.cc: New.
628 * testsuite/special_functions/16_laguerre/compile.cc: New.
629 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
630 * testsuite/special_functions/17_legendre/check_nan.cc: New.
631 * testsuite/special_functions/17_legendre/check_value.cc: New.
632 * testsuite/special_functions/17_legendre/compile.cc: New.
633 * testsuite/special_functions/17_legendre/compile_2.cc: New.
634 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
635 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
636 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
637 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
638 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
639 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
640 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
641 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
642 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
643 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
644 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
645 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
646 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
647 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
648 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
649 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
650 * testsuite/util/specfun_testcase.h: New.
651 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
652 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
653 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
654 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
655 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
656 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
657 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
658
659 2016-01-13 Jonathan Wakely <jwakely@redhat.com>
660
661 PR libstdc++/48891
662 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
663 and isnan functions.
664 * config.h.in: Regenerate.
665 * configure: Regenerate.
666 * include/c_global/cmath (isinf(double), isnan(double))
667 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
668 * testsuite/26_numerics/headers/cmath/48891.cc: New.
669
670 2016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
671
672 PR libstdc++/66006
673 * configure.host (abi_baseline_pair): Use separate baseline for
674 Solaris 11+ and Solaris 10 with gld.
675 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
676 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
677 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
678
679 2016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
680
681 PR libstdc++/68877
682 * include/std/type_traits: Following N4511, reimplement __is_swappable
683 and __is_nothrow_swappable. Move __is_swappable to namespace std,
684 adjust callers. Use __is_nothrow_swappable in swap.
685 * include/bits/move.h: Use __is_nothrow_swappable in swap.
686 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
687 __is_swappable related tests.
688 * testsuite/20_util/is_swappable/value.cc: New.
689 * testsuite/20_util/is_swappable/requirements/
690 explicit_instantiation.cc: New.
691 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
692 * testsuite/25_algorithms/swap/68877.cc: New.
693
694 2016-01-12 Jonathan Wakely <jwakely@redhat.com>
695
696 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
697
698 PR libstdc++/69005
699 PR libstdc++/69222
700 * include/std/functional (function::_Invoke): Remove, use result_of.
701 (function::_Callable): Replace alias template with class template
702 and use partial specialization instead of _NotSelf alias template.
703 (function(_Functor)): Add "not self" constraint so that _Callable is
704 not used while type is incomplete.
705 * testsuite/20_util/function/69222.cc: New.
706
707 2016-01-11 Jonathan Wakely <jwakely@redhat.com>
708
709 PR libstdc++/60976
710 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
711 Define partial specialization.
712 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
713 destroy members to std::allocator explicit specialization.
714
715 2016-01-08 Jonathan Wakely <jwakely@redhat.com>
716
717 * testsuite/26_numerics/headers/cmath/
718 c99_classification_macros_c++.cc: Rename to ...
719 * testsuite/26_numerics/headers/cmath/
720 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
721 * testsuite/26_numerics/headers/cmath/
722 c99_classification_macros_c++0x.cc: Rename to ...
723 * testsuite/26_numerics/headers/cmath/
724 c99_classification_macros_c++11.cc: Here.
725
726 PR libstdc++/69190
727 * include/bits/uses_allocator.h: Add missing include.
728
729 2016-01-07 Jonathan Wakely <jwakely@redhat.com>
730
731 PR libstdc++/69105
732 PR libstdc++/69106
733 PR libstdc++/69114
734 * include/bits/stl_iterator.h (back_insert_iterator,
735 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
736 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
737 * include/std/future (__future::base::_State_baseV2::__setter):
738 Likewise.
739 * include/std/scoped_allocator (__outermost): Likewise.
740 * testsuite/20_util/scoped_allocator/69114.cc: New.
741 * testsuite/20_util/uses_allocator/69114.cc: New.
742 * testsuite/30_threads/promise/69106.cc: New.
743
744 2016-01-06 Jonathan Wakely <jwakely@redhat.com>
745
746 PR libstdc++/69092
747 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
748 Remove _GLIBCXX_NOEXCEPT.
749 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
750
751 * include/Makefile.am: Adjust.
752 * include/Makefile.in: Regenerate.
753 * include/bits/mutex.h: Rename to bits/std_mutex.h.
754 * include/std/condition_variable: Adjust include.
755 * include/std/mutex: Likewise.
756
757 2016-01-04 Jakub Jelinek <jakub@redhat.com>
758
759 Update copyright years.
760 \f
761 Copyright (C) 2016 Free Software Foundation, Inc.
762
763 Copying and distribution of this file, with or without modification,
764 are permitted in any medium without royalty provided the copyright
765 notice and this notice are preserved.