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