12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718 |
- 2022-04-08 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/105153
- * include/std/expected
- (expected<void,E>::expected(expected<U,G>&&)): Fix constraints.
- * testsuite/20_util/expected/cons.cc: Check constructor.
- 2022-04-08 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/105154
- * include/std/expected (expected<void, E>::swap): Set
- _M_has_value to false for objects that previously had a value.
- * testsuite/20_util/expected/swap.cc: Fix test to check void
- specialization.
- 2022-04-08 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/105146
- * include/std/expected (bad_expected_access): Move constructor
- parameter.
- * testsuite/20_util/expected/bad.cc: New test.
- 2022-04-07 Hans-Peter Nilsson <hp@axis.com>
- * testsuite/20_util/expected/requirements.cc: Correct minimal-size
- test.
- 2022-04-02 Jakub Jelinek <jakub@redhat.com>
- PR libstdc++/105128
- * include/std/source_location (std::source_location::__impl): Move
- definition before using __builtin_ret_type.
- 2022-04-01 Jonathan Wakely <jwakely@redhat.com>
- * include/std/utility (unreachable): Define for C++23.
- * include/std/version (__cpp_lib_unreachable): Define.
- * src/c++11/debug.cc (__glibcxx_assert_fail): Check for valid
- arguments. Handle only the function being given.
- * testsuite/20_util/unreachable/1.cc: New test.
- * testsuite/20_util/unreachable/version.cc: New test.
- 2022-04-01 Jonathan Wakely <jwakely@redhat.com>
- * include/experimental/bits/fs_fwd.h (copy_file): Remove
- incorrect noexcept from declaration.
- * include/experimental/bits/fs_path.h (path::begin, path::end):
- Add noexcept to declarations, to match definitions.
- 2022-04-01 Timm Bäder <tbaeder@redhat.com>
- * include/bits/fs_ops.h: Fix filename in Doxygen comment.
- * include/experimental/bits/fs_ops.h: Likewise.
- 2022-03-31 Jonathan Wakely <jwakely@redhat.com>
- * libsupc++/new_opa.cc (aligned_alloc): Add comment.
- 2022-03-29 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/18_support/exception/38732.cc: Disable for C++23.
- * testsuite/18_support/headers/exception/synopsis.cc: Likewise.
- * testsuite/18_support/unexpected_handler.cc: Likewise.
- 2022-03-29 Jonathan Wakely <jwakely@redhat.com>
- * libsupc++/compare (_Strong_order) [!__cpp_using_enum]: Add
- static data members for _Fp_fmt enumerators.
- 2022-03-29 Jonathan Wakely <jwakely@redhat.com>
- * include/std/version (__cpp_lib_variant): Fix conditions to
- match <variant>.
- (__cpp_lib_expected): Fix condition to match <expected>.
- 2022-03-28 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/20_util/optional/monadic/and_then.cc: Fix typo.
- * testsuite/20_util/optional/monadic/transform.cc: Likewise.
- * testsuite/22_locale/codecvt/always_noconv/char/1.cc: Likewise.
- * testsuite/22_locale/codecvt/encoding/char/1.cc: Likewise.
- * testsuite/22_locale/codecvt/in/char/1.cc: Likewise.
- * testsuite/22_locale/codecvt/max_length/char/1.cc: Likewise.
- * testsuite/22_locale/codecvt/out/char/1.cc: Likewise.
- * testsuite/22_locale/codecvt/unshift/char/1.cc: Likewise.
- 2022-03-27 Jonathan Wakely <jwakely@redhat.com>
- * doc/doxygen/user.cfg.in: Add new header.
- * include/Makefile.am: Likewise.
- * include/Makefile.in: Regenerate.
- * include/precompiled/stdc++.h: Add new header.
- * include/std/version (__cpp_lib_expected): Define.
- * libsupc++/exception [__cplusplus > 202002] (unexpected)
- (unexpected_handler, set_unexpected): Do not declare for C++23.
- * include/std/expected: New file.
- * testsuite/20_util/expected/assign.cc: New test.
- * testsuite/20_util/expected/cons.cc: New test.
- * testsuite/20_util/expected/illformed_neg.cc: New test.
- * testsuite/20_util/expected/observers.cc: New test.
- * testsuite/20_util/expected/requirements.cc: New test.
- * testsuite/20_util/expected/swap.cc: New test.
- * testsuite/20_util/expected/synopsis.cc: New test.
- * testsuite/20_util/expected/unexpected.cc: New test.
- * testsuite/20_util/expected/version.cc: New test.
- 2022-03-25 Jonathan Wakely <jwakely@redhat.com>
- * include/std/bit (bit_cast, byteswap, endian): Add doxygen
- comments.
- 2022-03-23 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/105027
- * include/std/bit (bit_cast): Add constraints.
- * testsuite/26_numerics/bit/bit.cast/105027.cc: New test.
- 2022-03-23 Jonathan Wakely <jwakely@redhat.com>
- * include/std/version [!_GLIBCXX_HOSTED]
- (__cpp_lib_hardware_interference_size): Define for freestanding.
- (__cpp_lib_bit_cast): Likewise.
- (__cpp_lib_is_layout_compatible): Likewise.
- (__cpp_lib_is_pointer_interconvertible): Likewise.
- (__cpp_lib_adaptor_iterator_pair_constructor): Do not define for
- freestanding.
- (__cpp_lib_invoke_r): Likewise.
- (__cpp_lib_ios_noreplace): Likewise.
- (__cpp_lib_monadic_optional): Likewise.
- (__cpp_lib_move_only_function): Likewise.
- (__cpp_lib_spanstream): Likewise.
- (__cpp_lib_stacktrace): Likewise.
- (__cpp_lib_string_contains): Likewise.
- (__cpp_lib_string_resize_and_overwrite): Likewise.
- (__cpp_lib_to_underlying): Likewise.
- 2022-03-23 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/105021
- * include/bits/atomic_base.h [!_GLIBCXX_HOSTED]: Do not include
- <bits/atomic_wait.h> for freestanding.
- 2022-03-22 Hans-Peter Nilsson <hp@axis.com>
- * testsuite/20_util/from_chars/6.cc (test01) [FE_DOWNWARD]:
- Conditionalize call to fesetround.
- 2022-03-21 Jakub Jelinek <jakub@redhat.com>
- PR libstdc++/104990
- * include/bits/locale_facets_nonio.tcc (get): Don't check if do_get
- isn't overloaded if __clang__ is defined.
- 2022-03-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104242
- * include/std/any (any(T&&)): Revert change to constraints.
- * testsuite/20_util/any/cons/104242.cc: New test.
- 2022-03-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/92546
- * include/pstl/glue_algorithm_defs.h: Replace <functional> with
- <bits/stl_pair.h>.
- * include/pstl/utils.h: Replace <iterator> with <type_traits>.
- (__pstl::__internal::__except_handler): Use std::__terminate
- instead of std::terminate.
- * src/c++17/fs_path.cc: Include <array>.
- * testsuite/25_algorithms/adjacent_find/constexpr.cc: Include
- <functional>.
- * testsuite/25_algorithms/binary_search/constexpr.cc: Likewise.
- * testsuite/25_algorithms/clamp/constrained.cc: Likewise.
- * testsuite/25_algorithms/equal/constrained.cc: Likewise.
- * testsuite/25_algorithms/for_each/constrained.cc: Likewise.
- * testsuite/25_algorithms/includes/constrained.cc: Likewise.
- * testsuite/25_algorithms/is_heap/constexpr.cc: Likewise.
- * testsuite/25_algorithms/is_heap_until/constexpr.cc: Likewise.
- * testsuite/25_algorithms/is_permutation/constrained.cc: Include
- <iterator>.
- * testsuite/25_algorithms/is_sorted/constexpr.cc: Include
- <functional>.
- * testsuite/25_algorithms/is_sorted_until/constexpr.cc:
- Likewise.
- * testsuite/25_algorithms/lexicographical_compare/constexpr.cc:
- Likewise.
- * testsuite/25_algorithms/lexicographical_compare/constrained.cc:
- Likewise.
- * testsuite/25_algorithms/lexicographical_compare_three_way/1.cc:
- Include <array>.
- * testsuite/25_algorithms/lower_bound/constexpr.cc: Include
- <functional>.
- * testsuite/25_algorithms/max/constrained.cc: Likewise.
- * testsuite/25_algorithms/max_element/constrained.cc: Likewise.
- * testsuite/25_algorithms/min/constrained.cc: Likewise.
- * testsuite/25_algorithms/min_element/constrained.cc: Likewise.
- * testsuite/25_algorithms/minmax_element/constrained.cc:
- Likewise.
- * testsuite/25_algorithms/mismatch/constexpr.cc: Likewise.
- * testsuite/25_algorithms/move/93872.cc: Likewise.
- * testsuite/25_algorithms/move_backward/93872.cc: Include
- <iterator>.
- * testsuite/25_algorithms/nth_element/constexpr.cc: Include
- <functional>.
- * testsuite/25_algorithms/partial_sort/constexpr.cc: Likewise.
- * testsuite/25_algorithms/partial_sort_copy/constexpr.cc:
- Likewise.
- * testsuite/25_algorithms/search/constexpr.cc: Likewise.
- * testsuite/25_algorithms/search_n/constrained.cc: Likewise.
- * testsuite/25_algorithms/set_difference/constexpr.cc: Likewise.
- * testsuite/25_algorithms/set_difference/constrained.cc:
- Likewise.
- * testsuite/25_algorithms/set_intersection/constexpr.cc:
- Likewise.
- * testsuite/25_algorithms/set_intersection/constrained.cc:
- Likewise.
- * testsuite/25_algorithms/set_symmetric_difference/constexpr.cc:
- Likewise.
- * testsuite/25_algorithms/set_union/constexpr.cc: Likewise.
- * testsuite/25_algorithms/set_union/constrained.cc: Likewise.
- * testsuite/25_algorithms/sort/constexpr.cc: Likewise.
- * testsuite/25_algorithms/sort_heap/constexpr.cc: Likewise.
- * testsuite/25_algorithms/transform/constrained.cc: Likewise.
- * testsuite/25_algorithms/unique/constexpr.cc: Likewise.
- * testsuite/25_algorithms/unique/constrained.cc: Likewise.
- * testsuite/25_algorithms/unique_copy/constexpr.cc: Likewise.
- * testsuite/25_algorithms/upper_bound/constexpr.cc: Likewise.
- * testsuite/std/ranges/adaptors/elements.cc: Include <vector>.
- * testsuite/std/ranges/adaptors/lazy_split.cc: Likewise.
- * testsuite/std/ranges/adaptors/split.cc: Likewise.
- 2022-03-17 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/92546
- * include/bits/fs_path.h (path::make_preferred): Use
- handwritten loop instead of std::replace.
- 2022-03-17 Jonathan Wakely <jwakely@redhat.com>
- PR middle-end/104966
- * include/bits/locale_facets_nonio.tcc
- (__moneypunct_cache::_M_cache): Replace try-catch with RAII and
- make all string copies before any stores to *this.
- 2022-03-17 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/util/testsuite_character.h: Fix comment.
- 2022-03-16 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103407
- * config/abi/pre/gnu.ver: Make version for std::from_chars
- depend on HAVE_USELOCALE macro.
- * testsuite/util/testsuite_abi.cc (compare_symbols): Treat
- std::from_chars for floating-point types as undesignated if
- not found in the baseline symbols file.
- 2022-03-16 Jonathan Wakely <jwakely@redhat.com>
- * include/std/charconv (__cpp_lib_to_chars): Only define when
- both from_chars and to_chars are supported for floating-point
- types.
- (from_chars, to_chars): Adjust preprocessor conditions guarding
- declarations.
- * include/std/version (__cpp_lib_to_chars): Adjust condition to
- match <charconv> definition.
- * src/c++17/floating_from_chars.cc (from_chars_strtod): New
- function template.
- (from_chars): Simplify preprocessor checks and use
- from_chars_strtod when appropriate.
- 2022-03-14 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104875
- * src/c++11/codecvt.cc (read_utf8_code_point): Use char32_t to
- hold octets that will be left-shifted.
- 2022-03-10 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104870
- * src/c++17/floating_from_chars.cc: Check __SIZE_WIDTH__ >= 32
- before using fast_float.
- 2022-03-10 Detlef Vollmann <dv@vollmann.ch>
- PR libstdc++/104866
- * include/bits/this_thread_sleep.h: Fix order of #endif and
- closing brace of namespace.
- 2022-03-10 Jonathan Wakely <jwakely@redhat.com>
- * libsupc++/compare (_Strong_order::_S_fp_cmp) [__vax__]:
- Handle NaN.
- 2022-03-10 Jonathan Wakely <jwakely@redhat.com>
- * libsupc++/compare (_Strong_ordering::_S_fp_cmp) [__vax__]: Use
- <=> comparison.
- 2022-03-09 Patrick Palka <ppalka@redhat.com>
- PR libstdc++/104859
- * src/c++17/floating_to_chars.cc (__floating_to_chars_hex):
- Be explicit when narrowing the shifted effective_mantissa,
- since it may have an integer-class type.
- 2022-03-08 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/uses_allocator_args.h: Remove incorrect copyright
- notice.
- 2022-03-07 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104807
- * include/bits/c++config (__terminate, __glibcxx_assert_fail):
- Replace _GLIBCXX_VISIBILITY on function with visibility pragma.
- (__is_constant_evaluated): Add visibility pragma.
- 2022-03-07 Rasmus Villemoes <rasmus.villemoes@prevas.dk>
- * config/locale/vxworks/ctype_members.cc: Remove <iostream>
- include.
- 2022-03-05 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/c++config (__glibcxx_assert_fail): Add visibility
- attribute.
- (__terminate): Likewise.
- 2022-03-04 Jonathan Wakely <jwakely@redhat.com>
- * libsupc++/compare (strong_order::_S_fp_cmp): Move typedef
- inside #if condition.
- 2022-03-03 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104748
- * testsuite/std/ranges/adaptors/all.cc: Use non-debug vector for
- constexpr test.
- 2022-03-03 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/17_intro/names.cc (func): Undef on AIX.
- 2022-03-03 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/96526
- * libsupc++/compare (strong_order): Add missing support for
- floating-point types.
- * testsuite/18_support/comparisons/algorithms/strong_order_floats.cc:
- New test.
- 2022-03-01 Jonathan Wakely <jwakely@redhat.com>
- PR middle-end/103984
- * include/bits/regex_compiler.h (_BracketMatcher::_M_char): Use
- default member initializer.
- 2022-02-24 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104602
- * include/std/source_location (source_location::current): Use
- deduced type of __builtin_source_location().
- 2022-02-22 Patrick Palka <ppalka@redhat.com>
- * include/bits/ranges_base.h (__detail::__is_initializer_list):
- Define.
- (viewable_range): Adjust as per P2415R2.
- * include/bits/ranges_cmp.h (__cpp_lib_ranges): Adjust value.
- * include/std/ranges (owning_view): Define as per P2415R2.
- (enable_borrowed_range<owning_view>): Likewise.
- (views::__detail::__can_subrange): Replace with ...
- (views::__detail::__can_owning_view): ... this.
- (views::_All::_S_noexcept): Sync with operator().
- (views::_All::operator()): Use owning_view instead of subrange
- as per P2415R2.
- * include/std/version (__cpp_lib_ranges): Adjust value.
- * testsuite/std/ranges/adaptors/all.cc (test06): Adjust now that
- views::all uses owning_view instead of subrange.
- (test08): New test.
- * testsuite/std/ranges/adaptors/lazy_split.cc (test09): Adjust
- now that rvalue non-view non-borrowed ranges are viewable.
- * testsuite/std/ranges/adaptors/split.cc (test06): Likewise.
- 2022-02-17 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104559
- * doc/xml/manual/evolution.xml: Document deprecation.
- * doc/html/manual/api.html: Regenerate.
- * include/bits/stl_bvector.h (insert(const_iterator, const bool&)):
- Remove default argument.
- (insert(const_iterator)): New overload with deprecated attribute.
- * testsuite/23_containers/vector/bool/modifiers/insert/104559.cc:
- New test.
- 2022-02-17 Jonathan Wakely <jwakely@redhat.com>
- * python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Replace
- code that call cat->name() on std::error_category objects.
- Identify known categories by symbol name and use a hardcoded
- name. Print error code values as enumerators where appopriate.
- * testsuite/libstdc++-prettyprinters/cxx11.cc: Adjust expected
- name of custom category. Check io_errc and future_errc errors.
- 2022-02-15 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104542
- * include/bits/uses_allocator_args.h (make_obj_using_allocator)
- (uninitialized_construct_using_allocator): Add constexpr.
- * testsuite/20_util/uses_allocator/make_obj.cc: Check constexpr.
- * testsuite/20_util/uses_allocator/uninitialized_construct.cc: New test.
- 2022-02-14 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/100912
- * config/locale/gnu/c_locale.h (__convert_from_v): Use inline
- namespace for IEEE128 long double mode.
- * config/os/gnu-linux/ldbl-ieee128-extra.ver: Add new symbol
- version and export __gnu_cxx_ieee128::__convert_from_v.
- * include/bits/locale_facets_nonio.tcc (money_put::__do_put):
- Make __ibm128 overload use snprintf directly
- * testsuite/util/testsuite_abi.cc: Add new symbol version.
- Remove stable IEEE128/LDBL versions.
- 2022-02-14 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103891
- * include/bits/c++config (_GLIBCXX_HAVE_COND_TRIVIAL_SPECIAL_MEMBERS):
- Remove.
- * include/std/variant: Check feature test macros instead.
- * include/std/version: Likewise.
- 2022-02-14 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
- Fix typo.
- 2022-02-14 Jonathan Wakely <jwakely@redhat.com>
- * src/c++17/floating_to_chars.cc (FLOAT128_TO_CHARS): Depend on
- LONG_DOUBLE_ALT128_COMPAT instead of USE_FLOAT128.
- 2022-02-11 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/20_util/temporary_buffer.cc: Fix dg-warning target
- selector.
- 2022-02-11 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/20_util/monotonic_buffer_resource/allocate.cc:
- Ignore -Walloc-larger-than warning.
- * testsuite/20_util/unsynchronized_pool_resource/allocate.cc:
- Likewise.
- * testsuite/29_atomics/atomic/cons/user_pod.cc: Compile with -O1
- to avoid linker error for __atomic_is_lock_free.
- 2022-02-10 Thomas Rodgers <rodgert@appliantology.com>
- * include/bits/atomic_wait.h (__waiter_base::_S_do_spin,
- __waiter_base::_S_do_spin_v): Change memory order from relaxed
- to acquire.
- 2022-02-10 Jonathan Wakely <jwakely@redhat.com>
- * include/c_compatibility/stdatomic.h (atomic_fetch_xor): Add
- using-declaration.
- (atomic_fetch_xor_explicit): Likewise.
- * testsuite/29_atomics/headers/stdatomic.h/c_compat.cc: Check
- arithmetic and logical operations for atomic_int.
- 2022-02-10 Jonathan Wakely <jwakely@redhat.com>
- * src/filesystem/dir-common.h (_GLIBCXX_HAVE_DIRFD): Undefine
- when <dirent.h> is not available.
- (_GLIBCXX_HAVE_UNLINKAT): Likewise.
- 2022-02-09 Thomas Rodgers <rodgert@appliantology.com>
- PR libstdc++/104442
- * include/bits/atomic_wait.h (__waiter::_M_do_wait_v): Move spin
- loop inside do loop so that threads failing the wait, reload
- _M_ver.
- 2022-02-08 Jonathan Wakely <jwakely@redhat.com>
- * src/c++17/fs_dir.cc (_Dir(DIR*, const path&)): Change first
- parameter to _Dir_base&&.
- * src/filesystem/dir-common.h (_Dir_base(DIR*)): Remove.
- * src/filesystem/dir.cc (_Dir(DIR*, const path&)): Change first
- parameter to _Dir_base&&.
- 2022-02-08 Jonathan Wakely <jwakely@redhat.com>
- * acinclude.m4 (GLIBCXX_ENABLE_LOCK_POLICY): Add comment about
- checking for CAS on correct word size.
- 2022-02-08 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/experimental/filesystem/operations/create_directories.cc:
- Adjust expected results for Windows.
- 2022-02-08 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104161
- * src/c++17/fs_dir.cc (fs::recursive_directory_iterator::__erase):
- [i_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Refresh entry._M_type member,
- instead of checking for errno values indicating a directory.
- * src/c++17/fs_ops.cc (fs::remove_all(const path&)): Use similar
- logic to non-throwing overload.
- (fs::remove_all(const path&, error_code&)): Add comments.
- * src/filesystem/ops-common.h: Likewise.
- 2022-02-04 Jonathan Wakely <jwakely@redhat.com>
- * src/filesystem/dir-common.h (_Dir_base::openat): Change return
- type to use portable posix::DIR alias.
- 2022-02-04 Jonathan Wakely <jwakely@redhat.com>
- * include/c_compatibility/stdatomic.h [__clang__]: Use
- #include_next <stdatomic.h>.
- 2022-02-04 Jonathan Wakely <jwakely@redhat.com>
- * include/experimental/bits/fs_ops.h (fs::copy_file): Remove
- noexcept.
- (fs::create_directories): Likewise.
- (fs::remove_all): Likewise.
- * src/filesystem/ops.cc (fs::copy_file): Remove noexcept.
- (fs::create_directories): Likewise.
- (fs::remove_all): Likewise.
- 2022-02-04 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104161
- * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for dirfd
- and unlinkat.
- * config.h.in: Regenerate.
- * configure: Regenerate.
- * include/bits/fs_dir.h (recursive_directory_iterator): Declare
- remove_all overloads as friends.
- (recursive_directory_iterator::__erase): Declare new member
- function.
- * include/bits/fs_fwd.h (remove, remove_all): Declare.
- * src/c++17/fs_dir.cc (_Dir): Add filename_only parameter to
- constructor. Pass file descriptor argument to base constructor.
- (_Dir::dir_and_pathname, _Dir::open_subdir, _Dir::do_unlink)
- (_Dir::unlink, _Dir::rmdir): Define new member functions.
- (directory_iterator): Pass filename_only argument to _Dir
- constructor.
- (recursive_directory_iterator::_Dir_stack): Adjust constructor
- parameters to take a _Dir rvalue instead of creating one.
- (_Dir_stack::orig): Add data member for storing original path.
- (_Dir_stack::report_error): Define new member function.
- (__directory_iterator_nofollow): Move here from dir-common.h and
- fix value to be a power of two.
- (__directory_iterator_filename_only): Define new constant.
- (recursive_directory_iterator): Construct _Dir object and move
- into _M_dirs stack. Pass skip_permission_denied argument to first
- advance call.
- (recursive_directory_iterator::increment): Use _Dir::open_subdir.
- (recursive_directory_iterator::__erase): Define new member
- function.
- * src/c++17/fs_ops.cc (ErrorReporter, do_remove_all): Remove.
- (fs::remove_all): Use new recursive_directory_iterator::__erase
- member function.
- * src/filesystem/dir-common.h (_Dir_base): Add int parameter to
- constructor and use openat to implement nofollow semantics.
- (_Dir_base::fdcwd, _Dir_base::set_close_on_exec, _Dir_base::openat):
- Define new member functions.
- (__directory_iterator_nofollow): Move to fs_dir.cc.
- * src/filesystem/dir.cc (_Dir): Pass file descriptor argument to
- base constructor.
- (_Dir::dir_and_pathname, _Dir::open_subdir): Define new member
- functions.
- (recursive_directory_iterator::_Dir_stack): Adjust constructor
- parameters to take a _Dir rvalue instead of creating one.
- (recursive_directory_iterator): Check for new nofollow option.
- Construct _Dir object and move into _M_dirs stack. Pass
- skip_permission_denied argument to first advance call.
- (recursive_directory_iterator::increment): Use _Dir::open_subdir.
- * src/filesystem/ops.cc (fs::remove_all): Use C++17 remove_all.
- 2022-02-04 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/allocator.h: Qualify std::allocator_traits in
- deprecated warnings.
- * libsupc++/exception (uncaught_exception): Add suggestion to
- deprecated warning.
- 2022-02-02 Jonathan Wakely <jwakely@redhat.com>
- * src/c++17/fs_dir.cc (fs::recursive_directory_iterator::pop):
- Add [[maybe_unused]] attribute.
- * src/filesystem/dir.cc (fs::recursive_directory_iterator::pop):
- Likewise.
- 2022-02-02 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/23_containers/multiset/operators/cmp_c++20.cc: Use
- custom comparison function for multiset.
- * testsuite/23_containers/set/operators/cmp_c++20.cc: Use custom
- comparison function for set.
- 2022-02-02 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/boost_concept_check.h (_OutputIteratorConcept):
- Change member function to data member of function pointer type.
- 2022-02-02 Martin Sebor <msebor@redhat.com>
- PR libstdc++/101831
- * include/std/array (begin): Declare const member function attribute
- const.
- (end, rbegin, rend, size, max_size, empty, data): Same.
- * testsuite/23_containers/array/capacity/empty.cc: Add test cases.
- * testsuite/23_containers/array/capacity/max_size.cc: Same.
- * testsuite/23_containers/array/capacity/size.cc: Same.
- * testsuite/23_containers/array/iterators/begin_end.cc: New test.
- 2022-02-02 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/27_io/filesystem/iterators/error_reporting.cc: Use
- autoconf macro to check whether d_type is present.
- * testsuite/experimental/filesystem/iterators/error_reporting.cc:
- Likewise.
- 2022-02-01 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/27_io/filesystem/iterators/97731.cc: New test.
- * testsuite/27_io/filesystem/iterators/recursive_directory_iterator.cc:
- Check follow_directory_symlink option.
- * testsuite/experimental/filesystem/iterators/recursive_directory_iterator.cc:
- Likewise.
- 2022-02-01 Jonathan Wakely <jwakely@redhat.com>
- * src/c++17/fs_dir.cc (recursive_directory_iterator::increment):
- Reset state to past-the-end iterator on error.
- (fs::recursive_directory_iterator::pop(error_code&)): Likewise.
- (fs::recursive_directory_iterator::pop()): Check _M_dirs before
- it might get reset.
- * src/filesystem/dir.cc (recursive_directory_iterator): Likewise,
- for the TS implementation.
- * testsuite/27_io/filesystem/iterators/error_reporting.cc: New test.
- * testsuite/experimental/filesystem/iterators/error_reporting.cc: New test.
- 2022-02-01 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/fs_fwd.h (filesystem::perms): Fix comment.
- 2022-02-01 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104301
- * acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Print different messages
- for stdio_pure and stdio_posix options.
- * configure: Regenerate.
- 2022-02-01 Thomas Rodgers <rodgert@appliantology.com>
- * include/bits/atomic_wait.h: Change memory order from
- Acquire/Release with relaxed loads to SeqCst+Release for
- accesses to the waiter's count.
- 2022-01-31 Martin Liska <mliska@suse.cz>
- * acinclude.m4: Detect *_ld_is_mold and use it.
- * configure: Regenerate.
- 2022-01-30 Hans-Peter Nilsson <hp@axis.com>
- * testsuite/27_io/basic_istream/get/char/lwg3464.cc: Don't run on
- simulator targets.
- * testsuite/27_io/basic_istream/get/wchar_t/lwg3464.cc: Likewise.
- 2022-01-27 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/100516
- * include/bits/deque.tcc (_M_range_initialize<ForwardIterator>):
- Add __builtin_unreachable to loop.
- * testsuite/23_containers/deque/100516.cc: New test.
- 2022-01-27 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/ranges_base.h (ranges::advance): Avoid signed
- overflow. Do nothing if already equal to desired result.
- * testsuite/24_iterators/range_operations/advance_overflow.cc:
- New test.
- 2022-01-27 Martin Liska <mliska@suse.cz>
- PR libstdc++/104259
- * acinclude.m4: Fix typo.
- * configure: Regenerate.
- 2022-01-25 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104019
- * include/bits/istream.tcc (basic_istream::sentry): Add braces
- around try-block.
- * include/bits/shared_ptr_base.h (_Sp_counted_array_base::_M_init):
- Add pragmas to disable bogus warnings from PR 61596.
- 2022-01-25 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104217
- * src/c++17/fs_ops.cc (_GNU_SOURCE): Define.
- * src/filesystem/dir.cc (_GNU_SOURCE): Define.
- * src/filesystem/ops.cc (_GNU_SOURCE): Define.
- 2022-01-25 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104161
- * acinclude.m4 (GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for
- fdopendir.
- * config.h.in: Regenerate.
- * configure: Regenerate.
- * src/c++17/fs_dir.cc (_Dir): Add nofollow flag to constructor
- and pass it to base class constructor.
- (directory_iterator): Pass nofollow flag to _Dir constructor.
- (fs::recursive_directory_iterator::increment): Likewise.
- * src/c++17/fs_ops.cc (do_remove_all): Use nofollow option for
- directory_iterator constructor. Move error check outside loop.
- * src/filesystem/dir-common.h (_Dir_base): Add nofollow flag to
- constructor and when it's set use ::open with O_NOFOLLOW and
- O_DIRECTORY.
- * src/filesystem/dir.cc (_Dir): Add nofollow flag to constructor
- and pass it to base class constructor.
- (directory_iterator): Pass nofollow flag to _Dir constructor.
- (fs::recursive_directory_iterator::increment): Likewise.
- * src/filesystem/ops.cc (remove_all): Use nofollow option for
- directory_iterator constructor. Move error check outside loop.
- 2022-01-23 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104032
- * include/std/spanstream (basic_spanbuf(basic_spanbuf&&)): Use
- mem-initializer for _M_buf.
- (basic_spanbuf::Operator=(basic_spanbuf&&)): Fix ill-formed
- member access.
- * testsuite/27_io/spanstream/2.cc: New test.
- 2022-01-23 Jonathan Wakely <jwakely@redhat.com>
- * src/c++17/floating_from_chars.cc (USE_STRTOD_FOR_FROM_CHARS):
- Define macro for case where std::from_chars is implemented in
- terms of strtod, strtof or strtold.
- (buffer_resource, valid_fmt, find_end_of_float, pattern)
- (from_chars_impl, make_result, reserve_string): Do not define
- unless USE_STRTOD_FOR_FROM_CHARS is defined.
- (from_chars): Define when at least one of USE_LIB_FAST_FLOAT and
- USE_STRTOD_FOR_FROM_CHARS is defined, instead of
- _GLIBCXX_HAVE_USELOCALE. Use fast_float for long double when it
- is binary64.
- 2022-01-23 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104174
- * include/bits/hashtable_policy.h (_Map_base): Add partial
- specialization for maps with const key types.
- * testsuite/23_containers/unordered_map/104174.cc: New test.
- 2022-01-23 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104019
- * include/bits/shared_ptr_base.h (_Sp_counted_base<>::_M_release):
- Set members to zero without type punning.
- 2022-01-21 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/20_util/shared_ptr/cons/array.cc: Fix comment.
- 2022-01-21 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/87193
- PR libstdc++/104019
- * include/bits/alloc_traits.h (__cpp_lib_allocator_traits_is_always_equal):
- Define as type long.
- * include/bits/allocator.h (__cpp_lib_incomplete_container_elements):
- Likewise.
- * include/bits/basic_string.h (__cpp_lib_string_udls): Likewise.
- * include/bits/chrono.h (__cpp_lib_chrono): Likewise.
- (__cpp_lib_chrono_udls): Likewise.
- * include/bits/move.h (__cpp_lib_addressof_constexpr): Likewise.
- * include/bits/node_handle.h (__cpp_lib_node_extract): Likewise.
- * include/bits/range_access.h (__cpp_lib_nonmember_container_access):
- Likewise.
- * include/bits/shared_ptr.h (__cpp_lib_enable_shared_from_this):
- Likewise.
- * include/bits/stl_algo.h (__cpp_lib_clamp): Likewise.
- (__cpp_lib_sample): Likewise.
- * include/bits/stl_algobase.h (__cpp_lib_robust_nonmodifying_seq_ops):
- Likewise.
- * include/bits/stl_function.h (__cpp_lib_transparent_operators):
- Likewise.
- * include/bits/stl_iterator.h (__cpp_lib_make_reverse_iterator):
- Likewise.
- * include/bits/stl_map.h (__cpp_lib_map_try_emplace):
- Likewise.
- * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup):
- Likewise.
- * include/bits/unique_ptr.h (__cpp_lib_make_unique):
- Likewise.
- * include/bits/unordered_map.h (__cpp_lib_unordered_map_try_emplace):
- Likewise.
- * include/c_global/cmath (__cpp_lib_hypot): Likewise.
- * include/c_global/cstddef (__cpp_lib_byte): Likewise.
- * include/std/atomic (__cpp_lib_atomic_is_always_lock_free):
- Likewise.
- * include/std/complex (__cpp_lib_complex_udls): Likewise.
- * include/std/filesystem (__cpp_lib_filesystem): Likewise.
- * include/std/functional (__cpp_lib_not_fn): Likewise.
- (__cpp_lib_boyer_moore_searcher): Likewise.
- * include/std/iomanip (__cpp_lib_quoted_string_io): Likewise.
- * include/std/mutex (__cpp_lib_scoped_lock): Likewise.
- * include/std/numeric (__cpp_lib_gcd_lcm): Likewise.
- (__cpp_lib_gcd, __cpp_lib_lcm): Likewise.
- * include/std/tuple (__cpp_lib_apply): Likewise.
- (__cpp_lib_make_from_tuple): Likewise.
- * include/std/type_traits (__cpp_lib_integral_constant_callable)
- (__cpp_lib_bool_constant, __cpp_lib_logical_traits)
- (__cpp_lib_is_null_pointer, __cpp_lib_transformation_trait_aliases)
- (__cpp_lib_result_of_sfinae, __cpp_lib_void_t)
- (__cpp_lib_is_swappable, __cpp_lib_is_invocable)
- (__cpp_lib_has_unique_object_representations)
- (__cpp_lib_is_aggregate): Likewise.
- * include/std/version: Likewise.
- * libsupc++/new (__cpp_lib_launder): Likewise.
- 2022-01-21 Jonathan Wakely <jwakely@redhat.com>
- * include/std/version (__cpp_lib_shared_ptr_arrays): Fix
- condition for C++17 definition.
- 2022-01-21 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/shared_ptr_atomic.h (_Sp_atomic::_Atomic_count):
- Add constexpr.
- (_Sp_atomic::_M_ptr): Add default member-initializer.
- * testsuite/20_util/shared_ptr/atomic/atomic_shared_ptr.cc:
- Check constant initialization.
- * testsuite/20_util/weak_ptr/atomic_weak_ptr.cc: Likewise.
- 2022-01-20 Jonathan Wakely <jwakely@redhat.com>
- * src/c++11/cxx11-ios_failure.cc (__constinit): Define as
- equivalent attribute for Clang.
- * src/c++11/future.cc (__constinit): Likewise.
- * src/c++11/system_error.cc (__constinit): Likewise.
- * src/c++17/memory_resource.cc (__constinit): Likewise.
- 2022-01-20 Jonathan Wakely <jwakely@redhat.com>
- * scripts/testsuite_flags.in: Only add src/filesystem/.libs and
- src/libbacktrace/.libs to LDFLAGS if those directories exist.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- * configure.ac (GLIBCXX_ENABLE_DEBUG_FLAGS): Remove -gdwarf-4
- from default flags.
- * configure: Regenerate.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104123
- * testsuite/29_atomics/headers/stdatomic.h/c_compat.cc: Include
- <stddef.h>.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- * scripts/testsuite_flags.in: Add src/libbacktrace/.libs to
- linker search paths.
- * src/Makefile.am: Fix src/debug/libbacktrace build.
- * src/Makefile.in: Regenerate.
- * src/libbacktrace/Makefile.am: Use per-library CPPFLAGS
- variable. Use symlinks for the source files.
- * src/libbacktrace/Makefile.in: Regenerate.
- 2022-01-19 Matthias Kretz <m.kretz@gsi.de>
- * include/experimental/bits/simd.h (__floating_point_flags): Do
- not rely on math_errhandling to expand to a constant expression.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- * doc/xml/manual/evolution.xml: Document deprecations.
- * doc/xml/manual/status_cxx2017.xml: Update status.
- * doc/html/*: Regenerate.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/stl_tempbuf.h (get_temporary_buffer): Change
- _GLIBCXX14_DEPRECATED to _GLIBCXX17_DEPRECATED.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/stl_pair.h (_PCC::_DeprConsPair): Remove unused
- function.
- 2022-01-19 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104101
- * include/bits/shared_ptr_atomic.h (_Sp_atomic::_Atomic_count::lock):
- Only use __thread_relax if __cpp_lib_atomic_wait is defined.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104099
- * include/bits/basic_string.h (basic_string(nullptr_t)): Only
- define for C++23.
- (operator=(nullptr_t)): Likewise.
- * include/bits/cow_string.h: Likewise.
- * include/std/string_view (basic_string_view(nullptr_t)):
- Likewise.
- * testsuite/21_strings/basic_string/cons/char/nullptr.cc: Adjust
- expected error. Add examples that become ill-formed in C++23.
- * testsuite/21_strings/basic_string_view/cons/char/nonnull.cc:
- Adjust expected errors.
- * testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc:
- Likewise.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104098
- * include/bits/stl_iterator.h (reverse_iterator): Check
- __cpp_lib_concepts instead of __cplusplus.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/101124
- * include/bits/stl_pair.h (pair): Adjust constraints on
- deprecated constructors accepting literal zero as null pointer
- constant. Improve wording of deprecated attribute.
- * testsuite/20_util/pair/cons/99957.cc: Check that deprecated
- constructors do not cause ambiguities for copyable types.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/stl_function.h (ptr_fun): Fix suggestion for
- non-deprecated alternative.
- 2022-01-18 Tom Honermann <tom@honermann.net>
- * acinclude.m4: Define config macros if uchar.h provides
- c8rtomb() and mbrtoc8().
- * config.h.in: Regenerate.
- * configure: Regenerate.
- * include/c_compatibility/uchar.h (c8rtomb, mbrtoc8): Define.
- * include/c_global/cuchar (c8rtomb, mbrtoc8): Likewise.
- * include/c_std/cuchar (c8rtomb, mbrtoc8): Likewise.
- * testsuite/21_strings/headers/cuchar/functions_std_cxx20.cc:
- New test.
- * testsuite/21_strings/headers/cuchar/functions_std_fchar8_t.cc:
- New test.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- * include/Makefile.am: Install new header.
- * include/Makefile.in: Regenerate.
- * include/c_compatibility/stdatomic.h: New file.
- * testsuite/29_atomics/headers/stdatomic.h/c_compat.cc: New test.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104080
- * src/c++17/fast_float/LOCAL_PATCHES: Update.
- * src/c++17/fast_float/fast_float.h (FASTFLOAT_IS_BIG_ENDIAN):
- Define in terms of __BYTE_ORDER__.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/104080
- * src/c++17/fast_float/LOCAL_PATCHES: UPDATE.
- * src/c++17/fast_float/fast_float.h (round): Use explicit
- template argument list for std::min.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- * doc/xml/manual/status_cxx2017.xml: Update C++17 status.
- * doc/xml/manual/status_cxx2020.xml: Use 12.1 instead of 12 for
- upcoming release.
- * doc/html/manual/status.html: Regenerate.
- 2022-01-18 Jonathan Wakely <jwakely@redhat.com>
- * acinclude.m4 (GLIBCXX_ENABLE_FULLY_DYNAMIC_STRING): Improve
- comments.
- * configure: Regenerate.
- 2022-01-17 Patrick Palka <ppalka@redhat.com>
- * src/c++17/floating_from_chars.cc: (USE_LIB_FAST_FLOAT):
- Conditionally define, and use it to conditionally include
- fast_float.
- (from_chars): Use fast_float for float and double when
- USE_LIB_FAST_FLOAT.
- 2022-01-17 Patrick Palka <ppalka@redhat.com>
- * src/c++17/fast_float/LOCAL_PATCHES: Update.
- * src/c++17/fast_float/fast_float.h (from_chars_advanced): In
- case of over/underflow, return errc::result_out_of_range and don't
- modify 'value'.
- 2022-01-17 Patrick Palka <ppalka@redhat.com>
- * src/c++17/fast_float/LOCAL_PATCHES: Update.
- * src/c++17/fast_float/fast_float.h: Apply local modifications.
- 2022-01-17 Patrick Palka <ppalka@redhat.com>
- * src/c++17/fast_float/LOCAL_PATCHES: New file.
- * src/c++17/fast_float/MERGE: New file.
- * src/c++17/fast_float/README.md: New file, copied from the
- fast_float repository.
- * src/c++17/fast_float/fast_float.h: New file, an amalgamation
- of the fast_float library.
- 2022-01-17 Patrick Palka <ppalka@redhat.com>
- * src/c++17/floating_from_chars.cc: Include <bit>.
- (ascii_to_hexit, starts_with_ci): Conditionally define.
- (__floating_from_chars_hex): Conditionally define.
- (from_chars): Use __floating_from_chars_hex for
- chars_format::hex parsing of binary32/64 float/double.
- (testsuite/20_util/from_chars/7.cc): New test.
- * testsuite/20_util/from_chars/7.cc: New file.
- 2022-01-17 Jonathan Wakely <jwakely@redhat.com>
- * acinclude.m4 (GLIBCXX_ENABLE_BACKTRACE): New macro.
- * configure.ac: Use GLIBCXX_ENABLE_BACKTRACE.
- * include/Makefile.am: Add new header.
- * include/Makefile.in: Regenerate.
- * include/std/stacktrace: New header.
- * include/std/version (__cpp_lib_stacktrace): Define.
- * Makefile.in: Regenerate.
- * config.h.in: Regenerate.
- * configure: Regenerate.
- * doc/Makefile.in: Regenerate.
- * libsupc++/Makefile.in: Regenerate.
- * po/Makefile.in: Regenerate.
- * python/Makefile.in: Regenerate.
- * src/Makefile.am: Regenerate.
- * src/Makefile.in: Regenerate.
- * src/c++11/Makefile.in: Regenerate.
- * src/c++17/Makefile.in: Regenerate.
- * src/c++20/Makefile.in: Regenerate.
- * src/c++98/Makefile.in: Regenerate.
- * src/filesystem/Makefile.in: Regenerate.
- * testsuite/Makefile.in: Regenerate.
- * src/libbacktrace/Makefile.am: New file.
- * src/libbacktrace/Makefile.in: New file.
- * src/libbacktrace/backtrace-rename.h: New file.
- * src/libbacktrace/backtrace-supported.h.in: New file.
- * src/libbacktrace/config.h.in: New file.
- * testsuite/lib/libstdc++.exp (check_effective_target_stacktrace):
- New proc.
- * testsuite/20_util/stacktrace/entry.cc: New test.
- * testsuite/20_util/stacktrace/synopsis.cc: New test.
- * testsuite/20_util/stacktrace/version.cc: New test.
- 2022-01-17 Jonathan Wakely <jwakely@redhat.com>
- * doc/xml/manual/status_cxx2020.xml: Use final C++20 option
- names.
- * doc/html/manual/status.html: Regenerate.
- 2022-01-17 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103650
- * include/Makefile.am: Rename LT_OBJDIR and STDC_HEADERS.
- * include/Makefile.in: Regenerate.
- * testsuite/17_intro/headers/c++1998/103650.cc: New test.
- 2022-01-17 Matthias Kretz <m.kretz@gsi.de>
- * include/experimental/bits/simd.h (__floating_point_flags): Do
- not rely on the presence of the math_errhandling macro.
- 2022-01-17 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/shared_ptr_atomic.h (_Sp_atomic): Add typename
- to qualified-id for dependent type.
- 2022-01-17 Jonathan Wakely <jwakely@redhat.com>
- * doc/xml/manual/status_cxx2020.xml: Update.
- * doc/html/manual/status.html: Regenerate.
- 2022-01-17 Jonathan Wakely <jwakely@redhat.com>
- Thomas Rodgers <trodgers@redhat.com>
- * include/bits/shared_ptr_atomic.h (__cpp_lib_atomic_shared_ptr):
- New macro.
- (_Sp_atomic): New class template.
- (atomic<shared_ptr<T>>, atomic<weak_ptr<T>>): New partial
- specializations.
- * include/bits/shared_ptr_base.h (__shared_count, __weak_count)
- (__shared_ptr, __weak_ptr): Declare _Sp_atomic as a friend.
- * include/std/version (__cpp_lib_atomic_shared_ptr): New macro.
- * testsuite/20_util/shared_ptr/atomic/atomic_shared_ptr.cc: New
- test.
- * testsuite/20_util/weak_ptr/atomic_weak_ptr.cc: New test.
- 2022-01-15 Matthias Kretz <m.kretz@gsi.de>
- * include/experimental/bits/simd.h: Move feature detection bools
- and add __have_avx512bitalg, __have_avx512vbmi2,
- __have_avx512vbmi, __have_avx512ifma, __have_avx512cd,
- __have_avx512vnni, __have_avx512vpopcntdq.
- (__detail::__machine_flags): New function which returns a unique
- uint64 depending on relevant -m and -f flags.
- (__detail::__odr_helper): New type alias for either an anonymous
- type or a type specialized with the __machine_flags number.
- (_SimdIntOperators): Change template parameters from _Impl to
- _Tp, _Abi because _Impl now has an __odr_helper parameter which
- may be _OdrEnforcer from the anonymous namespace, which makes
- for a bad base class.
- (many): Either add __odr_helper template parameter or mark as
- always_inline.
- * include/experimental/bits/simd_detail.h: Add defines for
- AVX512BITALG, AVX512VBMI2, AVX512VBMI, AVX512IFMA, AVX512CD,
- AVX512VNNI, AVX512VPOPCNTDQ, and AVX512VP2INTERSECT.
- * include/experimental/bits/simd_builtin.h: Add __odr_helper
- template parameter or mark as always_inline.
- * include/experimental/bits/simd_fixed_size.h: Ditto.
- * include/experimental/bits/simd_math.h: Ditto.
- * include/experimental/bits/simd_scalar.h: Ditto.
- * include/experimental/bits/simd_neon.h: Add __odr_helper
- template parameter.
- * include/experimental/bits/simd_ppc.h: Ditto.
- * include/experimental/bits/simd_x86.h: Ditto.
- 2022-01-14 Uroš Bizjak <ubizjak@gmail.com>
- * testsuite/22_locale/numpunct/members/char/3.cc:
- Require pt_PT locale instead of nl_NL.
- (test02): Use pt_PT locale instead of nl_NL.
- 2022-01-14 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/91260
- PR libstdc++/91383
- PR libstdc++/95065
- * include/backward/binders.h (bind1st, bind2nd): Add deprecated
- attribute.
- * include/bits/refwrap.h (_Maybe_unary_or_binary_function):
- Disable deprecated warnings for base classes.
- (_Reference_wrapper_base): Likewise.
- * include/bits/shared_ptr_base.h (_Sp_owner_less): Likewise.
- * include/bits/stl_bvector.h (_Bit_iterator_base): Likewise.
- * include/bits/stl_function.h (unary_function, binary_function):
- Add deprecated attribute.
- (unary_negate, not1, binary_negate, not2, ptr_fun)
- (pointer_to_unary_function, pointer_to_binary_function)
- (mem_fun_t, const_mem_fun_t, mem_fun_ref_t, const_mem_fun_ref_t)
- (mem_fun1_t, const_mem_fun1_t, mem_fun_ref1_t)
- (const_mem_fun1_ref_t, mem_fun, mem_fun_ref): Add deprecated
- attributes.
- * include/bits/stl_iterator.h: Disable deprecated warnings for
- std::iterator base classes.
- * include/bits/stl_iterator_base_types.h (iterator): Add
- deprecated attribute.
- * include/bits/stl_map.h (map::value_compare): Disable
- deprecated warnings for base class.
- * include/bits/stl_multimap.h (multimap::value_compare):
- Likewise.
- * include/bits/stl_raw_storage_iter.h (raw_storage_iterator):
- Add deprecated attribute.
- * include/bits/stl_tempbuf.h (get_temporary_buffer): Likewise.
- * include/bits/stream_iterator.h: Disable deprecated warnings.
- * include/bits/streambuf_iterator.h: Likewise.
- * include/ext/bitmap_allocator.h: Remove unary_function base
- classes.
- * include/ext/functional: Disable deprecated warnings.
- * include/ext/rope: Likewise.
- * include/ext/throw_allocator.h: Likewise.
- * include/std/type_traits (result_of): Add deprecated attribute.
- * include/tr1/functional: Disable deprecated warnings.
- * include/tr1/functional_hash.h: Likewise.
- * testsuite/20_util/function_objects/binders/1.cc: Add
- -Wno-disable-deprecations.
- * testsuite/20_util/function_objects/binders/3113.cc: Likewise.
- * testsuite/20_util/function_objects/constexpr.cc: Add
- dg-warning.
- * testsuite/20_util/raw_storage_iterator/base.cc: Likewise.
- * testsuite/20_util/raw_storage_iterator/dr2127.cc: Likewise.
- * testsuite/20_util/raw_storage_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/20_util/raw_storage_iterator/requirements/explicit_instantiation/1.cc:
- Likewise.
- * testsuite/20_util/raw_storage_iterator/requirements/typedefs.cc:
- Likewise.
- * testsuite/20_util/reference_wrapper/24803.cc:
- Likewise.
- * testsuite/20_util/reference_wrapper/typedefs.cc: Enable for
- C++20 and check for absence of nested types.
- * testsuite/20_util/shared_ptr/comparison/less.cc: Remove
- std::binary_function base class.
- * testsuite/20_util/temporary_buffer.cc: Add dg-warning.
- * testsuite/21_strings/basic_string/cons/char/69092.cc: Remove
- std::iterator base class.
- * testsuite/24_iterators/back_insert_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/front_insert_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/insert_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/istream_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/istreambuf_iterator/92285.cc:
- Likewise.
- * testsuite/24_iterators/istreambuf_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/ostream_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/ostreambuf_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/24_iterators/reverse_iterator/requirements/base_classes.cc:
- Likewise.
- * testsuite/25_algorithms/copy/34595.cc:
- Likewise.
- * testsuite/25_algorithms/minmax/3.cc: Remove std::binary_function
- base class.
- * testsuite/25_algorithms/all_of/requirements/explicit_instantiation/2.cc:
- Disable deprecated warnings.
- * testsuite/25_algorithms/all_of/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/any_of/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/any_of/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/copy_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/copy_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/count_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/count_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/find_end/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/find_end/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/find_first_of/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/find_first_of/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/find_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/find_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/find_if_not/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/find_if_not/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/for_each/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/for_each/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/is_partitioned/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/is_partitioned/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/is_permutation/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/is_permutation/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/none_of/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/none_of/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/partition/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/partition/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/partition_copy/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/partition_copy/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/partition_point/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/partition_point/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/random_shuffle/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/remove_copy_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/remove_copy_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/remove_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/remove_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/replace_copy_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/replace_copy_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/replace_if/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/replace_if/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/search/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/search/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/search_n/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/search_n/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/stable_partition/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/stable_partition/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/25_algorithms/transform/requirements/explicit_instantiation/2.cc:
- Likewise.
- * testsuite/25_algorithms/transform/requirements/explicit_instantiation/pod.cc:
- Likewise.
- * testsuite/27_io/basic_filebuf/underflow/wchar_t/9178.cc: Add
- dg-warning.
- * testsuite/ext/pb_ds/example/priority_queue_erase_if.cc:
- Likewise.
- * testsuite/ext/pb_ds/example/priority_queue_split_join.cc:
- Likewise.
- * testsuite/tr1/3_function_objects/reference_wrapper/typedefs.cc:
- Disable deprecated warnings.
- * testsuite/tr1/6_containers/hash/requirements/base_classes.cc:
- Likewise.
- * testsuite/util/regression/trait/erase_if_fn.hpp: Remove
- std::unary_function base classes.
- * testsuite/util/testsuite_iterators.h (output_iterator_wrapper):
- Remove std::iterator base classes.
- 2022-01-14 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/shared_ptr.h (__cpp_lib_shared_ptr_weak_type):
- Correct type of macro value.
- (shared_ptr): Add additional friend declarations.
- (make_shared, allocate_shared): Constrain existing overloads and
- remove static_assert.
- * include/bits/shared_ptr_base.h (__cpp_lib_smart_ptr_for_overwrite):
- New macro.
- (_Sp_counted_ptr_inplace<T, Alloc, Lp>): New partial
- specialization for use with make_shared_for_overwrite.
- (__cpp_lib_shared_ptr_arrays): Update value for C++20.
- (_Sp_counted_array_base): New class template.
- (_Sp_counted_array): New class template.
- (__shared_count(_Tp*&, const _Sp_counted_array_base&, _Init)):
- New constructor for allocating shared arrays.
- (__shared_ptr(const _Sp_counted_array_base&, _Init)): Likewise.
- * include/std/version (__cpp_lib_shared_ptr_weak_type): Correct
- type.
- (__cpp_lib_shared_ptr_arrays): Update value for C++20.
- (__cpp_lib_smart_ptr_for_overwrite): New macro.
- * testsuite/20_util/shared_ptr/creation/99006.cc: Adjust
- expected errors.
- * testsuite/20_util/shared_ptr/creation/array.cc: New test.
- * testsuite/20_util/shared_ptr/creation/overwrite.cc: New test.
- * testsuite/20_util/shared_ptr/creation/version.cc: New test.
- * testsuite/20_util/unique_ptr/creation/for_overwrite.cc: Check
- feature test macro. Test non-trivial default-initialization.
- 2022-01-14 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/stl_construct.h (_Construct, _Construct_novalue):
- Also cast away cv-qualifiers when converting pointer to void.
- * testsuite/20_util/allocator/void.cc: Test construct function
- with cv-qualified types.
- 2022-01-14 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103992
- * include/bits/stl_iterator.h (common_iterator): Use
- std::construct_at instead of placement new.
- * testsuite/24_iterators/common_iterator/1.cc: Check copy
- construction is usable in constant expressions.
- 2022-01-14 Jonathan Wakely <jwakely@redhat.com>
- * doc/xml/manual/status_cxx2011.xml: Document new tokens
- accepted by std::random_device constructor.
- * doc/html/manual/status.html: Regenerate.
- 2022-01-12 Patrick Palka <ppalka@redhat.com>
- * testsuite/20_util/to_chars/103955.cc: Add explicit dg-do
- directive.
- 2022-01-12 Patrick Palka <ppalka@redhat.com>
- PR libstdc++/103955
- * src/c++17/floating_to_chars.cc (__floating_to_chars_hex):
- Track the excess precision separately from the effective
- precision. Avoid overflow in bounds check by splitting it into
- two checks.
- (__floating_to_chars_precision): Avoid overflow in bounds checks
- similarly.
- * testsuite/20_util/to_chars/103955.cc: New test.
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103726
- * include/Makefile.am: Install <source_location> for
- freestanding.
- * include/Makefile.in: Regenerate.
- * include/std/version (__cpp_lib_source_location): Define for
- freestanding.
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- * include/std/ranges (ranges::lazy_split_view::_InnerIter::end()):
- Add neoxcept (LWG 3593).
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- * include/std/ranges (ranges::__detail::__box): Add constexpr to
- assignment operators (LWG 3572).
- * testsuite/std/ranges/adaptors/filter.cc: Check assignment of a
- view that uses copyable-box.
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103726
- * include/Makefile.am: Install <coroutine> for freestanding.
- * include/Makefile.in: Regenerate.
- * include/std/coroutine: Adjust headers and preprocessor
- conditions.
- (__coroutine_traits_impl): Use concepts when available.
- [_GLIBCXX_HOSTED] (hash<coroutine_handle>): Define.
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- * include/std/ostream (operator<<(basic_ostream&, charT)):
- Use unformatted input if no padding is needed.
- (operator<<(basic_ostream<char>&, char)): Likewise.
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103891
- * include/bits/c++config (_GLIBCXX_HAVE_COND_TRIVIAL_SPECIAL_MEMBERS):
- Define.
- * include/std/variant (__cpp_lib_variant): Only define C++20
- value when the compiler is known to support conditionally
- trivial destructors.
- * include/std/version (__cpp_lib_variant): Likewise.
- 2022-01-11 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/stl_iterator.h (common_iterator): Add constexpr
- to all member functions (LWG 3574).
- * testsuite/24_iterators/common_iterator/1.cc: Evaluate some
- tests as constant expressions.
- * testsuite/24_iterators/common_iterator/2.cc: Likewise.
- 2022-01-10 Jakub Jelinek <jakub@redhat.com>
- PR libstdc++/77760
- * include/bits/locale_facets_nonio.h (__time_get_state): New struct.
- (time_get::_M_extract_via_format): Declare new method with
- __time_get_state& as an extra argument.
- * include/bits/locale_facets_nonio.tcc (_M_extract_via_format): Add
- __state argument, set various fields in it while parsing. Handle %j,
- %U, %w and %W, fix up handling of %y, %Y and %C, don't adjust tm_hour
- for %p immediately. Add a wrapper around the method without the
- __state argument for backwards compatibility.
- (_M_extract_num): Remove all __len == 4 special cases.
- (time_get::do_get_time, time_get::do_get_date, time_get::do_get): Zero
- initialize __state, pass it to _M_extract_via_format and finalize it
- at the end.
- (do_get_year): For 1-2 digit parsed years, map 0-68 to 2000-2068,
- 69-99 to 1969-1999. For 3-4 digit parsed years use that as year.
- (get): If do_get isn't overloaded from the locale_facets_nonio.tcc
- version, don't call do_get but call _M_extract_via_format instead to
- pass around state.
- * config/abi/pre/gnu.ver (GLIBCXX_3.4.30): Export _M_extract_via_format
- with extra __time_get_state and __time_get_state::_M_finalize_state.
- * src/c++98/locale_facets.cc (is_leap, day_of_the_week,
- day_of_the_year): New functions in anon namespace.
- (mon_yday): New var in anon namespace.
- (__time_get_state::_M_finalize_state): Define.
- * testsuite/22_locale/time_get/get/char/4.cc: New test.
- * testsuite/22_locale/time_get/get/wchar_t/4.cc: New test.
- * testsuite/22_locale/time_get/get_year/char/1.cc (test01): Parse 197
- as year 197AD instead of error.
- * testsuite/22_locale/time_get/get_year/char/5.cc (test01): Parse 1 as
- year 2001 instead of error.
- * testsuite/22_locale/time_get/get_year/char/6.cc: New test.
- * testsuite/22_locale/time_get/get_year/wchar_t/1.cc (test01): Parse
- 197 as year 197AD instead of error.
- * testsuite/22_locale/time_get/get_year/wchar_t/5.cc (test01): Parse
- 1 as year 2001 instead of error.
- * testsuite/22_locale/time_get/get_year/wchar_t/6.cc: New test.
- 2022-01-10 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103866
- * acinclude.m4 (GLIBCXX_COMPUTE_STDIO_INTEGER_CONSTANTS): Do
- nothing for freestanding builds.
- (GLIBCXX_ENABLE_HOSTED): Define FREESTANDING_FLAGS.
- * configure.ac: Do not use AC_LIBTOOL_DLOPEN when configured
- with --without-headers. Do not use GCC_HEADER_STDINT for
- freestanding builds.
- * libsupc++/Makefile.am (HOSTED_CXXFLAGS): Use -ffreestanding
- for freestanding builds.
- * configure: Regenerate.
- * Makefile.in: Regenerate.
- * doc/Makefile.in: Regenerate.
- * include/Makefile.in: Regenerate.
- * libsupc++/Makefile.in: Regenerate.
- * po/Makefile.in: Regenerate.
- * python/Makefile.in: Regenerate.
- * src/Makefile.in: Regenerate.
- * src/c++11/Makefile.in: Regenerate.
- * src/c++17/Makefile.in: Regenerate.
- * src/c++20/Makefile.in: Regenerate.
- * src/c++98/Makefile.in: Regenerate.
- * src/filesystem/Makefile.in: Regenerate.
- * testsuite/Makefile.in: Regenerate.
- 2022-01-10 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/28_regex/algorithms/regex_replace/char/103664.cc:
- Add dg-timeout-factor directive.
- * testsuite/28_regex/basic_regex/84110.cc: Likewise.
- * testsuite/28_regex/basic_regex/ctors/char/other.cc: Likewise.
- * testsuite/28_regex/match_results/102667.cc: Likewise.
- 2022-01-10 Jonathan Wakely <jwakely@redhat.com>
- * doc/xml/manual/using.xml: Update documentation around default
- -std option.
- * doc/html/*: Regenerate.
- 2022-01-10 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/100017
- * src/c++17/Makefile.am (AM_CXXFLAGS): Add -nostdinc++.
- * src/c++17/Makefile.in: Regenerate.
- 2022-01-09 Sandra Loosemore <sandra@codesourcery.com>
- * testsuite/18_support/type_info/constexpr.cc: Add explicit
- -fdelete-null-pointer-checks option.
- 2022-01-06 Pavel I. Kryukov <pavel.kryukov@phystech.edu>
- Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103853
- * include/bits/forward_list.tcc (forward_list::merge): Check for
- self-merge.
- * testsuite/23_containers/forward_list/operations/merge.cc: New test.
- 2022-01-06 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/regex.h (basic_regex, match_results): Qualify
- name in friend declaration, to work around Clang bug.
- 2022-01-06 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/ext/rope/pthread7-rope.cc: Add dg-timeout-factor.
- 2022-01-06 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103911
- * include/std/charconv (__from_chars_alpha_to_num): Return
- char instead of unsigned char. Change invalid return value to
- 127 instead of using numeric trait.
- (__from_chars_alnum): Fix comment. Do not use std::isdigit.
- Change type of variable to char.
- 2022-01-05 François Dumont <fdumont@gcc.gnu.org>
- PR libstdc++/68303
- * include/bits/hashtable_policy.h
- (_Hashtable_hash_traits<_Hash>): New.
- (_Hash_code_base<>::_M_hash_code(const _Hash_node_value<>&)): New.
- (_Hashtable_base<>::_M_key_equals): New.
- (_Hashtable_base<>::_M_equals): Use latter.
- (_Hashtable_base<>::_M_key_equals_tr): New.
- (_Hashtable_base<>::_M_equals_tr): Use latter.
- * include/bits/hashtable.h
- (_Hashtable<>::__small_size_threshold()): New, use _Hashtable_hash_traits.
- (_Hashtable<>::find): Loop through elements to look for key if size is lower
- than __small_size_threshold().
- (_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
- (_Hashtable<>::_M_insert_unique(_Kt&&, _Args&&, const _NodeGenerator&)): Likewise.
- (_Hashtable<>::_M_compute_hash_code(const_iterator, const key_type&)): New.
- (_Hashtable<>::_M_emplace(const_iterator, false_type, _Args&&...)): Use latter.
- (_Hashtable<>::_M_find_before_node(const key_type&)): New.
- (_Hashtable<>::_M_erase(true_type, const key_type&)): Use latter.
- (_Hashtable<>::_M_erase(false_type, const key_type&)): Likewise.
- * src/c++11/hashtable_c++0x.cc: Include <bits/functional_hash.h>.
- * testsuite/util/testsuite_performance.h
- (report_performance): Use 9 width to display memory.
- * testsuite/performance/23_containers/insert_erase/unordered_small_size.cc:
- New performance test case.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103919
- * include/bits/basic_string.h (basic_string(const T&, size_t, size_t)):
- Relax constraints on string_view parameter.
- * include/bits/cow_string.h (basic_string(const T&, size_t, size_t)):
- Likewise.
- * testsuite/21_strings/basic_string/cons/char/103919.cc: New test.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * config/abi/pre/gnu.ver (GLIBCXX_3.4.30): Export new symbol for
- ARM EABI.
- * include/bits/c++config (_GLIBCXX23_CONSTEXPR): Define.
- * include/std/version (__cpp_lib_constexpr_typeinfo): Define.
- * libsupc++/tinfo.cc: Add #error to ensure non-inline definition
- is emitted.
- (type_info::__equal): Define alias symbol.
- * libsupc++/typeinfo (type_info::before): Combine different
- implementations into one.
- (type_info::operator==): Likewise. Use address equality for
- constant evaluation. Call __equal for targets that require the
- definition to be non-inline.
- * testsuite/18_support/type_info/constexpr.cc: New test.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * src/c++11/cxx11-ios_failure.cc (io_error_category): Define
- class and virtual functions as 'final'.
- (io_category_instance): Use constinit union to make the object
- immortal.
- * src/c++11/future.cc (future_error_category): Define class and
- virtual functions as 'final'.
- (future_category_instance): Use constinit union.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * python/libstdcxx/v6/printers.py (StdErrorCodePrinter): Strip
- versioned namespace from the type name that is printed.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * python/libstdcxx/v6/printers.py (StdRegexStatePrinter): New
- printer for std::regex NFA states.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/23_containers/forward_list/operations/1.cc: Fill in
- placeholders in comments.
- * testsuite/23_containers/forward_list/operations/2.cc:
- Likewise.
- * testsuite/23_containers/forward_list/operations/3.cc:
- Likewise.
- * testsuite/23_containers/forward_list/operations/4.cc:
- Likewise.
- * testsuite/23_containers/forward_list/operations/5.cc:
- Likewise.
- * testsuite/23_containers/forward_list/operations/6.cc:
- Likewise.
- * testsuite/23_containers/forward_list/operations/7.cc:
- Likewise.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103848
- * include/bits/stl_deque.h (operator-): Do not use 0 as null
- pointer constant.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/alloc_traits.h (allocator_traits<allocator<void>>):
- Use std::_Construct for construct.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- PR libstdc++/103877
- * doc/xml/faq.xml: Add '-x c++' to preprocessor command.
- * doc/html/faq.html: Regenerate.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/regex.h (__regex_algo_impl): Change __policy and
- __match_mode template parameters to be function parameters.
- (regex_match, regex_search): Pass policy and match mode as
- function arguments.
- * include/bits/regex.tcc (__regex_algo_impl): Change template
- parameters to function parameters.
- * include/bits/regex_compiler.h (_RegexTranslatorBase): Use
- 'if constexpr' for conditions using template parameters.
- (_RegexTranslator): Likewise.
- * include/bits/regex_executor.tcc (_Executor::_M_handle_accept):
- Likewise.
- * testsuite/util/testsuite_regex.h (regex_match_debug)
- (regex_search_debug): Move template arguments to function
- arguments.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * testsuite/util/testsuite_regex.h (regex_match_debug): Compare
- results even if the match failed.
- 2022-01-05 Jonathan Wakely <jwakely@redhat.com>
- * include/bits/regex_compiler.tcc: Adjust all calls to
- __throw_regex_error.
- * include/bits/regex_error.h (__throw_regex_error): Add noreturn
- attribute.
- * include/bits/regex_scanner.tcc: Likewise.
- * src/c++11/regex.cc (desc): New helper function.
- (regex_error::regex_error(error_type)): Use desc to get a string
- corresponding to the error code.
- Copyright (C) 2022 Free Software Foundation, Inc.
- 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.
|