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