]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/ChangeLog
doc/invoke.texi (x86 Options): Fix -mno-fp-ret-in-387 typo
[thirdparty/gcc.git] / libstdc++-v3 / ChangeLog
CommitLineData
6b9539e2
DK
12016-06-16 Daniel Kruegler <daniel.kruegler@gmail.com>
2
3 Provide swappable traits (p0185r1)
4 * include/std/type_traits (is_swappable, is_nothrow_swappable,
5 is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
6 is_nothrow_swappable_v, is_swappable_with_v,
7 is_nothrow_swappable_with_v): New.
8 * include/bits/stl_pair.h: Use it as per p0185r1.
9 * include/bits/stl_queue.h: Likewise.
10 * include/bits/stl_stack.h: Likewise.
11 * include/bits/unique_ptr.h: Likewise.
12 * include/std/tuple: Likewise.
13 * include/std/array: Likewise. Fix zero-size member swap.
14 * include/bits/hashtable.h: Use __and_.
15 * testsuite/20_util/is_nothrow_swappable/requirements/
16 explicit_instantiation.cc: Change test options to std=gnu++17.
17 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
18 Likewise.
19 * testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
20 * testsuite/20_util/is_swappable/requirements/
21 explicit_instantiation.cc: Likewise.
22 * testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
23 * testsuite/20_util/is_swappable/value.cc: Likewise.
24 * testsuite/20_util/is_nothrow_swappable/requirements/
25 explicit_instantiation_ext.cc: New.
26 * testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
27 New.
28 * testsuite/20_util/is_nothrow_swappable/value.h: New.
29 * testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
30 * testsuite/20_util/is_nothrow_swappable_with/requirements/
31 explicit_instantiation.cc: New.
32 * testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
33 New.
34 * testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
35 * testsuite/20_util/is_swappable/requirements/
36 explicit_instantiation_ext.cc: New.
37 * testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
38 * testsuite/20_util/is_swappable/value.h: New.
39 * testsuite/20_util/is_swappable/value_ext.cc: New.
40 * testsuite/20_util/is_swappable_with/requirements/
41 explicit_instantiation.cc: New.
42 * testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
43 * testsuite/20_util/is_swappable_with/value.cc: New.
44 * testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
45 dg-error line numbers.
46 * testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
47 Likewise.
48
0ae207e9
JW
492016-06-16 Jonathan Wakely <jwakely@redhat.com>
50
33ac58d5
JW
51 * include/std/array: Remove trailing whitespace.
52 * include/std/atomic: Likewise.
53 * include/std/bitset: Likewise.
54 * include/std/chrono: Likewise.
55 * include/std/complex: Likewise.
56 * include/std/condition_variable: Likewise.
57 * include/std/fstream: Likewise.
58 * include/std/functional: Likewise.
59 * include/std/future: Likewise.
60 * include/std/iomanip: Likewise.
61 * include/std/iosfwd: Likewise.
62 * include/std/istream: Likewise.
63 * include/std/limits: Likewise.
64 * include/std/ratio: Likewise.
65 * include/std/scoped_allocator: Likewise.
66 * include/std/sstream: Likewise.
67 * include/std/stdexcept: Likewise.
68 * include/std/string: Likewise.
69 * include/std/system_error: Likewise.
70 * include/std/thread: Likewise.
71 * include/std/tuple: Likewise.
72 * include/std/type_traits: Likewise.
73 * include/std/utility: Likewise.
74 * include/std/valarray: Likewise.
75 * include/std/vector: Likewise.
76
0ae207e9
JW
77 * include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
78 new overloaded functions.
79 * include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
80 to avoid creating a redundant temporary.
81 * testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
82 test.
83
d7e16fc5
FD
842016-06-15 François Dumont <fdumont@gcc.gnu.org>
85
86 * include/bits/stl_deque.h
87 (std::deque<>::operator=): Call _M_assign_aux.
88 (std::deque<>::assign(initializer_list<>)): Likewise.
89 (std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
90 (std::deque<>::insert(const_iterator, initializer_list<>)):
91 Call _M_range_insert_aux.
92 (std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
93 Likewise.
94 (std::deque<>::_M_fill_assign): Call _M_fill_insert.
95 (std::deque<>::_M_move_assign2): Call _M_assign_aux.
96 * include/bits/deque.tcc
97 (std::deque<>::operator=): Call _M_range_insert_aux.
98 (std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
99 Likewise.
100 * include/bits/stl_vector.h
101 (std::vector<>::operator=): Call _M_assign_aux.
102 (std::vector<>::assign(initializer_list<>)): Likewise.
103 (std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
104 (std::vector<>::insert(const_iterator, initializer_list<>)):
105 Call _M_range_insert.
106 * include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.
107
373c0095
FD
1082016-06-07 François Dumont <fdumont@gcc.gnu.org>
109
110 * include/std/tuple (_Head_base<>): Default specialization condition at
111 type declaration.
112
dbc6221f
VV
1132016-06-06 Ville Voutilainen <ville.voutilainen@gmail.com>
114
115 Support allocators in tuples of zero size.
116 * include/std/tuple (tuple<>::tuple(),
117 tuple<>::tuple(allocator_arg_t, const _Alloc&),
118 tuple<>::tuple(allocator_arg_t, const _Alloc&, const tuple&)): New.
119 * testsuite/20_util/tuple/cons/allocators.cc: Adjust.
120
94229fb6
JW
1212016-06-06 Jonathan Wakely <jwakely@redhat.com>
122
123 PR libstdc++/71320
124 * src/filesystem/ops.cc (permissions(const path&, perms, error_code&)):
125 Add or remove permissions according to perms argument.
126 * testsuite/experimental/filesystem/operations/permissions.cc: New
127 test.
128
7a667453
VV
1292016-06-05 Ville Voutilainen <ville.voutilainen@gmail.com>
130
131 Protect allocator-overloads of tuple-from-tuple constructors
132 from cases that would create dangling references.
133 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
134 const tuple<_UElements...>&), tuple(allocator_arg_t, const _Alloc&,
135 tuple<_UElements...>&&)): Add a check for _NonNestedTuple.
136 * testsuite/20_util/tuple/cons/nested_tuple_construct.cc: Adjust.
137
4acc3634
GP
1382016-05-29 Gerald Pfeifer <gerald@pfeifer.com>
139
140 * doc/xml/manual/backwards_compatibility.xml: Adjust
141 lists.debian.org link to https.
142 * doc/html/manual/backwards.html: Regenerate.
143
9020909e
JW
1442016-05-27 Jonathan Wakely <jwakely@redhat.com>
145
146 * doc/xml/manual/abi.xml: Adjust URL to use https.
147 * doc/html/manual/*: Regenerate.
148
b7021006
VV
1492016-05-27 Ville Voutilainen <ville.voutilainen@gmail.com>
150
151 PR libstdc++/66338
152 * include/std/tuple (_TMC): Add a check for _NotSameTuple.
153 * include/std/tuple (tuple(_UElements&&...)): Remove the separate
154 check for _NotSameTuple.
155 * include/std/tuple (_TMCT): New.
156 * include/std/tuple (tuple(const tuple<_UElements...>&)): Use it.
157 * include/std/tuple (tuple(tuple<_UElements...>&&)): Likewise.
158 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
159 const tuple<_UElements...>&)): Likewise.
160 * include/std/tuple (tuple(allocator_arg_t, const _Alloc&,
161 tuple<_UElements...>&&)): Likewise.
162 * testsuite/20_util/tuple/cons/66338.cc: New.
163
834f4c43
JW
1642016-05-25 Jonathan Wakely <jwakely@redhat.com>
165
c42d2288
JW
166 * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Fix test for sendfile.
167 * configure: Regenerate.
168 * config.h.in: Regenerate.
169
834f4c43
JW
170 * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): Remove it.
171 * include/bits/hashtable_policy.h (_Power2_rehash_policy::_M_next_bkt):
172 Remove const qualification on function. Replace
173 _GLIBCXX14_USE_CONSTEXPR on automatic variables with const.
174 (_Power2_rehash_policy::_M_need_rehash): Remove const qualification.
175 (_Power2_rehash_policy::_M_next_bkt): Remove mutable specifier.
176
732eb076
FD
1772016-05-24 François Dumont <fdumont@gcc.gnu.org>
178
179 * include/bits/c++config (_GLIBCXX14_USE_CONSTEXPR): New.
180 * include/bits/hashtable_policy.h
181 (_Prime_rehash_policy::__has_load_factor): New. Mark rehash policy
182 having load factor management.
183 (_Mask_range_hashing): New.
184 (__clp2): New.
185 (_Power2_rehash_policy): New.
186 (_Inserts<>): Remove last template parameter, _Unique_keys, so that
187 partial specializations only depend on whether iterators are constant
188 or not.
189 * testsuite/23_containers/unordered_set/hash_policy/26132.cc: Adapt to
190 test new hash policy.
191 * testsuite/23_containers/unordered_set/hash_policy/load_factor.cc:
192 Likewise.
193 * testsuite/23_containers/unordered_set/hash_policy/rehash.cc:
194 Likewise.
195 * testsuite/23_containers/unordered_set/insert/hash_policy.cc:
196 Likewise.
197 * testsuite/23_containers/unordered_set/max_load_factor/robustness.cc:
198 Likewise.
199 * testsuite/23_containers/unordered_set/hash_policy/power2_rehash.cc:
200 New.
201 * testsuite/performance/23_containers/insert/54075.cc: Add benchmark
202 using the new hash policy.
203 * testsuite/performance/23_containers/insert_erase/41975.cc: Likewise.
204
8be062c6
JW
2052016-05-24 Jonathan Wakely <jwakely@redhat.com>
206
207 * include/bits/stl_queue.h (priority_queue::value_compare): Define.
208
447caf82
FD
2092016-05-23 François Dumont <fdumont@gcc.gnu.org>
210
211 * include/debug/safe_iterator.h
212 (_Safe_iterator<>::operator->()): Implement using underlying iterator
213 operator ->.
214 * include/debug/safe_local_iterator.h
215 (_Safe_local_iterator<>::operator->()): Likewise.
216
11f8114b
TP
2172016-05-20 Thomas Preud'homme <thomas.preudhomme@arm.com>
218
219 * testsuite/experimental/memory_resource/1.cc: Add required argument
220 to dg-require-atomic-builtins.
221
541a9b10
JW
2222016-05-13 Jonathan Wakely <jwakely@redhat.com>
223
224 PR libstdc++/71073
225 * include/debug/bitset: Add #pragma GCC system_header.
226 * include/debug/deque: Likewise.
227 * include/debug/list: Likewise.
228 * include/debug/map: Likewise.
229 * include/debug/set: Likewise.
230 * include/debug/string: Likewise.
231 * include/debug/unordered_map: Likewise.
232 * include/debug/unordered_set: Likewise.
233 * include/debug/vector: Likewise.
234 * include/debug/functions.h: Adjust whitespace.
235
068b220e
JW
2362016-05-12 Jonathan Wakely <jwakely@redhat.com>
237
238 PR libstdc++/71081
239 * testsuite/experimental/memory_resource/1.cc: Require atomics.
240
3d73ae6e
JW
2412016-05-11 Jonathan Wakely <jwakely@redhat.com>
242
243 PR libstdc++/71049
244 * src/c++11/cow-stdexcept.cc [!_GLIBCXX_USE_DUAL_ABI]: Don't define
245 exception constructors with __sso_string parameters.
246
d7187f9e
JW
2472016-05-10 Jonathan Wakely <jwakely@redhat.com>
248
7f99d40a
JW
249 * include/experimental/bits/fs_dir.h (begin, end): Add noexcept.
250 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
251 Test begin and end functions.
252 * testsuite/experimental/filesystem/iterators/
253 recursive_directory_iterator.cc: Likewise.
254
6fe673ad
JW
255 PR libstdc++/71038
256 * src/filesystem/ops.cc (do_copy_file): Fix backwards conditions.
257 * testsuite/experimental/filesystem/operations/copy_file.cc: New test.
258
77a87b2a
JW
259 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
260 Overload operator* to move from rvalues.
261
f9a39467
JW
262 PR libstdc++/71036
263 * src/filesystem/ops.cc (create_dir): Handle EEXIST from mkdir.
264 * testsuite/experimental/filesystem/operations/create_directory.cc:
265 New test.
266
6f0800d4
JW
267 PR libstdc++/71037
268 * src/filesystem/ops.cc (canonical(const path&, const path&)): Add
269 base path to exception.
270 * testsuite/experimental/filesystem/operations/canonical.cc: Test
271 paths contained in exception.
272
f10b2e1c
JW
273 * testsuite/experimental/type_erased_allocator/2.cc: Remove unused
274 using declaration.
275
d7187f9e
JW
276 PR libstdc++/71005
277 * include/experimental/bits/fs_dir.h (__directory_iterator_proxy):
278 New type.
279 (directory_iterator::operator++(int)): Return proxy.
280 (recursive_directory_iterator::operator++(int)): Likewise.
281 * testsuite/experimental/filesystem/iterators/directory_iterator.cc:
282 Test post-increment.
283 * testsuite/experimental/filesystem/iterators/
284 recursive_directory_iterator.cc: Likewise.
285
7972e246
JW
2862016-05-09 Jonathan Wakely <jwakely@redhat.com>
287
288 PR libstdc++/71004
289 * testsuite/experimental/filesystem/iterators/
290 recursive_directory_iterator.cc: Fix test02 to not call member
291 functions on invalid iterator, and use VERIFY not assert.
292
fb334765
VV
2932016-05-09 Ville Voutilainen <ville.voutilainen@gmail.com>
294
295 Avoid endless run-time recursion for copying single-element
296 tuples where the element type is by-value constructible
297 from any type.
298 * include/std/tuple (_NotSameTuple): New.
299 * include/std/tuple (tuple(_UElements&&...): Use it.
300 * testsuite/20_util/tuple/cons/element_accepts_anything_byval.cc: New.
301
e4cce0ce
JW
3022016-05-09 Jonathan Wakely <jwakely@redhat.com>
303
304 PR libstdc++/71004
305 * include/experimental/bits/fs_dir.h (recursive_directory_iterator):
306 Initialize scalar member variables in default constructor.
307 * testsuite/experimental/filesystem/iterators/
d7187f9e 308 recursive_directory_iterator.cc: Test default construction.
e4cce0ce 309
40436d81
RO
3102016-05-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
311
312 * testsuite/lib/libstdc++.exp (libstdc++_init): Enable on *-*-solaris*.
313
f5c40ce2
JW
3142016-05-05 Jonathan Wakely <jwakely@redhat.com>
315
316 * testsuite/experimental/filesystem/path/native/string.cc: Add
317 dg-require-filesystem-ts directive.
318
d9cb3e75
JW
3192016-05-04 Jonathan Wakely <jwakely@redhat.com>
320
321 PR libstdc++/70940
322 * include/experimental/memory_resource
323 (__resource_adaptor_imp::do_allocate): Do not default-construct
324 rebound allocator.
325 (__resource_adaptor_imp::do_deallocate): Likewise. Use
326 allocator_traits to get pointer type.
327 (__null_memory_resource::do_allocate): Remove unused parameters.
328 (__null_memory_resource::do_deallocate): Likewise.
329 (__null_memory_resource::do_is_equal): Likewise. Add return statement.
330 * testsuite/experimental/type_erased_allocator/1.cc: Combine with ...
331 * testsuite/experimental/type_erased_allocator/1_neg.cc: This, and
332 move to ...
333 * testsuite/experimental/memory_resource/1.cc: Here.
334 * testsuite/experimental/memory_resource/null_memory_resource.cc: New.
335 * testsuite/experimental/memory_resource/resource_adaptor.cc: New.
336
f92ab29f
CG
3372016-04-29 Chris Gregory <czipperz@gmail.com>
338
339 * config/*: Remove trailing whitespace.
340 * src/*: Likewise.
341 * testsuite/tr1/*: Likewise.
342 * testsuite/util/*: Likewise.
343
272b2ce4
JW
3442016-04-28 Jonathan Wakely <jwakely@redhat.com>
345
9f9eb84e
JW
346 PR libstdc++/70766
347 * include/bits/basic_ios.tcc (basic_ios::_M_cache_locale): Use
348 __addressof.
349 * include/bits/stream_iterator.h (istream_iterator, ostream_iterator):
350 Likewise.
351 * include/std/atomic (atomic<_Tp>): Likewise.
352 * include/std/shared_mutex (shared_lock): Likewise.
353 * testsuite/24_iterators/istream_iterator/70766.cc: New test.
354 * testsuite/24_iterators/ostream_iterator/70766.cc : New test.
355 * testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.
356 * testsuite/29_atomics/atomic/70766.cc: New test.
357 * testsuite/30_threads/shared_lock/70766.cc: New test.
358
272b2ce4
JW
359 * include/bits/hashtable_policy.h (__detail::_Insert_base,
360 __detail::_Insert): Improve comments.
361
45e20696
JW
3622016-04-27 Jonathan Wakely <jwakely@redhat.com>
363
364 PR libstdc++/70767
365 * include/std/limits: Update comments about DRs.
366 (numeric_limits<const _Tp>, numeric_limits<volatile _Tp>,
367 numeric_limits<const volatile _Tp>): Define unconditionally.
368
a635cdb2
JW
3692016-04-24 Jonathan Wakely <jwakely@redhat.com>
370
371 PR libstdc++/70762
372 * testsuite/util/testsuite_fs.h (__gnu_test::nonexistent_path): Use
373 static counter to return a different path on every call.
374
216f7526
TS
3752016-04-22 Tim Shen <timshen@google.com>
376
377 PR libstdc++/70745
378 * include/bits/regex_executor.tcc (_Executor<>::_M_word_boundary):
379 Fix the match_not_bow and match_not_eow behavior.
380 * testsuite/28_regex/regression.cc: Add testcase.
381
a1e1ec76
JW
3822016-04-20 Jonathan Wakely <jwakely@redhat.com>
383
384 PR libstdc++/69703
385 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in,
386 __codecvt_utf8_utf16_base<char16_t>::do_in): Fix mask operations.
387
9c476ad4
JW
3882016-04-19 Jonathan Wakely <jwakely@redhat.com>
389
29ca91f7 390 PR libstdc++/69703
a1e1ec76 391 * src/c++11/codecvt.cc (__codecvt_utf8_base<char16_t>::do_in):
29ca91f7
JW
392 Override endianness bit in mode.
393 * testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: New test.
394 * testsuite/22_locale/codecvt/codecvt_utf8_utf16/66855.cc: Test
395 that little_endian mode is ignored.
396 * testsuite/experimental/filesystem/path/native/string.cc: New test.
397
14905251
JW
398 PR libstdc++/70609
399 * src/filesystem/ops.cc (close_fd): New function.
400 (do_copy_file): Set permissions before copying file contents. Check
401 result of closing file descriptors. Don't copy streambuf when file
402 is empty.
403 (copy(const path&, const path&, copy_options, error_code&)): Use
404 lstat for source file when copy_symlinks is set.
405 * testsuite/experimental/filesystem/operations/copy.cc: Test copy().
406
9c476ad4
JW
407 * include/experimental/bits/fs_fwd.h (operator&, operator|, operator^,
408 operator~ operator&=, operator|=, operator^=): Add noexcept to
409 overloaded operators for copy_options, perms and directory_options.
410 * src/filesystem/ops.cc (make_file_type, make_file_status,
411 is_not_found_errno, file_time): Add noexcept.
412
d855ad89
ESR
4132016-04-19 Edward Smith-Rowland <3dw4rd@verizon.net>
414
415 * include/bits/c++14_warning.h: Do not refer C++14 as experimental.
416
8dc1e574
JW
4172016-04-18 Jonathan Wakely <jwakely@redhat.com>
418
0cded43d
JW
419 PR libstdc++/41759
420 * include/bits/random.h: Reword static assertion messages to state
421 positive conditions.
422 * include/bits/random.tcc: Likewise.
423 * include/bits/uniform_int_dist.h: Likewise.
424 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error
425 patterns.
426
90751aa7
JW
427 * include/std/function (_Bind, _Bind_result): Remove unused typedefs.
428
351a5f81
JW
429 * config/cpu/sh/atomicity.h: Fix typo in comment.
430
b05cf382
JW
431 PR libstdc++/70294
432 * include/std/thread (operator<, operator==): Move definitions to
433 namespace-scope.
434 * testsuite/30_threads/thread/id/70294.cc: New test.
435
4ed6e524
JW
436 * testsuite/18_support/bad_exception/23591_thread-1.c: Add
437 -Wno-pedantic to dg-options.
438 * testsuite/20_util/align/2.cc: Use type as operand of alignof.
439 * testsuite/20_util/is_floating_point/value.cc: Add -Wno-pedantic
440 to dg-options.
441 * testsuite/20_util/specialized_algorithms/uninitialized_fill/32158.cc:
442 Remove extra semi-colon.
443 * testsuite/23_containers/array/tuple_interface/tuple_element.cc:
444 Always supply second argument to static_assert.
445 * testsuite/25_algorithms/lower_bound/no_operator_ne.cc: Remove extra
446 semi-colon.
447 * testsuite/26_numerics/complex/c99.cc: Add -Wno-pedantic to
448 dg-options.
449 * testsuite/26_numerics/complex/literals/values.cc: Likewise.
450 * testsuite/29_atomics/atomic/60695.cc: Likewise.
451 * testsuite/29_atomics/atomic/62259.cc: use __alignof__ instead of
452 alignof when operand is an object not a type.
453 * testsuite/decimal/ctor.cc: Add -Wno-pedantic to dg-options.
454 * testsuite/decimal/make-decimal.cc: Likewise.
455 * testsuite/experimental/type_traits/value.cc: Always supply second
456 argument to static_assert.
457 * testsuite/util/testsuite_common_types.h: Use __extension__ for
458 __int128 types.
459
abb6e0a1
JW
460 * testsuite/experimental/type_erased_allocator/1.cc: Don't include
461 internal header.
462 * testsuite/experimental/type_erased_allocator/1_neg.cc: Likewise.
463 * testsuite/experimental/type_erased_allocator/2.cc: Likewise.
464 * testsuite/experimental/type_erased_allocator/uses_allocator.cc:
465 Likewise. Add licence and change to compile-only test.
466
6b6147dd
JW
467 * include/bits/locale_facets.h (ctype::do_narrow): Add attribute to
468 unused parameter.
469 * include/bits/regex_automaton.h (_NFA::_M_insert_alt): Likewise.
470
8dc1e574
JW
471 * include/ext/string_conversions.h (__stoa): Avoid -Wsign-compare
472 warnings.
473
80dbaf98
ESR
4742016-04-17 Edward Smith-Rowland <3dw4rd@verizon.net>
475
476 * include/bits/specfun.h: Trivial comment misspelling.
477
9f285ccb
JM
4782016-04-14 Jason Merrill <jason@redhat.com>
479
480 Revert Jonathan's empty ABI change from yesterday.
481
342fac95
MS
4822016-04-13 Martin Sebor <msebor@redhat.com>
483
484 PR c++/69517
485 * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
486 upper bound is positive.
487
a6297ab5
JW
4882016-04-13 Jonathan Wakely <jwakely@redhat.com>
489
490 * include/bits/c++config (_GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES,
491 _GLIBCXX_END_NAMESPACE_EMPTY_TYPES, _GLIBCXX_ABI_TAG_EMPTY): Define.
492 * include/bits/hashtable.h (_Hashtable::_M_emplace): Change signatures
493 of functions taking empty structs by value. Add a template parameter
494 to overloads without hints. Rename overloads with hints to
495 _M_emplace_hint.
496 (_Hashtable::_M_erase(true_type, const_iterator),
497 _Hashtable::_M_erase(false_type, const_iterator)): Change signatures
498 by reordering parameters.
499 * include/bits/hashtable_policy.h (_Insert::insert): Adjust to call
500 _M_emplace_hint instead of _M_emplace.
501 * include/bits/shared_ptr.h (shared_ptr(_Tp1*, _Deleter, _Alloc),
502 shared_ptr(nullptr_t, _Deleter, _Alloc)): Use _GLIBCXX_ABI_TAG_EMPTY.
503 * include/bits/shared_ptr_base.h (_Sp_counted_deleter, __shared_count,
504 __shared_ptr): Likewise.
505 * include/bits/stl_algo.h (replace_if): Likewise.
506 * include/bits/stl_pair.h (piecewise_construct_t,
507 piecewise_construct): Use _GLIBCXX_BEGIN_NAMESPACE_EMPTY_TYPES.
508 * include/bits/uses_allocator.h (allocator_arg_t, allocator_arg,
509 __uses_alloc0): Likewise.
510 * include/ext/pb_ds/assoc_container.hpp (basic_hash_table): Likewise.
511 * testsuite/20_util/scoped_allocator/69293_neg.cc: Adjust dg-error.
512 * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
513 * testsuite/20_util/shared_ptr/cons/void_neg.cc: Likewise.
514 * testsuite/20_util/uses_allocator/69293_neg.cc: Likewise.
515 * testsuite/20_util/uses_allocator/cons_neg.cc: Likewise.
516 * testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.
517
0c39f36d
ESR
5182016-04-12 Edward Smith-Rowland <3dw4rd@verizon.net>
519
520 Document C++17/TR29124 C++ Special Math Functions.
521 * include/bits/specfun.h: Add Doxygen markup.
522
6da8b931
JW
5232016-04-07 Jonathan Wakely <jwakely@redhat.com>
524
525 * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass.
526
49a52ebc
EB
5272016-04-06 Eric Botcazou <ebotcazou@adacore.com>
528
529 * src/Makefile.am (libstdc++-symbols.ver): Remove useless /dev/null.
530 * src/Makefile.in: Regenerate.
531
87cec93e
JW
5322016-04-05 Jonathan Wakely <jwakely@redhat.com>
533
d2aee115
JW
534 PR libstdc++/70554
535 * acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't test
536 __atomic_fetch_add for bool.
537 * configure: Regenerate.
538
d5ec69f3
JW
539 * testsuite/30_threads/thread/70503.cc: Require -static to work.
540
87cec93e
JW
541 PR libstdc++/70503
542 * src/c++11/thread.cc (execute_native_thread_routine,
543 execute_native_thread_routine_compat): Give internal linkage.
544 * testsuite/30_threads/thread/70503.cc: New test.
545
7b3318c4
VV
5462016-04-05 Ville Voutilainen <ville.voutilainen@gmail.com>
547
548 PR libstdc++/70437
549 * include/bits/stl_pair.h (_ConstructiblePair,
550 _ImplicitlyConvertiblePair, _MoveConstructiblePair,
551 _ImplicitlyMoveConvertiblePair): Add shortcut conditions
552 for same-type cases.
553 * testsuite/20_util/pair/70437.cc: New.
554
00e6c25a
JW
5552016-03-24 Jonathan Wakely <jwakely@redhat.com>
556
557 PR libstdc++/69945
558 * config/abi/pre/gnu.ver: Add new symbol.
559 * libsupc++/eh_alloc.cc (__gnu_cxx::__freeres): Define.
560 * testsuite/18_support/free_eh_pool.cc: New test.
561
bfd84e6b
BE
5622016-03-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
563
564 * include/Makefile.am (install-freestanding-headers): Add
565 concept_check.h and move.h to the installed headers.
566 * include/Makefile.in: Regenerated.
567 * include/bits/concept_check.h: Ignore _GLIBCXX_CONCEPT_CHECKS for
568 freestanding implementations.
569 * doc/xml/manual/using.xml (_GLIBCXX_CONCEPT_CHECKS): Mention
570 that this macro has no effect for freestanding implementations.
571 * doc/html/manual/using_macros.html: Likewise.
572
86715b09
JW
5732016-02-24 Jonathan Wakely <jwakely@redhat.com>
574
575 PR libstdc++/69939
576 * include/experimental/tuple (__apply_impl): Qualify get and forward.
577
9aee022e
JW
5782016-02-23 Jonathan Wakely <jwakely@redhat.com>
579
be9967e8
JW
580 * doc/xml/manual/using.xml: Document __STDCPP_WANT_MATH_SPEC_FUNCS__.
581 * doc/html/*: Regenerate.
582
9aee022e
JW
583 PR libstdc++/69893
584 * include/tr1/cmath (acosh, asinh, atanh, cbrt, copysign, erf, erfc,
585 exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb, lgamma, llrint,
586 llround, log1p, log2, logb, lrint, lround, nan, nearbyint, nextafter,
587 nexttoward, remainder, remquo, rint, round, scalbln, scalbn, tgamma,
588 trunc) [__cplusplus >= 201103L]: Import from namespace std.
589 (fabs) [__cplusplus < 201103L]: Import from namespace std.
590 * include/tr1/complex (acosh, asinh, atanh) [__cplusplus >= 201103L]:
591 Likewise.
592 * testsuite/tr1/headers/c++200x/complex.cc: Add std::fabs to global
593 namespace before including TR1 headers.
594 * testsuite/tr1/headers/c++200x/math.cc: New test.
595
5f6dd593
BE
5962016-02-23 Bernd Edlinger <bernd.edlinger@hotmail.de>
597
598 PR libstdc++/69881
599 * include/c_global/cstdarg: Undefine __need___va_list.
600 * include/c_global/cstddef: Undefine all kinds of __need_*.
601
244901a5
TS
6022016-02-16 Tim Shen <timshen@google.com>
603
604 PR libstdc++/69794
605 * include/bits/regex_scanner.h: Add different special character
606 sets for grep and egrep regex.
607 * include/bits/regex_scanner.tcc: Use _M_spec_char more uniformly.
608 * testsuite/28_regex/regression.cc: Add new testcase.
609
cc07da33
JW
6102016-02-08 Jonathan Wakely <jwakely@redhat.com>
611
2158532f
JW
612 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Remove accidentally
613 added 'constexpr' in previous commit.
614 * configure: Regenerate.
615
cc07da33
JW
616 PR libstdc++/48891
617 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Enable isinf and isnan
618 checks for all targets except *-*-solaris2.* and ensure we find the
619 libc math.h header not our own.
620 * configure: Regenerate.
621
acc04646
DV
6222016-02-05 Dominik Vogt <vogt@linux.vnet.ibm.com>
623
624 * config/abi/post/s390x-linux-gnu/32/baseline_symbols.txt (FUNC):
625 New file. Copied over from s390-linux-gnu.
626
dbcda3ee
JW
6272016-02-04 Jonathan Wakely <jwakely@redhat.com>
628
3555173f
JW
629 PR libstdc++/69626
630 * acinclude.m4 (GLIBCXX_ENABLE_C99): Check C99 stdlib.h functions
631 with -std=c++98 and define _GLIBCXX98_USE_C99_STDLIB.
632 * config.h.in: Regenerate.
633 * configure: Regenerate.
634 * testsuite/21_strings/c_strings/char/69626.cc: New.
635
15ebf379
JW
636 * doc/html/index.html: Regenerate.
637
dbcda3ee
JW
638 * doc/xml/manual/containers.xml: Add cross-reference to Dual ABI.
639 * doc/xml/manual/spine.xml: Update copyright years and author blurb.
640 * doc/html/*: Regenerate.
641
571512d5
BE
6422016-02-01 Bernd Edlinger <bernd.edlinger@hotmail.de>
643
644 PR libstdc++/69581
645 * include/c_compatibility/math.h: Move header guards.
646 * include/c_compatibility/stdlib.h: Likewise.
647
f597d5f7
JW
6482016-01-29 Jonathan Wakely <jwakely@redhat.com>
649
650 PR libstdc++/69506
651 * config/os/newlib/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
652
69b0daeb
JDA
6532016-01-28 John David Anglin <danglin@gcc.gnu.org>
654
655 PR libstdc++/69450
656 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Split check for obsolete
657 isinf and isnan functions into two independent checks. Check on hpux.
658 * config.h.in: Regenerate.
659 * configure: Regenerate.
660 * include/c_global/cmath (isinf(double), isnan(double)): Use
661 _GLIBCXX_HAVE_OBSOLETE_ISINF and _GLIBCXX_HAVE_OBSOLETE_ISNAN,
662 respectively.
663
8dc781e4
JJ
6642016-01-27 Jakub Jelinek <jakub@redhat.com>
665
666 * testsuite/libstdc++-prettyprinters/whatis.cc: Include <random>.
667
bae87f7f
JW
6682016-01-27 Jonathan Wakely <jwakely@redhat.com>
669
670 PR libstdc++/69295
671 * testsuite/ext/special_functions/hyperg/check_value.cc: Use
672 -ffp-contract=off, and -ffloat-store to disable excess precision.
673 * testsuite/special_functions/02_assoc_legendre/check_value.cc: Use
674 -ffp-contract=off.
675
f1d591e8
JW
6762016-01-26 Jonathan Wakely <jwakely@redhat.com>
677
678 PR libstdc++/69478
679 * include/bits/stl_algobase.h (__copy_move<_IsMove, true,
680 random_access_iterator_tag>): Check is_move_assignable when moving.
681 (__copy_move_backwards<_IsMove, true, random_access_iterator_tag>):
682 Likewise.
683 * testsuite/25_algorithms/copy/move_iterators/69478.cc: New.
684 * testsuite/25_algorithms/copy_backward/move_iterators/69478.cc: New.
685 * testsuite/25_algorithms/move/69478.cc: New.
686 * testsuite/25_algorithms/move_backward/69478.cc: new.
687
8964d2a0
AP
6882016-01-26 Andris Pavenis <andris.pavenis@iki.fi>
689
690 * include/c_compatibility/stdlib.h: Include wide character related
691 definitions only when they are available in cstdlib.
692
2944621e
JW
6932016-01-25 Jonathan Wakely <jwakely@redhat.com>
694
695 PR libstdc++/69464
696 * include/Makefile.am: Add new header.
697 * include/Makefile.in: Regenerate.
698 * include/bits/random.h (uniform_int_distribution): Move to
699 bits/uniform_int_dist.h.
700 * include/bits/random.tcc (uniform_int_distribution::operator(),
701 uniform_int_distribution::__generate_impl): Likewise.
702 * include/bits/uniform_int_dist.h: New header.
703 * include/bits/stl_algo.h [__cplusplus >= 201103L]: Include
704 <bits/uniform_int_dist.h> instead of <random>.
705 * testsuite/20_util/specialized_algorithms/uninitialized_copy/
706 move_iterators/1.cc: Include correct header for uninitialized_copy.
707 * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/
708 move_iterators/1.cc: Likewise.
709 * testsuite/25_algorithms/nth_element/58800.cc: Include correct
710 header for vector.
711 * testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lines.
712
3676c087
JDA
7132016-01-23 John David Anglin <danglin@gcc.gnu.org>
714
715 PR libstdc++/69446
716 * config/os/hpux/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
717
02dc2419
ESR
7182016-01-22 Edward Smith-Rowland <3dw4rd@verizon.net>
719
720 TR29124 C++ Special Math - <math.h> pulls funcs into global namespace.
721 * include/c_compatibility/math.h: Import the TR29124 functions
722 into the global namespace.
723 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: Remove
724 xfail and make compile-only.
725 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: Ditto.
726 * testsuite/special_functions/03_beta/compile_2.cc: Ditto.
727 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: Ditto.
728 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: Ditto.
729 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: Ditto.
730 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: Ditto.
731 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: Ditto.
732 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: Ditto.
733 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: Ditto.
734 * testsuite/special_functions/11_ellint_1/compile_2.cc: Ditto.
735 * testsuite/special_functions/12_ellint_2/compile_2.cc: Ditto.
736 * testsuite/special_functions/13_ellint_3/compile_2.cc: Ditto.
737 * testsuite/special_functions/14_expint/compile_2.cc: Ditto.
738 * testsuite/special_functions/15_hermite/compile_2.cc: Ditto.
739 * testsuite/special_functions/16_laguerre/compile_2.cc: Ditto.
740 * testsuite/special_functions/17_legendre/compile_2.cc: Ditto.
741 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: Ditto.
742 * testsuite/special_functions/19_sph_bessel/compile_2.cc: Ditto.
743 * testsuite/special_functions/20_sph_legendre/compile_2.cc: Ditto.
744 * testsuite/special_functions/21_sph_neumann/compile_2.cc: Ditto.
745
350fe282
JW
7462016-01-22 Jonathan Wakely <jwakely@redhat.com>
747
d1fb377c
JW
748 PR libstdc++/69116
749 * include/bits/valarray_before.h (__fun, __fun_with_valarray): Only
750 define result_type for types which can be safely used with valarrays.
751 * testsuite/26_numerics/valarray/69116.cc: New.
752
350fe282
JW
753 PR libstdc++/69413
754 * config/os/gnu-linux/os_defines.h: Define
755 _GLIBCXX_NO_OBSOLETE_ISINF_ISNAN_DYNAMIC.
756 * include/c_global/cmath (isinf, isnan): Check it.
757 * doc/xml/manual/internals.xml: Document it.
758 * doc/html/*: Regenerate.
759
ab56cbed
JW
7602016-01-21 Jonathan Wakely <jwakely@redhat.com>
761
762 PR libstdc++/69406
763 * include/bits/cpp_type_traits.h: Ensure C++ language linkage.
764 * include/ext/type_traits.h: Likewise.
765 * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros
766 for presence of C headers.
767 * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust
768 dg-error line number.
769 * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
770 * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
771 * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise.
772
7e10bcfa
TR
7732016-01-20 Torvald Riegel <triegel@redhat.com>
774
775 PR libstdc++/69310
776 * config/os/bsd/darwin/os_defines.h (_GLIBCXX_USE_WEAK_REF): Define.
777
eac437bf
JW
7782016-01-20 Jonathan Wakely <jwakely@redhat.com>
779
3f93466a
JW
780 PR libstdc++/60401
781 * include/c_compatibility/math.h (acosh, asinh, atanh, acbrt,
782 copysign, erf, erfc, exp2, expm1, fdim, fma, fmax, fmin, hypot, ilogb,
783 lgamma, llrint, llround, log1p, log2, logb, lrint, lround, nearbyint,
784 nextafter, nexttoward, remainder, remquo, rint, round, scalbln, scalbn,
785 tgamma, trunc) [__cplusplus >= 201103L && _GLIBCXX_USE_C99_MATH_TR1]:
786 Add using declarations.
787 * testsuite/26_numerics/headers/cmath/60401.cc: New.
788
eac437bf
JW
789 PR libstdc++/69386
790 * include/c_global/ccomplex: Ensure C++ language linkage.
791 * include/c_global/cmath: Likewise.
792 * include/c_global/cstdlib: Likewise.
793 * include/c_global/ctgmath: Likewise.
794 * testsuite/17_intro/headers/c++2011/linkage.cc: New.
795
96e19ada
JW
7962016-01-19 Jonathan Wakely <jwakely@redhat.com>
797
798 PR libstdc++/14608
799 PR libstdc++/60401
800 * include/Makefile.am: Use c_compatibility math.h and stdlib.h for
801 --enable-cheaders=c_global configs.
802 * include/Makefile.in: Regenerate.
803 * include/c_compatibility/math.h: Remove obsolete _GLIBCXX_NAMESPACE_C
804 test and allow inclusion from C files.
805 * include/c_compatibility/stdlib.h: Likewise. Support freestanding.
806 (at_quick_exit, quick_exit): Add using directives.
807 * include/c_global/cmath: Use #include_next for math.h.
808 * include/c_global/cstdlib: Use #include_next for stdlib.h.
809 * testsuite/26_numerics/headers/cmath/14608.cc: New.
810 * testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
811 Remove xfail for most targets.
812 * testsuite/26_numerics/headers/cstdlib/60401.cc: New.
813
9585381a
TR
8142016-01-18 Torvald Riegel <triegel@redhat.com>
815
816 * include/bits/c++config (_GLIBCXX_USE_WEAK_REF): New.
817 (_GLIBCXX_TXN_SAFE, _GLIBCXX_TXN_SAFE_DYN): Use _GLIBCXX_USE_WEAK_REF
818 and move after its definition.
819 * config/os/aix/os_defines.h (_GLIBCXX_USE_WEAK_REF): Override.
820 * src/c++11/cow-stdexcept.cc: Use _GLIBCXX_USE_WEAK_REF instead of
821 __GXX_WEAK__, and only provide transactional clones if
822 _GLIBCXX_USE_WEAK_REF is true. Don't provide stubs of libitm
823 functions.
824
f5460595
JW
8252016-01-18 Jonathan Wakely <jwakely@redhat.com>
826
c91bcffc
JW
827 PR libstdc++/60637
828 * testsuite/26_numerics/headers/cmath/60637.cc: Add test.
829
d75d9f91 830 PR libstdc++/69243
9c5ad80e
JW
831 * include/std/functional (_Function_base::_M_not_empty_function):
832 Change overloads for pointers to take arguments by value.
833 * testsuite/20_util/function/cons/57465.cc: Add tests for
834 pointer-to-member cases.
835
f5460595
JW
836 PR libstdc++/69340
837 * src/c++11/cow-stdexcept.cc (_txnal_cow_string_C1_for_exceptions):
838 Use macros for exception handling and fix unused parameter warning.
839
271366f6
JDA
8402016-01-17 John David Anglin <danglin@gcc.gnu.org>
841
842 PR libstdc++/68734
843 * config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
844
7a5d1d34
TR
8452016-01-17 Torvald Riegel <triegel@redhat.com>
846
847 * src/c++11/cow-stdexcept.cc (txnal_read_ptr): Fix static_assert.
848
5445d5bf
L
8492016-01-16 H.J. Lu <hongjiu.lu@intel.com>
850
851 * config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Add
852 __int128 symbols.
853
3d076231
JW
8542016-01-15 Jonathan Wakely <jwakely@redhat.com>
855
d7c1581c
JW
856 PR libstdc++/69293
857 * include/bits/uses_allocator.h (__uses_alloc<true, ...>): Add
858 static assertion that type is constructible from the arguments.
859 * testsuite/20_util/scoped_allocator/69293_neg.cc: New.
860 * testsuite/20_util/uses_allocator/69293_neg.cc: New.
861 * testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
862
3d076231
JW
863 PR libstdc++/69294
864 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
865 and isnan on AIX. Quote variables.
866 * configure: Regenerate.
867
a04d5fc9
TR
8682016-01-15 Torvald Riegel <triegel@redhat.com>
869
870 * include/bits/basic_string.h (basic_string): Declare friends.
871 * include/bits/c++config (_GLIBCXX_TXN_SAFE,
872 _GLIBCXX_TXN_SAFE_DYN, _GLIBCXX_USE_ALLOCATOR_NEW): New.
873 * include/std/stdexcept (logic_error, domain_error, invalid_argument,
874 length_error, out_of_range, runtime_error, range_error,
875 underflow_error, overflow_error): Declare members as transaction-safe.
876 (logic_error, runtime_error): Declare friend functions.
877 * libsupc++/exception (exception, bad_exception): Declare members as
878 transaction-safe.
879 * src/c++11/cow-stdexcept.cc: Define transactional clones for the
880 transaction-safe members of exceptions and helper functions.
881 * libsupc++/eh_exception.cc: Adjust and define transactional clones.
882 * config/abi/pre/gnu.ver (GLIBCXX_3.4.22) Add transactional clones.
883 (CXXABI_1.3.10): New.
884 * acinclude.m4 (GLIBCXX_CHECK_SIZE_T_MANGLING): New.
885 (GLIBCXX_ENABLE_ALLOCATOR): Set ENABLE_ALLOCATOR_NEW.
886 * configure.ac: Call GLIBCXX_CHECK_SIZE_T_MANGLING.
887 * include/Makefile.am: Write ENABLE_ALLOCATOR_NEW to c++config.h.
888 * include/Makefile.in: Regenerate.
889 * config.h.in: Regenerate.
890 * configure: Regenerate.
891 * testsuite/util/testsuite_abi.cc (check_version): Add CXXABI_1.3.10.
892
cebeb718
SE
8932016-01-15 Steve Ellcey <sellcey@imgtec.com>
894
895 * include/ext/random.tcc: Use __builtin_isfinite instead of
896 std::isfinite.
897
3b07547d
JW
8982016-01-15 Jonathan Wakely <jwakely@redhat.com>
899
900 * include/bits/std_mutex.h: Fix Doxygen @file name.
901
2be75957
ESR
9022016-01-14 Edward Smith-Rowland <3dw4rd@verizon.net>
903 Jonathan Wakely <jwakely@redhat.com>
904 Florian Goth <CaptainSifff@gmx.de>
905
906 Implement TR29124 C++ special Math Functions.
907 * include/Makefile.am: Add new headers.
908 * include/Makefile.in: Regenerate.
909 * include/bits/specfun.h: New.
910 * include/c_global/cmath: Adjust for both tr1 and tr29124 maths.
911 * include/tr1/bessel_function.tcc: Ditto.
912 * include/tr1/beta_function.tcc: Ditto.
913 * include/tr1/cmath: Ditto.
914 * include/tr1/ell_integral.tcc: Ditto.
915 * include/tr1/exp_integral.tcc: Ditto.
916 * include/tr1/gamma.tcc: Ditto.
917 * include/tr1/hypergeometric.tcc: Ditto.
918 * include/tr1/legendre_function.tcc: Ditto.
919 * include/tr1/modified_bessel_func.tcc: Ditto.
920 * include/tr1/poly_hermite.tcc: Ditto.
921 * include/tr1/poly_laguerre.tcc: Ditto.
922 * include/tr1/riemann_zeta.tcc: Ditto.
923 * include/tr1/special_function_util.h: Ditto.
924 * testsuite/ext/special_functions/conf_hyperg: New.
925 * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: New.
926 * testsuite/ext/special_functions/conf_hyperg/check_value.cc: New.
927 * testsuite/ext/special_functions/conf_hyperg/compile.cc: New.
928 * testsuite/ext/special_functions/hyperg: New.
929 * testsuite/ext/special_functions/hyperg/check_nan.cc: New.
930 * testsuite/ext/special_functions/hyperg/check_value.cc: New.
931 * testsuite/ext/special_functions/hyperg/compile.cc: New.
932 * testsuite/libstdc++-dg/conformance.exp: Add special_functions directory.
933 * testsuite/special_functions/01_assoc_laguerre/check_nan.cc: New.
934 * testsuite/special_functions/01_assoc_laguerre/check_value.cc: New.
935 * testsuite/special_functions/01_assoc_laguerre/compile.cc: New.
936 * testsuite/special_functions/01_assoc_laguerre/compile_2.cc: New.
937 * testsuite/special_functions/02_assoc_legendre/check_nan.cc: New.
938 * testsuite/special_functions/02_assoc_legendre/check_value.cc: New.
939 * testsuite/special_functions/02_assoc_legendre/compile.cc: New.
940 * testsuite/special_functions/02_assoc_legendre/compile_2.cc: New.
941 * testsuite/special_functions/03_beta/check_nan.cc: New.
942 * testsuite/special_functions/03_beta/check_value.cc: New.
943 * testsuite/special_functions/03_beta/compile.cc: New.
944 * testsuite/special_functions/03_beta/compile_2.cc: New.
945 * testsuite/special_functions/04_comp_ellint_1/check_nan.cc: New.
946 * testsuite/special_functions/04_comp_ellint_1/check_value.cc: New.
947 * testsuite/special_functions/04_comp_ellint_1/compile.cc: New.
948 * testsuite/special_functions/04_comp_ellint_1/compile_2.cc: New.
949 * testsuite/special_functions/05_comp_ellint_2/check_nan.cc: New.
950 * testsuite/special_functions/05_comp_ellint_2/check_value.cc: New.
951 * testsuite/special_functions/05_comp_ellint_2/compile.cc: New.
952 * testsuite/special_functions/05_comp_ellint_2/compile_2.cc: New.
953 * testsuite/special_functions/06_comp_ellint_3/check_nan.cc: New.
954 * testsuite/special_functions/06_comp_ellint_3/check_value.cc: New.
955 * testsuite/special_functions/06_comp_ellint_3/compile.cc: New.
956 * testsuite/special_functions/06_comp_ellint_3/compile_2.cc: New.
957 * testsuite/special_functions/07_cyl_bessel_i/check_nan.cc: New.
958 * testsuite/special_functions/07_cyl_bessel_i/check_value.cc: New.
959 * testsuite/special_functions/07_cyl_bessel_i/compile.cc: New.
960 * testsuite/special_functions/07_cyl_bessel_i/compile_2.cc: New.
961 * testsuite/special_functions/07_cyl_bessel_i/pr56216.cc: New.
962 * testsuite/special_functions/08_cyl_bessel_j/check_nan.cc: New.
963 * testsuite/special_functions/08_cyl_bessel_j/check_value.cc: New.
964 * testsuite/special_functions/08_cyl_bessel_j/compile.cc: New.
965 * testsuite/special_functions/08_cyl_bessel_j/compile_2.cc: New.
966 * testsuite/special_functions/09_cyl_bessel_k/check_nan.cc: New.
967 * testsuite/special_functions/09_cyl_bessel_k/check_value.cc: New.
968 * testsuite/special_functions/09_cyl_bessel_k/compile.cc: New.
969 * testsuite/special_functions/09_cyl_bessel_k/compile_2.cc: New.
970 * testsuite/special_functions/10_cyl_neumann/check_nan.cc: New.
971 * testsuite/special_functions/10_cyl_neumann/check_value.cc: New.
972 * testsuite/special_functions/10_cyl_neumann/compile.cc: New.
973 * testsuite/special_functions/10_cyl_neumann/compile_2.cc: New.
974 * testsuite/special_functions/11_ellint_1/check_nan.cc: New.
975 * testsuite/special_functions/11_ellint_1/check_value.cc: New.
976 * testsuite/special_functions/11_ellint_1/compile.cc: New.
977 * testsuite/special_functions/11_ellint_1/compile_2.cc: New.
978 * testsuite/special_functions/12_ellint_2/check_nan.cc: New.
979 * testsuite/special_functions/12_ellint_2/check_value.cc: New.
980 * testsuite/special_functions/12_ellint_2/compile.cc: New.
981 * testsuite/special_functions/12_ellint_2/compile_2.cc: New.
982 * testsuite/special_functions/13_ellint_3/check_nan.cc: New.
983 * testsuite/special_functions/13_ellint_3/check_value.cc: New.
984 * testsuite/special_functions/13_ellint_3/compile.cc: New.
985 * testsuite/special_functions/13_ellint_3/compile_2.cc: New.
986 * testsuite/special_functions/14_expint/check_nan.cc: New.
987 * testsuite/special_functions/14_expint/check_value.cc: New.
988 * testsuite/special_functions/14_expint/compile.cc: New.
989 * testsuite/special_functions/14_expint/compile_2.cc: New.
990 * testsuite/special_functions/15_hermite/check_nan.cc: New.
991 * testsuite/special_functions/15_hermite/check_value.cc: New.
992 * testsuite/special_functions/15_hermite/compile.cc: New.
993 * testsuite/special_functions/15_hermite/compile_2.cc: New.
994 * testsuite/special_functions/16_laguerre/check_nan.cc: New.
995 * testsuite/special_functions/16_laguerre/check_value.cc: New.
996 * testsuite/special_functions/16_laguerre/compile.cc: New.
997 * testsuite/special_functions/16_laguerre/compile_2.cc: New.
998 * testsuite/special_functions/17_legendre/check_nan.cc: New.
999 * testsuite/special_functions/17_legendre/check_value.cc: New.
1000 * testsuite/special_functions/17_legendre/compile.cc: New.
1001 * testsuite/special_functions/17_legendre/compile_2.cc: New.
1002 * testsuite/special_functions/18_riemann_zeta/check_nan.cc: New.
1003 * testsuite/special_functions/18_riemann_zeta/check_value.cc: New.
1004 * testsuite/special_functions/18_riemann_zeta/compile.cc: New.
1005 * testsuite/special_functions/18_riemann_zeta/compile_2.cc: New.
1006 * testsuite/special_functions/19_sph_bessel/check_nan.cc: New.
1007 * testsuite/special_functions/19_sph_bessel/check_value.cc: New.
1008 * testsuite/special_functions/19_sph_bessel/compile.cc: New.
1009 * testsuite/special_functions/19_sph_bessel/compile_2.cc: New.
1010 * testsuite/special_functions/20_sph_legendre/check_nan.cc: New.
1011 * testsuite/special_functions/20_sph_legendre/check_value.cc: New.
1012 * testsuite/special_functions/20_sph_legendre/compile.cc: New.
1013 * testsuite/special_functions/20_sph_legendre/compile_2.cc: New.
1014 * testsuite/special_functions/21_sph_neumann/check_nan.cc: New.
1015 * testsuite/special_functions/21_sph_neumann/check_value.cc: New.
1016 * testsuite/special_functions/21_sph_neumann/compile.cc: New.
1017 * testsuite/special_functions/21_sph_neumann/compile_2.cc: New.
1018 * testsuite/util/specfun_testcase.h: New.
1019 * testsuite/tr1/5_numerical_facilities/special_functions/08_cyl_bessel_i/check_value.cc: More testcases.
1020 * testsuite/tr1/5_numerical_facilities/special_functions/09_cyl_bessel_j/check_value.cc: Ditto.
1021 * testsuite/tr1/5_numerical_facilities/special_functions/10_cyl_bessel_k/check_value.cc: Ditto.
1022 * testsuite/tr1/5_numerical_facilities/special_functions/11_cyl_neumann/check_value.cc: Ditto.
1023 * testsuite/tr1/5_numerical_facilities/special_functions/21_sph_bessel/check_value.cc: Ditto.
1024 * testsuite/tr1/5_numerical_facilities/special_functions/23_sph_neumann/check_value.cc: Ditto.
1025 * testsuite/tr1/5_numerical_facilities/special_functions/16_hermite/check_value.cc: New.
1026
39a1d8c8
JW
10272016-01-13 Jonathan Wakely <jwakely@redhat.com>
1028
1029 PR libstdc++/48891
1030 * acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): Check for obsolete isinf
1031 and isnan functions.
1032 * config.h.in: Regenerate.
1033 * configure: Regenerate.
1034 * include/c_global/cmath (isinf(double), isnan(double))
1035 [_GLIBCXX_HAVE_OBSOLETE_ISINF_ISNAN]: Import via using-directive.
1036 * testsuite/26_numerics/headers/cmath/48891.cc: New.
1037
e862906c
RO
10382016-01-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
1039
1040 PR libstdc++/66006
1041 * configure.host (abi_baseline_pair): Use separate baseline for
1042 Solaris 11+ and Solaris 10 with gld.
1043 * config/abi/post/solaris2.11/amd64/baseline_symbols.txt: New file.
1044 * config/abi/post/solaris2.11/baseline_symbols.txt: New file.
1045 * config/abi/post/solaris2.11/sparcv9/baseline_symbols.txt: New file.
1046
26b5ace7
DK
10472016-01-12 Daniel Kruegler <daniel.kruegler@gmail.com>
1048
1049 PR libstdc++/68877
1050 * include/std/type_traits: Following N4511, reimplement __is_swappable
1051 and __is_nothrow_swappable. Move __is_swappable to namespace std,
1052 adjust callers. Use __is_nothrow_swappable in swap.
1053 * include/bits/move.h: Use __is_nothrow_swappable in swap.
1054 * testsuite/20_util/is_nothrow_swappable/value.cc: Extend; remove
1055 __is_swappable related tests.
1056 * testsuite/20_util/is_swappable/value.cc: New.
1057 * testsuite/20_util/is_swappable/requirements/
1058 explicit_instantiation.cc: New.
1059 * testsuite/20_util/is_swappable/requirements/typedefs.cc: New.
1060 * testsuite/25_algorithms/swap/68877.cc: New.
1061
1c3c7c41
JW
10622016-01-12 Jonathan Wakely <jwakely@redhat.com>
1063
bd285a8b
JW
1064 * testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
1065
1c3c7c41
JW
1066 PR libstdc++/69005
1067 PR libstdc++/69222
1068 * include/std/functional (function::_Invoke): Remove, use result_of.
1069 (function::_Callable): Replace alias template with class template
1070 and use partial specialization instead of _NotSelf alias template.
1071 (function(_Functor)): Add "not self" constraint so that _Callable is
1072 not used while type is incomplete.
1073 * testsuite/20_util/function/69222.cc: New.
1074
1517bc30
JW
10752016-01-11 Jonathan Wakely <jwakely@redhat.com>
1076
1077 PR libstdc++/60976
1078 * include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
1079 Define partial specialization.
1080 * testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
1081 destroy members to std::allocator explicit specialization.
1082
e525d78c
JW
10832016-01-08 Jonathan Wakely <jwakely@redhat.com>
1084
8babc12b
JW
1085 * testsuite/26_numerics/headers/cmath/
1086 c99_classification_macros_c++.cc: Rename to ...
1087 * testsuite/26_numerics/headers/cmath/
1088 c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
1089 * testsuite/26_numerics/headers/cmath/
1090 c99_classification_macros_c++0x.cc: Rename to ...
1091 * testsuite/26_numerics/headers/cmath/
1092 c99_classification_macros_c++11.cc: Here.
1093
32a8c97f 1094 PR libstdc++/69190
e525d78c
JW
1095 * include/bits/uses_allocator.h: Add missing include.
1096
f885fa89
JW
10972016-01-07 Jonathan Wakely <jwakely@redhat.com>
1098
1099 PR libstdc++/69105
1100 PR libstdc++/69106
1101 PR libstdc++/69114
1102 * include/bits/stl_iterator.h (back_insert_iterator,
1103 front_insert_iterator, insert_iterator): Use __addressof (LWG 2324).
1104 * include/bits/uses_allocator.h (__use_alloc): Use __addressof.
1105 * include/std/future (__future::base::_State_baseV2::__setter):
1106 Likewise.
1107 * include/std/scoped_allocator (__outermost): Likewise.
1108 * testsuite/20_util/scoped_allocator/69114.cc: New.
1109 * testsuite/20_util/uses_allocator/69114.cc: New.
1110 * testsuite/30_threads/promise/69106.cc: New.
1111
0c3e5dd1
JW
11122016-01-06 Jonathan Wakely <jwakely@redhat.com>
1113
373a75fb
JW
1114 PR libstdc++/69092
1115 * include/bits/basic_string.h (basic_string::_S_copy_chars<_Iterator>):
1116 Remove _GLIBCXX_NOEXCEPT.
1117 testsuite/21_strings/basic_string/cons/char/69092.cc: New.
1118
0c3e5dd1
JW
1119 * include/Makefile.am: Adjust.
1120 * include/Makefile.in: Regenerate.
1121 * include/bits/mutex.h: Rename to bits/std_mutex.h.
1122 * include/std/condition_variable: Adjust include.
1123 * include/std/mutex: Likewise.
1124
818ab71a 11252016-01-04 Jakub Jelinek <jakub@redhat.com>
5624e564
JJ
1126
1127 Update copyright years.
b4df5e92 1128\f
818ab71a 1129Copyright (C) 2016 Free Software Foundation, Inc.
b4df5e92
JW
1130
1131Copying and distribution of this file, with or without modification,
1132are permitted in any medium without royalty provided the copyright
1133notice and this notice are preserved.