https://gcc.gnu.org/g:b9def1721b12cae307c1a1ebc49030fce6531dfa
commit b9def1721b12cae307c1a1ebc49030fce6531dfa Merge: ac84ab706662 7e580225e570 Author: Jakub Jelinek <ja...@redhat.com> Date: Wed May 21 14:40:58 2025 +0200 Merge commit 'r15-9719-g7e580225e57086e335a16f9258d0401a21e468ef' into redhat/gcc-15-branch Diff: contrib/ChangeLog | 7 + gcc/ChangeLog | 229 + gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 18 + gcc/ada/Makefile.rtl | 1 + gcc/ada/exp_ch3.adb | 30 +- gcc/ada/init.c | 2 +- gcc/ada/libgnat/s-dorepr__freebsd.adb | 172 + gcc/c-family/ChangeLog | 8 + gcc/c-family/c-opts.cc | 32 +- gcc/c/ChangeLog | 8 + gcc/c/c-typeck.cc | 20 +- gcc/cgraph.cc | 2 +- gcc/cgraph.h | 2 +- gcc/cgraphclones.cc | 14 +- gcc/config/aarch64/aarch64.cc | 66 +- gcc/config/alpha/alpha.cc | 23 +- gcc/config/avr/avr.md | 4 + gcc/config/i386/x86-tune.def | 4 +- gcc/config/s390/s390.cc | 13 +- gcc/cp/ChangeLog | 130 + gcc/cp/class.cc | 56 +- gcc/cp/cp-tree.h | 8 +- gcc/cp/decl2.cc | 14 +- gcc/cp/module.cc | 83 +- gcc/cp/name-lookup.cc | 43 +- gcc/cp/optimize.cc | 4 +- gcc/cp/pt.cc | 33 +- gcc/cp/rtti.cc | 1 + gcc/doc/gm2.texi | 2 +- gcc/doc/invoke.texi | 87 + gcc/dwarf2out.cc | 3 +- gcc/fortran/ChangeLog | 118 + gcc/fortran/check.cc | 42 +- gcc/fortran/dependency.cc | 6 +- gcc/fortran/dump-parse-tree.cc | 7 +- gcc/fortran/expr.cc | 1 + gcc/fortran/gfortran.h | 3 + gcc/fortran/interface.cc | 135 +- gcc/fortran/match.cc | 3 +- gcc/fortran/primary.cc | 13 +- gcc/fortran/resolve.cc | 7 +- gcc/fortran/trans-decl.cc | 6 +- gcc/fortran/trans-expr.cc | 10 +- gcc/fortran/trans-intrinsic.cc | 51 +- gcc/fortran/trans-openmp.cc | 20 + gcc/gimple-fold.cc | 6 +- gcc/ipa-cp.cc | 12 +- gcc/ipa-sra.cc | 2 +- gcc/m2/ChangeLog | 57 + gcc/m2/gm2-compiler/M2Check.mod | 21 +- gcc/m2/gm2-compiler/M2GenGCC.mod | 3 - gcc/m2/gm2-compiler/M2Quads.mod | 10 +- gcc/m2/gm2-compiler/M2Range.mod | 43 +- gcc/m2/gm2-compiler/PCSymBuild.mod | 13 +- gcc/m2/gm2-compiler/SymbolTable.def | 16 + gcc/m2/gm2-compiler/SymbolTable.mod | 138 +- gcc/m2/gm2-libs/FormatStrings.mod | 4 +- gcc/po/ChangeLog | 18 + gcc/po/be.po | 9391 +++++++-------- gcc/po/da.po | 9447 +++++++-------- gcc/po/de.po | 9403 +++++++-------- gcc/po/el.po | 9377 +++++++-------- gcc/po/es.po | 9447 +++++++-------- gcc/po/fi.po | 9403 +++++++-------- gcc/po/fr.po | 9407 +++++++-------- gcc/po/hr.po | 10325 ++++++++--------- gcc/po/id.po | 9428 +++++++-------- gcc/po/ja.po | 9399 +++++++-------- gcc/po/ka.po | 9355 +++++++-------- gcc/po/nl.po | 9384 +++++++-------- gcc/po/ru.po | 9439 +++++++-------- gcc/po/sr.po | 9421 +++++++-------- gcc/po/sv.po | 11428 +++++++++---------- gcc/po/tr.po | 9446 +++++++-------- gcc/po/uk.po | 9428 +++++++-------- gcc/po/vi.po | 9415 +++++++-------- gcc/po/zh_CN.po | 9744 ++++++++-------- gcc/po/zh_TW.po | 9411 +++++++-------- gcc/symtab.cc | 4 +- gcc/testsuite/ChangeLog | 471 + gcc/testsuite/g++.dg/abi/base-defaulted1.C | 22 + gcc/testsuite/g++.dg/abi/base-defaulted1a.C | 23 + gcc/testsuite/g++.dg/abi/base-defaulted2.C | 12 + gcc/testsuite/g++.dg/cpp2a/lambda-targ15.C | 17 + gcc/testsuite/g++.dg/ipa/pr120146.C | 12 + gcc/testsuite/g++.dg/modules/clone-4_a.C | 12 + gcc/testsuite/g++.dg/modules/clone-4_b.C | 12 + gcc/testsuite/g++.dg/modules/concept-11_a.H | 9 + gcc/testsuite/g++.dg/modules/concept-11_b.C | 9 + gcc/testsuite/g++.dg/modules/dguide-7_a.C | 9 + gcc/testsuite/g++.dg/modules/dguide-7_b.C | 10 + gcc/testsuite/g++.dg/modules/dguide-7_c.C | 12 + gcc/testsuite/g++.dg/modules/internal-13.C | 33 + gcc/testsuite/g++.dg/modules/openmp-1.C | 9 + gcc/testsuite/g++.dg/modules/partial-8.h | 8 + gcc/testsuite/g++.dg/modules/partial-8_a.C | 10 + gcc/testsuite/g++.dg/modules/partial-8_b.C | 8 + gcc/testsuite/g++.dg/modules/partial-8_c.C | 7 + gcc/testsuite/g++.dg/modules/partial-8_d.C | 9 + gcc/testsuite/g++.dg/modules/tinfo-3_a.H | 7 + gcc/testsuite/g++.dg/modules/tinfo-3_b.C | 8 + gcc/testsuite/g++.dg/modules/tpl-friend-18_a.C | 25 + gcc/testsuite/g++.dg/modules/tpl-friend-18_b.C | 9 + gcc/testsuite/g++.dg/modules/tpl-friend-18_c.C | 10 + gcc/testsuite/g++.dg/modules/tpl-nttp-2_a.H | 14 + gcc/testsuite/g++.dg/modules/tpl-nttp-2_b.C | 10 + gcc/testsuite/g++.dg/template/unify13.C | 18 + gcc/testsuite/g++.dg/torture/pr119610.C | 18 + .../g++.target/aarch64/sve/pr119610-sve.C | 20 + gcc/testsuite/gcc.dg/cpp/embed-18.c | 7 + gcc/testsuite/gcc.dg/ipa/pr119852.c | 50 + gcc/testsuite/gcc.dg/ipa/pr120044-1.c | 17 + gcc/testsuite/gcc.dg/ipa/pr120044-2.c | 17 + .../plugin/location-overflow-test-pr116047-1.h | 6 + .../plugin/location-overflow-test-pr116047-2.h | 1 + .../plugin/location-overflow-test-pr116047.c | 5 + .../plugin/location-overflow-test-pr120061-1.h | 6 + .../plugin/location-overflow-test-pr120061-2.h | 1 + .../plugin/location-overflow-test-pr120061.c | 6 + .../gcc.dg/plugin/location_overflow_plugin.cc | 15 +- gcc/testsuite/gcc.dg/plugin/plugin.exp | 4 +- gcc/testsuite/gcc.dg/pr119712.c | 27 + gcc/testsuite/gcc.dg/pr120048.c | 12 + gcc/testsuite/gcc.dg/pr120057-1.c | 18 + gcc/testsuite/gcc.dg/pr120057-2.c | 11 + gcc/testsuite/gcc.dg/pr120074.c | 20 + gcc/testsuite/gcc.dg/pr83072-2.c | 2 +- gcc/testsuite/gcc.dg/torture/pr119131-1.c | 1 + gcc/testsuite/gcc.dg/torture/pr119973.c | 39 + gcc/testsuite/gcc.dg/torture/pr120006.c | 31 + gcc/testsuite/gcc.dg/torture/pr120043.c | 10 + gcc/testsuite/gcc.dg/torture/pr120211-1.c | 20 + gcc/testsuite/gcc.dg/tree-ssa/phi-opt-value-5.c | 4 +- gcc/testsuite/gcc.dg/tree-ssa/pr114864.c | 15 + gcc/testsuite/gcc.dg/tree-ssa/vrp122.c | 4 +- .../gcc.dg/vect/vect-early-break_134-pr120089.c | 66 + .../gcc.dg/vect/vect-early-break_135-pr120143.c | 18 + .../gcc.dg/vect/vect-early-break_135-pr120211.c | 12 + gcc/testsuite/gcc.target/aarch64/pr115258.c | 2 +- .../gcc.target/alpha/memcpy-nested-offset-long.c | 76 + .../gcc.target/alpha/memcpy-nested-offset-quad.c | 64 + .../gcc.target/avr/torture/pr119989-flashx-1.c | 7 + .../gcc.target/avr/torture/pr119989-flashx-2.c | 7 + .../gcc.target/avr/torture/pr119989-flashx-3.c | 7 + .../gcc.target/avr/torture/pr119989-flashx-4.c | 7 + .../gcc.target/avr/torture/pr119989-memx-1.c | 7 + .../gcc.target/avr/torture/pr119989-memx-2.c | 7 + .../gcc.target/avr/torture/pr119989-memx-3.c | 7 + .../gcc.target/avr/torture/pr119989-memx-4.c | 7 + gcc/testsuite/gcc.target/avr/torture/pr119989.h | 37 + gcc/testsuite/gcc.target/s390/pr119873-5.c | 11 + gcc/testsuite/gfortran.dg/actual_array_subref.f90 | 103 + gcc/testsuite/gfortran.dg/do_concurrent_basic.f90 | 7 +- gcc/testsuite/gfortran.dg/interface_60.f90 | 70 + gcc/testsuite/gfortran.dg/interface_61.f90 | 27 + gcc/testsuite/gfortran.dg/pr120049_a.f90 | 15 + gcc/testsuite/gfortran.dg/pr120049_b.f90 | 8 + gcc/testsuite/gfortran.dg/pr120152_1.f90 | 52 + gcc/testsuite/gfortran.dg/pr120152_2.f90 | 80 + gcc/testsuite/gfortran.dg/pr120153.f90 | 36 + gcc/testsuite/gfortran.dg/pr120158.f90 | 15 + gcc/testsuite/gfortran.dg/pr120191_1.f90 | 614 + gcc/testsuite/gfortran.dg/pr120191_2.f90 | 84 + gcc/testsuite/gfortran.dg/pr120191_3.f90 | 23 + gcc/testsuite/gfortran.dg/pr120196.f90 | 26 + gcc/testsuite/gfortran.dg/proc_ptr_52.f90 | 1 + gcc/testsuite/gfortran.dg/proc_ptr_57.f90 | 36 + .../gfortran.dg/transfer_array_subref.f90 | 48 + .../doc/examples/plugin/fail/assignvalue.mod | 25 + .../plugin/fail/doc-examples-plugin-fail.exp | 25 + gcc/testsuite/gm2/pim/fail/constintarraybyte.mod | 10 + gcc/testsuite/gm2/pim/pass/highbit.mod | 13 + gcc/testsuite/gm2/pim/pass/highbit2.mod | 13 + gcc/testsuite/gm2/pimlib/run/pass/format2.mod | 63 + gcc/testsuite/gnat.dg/opt106.adb | 11 + gcc/testsuite/gnat.dg/opt106_pkg1.adb | 39 + gcc/testsuite/gnat.dg/opt106_pkg1.ads | 16 + gcc/testsuite/gnat.dg/opt106_pkg2.adb | 11 + gcc/testsuite/gnat.dg/opt106_pkg2.ads | 8 + gcc/testsuite/gnat.dg/specs/finalizable1.ads | 11 + gcc/testsuite/lib/gm2-dg.exp | 37 +- gcc/tree-sra.cc | 4 +- gcc/tree-ssa-phiopt.cc | 8 +- gcc/tree-ssa-structalias.cc | 50 +- gcc/tree-vect-data-refs.cc | 1 - gcc/tree-vect-slp.cc | 17 +- gcc/tree-vect-stmts.cc | 20 +- gcc/value-range.cc | 64 +- gcc/value-range.h | 1 - gcc/vr-values.cc | 11 +- libcpp/ChangeLog | 16 + libcpp/files.cc | 8 - libcpp/line-map.cc | 48 +- libcpp/po/ChangeLog | 16 + libcpp/po/es.po | 899 +- libcpp/po/zh_CN.po | 61 +- libgfortran/ChangeLog | 126 + libgfortran/Makefile.am | 8 +- libgfortran/Makefile.in | 35 +- libgfortran/generated/findloc2_s1.c | 4 +- libgfortran/generated/findloc2_s4.c | 4 +- libgfortran/generated/maxloc0_16_m1.c | 4 +- libgfortran/generated/maxloc0_16_m16.c | 4 +- libgfortran/generated/maxloc0_16_m2.c | 4 +- libgfortran/generated/maxloc0_16_m4.c | 4 +- libgfortran/generated/maxloc0_16_m8.c | 4 +- libgfortran/generated/maxloc0_4_m1.c | 4 +- libgfortran/generated/maxloc0_4_m16.c | 4 +- libgfortran/generated/maxloc0_4_m2.c | 4 +- libgfortran/generated/maxloc0_4_m4.c | 4 +- libgfortran/generated/maxloc0_4_m8.c | 4 +- libgfortran/generated/maxloc0_8_m1.c | 4 +- libgfortran/generated/maxloc0_8_m16.c | 4 +- libgfortran/generated/maxloc0_8_m2.c | 4 +- libgfortran/generated/maxloc0_8_m4.c | 4 +- libgfortran/generated/maxloc0_8_m8.c | 4 +- libgfortran/generated/maxloc1_16_m1.c | 4 +- libgfortran/generated/maxloc1_16_m16.c | 591 + libgfortran/generated/maxloc1_16_m2.c | 4 +- libgfortran/generated/maxloc1_16_m4.c | 4 +- libgfortran/generated/maxloc1_16_m8.c | 4 +- libgfortran/generated/maxloc1_16_s1.c | 5 +- libgfortran/generated/maxloc1_16_s4.c | 5 +- libgfortran/generated/maxloc1_4_m1.c | 4 +- libgfortran/generated/maxloc1_4_m16.c | 4 +- libgfortran/generated/maxloc1_4_m2.c | 4 +- libgfortran/generated/maxloc1_4_m4.c | 4 +- libgfortran/generated/maxloc1_4_m8.c | 4 +- libgfortran/generated/maxloc1_4_s1.c | 5 +- libgfortran/generated/maxloc1_4_s4.c | 5 +- libgfortran/generated/maxloc1_8_m1.c | 4 +- libgfortran/generated/maxloc1_8_m16.c | 4 +- libgfortran/generated/maxloc1_8_m2.c | 4 +- libgfortran/generated/maxloc1_8_m4.c | 4 +- libgfortran/generated/maxloc1_8_m8.c | 4 +- libgfortran/generated/maxloc1_8_s1.c | 5 +- libgfortran/generated/maxloc1_8_s4.c | 5 +- libgfortran/generated/maxloc2_16_s1.c | 4 +- libgfortran/generated/maxloc2_16_s4.c | 4 +- libgfortran/generated/maxloc2_4_s1.c | 4 +- libgfortran/generated/maxloc2_4_s4.c | 4 +- libgfortran/generated/maxloc2_8_s1.c | 4 +- libgfortran/generated/maxloc2_8_s4.c | 4 +- libgfortran/generated/maxval_m1.c | 12 +- libgfortran/generated/maxval_m16.c | 12 +- libgfortran/generated/maxval_m2.c | 12 +- libgfortran/generated/maxval_m4.c | 12 +- libgfortran/generated/maxval_m8.c | 12 +- libgfortran/generated/minloc1_16_s1.c | 5 +- libgfortran/generated/minloc1_16_s4.c | 5 +- libgfortran/generated/minloc1_4_s1.c | 5 +- libgfortran/generated/minloc1_4_s4.c | 5 +- libgfortran/generated/minloc1_8_s1.c | 5 +- libgfortran/generated/minloc1_8_s4.c | 5 +- libgfortran/generated/minloc2_16_s1.c | 4 +- libgfortran/generated/minloc2_16_s4.c | 4 +- libgfortran/generated/minloc2_4_s1.c | 4 +- libgfortran/generated/minloc2_4_s4.c | 4 +- libgfortran/generated/minloc2_8_s1.c | 4 +- libgfortran/generated/minloc2_8_s4.c | 4 +- libgfortran/gfortran.map | 12 +- libgfortran/intrinsics/random.c | 2 +- libgfortran/m4/ifindloc2.m4 | 4 +- libgfortran/m4/ifunction-s.m4 | 5 +- libgfortran/m4/iparm.m4 | 2 +- libgfortran/m4/maxloc2s.m4 | 4 +- libgfortran/m4/minloc2s.m4 | 4 +- libgm2/ChangeLog | 44 + libgm2/config.h.in | 53 + libgm2/configure | 371 +- libgm2/configure.ac | 44 + libgm2/libm2iso/wraptime.cc | 60 +- libgomp/ChangeLog | 135 + libgomp/libgomp.h | 4 +- libgomp/oacc-mem.c | 6 +- libgomp/target.c | 64 +- libgomp/testsuite/lib/libgomp.exp | 133 +- libgomp/testsuite/libgomp.c-c++-common/interop-2.c | 129 + .../testsuite/libgomp.c-target/aarch64/udr-sve.c | 58 +- libgomp/testsuite/libgomp.c/interop-cublas-full.c | 176 + .../testsuite/libgomp.c/interop-cublas-libonly.c | 7 + libgomp/testsuite/libgomp.c/interop-cuda-full.c | 162 + libgomp/testsuite/libgomp.c/interop-cuda-libonly.c | 11 + libgomp/testsuite/libgomp.c/interop-hip-amd-full.c | 10 + .../libgomp.c/interop-hip-amd-no-hip-header.c | 11 + .../testsuite/libgomp.c/interop-hip-nvidia-full.c | 11 + .../libgomp.c/interop-hip-nvidia-no-headers.c | 13 + .../libgomp.c/interop-hip-nvidia-no-hip-header.c | 12 + libgomp/testsuite/libgomp.c/interop-hip.h | 234 + .../testsuite/libgomp.c/interop-hipblas-amd-full.c | 7 + .../libgomp.c/interop-hipblas-amd-no-hip-header.c | 8 + .../libgomp.c/interop-hipblas-nvidia-full.c | 7 + .../libgomp.c/interop-hipblas-nvidia-no-headers.c | 9 + .../interop-hipblas-nvidia-no-hip-header.c | 8 + libgomp/testsuite/libgomp.c/interop-hipblas.h | 240 + libgomp/testsuite/libgomp.c/interop-hsa.c | 205 + .../testsuite/libgomp.c/target-map-zero-sized-2.c | 74 + .../testsuite/libgomp.c/target-map-zero-sized-3.c | 49 + .../testsuite/libgomp.c/target-map-zero-sized.c | 107 + libgomp/testsuite/libgomp.fortran/alloc-comp-4.f90 | 75 + libgomp/testsuite/libgomp.fortran/allocate-8a.f90 | 45 + .../libgomp.fortran/interop-hip-amd-full.F90 | 10 + .../libgomp.fortran/interop-hip-amd-no-module.F90 | 9 + .../libgomp.fortran/interop-hip-nvidia-full.F90 | 12 + .../interop-hip-nvidia-no-module.F90 | 11 + libgomp/testsuite/libgomp.fortran/interop-hip.h | 214 + .../libgomp.fortran/map-alloc-comp-9-usm.f90 | 11 + .../testsuite/libgomp.fortran/map-alloc-comp-9.f90 | 19 + .../libgomp.fortran/target-enter-data-8.f90 | 532 + libsanitizer/ChangeLog | 8 + .../sanitizer_common_interceptors_ioctl.inc | 8 - .../sanitizer_platform_limits_posix.cpp | 3 - .../sanitizer_platform_limits_posix.h | 1 - libstdc++-v3/ChangeLog | 260 + libstdc++-v3/doc/html/faq.html | 2 +- libstdc++-v3/doc/html/manual/containers.html | 2 +- libstdc++-v3/doc/html/manual/ext_numerics.html | 2 +- libstdc++-v3/doc/html/manual/ext_sgi.html | 4 +- libstdc++-v3/doc/html/manual/status.html | 57 +- .../doc/html/manual/using_concurrency.html | 10 +- libstdc++-v3/doc/html/manual/utilities.html | 4 +- libstdc++-v3/doc/xml/faq.xml | 2 +- libstdc++-v3/doc/xml/manual/containers.xml | 2 +- libstdc++-v3/doc/xml/manual/extensions.xml | 6 +- libstdc++-v3/doc/xml/manual/status_cxx2017.xml | 25 +- libstdc++-v3/doc/xml/manual/status_cxx2023.xml | 45 +- libstdc++-v3/doc/xml/manual/using.xml | 10 +- libstdc++-v3/doc/xml/manual/utilities.xml | 4 +- libstdc++-v3/include/bits/chrono_io.h | 13 +- libstdc++-v3/include/bits/formatfwd.h | 78 + libstdc++-v3/include/bits/stl_queue.h | 14 + libstdc++-v3/include/bits/stl_stack.h | 9 + libstdc++-v3/include/bits/version.def | 5 +- libstdc++-v3/include/bits/version.h | 5 +- libstdc++-v3/include/c_global/ccomplex | 2 + libstdc++-v3/include/c_global/ciso646 | 18 +- libstdc++-v3/include/c_global/cstdalign | 2 + libstdc++-v3/include/c_global/cstdbool | 2 + libstdc++-v3/include/c_global/ctgmath | 2 + libstdc++-v3/include/std/expected | 4 +- libstdc++-v3/include/std/flat_map | 28 +- libstdc++-v3/include/std/flat_set | 28 +- libstdc++-v3/include/std/format | 95 +- libstdc++-v3/include/std/memory | 1 + libstdc++-v3/include/std/mutex | 2 +- libstdc++-v3/include/std/queue | 80 +- libstdc++-v3/include/std/ranges | 12 +- libstdc++-v3/include/std/stack | 48 +- libstdc++-v3/python/hook.in | 12 +- libstdc++-v3/src/c++17/fs_path.cc | 10 + libstdc++-v3/src/c++23/std.cc.in | 11 +- .../18_support/headers/ciso646/macros-2.cc | 7 + .../testsuite/18_support/headers/ciso646/macros.cc | 1 - .../testsuite/20_util/aligned_storage/value.cc | 6 +- libstdc++-v3/testsuite/20_util/expected/119714.cc | 9 + .../testsuite/20_util/function/cons/70692.cc | 2 +- .../testsuite/20_util/headers/memory/version.cc | 4 + libstdc++-v3/testsuite/23_containers/flat_map/1.cc | 11 + .../testsuite/23_containers/flat_multimap/1.cc | 11 + .../testsuite/23_containers/flat_multiset/1.cc | 11 + libstdc++-v3/testsuite/23_containers/flat_set/1.cc | 11 + .../23_containers/forward_list/48101_neg.cc | 1 - .../testsuite/23_containers/list/48101_neg.cc | 1 - .../testsuite/23_containers/map/48101_neg.cc | 4 +- .../testsuite/23_containers/multimap/48101_neg.cc | 4 +- .../testsuite/23_containers/multiset/48101_neg.cc | 1 - .../testsuite/23_containers/set/48101_neg.cc | 1 - .../27_io/filesystem/path/concat/120029.cc | 72 + .../scoped_lock/requirements/typedefs.cc | 28 +- .../experimental/filesystem/path/concat/120029.cc | 74 + libstdc++-v3/testsuite/lib/libstdc++.exp | 5 + .../testsuite/std/format/formatter/lwg3944.cc | 2 +- libstdc++-v3/testsuite/std/format/parse_ctx.cc | 2 +- .../testsuite/std/format/ranges/adaptors.cc | 156 + .../testsuite/std/format/ranges/feature_test.cc | 9 + .../testsuite/std/format/ranges/format_kind_neg.cc | 15 +- libstdc++-v3/testsuite/std/format/string.cc | 2 +- libstdc++-v3/testsuite/std/time/clock/local/io.cc | 3 + libstdc++-v3/testsuite/std/time/format/pr120114.cc | 125 + maintainer-scripts/ChangeLog | 8 + 381 files changed, 107511 insertions(+), 96179 deletions(-)