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