2018-05-24 19:31:13 +02:00
|
|
|
|
2018-05-24 Maya Rashish <coypu@sdf.org>
|
|
|
|
|
|
|
|
|
|
PR target/85904
|
|
|
|
|
* crossconfig.m4: Test for aligned_alloc on netbsd.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
Implement P0558R2 changes to std::atomic
The restrictions forbidding arithmetic on atomic pointer types are only
enabled for C++17 and later, retaining the GNU extension for older
standards. The new nested typedefs and changes to prevent scalar
parameters participating in template argument deduction are enabled
unconditionally.
PR libstdc++/69769
PR libstdc++/85886
* include/bits/atomic_base.h (__atomic_base::value_type)
(__atomic_base::difference_type): Add new typedefs.
* include/std/atomic (atomic<bool>::value_type, atomic<T>::value_type)
(atomic<T*>::value_type, atomic<T*>::difference_type): Likewise.
(atomic<T*>::operator++, atomic<T*>::operator--)
(atomic<T*>::operator+=, atomic<T*>::operator-=)
(atomic<T*>::fetch_add, atomic<T*>::fetch_sub): Add static assertion
to enforce C++17 requirement on pointer arithmetic.
(__atomic_val_t, __atomic_diff_t): New alias templates.
(atomic_init, atomic_store_explicit, atomic_exchange_explicit)
(atomic_compare_exchange_weak_explicit)
(atomic_compare_exchange_strong_explicit, atomic_store)
(atomic_exchange, atomic_compare_exchange_weak)
(atomic_compare_exchange_strong): Use __atomic_val_t to make
scalar parameters be non-deduced contexts.
(atomic_fetch_add_explicit, atomic_fetch_sub_explicit)
(atomic_fetch_add, atomic_fetch_sub): Change first parameter to be
atomic instead of __atomic_base, and use __atomic_diff_t for scalar
parameters.
(atomic_fetch_and_explicit, atomic_fetch_or_explicit)
(atomic_fetch_xor_explicit, atomic_fetch_and, atomic_fetch_or)
(atomic_fetch_xor): Use __atomic_val_t for scalar parameters.
(atomic_fetch_add_explicit, atomic_fetch_sub_explicit)
(atomic_fetch_add, atomic_fetch_sub): Remove overloads for atomic
address types.
* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
* testsuite/29_atomics/atomic/69769.cc: New test.
* testsuite/29_atomics/atomic/nonmembers.cc: New test.
* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
Disable test for C++17 and later.
* testsuite/29_atomics/atomic/requirements/typedefs.cc: New test.
* testsuite/29_atomics/atomic_integral/nonmembers.cc: New test.
* testsuite/29_atomics/atomic_integral/requirements/typedefs.cc: New
test.
From-SVN: r260676
2018-05-24 17:28:26 +02:00
|
|
|
|
2018-05-24 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/69769
|
|
|
|
|
PR libstdc++/85886
|
|
|
|
|
* include/bits/atomic_base.h (__atomic_base::value_type)
|
|
|
|
|
(__atomic_base::difference_type): Add new typedefs.
|
|
|
|
|
* include/std/atomic (atomic<bool>::value_type, atomic<T>::value_type)
|
|
|
|
|
(atomic<T*>::value_type, atomic<T*>::difference_type): Likewise.
|
|
|
|
|
(atomic<T*>::operator++, atomic<T*>::operator--)
|
|
|
|
|
(atomic<T*>::operator+=, atomic<T*>::operator-=)
|
|
|
|
|
(atomic<T*>::fetch_add, atomic<T*>::fetch_sub): Add static assertion
|
|
|
|
|
to enforce C++17 requirement on pointer arithmetic.
|
|
|
|
|
(__atomic_val_t, __atomic_diff_t): New alias templates.
|
|
|
|
|
(atomic_init, atomic_store_explicit, atomic_exchange_explicit)
|
|
|
|
|
(atomic_compare_exchange_weak_explicit)
|
|
|
|
|
(atomic_compare_exchange_strong_explicit, atomic_store)
|
|
|
|
|
(atomic_exchange, atomic_compare_exchange_weak)
|
|
|
|
|
(atomic_compare_exchange_strong): Use __atomic_val_t to make
|
|
|
|
|
scalar parameters be non-deduced contexts.
|
|
|
|
|
(atomic_fetch_add_explicit, atomic_fetch_sub_explicit)
|
|
|
|
|
(atomic_fetch_add, atomic_fetch_sub): Change first parameter to be
|
|
|
|
|
atomic instead of __atomic_base, and use __atomic_diff_t for scalar
|
|
|
|
|
parameters.
|
|
|
|
|
(atomic_fetch_and_explicit, atomic_fetch_or_explicit)
|
|
|
|
|
(atomic_fetch_xor_explicit, atomic_fetch_and, atomic_fetch_or)
|
|
|
|
|
(atomic_fetch_xor): Use __atomic_val_t for scalar parameters.
|
|
|
|
|
(atomic_fetch_add_explicit, atomic_fetch_sub_explicit)
|
|
|
|
|
(atomic_fetch_add, atomic_fetch_sub): Remove overloads for atomic
|
|
|
|
|
address types.
|
|
|
|
|
* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error lineno.
|
|
|
|
|
* testsuite/29_atomics/atomic/69769.cc: New test.
|
|
|
|
|
* testsuite/29_atomics/atomic/nonmembers.cc: New test.
|
|
|
|
|
* testsuite/29_atomics/atomic/operators/pointer_partial_void.cc:
|
|
|
|
|
Disable test for C++17 and later.
|
|
|
|
|
* testsuite/29_atomics/atomic/requirements/typedefs.cc: New test.
|
|
|
|
|
* testsuite/29_atomics/atomic_integral/nonmembers.cc: New test.
|
|
|
|
|
* testsuite/29_atomics/atomic_integral/requirements/typedefs.cc: New
|
|
|
|
|
test.
|
|
|
|
|
|
2018-05-23 18:11:06 +02:00
|
|
|
|
2018-05-23 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-24 00:48:51 +02:00
|
|
|
|
* include/bits/fs_path.h (path::__is_encoded_char): Change from class
|
|
|
|
|
template to alias template.
|
|
|
|
|
(path::__value_type_is_char): Use remove_const_t.
|
|
|
|
|
(path:_S_string_from_iter): New helper function.
|
|
|
|
|
(path::_S_convert(InputIter, __null_terminated))
|
|
|
|
|
(path::_S_convert_loc(InputIter, __null_terminated, const locale&)):
|
|
|
|
|
Use _S_string_from_iter.
|
|
|
|
|
(path::string<_CharT, _Allocator>(const _Allocator&)): Allow sharing
|
|
|
|
|
rep for COW strings.
|
|
|
|
|
* include/experimental/bits/fs_path.h (path::__is_encoded_char):
|
|
|
|
|
Change from class template to alias template.
|
|
|
|
|
(path::__value_type_is_char): Use remove_const.
|
|
|
|
|
(path:_S_string_from_iter): New helper function.
|
|
|
|
|
(path::_S_convert(InputIter, __null_terminated))
|
|
|
|
|
(path::_S_convert_loc(InputIter, __null_terminated, const locale&)):
|
|
|
|
|
Use _S_string_from_iter.
|
|
|
|
|
* testsuite/27_io/filesystem/path/append/source.cc: Test appending
|
|
|
|
|
wide strings.
|
|
|
|
|
* testsuite/27_io/filesystem/path/concat/strings.cc: Check for exact
|
|
|
|
|
string equality, not path equivalence.
|
|
|
|
|
* testsuite/27_io/filesystem/path/construct/format.cc: Check
|
|
|
|
|
construction from std::string and std::wstring and input iterators.
|
|
|
|
|
* testsuite/27_io/filesystem/path/construct/locale.cc: Check
|
|
|
|
|
construction from iterators.
|
|
|
|
|
* testsuite/experimental/filesystem/path/concat/strings.cc: Check for
|
|
|
|
|
exact string equality, not path equivalence.
|
|
|
|
|
* testsuite/experimental/filesystem/path/construct/locale.cc: Check
|
|
|
|
|
construction from iterators.
|
|
|
|
|
|
2018-05-23 18:11:06 +02:00
|
|
|
|
* include/bits/fs_path.h (path::_M_type): Change default member
|
|
|
|
|
initializer to _Filename.
|
|
|
|
|
(path::begin): Create past-the-end iterator for empty path.
|
|
|
|
|
* src/filesystem/std-path.cc (path::remove_filename()): Remove
|
|
|
|
|
debugging check.
|
|
|
|
|
(path::has_relative_path()): Return false for empty filenames.
|
|
|
|
|
(path::_M_split_cmpts): Set _M_type to _Filename for empty paths.
|
|
|
|
|
Fix offset of empty final component.
|
|
|
|
|
* testsuite/27_io/filesystem/path/itr/components.cc: New.
|
|
|
|
|
* testsuite/27_io/filesystem/path/itr/traversal.cc: Add new inputs.
|
|
|
|
|
|
Add support for opening file streams from wide character strings
C++17 added new overloads to <fstream> class templates to support
opening files from wide character strings "on systems where
filesystem::path::value_type is not char". This patch adds those
overloads conditional on _wfopen being available, and enables them for
pre-C++17 modes as well.
Add support for opening file streams from wide character strings.
* config/io/basic_file_stdio.cc [_GLIBCXX_HAVE__WFOPEN]
(__basic_file<char>::open(const wchar_t*, ios_base::openmode)):
Define new overload.
* config/io/basic_file_stdio.h [_GLIBCXX_HAVE__WFOPEN]
(__basic_file<char>::open(const wchar_t*, ios_base::openmode)):
Declare new overload.
* configure.ac: Check for _wfopen.
* crossconfig.m4: Likewise.
* configure: Regenerate.
* config.h.in: Regenerate.
* include/bits/fstream.tcc [_GLIBCXX_HAVE__WFOPEN]
(basic_filebuf<C,T>::open(const wchar_t*, ios_base::openmode)):
Define new overload.
* include/std/fstream [_GLIBCXX_HAVE__WFOPEN]
(basic_filebuf<C,T>::open(const wchar_t*, ios_base::openmode)):
Declare new overload.
[_GLIBCXX_HAVE__WFOPEN]
(basic_ifstream<C,T>::basic_ifstream(const wchar_t*, openmode))
(basic_ifstream<C,T>::basic_open(const wchar_t*, openmode))
(basic_ofstream<C,T>::basic_ifstream(const wchar_t*, openmode))
(basic_ofstream<C,T>::basic_open(const wchar_t*, openmode))
(basic_fstream<C,T>::basic_ifstream(const wchar_t*, openmode))
(basic_fstream<C,T>::basic_open(const wchar_t*, openmode)): Define
new overloads.
* testsuite/27_io/basic_filebuf/open/wchar_t/1.cc: New.
* testsuite/27_io/basic_ifstream/cons/wchar_t/1.cc: New.
* testsuite/27_io/basic_ifstream/open/wchar_t/1.cc: New.
* testsuite/27_io/basic_ofstream/cons/wchar_t/1.cc: New.
* testsuite/27_io/basic_ofstream/open/wchar_t/1.cc: New.
* testsuite/27_io/basic_fstream/cons/wchar_t/1.cc: New.
* testsuite/27_io/basic_fstream/open/wchar_t/1.cc: New.
From-SVN: r260479
2018-05-21 19:18:35 +02:00
|
|
|
|
2018-05-21 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
Add support for opening file streams from wide character strings.
|
|
|
|
|
* config/io/basic_file_stdio.cc [_GLIBCXX_HAVE__WFOPEN]
|
|
|
|
|
(__basic_file<char>::open(const wchar_t*, ios_base::openmode)):
|
|
|
|
|
Define new overload.
|
|
|
|
|
* config/io/basic_file_stdio.h [_GLIBCXX_HAVE__WFOPEN]
|
|
|
|
|
(__basic_file<char>::open(const wchar_t*, ios_base::openmode)):
|
|
|
|
|
Declare new overload.
|
|
|
|
|
* configure.ac: Check for _wfopen.
|
|
|
|
|
* crossconfig.m4: Likewise.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* config.h.in: Regenerate.
|
|
|
|
|
* include/bits/fstream.tcc [_GLIBCXX_HAVE__WFOPEN]
|
|
|
|
|
(basic_filebuf<C,T>::open(const wchar_t*, ios_base::openmode)):
|
|
|
|
|
Define new overload.
|
|
|
|
|
* include/std/fstream [_GLIBCXX_HAVE__WFOPEN]
|
|
|
|
|
(basic_filebuf<C,T>::open(const wchar_t*, ios_base::openmode)):
|
|
|
|
|
Declare new overload.
|
|
|
|
|
[_GLIBCXX_HAVE__WFOPEN]
|
|
|
|
|
(basic_ifstream<C,T>::basic_ifstream(const wchar_t*, openmode))
|
|
|
|
|
(basic_ifstream<C,T>::basic_open(const wchar_t*, openmode))
|
|
|
|
|
(basic_ofstream<C,T>::basic_ifstream(const wchar_t*, openmode))
|
|
|
|
|
(basic_ofstream<C,T>::basic_open(const wchar_t*, openmode))
|
|
|
|
|
(basic_fstream<C,T>::basic_ifstream(const wchar_t*, openmode))
|
|
|
|
|
(basic_fstream<C,T>::basic_open(const wchar_t*, openmode)): Define
|
|
|
|
|
new overloads.
|
|
|
|
|
* testsuite/27_io/basic_filebuf/open/wchar_t/1.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_ifstream/cons/wchar_t/1.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_ifstream/open/wchar_t/1.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_ofstream/cons/wchar_t/1.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_ofstream/open/wchar_t/1.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_fstream/cons/wchar_t/1.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_fstream/open/wchar_t/1.cc: New.
|
|
|
|
|
|
2018-05-21 18:51:47 +02:00
|
|
|
|
2018-05-21 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85845
|
|
|
|
|
* include/bits/stl_tree.h
|
|
|
|
|
(_Rb_tree_impl(_Rb_tree_impl&&, _Node_allocator&&)): Fix noexcept
|
|
|
|
|
qualification.
|
|
|
|
|
|
2018-05-21 01:50:08 +02:00
|
|
|
|
2018-05-21 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-21 14:52:44 +02:00
|
|
|
|
* src/filesystem/std-ops.cc (absolute): Report an error for empty
|
|
|
|
|
paths.
|
|
|
|
|
(weakly_canonical(const path&)): Do not call canonical on empty path.
|
|
|
|
|
(weakly_canonical(const path&, error_code&)): Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/operations/absolute.cc: Check for errors.
|
|
|
|
|
|
2018-05-21 14:27:00 +02:00
|
|
|
|
PR libstdc++/85818
|
|
|
|
|
* testsuite/experimental/filesystem/path/preferred_separator.cc: Add
|
|
|
|
|
dg-require-filesystem-ts.
|
|
|
|
|
|
2018-05-21 01:50:08 +02:00
|
|
|
|
PR libstdc++/85843
|
|
|
|
|
* src/c++11/cow-stdexcept.cc (logic_error, runtime_error): Explicitly
|
|
|
|
|
initialize base class to avoid warnings.
|
|
|
|
|
|
2018-05-19 04:03:42 +02:00
|
|
|
|
2018-05-19 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* src/c++11/codecvt.cc (__codecvt_utf8_base<wchar_t>::do_in)
|
|
|
|
|
[__SIZEOF_WCHAR_T__==2 && __BYTE_ORDER__!=__ORDER_BIG_ENDIAN__]: Set
|
|
|
|
|
little_endian element in bitmask.
|
|
|
|
|
* testsuite/22_locale/codecvt/codecvt_utf8/69703.cc: Run all tests.
|
|
|
|
|
* testsuite/22_locale/codecvt/codecvt_utf8/wchar_t/1.cc: New.
|
|
|
|
|
|
2018-05-18 François Dumont <fdumont@gcc.gnu.org>
* include/bits/stl_tree.h
(_Rb_tree_impl(_Rb_tree_impl&&, _Node_allocator&&)): New.
(_Rb_tree(_Rb_tree&&, _Node_allocator&&, true_type)): New, use latter.
(_Rb_tree(_Rb_tree&&, _Node_allocator&&, false_type)): New.
(_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Adapt, use latters.
* include/debug/map.h
(map(map&&, const_allocator_type&)): Add noexcept qualitication.
* include/debug/multimap.h
(multimap(multimap&&, const_allocator_type&)): Likewise.
* include/debug/set.h
(set(set&&, const_allocator_type&)): Likewise.
* include/debug/multiset.h
(multiset(multiset&&, const_allocator_type&)): Likewise.
* testsuite/23_containers/map/cons/noexcept_default_construct.cc:
Add checks.
* testsuite/23_containers/map/cons/noexcept_move_construct.cc:
Add checks.
* testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
Add checks.
* testsuite/23_containers/multimap/cons/noexcept_move_construct.cc:
Add checks.
* testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
Add checks.
* testsuite/23_containers/multiset/cons/noexcept_move_construct.cc:
Add checks.
* testsuite/23_containers/set/cons/noexcept_default_construct.cc:
Add checks.
* testsuite/23_containers/set/cons/noexcept_move_construct.cc:
Add checks.
From-SVN: r260382
2018-05-18 22:49:49 +02:00
|
|
|
|
2018-05-18 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* include/bits/stl_tree.h
|
|
|
|
|
(_Rb_tree_impl(_Rb_tree_impl&&, _Node_allocator&&)): New.
|
|
|
|
|
(_Rb_tree(_Rb_tree&&, _Node_allocator&&, true_type)): New, use latter.
|
|
|
|
|
(_Rb_tree(_Rb_tree&&, _Node_allocator&&, false_type)): New.
|
|
|
|
|
(_Rb_tree(_Rb_tree&&, _Node_allocator&&)): Adapt, use latters.
|
|
|
|
|
* include/debug/map.h
|
|
|
|
|
(map(map&&, const_allocator_type&)): Add noexcept qualitication.
|
|
|
|
|
* include/debug/multimap.h
|
|
|
|
|
(multimap(multimap&&, const_allocator_type&)): Likewise.
|
|
|
|
|
* include/debug/set.h
|
|
|
|
|
(set(set&&, const_allocator_type&)): Likewise.
|
|
|
|
|
* include/debug/multiset.h
|
|
|
|
|
(multiset(multiset&&, const_allocator_type&)): Likewise.
|
|
|
|
|
* testsuite/23_containers/map/cons/noexcept_default_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/map/cons/noexcept_move_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/multimap/cons/noexcept_default_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/multimap/cons/noexcept_move_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/multiset/cons/noexcept_default_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/multiset/cons/noexcept_move_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/set/cons/noexcept_default_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
* testsuite/23_containers/set/cons/noexcept_move_construct.cc:
|
|
|
|
|
Add checks.
|
|
|
|
|
|
2018-05-18 22:02:14 +02:00
|
|
|
|
2018-05-18 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
|
|
|
|
* include/bits/stl_deque.h (_Deque_iterator): Constrain constructor
|
|
|
|
|
for conversion to const_iterator. Add defaulted copy ops.
|
|
|
|
|
* libsupc++/new (bad_alloc): Add defaulted copy ops.
|
|
|
|
|
* libsupc++/exception.h (exception): Add defaulted copy ops.
|
|
|
|
|
* include/std/system_error (system_error): Add defaulted copy ops.
|
|
|
|
|
* include/std/stdexcept (domain_error, invalid_argument)
|
|
|
|
|
(length_error, out_of_range, range_error, overflow_error)
|
|
|
|
|
(underflow_error): Add defaulted copy ops.
|
|
|
|
|
* include/bits/stl_iterator.h (reverse_iterator): Add defaulted
|
|
|
|
|
copy assignment.
|
|
|
|
|
* include/bits/allocator.h (allocator): Add defaulted copy assignment.
|
|
|
|
|
* include/ext/throw_allocator.h (condition_base): Add defaulted
|
|
|
|
|
default and copy ctor and copy assignment.
|
|
|
|
|
|
2018-05-18 18:14:04 +02:00
|
|
|
|
2018-05-18 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85098
|
|
|
|
|
* include/bits/regex.h [__cplusplus < 201703L] (basic_regex::icase)
|
|
|
|
|
(basic_regex::nosubs, basic_regex::optimize, basic_regex::collate)
|
|
|
|
|
(basic_regex::ECMAScript, basic_regex::basic, basic_regex::extended)
|
|
|
|
|
(basic_regex::awk, basic_regex::grep, basic_regex::egrep): Add
|
|
|
|
|
definitions.
|
|
|
|
|
* include/bits/regex_automaton.h (_NFA::_M_insert_state): Adjust
|
|
|
|
|
whitespace.
|
|
|
|
|
* include/bits/regex_compiler.tcc (__INSERT_REGEX_MATCHER): Add
|
|
|
|
|
braces around body of do-while.
|
|
|
|
|
* testsuite/28_regex/basic_regex/85098.cc: New
|
|
|
|
|
|
2018-05-17 17:03:29 +02:00
|
|
|
|
2018-05-17 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-17 17:36:25 +02:00
|
|
|
|
PR libstdc++/85818
|
|
|
|
|
* src/filesystem/path.cc (path::preferred_separator): Add used
|
|
|
|
|
attribute.
|
|
|
|
|
* testsuite/experimental/filesystem/path/preferred_separator.cc: New.
|
|
|
|
|
|
2018-05-17 17:03:29 +02:00
|
|
|
|
PR libstdc++/85812
|
|
|
|
|
* libsupc++/cxxabi_init_exception.h (__cxa_free_exception): Declare.
|
|
|
|
|
* libsupc++/exception_ptr.h (make_exception_ptr) [__cpp_exceptions]:
|
|
|
|
|
Refactor to separate non-throwing and throwing implementations.
|
|
|
|
|
[__cpp_rtti && !_GLIBCXX_HAVE_CDTOR_CALLABI]: Deallocate the memory
|
|
|
|
|
if constructing the object throws.
|
|
|
|
|
|
2018-05-15 14:06:57 +02:00
|
|
|
|
2018-05-15 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-15 17:36:46 +02:00
|
|
|
|
PR libstdc++/85749
|
|
|
|
|
* include/bits/random.h (__detail::__is_seed_seq): New SFINAE helper.
|
|
|
|
|
(linear_congruential_engine, mersenne_twister_engine)
|
|
|
|
|
(subtract_with_carry_engine, discard_block_engine)
|
|
|
|
|
(independent_bits_engine, shuffle_order_engine): Use __is_seed_seq to
|
|
|
|
|
constrain function templates taking seed sequences.
|
|
|
|
|
* include/bits/random.tcc (linear_congruential_engine::seed(_Sseq&))
|
|
|
|
|
(mersenne_twister_engine::seed(_Sseq&))
|
|
|
|
|
(subtract_with_carry_engine::seed(_Sseq&)): Change return types to
|
|
|
|
|
match declarations.
|
|
|
|
|
* include/ext/random (simd_fast_mersenne_twister_engine): Use
|
|
|
|
|
__is_seed_seq to constrain function templates taking seed sequences.
|
|
|
|
|
* include/ext/random.tcc (simd_fast_mersenne_twister_engine::seed):
|
|
|
|
|
Change return type to match declaration.
|
|
|
|
|
* testsuite/26_numerics/random/discard_block_engine/cons/seed_seq2.cc:
|
|
|
|
|
New.
|
|
|
|
|
* testsuite/26_numerics/random/independent_bits_engine/cons/
|
|
|
|
|
seed_seq2.cc: New.
|
|
|
|
|
* testsuite/26_numerics/random/linear_congruential_engine/cons/
|
|
|
|
|
seed_seq2.cc: New.
|
|
|
|
|
* testsuite/26_numerics/random/mersenne_twister_engine/cons/
|
|
|
|
|
seed_seq2.cc: New.
|
|
|
|
|
* testsuite/26_numerics/random/pr60037-neg.cc: Adjust dg-error lineno.
|
|
|
|
|
* testsuite/26_numerics/random/shuffle_order_engine/cons/seed_seq2.cc:
|
|
|
|
|
New.
|
|
|
|
|
* testsuite/26_numerics/random/subtract_with_carry_engine/cons/
|
|
|
|
|
seed_seq2.cc: New.
|
|
|
|
|
* testsuite/ext/random/simd_fast_mersenne_twister_engine/cons/
|
|
|
|
|
seed_seq2.cc: New.
|
|
|
|
|
|
2018-05-15 15:50:49 +02:00
|
|
|
|
PR libstdc++/83891
|
|
|
|
|
* include/bits/fs_path.h (path::is_absolute()): Use same definition
|
|
|
|
|
for all operating systems.
|
|
|
|
|
* include/experimental/bits/fs_path.h (path::is_absolute()): Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/is_absolute.cc: New.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/is_relative.cc: Fix comment.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/is_absolute.cc: New.
|
|
|
|
|
|
2018-05-15 14:43:44 +02:00
|
|
|
|
* testsuite/27_io/filesystem/path/decompose/extension.cc: Remove
|
|
|
|
|
unused <vector> header.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/empty.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_extension.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_filename.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_parent_path.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_relative_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_root_directory.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_root_name.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_root_path.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/has_stem.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/path/query/is_relative.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/extension.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_extension.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_filename.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_parent_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_relative_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_root_directory.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_root_name.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_root_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/is_relative.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
|
2018-05-15 14:07:09 +02:00
|
|
|
|
PR libstdc++/84159
|
|
|
|
|
* include/bits/fs_path.h (path::operator/=, path::append): Construct
|
|
|
|
|
temporary path before calling _M_append.
|
|
|
|
|
(path::_M_append): Change parameter to path and implement C++17
|
|
|
|
|
semantics.
|
|
|
|
|
* testsuite/27_io/filesystem/path/append/path.cc: Add helper function
|
|
|
|
|
and more examples from the standard.
|
|
|
|
|
* testsuite/27_io/filesystem/path/append/source.cc: New.
|
|
|
|
|
* testsuite/27_io/filesystem/path/decompose/filename.cc: Add comment.
|
|
|
|
|
* testsuite/27_io/filesystem/path/nonmember/append.cc: New.
|
|
|
|
|
|
2018-05-15 14:06:57 +02:00
|
|
|
|
* include/std/variant (__gen_vtable_impl::__visit_invoke): Qualify
|
|
|
|
|
__invoke to prevent ADL.
|
|
|
|
|
|
2018-05-14 16:27:54 +02:00
|
|
|
|
2018-05-14 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-14 20:57:45 +02:00
|
|
|
|
PR libstdc++/81256
|
|
|
|
|
* include/bits/fstream.tcc (basic_filebuf::close): Do not swallow
|
|
|
|
|
exceptions from _M_terminate_output().
|
|
|
|
|
* include/std/fstream (basic_filebuf::~basic_filebuf): Swallow any
|
|
|
|
|
exceptions from close().
|
|
|
|
|
* testsuite/27_io/basic_filebuf/close/81256.cc: New.
|
|
|
|
|
|
2018-05-14 17:35:12 +02:00
|
|
|
|
* include/bits/valarray_array.h (__valarray_get_memory): Remove.
|
|
|
|
|
(__valarray_get_storage): Call operator new directly. Remove ignored
|
|
|
|
|
top-level restrict qualifier and add malloc attribute instead.
|
|
|
|
|
(_Array<_Tp>::_Array(size_t)): Remove unused constructor.
|
|
|
|
|
|
2018-05-14 17:35:06 +02:00
|
|
|
|
PR libstdc++/67554
|
|
|
|
|
* include/bits/valarray_array.h (_Array_copy_ctor<_Tp, true>)
|
|
|
|
|
(_Array_copier<_Tp, true>): Do not pass null pointers to memcpy.
|
|
|
|
|
|
2018-05-14 16:27:54 +02:00
|
|
|
|
PR libstdc++/82966
|
|
|
|
|
* include/bits/node_handle.h (_Node_handle_common::_M_swap): Use value
|
|
|
|
|
instead of type.
|
|
|
|
|
* testsuite/23_containers/set/modifiers/node_swap.cc: New.
|
|
|
|
|
|
2018-05-13 12:36:12 +02:00
|
|
|
|
2018-05-13 Ville Voutilainen <ville.voutilainen@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/80165
|
|
|
|
|
* testsuite/20_util/variant/80165.cc: New.
|
|
|
|
|
|
2018-05-10 21:13:42 +02:00
|
|
|
|
2018-05-10 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* doc/xml/faq.xml: Link to C++17 status. Add note to outdated answer.
|
|
|
|
|
* doc/xml/manual/debug_mode.xml: Add array and forward_list to list
|
|
|
|
|
of C++11 containers with Debug Mode support.
|
|
|
|
|
* doc/xml/manual/using.xml: Document Dual ABI for ios_base::failure.
|
|
|
|
|
* doc/html/*: Regenerate.
|
|
|
|
|
|
2018-05-10 21:12:23 +02:00
|
|
|
|
2018-05-10 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
|
|
|
|
* include/bits/regex_compiler.h (_S_cache_size): Change from
|
|
|
|
|
function to variable.
|
|
|
|
|
|
2018-05-10 15:59:52 +02:00
|
|
|
|
2018-05-10 Edward Smith-Rowland <3dw4rd@verizon.net>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/83140 - assoc_legendre returns negated value when m is odd
|
|
|
|
|
* include/tr1/legendre_function.tcc (__assoc_legendre_p): Add __phase
|
|
|
|
|
argument defaulted to +1. Doxy comments on same.
|
|
|
|
|
* testsuite/special_functions/02_assoc_legendre/
|
2018-05-11 03:44:05 +02:00
|
|
|
|
check_value.cc: Regen.
|
2018-05-10 15:59:52 +02:00
|
|
|
|
* testsuite/tr1/5_numerical_facilities/special_functions/
|
2018-05-11 03:44:05 +02:00
|
|
|
|
02_assoc_legendre/check_value.cc: Regen.
|
2018-05-10 15:59:52 +02:00
|
|
|
|
|
2018-05-10 14:35:45 +02:00
|
|
|
|
2018-05-10 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85729
|
|
|
|
|
* include/bits/c++config.h (__replacement_assert): Add linkage
|
|
|
|
|
specification.
|
|
|
|
|
* include/bits/std_abs.h: Add comment to closing brace of block.
|
|
|
|
|
* include/c_global/cstddef: Add linkage specification.
|
|
|
|
|
* include/c_global/cstring: Likewise.
|
|
|
|
|
* include/c_global/cwchar: Likewise.
|
|
|
|
|
|
safe_iterator.h (_Safe_iterator<>::_M_constant()): Rename in...
2018-05-09 François Dumont <fdumont@gcc.gnu.org>
* include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant()):
Rename in...
(_Safe_iterator<>::_S_constant()): ...that.
* include/debug/safe_local_iterator.h
(_Safe_local_iterator<>::_M_constant()): Rename in...
(_Safe_local_iterator<>::_S_constant()): ...that.
* include/debug/formatter.h: Remove bits/cpp_type_traits.h include.
(_Iterator_state::__rbegin): New.
(_Iterator_state::__rmiddle): New.
(_Iterator_state::__rend): New.
(_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
_Is_iterator)): Use _Safe_iterator<>::_S_constant. Grab normal underlying
iterator type.
(_Parameter::_Parameter(const _Safe_local_iterator<>&, const char*,
_Is_iterator)): Likewise.
(_Parameter::_S_reverse_state(_Iterator_state)): New.
(_Parameter(__gnu_cxx::__normal_iterator<> const&, const char*,
_Is_iterator)): New.
(_Parameter(std::reverse_iterator<> const&, const char*,
_Is_iterator)): New.
(_Parameter(std::reverse_iterator<_Safe_iterator<>> const&,
const char*, _Is_iterator)): New.
(_Parameter(std::move_iterator<> const&, const char*, _Is_iterator):
New.
(_Parameter(std::move_iterator<_Safe_iterator<>> const&, const char*,
_Is_iterator)): New.
* testsuite/24_iterators/move_iterator/debug_neg.cc: New.
* testsuite/24_iterators/normal_iterator/debug_neg.cc: New.
* testsuite/24_iterators/reverse_iterator/debug_neg.cc: New.
From-SVN: r260093
2018-05-09 22:04:46 +02:00
|
|
|
|
2018-05-09 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant()):
|
|
|
|
|
Rename in...
|
|
|
|
|
(_Safe_iterator<>::_S_constant()): ...that.
|
|
|
|
|
* include/debug/safe_local_iterator.h
|
|
|
|
|
(_Safe_local_iterator<>::_M_constant()): Rename in...
|
|
|
|
|
(_Safe_local_iterator<>::_S_constant()): ...that.
|
|
|
|
|
* include/debug/formatter.h: Remove bits/cpp_type_traits.h include.
|
|
|
|
|
(_Iterator_state::__rbegin): New.
|
|
|
|
|
(_Iterator_state::__rmiddle): New.
|
|
|
|
|
(_Iterator_state::__rend): New.
|
|
|
|
|
(_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
|
|
|
|
|
_Is_iterator)): Use _Safe_iterator<>::_S_constant. Grab normal underlying
|
|
|
|
|
iterator type.
|
|
|
|
|
(_Parameter::_Parameter(const _Safe_local_iterator<>&, const char*,
|
|
|
|
|
_Is_iterator)): Likewise.
|
|
|
|
|
(_Parameter::_S_reverse_state(_Iterator_state)): New.
|
2018-05-10 21:13:42 +02:00
|
|
|
|
(_Parameter(__gnu_cxx::__normal_iterator<> const&, const char*,
|
safe_iterator.h (_Safe_iterator<>::_M_constant()): Rename in...
2018-05-09 François Dumont <fdumont@gcc.gnu.org>
* include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant()):
Rename in...
(_Safe_iterator<>::_S_constant()): ...that.
* include/debug/safe_local_iterator.h
(_Safe_local_iterator<>::_M_constant()): Rename in...
(_Safe_local_iterator<>::_S_constant()): ...that.
* include/debug/formatter.h: Remove bits/cpp_type_traits.h include.
(_Iterator_state::__rbegin): New.
(_Iterator_state::__rmiddle): New.
(_Iterator_state::__rend): New.
(_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
_Is_iterator)): Use _Safe_iterator<>::_S_constant. Grab normal underlying
iterator type.
(_Parameter::_Parameter(const _Safe_local_iterator<>&, const char*,
_Is_iterator)): Likewise.
(_Parameter::_S_reverse_state(_Iterator_state)): New.
(_Parameter(__gnu_cxx::__normal_iterator<> const&, const char*,
_Is_iterator)): New.
(_Parameter(std::reverse_iterator<> const&, const char*,
_Is_iterator)): New.
(_Parameter(std::reverse_iterator<_Safe_iterator<>> const&,
const char*, _Is_iterator)): New.
(_Parameter(std::move_iterator<> const&, const char*, _Is_iterator):
New.
(_Parameter(std::move_iterator<_Safe_iterator<>> const&, const char*,
_Is_iterator)): New.
* testsuite/24_iterators/move_iterator/debug_neg.cc: New.
* testsuite/24_iterators/normal_iterator/debug_neg.cc: New.
* testsuite/24_iterators/reverse_iterator/debug_neg.cc: New.
From-SVN: r260093
2018-05-09 22:04:46 +02:00
|
|
|
|
_Is_iterator)): New.
|
|
|
|
|
(_Parameter(std::reverse_iterator<> const&, const char*,
|
|
|
|
|
_Is_iterator)): New.
|
|
|
|
|
(_Parameter(std::reverse_iterator<_Safe_iterator<>> const&,
|
|
|
|
|
const char*, _Is_iterator)): New.
|
|
|
|
|
(_Parameter(std::move_iterator<> const&, const char*, _Is_iterator):
|
|
|
|
|
New.
|
|
|
|
|
(_Parameter(std::move_iterator<_Safe_iterator<>> const&, const char*,
|
|
|
|
|
_Is_iterator)): New.
|
|
|
|
|
* testsuite/24_iterators/move_iterator/debug_neg.cc: New.
|
|
|
|
|
* testsuite/24_iterators/normal_iterator/debug_neg.cc: New.
|
|
|
|
|
* testsuite/24_iterators/reverse_iterator/debug_neg.cc: New.
|
|
|
|
|
|
2018-05-09 15:28:11 +02:00
|
|
|
|
2018-05-09 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* include/bits/std_function.h (_Base_manager::_M_get_pointer):
|
|
|
|
|
Use constexpr if in C++17 mode.
|
|
|
|
|
(_Base_manager::_M_clone(_Any_data&, const _Any_data&, true_type)):
|
|
|
|
|
Copy from const object.
|
|
|
|
|
* testsuite/20_util/function/cons/non_copyconstructible.cc: New.
|
|
|
|
|
|
2018-05-08 21:41:02 +02:00
|
|
|
|
2018-05-08 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
2018-05-08 22:00:52 +02:00
|
|
|
|
* src/c++11/debug.cc [_GLIBCXX_HAVE_EXECINFO_H]: Include execinfo.h.
|
|
|
|
|
[_GLIBCXX_HAVE_EXECINFO_H](_Error_formatter::_M_error): Render
|
|
|
|
|
backtrace.
|
|
|
|
|
|
macros.h (__glibcxx_check_valid_range_at): New.
2018-05-08 François Dumont <fdumont@gcc.gnu.org>
* include/debug/macros.h (__glibcxx_check_valid_range_at): New.
* include/debug/functions.h (__check_valid_range): Use latter.
* include/debug/macros.h (__glibcxx_check_valid_constructor_range): New,
use latter.
* include/debug/deque
(deque::deque<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
* include/debug/forward_list
(forward_list::forward_list<_Iter>(_Iter, _Iter, const _Alloc&)):
Likewise.
* include/debug/list
(list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
* include/debug/list
(list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
* include/debug/map.h
(map::map<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
(map::map<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
Likewise.
* include/debug/multimap.h
(multimap::multimap<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
(multimap::multimap<_Iter>(_Iter, _Iter, const _Compare&,
const _Alloc&)): Likewise.
* include/debug/set.h
(set::set<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
(set::set<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
Likewise.
* include/debug/multiset.h
(multiset::multiset<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
(multiset::multiset<_Iter>(_Iter, _Iter, const _Compare&,
const _Alloc&)): Likewise.
* include/debug/string
(basic_string::basic_string<_Iter>(_Iter, _Iter, const _Alloc&)):
Likewise.
* include/debug/unordered_map
(unordered_map::unordered_map<_Iter>(_Iter, _Iter, const _Alloc&)):
Likewise.
(unordered_multimap::unordered_multimap<_Iter>(_Iter, _Iter,
const _Alloc&)): Likewise.
* include/debug/unordered_set
(unordered_set::unordered_set<_Iter>(_Iter, _Iter, const _Alloc&)):
Likewise.
(unordered_multiset::unordered_multiset<_Iter>(_Iter, _Iter,
const _Alloc&)): Likewise.
* include/debug/vector
(vector::vector<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
From-SVN: r260053
2018-05-08 21:46:59 +02:00
|
|
|
|
* include/debug/macros.h (__glibcxx_check_valid_range_at): New.
|
|
|
|
|
* include/debug/functions.h (__check_valid_range): Use latter.
|
|
|
|
|
* include/debug/macros.h (__glibcxx_check_valid_constructor_range): New,
|
|
|
|
|
use latter.
|
|
|
|
|
* include/debug/deque
|
|
|
|
|
(deque::deque<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
|
|
|
|
|
* include/debug/forward_list
|
|
|
|
|
(forward_list::forward_list<_Iter>(_Iter, _Iter, const _Alloc&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
* include/debug/list
|
|
|
|
|
(list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
|
|
|
|
|
* include/debug/list
|
|
|
|
|
(list::list<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
|
|
|
|
|
* include/debug/map.h
|
|
|
|
|
(map::map<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
|
|
|
|
|
(map::map<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
* include/debug/multimap.h
|
|
|
|
|
(multimap::multimap<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
|
|
|
|
|
(multimap::multimap<_Iter>(_Iter, _Iter, const _Compare&,
|
|
|
|
|
const _Alloc&)): Likewise.
|
|
|
|
|
* include/debug/set.h
|
|
|
|
|
(set::set<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
|
|
|
|
|
(set::set<_Iter>(_Iter, _Iter, const _Compare&, const _Alloc&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
* include/debug/multiset.h
|
|
|
|
|
(multiset::multiset<_Iter>(_Iter, _Iter, const _Alloc&)): Likewise.
|
|
|
|
|
(multiset::multiset<_Iter>(_Iter, _Iter, const _Compare&,
|
|
|
|
|
const _Alloc&)): Likewise.
|
|
|
|
|
* include/debug/string
|
|
|
|
|
(basic_string::basic_string<_Iter>(_Iter, _Iter, const _Alloc&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
* include/debug/unordered_map
|
|
|
|
|
(unordered_map::unordered_map<_Iter>(_Iter, _Iter, const _Alloc&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
(unordered_multimap::unordered_multimap<_Iter>(_Iter, _Iter,
|
|
|
|
|
const _Alloc&)): Likewise.
|
|
|
|
|
* include/debug/unordered_set
|
|
|
|
|
(unordered_set::unordered_set<_Iter>(_Iter, _Iter, const _Alloc&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
(unordered_multiset::unordered_multiset<_Iter>(_Iter, _Iter,
|
|
|
|
|
const _Alloc&)): Likewise.
|
|
|
|
|
* include/debug/vector
|
|
|
|
|
(vector::vector<_Iter>(_Iter, _Iter, const _Alloc&)): Use latter.
|
|
|
|
|
|
2018-05-08 21:41:02 +02:00
|
|
|
|
* include/debug/formatter.h (_Error_formatter::_M_function): New.
|
|
|
|
|
(_Error_formatter(const char*, unsigned int)): Adapt.
|
|
|
|
|
(_Error_formatter::_M_at): Rename in...
|
|
|
|
|
(_Error_formatter::_S_at): ...that and adapt.
|
|
|
|
|
* include/debug/macros.h (_GLIBCXX_DEBUG_VERIFY_AT_F): New.
|
|
|
|
|
(_GLIBCXX_DEBUG_VERIFY_AT, _GLIBCXX_DEBUG_VERIFY): Adapt.
|
|
|
|
|
* src/c++11/debug.cc (_Error_formatter::_M_error): Render _M_function
|
|
|
|
|
when available.
|
|
|
|
|
|
2018-05-08 15:05:04 +02:00
|
|
|
|
2018-05-08 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-08 18:21:35 +02:00
|
|
|
|
* include/bits/regex_automaton.h (_NFA_base::_M_paren_stack, _NFA):
|
|
|
|
|
Use normal std::vector even in Debug Mode.
|
|
|
|
|
|
2018-05-08 15:05:04 +02:00
|
|
|
|
PR libstdc++/85672
|
|
|
|
|
* include/Makefile.am [!ENABLE_FLOAT128]: Change c++config.h entry
|
|
|
|
|
to #undef _GLIBCXX_USE_FLOAT128 instead of defining it to zero.
|
|
|
|
|
* include/Makefile.in: Regenerate.
|
|
|
|
|
* include/bits/c++config (_GLIBCXX_USE_FLOAT128): Move definition
|
|
|
|
|
within conditional block.
|
|
|
|
|
|
2018-05-07 19:26:28 +02:00
|
|
|
|
2018-05-07 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-07 21:17:16 +02:00
|
|
|
|
* doc/xml/manual/using.xml (table.cmd_options): Document that the
|
|
|
|
|
C++17 Filesystem implementation also needs -lstdc++fs.
|
|
|
|
|
|
2018-05-07 19:26:28 +02:00
|
|
|
|
PR libstdc++/85671
|
|
|
|
|
* include/bits/fs_path.h (operator/): Permit copy elision.
|
|
|
|
|
* include/experimental/bits/fs_path.h (operator/): Likewise.
|
|
|
|
|
|
2018-05-07 18:17:32 +02:00
|
|
|
|
2018-05-07 Edward Smith-Rowland <3dw4rd@verizon.net>
|
|
|
|
|
|
|
|
|
|
Moar PR libstdc++/80506
|
|
|
|
|
* include/bits/random.tcc (gamma_distribution::__generate_impl()):
|
|
|
|
|
Fix magic number used in loop condition.
|
|
|
|
|
|
PR libstdc++/85642 fix is_nothrow_default_constructible<optional<T>>
Add missing noexcept keyword to default constructor of each
_Optional_payload specialization.
PR libstdc++/85642 fix is_nothrow_default_constructible<optional<T>>
* include/std/optional (_Optional_payload): Add noexcept to default
constructor. Re-indent.
(_Optional_payload<_Tp, true, true, true>): Likewise. Add noexcept to
constructor for copying disengaged payloads.
(_Optional_payload<_Tp, true, false, true>): Likewise.
(_Optional_payload<_Tp, true, true, false>): Likewise.
(_Optional_payload<_Tp, true, false, false>): Likewise.
* testsuite/20_util/optional/cons/85642.cc: New.
* testsuite/20_util/optional/cons/value_neg.cc: Adjust dg-error lines.
From-SVN: r259928
2018-05-04 10:57:23 +02:00
|
|
|
|
2018-05-04 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85642 fix is_nothrow_default_constructible<optional<T>>
|
|
|
|
|
* include/std/optional (_Optional_payload): Add noexcept to default
|
|
|
|
|
constructor. Re-indent.
|
|
|
|
|
(_Optional_payload<_Tp, true, true, true>): Likewise. Add noexcept to
|
|
|
|
|
constructor for copying disengaged payloads.
|
|
|
|
|
(_Optional_payload<_Tp, true, false, true>): Likewise.
|
|
|
|
|
(_Optional_payload<_Tp, true, true, false>): Likewise.
|
|
|
|
|
(_Optional_payload<_Tp, true, false, false>): Likewise.
|
|
|
|
|
* testsuite/20_util/optional/cons/85642.cc: New.
|
|
|
|
|
* testsuite/20_util/optional/cons/value_neg.cc: Adjust dg-error lines.
|
|
|
|
|
|
2018-05-03 14:40:10 +02:00
|
|
|
|
2018-05-03 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-04 00:58:43 +02:00
|
|
|
|
PR libstdc++/82644
|
|
|
|
|
* include/tr1/cmath [__STRICT_ANSI__] (hypergf, hypergl, hyperg): Use
|
|
|
|
|
inline definitions instead of using-declarations.
|
|
|
|
|
[__STRICT_ANSI__] (conf_hypergf, conf_hypergl, conf_hyperg): Likewise.
|
|
|
|
|
* testsuite/tr1/5_numerical_facilities/special_functions/
|
|
|
|
|
07_conf_hyperg/compile_cxx17.cc: New.
|
|
|
|
|
* testsuite/tr1/5_numerical_facilities/special_functions/
|
|
|
|
|
17_hyperg/compile_cxx17.cc: New.
|
|
|
|
|
|
2018-05-03 20:58:04 +02:00
|
|
|
|
PR libstdc++/84769
|
|
|
|
|
* include/std/variant (visit): Qualify std::get call.
|
|
|
|
|
|
2018-05-03 20:58:00 +02:00
|
|
|
|
PR libstdc++/85632 use uintmax_t for arithmetic
|
|
|
|
|
* src/filesystem/ops.cc (experimental::filesystem::space): Perform
|
|
|
|
|
arithmetic in result type.
|
|
|
|
|
* src/filesystem/std-ops.cc (filesystem::space): Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/operations/space.cc: Check total capacity
|
|
|
|
|
is greater than free space.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/space.cc: New.
|
|
|
|
|
|
2018-05-03 17:12:19 +02:00
|
|
|
|
* testsuite/20_util/remove_cvref/requirements/alias_decl.cc: New.
|
|
|
|
|
* testsuite/20_util/remove_cvref/requirements/explicit_instantiation.cc:
|
|
|
|
|
New.
|
|
|
|
|
* testsuite/20_util/remove_cvref/value.cc: New.
|
|
|
|
|
* testsuite/20_util/remove_cvref/value_ext.cc: New.
|
|
|
|
|
|
PR libstdc++/84087 add default arguments to basic_string members (LWG 2268)
This change was a DR against C++11 and so should have been implemented
years ago.
PR libstdc++/84087 LWG DR 2268 basic_string default arguments
* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI=1]
(append(const basic_string&, size_type, size_type)
(assign(const basic_string&, size_type, size_type)
(insert(size_type, const basic_string&, size_type, size_type)
(replace(size_type,size_type,const basic_string&,size_type,size_type)
(compare(size_type,size_type,constbasic_string&,size_type,size_type)):
Add default arguments (LWG 2268).
[_GLIBCXX_USE_CXX11_ABI=0]
(append(const basic_string&, size_type, size_type)
(assign(const basic_string&, size_type, size_type)
(insert(size_type, const basic_string&, size_type, size_type)
(replace(size_type,size_type,const basic_string&,size_type,size_type)
(compare(size_type,size_type,constbasic_string&,size_type,size_type)):
Likewise.
* testsuite/21_strings/basic_string/dr2268.cc: New test.
From-SVN: r259895
2018-05-03 17:01:20 +02:00
|
|
|
|
PR libstdc++/84087 LWG DR 2268 basic_string default arguments
|
|
|
|
|
* include/bits/basic_string.h [_GLIBCXX_USE_CXX11_ABI=1]
|
|
|
|
|
(append(const basic_string&, size_type, size_type)
|
|
|
|
|
(assign(const basic_string&, size_type, size_type)
|
|
|
|
|
(insert(size_type, const basic_string&, size_type, size_type)
|
|
|
|
|
(replace(size_type,size_type,const basic_string&,size_type,size_type)
|
|
|
|
|
(compare(size_type,size_type,constbasic_string&,size_type,size_type)):
|
|
|
|
|
Add default arguments (LWG 2268).
|
|
|
|
|
[_GLIBCXX_USE_CXX11_ABI=0]
|
|
|
|
|
(append(const basic_string&, size_type, size_type)
|
|
|
|
|
(assign(const basic_string&, size_type, size_type)
|
|
|
|
|
(insert(size_type, const basic_string&, size_type, size_type)
|
|
|
|
|
(replace(size_type,size_type,const basic_string&,size_type,size_type)
|
|
|
|
|
(compare(size_type,size_type,constbasic_string&,size_type,size_type)):
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/21_strings/basic_string/dr2268.cc: New test.
|
|
|
|
|
|
2018-05-03 16:08:36 +02:00
|
|
|
|
PR libstdc++/84535
|
|
|
|
|
* include/std/thread (thread::__not_same): New SFINAE helper.
|
|
|
|
|
(thread::thread(_Callable&&, _Args&&...)): Add SFINAE constraint that
|
|
|
|
|
first argument is not a std::thread. Add static assertion to check
|
|
|
|
|
INVOKE expression is valid.
|
|
|
|
|
(thread::thread(thread&), thread::thread(const thread&&)): Remove.
|
|
|
|
|
(thread::_Invoke::_M_invoke, thread::_Invoke::operator()): Use
|
|
|
|
|
__invoke_result for return types and remove exception specifications.
|
|
|
|
|
* testsuite/30_threads/thread/cons/84535.cc: New.
|
|
|
|
|
|
2018-05-03 14:40:15 +02:00
|
|
|
|
* include/std/future (__async_result_of): Use __invoke_result instead
|
|
|
|
|
of result_of.
|
|
|
|
|
|
2018-05-03 14:40:10 +02:00
|
|
|
|
* include/std/any (any_cast): Use __remove_cvref_t.
|
|
|
|
|
* include/std/tuple (__make_tuple): Likewise.
|
|
|
|
|
* include/std/type_traits (__remove_cvref_t): Define.
|
|
|
|
|
(__result_of_memobj, __result_of_memfun): Use __remove_cvref_t.
|
|
|
|
|
[__cplusplus > 201703L] (remove_cvref, remove_cvref_t): Define.
|
|
|
|
|
* include/std/variant (__erased_hash): Use __remove_cvref_t.
|
|
|
|
|
|
2018-05-02 21:51:33 +02:00
|
|
|
|
2018-05-02 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* include/bits/deque.tcc (deque<>::_M_assign_aux): Cast to void to
|
|
|
|
|
ensure overloaded comma not used.
|
|
|
|
|
* include/bits/list.tcc (list<>::_M_assign_dispatch): Likewise.
|
|
|
|
|
* include/bits/vector.tcc (vector<>::_M_assign_aux): Likewise.
|
|
|
|
|
* include/bits/stl_bvector.h (vector<bool>::_M_assign_aux): Likewise.
|
|
|
|
|
* testsuite/23_containers/deque/modifiers/assign/1.cc: New.
|
|
|
|
|
* testsuite/23_containers/list/modifiers/assign/1.cc: New.
|
|
|
|
|
* testsuite/23_containers/vector/bool/modifiers/assign/1.cc: New.
|
|
|
|
|
* testsuite/23_containers/vector/modifiers/assign/1.cc: New.
|
|
|
|
|
|
2018-05-02 18:25:44 +02:00
|
|
|
|
2018-05-02 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-05-02 21:04:55 +02:00
|
|
|
|
PR libstdc++/68197
|
|
|
|
|
* include/bits/ios_base.h (ios_base::iword, ios_base::pword): Cast
|
|
|
|
|
indices to unsigned.
|
|
|
|
|
* src/c++11/ios.cc (ios_base::_M_grow_words): Treat negative indices
|
|
|
|
|
as failure. Refactor error handling.
|
|
|
|
|
* testsuite/27_io/ios_base/storage/68197.cc: New.
|
|
|
|
|
|
PR libstdc++/83860 avoid dangling references in valarray closure types
Store nested closures by value not by reference, to prevent holding
invalid references to temporaries that have been destroyed. This
changes the layout of the closure types, so change their linkage names,
but moving them to a different namespace.
PR libstdc++/57997
PR libstdc++/83860
* include/bits/gslice_array.h (gslice_array): Define default
constructor as deleted, as per C++11 standard.
* include/bits/mask_array.h (mask_array): Likewise.
* include/bits/slice_array.h (slice_array): Likewise.
* include/bits/valarray_after.h (_GBase, _GClos, _IBase, _IClos): Move
to namespace __detail.
(_GBase::_M_expr, _IBase::_M_expr): Use _ValArrayRef for type of data
members.
* include/bits/valarray_before.h (_ValArrayRef): New helper for type
of data members in closure objects.
(_FunBase, _ValFunClos, _RefFunClos, _UnBase, _UnClos, _BinBase)
(_BinBase2, _BinBase1, _BinClos, _SBase, _SClos): Move to namespace
__detail.
(_FunBase::_M_expr, _UnBase::_M_expr, _BinBase::_M_expr1)
(_BinBase::_M_expr2, _BinBase2::_M_expr1, _BinBase1::_M_expr2)
(_SBase::_M_expr): Use _ValArrayRef for type of data members.
* include/std/valarray (_UnClos, _BinClos, _SClos, _GClos, _IClos)
(_ValFunClos, _RefFunClos): Move to namespace __detail and add
using-declarations to namespace std.
* testsuite/26_numerics/valarray/83860.cc: New.
From-SVN: r259844
2018-05-02 18:41:46 +02:00
|
|
|
|
PR libstdc++/57997
|
|
|
|
|
PR libstdc++/83860
|
|
|
|
|
* include/bits/gslice_array.h (gslice_array): Define default
|
|
|
|
|
constructor as deleted, as per C++11 standard.
|
|
|
|
|
* include/bits/mask_array.h (mask_array): Likewise.
|
|
|
|
|
* include/bits/slice_array.h (slice_array): Likewise.
|
|
|
|
|
* include/bits/valarray_after.h (_GBase, _GClos, _IBase, _IClos): Move
|
|
|
|
|
to namespace __detail.
|
|
|
|
|
(_GBase::_M_expr, _IBase::_M_expr): Use _ValArrayRef for type of data
|
|
|
|
|
members.
|
|
|
|
|
* include/bits/valarray_before.h (_ValArrayRef): New helper for type
|
|
|
|
|
of data members in closure objects.
|
|
|
|
|
(_FunBase, _ValFunClos, _RefFunClos, _UnBase, _UnClos, _BinBase)
|
|
|
|
|
(_BinBase2, _BinBase1, _BinClos, _SBase, _SClos): Move to namespace
|
|
|
|
|
__detail.
|
|
|
|
|
(_FunBase::_M_expr, _UnBase::_M_expr, _BinBase::_M_expr1)
|
|
|
|
|
(_BinBase::_M_expr2, _BinBase2::_M_expr1, _BinBase1::_M_expr2)
|
|
|
|
|
(_SBase::_M_expr): Use _ValArrayRef for type of data members.
|
|
|
|
|
* include/std/valarray (_UnClos, _BinClos, _SClos, _GClos, _IClos)
|
|
|
|
|
(_ValFunClos, _RefFunClos): Move to namespace __detail and add
|
|
|
|
|
using-declarations to namespace std.
|
|
|
|
|
* testsuite/26_numerics/valarray/83860.cc: New.
|
|
|
|
|
|
2018-05-02 18:27:01 +02:00
|
|
|
|
* testsuite/backward/strstream_move.cc: Remove duplicate function
|
|
|
|
|
call.
|
|
|
|
|
|
2018-05-02 18:25:44 +02:00
|
|
|
|
PR libstdc++/69608
|
|
|
|
|
* include/backward/strstream (strstreambuf): Define move constructor
|
|
|
|
|
and move assignment operator.
|
|
|
|
|
(istrstream, ostrstream, strstream): Likewise.
|
|
|
|
|
* testsuite/backward/strstream_move.cc: New.
|
|
|
|
|
|
2018-05-02 00:47:33 +02:00
|
|
|
|
2018-05-01 Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84654
|
|
|
|
|
* acinclude.m4: Set ENABLE_FLOAT128 instead of _GLIBCXX_USE_FLOAT128.
|
|
|
|
|
* config.h.in: Remove references to _GLIBCXX_USE_FLOAT128.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* include/Makefile.am: Replace the value of _GLIBCXX_USE_FLOAT128
|
|
|
|
|
based on ENABLE_FLOAT128.
|
|
|
|
|
* include/Makefile.in: Regenerate.
|
|
|
|
|
* include/bits/c++config: Define _GLIBCXX_USE_FLOAT128.
|
|
|
|
|
[!defined(__FLOAT128__) && !defined(__SIZEOF_FLOAT128__)]: Undefine
|
|
|
|
|
_GLIBCXX_USE_FLOAT128.
|
|
|
|
|
|
2018-04-24 18:45:26 +02:00
|
|
|
|
2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2018-04-19 09:45:51 +02:00
|
|
|
|
2018-04-19 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
* configure: Regenerated.
|
|
|
|
|
|
2018-04-18 14:14:58 +02:00
|
|
|
|
2018-04-18 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85442
|
|
|
|
|
* src/c++11/Makefile.am: Don't generate debuginfo again for
|
|
|
|
|
cxx11-ios_failure-lt.s and cxx11-ios_failure.s files.
|
|
|
|
|
* src/c++11/Makefile.in: Regenerate.
|
|
|
|
|
|
2018-04-18 13:15:38 +02:00
|
|
|
|
2018-04-18 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84442
|
|
|
|
|
* testsuite/30_threads/thread/cons/terminate.cc
|
|
|
|
|
[!_GLIBCXX_USE_C99_STDLIB] : Use _exit or std::exit instead of _Exit.
|
|
|
|
|
|
2018-04-18 11:46:58 +02:00
|
|
|
|
2018-04-18 David Malcolm <dmalcolm@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR jit/85384
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2018-04-16 10:24:40 +02:00
|
|
|
|
2018-04-16 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/experimental/filesystem/file_status/1.cc: Add
|
|
|
|
|
-DUSE_FILESYSTEM_TS to dg-options.
|
|
|
|
|
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/iterators/pop.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/iterators/
|
|
|
|
|
recursive_directory_iterator.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/create_directories.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/create_directory.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/create_symlink.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/current_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/equivalent.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/exists.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/last_write_time.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/permissions.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/read_symlink.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/remove.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/status.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/append/path.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/assign/assign.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/compare/compare.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/compare/path.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/compare/strings.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/concat/path.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/construct/copy.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/construct/default.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/construct/locale.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/construct/string_view.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/extension.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/filename.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/relative_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/root_directory.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/root_name.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/root_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/decompose/stem.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/generic/generic_string.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/itr/traversal.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/modifiers/clear.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/modifiers/swap.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/native/string.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_extension.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_filename.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_parent_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_relative_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_root_directory.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_root_name.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_root_path.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
|
|
|
|
|
* testsuite/experimental/filesystem/path/query/is_relative.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
|
2018-04-13 12:06:21 +02:00
|
|
|
|
2018-04-13 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-04-13 12:55:29 +02:00
|
|
|
|
* src/c++11/Makefile.am: Fix sed command.
|
|
|
|
|
* src/c++11/Makefile.in: Regenerate.
|
|
|
|
|
|
2018-04-13 12:06:21 +02:00
|
|
|
|
* src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
|
|
|
|
|
handle mangled names starting with double underscores on darwin.
|
|
|
|
|
* src/c++11/Makefile.in: Regenerate.
|
|
|
|
|
|
2018-04-12 18:06:03 +02:00
|
|
|
|
2018-04-12 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-04-12 22:55:02 +02:00
|
|
|
|
* src/c++11/Makefile.am: Fix comment.
|
|
|
|
|
* src/c++11/Makefile.in: Regenerate.
|
|
|
|
|
* src/c++11/cxx11-ios_failure.cc: Fix comment.
|
|
|
|
|
* src/c++98/ios_failure.cc: Likewise.
|
|
|
|
|
|
2018-04-12 18:06:03 +02:00
|
|
|
|
* src/c++11/ios.cc: Remove redundant macro definition.
|
|
|
|
|
|
2018-04-11 02:21:35 +02:00
|
|
|
|
2018-04-11 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* doc/xml/manual/abi.xml: Document header locations in recent
|
|
|
|
|
releases.
|
|
|
|
|
* doc/xml/manual/evolution.xml: Add API changes since GCC 5.
|
|
|
|
|
* doc/xml/manual/spine.xml: Update copyright years.
|
|
|
|
|
* doc/xml/manual/strings.xml: Adjust tolower example to avoid
|
|
|
|
|
undefined behaviour.
|
|
|
|
|
* doc/xml/manual/test.xml: Update outdated notes on VERIFY in tests.
|
|
|
|
|
* doc/html/*: Regenerate.
|
|
|
|
|
|
2018-04-10 16:36:09 +02:00
|
|
|
|
2018-04-10 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-04-10 17:49:26 +02:00
|
|
|
|
* doc/xml/faq.xml: Update links to archived copy of SGI STL docs.
|
|
|
|
|
* doc/xml/manual/backwards_compatibility.xml: Likewise.
|
|
|
|
|
* doc/xml/manual/containers.xml: Likewise.
|
|
|
|
|
* doc/xml/manual/debug_mode.xml: Likewise.
|
|
|
|
|
* doc/xml/manual/extensions.xml: Likewise.
|
|
|
|
|
* doc/xml/manual/policy_data_structures_biblio.xml: Likewise.
|
|
|
|
|
* doc/xml/manual/using.xml: Likewise.
|
|
|
|
|
* doc/xml/manual/utilities.xml: Likewise.
|
|
|
|
|
|
2018-04-10 16:36:09 +02:00
|
|
|
|
PR libstdc++/85222
|
|
|
|
|
* src/c++11/Makefile.am [ENABLE_DUAL_ABI]: Add special rules for
|
|
|
|
|
cxx11-ios_failure.cc to rewrite type info for __ios_failure.
|
|
|
|
|
* src/c++11/Makefile.in: Regenerate.
|
|
|
|
|
* src/c++11/cxx11-ios_failure.cc (__ios_failure, __iosfail_type_info):
|
|
|
|
|
New types.
|
|
|
|
|
[_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
|
|
|
|
|
* src/c++11/ios.cc (__throw_ios_failure): Remove definition.
|
|
|
|
|
* src/c++98/ios_failure.cc (__construct_ios_failure)
|
|
|
|
|
(__destroy_ios_failure, is_ios_failure_handler): New functions.
|
|
|
|
|
[!_GLIBCXX_USE_DUAL_ABI] (__throw_ios_failure): Define here.
|
|
|
|
|
* testsuite/27_io/ios_base/failure/dual_abi.cc: New.
|
|
|
|
|
* testsuite/27_io/basic_ios/copyfmt/char/1.cc: Revert changes to
|
|
|
|
|
handler types, to always catch std::ios_base::failure.
|
|
|
|
|
* testsuite/27_io/basic_ios/exceptions/char/1.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_istream/extractors_arithmetic/char/
|
|
|
|
|
exceptions_failbit.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/
|
|
|
|
|
exceptions_failbit.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_istream/extractors_other/char/
|
|
|
|
|
exceptions_null.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_istream/extractors_other/wchar_t/
|
|
|
|
|
exceptions_null.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_istream/sentry/char/12297.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_istream/sentry/wchar_t/12297.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_ostream/inserters_other/char/
|
|
|
|
|
exceptions_null.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
|
|
|
|
|
exceptions_null.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/ios_base/storage/2.cc: Likewise.
|
|
|
|
|
|
2018-04-05 18:59:13 +02:00
|
|
|
|
2018-04-05 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* include/std/variant (_VARIANT_RELATION_FUNCTION_TEMPLATE): Qualify
|
|
|
|
|
__get calls to avoid ADL and avoid ambiguity due to Clang bug.
|
|
|
|
|
|
2018-04-04 01:03:07 +02:00
|
|
|
|
2018-04-03 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85183
|
|
|
|
|
* include/std/variant (_Move_assign_base::operator=): Fix incorrect
|
|
|
|
|
value categories.
|
|
|
|
|
* testsuite/20_util/variant/85183.cc: New.
|
|
|
|
|
|
2018-03-26 15:09:10 +02:00
|
|
|
|
2018-03-26 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* include/std/variant (__get): Qualify calls to avoid ADL.
|
|
|
|
|
(__select_index): Adjust whitespace.
|
|
|
|
|
(variant): Add using-declaration to workaround Clang bug.
|
|
|
|
|
|
2018-03-22 15:23:27 +01:00
|
|
|
|
2018-03-22 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/85040
|
|
|
|
|
* include/bits/stl_function.h (greater::__not_overloaded)
|
|
|
|
|
(less::__not_overloaded, greater_equal::__not_overloaded)
|
|
|
|
|
(less_equal::__not_overloaded): Fix ambiguous specializations.
|
|
|
|
|
* testsuite/20_util/function_objects/comparisons_pointer.cc: Add
|
2018-04-05 18:59:13 +02:00
|
|
|
|
tests for type with overloaded operators.
|
2018-03-22 15:23:27 +01:00
|
|
|
|
|
2018-03-22 14:33:29 +01:00
|
|
|
|
2018-03-22 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/77691
|
|
|
|
|
* testsuite/experimental/memory_resource/resource_adaptor.cc:
|
|
|
|
|
xfail execution on 32-bit Solaris/x86.
|
|
|
|
|
|
2018-03-21 13:32:14 +01:00
|
|
|
|
2018-03-21 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/20_util/function_objects/comparisons_pointer.cc: Use
|
|
|
|
|
VERIFY instead of assert.
|
|
|
|
|
* testsuite/20_util/hash/84998.cc: New test.
|
|
|
|
|
* testsuite/23_containers/vector/cons/destructible_debug_neg.cc: New
|
|
|
|
|
copy of test adjusted for Debug Mode.
|
|
|
|
|
* testsuite/23_containers/vector/cons/destructible_neg.cc: Do not run
|
|
|
|
|
test in Debug Mode.
|
|
|
|
|
|
2018-03-20 22:45:14 +01:00
|
|
|
|
2018-03-20 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84998
|
|
|
|
|
* include/bits/stl_bvector.h: Fix std::hash friend declaration.
|
|
|
|
|
* include/std/bitset: Likewise.
|
|
|
|
|
* include/bits/stl_map.h (std::map<>): Fix _Rb_tree_merge_helper friend
|
|
|
|
|
declaration.
|
|
|
|
|
* include/bits/stl_multimap.h (std::multimap<>): Likewise.
|
|
|
|
|
* include/bits/stl_multiset.h (std::multiset<>): Likewise.
|
|
|
|
|
* include/bits/stl_set.h (std::set<>): Likewise.
|
|
|
|
|
* include/bits/unordered_map.h (std::unordered_map<>): Fix
|
|
|
|
|
_Hash_merge_helper friend declaration.
|
|
|
|
|
(std::unordered_multimap<>): Likewise.
|
|
|
|
|
* include/bits/unordered_set.h (std::unordered_set<>): Likewise.
|
|
|
|
|
(std::unordered_multiset<>): Likewise.
|
|
|
|
|
|
2018-03-19 00:38:23 +01:00
|
|
|
|
2018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
|
|
|
|
|
|
2018-03-19 00:52:00 +01:00
|
|
|
|
* doc/xml/api.xml: www.fsf.org has moved to https. Also omit
|
|
|
|
|
trailing slash for domain level link.
|
|
|
|
|
* doc/xml/faq.xml: Ditto.
|
|
|
|
|
* doc/xml/manual/appendix_free.xml (software): Ditto.
|
|
|
|
|
* doc/xml/manual/intro.xml: Ditto.
|
|
|
|
|
* doc/xml/manual/spine.xml: Ditto.
|
|
|
|
|
* doc/xml/spine.xml: Ditto.
|
|
|
|
|
|
2018-03-20 22:45:14 +01:00
|
|
|
|
2018-03-19 Gerald Pfeifer <gerald@pfeifer.com>
|
|
|
|
|
|
2018-03-19 00:38:23 +01:00
|
|
|
|
* doc/xml/manual/documentation_hacking.xml: Adjust link to
|
|
|
|
|
docbook.org.
|
|
|
|
|
|
2018-03-17 14:44:16 +01:00
|
|
|
|
2018-03-17 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/20_util/function_objects/comparisons_pointer.cc: Adjust
|
|
|
|
|
to compile as C++98.
|
|
|
|
|
|
PR libstdc++/78420 Make std::less etc. yield total order for pointers
In order for std::less<T*> etc. to meet the total order requirements of
[comparisons] p2 we need to cast unrelated pointers to uintptr_t before
comparing them. Those casts aren't allowed in constant expressions, so
only cast when __builtin_constant_p says the result of the comparison is
not a compile-time constant (because the arguments are not constants, or
the result of the comparison is unspecified). When the result is
constant just compare the pointers directly without casting.
This ensures that the function can be called in constant expressions
with suitable arguments, but still yields a total order even for
otherwise unspecified pointer comparisons.
For std::less<void> etc. add new overloads for pointers, which use
std::less<common_type_t<T*,U*>> directly. Also change the generic
overloads to detect when the comparison would call a built-in relational
operator with pointer operands, and dispatch that case to the
corresponding specialization for void pointers.
PR libstdc++/78420
* include/bits/stl_function.h (greater<_Tp*>, less<_Tp*>)
(greater_equal<_Tp*>, less_equal<_Tp>*): Add partial specializations
to ensure total order for pointers.
(greater<void>, less<void>, greater_equal<void>, less_equal<void>):
Add operator() overloads for pointer arguments and make generic
overloads dispatch to new _S_cmp functions when comparisons would
use built-in operators for pointers.
* testsuite/20_util/function_objects/comparisons_pointer.cc: New.
From-SVN: r258540
2018-03-15 00:02:01 +01:00
|
|
|
|
2018-03-14 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/78420
|
|
|
|
|
* include/bits/stl_function.h (greater<_Tp*>, less<_Tp*>)
|
|
|
|
|
(greater_equal<_Tp*>, less_equal<_Tp>*): Add partial specializations
|
|
|
|
|
to ensure total order for pointers.
|
|
|
|
|
(greater<void>, less<void>, greater_equal<void>, less_equal<void>):
|
|
|
|
|
Add operator() overloads for pointer arguments and make generic
|
|
|
|
|
overloads dispatch to new _S_cmp functions when comparisons would
|
|
|
|
|
use built-in operators for pointers.
|
|
|
|
|
* testsuite/20_util/function_objects/comparisons_pointer.cc: New.
|
|
|
|
|
|
2018-03-12 23:52:16 +01:00
|
|
|
|
2018-03-12 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84773
|
|
|
|
|
PR libstdc++/83662
|
|
|
|
|
* crossconfig.m4: Check for aligned_alloc etc. on freebsd and mingw32.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* include/c_global/cstdlib [_GLIBCXX_HAVE_ALIGNED_ALLOC]
|
|
|
|
|
(aligned_alloc): Add using-declaration.
|
|
|
|
|
* testsuite/18_support/aligned_alloc/aligned_alloc.cc: New test.
|
|
|
|
|
|
2018-03-09 06:56:07 +01:00
|
|
|
|
2018-03-09 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
|
|
|
|
|
Fix std::_Fwd_list_iterator and std::_Fwd_list_const_iterator printers
|
|
|
|
|
registration.
|
|
|
|
|
|
2018-03-09 02:09:58 +01:00
|
|
|
|
2018-03-09 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-03-09 02:10:02 +01:00
|
|
|
|
PR libstdc++/84769
|
|
|
|
|
* include/std/variant (get<_Tp, _Types...>, get_if<_Tp, _Types...>):
|
|
|
|
|
Qualify calls to get<_Np, Types...> and get_if<_Np, _Types...>.
|
|
|
|
|
|
2018-03-09 02:09:58 +01:00
|
|
|
|
src/filesystem/ops.cc (create_dir): Pass error_code to is_directory.
|
|
|
|
|
src/filesystem/std-ops.cc (create_dir): Likewise.
|
|
|
|
|
|
2018-03-08 07:26:15 +01:00
|
|
|
|
2018-03-08 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* python/libstdcxx/v6/printers.py (NodeIteratorPrinter): New.
|
|
|
|
|
(StdListIteratorPrinter): Inherit from latter.
|
|
|
|
|
(StdFwdListIteratorPrinter): New, inherit from latter.
|
|
|
|
|
(StdDebugIteratorPrinter.to_string): Use non-debug iterator printer
|
|
|
|
|
when iterator has no associated container.
|
|
|
|
|
(build_libstdcxx_dictionary): Add __gnu_cxx::_Fwd_list_iterator and
|
|
|
|
|
__gnu_cxx::_Fwd_list_const_iterator printers. Remove __norm namespace
|
|
|
|
|
registrations.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/debug.cc: Adapt.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/debug_cxx11.cc: Adapt.
|
|
|
|
|
|
2018-03-06 22:43:03 +01:00
|
|
|
|
2018-03-06 Ville Voutilainen <ville.voutilainen@gmail.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84601
|
|
|
|
|
* include/std/optional (_Optional_payload): Split into multiple
|
|
|
|
|
specializations that can handle different cases of trivial or
|
|
|
|
|
non-trivial assignment operators.
|
|
|
|
|
* testsuite/20_util/optional/84601.cc: New.
|
|
|
|
|
* testsuite/20_util/optional/cons/value_neg.cc: Adjust.
|
|
|
|
|
|
2018-03-02 21:38:50 +01:00
|
|
|
|
2018-03-02 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84671
|
|
|
|
|
* include/bits/parse_numbers.h (_Number_help): Add partial
|
|
|
|
|
specialization to handle digit separators. Adjust partial
|
|
|
|
|
specialization for recursion temrination to require _Pow == 1ULL.
|
|
|
|
|
* testsuite/20_util/duration/literals/84671.cc: New
|
|
|
|
|
|
2018-02-27 12:33:30 +01:00
|
|
|
|
2018-02-27 Ville Voutilainen <ville.voutilainen@gmail.com>
|
|
|
|
|
|
|
|
|
|
Implement the missing bits of LWG 2769
|
|
|
|
|
* include/std/any (any_cast(const any&)): Add static_assert.
|
|
|
|
|
(any_cast(any&)): Likewise.
|
|
|
|
|
(any_cast(any&&)): Likewise, and remove the handling
|
|
|
|
|
for copyable-but-not-movable type.
|
|
|
|
|
* testsuite/20_util/any/misc/any_cast.cc: Adjust.
|
|
|
|
|
* testsuite/20_util/any/misc/any_cast_neg.cc: Likewise, and
|
|
|
|
|
add new tests.
|
|
|
|
|
|
2018-02-24 00:23:43 +01:00
|
|
|
|
2018-02-23 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/84532
|
|
|
|
|
* include/std/thread (thread::__make_invoker): Construct tuple
|
|
|
|
|
directly instead of using make_tuple.
|
|
|
|
|
* testsuite/30_threads/async/84532.cc: New.
|
|
|
|
|
* testsuite/30_threads/thread/84532.cc: New.
|
|
|
|
|
|
2018-02-20 21:51:44 +01:00
|
|
|
|
2018-02-20 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
|
|
|
|
|
(template<> __aligned_buffer): Define as __aligned_membuf alias.
|
|
|
|
|
|
2018-02-19 17:25:49 +01:00
|
|
|
|
2018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
|
|
|
|
|
|
|
|
|
|
PR target/84148
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
|
2018-02-15 21:56:41 +01:00
|
|
|
|
2018-02-15 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/81797
|
|
|
|
|
* configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
|
|
|
|
|
* configure: Regenerate.
|
|
|
|
|
* include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
|
|
|
|
|
defined.
|
|
|
|
|
* include/Makefile.in: Regenerate.
|
|
|
|
|
|
2018-01-29 13:33:32 +01:00
|
|
|
|
2018-01-29 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-01-29 15:07:27 +01:00
|
|
|
|
PR libstdc++/83833
|
|
|
|
|
* testsuite/26_numerics/random/chi_squared_distribution/83833.cc:
|
|
|
|
|
Add -ffloat-store to options for m68k and ia32.
|
|
|
|
|
|
2018-01-29 13:37:17 +01:00
|
|
|
|
* doc/xml/faq.xml: Update copyright years.
|
|
|
|
|
* doc/html/*: Regenerate.
|
|
|
|
|
|
2018-01-29 13:33:32 +01:00
|
|
|
|
PR libstdc++/83658
|
|
|
|
|
* include/std/any (any::__do_emplace): Only set _M_manager after
|
|
|
|
|
constructing the contained object.
|
|
|
|
|
* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust dg-error line.
|
|
|
|
|
* testsuite/20_util/any/modifiers/83658.cc: New test.
|
|
|
|
|
|
2018-01-25 16:24:39 +01:00
|
|
|
|
2018-01-25 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/81076
|
|
|
|
|
* include/c_global/cstddef (__byte_operand): Define primary template.
|
|
|
|
|
* testsuite/18_support/byte/81076.cc: New test.
|
|
|
|
|
|
2018-01-19 11:17:34 +01:00
|
|
|
|
2018-01-19 Christophe Lyon <christophe.lyon@linaro.org>
|
|
|
|
|
|
|
|
|
|
* testsuite/ext/special_functions/airy_ai/check_nan.cc: Fix
|
2018-01-25 16:24:39 +01:00
|
|
|
|
dg-options and dg-add-options order.
|
2018-01-19 11:17:34 +01:00
|
|
|
|
* testsuite/ext/special_functions/airy_bi/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/ext/special_functions/conf_hyperg/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/01_assoc_laguerre/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/02_assoc_legendre/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/03_beta/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/04_comp_ellint_1/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/05_comp_ellint_2/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/06_comp_ellint_3/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/06_comp_ellint_3/pr66689.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/07_cyl_bessel_i/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/08_cyl_bessel_j/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/09_cyl_bessel_k/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/10_cyl_neumann/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/11_ellint_1/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/12_ellint_2/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/13_ellint_3/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/13_ellint_3/pr66689.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/14_expint/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/15_hermite/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/16_laguerre/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/17_legendre/check_nan.cc: Likewise.
|
|
|
|
|
* testsuite/special_functions/18_riemann_zeta/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/19_sph_bessel/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/20_sph_legendre/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
* testsuite/special_functions/21_sph_neumann/check_nan.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
|
2018-01-18 20:52:16 +01:00
|
|
|
|
2018-01-18 Uros Bizjak <ubizjak@gmail.com>
|
|
|
|
|
|
|
|
|
|
* configure.ac (AC_CHECK_HEADERS): Add linux/types.h. Conditionally
|
|
|
|
|
include linux/types.h when checking linux/random.h header.
|
|
|
|
|
* config.h.in: Regenerate.
|
|
|
|
|
* configure: Ditto.
|
|
|
|
|
* src/c++11/random.cc: Conditionally include linux/types.h.
|
|
|
|
|
|
2018-01-16 21:40:09 +01:00
|
|
|
|
2018-01-16 Eric Botcazou <ebotcazou@adacore.com>
|
|
|
|
|
|
|
|
|
|
* testsuite/17_intro/names.cc: Undefine 'y' on SPARC/Linux.
|
|
|
|
|
|
2018-01-16 13:43:08 +01:00
|
|
|
|
2018-01-16 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/83834
|
|
|
|
|
* config/abi/pre/gnu.ver (GLIBCXX_3.4): Replace std::c[a-g]* wildcard
|
|
|
|
|
pattern with exact match for std::cerr.
|
|
|
|
|
|
2018-01-15 16:02:01 +01:00
|
|
|
|
2018-01-15 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-01-15 20:58:22 +01:00
|
|
|
|
PR libstdc++/83833
|
|
|
|
|
* include/bits/random.h (chi_squared_distribution::param): Update
|
|
|
|
|
gamma distribution parameter.
|
|
|
|
|
* testsuite/26_numerics/random/chi_squared_distribution/83833.cc: New
|
|
|
|
|
test.
|
|
|
|
|
|
2018-01-15 16:02:01 +01:00
|
|
|
|
PR libstdc++/83830
|
|
|
|
|
* include/std/type_traits (has_unique_object_representations_v): Add
|
|
|
|
|
variable template.
|
|
|
|
|
* testsuite/20_util/has_unique_object_representations/value.cc: Check
|
|
|
|
|
variable template.
|
|
|
|
|
|
2018-01-15 12:32:24 +01:00
|
|
|
|
2018-01-15 Ville Voutilainen <ville.voutilainen@gmail.com>
|
|
|
|
|
|
|
|
|
|
Make optional conditionally
|
|
|
|
|
trivially_{copy,move}_{constructible,assignable}
|
|
|
|
|
* include/std/optional (_Optional_payload): Fix the comment in
|
|
|
|
|
the class head and turn into a primary and one specialization.
|
|
|
|
|
(_Optional_payload::_M_engaged): Strike the NSDMI.
|
|
|
|
|
(_Optional_payload<_Tp, false>::operator=(const _Optional_payload&)):
|
|
|
|
|
New.
|
|
|
|
|
(_Optional_payload<_Tp, false>::operator=(_Optional_payload&&)):
|
|
|
|
|
Likewise.
|
|
|
|
|
(_Optional_payload<_Tp, false>::_M_get): Likewise.
|
|
|
|
|
(_Optional_payload<_Tp, false>::_M_reset): Likewise.
|
|
|
|
|
(_Optional_base_impl): Likewise.
|
|
|
|
|
(_Optional_base): Turn into a primary and three specializations.
|
|
|
|
|
(optional(nullopt)): Change the base init.
|
|
|
|
|
* testsuite/20_util/optional/assignment/8.cc: New.
|
|
|
|
|
* testsuite/20_util/optional/cons/trivial.cc: Likewise.
|
|
|
|
|
* testsuite/20_util/optional/cons/value_neg.cc: Adjust.
|
|
|
|
|
|
2018-01-15 12:13:53 +01:00
|
|
|
|
2018-01-15 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/80276
|
|
|
|
|
* python/libstdcxx/v6/printers.py (strip_inline_namespaces): New.
|
|
|
|
|
(get_template_arg_list): New.
|
|
|
|
|
(StdVariantPrinter._template_args): Remove, use get_template_arg_list
|
|
|
|
|
instead.
|
|
|
|
|
(TemplateTypePrinter): Rewrite to work with gdb.Type objects instead
|
|
|
|
|
of strings and regular expressions.
|
|
|
|
|
(add_one_template_type_printer): Adapt to new TemplateTypePrinter.
|
|
|
|
|
(FilteringTypePrinter): Add docstring. Match using startswith. Use
|
|
|
|
|
strip_inline_namespaces instead of strip_versioned_namespace.
|
|
|
|
|
(add_one_type_printer): Prepend namespace to match argument.
|
|
|
|
|
(register_type_printers): Add type printers for char16_t and char32_t
|
|
|
|
|
string types and for types using cxx11 ABI. Update calls to
|
|
|
|
|
add_one_template_type_printer to provide default argument dicts.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/80276.cc: New test.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/whatis.cc: Remove tests for
|
|
|
|
|
basic_string<unsigned char> and basic_string<signed char>.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/whatis2.cc: Duplicate whatis.cc
|
|
|
|
|
to test local variables, without overriding _GLIBCXX_USE_CXX11_ABI.
|
|
|
|
|
|
2018-01-14 18:32:20 +01:00
|
|
|
|
2018-01-14 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/81092
|
|
|
|
|
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
|
|
|
|
|
|
2018-01-14 01:48:30 +01:00
|
|
|
|
2018-01-13 Tim Shen <timshen@google.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/83601
|
|
|
|
|
* include/bits/regex.tcc (regex_replace): Fix escaping in sed.
|
|
|
|
|
* testsuite/28_regex/algorithms/regex_replace/char/pr83601.cc: Tests.
|
|
|
|
|
* testsuite/28_regex/algorithms/regex_replace/wchar_t/pr83601.cc: Tests.
|
|
|
|
|
|
2018-01-12 10:52:53 +01:00
|
|
|
|
2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/64054
|
|
|
|
|
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
|
|
|
|
|
Remove dg-xfail-run-if.
|
|
|
|
|
|
2018-01-10 François Dumont <fdumont@gcc.gnu.org>
* include/bits/forward_list.h
(_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
(_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
(_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
(_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
(_Fwd_list_impl()): Add noexcept qualification.
(_Fwd_list_impl(const _Node_alloc_type&)): Delete.
(_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
(_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
(_Fwd_list_base()): Default.
(_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
(_Fwd_list_base(_Fwd_list_base&&)): Default.
(forward_list<>()): Default.
(forward_list<>(forward_list&&)): Default.
(forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
(forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
(forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
* include/bits/forward_list.tcc
(_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
_M_impl._M_head move assignment.
(forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
* testsuite/23_containers/forward_list/allocator/default_init.cc: New.
From-SVN: r256439
2018-01-10 17:59:02 +01:00
|
|
|
|
2018-01-10 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* include/bits/forward_list.h
|
|
|
|
|
(_Fwd_list_node_base(_Fwd_list_node_base&&)): New.
|
|
|
|
|
(_Fwd_list_node_base& operator=(_Fwd_list_node_base&&)): New.
|
|
|
|
|
(_Fwd_list_node_base(const _Fwd_list_node_base&)): Explicit delete.
|
|
|
|
|
(_Fwd_list_node_base& operator=(const _Fwd_list_node_base&)): Likewise.
|
|
|
|
|
(_Fwd_list_impl()): Add noexcept qualification.
|
|
|
|
|
(_Fwd_list_impl(const _Node_alloc_type&)): Delete.
|
|
|
|
|
(_Fwd_list_impl(_Fwd_list_impl&&)): New, default.
|
|
|
|
|
(_Fwd_list_impl(_Fwd_list_impl&&, _Node_alloc_type&&)): New.
|
|
|
|
|
(_Fwd_list_base()): Default.
|
|
|
|
|
(_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&, true_type)): New.
|
|
|
|
|
(_Fwd_list_base(_Fwd_list_base&&)): Default.
|
|
|
|
|
(forward_list<>()): Default.
|
|
|
|
|
(forward_list<>(forward_list&&)): Default.
|
|
|
|
|
(forward_list(forward_list&&, _Node_alloc_type&&, false_type)): New.
|
|
|
|
|
(forward_list(forward_list&&, _Node_alloc_type&&, true_type)): New.
|
|
|
|
|
(forward_list(forward_list&&, const _Alloc&)): Adapt to use latters.
|
|
|
|
|
* include/bits/forward_list.tcc
|
|
|
|
|
(_Fwd_list_base(_Fwd_list_base&&, _Node_alloc_type&&)): Adapt to use
|
|
|
|
|
_M_impl._M_head move assignment.
|
|
|
|
|
(forward_list<>::merge(forward_list<>&&, _Comp)): Likewise.
|
|
|
|
|
* testsuite/23_containers/forward_list/allocator/default_init.cc: New.
|
|
|
|
|
|
2018-01-09 22:46:13 +01:00
|
|
|
|
2018-01-09 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/80276
|
|
|
|
|
* python/libstdcxx/v6/printers.py (SharedPointerPrinter)
|
|
|
|
|
(UniquePointerPrinter): Print correct template argument, not type of
|
|
|
|
|
the pointer.
|
|
|
|
|
(TemplateTypePrinter._recognizer.recognize): Handle failure to lookup
|
|
|
|
|
a type.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/cxx11.cc: Test unique_ptr of
|
|
|
|
|
array type.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/cxx17.cc: Test shared_ptr and
|
|
|
|
|
weak_ptr of array types.
|
|
|
|
|
|
re PR libstdc++/83709 (Inserting duplicates into an unordered associative containers causes the container to invalidate iterators)
2018-01-09 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/83709
* include/bits/hashtable_policy.h
(__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
__first != __last.
(_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
(_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
Add false_type parameter.
(_Insert_base::insert): Adapt.
* include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
Adapt.
(_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
Add __n_elt parameter, defaulted to 1.
(_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
policy _M_need_rehash.
(_Hashtable::_M_merge_unique): Pass target number of elements to add to
produce only 1 rehash if necessary.
* testsuite/23_containers/unordered_map/insert/83709.cc: New.
* testsuite/23_containers/unordered_set/insert/83709.cc: New.
From-SVN: r256396
2018-01-09 22:05:10 +01:00
|
|
|
|
2018-01-09 François Dumont <fdumont@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
PR libstdc++/83709
|
|
|
|
|
* include/bits/hashtable_policy.h
|
|
|
|
|
(__distance_fwd(_Iterator, _Iterator, input_iterator_tag)): Return 1 if
|
|
|
|
|
__first != __last.
|
|
|
|
|
(_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, true_type)): New.
|
|
|
|
|
(_Insert_base::_M_insert_range(_Ite, _Ite, _NodeGetter, false_type)):
|
|
|
|
|
Add false_type parameter.
|
|
|
|
|
(_Insert_base::insert): Adapt.
|
|
|
|
|
* include/bits/hashtable.h (_Hashtable::operator=(initializzr_list<>)):
|
|
|
|
|
Adapt.
|
|
|
|
|
(_Hashtable::_M_insert(_Arg&&, const _NodeGen&, true_type, size_t)):
|
|
|
|
|
Add __n_elt parameter, defaulted to 1.
|
|
|
|
|
(_Hashtable::_M_insert_unique_node): Likewise. Use it to call rehash
|
|
|
|
|
policy _M_need_rehash.
|
|
|
|
|
(_Hashtable::_M_merge_unique): Pass target number of elements to add to
|
|
|
|
|
produce only 1 rehash if necessary.
|
|
|
|
|
* testsuite/23_containers/unordered_map/insert/83709.cc: New.
|
|
|
|
|
* testsuite/23_containers/unordered_set/insert/83709.cc: New.
|
|
|
|
|
|
2018-01-15 12:13:49 +01:00
|
|
|
|
2018-01-09 Juraj Oršulić <juraj.orsulic@fer.hr>
|
|
|
|
|
Jonathan Wakely <jwakely@redhat.com>
|
2018-01-09 19:49:57 +01:00
|
|
|
|
|
|
|
|
|
PR libstdc++/59253 (partial)
|
|
|
|
|
* python/libstdcxx/v6/printers.py (SmartPtrIterator): Common iterator
|
|
|
|
|
type for pointer stored by shared_ptr, weak_ptr and unique_ptr.
|
|
|
|
|
(SharedPointerPrinter, UniquePointerPrinter): Treat stored values as
|
|
|
|
|
children.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/cxx11.cc: Update expected output
|
|
|
|
|
of unique_ptr printer.
|
|
|
|
|
* testsuite/libstdc++-prettyprinters/shared_ptr.cc: Update expected
|
|
|
|
|
output of shared_ptr printer.
|
|
|
|
|
|
2018-01-05 19:02:18 +01:00
|
|
|
|
2018-01-05 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-01-06 00:51:22 +01:00
|
|
|
|
PR libstdc++/83626
|
|
|
|
|
* src/filesystem/ops.cc (remove(const path&, error_code&)): Remove
|
|
|
|
|
unnecessary symlink_status call.
|
|
|
|
|
(remove_all(const path&, error_code&)): Use filesystem::remove.
|
|
|
|
|
* src/filesystem/std-ops.cc: Likewise.
|
|
|
|
|
|
2018-01-05 22:43:56 +01:00
|
|
|
|
PR libstdc++/83279
|
|
|
|
|
* src/filesystem/std-ops.cc (do_copy_file): Use non-null offset with
|
|
|
|
|
sendfile.
|
|
|
|
|
|
2018-01-05 19:02:18 +01:00
|
|
|
|
PR libstdc++/83626
|
|
|
|
|
* src/filesystem/ops.cc (remove(const path&, error_code&)): Do not
|
|
|
|
|
report an error for ENOENT.
|
|
|
|
|
(remove_all(const path&)): Fix type of result variable.
|
|
|
|
|
(remove_all(const path&, error_code&)): Use non-throwing increment
|
|
|
|
|
for directory iterator. Call POSIX remove directly to avoid redundant
|
|
|
|
|
calls to symlink_status. Do not report errors for ENOENT.
|
|
|
|
|
* src/filesystem/std-ops.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/operations/remove_all.cc: Test throwing
|
|
|
|
|
overload.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/remove_all.cc:
|
|
|
|
|
Likewise.
|
|
|
|
|
|
2018-01-04 11:21:29 +01:00
|
|
|
|
2018-01-04 Jonathan Wakely <jwakely@redhat.com>
|
|
|
|
|
|
2018-01-04 23:58:59 +01:00
|
|
|
|
PR libstdc++/83626
|
|
|
|
|
* src/filesystem/ops.cc (remove(const path&, error_code&))): Remove
|
|
|
|
|
redundant call to ec.clear().
|
|
|
|
|
(remove_all(const path&, error_code&))): Do not return an error for
|
|
|
|
|
non-existent paths.
|
|
|
|
|
* src/filesystem/std-ops.cc: Likewise.
|
|
|
|
|
* testsuite/27_io/filesystem/operations/remove.cc: New test.
|
|
|
|
|
* testsuite/27_io/filesystem/operations/remove_all.cc: Fix expected
|
|
|
|
|
results for non-existent paths.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/remove.cc: New test.
|
|
|
|
|
* testsuite/experimental/filesystem/operations/remove_all.cc: Fix
|
|
|
|
|
expected results for non-existent paths.
|
|
|
|
|
|
2018-01-04 14:46:22 +01:00
|
|
|
|
* include/bits/fs_ops.h (exists(const path&, error_code&))): Only
|
|
|
|
|
check status_known once.
|
|
|
|
|
* include/experimental/bits/fs_ops.h: Likewise.
|
|
|
|
|
|
2018-01-04 11:21:29 +01:00
|
|
|
|
PR libstdc++/83607
|
|
|
|
|
* include/std/functional (__is_byte_like): New trait.
|
|
|
|
|
(__is_std_equal_to): Remove.
|
|
|
|
|
(__boyer_moore_base_t): Use __is_byte_like instead of
|
|
|
|
|
__is_std_equal_to.
|
|
|
|
|
* include/experimental/functional (__is_std_equal_to): Remove.
|
|
|
|
|
(__boyer_moore_base_t): Use __is_byte_like instead of
|
|
|
|
|
__is_std_equal_to.
|
|
|
|
|
* testsuite/20_util/function_objects/83607.cc: New test.
|
|
|
|
|
|
2018-01-03 21:33:10 +01:00
|
|
|
|
2018-01-03 Ville Voutilainen <ville.voutilainen@gmail.com>
|
|
|
|
|
|
|
|
|
|
Protect optional's deduction guide with the feature macro
|
|
|
|
|
* include/std/optional: Use the feature macro.
|
|
|
|
|
|
2018-01-03 11:03:58 +01:00
|
|
|
|
2018-01-03 Jakub Jelinek <jakub@redhat.com>
|
2015-01-05 13:33:28 +01:00
|
|
|
|
|
|
|
|
|
Update copyright years.
|
2015-01-02 17:50:45 +01:00
|
|
|
|
|
2018-01-03 11:03:58 +01:00
|
|
|
|
Copyright (C) 2018 Free Software Foundation, Inc.
|
2015-01-02 17:50:45 +01:00
|
|
|
|
|
|
|
|
|
Copying and distribution of this file, with or without modification,
|
|
|
|
|
are permitted in any medium without royalty provided the copyright
|
|
|
|
|
notice and this notice are preserved.
|