diff -Nrcpad gcc-15-20250830/LAST_UPDATED gcc-15-20250906/LAST_UPDATED
*** gcc-15-20250830/LAST_UPDATED	Sat Aug 30 22:34:25 2025
--- gcc-15-20250906/LAST_UPDATED	Sat Sep  6 22:35:17 2025
***************
*** 1 ****
! Obtained from git: releases/gcc-15 revision 97105bfbdc3df37abe02b34e66ee2d33ea6471ec
--- 1 ----
! Obtained from git: releases/gcc-15 revision 589dc23095c50a2373939082e5b69831e8f6d2c7
diff -Nrcpad gcc-15-20250830/MD5SUMS gcc-15-20250906/MD5SUMS
*** gcc-15-20250830/MD5SUMS	Sat Aug 30 22:34:29 2025
--- gcc-15-20250906/MD5SUMS	Sat Sep  6 22:35:21 2025
***************
*** 1,5 ****
  # This file contains the MD5 checksums of the files in the
! # gcc-15-20250830.tar.xz tarball.
  #
  # Besides verifying that all files in the tarball were correctly expanded,
  # it also can be used to determine if any files have changed since the
--- 1,5 ----
  # This file contains the MD5 checksums of the files in the
! # gcc-15-20250906.tar.xz tarball.
  #
  # Besides verifying that all files in the tarball were correctly expanded,
  # it also can be used to determine if any files have changed since the
*************** d32239bcb673463ab874e80d47fae504  COPYIN
*** 25,31 ****
  fd4ecdf5d672efe2b0e409aca9cf9446  ChangeLog.jit
  09538b708302f1735f6fa05b622ecf5e  ChangeLog.tree-ssa
  24ab760126489e69436a43185dc3d202  INSTALL/README
! fa3fcd6a8e4c0637c3b25cf7b15c8412  LAST_UPDATED
  9d2cf5b58292c2e8b0804d3eafc2d6f3  MAINTAINERS
  b714b83dd28679b75c5fd3e619d35956  Makefile.def
  9d0808afc70085c5ca8d45062fc59689  Makefile.in
--- 25,31 ----
  fd4ecdf5d672efe2b0e409aca9cf9446  ChangeLog.jit
  09538b708302f1735f6fa05b622ecf5e  ChangeLog.tree-ssa
  24ab760126489e69436a43185dc3d202  INSTALL/README
! 90cf4fdff429d7bb3de68a8f54b04d4a  LAST_UPDATED
  9d2cf5b58292c2e8b0804d3eafc2d6f3  MAINTAINERS
  b714b83dd28679b75c5fd3e619d35956  Makefile.def
  9d0808afc70085c5ca8d45062fc59689  Makefile.in
*************** f068aafb849bb6af444e7442e70106d7  contri
*** 365,371 ****
  9f709ddf34273ffe202ff79517103dbe  contrib/vimrc
  da7aeedeb5a86ee6f5982e559a2d6dcc  contrib/warn_summary
  8b59f0d0a2dcdced14765c514fbad719  depcomp
! 1e570543150863bbe5c5d11eb8ece1fa  fixincludes/ChangeLog
  4afe55f959b7cceb7055ff11a9ca0e32  fixincludes/Makefile.in
  b6e3f4950abc6e254b467063381f6473  fixincludes/README
  455903ad4ff71fa5c5340ef7ae41a0e6  fixincludes/README-fixinc
--- 365,371 ----
  9f709ddf34273ffe202ff79517103dbe  contrib/vimrc
  da7aeedeb5a86ee6f5982e559a2d6dcc  contrib/warn_summary
  8b59f0d0a2dcdced14765c514fbad719  depcomp
! 44e6472c734e2c6e3ab9e7a8cab038f4  fixincludes/ChangeLog
  4afe55f959b7cceb7055ff11a9ca0e32  fixincludes/Makefile.in
  b6e3f4950abc6e254b467063381f6473  fixincludes/README
  455903ad4ff71fa5c5340ef7ae41a0e6  fixincludes/README-fixinc
*************** b6ffc204128adbd2c41ac0cb4ce98dc7  fixinc
*** 377,390 ****
  2002770d703d59245d89f941a21f783d  fixincludes/fixfixes.c
  77fbad4fc8ec7be3578d045d003446ec  fixincludes/fixinc.in
  8ca216a7024876b7eb9b8abc30a30775  fixincludes/fixincl.c
! adf245e3714f799eafba40af16be8eb5  fixincludes/fixincl.tpl
! b735426413a7cd6dfc49a14edea7ed15  fixincludes/fixincl.x
  545875b4fe1c26bc3e1befc75b34e9f5  fixincludes/fixlib.c
  620c770139fc32c75b975b614d3156e8  fixincludes/fixlib.h
  5b2c1fd3ef9d44fb6beb1a0d45ddd533  fixincludes/fixopts.c
  ed1415e9dbc8f421fd9288bde0d90ad1  fixincludes/fixtests.c
  51e915676df084b64297d3c4fb0d9c18  fixincludes/genfixes
! 86c10da334bb7b92f399ff0157e281e6  fixincludes/inclhack.def
  d820d7184883bda7dd809406f0626d8e  fixincludes/mkfixinc.sh
  516608ac1550577d47f48809bb512629  fixincludes/mkheaders.in
  3aa0563cd682ee61ecd9eb6eea0b0bce  fixincludes/procopen.c
--- 377,390 ----
  2002770d703d59245d89f941a21f783d  fixincludes/fixfixes.c
  77fbad4fc8ec7be3578d045d003446ec  fixincludes/fixinc.in
  8ca216a7024876b7eb9b8abc30a30775  fixincludes/fixincl.c
! 7f0fed08dfa61ea12896569a2a5375d1  fixincludes/fixincl.tpl
! 32f101147d44b440e7b5f5e7c016f8f7  fixincludes/fixincl.x
  545875b4fe1c26bc3e1befc75b34e9f5  fixincludes/fixlib.c
  620c770139fc32c75b975b614d3156e8  fixincludes/fixlib.h
  5b2c1fd3ef9d44fb6beb1a0d45ddd533  fixincludes/fixopts.c
  ed1415e9dbc8f421fd9288bde0d90ad1  fixincludes/fixtests.c
  51e915676df084b64297d3c4fb0d9c18  fixincludes/genfixes
! 0141ff051b49ede5f953db69155fdbec  fixincludes/inclhack.def
  d820d7184883bda7dd809406f0626d8e  fixincludes/mkfixinc.sh
  516608ac1550577d47f48809bb512629  fixincludes/mkheaders.in
  3aa0563cd682ee61ecd9eb6eea0b0bce  fixincludes/procopen.c
*************** a22e70b3f29292d0e628450f4bb11e62  fixinc
*** 514,520 ****
  a916467b91076e631dd8edb7424769c7  gcc/COPYING.LIB
  d32239bcb673463ab874e80d47fae504  gcc/COPYING3
  6a6a8e020838b23406c81b19c1d46df6  gcc/COPYING3.LIB
! bb32301abb8da2cfc8be303631934eb9  gcc/ChangeLog
  51281e73aa07fb62394bd72f3c9299ba  gcc/ChangeLog-1997
  f77af8c9ac412064886b00c5506123b5  gcc/ChangeLog-1998
  00a2e4ead1b289bf69bca0196fed6f9f  gcc/ChangeLog-1999
--- 514,520 ----
  a916467b91076e631dd8edb7424769c7  gcc/COPYING.LIB
  d32239bcb673463ab874e80d47fae504  gcc/COPYING3
  6a6a8e020838b23406c81b19c1d46df6  gcc/COPYING3.LIB
! 5881658226981f3a7cca2df084a3cfbb  gcc/ChangeLog
  51281e73aa07fb62394bd72f3c9299ba  gcc/ChangeLog-1997
  f77af8c9ac412064886b00c5506123b5  gcc/ChangeLog-1998
  00a2e4ead1b289bf69bca0196fed6f9f  gcc/ChangeLog-1999
*************** fb3fadb88e1d2b3b640cfaaa5ff11780  gcc/Ch
*** 551,557 ****
  3eb07e0b2e542409bf73d359f7f65609  gcc/ChangeLog.ptr
  e13638e26743ba41e6011b76cc00d9a9  gcc/ChangeLog.tree-ssa
  739ab47f6425bcea1d05e4fc0542de54  gcc/ChangeLog.tuples
! 8f6ad8e25a04bfaf796fd918c9519ed1  gcc/DATESTAMP
  d41d8cd98f00b204e9800998ecf8427e  gcc/DEV-PHASE
  eb92e1ff5e982ca07e173e0eb286d243  gcc/FSFChangeLog
  30e1e33411566388b3164558482dc5e6  gcc/FSFChangeLog.10
--- 551,557 ----
  3eb07e0b2e542409bf73d359f7f65609  gcc/ChangeLog.ptr
  e13638e26743ba41e6011b76cc00d9a9  gcc/ChangeLog.tree-ssa
  739ab47f6425bcea1d05e4fc0542de54  gcc/ChangeLog.tuples
! 2ca39a0d6e3604c879c035f136edd817  gcc/DATESTAMP
  d41d8cd98f00b204e9800998ecf8427e  gcc/DEV-PHASE
  eb92e1ff5e982ca07e173e0eb286d243  gcc/FSFChangeLog
  30e1e33411566388b3164558482dc5e6  gcc/FSFChangeLog.10
*************** ce627f4de03a506a4263a68742891105  gcc/co
*** 3772,3778 ****
  6b425f8df921557284017d42be8efc3c  gcc/config/avr/avr-passes.def
  faa9a440c205461733203401725ce58c  gcc/config/avr/avr-protos.h
  eb753641e5bf09dbcc2be97e61be8767  gcc/config/avr/avr-stdint.h
! f4b2e0ca9954dd6c1064849f3e485603  gcc/config/avr/avr.cc
  08a0b2010b152c01b9bb5883c3d62b7f  gcc/config/avr/avr.h
  3d964ad6aff7842114bb72be953b8364  gcc/config/avr/avr.md
  01f3921785c44d9f7a522cba81a86fd0  gcc/config/avr/avr.opt
--- 3772,3778 ----
  6b425f8df921557284017d42be8efc3c  gcc/config/avr/avr-passes.def
  faa9a440c205461733203401725ce58c  gcc/config/avr/avr-protos.h
  eb753641e5bf09dbcc2be97e61be8767  gcc/config/avr/avr-stdint.h
! b7ffb8e73c11b29c21bf95743cfc4e09  gcc/config/avr/avr.cc
  08a0b2010b152c01b9bb5883c3d62b7f  gcc/config/avr/avr.h
  3d964ad6aff7842114bb72be953b8364  gcc/config/avr/avr.md
  01f3921785c44d9f7a522cba81a86fd0  gcc/config/avr/avr.opt
*************** b7e955ddfed9efbb0296ef639c095e2a  gcc/co
*** 4916,4922 ****
  80e8994ee9e6abf380e68aca6443d157  gcc/config/riscv/peephole.md
  a3d3fa9142d4e2ed34ead146941c574a  gcc/config/riscv/pic.md
  fd976e9dd7410889959b27b332b33e1b  gcc/config/riscv/predicates.md
! d7a63bbbf6653fc311084e8bb09d713b  gcc/config/riscv/riscv-avlprop.cc
  3b5651b95f6a076ccd28e73bae600e52  gcc/config/riscv/riscv-builtins.cc
  4107a71abfd2e5225d66986a671e05a5  gcc/config/riscv/riscv-c.cc
  3b7012a7d47b9aaf163e890d3e29013e  gcc/config/riscv/riscv-cmo.def
--- 4916,4922 ----
  80e8994ee9e6abf380e68aca6443d157  gcc/config/riscv/peephole.md
  a3d3fa9142d4e2ed34ead146941c574a  gcc/config/riscv/pic.md
  fd976e9dd7410889959b27b332b33e1b  gcc/config/riscv/predicates.md
! d8e9516f231ccfe43055b7c49bd115c7  gcc/config/riscv/riscv-avlprop.cc
  3b5651b95f6a076ccd28e73bae600e52  gcc/config/riscv/riscv-builtins.cc
  4107a71abfd2e5225d66986a671e05a5  gcc/config/riscv/riscv-c.cc
  3b7012a7d47b9aaf163e890d3e29013e  gcc/config/riscv/riscv-cmo.def
*************** fd8e9517de64ab23821ea1284ea6d7f6  gcc/co
*** 4990,4996 ****
  b5e46305db1116cc1758b504ea37fe74  gcc/config/riscv/vector-bfloat16.md
  88f7597398d0c8b8b87baba5fd207996  gcc/config/riscv/vector-crypto.md
  243d8ebb633382b17c68b2758bbbae23  gcc/config/riscv/vector-iterators.md
! 0177d30f61d7730f86b0c4407ba5dc3f  gcc/config/riscv/vector.md
  4ffde0be9b9a0efe78c98b4407d00397  gcc/config/riscv/xiangshan.md
  0f64aaa114ab62a1a46f7ac422d6a129  gcc/config/riscv/zc.md
  2a87e05e2432e50d410a6b774704755f  gcc/config/riscv/zicond.md
--- 4990,4996 ----
  b5e46305db1116cc1758b504ea37fe74  gcc/config/riscv/vector-bfloat16.md
  88f7597398d0c8b8b87baba5fd207996  gcc/config/riscv/vector-crypto.md
  243d8ebb633382b17c68b2758bbbae23  gcc/config/riscv/vector-iterators.md
! d7ed9ce1e5d4d83e9ac29f99b80ec4da  gcc/config/riscv/vector.md
  4ffde0be9b9a0efe78c98b4407d00397  gcc/config/riscv/xiangshan.md
  0f64aaa114ab62a1a46f7ac422d6a129  gcc/config/riscv/zc.md
  2a87e05e2432e50d410a6b774704755f  gcc/config/riscv/zicond.md
*************** a9c3cddee4e237141062720b72fe38cd  gcc/co
*** 5498,5504 ****
  5d31df44fc0a5b17beb74ce0ff38e214  gcc/coroutine-passes.cc
  2a5216aefb9cdf4b270ef8e599cc794f  gcc/coverage.cc
  722fb5fda78e55c5af5da72cad78751f  gcc/coverage.h
! 11761ba7d37976e734daa7b464a43137  gcc/cp/ChangeLog
  70c059f2b75a2fc1bb95a526b21b8cd7  gcc/cp/ChangeLog-1993
  7cbd106e10a0ba7c052bee3fe20671c2  gcc/cp/ChangeLog-1994
  3b1e3ed23ad4363f75e6fd2fbb583dee  gcc/cp/ChangeLog-1995
--- 5498,5504 ----
  5d31df44fc0a5b17beb74ce0ff38e214  gcc/coroutine-passes.cc
  2a5216aefb9cdf4b270ef8e599cc794f  gcc/coverage.cc
  722fb5fda78e55c5af5da72cad78751f  gcc/coverage.h
! 802a914f19e243e7ad576193ac3c2e27  gcc/cp/ChangeLog
  70c059f2b75a2fc1bb95a526b21b8cd7  gcc/cp/ChangeLog-1993
  7cbd106e10a0ba7c052bee3fe20671c2  gcc/cp/ChangeLog-1994
  3b1e3ed23ad4363f75e6fd2fbb583dee  gcc/cp/ChangeLog-1995
*************** aaf76a9b03fd0532d2904aef004fd66a  gcc/cp
*** 5579,5585 ****
  44e22b51797f89c9da996523a6d97f1c  gcc/cp/mapper-resolver.cc
  8a43dc7eb02c2c19d4faa7344f490b26  gcc/cp/method.cc
  b45a9fcdee93f140fe52a76dcb1e8215  gcc/cp/module.cc
! 4191315bfa6c793b37107497c36d367f  gcc/cp/name-lookup.cc
  9644410086c3beb90033e77613e9d1a7  gcc/cp/name-lookup.h
  e7fe06956aada61bcaae5168ad47a9c1  gcc/cp/operators.def
  813c253a000ee20d8d6598f56edc400e  gcc/cp/optimize.cc
--- 5579,5585 ----
  44e22b51797f89c9da996523a6d97f1c  gcc/cp/mapper-resolver.cc
  8a43dc7eb02c2c19d4faa7344f490b26  gcc/cp/method.cc
  b45a9fcdee93f140fe52a76dcb1e8215  gcc/cp/module.cc
! 4fbf6c5b0391fc30bc3aaea6d8cb1e3e  gcc/cp/name-lookup.cc
  9644410086c3beb90033e77613e9d1a7  gcc/cp/name-lookup.h
  e7fe06956aada61bcaae5168ad47a9c1  gcc/cp/operators.def
  813c253a000ee20d8d6598f56edc400e  gcc/cp/optimize.cc
*************** af0971ba9c5420512d37fa9e39c93077  gcc/du
*** 6016,6022 ****
  4adb99499107732ee645c169e7165605  gcc/dwarf2asm.cc
  e518c37d94908385da07142b92ea8cdb  gcc/dwarf2asm.h
  7efb4f91e749cd2ecf8f4c740fdb13b0  gcc/dwarf2cfi.cc
! 0a3eda9dab4d6f189c8f1075bd4b269a  gcc/dwarf2codeview.cc
  186b01005d892edba3b03fc17bd0dc8f  gcc/dwarf2codeview.h
  baaae59ceda4df837a6f62ffb0f29ee7  gcc/dwarf2ctf.cc
  1d0191caafac1774f50a47175d915ea0  gcc/dwarf2ctf.h
--- 6016,6022 ----
  4adb99499107732ee645c169e7165605  gcc/dwarf2asm.cc
  e518c37d94908385da07142b92ea8cdb  gcc/dwarf2asm.h
  7efb4f91e749cd2ecf8f4c740fdb13b0  gcc/dwarf2cfi.cc
! b21182651156de7779948fe8ca2c4160  gcc/dwarf2codeview.cc
  186b01005d892edba3b03fc17bd0dc8f  gcc/dwarf2codeview.h
  baaae59ceda4df837a6f62ffb0f29ee7  gcc/dwarf2ctf.cc
  1d0191caafac1774f50a47175d915ea0  gcc/dwarf2ctf.h
*************** fc5706ae421aa8f2f9bba7fe2c637237  gcc/gi
*** 6314,6320 ****
  19e41ad97511268bfc78109e4dbf8065  gcc/gimple-warn-recursion.cc
  9a2e63724237611a8367c48b2cafed18  gcc/gimple.cc
  2b31c9448b3ca4914742ffde943425c0  gcc/gimple.def
! 5dad29545d58e66718b3dc5060f127bc  gcc/gimple.h
  140b5c45a362b9c0c981b683560d4ef8  gcc/gimplify-me.cc
  84814cb09300f3db388dd0d22133ccb4  gcc/gimplify-me.h
  8c53ac4f655bf4ed40f3c2f5775f0ba6  gcc/gimplify.cc
--- 6314,6320 ----
  19e41ad97511268bfc78109e4dbf8065  gcc/gimple-warn-recursion.cc
  9a2e63724237611a8367c48b2cafed18  gcc/gimple.cc
  2b31c9448b3ca4914742ffde943425c0  gcc/gimple.def
! de3c6e76ea556b82fe244a285b883d51  gcc/gimple.h
  140b5c45a362b9c0c981b683560d4ef8  gcc/gimplify-me.cc
  84814cb09300f3db388dd0d22133ccb4  gcc/gimplify-me.h
  8c53ac4f655bf4ed40f3c2f5775f0ba6  gcc/gimplify.cc
*************** b1497a03867668af210c32280876fdd7  gcc/sy
*** 8445,8451 ****
  b4bbfe8a8f62eed5c75429762e88d324  gcc/targhooks.cc
  ae57260b8b60d8b8dfaef3556c3ac5e5  gcc/targhooks.h
  f39fcaa8197187283ccfed40107b426d  gcc/testsuite/.gitattributes
! 2b485fea5d3a179effba9f62087ecff6  gcc/testsuite/ChangeLog
  47e8e29b649ead73b8a1e4797da470ed  gcc/testsuite/ChangeLog-1993-2007
  35198a9e4fd31b935de8789faabf3351  gcc/testsuite/ChangeLog-2008
  0f19934540750356d1b91595cebfd9a8  gcc/testsuite/ChangeLog-2009
--- 8445,8451 ----
  b4bbfe8a8f62eed5c75429762e88d324  gcc/targhooks.cc
  ae57260b8b60d8b8dfaef3556c3ac5e5  gcc/targhooks.h
  f39fcaa8197187283ccfed40107b426d  gcc/testsuite/.gitattributes
! 0e8077c3031c49addd868c5a2d548425  gcc/testsuite/ChangeLog
  47e8e29b649ead73b8a1e4797da470ed  gcc/testsuite/ChangeLog-1993-2007
  35198a9e4fd31b935de8789faabf3351  gcc/testsuite/ChangeLog-2008
  0f19934540750356d1b91595cebfd9a8  gcc/testsuite/ChangeLog-2009
*************** ad9ef329572dab16f2d3d5613538cd3f  gcc/te
*** 27009,27014 ****
--- 27009,27016 ----
  95ab3577dee99f3d59838a96f1cbf4fc  gcc/testsuite/g++.dg/modules/mod-tpl-2_b.C
  bbb42c3f40f239c2fad38126884d3bfd  gcc/testsuite/g++.dg/modules/modules.exp
  f49c118362c9a45e801940d0725a767d  gcc/testsuite/g++.dg/modules/mutual-friend.ii
+ 16465126f101e83b3563394ad1efa4dc  gcc/testsuite/g++.dg/modules/namespace-12_a.C
+ 9b622a44d3f7299cd41ff2819e176ecd  gcc/testsuite/g++.dg/modules/namespace-12_b.C
  ebce3d8effe71472ad6b1910c0b435f6  gcc/testsuite/g++.dg/modules/namespace-1_a.C
  c34c17e18223f5c84607e68a5f2dd81a  gcc/testsuite/g++.dg/modules/namespace-1_b.C
  9fc8de4ea84d52d9c619890b0581ed9e  gcc/testsuite/g++.dg/modules/namespace-1_c.C
*************** bdd08773400d12af9ac3b370d255ccca  libgcc
*** 119136,119142 ****
  40eda5c7825bbaa25723845c3f9caabd  libgcc/config/ia64/vms-unwind.h
  82cf742d0711f5ea45c5d4ae1837083b  libgcc/config/iq2000/lib2funcs.c
  102f7dad8ad6b54434a1b8313d1e42c4  libgcc/config/iq2000/t-iq2000
! c774267cdd1c209869ac0f467b1d3c29  libgcc/config/libbid/ChangeLog
  c32cb18bbfd73dda967b708b16ce8e89  libgcc/config/libbid/_addsub_dd.c
  a0801827ba65b25ba20a91e765121b7f  libgcc/config/libbid/_addsub_sd.c
  1047ed1c06b6914a7df19b0739d305c3  libgcc/config/libbid/_addsub_td.c
--- 119138,119144 ----
  40eda5c7825bbaa25723845c3f9caabd  libgcc/config/ia64/vms-unwind.h
  82cf742d0711f5ea45c5d4ae1837083b  libgcc/config/iq2000/lib2funcs.c
  102f7dad8ad6b54434a1b8313d1e42c4  libgcc/config/iq2000/t-iq2000
! e897c3a254d98f99f7dbc69cd14ae1eb  libgcc/config/libbid/ChangeLog
  c32cb18bbfd73dda967b708b16ce8e89  libgcc/config/libbid/_addsub_dd.c
  a0801827ba65b25ba20a91e765121b7f  libgcc/config/libbid/_addsub_sd.c
  1047ed1c06b6914a7df19b0739d305c3  libgcc/config/libbid/_addsub_td.c
*************** d680e7307fb59fe24f8431e179191f16  libssp
*** 131874,131880 ****
  534c3fb4a88e5c1f70db35c12b7742c3  libssp/vsnprintf-chk.c
  34daeb04a522ee796098df4446d6ce61  libssp/vsprintf-chk.c
  9e2de2e1f20ab0ffa2201164de02824f  libstdc++-v3/.editorconfig
! 07cee8e6e15357191ef14245ae951a57  libstdc++-v3/ChangeLog
  7aa6c40440a44fcf5ec94c066160c2f8  libstdc++-v3/ChangeLog-1998
  7aff86600b6a1ed3fa87305075a92db0  libstdc++-v3/ChangeLog-1999
  a6f28e8fc9bb07696a9e068b439a3a87  libstdc++-v3/ChangeLog-2000
--- 131876,131882 ----
  534c3fb4a88e5c1f70db35c12b7742c3  libssp/vsnprintf-chk.c
  34daeb04a522ee796098df4446d6ce61  libssp/vsprintf-chk.c
  9e2de2e1f20ab0ffa2201164de02824f  libstdc++-v3/.editorconfig
! b59d543b464113140da50236adb1b73e  libstdc++-v3/ChangeLog
  7aa6c40440a44fcf5ec94c066160c2f8  libstdc++-v3/ChangeLog-1998
  7aff86600b6a1ed3fa87305075a92db0  libstdc++-v3/ChangeLog-1999
  a6f28e8fc9bb07696a9e068b439a3a87  libstdc++-v3/ChangeLog-2000
*************** bb19c550085b43f6251959e05791f4c6  libstd
*** 132658,132664 ****
  551d2aa52bb5f639424652a68f20dae7  libstdc++-v3/include/bits/stl_algo.h
  1b4047632ad5c13fb8b11a4e72df1ff6  libstdc++-v3/include/bits/stl_algobase.h
  50378fb402a4f63ad663a2763f5cd08a  libstdc++-v3/include/bits/stl_bvector.h
! 8b19d3c29a5f7649b167865966c49a51  libstdc++-v3/include/bits/stl_construct.h
  bf0e42750b9f0a11336d82706c33fedb  libstdc++-v3/include/bits/stl_deque.h
  8bd7e182b77be76921e6f1bead44217f  libstdc++-v3/include/bits/stl_function.h
  c6b4511debfbf2f7971dbae97dbcc998  libstdc++-v3/include/bits/stl_heap.h
--- 132660,132666 ----
  551d2aa52bb5f639424652a68f20dae7  libstdc++-v3/include/bits/stl_algo.h
  1b4047632ad5c13fb8b11a4e72df1ff6  libstdc++-v3/include/bits/stl_algobase.h
  50378fb402a4f63ad663a2763f5cd08a  libstdc++-v3/include/bits/stl_bvector.h
! f65ad579a9fde04c6c8620718aa6be84  libstdc++-v3/include/bits/stl_construct.h
  bf0e42750b9f0a11336d82706c33fedb  libstdc++-v3/include/bits/stl_deque.h
  8bd7e182b77be76921e6f1bead44217f  libstdc++-v3/include/bits/stl_function.h
  c6b4511debfbf2f7971dbae97dbcc998  libstdc++-v3/include/bits/stl_heap.h
*************** e377e5172a37470411327d66be24b6a0  libstd
*** 132670,132676 ****
  2525257e0e5e980d1c62e5c335ccd152  libstdc++-v3/include/bits/stl_multimap.h
  ed492cb12f700a39913c303324c4d3d0  libstdc++-v3/include/bits/stl_multiset.h
  480b44132613538ac869874bf3fc4e45  libstdc++-v3/include/bits/stl_numeric.h
! e767ec7b42d6a51baeeb74d932a1174f  libstdc++-v3/include/bits/stl_pair.h
  c187c580a48d3cfe2a81c4230220002d  libstdc++-v3/include/bits/stl_queue.h
  ef960a69cca203133e14f230f029c45f  libstdc++-v3/include/bits/stl_raw_storage_iter.h
  8b75378d24bf1cd680dec9034e5fa6cf  libstdc++-v3/include/bits/stl_relops.h
--- 132672,132678 ----
  2525257e0e5e980d1c62e5c335ccd152  libstdc++-v3/include/bits/stl_multimap.h
  ed492cb12f700a39913c303324c4d3d0  libstdc++-v3/include/bits/stl_multiset.h
  480b44132613538ac869874bf3fc4e45  libstdc++-v3/include/bits/stl_numeric.h
! 6e80cbf443dcf700e091712db15a3a4c  libstdc++-v3/include/bits/stl_pair.h
  c187c580a48d3cfe2a81c4230220002d  libstdc++-v3/include/bits/stl_queue.h
  ef960a69cca203133e14f230f029c45f  libstdc++-v3/include/bits/stl_raw_storage_iter.h
  8b75378d24bf1cd680dec9034e5fa6cf  libstdc++-v3/include/bits/stl_relops.h
*************** f480e69017dc35cc6fab6630bada4617  libstd
*** 132762,132768 ****
  aeb1d3638d20d4792a586c61c7c12544  libstdc++-v3/include/c_global/ciso646
  9d260929c3a8f563e7d273517c02af88  libstdc++-v3/include/c_global/climits
  a5b91f8c38eddd257a048cb2d3085834  libstdc++-v3/include/c_global/clocale
! 6452d0c55d05c54dbae7cbd855dfeceb  libstdc++-v3/include/c_global/cmath
  5674356fc9542152636dace9bfc3c2c8  libstdc++-v3/include/c_global/csetjmp
  41b8204a8236e2ec4001289746a8abef  libstdc++-v3/include/c_global/csignal
  e32033f054c4ecf20bd8d5e93aebf80d  libstdc++-v3/include/c_global/cstdalign
--- 132764,132770 ----
  aeb1d3638d20d4792a586c61c7c12544  libstdc++-v3/include/c_global/ciso646
  9d260929c3a8f563e7d273517c02af88  libstdc++-v3/include/c_global/climits
  a5b91f8c38eddd257a048cb2d3085834  libstdc++-v3/include/c_global/clocale
! 8c328b3732cea7e0296e6b53109bc92f  libstdc++-v3/include/c_global/cmath
  5674356fc9542152636dace9bfc3c2c8  libstdc++-v3/include/c_global/csetjmp
  41b8204a8236e2ec4001289746a8abef  libstdc++-v3/include/c_global/csignal
  e32033f054c4ecf20bd8d5e93aebf80d  libstdc++-v3/include/c_global/cstdalign
*************** c3c1dced3bd41cb17dfb1d65d089f9d3  libstd
*** 133265,133271 ****
  264518c8a6bbba954d8dfbc74162a7e2  libstdc++-v3/include/std/coroutine
  55eed7b7857afaaeaf8138c0485a60fa  libstdc++-v3/include/std/deque
  ae96a272e65886b9386e26db37971da1  libstdc++-v3/include/std/execution
! 13f5f9752c9229e8ce2f5a145ba63b2a  libstdc++-v3/include/std/expected
  c2e511ae49957a9f02446e544d201582  libstdc++-v3/include/std/filesystem
  5aa136a1aaeb7658dee6ccdd5cb6e5c6  libstdc++-v3/include/std/flat_map
  8a5fa0a4bb554b2db8c2fed26a6993ca  libstdc++-v3/include/std/flat_set
--- 133267,133273 ----
  264518c8a6bbba954d8dfbc74162a7e2  libstdc++-v3/include/std/coroutine
  55eed7b7857afaaeaf8138c0485a60fa  libstdc++-v3/include/std/deque
  ae96a272e65886b9386e26db37971da1  libstdc++-v3/include/std/execution
! c7512fdd688111026ada39c2eff08f8e  libstdc++-v3/include/std/expected
  c2e511ae49957a9f02446e544d201582  libstdc++-v3/include/std/filesystem
  5aa136a1aaeb7658dee6ccdd5cb6e5c6  libstdc++-v3/include/std/flat_map
  8a5fa0a4bb554b2db8c2fed26a6993ca  libstdc++-v3/include/std/flat_set
*************** f7460188b5b2ffa503809fc888af8523  libstd
*** 133282,133294 ****
  f025fc1b4184111fce84c2384de325d2  libstdc++-v3/include/std/istream
  b33cecab88c41408b5c244cc328a9cae  libstdc++-v3/include/std/iterator
  0238ca5f0c5de4952acb632ab76978e1  libstdc++-v3/include/std/latch
! ed6663b9ff729b09c2bacefa3568d1fc  libstdc++-v3/include/std/limits
  c9ef2791c2dc0d6c98a1a85c8f6aa473  libstdc++-v3/include/std/list
  f4af31191dea172207576960ad71d42d  libstdc++-v3/include/std/locale
  8b76fc7da76f0579c2fd1f22821d03be  libstdc++-v3/include/std/map
  ba52fc2e0904a31a08183de15bd8c424  libstdc++-v3/include/std/memory
  9e86c11ff29d60fddf403674e9182b36  libstdc++-v3/include/std/memory_resource
! a7b8e00d6cf56ea696ec15140b7c1d15  libstdc++-v3/include/std/mutex
  ef0d0725f5b70a4c1b5b62b84b2b63f7  libstdc++-v3/include/std/numbers
  dc13616d50b61cc61eb87d25bacd6a19  libstdc++-v3/include/std/numeric
  79b194dcc53ff3f04fcf800d0fc26cfa  libstdc++-v3/include/std/optional
--- 133284,133296 ----
  f025fc1b4184111fce84c2384de325d2  libstdc++-v3/include/std/istream
  b33cecab88c41408b5c244cc328a9cae  libstdc++-v3/include/std/iterator
  0238ca5f0c5de4952acb632ab76978e1  libstdc++-v3/include/std/latch
! 6fee3bd2ae266e1c139222a8029a295a  libstdc++-v3/include/std/limits
  c9ef2791c2dc0d6c98a1a85c8f6aa473  libstdc++-v3/include/std/list
  f4af31191dea172207576960ad71d42d  libstdc++-v3/include/std/locale
  8b76fc7da76f0579c2fd1f22821d03be  libstdc++-v3/include/std/map
  ba52fc2e0904a31a08183de15bd8c424  libstdc++-v3/include/std/memory
  9e86c11ff29d60fddf403674e9182b36  libstdc++-v3/include/std/memory_resource
! 96d4004072aee0df9b1cac29de7649c2  libstdc++-v3/include/std/mutex
  ef0d0725f5b70a4c1b5b62b84b2b63f7  libstdc++-v3/include/std/numbers
  dc13616d50b61cc61eb87d25bacd6a19  libstdc++-v3/include/std/numeric
  79b194dcc53ff3f04fcf800d0fc26cfa  libstdc++-v3/include/std/optional
*************** c928488888eda816e615011cdcb4d90d  libstd
*** 133850,133856 ****
  662dd5cb650a0a850bc5fe376b02bd76  libstdc++-v3/testsuite/18_support/new_delete_placement.cc
  4029157ee3d03b1ba61e5d4a60e277cc  libstdc++-v3/testsuite/18_support/new_handler.cc
  6a319e680b081fce4c520de674e32ee3  libstdc++-v3/testsuite/18_support/new_nothrow.cc
! 49e7685f2fc05cdd1dd5d2a404340058  libstdc++-v3/testsuite/18_support/numeric_limits/128bit.cc
  e3d51c0ec766a987bfdde32fb16c811a  libstdc++-v3/testsuite/18_support/numeric_limits/29989.cc
  0277ffff4a7069a9ad290792be3467ca  libstdc++-v3/testsuite/18_support/numeric_limits/40856.cc
  7f16120374b01ead698f1344e1feae95  libstdc++-v3/testsuite/18_support/numeric_limits/char16_32_t.cc
--- 133852,133858 ----
  662dd5cb650a0a850bc5fe376b02bd76  libstdc++-v3/testsuite/18_support/new_delete_placement.cc
  4029157ee3d03b1ba61e5d4a60e277cc  libstdc++-v3/testsuite/18_support/new_handler.cc
  6a319e680b081fce4c520de674e32ee3  libstdc++-v3/testsuite/18_support/new_nothrow.cc
! 457817958c82b8b3f75ec9e7b60e2627  libstdc++-v3/testsuite/18_support/numeric_limits/128bit.cc
  e3d51c0ec766a987bfdde32fb16c811a  libstdc++-v3/testsuite/18_support/numeric_limits/29989.cc
  0277ffff4a7069a9ad290792be3467ca  libstdc++-v3/testsuite/18_support/numeric_limits/40856.cc
  7f16120374b01ead698f1344e1feae95  libstdc++-v3/testsuite/18_support/numeric_limits/char16_32_t.cc
*************** b6846002a3a56bb10b1621e1792c246a  libstd
*** 134240,134245 ****
--- 134242,134248 ----
  2fe263333a538ddd2a8cd7953725ff52  libstdc++-v3/testsuite/20_util/expected/lwg3877.cc
  72b0fd75fcf0b218f79d93c61319bb5d  libstdc++-v3/testsuite/20_util/expected/lwg3886.cc
  8717f284befd8d0ee8fe1e50dcc6a7a7  libstdc++-v3/testsuite/20_util/expected/lwg3938.cc
+ 97aac511f36cb21427676e071c189c5a  libstdc++-v3/testsuite/20_util/expected/lwg4222.cc
  4824cecd15088232e3348b8bad95b2ce  libstdc++-v3/testsuite/20_util/expected/monadic.cc
  4bfafe03465669c57c9cf2717bc9b00e  libstdc++-v3/testsuite/20_util/expected/observers.cc
  8854ae6d49bfd2df3b2f3a9095f61fc4  libstdc++-v3/testsuite/20_util/expected/requirements.cc
*************** c27224cc73720e56bd8e333f40d4c8b6  libstd
*** 134866,134878 ****
  b6ec6940575a0e07d16235c054dfd511  libstdc++-v3/testsuite/20_util/pair/astuple/constexpr_get_by_type.cc
  f2f2b91309730f195c55679493733944  libstdc++-v3/testsuite/20_util/pair/astuple/get-2.cc
  ec6b64ce59fd0cdc4da2c87413aca483  libstdc++-v3/testsuite/20_util/pair/astuple/get.cc
! c091b1a30d02efa1a5c4242c9a095b10  libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type.cc
  3fda333c62a545fe2651bddf9f002ece  libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type_neg.cc
  564f7d68dbe4fd3956684aa724ffa91e  libstdc++-v3/testsuite/20_util/pair/astuple/get_neg.cc
  2d9ee0ff43279e9bf93015d92d067695  libstdc++-v3/testsuite/20_util/pair/comparison_operators/constexpr.cc
  d9787fa4df26e7d94fdf4b2e072b1cf2  libstdc++-v3/testsuite/20_util/pair/comparison_operators/constexpr_c++20.cc
  1554d14710a3f9fa155dc38437c6c3ae  libstdc++-v3/testsuite/20_util/pair/comparison_operators/constrained.cc
  04fed045318edda260e590d9ad1630a6  libstdc++-v3/testsuite/20_util/pair/comparison_operators/lwg3865.cc
  94af77da42e85818ea59aed3c5fef8db  libstdc++-v3/testsuite/20_util/pair/cons/92878_92947.cc
  c5964cf74c99c86ce570bfdb15835bb8  libstdc++-v3/testsuite/20_util/pair/cons/99957.cc
  8627f9e27d2f45fb1bcbc23d24e6eaaf  libstdc++-v3/testsuite/20_util/pair/cons/constexpr.cc
--- 134869,134882 ----
  b6ec6940575a0e07d16235c054dfd511  libstdc++-v3/testsuite/20_util/pair/astuple/constexpr_get_by_type.cc
  f2f2b91309730f195c55679493733944  libstdc++-v3/testsuite/20_util/pair/astuple/get-2.cc
  ec6b64ce59fd0cdc4da2c87413aca483  libstdc++-v3/testsuite/20_util/pair/astuple/get.cc
! 7b695dd84077ebc9ded8b6f97ea9c376  libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type.cc
  3fda333c62a545fe2651bddf9f002ece  libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type_neg.cc
  564f7d68dbe4fd3956684aa724ffa91e  libstdc++-v3/testsuite/20_util/pair/astuple/get_neg.cc
  2d9ee0ff43279e9bf93015d92d067695  libstdc++-v3/testsuite/20_util/pair/comparison_operators/constexpr.cc
  d9787fa4df26e7d94fdf4b2e072b1cf2  libstdc++-v3/testsuite/20_util/pair/comparison_operators/constexpr_c++20.cc
  1554d14710a3f9fa155dc38437c6c3ae  libstdc++-v3/testsuite/20_util/pair/comparison_operators/constrained.cc
  04fed045318edda260e590d9ad1630a6  libstdc++-v3/testsuite/20_util/pair/comparison_operators/lwg3865.cc
+ de22916c6d33b4376c80895f09fe7345  libstdc++-v3/testsuite/20_util/pair/cons/110853.cc
  94af77da42e85818ea59aed3c5fef8db  libstdc++-v3/testsuite/20_util/pair/cons/92878_92947.cc
  c5964cf74c99c86ce570bfdb15835bb8  libstdc++-v3/testsuite/20_util/pair/cons/99957.cc
  8627f9e27d2f45fb1bcbc23d24e6eaaf  libstdc++-v3/testsuite/20_util/pair/cons/constexpr.cc
*************** a52bfedb1a381a0202dbb55c703013a0  libstd
*** 135130,135136 ****
  7c6df795389d4f9adf111d4d879fa257  libstdc++-v3/testsuite/20_util/specialized_algorithms/destroy/constrained.cc
  0c389150c2f95a24f62d342469a7c67e  libstdc++-v3/testsuite/20_util/specialized_algorithms/feature_test_macro.cc
  e7f673de33f454714074c0cd02339d78  libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/1.cc
! cd86fee2a39f32a183ffe460241c5d26  libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc
  ef6acc638fee193e17ccbdb06ce4dde8  libstdc++-v3/testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc
  09c95029dd16edca10e38b6f40f9859b  libstdc++-v3/testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc
  cc190104693360d7b581aac2061c8a7c  libstdc++-v3/testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc
--- 135134,135141 ----
  7c6df795389d4f9adf111d4d879fa257  libstdc++-v3/testsuite/20_util/specialized_algorithms/destroy/constrained.cc
  0c389150c2f95a24f62d342469a7c67e  libstdc++-v3/testsuite/20_util/specialized_algorithms/feature_test_macro.cc
  e7f673de33f454714074c0cd02339d78  libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/1.cc
! 3d215c86194df15b75fdf87c57f36962  libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc
! 26b39447a16317aaeaca689f89179e8a  libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc
  ef6acc638fee193e17ccbdb06ce4dde8  libstdc++-v3/testsuite/20_util/specialized_algorithms/pstl/uninitialized_construct.cc
  09c95029dd16edca10e38b6f40f9859b  libstdc++-v3/testsuite/20_util/specialized_algorithms/pstl/uninitialized_copy_move.cc
  cc190104693360d7b581aac2061c8a7c  libstdc++-v3/testsuite/20_util/specialized_algorithms/pstl/uninitialized_fill_destroy.cc
*************** e3eb212137f2101dd4ceb83392d4f604  libstd
*** 138049,138056 ****
  61e8da4cd434fb8870df8cc065622ac8  libstdc++-v3/testsuite/23_containers/vector/cons/constexpr.cc
  6273d6891837720e35cbfccb6eaa7e66  libstdc++-v3/testsuite/23_containers/vector/cons/deduction.cc
  7a66bf7f5aca27ddc8ca203f2f55a9b6  libstdc++-v3/testsuite/23_containers/vector/cons/destroy-adl.cc
! 03d4bbea96b2b7d622e0f0d4ed285e82  libstdc++-v3/testsuite/23_containers/vector/cons/destructible_debug_neg.cc
! c321498bb25d81efcdb153b4281a5653  libstdc++-v3/testsuite/23_containers/vector/cons/destructible_neg.cc
  833017a30b2de971981f574bdc3fd989  libstdc++-v3/testsuite/23_containers/vector/cons/from_range.cc
  95343136dbd192e25dfe16b3a4eda01d  libstdc++-v3/testsuite/23_containers/vector/cons/moveable.cc
  f1d10ca32c2d09fd89ac466ce1077fce  libstdc++-v3/testsuite/23_containers/vector/cons/moveable2.cc
--- 138054,138061 ----
  61e8da4cd434fb8870df8cc065622ac8  libstdc++-v3/testsuite/23_containers/vector/cons/constexpr.cc
  6273d6891837720e35cbfccb6eaa7e66  libstdc++-v3/testsuite/23_containers/vector/cons/deduction.cc
  7a66bf7f5aca27ddc8ca203f2f55a9b6  libstdc++-v3/testsuite/23_containers/vector/cons/destroy-adl.cc
! 2694e9f5cb5094fe107333e8e893566e  libstdc++-v3/testsuite/23_containers/vector/cons/destructible_debug_neg.cc
! 3910bbb9d09dde186eeeeb0f6fc1fbab  libstdc++-v3/testsuite/23_containers/vector/cons/destructible_neg.cc
  833017a30b2de971981f574bdc3fd989  libstdc++-v3/testsuite/23_containers/vector/cons/from_range.cc
  95343136dbd192e25dfe16b3a4eda01d  libstdc++-v3/testsuite/23_containers/vector/cons/moveable.cc
  f1d10ca32c2d09fd89ac466ce1077fce  libstdc++-v3/testsuite/23_containers/vector/cons/moveable2.cc
*************** d15cdcf55f49de39c4fdefc419be3fea  libstd
*** 141458,141463 ****
--- 141463,141469 ----
  96c8307cdf633de4f51db02425271ebe  libstdc++-v3/testsuite/30_threads/thread/native_handle/cancel.cc
  8fff897afa187580148ceece57bbcb70  libstdc++-v3/testsuite/30_threads/thread/native_handle/typesizes.cc
  679cf57e4a61942ecaa9210578320dff  libstdc++-v3/testsuite/30_threads/thread/swap/1.cc
+ ec30d5440c1422ca4216d48631bf8250  libstdc++-v3/testsuite/30_threads/timed_mutex/121496.cc
  c5b715fd07d0ce109f0f584a1f179b22  libstdc++-v3/testsuite/30_threads/timed_mutex/cons/1.cc
  d54d8adc4826a7b1e97afcd4d9b8f264  libstdc++-v3/testsuite/30_threads/timed_mutex/cons/assign_neg.cc
  6032a54633b105ccfa64ff5ea2dd4b06  libstdc++-v3/testsuite/30_threads/timed_mutex/cons/copy_neg.cc
diff -Nrcpad gcc-15-20250830/fixincludes/ChangeLog gcc-15-20250906/fixincludes/ChangeLog
*** gcc-15-20250830/fixincludes/ChangeLog	Sat Aug 30 22:32:23 2025
--- gcc-15-20250906/fixincludes/ChangeLog	Sat Sep  6 22:32:48 2025
***************
*** 1,3 ****
--- 1,14 ----
+ 2025-08-31  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-08-28  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR bootstrap/118009
+ 	PR bootstrap/119089
+ 	* inclhack.def (pthread_incomplete_struct_argument): Add bypass.
+ 	* fixincl.tpl: Remove reference to svn in comment.
+ 	* fixincl.x: Regenerate.
+ 
  2025-08-08  Release Manager
  
  	* GCC 15.2.0 released.
diff -Nrcpad gcc-15-20250830/fixincludes/fixincl.tpl gcc-15-20250906/fixincludes/fixincl.tpl
*** gcc-15-20250830/fixincludes/fixincl.tpl	Sat Aug 30 22:32:24 2025
--- gcc-15-20250906/fixincludes/fixincl.tpl	Sat Sep  6 22:32:48 2025
*************** x=fixincl.x =]
*** 5,11 ****
       (dne "-D" " * " "/* ")
       (dne " * " "/* ") ) =]
   */
! /* DO NOT SVN-MERGE THIS FILE, EITHER [=
     (define re-ct 0) (define max-mach 0) (define ct 0)
     (define HACK "") (define Hack "")    (define tmp "") 
     (shell "date") =]
--- 5,11 ----
       (dne "-D" " * " "/* ")
       (dne " * " "/* ") ) =]
   */
! /* DO NOT MERGE THIS FILE, EITHER [=
     (define re-ct 0) (define max-mach 0) (define ct 0)
     (define HACK "") (define Hack "")    (define tmp "") 
     (shell "date") =]
diff -Nrcpad gcc-15-20250830/fixincludes/fixincl.x gcc-15-20250906/fixincludes/fixincl.x
*** gcc-15-20250830/fixincludes/fixincl.x	Sat Aug 30 22:34:24 2025
--- gcc-15-20250906/fixincludes/fixincl.x	Sat Sep  6 22:35:15 2025
***************
*** 2,12 ****
   *
   * DO NOT EDIT THIS FILE   (fixincl.x)
   *
!  * It has been AutoGen-ed  July 10, 2024 at 02:49:05 PM by AutoGen 5.18.16
   * From the definitions    inclhack.def
   * and the template file   fixincl
   */
! /* DO NOT SVN-MERGE THIS FILE, EITHER Wed Jul 10 14:49:05 CEST 2024
   *
   * You must regenerate it.  Use the ./genfixes script.
   *
--- 2,12 ----
   *
   * DO NOT EDIT THIS FILE   (fixincl.x)
   *
!  * It has been AutoGen-ed  August 28, 2025 at 05:57:29 PM by AutoGen 5.18.16
   * From the definitions    inclhack.def
   * and the template file   fixincl
   */
! /* DO NOT MERGE THIS FILE, EITHER Thu Aug 28 17:57:29 BST 2025
   *
   * You must regenerate it.  Use the ./genfixes script.
   *
*************** tSCC zPthread_Incomplete_Struct_Argument
*** 7547,7554 ****
  tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
         "struct __jmp_buf_tag";
  
! #define    PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT  1
  static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
    { TT_EGREP,    zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
  
  /*
--- 7547,7561 ----
  tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
         "struct __jmp_buf_tag";
  
! /*
!  *  content bypass pattern - skip fix if pattern found
!  */
! tSCC zPthread_Incomplete_Struct_ArgumentBypass0[] =
!        "bits/types/struct___jmp_buf_tag.h";
! 
! #define    PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT  2
  static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
+   { TT_NEGREP,   zPthread_Incomplete_Struct_ArgumentBypass0, (regex_t*)NULL },
    { TT_EGREP,    zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
  
  /*
*************** static const char* apzX11_SprintfPatch[]
*** 11202,11208 ****
   *
   *  List of all fixes
   */
! #define REGEX_COUNT          318
  #define MACH_LIST_SIZE_LIMIT 187
  #define FIX_COUNT            274
  
--- 11209,11215 ----
   *
   *  List of all fixes
   */
! #define REGEX_COUNT          319
  #define MACH_LIST_SIZE_LIMIT 187
  #define FIX_COUNT            274
  
diff -Nrcpad gcc-15-20250830/fixincludes/inclhack.def gcc-15-20250906/fixincludes/inclhack.def
*** gcc-15-20250830/fixincludes/inclhack.def	Sat Aug 30 22:32:24 2025
--- gcc-15-20250906/fixincludes/inclhack.def	Sat Sep  6 22:32:48 2025
*************** fix = {
*** 3803,3808 ****
--- 3803,3809 ----
      hackname  = pthread_incomplete_struct_argument;
      files     = pthread.h;
      select    = "struct __jmp_buf_tag";
+     bypass    = "bits/types/struct___jmp_buf_tag.h";
      c_fix     = format;
      c_fix_arg = "%1 *%2%3";
      c_fix_arg = "^(extern int __sigsetjmp \\(struct __jmp_buf_tag) "
diff -Nrcpad gcc-15-20250830/gcc/ChangeLog gcc-15-20250906/gcc/ChangeLog
*** gcc-15-20250830/gcc/ChangeLog	Sat Aug 30 22:32:24 2025
--- gcc-15-20250906/gcc/ChangeLog	Sat Sep  6 22:32:48 2025
***************
*** 1,3 ****
--- 1,39 ----
+ 2025-09-05  Georg-Johann Lay  <avr@gjlay.de>
+ 
+ 	Backported from master:
+ 	2025-09-05  Georg-Johann Lay  <avr@gjlay.de>
+ 
+ 	PR target/121794
+ 	* config/avr/avr.cc (avr_out_compare): Only use zero_reg
+ 	when there is no other sequence of the same length.
+ 	(avr_out_plus_ext): Same.
+ 	(avr_out_plus_1): Same.
+ 
+ 2025-09-02  Jeff Law  <jlaw@ventanamicro.com>
+ 
+ 	Backported from master:
+ 	2025-08-29  Jeff Law  <jlaw@ventanamicro.com>
+ 
+ 	PR target/121548
+ 	* config/riscv/riscv-avlprop.cc (get_insn_vtype_mode): Assert
+ 	MODE_IDX is smaller than the number of operands.
+ 	(simplify_replace_vlmax_avl): Similarly.
+ 	(pass_avlprop::get_vlmax_ta_preferred_avl): Similarly.
+ 	* config/riscv/vector.md: Override merge_op_idx computation
+ 	for simple moves, just like is done for avl_type_idx and mode_idx.
+ 
+ 2025-09-01  Mark Harmstone  <mark@harmstone.com>
+ 
+ 	* dwarf2codeview.cc (get_type_num_array_type): Don't try to
+ 	encode non-C-style arrays.
+ 
+ 2025-08-31  Benjamin Wu  <bwu25@cs.washington.edu>
+ 
+ 	Backported from master:
+ 	2025-07-13  Benjamin Wu  <bwu25@cs.washington.edu>
+ 
+ 	* gimple.h (GTMA_DOES_GO_IRREVOCABLE): Fix typo.
+ 
  2025-08-25  Xi Ruoyao  <xry111@xry111.site>
  
  	Backported from master:
diff -Nrcpad gcc-15-20250830/gcc/DATESTAMP gcc-15-20250906/gcc/DATESTAMP
*** gcc-15-20250830/gcc/DATESTAMP	Sat Aug 30 22:32:24 2025
--- gcc-15-20250906/gcc/DATESTAMP	Sat Sep  6 22:32:48 2025
***************
*** 1 ****
! 20250830
--- 1 ----
! 20250906
diff -Nrcpad gcc-15-20250830/gcc/config/avr/avr.cc gcc-15-20250906/gcc/config/avr/avr.cc
*** gcc-15-20250830/gcc/config/avr/avr.cc	Sat Aug 30 22:32:27 2025
--- gcc-15-20250906/gcc/config/avr/avr.cc	Sat Sep  6 22:32:52 2025
*************** avr_out_compare (rtx_insn *insn, rtx *xo
*** 6667,6700 ****
  	    }
  	}
  
!       /* Comparing against 0 is easy.  */
! 
!       if (val8 == 0)
! 	{
! 	  avr_asm_len (i == start
! 		       ? "cp %0,__zero_reg__"
! 		       : "cpc %0,__zero_reg__", xop, plen, 1);
! 	  continue;
! 	}
  
!       /* Upper registers can compare and subtract-with-carry immediates.
! 	 Notice that compare instructions do the same as respective subtract
! 	 instruction; the only difference is that comparisons don't write
! 	 the result back to the target register.  */
  
!       if (test_hard_reg_class (LD_REGS, xop[0]))
  	{
! 	  if (i == start)
! 	    {
! 	      avr_asm_len ("cpi %0,%1", xop, plen, 1);
! 	      continue;
! 	    }
! 	  else if (reg_unused_after (insn, xreg))
! 	    {
! 	      avr_asm_len ("sbci %0,%1", xop, plen, 1);
! 	      changed[i] = true;
! 	      continue;
! 	    }
  	}
  
        /* When byte comparisons for an EQ or NE comparison look like
--- 6667,6680 ----
  	    }
  	}
  
!       /* Otherwise, compare a single byte with CP / CPC or equivalent.  */
  
!       const bool ldreg_p = test_hard_reg_class (LD_REGS, xop[0]);
  
!       if (ldreg_p && i == start)
  	{
! 	  avr_asm_len ("cpi %0,%1", xop, plen, 1);
! 	  continue;
  	}
  
        /* When byte comparisons for an EQ or NE comparison look like
*************** avr_out_compare (rtx_insn *insn, rtx *xo
*** 6711,6717 ****
  
  	  for (int j = start; j < i && ! found; ++j)
  	    if (val8 == avr_uint8 (xval, j)
! 		// Make sure that we didn't clobber x[j] above.
  		&& ! changed[j])
  	      {
  		rtx op[] = { xop[0], avr_byte (xreg, j) };
--- 6691,6697 ----
  
  	  for (int j = start; j < i && ! found; ++j)
  	    if (val8 == avr_uint8 (xval, j)
! 		// Make sure that we didn't clobber x[j] with SBCI.
  		&& ! changed[j])
  	      {
  		rtx op[] = { xop[0], avr_byte (xreg, j) };
*************** avr_out_compare (rtx_insn *insn, rtx *xo
*** 6723,6728 ****
--- 6703,6739 ----
  	    continue;
  	}
  
+       /* Upper registers can SBCI which has the same effect like CPC on
+ 	 SREG, but it writes back the result of the subtraction to %0.
+ 	 Therefore, SBCI can only replace CPC when %0 is unused after,
+ 	 or when the comparison is against 0x..0000.  */
+ 
+       if (ldreg_p && i > start)
+ 	{
+ 	  bool zero_p = true;
+ 
+ 	  for (int j = start; j <= i; ++j)
+ 	    zero_p &= avr_uint8 (xval, j) == 0;
+ 
+ 	  if (zero_p || reg_unused_after (insn, xreg))
+ 	    {
+ 	      avr_asm_len ("sbci %0,%1", xop, plen, 1);
+ 	      changed[i] = !zero_p;
+ 	      continue;
+ 	    }
+ 	}
+ 
+       /* Comparing against 0 is easy, but only invoke __zero_reg__ when
+ 	 nothing else has been found.  This is better for small ISRs.  */
+ 
+       if (val8 == 0)
+ 	{
+ 	  avr_asm_len (i == start
+ 		       ? "cp %0,__zero_reg__"
+ 		       : "cpc %0,__zero_reg__", xop, plen, 1);
+ 	  continue;
+ 	}
+ 
        /* Must load the value into the scratch register.  */
  
        gcc_assert (REG_P (xop[2]));
*************** avr_out_plus_ext (rtx_insn *insn, rtx *y
*** 8603,8613 ****
--- 8614,8630 ----
    const int n_bytes0 = GET_MODE_SIZE (GET_MODE (xop[0]));
    const int n_bytes1 = GET_MODE_SIZE (GET_MODE (xop[1]));
    rtx msb1 = all_regs_rtx[n_bytes1 - 1 + REGNO (xop[1])];
+   // Prefer SBCI *,0 over SBC *,__zero_reg__.
+   const bool sbci_p = add == MINUS && n_bytes0 > n_bytes1
+     ? test_hard_reg_class (LD_REGS, avr_byte (xop[0], n_bytes1))
+     : false;
  
    const char *const s_ADD = add == PLUS ? "add %0,%1" : "sub %0,%1";
    const char *const s_ADC = add == PLUS ? "adc %0,%1" : "sbc %0,%1";
    const char *const s_DEC = add == PLUS
      ? "adc %0,__zero_reg__"  CR_TAB  "sbrc %1,7"  CR_TAB  "dec %0"
+     : sbci_p
+     ? "sbci %0,0"            CR_TAB  "sbrc %1,7"  CR_TAB  "inc %0"
      : "sbc %0,__zero_reg__"  CR_TAB  "sbrc %1,7"  CR_TAB  "inc %0";
  
    // A register that containts 8 copies of $1.msb.
*************** avr_out_plus_ext (rtx_insn *insn, rtx *y
*** 8652,8657 ****
--- 8669,8676 ----
  	  regs[1] = msb1;
  	  avr_asm_len (s_DEC, regs, plen, 3);
  	}
+       else if (sbci_p && regs[1] == zero_reg_rtx)
+ 	avr_asm_len ("sbci %0,0", regs, plen, 1);
        else
  	avr_asm_len (s_ADC, regs, plen, 1);
      }
*************** avr_out_plus_1 (rtx xinsn, rtx *xop, int
*** 8960,8966 ****
  	{
  	  if (started)
  	    avr_asm_len (code == PLUS
! 			 ? "adc %0,__zero_reg__" : "sbc %0,__zero_reg__",
  			 op, plen, 1);
  	  continue;
  	}
--- 8979,8986 ----
  	{
  	  if (started)
  	    avr_asm_len (code == PLUS
! 			 ? "adc %0,__zero_reg__"
! 			 : ld_reg_p ? "sbci %0,0" : "sbc %0,__zero_reg__",
  			 op, plen, 1);
  	  continue;
  	}
diff -Nrcpad gcc-15-20250830/gcc/config/riscv/riscv-avlprop.cc gcc-15-20250906/gcc/config/riscv/riscv-avlprop.cc
*** gcc-15-20250830/gcc/config/riscv/riscv-avlprop.cc	Sat Aug 30 22:32:27 2025
--- gcc-15-20250906/gcc/config/riscv/riscv-avlprop.cc	Sat Sep  6 22:32:52 2025
*************** get_insn_vtype_mode (rtx_insn *rinsn)
*** 156,161 ****
--- 156,162 ----
    extract_insn_cached (rinsn);
    int mode_idx = get_attr_mode_idx (rinsn);
    gcc_assert (mode_idx != INVALID_ATTRIBUTE);
+   gcc_assert (mode_idx < recog_data.n_operands);
    return GET_MODE (recog_data.operand[mode_idx]);
  }
  
*************** simplify_replace_vlmax_avl (rtx_insn *ri
*** 205,210 ****
--- 206,212 ----
      {
        int index = get_attr_avl_type_idx (rinsn);
        gcc_assert (index != INVALID_ATTRIBUTE);
+       gcc_assert (index < recog_data.n_operands);
        validate_change_or_fail (rinsn, recog_data.operand_loc[index],
  			       get_avl_type_rtx (avl_type::NONVLMAX), false);
      }
*************** pass_avlprop::get_vlmax_ta_preferred_avl
*** 361,366 ****
--- 363,370 ----
  	     is not depend on.  */
  	  extract_insn_cached (use_insn->rtl ());
  	  int merge_op_idx = get_attr_merge_op_idx (use_insn->rtl ());
+ 	  gcc_assert (merge_op_idx == INVALID_ATTRIBUTE
+ 		      || merge_op_idx < recog_data.n_operands);
  	  if (merge_op_idx != INVALID_ATTRIBUTE
  	      && !satisfies_constraint_vu (recog_data.operand[merge_op_idx])
  	      && refers_to_regno_p (set->regno (),
diff -Nrcpad gcc-15-20250830/gcc/config/riscv/vector.md gcc-15-20250906/gcc/config/riscv/vector.md
*** gcc-15-20250830/gcc/config/riscv/vector.md	Sat Aug 30 22:32:27 2025
--- gcc-15-20250906/gcc/config/riscv/vector.md	Sat Sep  6 22:32:52 2025
***************
*** 1412,1417 ****
--- 1412,1418 ----
    }
    [(set_attr "type" "vmov,vlde,vste")
     (set_attr "mode" "<VT:MODE>")
+    (set (attr "merge_op_idx") (const_int INVALID_ATTRIBUTE))
     (set (attr "avl_type_idx") (const_int INVALID_ATTRIBUTE))
     (set (attr "mode_idx") (const_int INVALID_ATTRIBUTE))])
  
***************
*** 1449,1454 ****
--- 1450,1456 ----
    }
    [(set_attr "type" "vlde,vste,vmov")
     (set_attr "mode" "<MODE>")
+    (set (attr "merge_op_idx") (const_int INVALID_ATTRIBUTE))
     (set (attr "avl_type_idx") (const_int INVALID_ATTRIBUTE))
     (set (attr "mode_idx") (const_int INVALID_ATTRIBUTE))]
  )
***************
*** 1499,1504 ****
--- 1501,1507 ----
  }
    [(set_attr "type" "vlde,vste,vmov")
     (set_attr "mode" "<VLS_AVL_REG:MODE>")
+    (set (attr "merge_op_idx") (const_int INVALID_ATTRIBUTE))
     (set (attr "avl_type_idx") (const_int INVALID_ATTRIBUTE))
     (set (attr "mode_idx") (const_int INVALID_ATTRIBUTE))]
  )
diff -Nrcpad gcc-15-20250830/gcc/cp/ChangeLog gcc-15-20250906/gcc/cp/ChangeLog
*** gcc-15-20250830/gcc/cp/ChangeLog	Sat Aug 30 22:32:27 2025
--- gcc-15-20250906/gcc/cp/ChangeLog	Sat Sep  6 22:32:53 2025
***************
*** 1,3 ****
--- 1,12 ----
+ 2025-09-04  Nathaniel Shead  <nathanieloshead@gmail.com>
+ 
+ 	Backported from master:
+ 	2025-09-04  Nathaniel Shead  <nathanieloshead@gmail.com>
+ 
+ 	PR c++/121724
+ 	* name-lookup.cc (push_namespace): Mark inline namespace
+ 	contexts as purview if needed.
+ 
  2025-08-27  Nathaniel Shead  <nathanieloshead@gmail.com>
  
  	Backported from master:
diff -Nrcpad gcc-15-20250830/gcc/cp/name-lookup.cc gcc-15-20250906/gcc/cp/name-lookup.cc
*** gcc-15-20250830/gcc/cp/name-lookup.cc	Sat Aug 30 22:32:27 2025
--- gcc-15-20250906/gcc/cp/name-lookup.cc	Sat Sep  6 22:32:53 2025
*************** push_namespace (tree name, bool make_inl
*** 9236,9241 ****
--- 9236,9244 ----
  		  gcc_checking_assert (!(tree)slot || (tree)slot == ctx);
  		  slot = ctx;
  		}
+ 
+ 	      if (module_purview_p ())
+ 		DECL_MODULE_PURVIEW_P (ctx) = true;
  	    }
  	}
  
diff -Nrcpad gcc-15-20250830/gcc/dwarf2codeview.cc gcc-15-20250906/gcc/dwarf2codeview.cc
*** gcc-15-20250830/gcc/dwarf2codeview.cc	Sat Aug 30 22:32:27 2025
--- gcc-15-20250906/gcc/dwarf2codeview.cc	Sat Sep  6 22:32:53 2025
*************** get_type_num_array_type (dw_die_ref type
*** 6748,6757 ****
--- 6748,6770 ----
    c = first_child;
    do
      {
+       dw_attr_node *upper_bound;
+ 
        c = dw_get_die_sib (c);
        if (dw_get_die_tag (c) != DW_TAG_subrange_type)
  	continue;
  
+       /* Check that each DW_TAG_subrange_type DIE has a DW_AT_upper_bound
+ 	 attribute that's an unsigned integer.  This is the case for C and
+ 	 C++, but not for other languages such as Ada.  */
+       upper_bound = get_AT (c, DW_AT_upper_bound);
+       if (!upper_bound)
+ 	return 0;
+ 
+       if (AT_class (upper_bound) != dw_val_class_unsigned_const
+ 	  && AT_class (upper_bound) != dw_val_class_unsigned_const_implicit)
+ 	return 0;
+ 
        dimensions++;
      }
    while (c != first_child);
diff -Nrcpad gcc-15-20250830/gcc/gimple.h gcc-15-20250906/gcc/gimple.h
*** gcc-15-20250830/gcc/gimple.h	Sat Aug 30 22:32:28 2025
--- gcc-15-20250906/gcc/gimple.h	Sat Sep  6 22:32:53 2025
*************** struct GTY((tag("GSS_ASSUME")))
*** 865,871 ****
     tell the runtime that it should begin the transaction in
     serial-irrevocable mode.  */
  #define GTMA_DOES_GO_IRREVOCABLE	(1u << 6)
! /* The transaction contains no instrumentation code whatsover, most
     likely because it is guaranteed to go irrevocable upon entry.  */
  #define GTMA_HAS_NO_INSTRUMENTATION	(1u << 7)
  
--- 865,871 ----
     tell the runtime that it should begin the transaction in
     serial-irrevocable mode.  */
  #define GTMA_DOES_GO_IRREVOCABLE	(1u << 6)
! /* The transaction contains no instrumentation code whatsoever, most
     likely because it is guaranteed to go irrevocable upon entry.  */
  #define GTMA_HAS_NO_INSTRUMENTATION	(1u << 7)
  
diff -Nrcpad gcc-15-20250830/gcc/testsuite/ChangeLog gcc-15-20250906/gcc/testsuite/ChangeLog
*** gcc-15-20250830/gcc/testsuite/ChangeLog	Sat Aug 30 22:32:30 2025
--- gcc-15-20250906/gcc/testsuite/ChangeLog	Sat Sep  6 22:32:55 2025
***************
*** 1,3 ****
--- 1,19 ----
+ 2025-09-04  Nathaniel Shead  <nathanieloshead@gmail.com>
+ 
+ 	Backported from master:
+ 	2025-09-04  Nathaniel Shead  <nathanieloshead@gmail.com>
+ 
+ 	PR c++/121724
+ 	* g++.dg/modules/namespace-12_a.C: New test.
+ 	* g++.dg/modules/namespace-12_b.C: New test.
+ 
+ 2025-08-30  liuhongt  <hongtao.liu@intel.com>
+ 
+ 	Revert:
+ 	2025-08-30  liuhongt  <hongtao.liu@intel.com>
+ 
+ 	* gcc.target/i386/pr120691.c: New test.
+ 
  2025-08-29  liuhongt  <hongtao.liu@intel.com>
  
  	Backported from master:
diff -Nrcpad gcc-15-20250830/gcc/testsuite/g++.dg/modules/namespace-12_a.C gcc-15-20250906/gcc/testsuite/g++.dg/modules/namespace-12_a.C
*** gcc-15-20250830/gcc/testsuite/g++.dg/modules/namespace-12_a.C	Thu Jan  1 00:00:00 1970
--- gcc-15-20250906/gcc/testsuite/g++.dg/modules/namespace-12_a.C	Sat Sep  6 22:33:04 2025
***************
*** 0 ****
--- 1,17 ----
+ // PR c++/121724
+ // { dg-additional-options "-fmodules -Wno-global-module" }
+ // { dg-module-cmi foo }
+ 
+ module;
+ namespace A {
+   inline namespace X {
+     namespace B {
+     }
+   }
+ }
+ export module foo;
+ export namespace A {
+   namespace B {
+     struct S {};
+   }
+ }
diff -Nrcpad gcc-15-20250830/gcc/testsuite/g++.dg/modules/namespace-12_b.C gcc-15-20250906/gcc/testsuite/g++.dg/modules/namespace-12_b.C
*** gcc-15-20250830/gcc/testsuite/g++.dg/modules/namespace-12_b.C	Thu Jan  1 00:00:00 1970
--- gcc-15-20250906/gcc/testsuite/g++.dg/modules/namespace-12_b.C	Sat Sep  6 22:33:04 2025
***************
*** 0 ****
--- 1,6 ----
+ // PR c++/121724
+ // { dg-additional-options "-fmodules" }
+ 
+ import foo;
+ using T = A::B::S;
+ using T = A::X::B::S;
diff -Nrcpad gcc-15-20250830/libgcc/config/libbid/ChangeLog gcc-15-20250906/libgcc/config/libbid/ChangeLog
*** gcc-15-20250830/libgcc/config/libbid/ChangeLog	Sat Aug 30 22:33:37 2025
--- gcc-15-20250906/libgcc/config/libbid/ChangeLog	Sat Sep  6 22:33:40 2025
***************
*** 1,3 ****
--- 1,16 ----
+ 2025-08-30  liuhongt  <hongtao.liu@intel.com>
+ 
+ 	Revert:
+ 	2025-08-29  liuhongt  <hongtao.liu@intel.com>
+ 
+ 	PR target/120691
+ 	* bid128_div.c: Fix _Decimal128 arithmetic error under
+ 	FE_UPWARD.
+ 	* bid128_rem.c: Ditto.
+ 	* bid128_sqrt.c: Ditto.
+ 	* bid64_div.c (bid64_div): Ditto.
+ 	* bid64_sqrt.c (bid64_sqrt): Ditto.
+ 
  2025-08-29  liuhongt  <hongtao.liu@intel.com>
  
  	Backported from master:
diff -Nrcpad gcc-15-20250830/libstdc++-v3/ChangeLog gcc-15-20250906/libstdc++-v3/ChangeLog
*** gcc-15-20250830/libstdc++-v3/ChangeLog	Sat Aug 30 22:33:57 2025
--- gcc-15-20250906/libstdc++-v3/ChangeLog	Sat Sep  6 22:34:17 2025
***************
*** 1,3 ****
--- 1,87 ----
+ 2025-09-04  Yihan Wang  <yronglin777@gmail.com>
+ 
+ 	Backported from master:
+ 	2025-09-03  Yihan Wang  <yronglin777@gmail.com>
+ 
+ 	* include/std/expected (expected(U&&)): Add missing constraint
+ 	as per LWG 4222.
+ 	* testsuite/20_util/expected/lwg4222.cc: New test.
+ 
+ 2025-09-04  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-09-03  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR libstdc++/110853
+ 	* include/bits/stl_pair.h [C++20] (pair(const T1&, const T2&)):
+ 	Use std::type_identity_t<T1> for first parameter.
+ 	* testsuite/20_util/pair/cons/110853.cc: New test.
+ 
+ 2025-09-04  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-09-03  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR libstdc++/121745
+ 	* include/bits/stl_pair.h (get): Use forward instead of move in
+ 	std::get<T> overloads for rvalue pairs.
+ 	* testsuite/20_util/pair/astuple/get_by_type.cc: Check all value
+ 	categories and cv-qualification.
+ 
+ 2025-08-31  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-08-21  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR libstdc++/121374
+ 	* include/std/limits (numeric_limits<__float128>::max_digits10):
+ 	Fix value.
+ 	* testsuite/18_support/numeric_limits/128bit.cc: Check value.
+ 
+ 2025-08-31  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-08-21  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR libstdc++/121496
+ 	* include/std/mutex (__timed_mutex_impl::_M_try_wait_until):
+ 	Change preprocessor condition to use #if instead of #ifdef.
+ 	(recursive_timed_mutex::_M_clocklock): Likewise.
+ 	* testsuite/30_threads/timed_mutex/121496.cc: New test.
+ 
+ 2025-08-31  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-07-17  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR libstdc++/121097
+ 	* include/c_global/cmath (hypot): Use __promote_3 instead of
+ 	__promoted.
+ 
+ 2025-08-31  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	Backported from master:
+ 	2025-06-11  Jonathan Wakely  <jwakely@redhat.com>
+ 
+ 	PR libstdc++/120390
+ 	* include/bits/stl_construct.h (_Destroy_aux::__destroy_n): New
+ 	static member function.
+ 	(_Destroy_aux<true>::__destroy_n): Likewise.
+ 	(_Destroy_n_aux): Remove.
+ 	(_Destroy(ForwardIterator, ForwardIterator)): Remove
+ 	static_assert. Use is_trivially_destructible instead of
+ 	__has_trivial_destructor.
+ 	(_Destroy_n): Likewise. Use _Destroy_aux::__destroy_n instead of
+ 	_Destroy_n_aux::__destroy_n.
+ 	* testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc:
+ 	Adjust dg-error strings. Move destroy_n tests to ...
+ 	* testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc:
+ 	New test.
+ 	* testsuite/23_containers/vector/cons/destructible_debug_neg.cc:
+ 	Adjust dg-error strings.
+ 	* testsuite/23_containers/vector/cons/destructible_neg.cc:
+ 	Likewise.
+ 
  2025-08-19  Tomasz Kamiński  <tkaminsk@redhat.com>
  
  	Backported from master:
diff -Nrcpad gcc-15-20250830/libstdc++-v3/include/bits/stl_construct.h gcc-15-20250906/libstdc++-v3/include/bits/stl_construct.h
*** gcc-15-20250830/libstdc++-v3/include/bits/stl_construct.h	Sat Aug 30 22:33:57 2025
--- gcc-15-20250906/libstdc++-v3/include/bits/stl_construct.h	Sat Sep  6 22:34:18 2025
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 181,186 ****
--- 181,195 ----
  	  for (; __first != __last; ++__first)
  	    std::_Destroy(std::__addressof(*__first));
  	}
+ 
+       template<typename _ForwardIterator, typename _Size>
+ 	static _GLIBCXX20_CONSTEXPR _ForwardIterator
+ 	__destroy_n(_ForwardIterator __first, _Size __count)
+ 	{
+ 	  for (; __count > 0; (void)++__first, --__count)
+ 	    std::_Destroy(std::__addressof(*__first));
+ 	  return __first;
+ 	}
      };
  
    template<>
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 189,194 ****
--- 198,211 ----
        template<typename _ForwardIterator>
          static void
          __destroy(_ForwardIterator, _ForwardIterator) { }
+ 
+       template<typename _ForwardIterator, typename _Size>
+ 	static _ForwardIterator
+ 	__destroy_n(_ForwardIterator __first, _Size __count)
+ 	{
+ 	  std::advance(__first, __count);
+ 	  return __first;
+ 	}
      };
  #endif
  
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 204,213 ****
        typedef typename iterator_traits<_ForwardIterator>::value_type
                         _Value_type;
  #if __cplusplus >= 201103L
!       // A deleted destructor is trivial, this ensures we reject such types:
!       static_assert(is_destructible<_Value_type>::value,
! 		    "value type is destructible");
!       if constexpr (!__has_trivial_destructor(_Value_type))
  	for (; __first != __last; ++__first)
  	  std::_Destroy(std::__addressof(*__first));
  #if __cpp_constexpr_dynamic_alloc // >= C++20
--- 221,227 ----
        typedef typename iterator_traits<_ForwardIterator>::value_type
                         _Value_type;
  #if __cplusplus >= 201103L
!       if constexpr (!is_trivially_destructible<_Value_type>::value)
  	for (; __first != __last; ++__first)
  	  std::_Destroy(std::__addressof(*__first));
  #if __cpp_constexpr_dynamic_alloc // >= C++20
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 221,253 ****
  #endif
      }
  
- #if __cplusplus < 201103L
-   template<bool>
-     struct _Destroy_n_aux
-     {
-       template<typename _ForwardIterator, typename _Size>
- 	static _GLIBCXX20_CONSTEXPR _ForwardIterator
- 	__destroy_n(_ForwardIterator __first, _Size __count)
- 	{
- 	  for (; __count > 0; (void)++__first, --__count)
- 	    std::_Destroy(std::__addressof(*__first));
- 	  return __first;
- 	}
-     };
- 
-   template<>
-     struct _Destroy_n_aux<true>
-     {
-       template<typename _ForwardIterator, typename _Size>
-         static _ForwardIterator
-         __destroy_n(_ForwardIterator __first, _Size __count)
- 	{
- 	  std::advance(__first, __count);
- 	  return __first;
- 	}
-     };
- #endif
- 
    /**
     * Destroy a range of objects.  If the value_type of the object has
     * a trivial destructor, the compiler should optimize all of this
--- 235,240 ----
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 260,269 ****
        typedef typename iterator_traits<_ForwardIterator>::value_type
                         _Value_type;
  #if __cplusplus >= 201103L
!       // A deleted destructor is trivial, this ensures we reject such types:
!       static_assert(is_destructible<_Value_type>::value,
! 		    "value type is destructible");
!       if constexpr (!__has_trivial_destructor(_Value_type))
  	for (; __count > 0; (void)++__first, --__count)
  	  std::_Destroy(std::__addressof(*__first));
  #if __cpp_constexpr_dynamic_alloc // >= C++20
--- 247,253 ----
        typedef typename iterator_traits<_ForwardIterator>::value_type
                         _Value_type;
  #if __cplusplus >= 201103L
!       if constexpr (!is_trivially_destructible<_Value_type>::value)
  	for (; __count > 0; (void)++__first, --__count)
  	  std::_Destroy(std::__addressof(*__first));
  #if __cpp_constexpr_dynamic_alloc // >= C++20
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 275,281 ****
  	std::advance(__first, __count);
        return __first;
  #else
!       return std::_Destroy_n_aux<__has_trivial_destructor(_Value_type)>::
  	__destroy_n(__first, __count);
  #endif
      }
--- 259,265 ----
  	std::advance(__first, __count);
        return __first;
  #else
!       return std::_Destroy_aux<__has_trivial_destructor(_Value_type)>::
  	__destroy_n(__first, __count);
  #endif
      }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/include/bits/stl_pair.h gcc-15-20250906/libstdc++-v3/include/bits/stl_pair.h
*** gcc-15-20250830/libstdc++-v3/include/bits/stl_pair.h	Sat Aug 30 22:33:57 2025
--- gcc-15-20250906/libstdc++-v3/include/bits/stl_pair.h	Sat Sep  6 22:34:18 2025
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 445,451 ****
  
        /// Constructor accepting lvalues of `first_type` and `second_type`
        constexpr explicit(!_S_convertible<const _T1&, const _T2&>())
!       pair(const _T1& __x, const _T2& __y)
        noexcept(_S_nothrow_constructible<const _T1&, const _T2&>())
        requires (_S_constructible<const _T1&, const _T2&>())
        : first(__x), second(__y)
--- 445,451 ----
  
        /// Constructor accepting lvalues of `first_type` and `second_type`
        constexpr explicit(!_S_convertible<const _T1&, const _T2&>())
!       pair(const type_identity_t<_T1>& __x, const _T2& __y)
        noexcept(_S_nothrow_constructible<const _T1&, const _T2&>())
        requires (_S_constructible<const _T1&, const _T2&>())
        : first(__x), second(__y)
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 1313,1324 ****
    template <typename _Tp, typename _Up>
      constexpr _Tp&&
      get(pair<_Tp, _Up>&& __p) noexcept
!     { return std::move(__p.first); }
  
    template <typename _Tp, typename _Up>
      constexpr const _Tp&&
      get(const pair<_Tp, _Up>&& __p) noexcept
!     { return std::move(__p.first); }
  
    template <typename _Tp, typename _Up>
      constexpr _Tp&
--- 1313,1324 ----
    template <typename _Tp, typename _Up>
      constexpr _Tp&&
      get(pair<_Tp, _Up>&& __p) noexcept
!     { return std::forward<_Tp>(__p.first); }
  
    template <typename _Tp, typename _Up>
      constexpr const _Tp&&
      get(const pair<_Tp, _Up>&& __p) noexcept
!     { return std::forward<const _Tp>(__p.first); }
  
    template <typename _Tp, typename _Up>
      constexpr _Tp&
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 1333,1344 ****
    template <typename _Tp, typename _Up>
      constexpr _Tp&&
      get(pair<_Up, _Tp>&& __p) noexcept
!     { return std::move(__p.second); }
  
    template <typename _Tp, typename _Up>
      constexpr const _Tp&&
      get(const pair<_Up, _Tp>&& __p) noexcept
!     { return std::move(__p.second); }
  #endif // __glibcxx_tuples_by_type
  
  
--- 1333,1344 ----
    template <typename _Tp, typename _Up>
      constexpr _Tp&&
      get(pair<_Up, _Tp>&& __p) noexcept
!     { return std::forward<_Tp>(__p.second); }
  
    template <typename _Tp, typename _Up>
      constexpr const _Tp&&
      get(const pair<_Up, _Tp>&& __p) noexcept
!     { return std::forward<const _Tp>(__p.second); }
  #endif // __glibcxx_tuples_by_type
  
  
diff -Nrcpad gcc-15-20250830/libstdc++-v3/include/c_global/cmath gcc-15-20250906/libstdc++-v3/include/c_global/cmath
*** gcc-15-20250830/libstdc++-v3/include/c_global/cmath	Sat Aug 30 22:33:57 2025
--- gcc-15-20250906/libstdc++-v3/include/c_global/cmath	Sat Sep  6 22:34:18 2025
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 3792,3801 ****
    { return std::__hypot3<long double>(__x, __y, __z); }
  
    template<typename _Tp, typename _Up, typename _Vp>
!     __gnu_cxx::__promoted_t<_Tp, _Up, _Vp>
      hypot(_Tp __x, _Up __y, _Vp __z)
      {
!       using __type = __gnu_cxx::__promoted_t<_Tp, _Up, _Vp>;
        return std::__hypot3<__type>(__x, __y, __z);
      }
  
--- 3792,3801 ----
    { return std::__hypot3<long double>(__x, __y, __z); }
  
    template<typename _Tp, typename _Up, typename _Vp>
!     typename __gnu_cxx::__promote_3<_Tp, _Up, _Vp>::__type
      hypot(_Tp __x, _Up __y, _Vp __z)
      {
!       using __type = typename __gnu_cxx::__promote_3<_Tp, _Up, _Vp>::__type;
        return std::__hypot3<__type>(__x, __y, __z);
      }
  
diff -Nrcpad gcc-15-20250830/libstdc++-v3/include/std/expected gcc-15-20250906/libstdc++-v3/include/std/expected
*** gcc-15-20250830/libstdc++-v3/include/std/expected	Sat Aug 30 22:33:58 2025
--- gcc-15-20250906/libstdc++-v3/include/std/expected	Sat Sep  6 22:34:18 2025
*************** namespace __expected
*** 474,479 ****
--- 474,480 ----
        template<typename _Up = remove_cv_t<_Tp>>
  	requires (!is_same_v<remove_cvref_t<_Up>, expected>)
  	  && (!is_same_v<remove_cvref_t<_Up>, in_place_t>)
+ 	  && (!is_same_v<remove_cvref_t<_Up>, unexpect_t>)
  	  && is_constructible_v<_Tp, _Up>
  	  && (!__expected::__is_unexpected<remove_cvref_t<_Up>>)
  	  && __expected::__not_constructing_bool_from_expected<_Tp, _Up>
diff -Nrcpad gcc-15-20250830/libstdc++-v3/include/std/limits gcc-15-20250906/libstdc++-v3/include/std/limits
*** gcc-15-20250830/libstdc++-v3/include/std/limits	Sat Aug 30 22:33:58 2025
--- gcc-15-20250906/libstdc++-v3/include/std/limits	Sat Sep  6 22:34:18 2025
*************** __glibcxx_float_n(128)
*** 2129,2135 ****
        static _GLIBCXX_USE_CONSTEXPR int digits = 113;
        static _GLIBCXX_USE_CONSTEXPR int digits10 = 33;
  #if __cplusplus >= 201103L
!       static constexpr int max_digits10 = 35;
  #endif
        static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
        static _GLIBCXX_USE_CONSTEXPR bool is_integer = false;
--- 2129,2135 ----
        static _GLIBCXX_USE_CONSTEXPR int digits = 113;
        static _GLIBCXX_USE_CONSTEXPR int digits10 = 33;
  #if __cplusplus >= 201103L
!       static constexpr int max_digits10 = 36;
  #endif
        static _GLIBCXX_USE_CONSTEXPR bool is_signed = true;
        static _GLIBCXX_USE_CONSTEXPR bool is_integer = false;
diff -Nrcpad gcc-15-20250830/libstdc++-v3/include/std/mutex gcc-15-20250906/libstdc++-v3/include/std/mutex
*** gcc-15-20250830/libstdc++-v3/include/std/mutex	Sat Aug 30 22:33:58 2025
--- gcc-15-20250906/libstdc++-v3/include/std/mutex	Sat Sep  6 22:34:18 2025
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 190,196 ****
  	  return static_cast<_Derived*>(this)->_M_timedlock(__ts);
  	}
  
! #ifdef _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK
        template<typename _Duration>
  	bool
  	_M_try_lock_until(const chrono::time_point<chrono::steady_clock,
--- 190,196 ----
  	  return static_cast<_Derived*>(this)->_M_timedlock(__ts);
  	}
  
! #if _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK
        template<typename _Duration>
  	bool
  	_M_try_lock_until(const chrono::time_point<chrono::steady_clock,
*************** _GLIBCXX_BEGIN_NAMESPACE_VERSION
*** 377,383 ****
        _M_timedlock(const __gthread_time_t& __ts)
        { return !__gthread_recursive_mutex_timedlock(&_M_mutex, &__ts); }
  
! #ifdef _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK
        bool
        _M_clocklock(clockid_t __clockid, const __gthread_time_t& __ts)
        { return !pthread_mutex_clocklock(&_M_mutex, __clockid, &__ts); }
--- 377,383 ----
        _M_timedlock(const __gthread_time_t& __ts)
        { return !__gthread_recursive_mutex_timedlock(&_M_mutex, &__ts); }
  
! #if _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK
        bool
        _M_clocklock(clockid_t __clockid, const __gthread_time_t& __ts)
        { return !pthread_mutex_clocklock(&_M_mutex, __clockid, &__ts); }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/18_support/numeric_limits/128bit.cc gcc-15-20250906/libstdc++-v3/testsuite/18_support/numeric_limits/128bit.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/18_support/numeric_limits/128bit.cc	Sat Aug 30 22:33:58 2025
--- gcc-15-20250906/libstdc++-v3/testsuite/18_support/numeric_limits/128bit.cc	Sat Sep  6 22:34:19 2025
***************
*** 4,9 ****
--- 4,14 ----
  
  #if __SIZEOF_FLOAT128__
  __extension__ template class std::numeric_limits<__float128>;
+ 
+ # if __cplusplus >= 201103L
+ static_assert( std::numeric_limits<__float128>::max_digits10 == 36,
+ 	       "PR libstdc++/121374" );
+ # endif
  #endif
  
  #if __SIZEOF_INT128__
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/20_util/expected/lwg4222.cc gcc-15-20250906/libstdc++-v3/testsuite/20_util/expected/lwg4222.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/20_util/expected/lwg4222.cc	Thu Jan  1 00:00:00 1970
--- gcc-15-20250906/libstdc++-v3/testsuite/20_util/expected/lwg4222.cc	Sat Sep  6 22:34:19 2025
***************
*** 0 ****
--- 1,39 ----
+ // { dg-do run { target c++23 } }
+ 
+ // LWG 4222. 'expected' constructor from a single value missing a constraint
+ 
+ #include <expected>
+ #include <type_traits>
+ #include <testsuite_hooks.h>
+ 
+ struct T {
+   explicit T(auto) {}
+ };
+ struct E {
+   E(int) {}
+ };
+ 
+ struct V {
+  explicit constexpr V(std::unexpect_t) {}
+ };
+ 
+ static_assert(!std::is_constructible_v<std::expected<T, E>, std::unexpect_t>);
+ static_assert(!std::is_constructible_v<std::expected<T, E>, std::unexpect_t &>);
+ static_assert(!std::is_constructible_v<std::expected<T, E>, std::unexpect_t &&>);
+ static_assert(!std::is_constructible_v<std::expected<T, E>, const std::unexpect_t>);
+ static_assert(!std::is_constructible_v<std::expected<T, E>, const std::unexpect_t &>);
+ static_assert(!std::is_constructible_v<std::expected<T, E>, const std::unexpect_t &&>);
+ 
+ constexpr bool test() {
+   std::expected<V, int> e1(std::in_place, std::unexpect);
+   VERIFY( e1.has_value() );
+   std::expected<int, V> e2(std::unexpect, std::unexpect);
+   VERIFY( !e2.has_value() );
+   return true;
+ }
+ 
+ int main() {
+   test();
+   static_assert(test());
+   return 0;
+ }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type.cc gcc-15-20250906/libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type.cc	Sat Aug 30 22:33:59 2025
--- gcc-15-20250906/libstdc++-v3/testsuite/20_util/pair/astuple/get_by_type.cc	Sat Sep  6 22:34:20 2025
*************** void test01()
*** 33,35 ****
--- 33,87 ----
    const int&&  cpsecond __attribute__((unused)) =
      std::get<int>(std::move(cp));
  }
+ 
+ // PR libstdc++/121745 return of get(pair<_Up, _Tp>&& __p) may be ill-formed
+ void
+ test_pr121745(std::pair<float&, int&> p)
+ {
+   float& pfirst = std::get<float&>(std::move(p));
+   int& psecond  = std::get<int&>(std::move(p));
+ 
+   const auto& p2 = p;
+   float& p2first = std::get<float&>(std::move(p2));
+   int& p2second  = std::get<int&>(std::move(p2));
+ }
+ 
+ template<typename T, typename Pair>
+ using get_t = decltype(std::get<T>(std::declval<Pair>()));
+ 
+ // Check that get<T>(Pair) returns Ret
+ template<typename T, typename Pair, typename Ret>
+ constexpr bool verify = std::is_same<get_t<T, Pair>, Ret>::value;
+ 
+ template<typename T1, typename T2>
+ void
+ check()
+ {
+   // Overloads for accessing first member
+   static_assert( verify<T1, std::pair<T1, T2>&, T1&>,
+ 		 "T1& get(pair<T1, T2>&)" );
+   static_assert( verify<T1, const std::pair<T1, T2>&, const T1&>,
+ 		 "const T1& get(const pair<T1, T2>&)" );
+   static_assert( verify<T1, std::pair<T1, T2>&&, T1&&>,
+ 		 "T1&& get(pair<T1, T2>&&)" );
+   static_assert( verify<T1, const std::pair<T1, T2>&&, const T1&&>,
+ 		 "const T1&& get(const pair<T1, T2>&&)" );
+ 
+   // Overloads for accessing second member
+   static_assert( verify<T2, std::pair<T1, T2>&, T2&>,
+ 		 "T2& get(pair<T1, T2>&)" );
+   static_assert( verify<T2, const std::pair<T1, T2>&, const T2&>,
+ 		 "const T2& get(const pair<T1, T2>&)" );
+   static_assert( verify<T2, std::pair<T1, T2>&&, T2&&>,
+ 		 "T2&& get(pair<T1, T2>&&)" );
+   static_assert( verify<T2, const std::pair<T1, T2>&&, const T2&&>,
+ 		 "const T2&& get(const pair<T1, T2>&&)" );
+ }
+ 
+ void
+ test_all()
+ {
+   check<float, int>();
+   check<float&, int&>();
+   check<float&&, int&&>();
+ }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/20_util/pair/cons/110853.cc gcc-15-20250906/libstdc++-v3/testsuite/20_util/pair/cons/110853.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/20_util/pair/cons/110853.cc	Thu Jan  1 00:00:00 1970
--- gcc-15-20250906/libstdc++-v3/testsuite/20_util/pair/cons/110853.cc	Sat Sep  6 22:34:20 2025
***************
*** 0 ****
--- 1,10 ----
+ // { dg-do compile { target c++17 } }
+ // PR libstdc++/110853
+ // Bad interaction between deduction guide with decay and constraints
+ // (CTAD, std::pair and function lvalue)
+ 
+ #include <utility>
+ 
+ void func() {}
+ std::pair p(1, func);
+ std::pair<int, void (*)()>& r = p;
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc gcc-15-20250906/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc	Thu Jan  1 00:00:00 1970
--- gcc-15-20250906/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_n_neg.cc	Sat Sep  6 22:34:20 2025
***************
*** 0 ****
--- 1,59 ----
+ // Copyright (C) 2017-2025 Free Software Foundation, Inc.
+ //
+ // This file is part of the GNU ISO C++ Library.  This library is free
+ // software; you can redistribute it and/or modify it under the
+ // terms of the GNU General Public License as published by the
+ // Free Software Foundation; either version 3, or (at your option)
+ // any later version.
+ 
+ // This library is distributed in the hope that it will be useful,
+ // but WITHOUT ANY WARRANTY; without even the implied warranty of
+ // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ // GNU General Public License for more details.
+ 
+ // You should have received a copy of the GNU General Public License along
+ // with this library; see the file COPYING3.  If not see
+ // <http://www.gnu.org/licenses/>.
+ 
+ // { dg-do compile { target c++17 } }
+ 
+ #include <memory>
+ 
+ // This has a trivial destructor, but should not be destructible!
+ struct DeletedDtor {
+   ~DeletedDtor() = delete;
+ };
+ 
+ void
+ test01()
+ {
+   alignas(DeletedDtor) unsigned char buf[sizeof(DeletedDtor)];
+   auto p = ::new (buf) DeletedDtor();
+   std::destroy_n(p, 1);
+ }
+ 
+ class PrivateDtor {
+   ~PrivateDtor() { }
+ };
+ 
+ void
+ test02()
+ {
+   alignas(PrivateDtor) unsigned char buf[sizeof(PrivateDtor)];
+   auto p = ::new (buf) PrivateDtor();
+   std::destroy_n(p, 1);
+ }
+ 
+ #if __cpp_constexpr_dynamic_alloc // >= C++20
+ consteval bool
+ test03()
+ {
+   DeletedDtor* p = nullptr;
+   std::destroy_n(p, 0);
+   return true;
+ }
+ static_assert(test03());
+ #endif
+ 
+ // { dg-error "deleted function .*DeletedDtor" "" { target *-*-* } 0 }
+ // { dg-error "PrivateDtor.* is private" "" { target *-*-* } 0 }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc gcc-15-20250906/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc	Sat Aug 30 22:33:59 2025
--- gcc-15-20250906/libstdc++-v3/testsuite/20_util/specialized_algorithms/memory_management_tools/destroy_neg.cc	Sat Sep  6 22:34:20 2025
*************** test01()
*** 29,36 ****
  {
    alignas(DeletedDtor) unsigned char buf[sizeof(DeletedDtor)];
    auto p = ::new (buf) DeletedDtor();
!   std::destroy(p, p + 1);	// { dg-error "here" }
!   std::destroy_n(p, 1);		// { dg-error "here" }
  }
  
  class PrivateDtor {
--- 29,35 ----
  {
    alignas(DeletedDtor) unsigned char buf[sizeof(DeletedDtor)];
    auto p = ::new (buf) DeletedDtor();
!   std::destroy(p, p + 1);
  }
  
  class PrivateDtor {
*************** test02()
*** 42,49 ****
  {
    alignas(PrivateDtor) unsigned char buf[sizeof(PrivateDtor)];
    auto p = ::new (buf) PrivateDtor();
!   std::destroy(p, p + 1);	// { dg-error "here" }
!   std::destroy_n(p, 1);		// { dg-error "here" }
  }
  
! // { dg-error "value type is destructible" "" { target *-*-* } 0 }
--- 41,59 ----
  {
    alignas(PrivateDtor) unsigned char buf[sizeof(PrivateDtor)];
    auto p = ::new (buf) PrivateDtor();
!   std::destroy(p, p + 1);
  }
  
! #if __cpp_constexpr_dynamic_alloc // >= C++20
! consteval bool
! test03()
! {
!   DeletedDtor* p = nullptr;
!   std::destroy(p, p);
!   return true;
! }
! static_assert(test03());
! #endif
! 
! // { dg-error "deleted function .*DeletedDtor" "" { target *-*-* } 0 }
! // { dg-error "PrivateDtor.* is private" "" { target *-*-* } 0 }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_debug_neg.cc gcc-15-20250906/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_debug_neg.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_debug_neg.cc	Sat Aug 30 22:34:01 2025
--- gcc-15-20250906/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_debug_neg.cc	Sat Sep  6 22:35:10 2025
*************** test02()
*** 43,53 ****
    std::vector<PrivateDtor> v;
  }
  
! // { dg-error "value type is destructible" "" { target *-*-* } 0 }
  
  // In Debug Mode the "required from here" errors come from <debug/vector>
  // { dg-error "required from here" "" { target *-*-* } 182 }
- 
- // Needed because of PR c++/92193
- // { dg-prune-output "deleted function" }
- // { dg-prune-output "private within this context" }
--- 43,50 ----
    std::vector<PrivateDtor> v;
  }
  
! // { dg-error "deleted function .*DeletedDtor" "" { target *-*-* } 0 }
! // { dg-error "PrivateDtor.* is private" "" { target *-*-* } 0 }
  
  // In Debug Mode the "required from here" errors come from <debug/vector>
  // { dg-error "required from here" "" { target *-*-* } 182 }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_neg.cc gcc-15-20250906/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_neg.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_neg.cc	Sat Aug 30 22:34:01 2025
--- gcc-15-20250906/libstdc++-v3/testsuite/23_containers/vector/cons/destructible_neg.cc	Sat Sep  6 22:35:10 2025
*************** test02()
*** 42,49 ****
    std::vector<PrivateDtor> v; // { dg-error "here" }
  }
  
! // { dg-error "value type is destructible" "" { target *-*-* } 0 }
! 
! // Needed because of PR c++/92193
! // { dg-prune-output "deleted function" }
! // { dg-prune-output "private within this context" }
--- 42,46 ----
    std::vector<PrivateDtor> v; // { dg-error "here" }
  }
  
! // { dg-error "deleted function .*DeletedDtor" "" { target *-*-* } 0 }
! // { dg-error "PrivateDtor.* is private" "" { target *-*-* } 0 }
diff -Nrcpad gcc-15-20250830/libstdc++-v3/testsuite/30_threads/timed_mutex/121496.cc gcc-15-20250906/libstdc++-v3/testsuite/30_threads/timed_mutex/121496.cc
*** gcc-15-20250830/libstdc++-v3/testsuite/30_threads/timed_mutex/121496.cc	Thu Jan  1 00:00:00 1970
--- gcc-15-20250906/libstdc++-v3/testsuite/30_threads/timed_mutex/121496.cc	Sat Sep  6 22:35:12 2025
***************
*** 0 ****
--- 1,14 ----
+ // { dg-do compile { target { { i?86-*-linux* x86_64-*-linux* } && lp64 } } }
+ // { dg-require-effective-target c++11 }
+ // { dg-options "-fsanitize=thread" }
+ 
+ // PR libstdc++/121496 no member named '_M_clocklock' with -fsanitize=thread
+ 
+ #include <mutex>
+ #include <chrono>
+ 
+ void
+ test_pr121496(std::timed_mutex& m)
+ {
+   (void) m.try_lock_until(std::chrono::steady_clock::time_point{});
+ }
