https://gcc.gnu.org/g:e7f6a5dc4af7d0e3cf73262534d8676424e960d8

commit r15-2425-ge7f6a5dc4af7d0e3cf73262534d8676424e960d8
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Wed Jul 31 00:19:44 2024 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 102 ++++++++++++++++++++++++
 gcc/DATESTAMP           |   2 +-
 gcc/c-family/ChangeLog  |   4 +
 gcc/cp/ChangeLog        |  20 +++++
 gcc/testsuite/ChangeLog | 208 ++++++++++++++++++++++++++++++++++++++++++++++++
 libbacktrace/ChangeLog  |   6 ++
 libstdc++-v3/ChangeLog  |  68 ++++++++++++++++
 7 files changed, 409 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cffd5e4b3791..197667960b60 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,105 @@
+2024-07-30  Edwin Lu  <e...@rivosinc.com>
+
+       * common/config/riscv/riscv-common.cc (riscv_subset_list::to_string):
+       Skip b in march string
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: Add B assembler check
+
+2024-07-30  Filip Kastl  <fka...@suse.cz>
+
+       * tree-switch-conversion.cc (can_log2): New static function to
+       check if gen_log2 can be used on current target.
+       (gen_log2): New static function to generate efficient GIMPLE
+       code for taking an exact base 2 log.
+       (gen_pow2p): New static function to generate efficient GIMPLE
+       code for checking if a value is a power of 2.
+       (switch_conversion::switch_conversion): Track if the
+       transformation happened.
+       (switch_conversion::is_exp_index_transform_viable): New function
+       to decide whether the transformation should be applied.
+       (switch_conversion::exp_index_transform): New function to
+       execute the transformation.
+       (switch_conversion::gen_inbound_check): Don't remove the default
+       BB if the transformation happened.
+       (switch_conversion::expand): Execute the transform if it is
+       viable.  Skip the "sufficiently small case range" test if the
+       transformation is going to be executed.
+       * tree-switch-conversion.h: Add is_exp_index_transform_viable
+       and exp_index_transform.
+
+2024-07-30  Gianluca Guida  <gianl...@rivosinc.com>
+           Patrick O'Neill  <patr...@rivosinc.com>
+
+       * common/config/riscv/riscv-common.cc: Add zacas extension.
+       * config/riscv/arch-canonicalize: Make zacas imply zaamo.
+       * config/riscv/riscv.opt: Add zacas.
+       * config/riscv/sync.md (zacas_atomic_cas_value<mode>): New pattern.
+       (atomic_compare_and_swap<mode>): Use new pattern for compare-and-swap 
ops.
+       (zalrsc_atomic_cas_value_strong<mode>): Rename atomic_cas_value_strong.
+       * doc/sourcebuild.texi: Add Zacas documentation.
+
+2024-07-30  Patrick O'Neill  <patr...@rivosinc.com>
+
+       * common/config/riscv/riscv-common.cc
+       (riscv_subset_list::to_string): Remove zabha configure check
+       handling and clarify zaamo/zalrsc comment.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       * configure.ac: Remove zabha configure check.
+
+2024-07-30  Jennifer Schmitz  <jschm...@nvidia.com>
+
+       * config/aarch64/aarch64-sve-builtins-base.cc (svdiv_impl::fold):
+       Implement strength reduction.
+
+2024-07-30  Georg-Johann Lay  <a...@gjlay.de>
+
+       * doc/extend.texi (AVR Function Attributes): Propose to use
+       attribute signal(n) via AVR-LibC's ISR_N from avr/interrupt.h
+
+2024-07-30  Pan Li  <pan2...@intel.com>
+
+       * config/riscv/riscv.cc (riscv_expand_ussub): Promote to Xmode
+       instead of Pmode.
+
+2024-07-30  Takayuki 'January June' Suwa  <jjsuwa_sys3...@yahoo.co.jp>
+
+       * config/xtensa/xtensa.cc (xtensa_insn_cost):
+       Add a case statement for TYPE_FARITH.
+
+2024-07-30  Takayuki 'January June' Suwa  <jjsuwa_sys3...@yahoo.co.jp>
+
+       * config/xtensa/xtensa.md (movsf_internal):
+       Reorder alternative that corresponds to L32R machine instruction,
+       and prefix alternatives that correspond to LSI/SSI instructions
+       with the constraint character '^' so that they are disparaged by
+       reload/LRA.
+
+2024-07-30  Takayuki 'January June' Suwa  <jjsuwa_sys3...@yahoo.co.jp>
+
+       * config/xtensa/xtensa-protos.h (xtensa_expand_call):
+       Remove the third argument.
+       * config/xtensa/xtensa.cc (xtensa_expand_call):
+       Remove the third argument and the code that uses it.
+       * config/xtensa/xtensa.md (call, call_value, sibcall, sibcall_value):
+       Remove each Boolean constant specified in the third argument of
+       xtensa_expand_call.
+       (sibcall_epilogue): Add emitting '(use A0_REG)' after calling
+       xtensa_expand_epilogue.
+
+2024-07-30  liuhongt  <hongtao....@intel.com>
+
+       PR target/116043
+       * config/i386/constraints.md (Bk): Refine to
+       define_special_memory_constraint.
+
+2024-07-30  Haochen Jiang  <haochen.ji...@intel.com>
+
+       * config/i386/prfchiintrin.h
+       (_m_prefetchit0): Add macro for non-optimized option.
+       (_m_prefetchit1): Ditto.
+
 2024-07-30  Takayuki 'January June' Suwa  <jjsuwa_sys3...@yahoo.co.jp>
 
        * config/xtensa/predicates.md
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index d42ae94bcd37..e2dab5541a03 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20240730
+20240731
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index daca845240e4..f91f1bb6379c 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,7 @@
+2024-07-30  Paul-Antoine Arras  <par...@baylibre.com>
+
+       * c-format.cc (gcc_gfc_char_table): Add formats for tree objects.
+
 2024-07-23  Andi Kleen  <a...@linux.intel.com>
 
        * c-attribs.cc (set_musttail_on_return): New function.
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 1d71bd487426..e05e79d50139 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,23 @@
+2024-07-30  Arsen Arsenović  <ar...@aarsen.me>
+
+       PR c++/115906
+       * parser.cc (cp_parser_unary_expression): Reject await
+       expressions if use of local variables is currently forbidden.
+       (cp_parser_yield_expression): Reject yield expressions if use of
+       local variables is currently forbidden.
+
+2024-07-30  Arsen Arsenovic  <ar...@aarsen.me>
+
+       PR c++/115906
+       * coroutines.cc (register_local_var_uses): Only process
+       PARM_DECL and VAR_DECLs.
+
+2024-07-30  Arsen Arsenović  <ar...@aarsen.me>
+
+       PR c++/110855
+       * cp-gimplify.cc (fold_builtin_source_location): Use the name of
+       the DECL_RAMP_FN of the current function if present.
+
 2024-07-29  Patrick Palka  <ppa...@redhat.com>
 
        PR c++/88313
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 0080c4127793..5afe9167ef9d 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,211 @@
+2024-07-30  Sam James  <s...@gentoo.org>
+
+       PR target/68015
+       PR c++/83979
+       * c-c++-common/goacc/loop-shape.c: Fix 'dg-compile' typo.
+       * g++.dg/pr83979.C: Likewise.
+       * g++.target/aarch64/sve/acle/general-c++/attributes_2.C: Likewise.
+       * gcc.dg/tree-ssa/builtin-sprintf-7.c: Likewise.
+       * gcc.dg/tree-ssa/builtin-sprintf-8.c: Likewise.
+       * gcc.target/riscv/amo/zabha-rvwmo-all-amo-ops-char.c: Likewise.
+       * gcc.target/riscv/amo/zabha-rvwmo-all-amo-ops-short.c: Likewise.
+       * gcc.target/s390/20181024-1.c: Likewise.
+       * gcc.target/s390/addr-constraints-1.c: Likewise.
+       * gcc.target/s390/arch12/aghsghmgh-1.c: Likewise.
+       * gcc.target/s390/arch12/mul-1.c: Likewise.
+       * gcc.target/s390/arch13/bitops-1.c: Likewise.
+       * gcc.target/s390/arch13/bitops-2.c: Likewise.
+       * gcc.target/s390/arch13/fp-signedint-convert-1.c: Likewise.
+       * gcc.target/s390/arch13/fp-unsignedint-convert-1.c: Likewise.
+       * gcc.target/s390/arch13/popcount-1.c: Likewise.
+       * gcc.target/s390/pr68015.c: Likewise.
+       * gcc.target/s390/vector/fp-signedint-convert-1.c: Likewise.
+       * gcc.target/s390/vector/fp-unsignedint-convert-1.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-1.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-2.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-3.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-4.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-5.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-6.c: Likewise.
+       * gcc.target/s390/vector/reverse-elements-7.c: Likewise.
+       * gnat.dg/alignment15.adb: Likewise.
+       * gnat.dg/debug4.adb: Likewise.
+       * gnat.dg/inline21.adb: Likewise.
+       * gnat.dg/inline22.adb: Likewise.
+       * gnat.dg/opt37.adb: Likewise.
+       * gnat.dg/warn13.adb: Likewise.
+
+2024-07-30  Uros Bizjak  <ubiz...@gmail.com>
+
+       PR target/51492
+       * gcc.target/i386/pr51492.c: New test.
+
+2024-07-30  Sam James  <s...@gentoo.org>
+
+       PR middle-end/54400
+       PR target/98161
+       * gcc.dg/vect/bb-slp-layout-18.c: Fix whitespace in dg directive.
+       * gcc.dg/vect/bb-slp-pr54400.c: Likewise.
+       * gcc.target/i386/pr98161.c: Likewise.
+
+2024-07-30  Filip Kastl  <fka...@suse.cz>
+
+       * gcc.dg/tree-ssa/switch-3.c: Disable switch conversion.
+       * gcc.target/i386/switch-exp-transform-1.c: New test.
+       * gcc.target/i386/switch-exp-transform-2.c: New test.
+       * gcc.target/i386/switch-exp-transform-3.c: New test.
+
+2024-07-30  Sam James  <s...@gentoo.org>
+
+       * gcc.target/aarch64/simd/vmmla.c: Fix whitespace in dg directive.
+
+2024-07-30  Sam James  <s...@gentoo.org>
+
+       PR preprocessor/90581
+       * c-c++-common/cpp/fmax-include-depth.c: Fix whitespace in dg directive.
+
+2024-07-30  Sam James  <s...@gentoo.org>
+
+       PR rtl-optimization/48633
+       PR tree-optimization/83072
+       PR tree-optimization/83073
+       PR tree-optimization/96542
+       PR tree-optimization/96707
+       PR tree-optimization/97567
+       PR target/69225
+       PR target/89929
+       PR target/96562
+       * g++.dg/pr48633.C: Fix whitespace in dg directive.
+       * g++.dg/pr96707.C: Likewise.
+       * g++.target/i386/mv28.C: Likewise.
+       * gcc.dg/Warray-bounds-flex-arrays-1.c: Likewise.
+       * gcc.dg/pr83072-2.c: Likewise.
+       * gcc.dg/pr83073.c: Likewise.
+       * gcc.dg/pr96542.c: Likewise.
+       * gcc.dg/pr97567-2.c: Likewise.
+       * gcc.target/i386/avx512fp16-11a.c: Likewise.
+       * gcc.target/i386/avx512fp16-13.c: Likewise.
+       * gcc.target/i386/avx512fp16-14.c: Likewise.
+       * gcc.target/i386/avx512fp16-conjugation-1.c: Likewise.
+       * gcc.target/i386/avx512fp16-neg-1a.c: Likewise.
+       * gcc.target/i386/avx512fp16-set1-pch-1a.c: Likewise.
+       * gcc.target/i386/avx512fp16vl-conjugation-1.c: Likewise.
+       * gcc.target/i386/avx512fp16vl-neg-1a.c: Likewise.
+       * gcc.target/i386/avx512fp16vl-set1-pch-1a.c: Likewise.
+       * gcc.target/i386/avx512vlfp16-11a.c: Likewise.
+       * gcc.target/i386/pr69225-1.c: Likewise.
+       * gcc.target/i386/pr69225-2.c: Likewise.
+       * gcc.target/i386/pr69225-3.c: Likewise.
+       * gcc.target/i386/pr69225-4.c: Likewise.
+       * gcc.target/i386/pr69225-5.c: Likewise.
+       * gcc.target/i386/pr69225-6.c: Likewise.
+       * gcc.target/i386/pr69225-7.c: Likewise.
+       * gcc.target/i386/pr96562-1.c: Likewise.
+       * gcc.target/riscv/rv32e_stack.c: Likewise.
+       * gfortran.dg/c-interop/removed-restrictions-3.f90: Likewise.
+       * gnat.dg/renaming1.adb: Likewise.
+
+2024-07-30  Gianluca Guida  <gianl...@rivosinc.com>
+           Patrick O'Neill  <patr...@rivosinc.com>
+
+       * lib/target-supports.exp: Add zacas testsuite infra support.
+       * 
gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-acquire-release.c:
+       Remove zacas to continue to test the lr/sc pairs.
+       * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-acquire.c: 
Ditto.
+       * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-consume.c: 
Ditto.
+       * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-relaxed.c: 
Ditto.
+       * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-release.c: 
Ditto.
+       * 
gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-seq-cst-relaxed.c: Ditto.
+       * gcc.target/riscv/amo/zalrsc-rvwmo-compare-exchange-int-seq-cst.c: 
Ditto.
+       * 
gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-acquire-release.c: Ditto.
+       * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-acquire.c: 
Ditto.
+       * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-consume.c: 
Ditto.
+       * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-relaxed.c: 
Ditto.
+       * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-release.c: 
Ditto.
+       * 
gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-seq-cst-relaxed.c: Ditto.
+       * gcc.target/riscv/amo/zalrsc-ztso-compare-exchange-int-seq-cst.c: 
Ditto.
+       * gcc.target/riscv/amo/zabha-zacas-preferred-over-zalrsc.c: New test.
+       * gcc.target/riscv/amo/zacas-char-requires-zabha.c: New test.
+       * gcc.target/riscv/amo/zacas-char-requires-zacas.c: New test.
+       * gcc.target/riscv/amo/zacas-preferred-over-zalrsc.c: New test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-acq-rel.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-acquire.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-relaxed.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-release.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-char-seq-cst.c: New 
test.
+       * 
gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-compatability-mapping-no-fence.c:
+       New test.
+       * 
gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-compatability-mapping.cc: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-acq-rel.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-acquire.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-relaxed.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-release.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-int-seq-cst.c: New 
test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-acq-rel.c: 
New test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-acquire.c: 
New test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-relaxed.c: 
New test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-release.c: 
New test.
+       * gcc.target/riscv/amo/zacas-rvwmo-compare-exchange-short-seq-cst.c: 
New test.
+       * gcc.target/riscv/amo/zacas-ztso-compare-exchange-char-seq-cst.c: New 
test.
+       * gcc.target/riscv/amo/zacas-ztso-compare-exchange-char.c: New test.
+       * 
gcc.target/riscv/amo/zacas-ztso-compare-exchange-compatability-mapping-no-fence.c:
+       New test.
+       * 
gcc.target/riscv/amo/zacas-ztso-compare-exchange-compatability-mapping.cc: New 
test.
+       * gcc.target/riscv/amo/zacas-ztso-compare-exchange-int-seq-cst.c: New 
test.
+       * gcc.target/riscv/amo/zacas-ztso-compare-exchange-int.c: New test.
+       * gcc.target/riscv/amo/zacas-ztso-compare-exchange-short-seq-cst.c: New 
test.
+       * gcc.target/riscv/amo/zacas-ztso-compare-exchange-short.c: New test.
+
+2024-07-30  Arsen Arsenović  <ar...@aarsen.me>
+
+       PR c++/115906
+       * g++.dg/coroutines/pr115906-yield.C: New test.
+       * g++.dg/coroutines/pr115906.C: New test.
+       * g++.dg/coroutines/co-await-syntax-02-outside-fn.C: Don't rely
+       on default arguments.
+       * g++.dg/coroutines/co-yield-syntax-01-outside-fn.C: Ditto.
+
+2024-07-30  Arsen Arsenovic  <ar...@aarsen.me>
+
+       PR c++/115906
+       * g++.dg/coroutines/coro-function-decl.C: New test.
+
+2024-07-30  Jennifer Schmitz  <jschm...@nvidia.com>
+
+       * gcc.target/aarch64/sve/div_const_run.c: New test.
+       * gcc.target/aarch64/sve/acle/asm/div_s32.c: Likewise.
+       * gcc.target/aarch64/sve/acle/asm/div_s64.c: Likewise.
+       * gcc.target/aarch64/sve/acle/asm/div_u32.c: Likewise.
+       * gcc.target/aarch64/sve/acle/asm/div_u64.c: Likewise.
+
+2024-07-30  Arsen Arsenović  <ar...@aarsen.me>
+
+       PR c++/110855
+       * g++.dg/coroutines/pr110855.C: New test.
+
+2024-07-30  Sam James  <s...@gentoo.org>
+
+       PR c/53548
+       PR target/101529
+       PR tree-optimization/102359
+       * c-c++-common/fam-in-union-alone-in-struct-1.c: Fix whitespace in dg 
directive.
+       * c-c++-common/fam-in-union-alone-in-struct-2.c: Likewise.
+       * c-c++-common/torture/builtin-shufflevector-2.c: Likewise.
+       * g++.dg/pr102359_2.C: Likewise.
+       * g++.target/i386/mvc1.C: Likewise.
+
+2024-07-30  Tobias Burnus  <tbur...@baylibre.com>
+
+       * gfortran.dg/compiler-directive_2.f: Update dg-error.
+
+2024-07-30  liuhongt  <hongtao....@intel.com>
+
+       * gcc.target/i386/pr116043.c: New test.
+
+2024-07-30  Haochen Jiang  <haochen.ji...@intel.com>
+
+       * gcc.target/i386/prefetchi-1b.c: New test.
+
 2024-07-29  Sam James  <s...@gentoo.org>
 
        PR ipa/111613
diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog
index 5aa070d31820..0a559eede03c 100644
--- a/libbacktrace/ChangeLog
+++ b/libbacktrace/ChangeLog
@@ -1,3 +1,9 @@
+2024-07-30  Ian Lance Taylor  <i...@golang.org>
+
+       * pecoff.c (LDR_DLL_NOTIFICATION): Put function modifier
+       inside parentheses.
+       (LDR_REGISTER_FUNCTION): Likewise.
+
 2024-07-18  Ian Lance Taylor  <i...@golang.org>
 
        * internal.h: Use __has_attribute to check for fallthrough
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 66bb4d99db37..acfc04d83843 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,71 @@
+2024-07-30  Jonathan Wakely  <jwak...@redhat.com>
+
+       * include/bits/chrono_io.h (__local_time_fmt_for): New alias
+       template.
+       (formatter<zoned_time<D, P>>): Use __local_time_fmt_for.
+       * testsuite/std/time/zoned_time/io.cc: Check zoned_time<minutes>
+       can be formatted.
+
+2024-07-30  Jonathan Wakely  <jwak...@redhat.com>
+
+       * include/bits/chrono_io.h (__local_fmt_t): Remove unused
+       declaration.
+       (__formatter_chrono::_M_format_to_ostream): Add explicit
+       handling for specializations of __local_time_fmt, including the
+       time zone abbreviation in the output if __is_neg is true.
+       (formatter<chrono::tai_time<D>>::format): Add comment.
+       (formatter<chrono::gps_time<D>>::format): Likewise.
+       (formatter<chrono::__detail::__local_time_fmt::format): Call
+       _M_format with true for the __is_neg flag.
+       * testsuite/std/time/clock/gps/io.cc: Remove unused variable.
+       * testsuite/std/time/clock/local/io.cc: Fix test error that
+       checked tai_time instead of local_time. Add tests for
+       local-time-format-t formatting.
+       * testsuite/std/time/clock/system/io.cc: Check empty
+       chrono-specs.
+       * testsuite/std/time/clock/tai/io.cc: Likewise.
+       * testsuite/std/time/zoned_time/io.cc: Likewise.
+
+2024-07-30  Jonathan Wakely  <jwak...@redhat.com>
+
+       * include/std/expected (expected(U&&), operator=(U&&))
+       (value_or): Use remove_cv_t on default template argument, as per
+       LWG 3886.
+       * include/std/optional (optional(U&&), operator=(U&&))
+       (value_or): Likewise.
+       * testsuite/20_util/expected/lwg3886.cc: New test.
+       * testsuite/20_util/optional/cons/lwg3886.cc: New test.
+
+2024-07-30  Jonathan Wakely  <jwak...@redhat.com>
+
+       * src/c++17/fs_ops.cc: Fix file name in comment.
+
+2024-07-30  Jonathan Wakely  <jwak...@redhat.com>
+
+       * src/c++17/fs_ops.cc (auto_win_file_handle): Change constructor
+       parameter from const path& to const wchar_t*.
+       (fs::equiv_files): New function.
+       (fs::equivalent): Use equiv_files.
+       * src/filesystem/ops-common.h (fs::equiv_files): Declare.
+       (do_copy_file): Use equiv_files.
+       * src/filesystem/ops.cc (fs::equiv_files): Define.
+       (fs::copy, fs::equivalent): Use equiv_files.
+       * testsuite/27_io/filesystem/operations/copy.cc: Test
+       overwriting directory contents recursively.
+       * testsuite/27_io/filesystem/operations/copy_file.cc: Test
+       overwriting existing files.
+
+2024-07-30  Lennox Shou Hao Ho  <lennox...@gmail.com>
+
+       PR libstdc++/113663
+       * src/c++17/fs_ops.cc (fs::equivalent): Moved helper class
+       auto_handle to anonymous namespace as auto_win_file_handle.
+       (fs::hard_link_count): Changed Windows implementation to use
+       information provided by GetFileInformationByHandle which is more
+       reliable.
+       * testsuite/27_io/filesystem/operations/hard_link_count.cc: New
+       test.
+
 2024-07-29  Thomas Schwinge  <tschwi...@baylibre.com>
 
        * testsuite/lib/libstdc++.exp (file-io-diff): Polish.

Reply via email to