diff --git a/0011-Add-dts.exp-and-use-it-to-fix-22_locale-messages-136.patch b/0011-Add-dts.exp-and-use-it-to-fix-22_locale-messages-136.patch
index 7d28f1e..1ad1f86 100644
--- a/0011-Add-dts.exp-and-use-it-to-fix-22_locale-messages-136.patch
+++ b/0011-Add-dts.exp-and-use-it-to-fix-22_locale-messages-136.patch
@@ -92,10 +92,10 @@ diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/l
index 7f9580db8..5e4b32f76 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
-@@ -58,6 +58,7 @@ load_gcc_lib timeout.exp
- load_gcc_lib timeout-dg.exp
+@@ -74,6 +74,7 @@
load_gcc_lib wrapper.exp
load_gcc_lib target-utils.exp
+ load_gcc_lib dg-test-cleanup.exp
+load_lib dts.exp
# Useful for debugging. Pass the name of a variable and the verbosity
diff --git a/0018-Use-CXX11-ABI.patch b/0018-Use-CXX11-ABI.patch
index 88449dd..9c24648 100644
--- a/0018-Use-CXX11-ABI.patch
+++ b/0018-Use-CXX11-ABI.patch
@@ -2,9 +2,9 @@ diff --git a/gcc/testsuite/g++.dg/warn/Wfree-nonheap-object-3.C b/gcc/testsuite/
index 47f97dcb636..66f07aaa749 100644
--- a/gcc/testsuite/g++.dg/warn/Wfree-nonheap-object-3.C
+++ b/gcc/testsuite/g++.dg/warn/Wfree-nonheap-object-3.C
-@@ -4,6 +4,8 @@
- { dg-do compile { target c++11 } }
- { dg-options "-O2 -Wall" } */
+@@ -5,6 +5,8 @@
+ { dg-options "-O2 -Wall" }
+ { dg-skip-if "requires hosted libstdc++ for string" { ! hostedlib } } */
+#define _GLIBCXX_USE_CXX11_ABI 1
+
diff --git a/gcc.spec b/gcc-toolset-15-gcc.spec
similarity index 95%
rename from gcc.spec
rename to gcc-toolset-15-gcc.spec
index fae18bd..683cf7b 100644
--- a/gcc.spec
+++ b/gcc-toolset-15-gcc.spec
@@ -6,23 +6,31 @@ BuildRequires: scl-utils-build
%{?scl:%global __strip %%{_scl_root}/usr/bin/strip}
%{?scl:%global __objdump %%{_scl_root}/usr/bin/objdump}
%{?scl:%scl_package gcc}
-%global DATE 20250110
-%global gitrev e525669e462dd777a1af9932fe9188937acdeb69
-%global gcc_version 14.2.1
-%global gcc_major 14
+%global DATE 20250521
+%global gitrev b9def1721b12cae307c1a1ebc49030fce6531dfa
+%global gcc_version 15.1.1
+%global gcc_major 15
# Note, gcc_release must be integer, if you want to add suffixes to
# %%{release}, append them after %%{gcc_release} on Release: line.
-%global gcc_release 7
+%global gcc_release 2
%global nvptx_tools_gitrev 87ce9dc5999e5fca2e1d3478a30888d9864c9804
-%global newlib_cygwin_gitrev d45261f62a15f8abd94a1031020b9a9f455e4eed
+%global newlib_cygwin_gitrev d35cc82b5ec15bb8a5fe0fe11e183d1887992e99
%global isl_version 0.24
%global mpc_version 1.0.3
%global mpfr_version 3.1.4
%global gmp_version 6.1.0
%global doxygen_version 1.8.0
%global _unpackaged_files_terminate_build 0
+%if 0%{?fedora:1}
+%global _performance_build 1
+# Hardening slows the compiler way too much.
+%undefine _hardened_build
+%endif
+%undefine _auto_set_build_flags
+%if 0%{?fedora} > 27 || 0%{?rhel} > 7
# Until annobin is fixed (#1519165).
%undefine _annotated_build
+%endif
# Strip will fail on nvptx-none *.a archives and the brp-* scripts will
# fail randomly depending on what is stripped last.
%if 0%{?__brp_strip_static_archive:1}
@@ -42,6 +50,7 @@ BuildRequires: scl-utils-build
%global build_go 0
%global build_d 0
%global build_m2 0
+%global build_cobol 0
%else
%ifarch %{ix86} x86_64 ia64 ppc %{power64} alpha s390x %{arm} aarch64 riscv64
%global build_ada 0
@@ -64,12 +73,12 @@ BuildRequires: scl-utils-build
%else
%global build_m2 0
%endif
+%ifarch x86_64 aarch64
+%global build_cobol 0
+%else
+%global build_cobol 0
%endif
-# Only so that rpmbuild doesn't complain on Fedora.
-%if 0%{?fedora} > 18
-%global build_libquadmath 0
%endif
-%global build_libitm 0
%ifarch %{ix86} x86_64 ia64 ppc64le
%global build_libquadmath 1
%else
@@ -122,7 +131,8 @@ BuildRequires: scl-utils-build
%global attr_ifunc 0
%endif
%ifarch x86_64 ppc64le
-%global build_offload_nvptx 1
+# FIXME fails with nvptx-as: missing .version directive at start of file
+%global build_offload_nvptx 0
%else
%global build_offload_nvptx 0
%endif
@@ -145,7 +155,7 @@ BuildRequires: scl-utils-build
%ifarch x86_64
%global multilib_32_arch i686
%endif
-%if 0%{?fedora} >= 36 || 0%{?rhel} >= 8
+%if 0%{?fedora} >= 36 || 0%{?rhel} > 8
%global build_annobin_plugin 1
%else
%global build_annobin_plugin 0
@@ -153,7 +163,7 @@ BuildRequires: scl-utils-build
Summary: GCC version %{gcc_major}
Name: %{?scl_prefix}gcc
Version: %{gcc_version}
-Release: %{gcc_release}.2%{?dist}
+Release: %{gcc_release}%{?dist}
# License notes for some of the less obvious ones:
# gcc/doc/cppinternals.texi: Linux-man-pages-copyleft-2-para
# isl: MIT, BSD-2-Clause
@@ -184,7 +194,7 @@ Source1: https://gcc.gnu.org/pub/gcc/infrastructure/isl-%{isl_version}.tar.bz2
Source4: nvptx-tools-%{nvptx_tools_gitrev}.tar.xz
# The source for nvptx-newlib package was pulled from upstream's vcs. Use the
# following commands to generate the tarball:
-# git clone git://sourceware.org/git/newlib-cygwin.git newlib-cygwin-dir.tmp
+# git clone https://sourceware.org/git/newlib-cygwin.git newlib-cygwin-dir.tmp
# git --git-dir=newlib-cygwin-dir.tmp/.git archive --prefix=newlib-cygwin-%%{newlib_cygwin_gitrev}/ %%{newlib_cygwin_gitrev} ":(exclude)newlib/libc/sys/linux/include/rpc/*.[hx]" | xz -9e > newlib-cygwin-%%{newlib_cygwin_gitrev}.tar.xz
# rm -rf newlib-cygwin-dir.tmp
Source5: newlib-cygwin-%{newlib_cygwin_gitrev}.tar.xz
@@ -204,7 +214,8 @@ URL: http://gcc.gnu.org
# Need binutils which support -plugin
# Need binutils which support .loc view >= 2.30
# Need binutils which support --generate-missing-build-notes=yes >= 2.31
-BuildRequires: %{?scl_prefix}binutils >= 2.31
+# Need binutils which support .base64 >= 2.43
+BuildRequires: %{?scl_prefix}binutils >= 2.43
# For VTA guality testing
%if 0%{?rhel} >= 9
BuildRequires: gdb >= 7.4.50
@@ -254,7 +265,8 @@ BuildRequires: libunwind >= 0.98
# Need binutils that support -plugin
# Need binutils that support .loc view >= 2.30
# Need binutils which support --generate-missing-build-notes=yes >= 2.31
-Requires: %{?scl_prefix}binutils >= 2.22.52.0.1
+# Need binutils that support .base64 >= 2.43
+Requires: %{?scl_prefix}binutils >= 2.43
# Make sure gdb will understand DW_FORM_strp
Conflicts: gdb < 5.1-2
Requires: glibc-devel >= 2.2.90-12
@@ -322,26 +334,25 @@ Provides: liblto_plugin.so.0
%global oformat OUTPUT_FORMAT(elf64-littleaarch64)
%endif
-Patch0: gcc14-hack.patch
-Patch2: gcc14-sparc-config-detection.patch
-Patch3: gcc14-libgomp-omp_h-multilib.patch
-Patch4: gcc14-libtool-no-rpath.patch
-Patch5: gcc14-isl-dl.patch
-Patch6: gcc14-isl-dl2.patch
-Patch7: gcc14-libstdc++-docs.patch
-Patch8: gcc14-no-add-needed.patch
-Patch9: gcc14-Wno-format-security.patch
-Patch10: gcc14-rh1574936.patch
-Patch11: gcc14-d-shared-libphobos.patch
-Patch12: gcc14-pr101523.patch
-Patch13: gcc14-pr118509.patch
+Patch0: gcc15-hack.patch
+Patch2: gcc15-sparc-config-detection.patch
+Patch3: gcc15-libgomp-omp_h-multilib.patch
+Patch4: gcc15-libtool-no-rpath.patch
+Patch5: gcc15-isl-dl.patch
+Patch6: gcc15-isl-dl2.patch
+Patch7: gcc15-libstdc++-docs.patch
+Patch8: gcc15-no-add-needed.patch
+Patch9: gcc15-Wno-format-security.patch
+Patch10: gcc15-rh1574936.patch
+Patch11: gcc15-d-shared-libphobos.patch
+Patch12: gcc15-pr119006.patch
Patch50: isl-rh2155127.patch
-Patch100: gcc14-fortran-fdec-duplicates.patch
+Patch100: gcc15-fortran-fdec-duplicates.patch
-Patch1000: gcc14-libstdc++-compat.patch
-Patch1001: gcc14-libgfortran-compat.patch
+Patch1000: gcc15-libstdc++-compat.patch
+Patch1001: gcc15-libgfortran-compat.patch
Patch3000: 0001-basic_string-reserve-n-semantics-are-not-available-i.patch
@@ -357,7 +368,7 @@ Patch3010: 0014-Conditionalize-tests-for-PR-libstdc-98466-on-__LIBST.patch
Patch3011: 0015-Conditionalize-test-for-PR-libstdc-87135-on-__LIBSTD.patch
Patch3012: 0016-Conditionalize-test-for-hashtable-bucket-sizes-on-__.patch
Patch3013: 0017-Conditionalize-test-for-PR-libstdc-71181-on-__LIBSTD.patch
-Patch3014: gcc14-dg-ice-fixes.patch
+Patch3014: gcc15-dg-ice-fixes.patch
Patch3015: 0018-Use-CXX11-ABI.patch
Patch3017: 0020-more-fixes.patch
Patch3018: 0021-libstdc++-disable-tests.patch
@@ -683,8 +694,7 @@ so that there cannot be any synchronization problems.
%patch -P9 -p0 -b .Wno-format-security~
%patch -P10 -p0 -b .rh1574936~
%patch -P11 -p0 -b .d-shared-libphobos~
-%patch -P12 -p1 -b .pr101523~
-%patch -P13 -p0 -b .pr118509~
+%patch -P12 -p0 -b .pr119006~
%patch -P100 -p1 -b .fortran-fdec-duplicates~
@@ -737,7 +747,6 @@ sed -i 's/\(version for most targets is \)5 /\14 /' gcc/doc/invoke.texi
cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h
cp -a libstdc++-v3/config/cpu/i{4,3}86/opt
-echo 'TM_H += $(srcdir)/config/rs6000/rs6000-modes.h' >> gcc/config/rs6000/t-rs6000
./contrib/gcc_update --touch
@@ -916,13 +925,17 @@ CONFIGURE_OPTS="\
%else
--without-isl \
%endif
-%if %{build_offload_nvptx}
- --enable-offload-targets=nvptx-none \
- --without-cuda-driver --enable-offload-defaulted \
+%if %{build_offload_nvptx} || %{build_offload_amdgcn}
+ --enable-offload-targets=$offloadtgts --enable-offload-defaulted \
%endif
+%if %{build_offload_nvptx}
+ --without-cuda-driver \
+%endif
+%if 0%{?fedora} >= 21 || 0%{?rhel} >= 7
%if %{attr_ifunc}
--enable-gnu-indirect-function \
%endif
+%endif
%ifarch %{arm}
--disable-sjlj-exceptions \
%endif
@@ -949,7 +962,11 @@ CONFIGURE_OPTS="\
%endif
%ifarch ppc64le
%if 0%{?rhel} >= 9
+%if 0%{?rhel} >= 10
+ --with-cpu-32=power9 --with-tune-32=power10 --with-cpu-64=power9 --with-tune-64=power10 \
+%else
--with-cpu-32=power9 --with-tune-32=power9 --with-cpu-64=power9 --with-tune-64=power9 \
+%endif
%else
--with-cpu-32=power8 --with-tune-32=power8 --with-cpu-64=power8 --with-tune-64=power8 \
%endif
@@ -958,9 +975,7 @@ CONFIGURE_OPTS="\
--build=%{gcc_target_platform} --target=%{gcc_target_platform} --with-cpu=default32
%endif
%ifarch %{ix86} x86_64
-%if 0%{?rhel} >= 8
--enable-cet \
-%endif
--with-tune=generic \
%endif
%ifarch %{ix86}
@@ -968,7 +983,11 @@ CONFIGURE_OPTS="\
%endif
%ifarch x86_64
%if 0%{?rhel} > 8
+%if 0%{?rhel} > 9
+ --with-arch_64=x86-64-v3 \
+%else
--with-arch_64=x86-64-v2 \
+%endif
%endif
--with-arch_32=x86-64 \
%endif
@@ -1063,7 +1082,7 @@ CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \
| sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \
XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
../../configure --disable-bootstrap --enable-host-shared \
- --enable-languages=jit $CONFIGURE_OPTS
+ --enable-languages=jit --enable-libgdiagnostics $CONFIGURE_OPTS
make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" all-gcc
cp -a gcc/libgccjit.so* ../gcc/
cd ../gcc/
@@ -1191,6 +1210,7 @@ cd obj-offload-nvptx-none
make prefix=%{buildroot}%{_prefix} mandir=%{buildroot}%{_mandir} \
infodir=%{buildroot}%{_infodir} install
rm -rf %{buildroot}%{_prefix}/libexec/gcc/nvptx-none/%{gcc_major}/install-tools
+rm -rf %{buildroot}%{_prefix}/libexec/gcc/nvptx-none/%{gcc_major}/g++-mapper-server
rm -rf %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/accel/nvptx-none/{install-tools,plugin,cc1,cc1plus,f951}
rm -rf %{buildroot}%{_infodir} %{buildroot}%{_mandir}/man7 %{buildroot}%{_prefix}/share/locale
rm -rf %{buildroot}%{_prefix}/lib/gcc/nvptx-none/%{gcc_major}/{install-tools,plugin}
@@ -1904,6 +1924,13 @@ cp -a %{_builddir}/gcc-%{version}-%{DATE}/annobin-plugin/annobin*/gcc-plugin/.li
pushd $FULLPATH/plugin/
ln -sf gts-gcc-annobin.so.0.0.0 gts-gcc-annobin.so.0
ln -sf gts-gcc-annobin.so.0.0.0 gts-gcc-annobin.so
+# On RHEL9 and later there is no GTS annobin from GTS15 onwards.
+%if 0%{?rhel} > 8
+ln -sf gts-gcc-annobin.so.0.0.0 annobin.so
+ln -sf gts-gcc-annobin.so.0.0.0 gcc-annobin.so
+ln -sf gts-gcc-annobin.so.0.0.0 annobin.so.0.0.0
+ln -sf gts-gcc-annobin.so.0.0.0 gcc-annobin.so.0.0.0
+%endif
popd
%endif
@@ -2144,9 +2171,7 @@ fi
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsaveintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsaveoptintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512cdintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512erintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512fintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512pfintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/shaintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm_malloc.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mm3dnow.h
@@ -2168,8 +2193,6 @@ fi
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsavesintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clzerointrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pkuintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx5124fmapsintrin.h
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx5124vnniwintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vpopcntdqintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sgxintrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/gfniintrin.h
@@ -2220,6 +2243,23 @@ fi
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sm3intrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sm4intrin.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/usermsrintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxavx512intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxfp8intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxmovrsintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxtf32intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/amxtransposeintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2-512bf16intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2-512convertintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2-512mediaintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2-512minmaxintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2-512satcvtintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2bf16intrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2convertintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2copyintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2mediaintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2minmaxintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx10_2satcvtintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/movrsintrin.h
%endif
%ifarch ia64
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia64intrin.h
@@ -2264,6 +2304,10 @@ fi
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_bf16.h
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_sve.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_sme.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon_sve_bridge.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_private_fp8.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_private_neon_types.h
%endif
%ifarch sparc sparcv9 sparc64
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/visintrin.h
@@ -2424,6 +2468,10 @@ fi
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gts-gcc-annobin.so
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gts-gcc-annobin.so.0
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gts-gcc-annobin.so.0.0.0
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gcc-annobin.so
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so.0.0.0
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gcc-annobin.so.0.0.0
%endif
%files c++
@@ -2797,6 +2845,31 @@ fi
%endif
%changelog
+* Wed May 21 2025 Marek Polacek 15.1.1-2
+- update from releases/gcc-15 branch
+ - PRs ada/112958, ada/120104, c/120057, c++/119863, c++/119864, c++/119938,
+ c++/119939, c++/119981, c++/119996, c++/120012, c++/120013,
+ c++/120023, c++/120125, c++/120161, c++/120350, fortran/102891,
+ fortran/102900, fortran/119928, fortran/119986, fortran/120049,
+ fortran/120107, fortran/120139, fortran/120163, fortran/120179,
+ fortran/120191, ipa/119852, ipa/119973, ipa/120006, ipa/120146,
+ libfortran/120152, libfortran/120153, libfortran/120158,
+ libfortran/120196, libstdc++/118260, libstdc++/119427,
+ libstdc++/119714, libstdc++/120029, libstdc++/120114,
+ libstdc++/120159, libstdc++/120187, libstdc++/120190,
+ libstdc++/120198, libstdc++/120293, modula2/115276, modula2/119914,
+ modula2/119915, modula2/120117, modula2/120188, preprocessor/116047,
+ preprocessor/120061, target/119610, testsuite/119909,
+ tree-optimization/111873, tree-optimization/119712,
+ tree-optimization/120043, tree-optimization/120048,
+ tree-optimization/120074, tree-optimization/120089,
+ tree-optimization/120143, tree-optimization/120211
+
+* Mon May 19 2025 Marek Polacek 15.1.1-1
+- update from releases/gcc-15 branch
+ - GCC 15.1 release
+ - PRs fortran/119836, target/119327, target/119873, tree-optimization/118407
+
* Mon May 12 2025 Siddhesh Poyarekar 14.2.1-7.2
- Fix GTS version in package name.
diff --git a/gcc14-libgfortran-compat.patch b/gcc14-libgfortran-compat.patch
deleted file mode 100644
index 3cb6e05..0000000
--- a/gcc14-libgfortran-compat.patch
+++ /dev/null
@@ -1,754 +0,0 @@
---- libgfortran/Makefile.am.jj 2024-04-26 11:47:02.740161941 +0200
-+++ libgfortran/Makefile.am 2024-07-19 16:22:00.633418680 +0200
-@@ -50,6 +50,7 @@ LTLDFLAGS = $(shell $(SHELL) $(top_srcdi
- $(lt_host_flags)
-
- toolexeclib_LTLIBRARIES = libgfortran.la
-+noinst_LTLIBRARIES = libgfortran_nonshared80.la libgfortran_nonshared110.la
- toolexeclib_DATA = libgfortran.spec
- libgfortran_la_LINK = $(LINK) $(libgfortran_la_LDFLAGS)
- libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
-@@ -1128,6 +1129,98 @@ BUILT_SOURCES=$(gfor_built_src) $(gfor_b
- libgfortran_la_SOURCES = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
- $(gfor_helper_src) $(gfor_ieee_src) $(gfor_io_headers) $(gfor_specific_src)
-
-+$(patsubst %.c,%.lo,$(nonshared_generated_C_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/generated/%.c
-+ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.o,$(nonshared_generated_C_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/generated/%.c
-+ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.lo,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/intrinsics/%.c
-+ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.o,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/intrinsics/%.c
-+ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.lo,$(nonshared_runtime_C_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/runtime/%.c
-+ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.o,$(nonshared_runtime_C_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/runtime/%.c
-+ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.f90,%.lo,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/intrinsics/%.f90
-+ $(LTPPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
-+
-+$(patsubst %.f90,%.o,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/intrinsics/%.f90
-+ $(PPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
-+
-+nonshared_runtime_C_SRC = \
-+nonshared-ISO_Fortran_binding.c
-+
-+nonshared_io_C_SRC = \
-+$(srcdir)/io/nonshared-transfer.c
-+
-+nonshared_generated_C_SRC = \
-+nonshared-findloc0_i1.c \
-+nonshared-findloc0_i2.c \
-+nonshared-findloc0_i4.c \
-+nonshared-findloc0_i8.c \
-+nonshared-findloc0_i16.c \
-+nonshared-findloc0_r4.c \
-+nonshared-findloc0_r8.c \
-+nonshared-findloc0_r10.c \
-+nonshared-findloc0_r16.c \
-+nonshared-findloc0_c4.c \
-+nonshared-findloc0_c8.c \
-+nonshared-findloc0_c10.c \
-+nonshared-findloc0_c16.c \
-+nonshared-findloc0_s1.c \
-+nonshared-findloc0_s4.c \
-+nonshared-findloc1_i1.c \
-+nonshared-findloc1_i2.c \
-+nonshared-findloc1_i4.c \
-+nonshared-findloc1_i8.c \
-+nonshared-findloc1_i16.c \
-+nonshared-findloc1_r4.c \
-+nonshared-findloc1_r8.c \
-+nonshared-findloc1_r10.c \
-+nonshared-findloc1_r16.c \
-+nonshared-findloc1_c4.c \
-+nonshared-findloc1_c8.c \
-+nonshared-findloc1_c10.c \
-+nonshared-findloc1_c16.c \
-+nonshared-findloc1_s1.c \
-+nonshared-findloc1_s4.c \
-+nonshared-findloc2_s1.c \
-+nonshared-findloc2_s4.c
-+
-+nonshared_intrinsics_C_SRC = \
-+nonshared-is_contiguous.c \
-+nonshared-trigd.c
-+
-+nonshared_intrinsics_f90_SRC = \
-+nonshared-random_init.f90
-+
-+libgfortran_nonshared80_la_SOURCES = \
-+$(nonshared_runtime_C_SRC) \
-+$(nonshared_generated_C_SRC) \
-+$(nonshared_intrinsics_C_SRC) \
-+$(nonshared_intrinsics_f90_SRC) \
-+$(srcdir)/ieee/nonshared-ieee_arithmetic.c \
-+$(srcdir)/ieee/nonshared-ieee_exceptions.c \
-+$(srcdir)/io/nonshared-transfer.c \
-+$(srcdir)/runtime/nonshared-error.c
-+
-+libgfortran_nonshared110_la_SOURCES = \
-+$(srcdir)/ieee/nonshared-ieee_exceptions.c
-+
- I_M4_DEPS=m4/iparm.m4 m4/mtype.m4
- I_M4_DEPS0=$(I_M4_DEPS) m4/iforeach.m4
- I_M4_DEPS1=$(I_M4_DEPS) m4/ifunction.m4
---- libgfortran/ieee/nonshared-ieee_exceptions.c.jj 2024-07-19 16:22:00.655418401 +0200
-+++ libgfortran/ieee/nonshared-ieee_exceptions.c 2024-07-19 16:22:00.655418401 +0200
-@@ -0,0 +1,50 @@
-+/* Helper functions in C for IEEE modules
-+ Copyright (C) 2013-2023 Free Software Foundation, Inc.
-+ Contributed by Francois-Xavier Coudert
-+
-+This file is part of the GNU Fortran runtime library (libgfortran).
-+
-+Libgfortran 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 of the License, or (at your option) any later version.
-+
-+Libgfortran 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.
-+
-+Under Section 7 of GPL version 3, you are granted additional
-+permissions described in the GCC Runtime Library Exception, version
-+3.1, as published by the Free Software Foundation.
-+
-+You should have received a copy of the GNU General Public License and
-+a copy of the GCC Runtime Library Exception along with this program;
-+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-+. */
-+
-+#include "libgfortran.h"
-+
-+#define options ((const options_t) {})
-+
-+#include "fpu-target.h"
-+
-+struct ieee_modes_type {
-+ GFC_INTEGER_4 rounding, underflow, halting;
-+};
-+
-+void
-+__ieee_exceptions_MOD_ieee_get_modes (struct ieee_modes_type *modes)
-+{
-+ modes->rounding = get_fpu_rounding_mode ();
-+ modes->underflow = get_fpu_underflow_mode ();
-+ modes->halting = get_fpu_trap_exceptions ();
-+}
-+
-+void
-+__ieee_exceptions_MOD_ieee_set_modes (struct ieee_modes_type *modes)
-+{
-+ set_fpu_rounding_mode (modes->rounding);
-+ set_fpu_underflow_mode (modes->underflow);
-+ set_fpu_trap_exceptions (modes->halting, ~modes->halting);
-+}
---- libgfortran/ieee/nonshared-ieee_arithmetic.c.jj 2024-07-19 16:22:00.655418401 +0200
-+++ libgfortran/ieee/nonshared-ieee_arithmetic.c 2024-07-19 16:22:00.655418401 +0200
-@@ -0,0 +1,64 @@
-+/* Helper functions in C for IEEE modules
-+ Copyright (C) 2013-2023 Free Software Foundation, Inc.
-+ Contributed by Francois-Xavier Coudert
-+
-+This file is part of the GNU Fortran runtime library (libgfortran).
-+
-+Libgfortran 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 of the License, or (at your option) any later version.
-+
-+Libgfortran 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.
-+
-+Under Section 7 of GPL version 3, you are granted additional
-+permissions described in the GCC Runtime Library Exception, version
-+3.1, as published by the Free Software Foundation.
-+
-+You should have received a copy of the GNU General Public License and
-+a copy of the GCC Runtime Library Exception along with this program;
-+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-+. */
-+
-+#include "libgfortran.h"
-+
-+GFC_LOGICAL_4
-+__ieee_arithmetic_MOD_ieee_support_subnormal_4 (gfc_array_r4 *arg)
-+{
-+ (void) arg;
-+ return 1;
-+}
-+
-+GFC_LOGICAL_4
-+__ieee_arithmetic_MOD_ieee_support_subnormal_8 (gfc_array_r8 *arg)
-+{
-+ (void) arg;
-+ return 1;
-+}
-+
-+#ifdef HAVE_GFC_REAL_10
-+GFC_LOGICAL_4
-+__ieee_arithmetic_MOD_ieee_support_subnormal_10 (gfc_array_r10 *arg)
-+{
-+ (void) arg;
-+ return 1;
-+}
-+#endif
-+
-+#ifdef HAVE_GFC_REAL_16
-+GFC_LOGICAL_4
-+__ieee_arithmetic_MOD_ieee_support_subnormal_16 (gfc_array_r16 *arg)
-+{
-+ (void) arg;
-+ return 1;
-+}
-+#endif
-+
-+GFC_LOGICAL_4
-+__ieee_arithmetic_MOD_ieee_support_subnormal_noarg (void)
-+{
-+ return 1;
-+}
---- libgfortran/Makefile.in.jj 2024-04-26 11:47:02.744161886 +0200
-+++ libgfortran/Makefile.in 2024-07-19 16:22:46.496837520 +0200
-@@ -216,7 +216,8 @@ am__uninstall_files_from_dir = { \
- am__installdirs = "$(DESTDIR)$(cafexeclibdir)" \
- "$(DESTDIR)$(toolexeclibdir)" "$(DESTDIR)$(toolexeclibdir)" \
- "$(DESTDIR)$(gfor_cdir)" "$(DESTDIR)$(fincludedir)"
--LTLIBRARIES = $(cafexeclib_LTLIBRARIES) $(toolexeclib_LTLIBRARIES)
-+LTLIBRARIES = $(cafexeclib_LTLIBRARIES) $(noinst_LTLIBRARIES) \
-+ $(toolexeclib_LTLIBRARIES)
- libcaf_single_la_LIBADD =
- am_libcaf_single_la_OBJECTS = single.lo
- libcaf_single_la_OBJECTS = $(am_libcaf_single_la_OBJECTS)
-@@ -484,6 +485,40 @@ am_libgfortran_la_OBJECTS = $(am__object
- $(am__objects_55) $(am__objects_58) $(am__objects_59) \
- $(am__objects_60) $(am__objects_64)
- libgfortran_la_OBJECTS = $(am_libgfortran_la_OBJECTS)
-+libgfortran_nonshared110_la_LIBADD =
-+am_libgfortran_nonshared110_la_OBJECTS = nonshared-ieee_exceptions.lo
-+libgfortran_nonshared110_la_OBJECTS = \
-+ $(am_libgfortran_nonshared110_la_OBJECTS)
-+AM_V_lt = $(am__v_lt_@AM_V@)
-+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
-+am__v_lt_0 = --silent
-+am__v_lt_1 =
-+libgfortran_nonshared80_la_LIBADD =
-+am__objects_65 = nonshared-ISO_Fortran_binding.lo
-+am__objects_66 = nonshared-findloc0_i1.lo nonshared-findloc0_i2.lo \
-+ nonshared-findloc0_i4.lo nonshared-findloc0_i8.lo \
-+ nonshared-findloc0_i16.lo nonshared-findloc0_r4.lo \
-+ nonshared-findloc0_r8.lo nonshared-findloc0_r10.lo \
-+ nonshared-findloc0_r16.lo nonshared-findloc0_c4.lo \
-+ nonshared-findloc0_c8.lo nonshared-findloc0_c10.lo \
-+ nonshared-findloc0_c16.lo nonshared-findloc0_s1.lo \
-+ nonshared-findloc0_s4.lo nonshared-findloc1_i1.lo \
-+ nonshared-findloc1_i2.lo nonshared-findloc1_i4.lo \
-+ nonshared-findloc1_i8.lo nonshared-findloc1_i16.lo \
-+ nonshared-findloc1_r4.lo nonshared-findloc1_r8.lo \
-+ nonshared-findloc1_r10.lo nonshared-findloc1_r16.lo \
-+ nonshared-findloc1_c4.lo nonshared-findloc1_c8.lo \
-+ nonshared-findloc1_c10.lo nonshared-findloc1_c16.lo \
-+ nonshared-findloc1_s1.lo nonshared-findloc1_s4.lo \
-+ nonshared-findloc2_s1.lo nonshared-findloc2_s4.lo
-+am__objects_67 = nonshared-is_contiguous.lo nonshared-trigd.lo
-+am__objects_68 = nonshared-random_init.lo
-+am_libgfortran_nonshared80_la_OBJECTS = $(am__objects_65) \
-+ $(am__objects_66) $(am__objects_67) $(am__objects_68) \
-+ nonshared-ieee_arithmetic.lo nonshared-ieee_exceptions.lo \
-+ nonshared-transfer.lo nonshared-error.lo
-+libgfortran_nonshared80_la_OBJECTS = \
-+ $(am_libgfortran_nonshared80_la_OBJECTS)
- AM_V_P = $(am__v_P_@AM_V@)
- am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
- am__v_P_0 = false
-@@ -500,10 +535,6 @@ DEFAULT_INCLUDES = -I.@am__isrc@
- depcomp = $(SHELL) $(top_srcdir)/../depcomp
- am__depfiles_maybe = depfiles
- am__mv = mv -f
--AM_V_lt = $(am__v_lt_@AM_V@)
--am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
--am__v_lt_0 = --silent
--am__v_lt_1 =
- PPFCCOMPILE = $(FC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
- LTPPFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
-@@ -547,7 +578,9 @@ AM_V_FC = $(am__v_FC_@AM_V@)
- am__v_FC_ = $(am__v_FC_@AM_DEFAULT_V@)
- am__v_FC_0 = @echo " FC " $@;
- am__v_FC_1 =
--SOURCES = $(libcaf_single_la_SOURCES) $(libgfortran_la_SOURCES)
-+SOURCES = $(libcaf_single_la_SOURCES) $(libgfortran_la_SOURCES) \
-+ $(libgfortran_nonshared110_la_SOURCES) \
-+ $(libgfortran_nonshared80_la_SOURCES)
- am__can_run_installinfo = \
- case $$AM_UPDATE_INFO_DIR in \
- n|no|NO) false;; \
-@@ -753,6 +786,7 @@ LTLDFLAGS = $(shell $(SHELL) $(top_srcdi
- $(lt_host_flags)
-
- toolexeclib_LTLIBRARIES = libgfortran.la
-+noinst_LTLIBRARIES = libgfortran_nonshared80.la libgfortran_nonshared110.la
- toolexeclib_DATA = libgfortran.spec
- libgfortran_la_LINK = $(LINK) $(libgfortran_la_LDFLAGS)
- libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
-@@ -1655,6 +1689,66 @@ BUILT_SOURCES = $(gfor_built_src) $(gfor
- libgfortran_la_SOURCES = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
- $(gfor_helper_src) $(gfor_ieee_src) $(gfor_io_headers) $(gfor_specific_src)
-
-+nonshared_runtime_C_SRC = \
-+nonshared-ISO_Fortran_binding.c
-+
-+nonshared_io_C_SRC = \
-+$(srcdir)/io/nonshared-transfer.c
-+
-+nonshared_generated_C_SRC = \
-+nonshared-findloc0_i1.c \
-+nonshared-findloc0_i2.c \
-+nonshared-findloc0_i4.c \
-+nonshared-findloc0_i8.c \
-+nonshared-findloc0_i16.c \
-+nonshared-findloc0_r4.c \
-+nonshared-findloc0_r8.c \
-+nonshared-findloc0_r10.c \
-+nonshared-findloc0_r16.c \
-+nonshared-findloc0_c4.c \
-+nonshared-findloc0_c8.c \
-+nonshared-findloc0_c10.c \
-+nonshared-findloc0_c16.c \
-+nonshared-findloc0_s1.c \
-+nonshared-findloc0_s4.c \
-+nonshared-findloc1_i1.c \
-+nonshared-findloc1_i2.c \
-+nonshared-findloc1_i4.c \
-+nonshared-findloc1_i8.c \
-+nonshared-findloc1_i16.c \
-+nonshared-findloc1_r4.c \
-+nonshared-findloc1_r8.c \
-+nonshared-findloc1_r10.c \
-+nonshared-findloc1_r16.c \
-+nonshared-findloc1_c4.c \
-+nonshared-findloc1_c8.c \
-+nonshared-findloc1_c10.c \
-+nonshared-findloc1_c16.c \
-+nonshared-findloc1_s1.c \
-+nonshared-findloc1_s4.c \
-+nonshared-findloc2_s1.c \
-+nonshared-findloc2_s4.c
-+
-+nonshared_intrinsics_C_SRC = \
-+nonshared-is_contiguous.c \
-+nonshared-trigd.c
-+
-+nonshared_intrinsics_f90_SRC = \
-+nonshared-random_init.f90
-+
-+libgfortran_nonshared80_la_SOURCES = \
-+$(nonshared_runtime_C_SRC) \
-+$(nonshared_generated_C_SRC) \
-+$(nonshared_intrinsics_C_SRC) \
-+$(nonshared_intrinsics_f90_SRC) \
-+$(srcdir)/ieee/nonshared-ieee_arithmetic.c \
-+$(srcdir)/ieee/nonshared-ieee_exceptions.c \
-+$(srcdir)/io/nonshared-transfer.c \
-+$(srcdir)/runtime/nonshared-error.c
-+
-+libgfortran_nonshared110_la_SOURCES = \
-+$(srcdir)/ieee/nonshared-ieee_exceptions.c
-+
- I_M4_DEPS = m4/iparm.m4 m4/mtype.m4
- I_M4_DEPS0 = $(I_M4_DEPS) m4/iforeach.m4
- I_M4_DEPS1 = $(I_M4_DEPS) m4/ifunction.m4
-@@ -1765,6 +1859,17 @@ clean-cafexeclibLTLIBRARIES:
- rm -f $${locs}; \
- }
-
-+clean-noinstLTLIBRARIES:
-+ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
-+ @list='$(noinst_LTLIBRARIES)'; \
-+ locs=`for p in $$list; do echo $$p; done | \
-+ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
-+ sort -u`; \
-+ test -z "$$locs" || { \
-+ echo rm -f $${locs}; \
-+ rm -f $${locs}; \
-+ }
-+
- install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
- @$(NORMAL_INSTALL)
- @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \
-@@ -1806,6 +1911,12 @@ libcaf_single.la: $(libcaf_single_la_OBJ
- libgfortran.la: $(libgfortran_la_OBJECTS) $(libgfortran_la_DEPENDENCIES) $(EXTRA_libgfortran_la_DEPENDENCIES)
- $(AM_V_GEN)$(libgfortran_la_LINK) -rpath $(toolexeclibdir) $(libgfortran_la_OBJECTS) $(libgfortran_la_LIBADD) $(LIBS)
-
-+libgfortran_nonshared110.la: $(libgfortran_nonshared110_la_OBJECTS) $(libgfortran_nonshared110_la_DEPENDENCIES) $(EXTRA_libgfortran_nonshared110_la_DEPENDENCIES)
-+ $(AM_V_CCLD)$(LINK) $(libgfortran_nonshared110_la_OBJECTS) $(libgfortran_nonshared110_la_LIBADD) $(LIBS)
-+
-+libgfortran_nonshared80.la: $(libgfortran_nonshared80_la_OBJECTS) $(libgfortran_nonshared80_la_DEPENDENCIES) $(EXTRA_libgfortran_nonshared80_la_DEPENDENCIES)
-+ $(AM_V_FCLD)$(FCLINK) $(libgfortran_nonshared80_la_OBJECTS) $(libgfortran_nonshared80_la_LIBADD) $(LIBS)
-+
- mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-@@ -2256,6 +2367,45 @@ distclean-compile:
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/minval_r8.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/move_alloc.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mvbits.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-ISO_Fortran_binding.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-error.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c10.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c16.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c8.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i1.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i16.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i2.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i8.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r10.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r16.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r8.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_s1.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_s4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c10.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c16.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c8.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i1.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i16.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i2.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i8.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r10.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r16.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r8.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_s1.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_s4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc2_s1.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc2_s4.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-ieee_arithmetic.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-ieee_exceptions.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-is_contiguous.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-transfer.Plo@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-trigd.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/norm2_r10.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/norm2_r16.Plo@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/norm2_r17.Plo@am__quote@
-@@ -7300,6 +7450,34 @@ ieee_helper.lo: ieee/ieee_helper.c
- @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ieee_helper.lo `test -f 'ieee/ieee_helper.c' || echo '$(srcdir)/'`ieee/ieee_helper.c
-
-+nonshared-ieee_exceptions.lo: $(srcdir)/ieee/nonshared-ieee_exceptions.c
-+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nonshared-ieee_exceptions.lo -MD -MP -MF $(DEPDIR)/nonshared-ieee_exceptions.Tpo -c -o nonshared-ieee_exceptions.lo `test -f '$(srcdir)/ieee/nonshared-ieee_exceptions.c' || echo '$(srcdir)/'`$(srcdir)/ieee/nonshared-ieee_exceptions.c
-+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/nonshared-ieee_exceptions.Tpo $(DEPDIR)/nonshared-ieee_exceptions.Plo
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(srcdir)/ieee/nonshared-ieee_exceptions.c' object='nonshared-ieee_exceptions.lo' libtool=yes @AMDEPBACKSLASH@
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o nonshared-ieee_exceptions.lo `test -f '$(srcdir)/ieee/nonshared-ieee_exceptions.c' || echo '$(srcdir)/'`$(srcdir)/ieee/nonshared-ieee_exceptions.c
-+
-+nonshared-ieee_arithmetic.lo: $(srcdir)/ieee/nonshared-ieee_arithmetic.c
-+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nonshared-ieee_arithmetic.lo -MD -MP -MF $(DEPDIR)/nonshared-ieee_arithmetic.Tpo -c -o nonshared-ieee_arithmetic.lo `test -f '$(srcdir)/ieee/nonshared-ieee_arithmetic.c' || echo '$(srcdir)/'`$(srcdir)/ieee/nonshared-ieee_arithmetic.c
-+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/nonshared-ieee_arithmetic.Tpo $(DEPDIR)/nonshared-ieee_arithmetic.Plo
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(srcdir)/ieee/nonshared-ieee_arithmetic.c' object='nonshared-ieee_arithmetic.lo' libtool=yes @AMDEPBACKSLASH@
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o nonshared-ieee_arithmetic.lo `test -f '$(srcdir)/ieee/nonshared-ieee_arithmetic.c' || echo '$(srcdir)/'`$(srcdir)/ieee/nonshared-ieee_arithmetic.c
-+
-+nonshared-transfer.lo: $(srcdir)/io/nonshared-transfer.c
-+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nonshared-transfer.lo -MD -MP -MF $(DEPDIR)/nonshared-transfer.Tpo -c -o nonshared-transfer.lo `test -f '$(srcdir)/io/nonshared-transfer.c' || echo '$(srcdir)/'`$(srcdir)/io/nonshared-transfer.c
-+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/nonshared-transfer.Tpo $(DEPDIR)/nonshared-transfer.Plo
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(srcdir)/io/nonshared-transfer.c' object='nonshared-transfer.lo' libtool=yes @AMDEPBACKSLASH@
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o nonshared-transfer.lo `test -f '$(srcdir)/io/nonshared-transfer.c' || echo '$(srcdir)/'`$(srcdir)/io/nonshared-transfer.c
-+
-+nonshared-error.lo: $(srcdir)/runtime/nonshared-error.c
-+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT nonshared-error.lo -MD -MP -MF $(DEPDIR)/nonshared-error.Tpo -c -o nonshared-error.lo `test -f '$(srcdir)/runtime/nonshared-error.c' || echo '$(srcdir)/'`$(srcdir)/runtime/nonshared-error.c
-+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/nonshared-error.Tpo $(DEPDIR)/nonshared-error.Plo
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$(srcdir)/runtime/nonshared-error.c' object='nonshared-error.lo' libtool=yes @AMDEPBACKSLASH@
-+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o nonshared-error.lo `test -f '$(srcdir)/runtime/nonshared-error.c' || echo '$(srcdir)/'`$(srcdir)/runtime/nonshared-error.c
-+
- .f90.o:
- $(AM_V_FC)$(FCCOMPILE) -c -o $@ $<
-
-@@ -7494,7 +7672,8 @@ maintainer-clean-generic:
- clean: clean-am
-
- clean-am: clean-cafexeclibLTLIBRARIES clean-generic clean-libtool \
-- clean-local clean-toolexeclibLTLIBRARIES mostlyclean-am
-+ clean-local clean-noinstLTLIBRARIES \
-+ clean-toolexeclibLTLIBRARIES mostlyclean-am
-
- distclean: distclean-am
- -rm -f $(am__CONFIG_DISTCLEAN_FILES)
-@@ -7574,14 +7753,15 @@ uninstall-am: uninstall-cafexeclibLTLIBR
- .PHONY: CTAGS GTAGS TAGS all all-am all-local am--refresh check \
- check-am clean clean-cafexeclibLTLIBRARIES clean-cscope \
- clean-generic clean-libtool clean-local \
-- clean-toolexeclibLTLIBRARIES cscope cscopelist-am ctags \
-- ctags-am distclean distclean-compile distclean-generic \
-- distclean-hdr distclean-libtool distclean-local distclean-tags \
-- dvi dvi-am html html-am info info-am install install-am \
-- install-cafexeclibLTLIBRARIES install-data install-data-am \
-- install-dvi install-dvi-am install-exec install-exec-am \
-- install-exec-local install-gfor_cHEADERS install-html \
-- install-html-am install-info install-info-am install-man \
-+ clean-noinstLTLIBRARIES clean-toolexeclibLTLIBRARIES cscope \
-+ cscopelist-am ctags ctags-am distclean distclean-compile \
-+ distclean-generic distclean-hdr distclean-libtool \
-+ distclean-local distclean-tags dvi dvi-am html html-am info \
-+ info-am install install-am install-cafexeclibLTLIBRARIES \
-+ install-data install-data-am install-dvi install-dvi-am \
-+ install-exec install-exec-am install-exec-local \
-+ install-gfor_cHEADERS install-html install-html-am \
-+ install-info install-info-am install-man \
- install-nodist_fincludeHEADERS install-pdf install-pdf-am \
- install-ps install-ps-am install-strip install-toolexeclibDATA \
- install-toolexeclibLTLIBRARIES installcheck installcheck-am \
-@@ -7649,6 +7829,38 @@ ieee_exceptions.mod: ieee_exceptions.lo
- ieee_arithmetic.mod: ieee_arithmetic.lo
- :
-
-+$(patsubst %.c,%.lo,$(nonshared_generated_C_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/generated/%.c
-+ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.o,$(nonshared_generated_C_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/generated/%.c
-+ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.lo,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/intrinsics/%.c
-+ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.o,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/intrinsics/%.c
-+ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.lo,$(nonshared_runtime_C_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/runtime/%.c
-+ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.c,%.o,$(nonshared_runtime_C_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/runtime/%.c
-+ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
-+
-+$(patsubst %.f90,%.lo,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
-+nonshared-%.lo: $(srcdir)/intrinsics/%.f90
-+ $(LTPPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
-+
-+$(patsubst %.f90,%.o,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
-+nonshared-%.o: $(srcdir)/intrinsics/%.f90
-+ $(PPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
-+
- kinds.h: $(srcdir)/mk-kinds-h.sh
- $(SHELL) $(srcdir)/mk-kinds-h.sh '@LIBGOMP_CHECKED_INT_KINDS@' \
- '@LIBGOMP_CHECKED_REAL_KINDS@' \
---- libgfortran/libgfortran.h.jj 2024-04-26 11:47:02.891159849 +0200
-+++ libgfortran/libgfortran.h 2024-07-19 16:22:00.666418262 +0200
-@@ -216,7 +216,7 @@ extern int __mingw_snprintf (char *, siz
- # define internal_proto(x) sym_rename(x, IPREFIX(x))
- #endif
-
--#if defined(HAVE_ATTRIBUTE_VISIBILITY) && defined(HAVE_ATTRIBUTE_ALIAS)
-+#if defined(HAVE_ATTRIBUTE_VISIBILITY) && defined(HAVE_ATTRIBUTE_ALIAS) && !defined(LIBGFORTRAN_NONSHARED)
- # define export_proto(x) sym_rename(x, PREFIX(x))
- # define export_proto_np(x) extern char swallow_semicolon
- # define iexport_proto(x) internal_proto(x)
-@@ -291,6 +291,10 @@ typedef GFC_UINTEGER_4 gfc_char4_t;
- simply equal to the kind parameter itself. */
- #define GFC_SIZE_OF_CHAR_KIND(kind) (kind)
-
-+#ifdef LIBGFORTRAN_NONSHARED
-+#define big_endian (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
-+#endif
-+
- #define GFOR_POINTER_TO_L1(p, kind) \
- ((__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ ? 1: 0) * (kind - 1) + (GFC_LOGICAL_1 *)(p))
-
-@@ -2024,4 +2028,63 @@ extern int __snprintfieee128 (char *, si
- #define HAVE_GFC_UINTEGER_1 1
- #define HAVE_GFC_UINTEGER_4 1
-
-+#ifdef LIBGFORTRAN_NONSHARED
-+#include
-+#include
-+#include
-+
-+#define internal_malloc_size nonshared_internal_malloc_size
-+#define xmalloc nonshared_internal_xmalloc
-+#define xmallocarray nonshared_internal_xmallocarray
-+#define reshape_packed nonshared_reshape_packed
-+static inline __attribute__((__always_inline__, __unused__))
-+void *
-+internal_malloc_size (size_t size)
-+{
-+ void *p;
-+
-+ if (size == 0)
-+ return NULL;
-+
-+ p = (void *) malloc (size);
-+ if (p == NULL)
-+ os_error ("Memory allocation failed");
-+ return p;
-+}
-+
-+static inline __attribute__((__always_inline__, __unused__))
-+void *
-+xmalloc (size_t size)
-+{
-+ return internal_malloc_size (size ? size : 1);
-+}
-+
-+static inline __attribute__((__always_inline__, __unused__))
-+void *
-+xmallocarray (size_t nmemb, size_t size)
-+{
-+ if (!nmemb || !size)
-+ size = nmemb = 1;
-+ else if (__builtin_expect ((nmemb | size)
-+ >= (((size_t) 1) << (__CHAR_BIT__
-+ * sizeof (size_t) / 2)), 0)
-+ && nmemb > __SIZE_MAX__ / size)
-+ {
-+ errno = ENOMEM;
-+ os_error ("Integer overflow in xmallocarray");
-+ }
-+
-+ return internal_malloc_size (nmemb * size);
-+}
-+
-+static inline __attribute__((__always_inline__, __unused__))
-+#include "intrinsics/reshape_packed.c"
-+
-+struct no_bounds_check { int bounds_check; };
-+#define compile_options ((struct no_bounds_check) { .bounds_check = 0 })
-+
-+#define internal_error(x, y...) runtime_error (y)
-+
-+#endif
-+
- #endif /* LIBGFOR_H */
---- libgfortran/runtime/nonshared-error.c.jj 2024-07-19 16:22:00.666418262 +0200
-+++ libgfortran/runtime/nonshared-error.c 2024-07-19 16:22:00.666418262 +0200
-@@ -0,0 +1,56 @@
-+/* Copyright (C) 2020-2023 Free Software Foundation, Inc.
-+
-+This file is part of the GNU Fortran runtime library (libgfortran).
-+
-+Libgfortran 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.
-+
-+Libgfortran 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.
-+
-+Under Section 7 of GPL version 3, you are granted additional
-+permissions described in the GCC Runtime Library Exception, version
-+3.1, as published by the Free Software Foundation.
-+
-+You should have received a copy of the GNU General Public License and
-+a copy of the GCC Runtime Library Exception along with this program;
-+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-+. */
-+
-+
-+#define LIBGFORTRAN_NONSHARED
-+#include "libgfortran.h"
-+#include "io.h"
-+#include "async.h"
-+
-+#include
-+#include
-+
-+/* Improved version of os_error with a printf style format string and
-+ a locus. */
-+
-+void
-+os_error_at (const char *where, const char *message, ...)
-+{
-+ char buf[4096];
-+ size_t len = strlen (where);
-+ int written;
-+ va_list ap;
-+
-+ if (len >= 2048)
-+ os_error ("Unknown error");
-+ memcpy (buf, where, len);
-+ memcpy (buf + len, ": ", 2);
-+ va_start (ap, message);
-+ written = vsnprintf (buf + len + 2, 4095 - len - 2, message, ap);
-+ va_end (ap);
-+ if (written < 0)
-+ written = 0;
-+ buf[len + 2 + written] = '\0';
-+ os_error (buf);
-+}
-+iexport(os_error_at);
---- libgfortran/io/nonshared-transfer.c.jj 2024-07-19 16:22:00.666418262 +0200
-+++ libgfortran/io/nonshared-transfer.c 2024-07-19 16:22:00.666418262 +0200
-@@ -0,0 +1,42 @@
-+/* Copyright (C) 2002-2023 Free Software Foundation, Inc.
-+ Contributed by Andy Vaught
-+ Namelist transfer functions contributed by Paul Thomas
-+ F2003 I/O support contributed by Jerry DeLisle
-+
-+This file is part of the GNU Fortran runtime library (libgfortran).
-+
-+Libgfortran 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.
-+
-+Libgfortran 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.
-+
-+Under Section 7 of GPL version 3, you are granted additional
-+permissions described in the GCC Runtime Library Exception, version
-+3.1, as published by the Free Software Foundation.
-+
-+You should have received a copy of the GNU General Public License and
-+a copy of the GCC Runtime Library Exception along with this program;
-+see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
-+. */
-+
-+
-+/* transfer.c -- Top level handling of data transfer statements. */
-+
-+#include "io.h"
-+#include "fbuf.h"
-+#include "format.h"
-+#include "unix.h"
-+#include "async.h"
-+#include
-+#include
-+
-+void
-+st_wait_async (st_parameter_wait *wtp)
-+{
-+ (void) wtp;
-+}
diff --git a/gcc14-pr101523.patch b/gcc14-pr101523.patch
deleted file mode 100644
index 8f3b47b..0000000
--- a/gcc14-pr101523.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-Based on Richi's patch:
-
-~~
-The following avoids re-walking and re-combining the instructions
-between i2 and i3 when the pattern of i2 doesn't change.
-
-Bootstrap and regtest running ontop of a reversal of
-r14-9692-g839bc42772ba7a.
-
-It brings down memory use from 9GB to 400MB and compile-time from
-80s to 3.5s. r14-9692-g839bc42772ba7a does better in both metrics
-but has shown code generation regressions across architectures.
-
- PR rtl-optimization/101523
- * combine.cc (try_combine): When the pattern of i2 doesn't
- change do not re-start combining at i2 or an earlier insn which
- had links or notes added.
-~~
-But, since the patch affects code generation (for instance,
-libstdc++-v3/src/c++17/floating_from_chars.o), we limit the bailing out
-only when I2 hasn't been changed 1000x. I've measured how many times
-at most is I2 unchanged during a bootstrap + regtest.
-x86: 134
-aarch64: 736 (gimple-match-1.cc)
-s390x: 635 (gimple-match-*)
-ppc64le: 620 (gimple-match-*)
-while certain pathological testcases trigger it more than 10,000 times.
-With the limit in place this patch doesn't affect common code.
-
---- a/gcc/combine.cc
-+++ b/gcc/combine.cc
-@@ -92,6 +92,11 @@ along with GCC; see the file COPYING3. If not see
- #include "function-abi.h"
- #include "rtlanal.h"
-
-+/* Number of times I2 didn't change in try_combine. Used to prevent a
-+ combinatorial explosion. */
-+
-+static int combine_i2_unchanged;
-+
- /* Number of attempts to combine instructions in this function. */
-
- static int combine_attempts;
-@@ -1127,6 +1132,7 @@ combine_instructions (rtx_insn *f, unsigned int nregs)
- return false;
-
- combine_attempts = 0;
-+ combine_i2_unchanged = 0;
- combine_merges = 0;
- combine_extras = 0;
- combine_successes = 0;
-@@ -4196,6 +4201,10 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
- adjust_for_new_dest (i3);
- }
-
-+ bool i2_i2_unchanged = false;
-+ if (rtx_equal_p (newi2pat, PATTERN (i2)))
-+ i2_i2_unchanged = true;
-+
- /* We now know that we can do this combination. Merge the insns and
- update the status of registers and LOG_LINKS. */
-
-@@ -4762,6 +4771,13 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
- combine_successes++;
- undo_commit ();
-
-+ if (i2_i2_unchanged)
-+ {
-+ if (combine_i2_unchanged == 1000)
-+ return i3;
-+ ++combine_i2_unchanged;
-+ }
-+
- rtx_insn *ret = newi2pat ? i2 : i3;
- if (added_links_insn && DF_INSN_LUID (added_links_insn) < DF_INSN_LUID (ret))
- ret = added_links_insn;
diff --git a/gcc14-pr118509.patch b/gcc14-pr118509.patch
deleted file mode 100644
index 6e19016..0000000
--- a/gcc14-pr118509.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-2025-01-20 Jakub Jelinek
-
- PR c++/118509
- * typeck.cc (get_member_function_from_ptrfunc): Wrap force_target_expr
- with save_expr.
-
- * g++.dg/expr/pmf-4.C: New test.
-
---- gcc/cp/typeck.cc.jj 2025-01-09 10:10:28.042651891 +0100
-+++ gcc/cp/typeck.cc 2025-01-20 15:09:24.200053590 +0100
-@@ -4187,8 +4187,8 @@ get_member_function_from_ptrfunc (tree *
- && !DECL_P (instance_ptr)
- && !TREE_CONSTANT (instance_ptr)))
- instance_ptr = instance_save_expr
-- = force_target_expr (TREE_TYPE (instance_ptr), instance_ptr,
-- complain);
-+ = save_expr (force_target_expr (TREE_TYPE (instance_ptr),
-+ instance_ptr, complain));
-
- /* See above comment. */
- if (TREE_SIDE_EFFECTS (function)
-@@ -4196,7 +4196,8 @@ get_member_function_from_ptrfunc (tree *
- && !DECL_P (function)
- && !TREE_CONSTANT (function)))
- function
-- = force_target_expr (TREE_TYPE (function), function, complain);
-+ = save_expr (force_target_expr (TREE_TYPE (function), function,
-+ complain));
-
- /* Start by extracting all the information from the PMF itself. */
- e3 = pfn_from_ptrmemfunc (function);
---- gcc/testsuite/g++.dg/expr/pmf-4.C.jj
-+++ gcc/testsuite/g++.dg/expr/pmf-4.C
-@@ -0,0 +1,22 @@
-+// PR c++/118509
-+// { dg-do run }
-+// { dg-options "-Wall -O2" }
-+
-+struct A { void foo () { a = 1; } int a; A () : a (0) {} };
-+struct B : virtual A {};
-+typedef void (A::*C) ();
-+
-+__attribute__((noipa)) void
-+foo (C x, B *y)
-+{
-+ (y->*x) ();
-+}
-+
-+int
-+main ()
-+{
-+ B b;
-+ foo (&A::foo, &b);
-+ if (b.a != 1)
-+ __builtin_abort ();
-+}
diff --git a/gcc14-Wno-format-security.patch b/gcc15-Wno-format-security.patch
similarity index 80%
rename from gcc14-Wno-format-security.patch
rename to gcc15-Wno-format-security.patch
index e317c15..66f62b8 100644
--- a/gcc14-Wno-format-security.patch
+++ b/gcc15-Wno-format-security.patch
@@ -9,15 +9,15 @@
* configure: Regenerated.
--- gcc/configure.ac.jj 2017-02-13 12:20:53.000000000 +0100
-+++ gcc/configure.ac 2017-02-25 12:42:32.859175403 +0100
-@@ -570,7 +570,7 @@ AC_ARG_ENABLE(build-format-warnings,
++++ gcc/configure.ac 2024-11-30 13:34:11.100296256 +0100
+@@ -592,7 +592,7 @@ AC_ARG_ENABLE(build-format-warnings,
AS_HELP_STRING([--disable-build-format-warnings],[don't use -Wformat while building GCC]),
[],[enable_build_format_warnings=yes])
AS_IF([test $enable_build_format_warnings = no],
- [wf_opt=-Wno-format],[wf_opt=])
+ [wf_opt="-Wno-format -Wno-format-security"],[wf_opt=])
ACX_PROG_CXX_WARNING_OPTS(
- m4_quote(m4_do([-W -Wall -Wno-narrowing -Wwrite-strings ],
+ m4_quote(m4_do([-W -Wall -Wno-error=narrowing -Wwrite-strings ],
[-Wcast-qual $wf_opt])),
--- gcc/configure.jj 2017-02-13 12:20:52.000000000 +0100
+++ gcc/configure 2017-02-25 12:42:50.041946391 +0100
@@ -31,8 +31,8 @@
wf_opt=
fi
--- Makefile.tpl.jj 2023-11-29 13:21:41.680292662 +0100
-+++ Makefile.tpl 2023-11-29 13:23:24.677839321 +0100
-@@ -448,9 +448,9 @@ LDFLAGS = @LDFLAGS@
++++ Makefile.tpl 2024-11-30 13:35:29.303196246 +0100
+@@ -450,9 +450,9 @@ LDFLAGS = @LDFLAGS@
LIBCFLAGS = $(CFLAGS)
CXXFLAGS = @CXXFLAGS@
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
@@ -43,11 +43,11 @@
+GDCFLAGS = $(filter-out -Wformat-security,@GDCFLAGS@)
+GM2FLAGS = $(filter-out -Wformat-security,$(CFLAGS))
- PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+ CRAB1_LIBS = @CRAB1_LIBS@
--- Makefile.in.jj 2023-11-29 13:21:41.691292507 +0100
-+++ Makefile.in 2023-11-29 13:24:01.254323180 +0100
-@@ -445,9 +445,9 @@ LDFLAGS = @LDFLAGS@
++++ Makefile.in 2024-11-30 13:36:12.113594079 +0100
+@@ -447,9 +447,9 @@ LDFLAGS = @LDFLAGS@
LIBCFLAGS = $(CFLAGS)
CXXFLAGS = @CXXFLAGS@
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
@@ -58,5 +58,5 @@
+GDCFLAGS = $(filter-out -Wformat-security,@GDCFLAGS@)
+GM2FLAGS = $(filter-out -Wformat-security,$(CFLAGS))
- PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+ CRAB1_LIBS = @CRAB1_LIBS@
diff --git a/gcc14-d-shared-libphobos.patch b/gcc15-d-shared-libphobos.patch
similarity index 100%
rename from gcc14-d-shared-libphobos.patch
rename to gcc15-d-shared-libphobos.patch
diff --git a/gcc14-dg-ice-fixes.patch b/gcc15-dg-ice-fixes.patch
similarity index 100%
rename from gcc14-dg-ice-fixes.patch
rename to gcc15-dg-ice-fixes.patch
diff --git a/gcc14-fortran-fdec-duplicates.patch b/gcc15-fortran-fdec-duplicates.patch
similarity index 100%
rename from gcc14-fortran-fdec-duplicates.patch
rename to gcc15-fortran-fdec-duplicates.patch
diff --git a/gcc14-hack.patch b/gcc15-hack.patch
similarity index 57%
rename from gcc14-hack.patch
rename to gcc15-hack.patch
index e98649e..9c5d57b 100644
--- a/gcc14-hack.patch
+++ b/gcc15-hack.patch
@@ -66,61 +66,117 @@
GDCFLAGS="$(GDCFLAGS) $${flags}" \
CXXFLAGS="$(CXXFLAGS) $${flags}" \
--- libcpp/macro.cc.jj 2019-01-09 13:01:21.420552123 +0100
-+++ libcpp/macro.cc 2019-01-11 18:18:17.736876285 +0100
-@@ -3256,8 +3256,6 @@ static cpp_macro *
++++ libcpp/macro.cc 2024-11-30 13:16:41.163056391 +0100
+@@ -3680,8 +3680,6 @@ static cpp_macro *
create_iso_definition (cpp_reader *pfile)
{
bool following_paste_op = false;
- const char *paste_op_error_msg =
-- N_("'##' cannot appear at either end of a macro expansion");
+- N_("%<##%> cannot appear at either end of a macro expansion");
unsigned int num_extra_tokens = 0;
unsigned nparms = 0;
cpp_hashnode **params = NULL;
-@@ -3382,7 +3380,9 @@ create_iso_definition (cpp_reader *pfile
+@@ -3809,7 +3807,9 @@ create_iso_definition (cpp_reader *pfile
function-like macros, but not at the end. */
if (following_paste_op)
{
- cpp_error (pfile, CPP_DL_ERROR, paste_op_error_msg);
+ cpp_error (pfile, CPP_DL_ERROR,
-+ "'##' cannot appear at either end of a macro "
++ "%<##%> cannot appear at either end of a macro "
+ "expansion");
goto out;
}
if (!vaopt_tracker.completed ())
-@@ -3397,7 +3397,9 @@ create_iso_definition (cpp_reader *pfile
+@@ -3824,7 +3824,9 @@ create_iso_definition (cpp_reader *pfile
function-like macros, but not at the beginning. */
if (macro->count == 1)
{
- cpp_error (pfile, CPP_DL_ERROR, paste_op_error_msg);
+ cpp_error (pfile, CPP_DL_ERROR,
-+ "'##' cannot appear at either end of a macro "
++ "%<##%> cannot appear at either end of a macro "
+ "expansion");
goto out;
}
--- libcpp/expr.cc.jj 2019-01-09 13:01:22.415535734 +0100
-+++ libcpp/expr.cc 2019-01-11 18:16:23.444726882 +0100
-@@ -803,16 +803,17 @@ cpp_classify_number (cpp_reader *pfile,
++++ libcpp/expr.cc 2024-11-30 13:14:52.468583689 +0100
+@@ -874,50 +874,54 @@ cpp_classify_number (cpp_reader *pfile,
if ((result & CPP_N_WIDTH) == CPP_N_LARGE
&& CPP_OPTION (pfile, cpp_warn_long_long))
{
-- const char *message = CPP_OPTION (pfile, cplusplus)
+- const char *message = CPP_OPTION (pfile, cplusplus)
- ? N_("use of C++11 long long integer constant")
- : N_("use of C99 long long integer constant");
-
if (CPP_OPTION (pfile, c99))
- cpp_warning_with_line (pfile, CPP_W_LONG_LONG, virtual_location,
+- cpp_warning_with_line (pfile, CPP_W_LONG_LONG, virtual_location,
- 0, message);
-+ 0, CPP_OPTION (pfile, cplusplus)
-+ ? N_("use of C++11 long long integer constant")
-+ : N_("use of C99 long long integer constant"));
++ cpp_warning_with_line (pfile, CPP_W_LONG_LONG, virtual_location, 0,
++ CPP_OPTION (pfile, cplusplus)
++ ? N_("use of C++11 long long integer "
++ "constant")
++ : N_("use of C99 long long integer "
++ "constant"));
else
cpp_pedwarning_with_line (pfile, CPP_W_LONG_LONG,
- virtual_location, 0, message);
+ virtual_location, 0,
+ CPP_OPTION (pfile, cplusplus)
-+ ? N_("use of C++11 long long integer constant")
-+ : N_("use of C99 long long integer constant"));
++ ? N_("use of C++11 long long integer "
++ "constant")
++ : N_("use of C99 long long integer "
++ "constant"));
}
if ((result & CPP_N_SIZE_T) == CPP_N_SIZE_T
+ && !CPP_OPTION (pfile, size_t_literals))
+- {
+- const char *message
+- = (result & CPP_N_UNSIGNED) == CPP_N_UNSIGNED
+- ? N_("use of C++23 % integer constant")
+- : N_("use of C++23 %%> integer constant");
+- cpp_warning_with_line (pfile, CPP_W_SIZE_T_LITERALS,
+- virtual_location, 0, message);
+- }
++ cpp_warning_with_line (pfile, CPP_W_SIZE_T_LITERALS,
++ virtual_location, 0,
++ (result & CPP_N_UNSIGNED) == CPP_N_UNSIGNED
++ ? N_("use of C++23 % integer "
++ "constant")
++ : N_("use of C++23 %%> "
++ "integer constant"));
+
+ if ((result & CPP_N_BITINT) != 0
+ && CPP_OPTION (pfile, cpp_warn_c11_c23_compat) != 0)
+ {
+ if (CPP_OPTION (pfile, cpp_warn_c11_c23_compat) > 0)
+ {
+- const char *message = N_("ISO C does not support literal "
+- "% suffixes before C23");
+ if (CPP_PEDANTIC (pfile) && !CPP_OPTION (pfile, true_false))
+ cpp_pedwarning_with_line (pfile, CPP_W_C11_C23_COMPAT,
+- virtual_location, 0, message);
++ virtual_location, 0,
++ "ISO C does not support literal "
++ "% suffixes before C23");
+ else
+ cpp_warning_with_line (pfile, CPP_W_C11_C23_COMPAT,
+- virtual_location, 0, message);
+- }
+- else if (!CPP_OPTION (pfile, true_false))
+- {
+- const char *message = N_("ISO C does not support literal "
++ virtual_location, 0,
++ "ISO C does not support literal "
+ "% suffixes before C23");
+- cpp_pedwarning_with_line (pfile, CPP_W_PEDANTIC,
+- virtual_location, 0, message);
+ }
++ else if (!CPP_OPTION (pfile, true_false))
++ cpp_pedwarning_with_line (pfile, CPP_W_PEDANTIC,
++ virtual_location, 0,
++ "ISO C does not support literal "
++ "% suffixes before C23");
+ }
+
+ result |= CPP_N_INTEGER;
diff --git a/gcc14-isl-dl.patch b/gcc15-isl-dl.patch
similarity index 99%
rename from gcc14-isl-dl.patch
rename to gcc15-isl-dl.patch
index 20dd8bf..dc0c49b 100644
--- a/gcc14-isl-dl.patch
+++ b/gcc15-isl-dl.patch
@@ -696,16 +696,16 @@
static void
--- gcc/toplev.cc.jj 2017-02-19 13:02:31.000000000 +0100
-+++ gcc/toplev.cc 2017-02-19 16:50:25.536301350 +0100
-@@ -94,6 +94,7 @@ along with GCC; see the file COPYING3.
++++ gcc/toplev.cc 2024-11-30 13:22:34.175096117 +0100
+@@ -100,6 +100,7 @@ along with GCC; see the file COPYING3.
#ifdef HAVE_isl
#include
+extern const char *get_isl_version (bool);
#endif
- static void general_init (const char *, bool);
-@@ -683,7 +684,7 @@ print_version (FILE *file, const char *i
+ static void general_init (const char *, bool, unique_argv original_argv);
+@@ -652,7 +653,7 @@ print_version (FILE *file, const char *i
#ifndef HAVE_isl
"none"
#else
diff --git a/gcc14-isl-dl2.patch b/gcc15-isl-dl2.patch
similarity index 89%
rename from gcc14-isl-dl2.patch
rename to gcc15-isl-dl2.patch
index 2e12499..8d2c4d9 100644
--- a/gcc14-isl-dl2.patch
+++ b/gcc15-isl-dl2.patch
@@ -6,8 +6,8 @@
directory.
--- gcc/toplev.cc.jj 2008-12-09 23:59:10.000000000 +0100
-+++ gcc/toplev.cc 2009-01-27 14:33:52.000000000 +0100
-@@ -113,6 +113,8 @@ static void finalize (bool);
++++ gcc/toplev.cc 2024-11-30 13:26:05.085132543 +0100
+@@ -112,6 +112,8 @@ static void finalize ();
static void crash_signal (int) ATTRIBUTE_NORETURN;
static void compile_file (void);
@@ -16,14 +16,14 @@
/* Decoded options, and number of such options. */
struct cl_decoded_option *save_decoded_options;
unsigned int save_decoded_options_count;
-@@ -2239,6 +2241,8 @@ toplev::main (int argc, char **argv)
+@@ -2296,6 +2298,8 @@ toplev::main (int argc, char **argv)
expandargv (&argc, &argv);
+ toplev_main_argv = CONST_CAST2 (const char **, char **, argv);
+
/* Initialization of GCC's environment, and diagnostics. */
- general_init (argv[0], m_init_signals);
+ general_init (argv[0], m_init_signals, std::move (original_argv));
--- gcc/graphite.cc.jj 2010-12-01 10:24:32.000000000 -0500
+++ gcc/graphite.cc 2010-12-01 11:46:07.832118193 -0500
diff --git a/gcc15-libgfortran-compat.patch b/gcc15-libgfortran-compat.patch
new file mode 100644
index 0000000..a346e1b
--- /dev/null
+++ b/gcc15-libgfortran-compat.patch
@@ -0,0 +1,1970 @@
+--- libgfortran/ieee/nonshared-ieee_arithmetic.c.jj 2025-05-09 08:18:56.882135149 +0200
++++ libgfortran/ieee/nonshared-ieee_arithmetic.c 2025-05-09 08:18:56.882135149 +0200
+@@ -0,0 +1,64 @@
++/* Helper functions in C for IEEE modules
++ Copyright (C) 2013-2025 Free Software Foundation, Inc.
++ Contributed by Francois-Xavier Coudert
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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 of the License, or (at your option) any later version.
++
++Libgfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++#include "libgfortran.h"
++
++GFC_LOGICAL_4
++__ieee_arithmetic_MOD_ieee_support_subnormal_4 (gfc_array_r4 *arg)
++{
++ (void) arg;
++ return 1;
++}
++
++GFC_LOGICAL_4
++__ieee_arithmetic_MOD_ieee_support_subnormal_8 (gfc_array_r8 *arg)
++{
++ (void) arg;
++ return 1;
++}
++
++#ifdef HAVE_GFC_REAL_10
++GFC_LOGICAL_4
++__ieee_arithmetic_MOD_ieee_support_subnormal_10 (gfc_array_r10 *arg)
++{
++ (void) arg;
++ return 1;
++}
++#endif
++
++#ifdef HAVE_GFC_REAL_16
++GFC_LOGICAL_4
++__ieee_arithmetic_MOD_ieee_support_subnormal_16 (gfc_array_r16 *arg)
++{
++ (void) arg;
++ return 1;
++}
++#endif
++
++GFC_LOGICAL_4
++__ieee_arithmetic_MOD_ieee_support_subnormal_noarg (void)
++{
++ return 1;
++}
+--- libgfortran/ieee/nonshared-ieee_exceptions.c.jj 2025-05-09 08:18:56.882135149 +0200
++++ libgfortran/ieee/nonshared-ieee_exceptions.c 2025-05-09 08:18:56.881135162 +0200
+@@ -0,0 +1,50 @@
++/* Helper functions in C for IEEE modules
++ Copyright (C) 2013-2025 Free Software Foundation, Inc.
++ Contributed by Francois-Xavier Coudert
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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 of the License, or (at your option) any later version.
++
++Libgfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++#include "libgfortran.h"
++
++#define options ((const options_t) {})
++
++#include "fpu-target.h"
++
++struct ieee_modes_type {
++ GFC_INTEGER_4 rounding, underflow, halting;
++};
++
++void
++__ieee_exceptions_MOD_ieee_get_modes (struct ieee_modes_type *modes)
++{
++ modes->rounding = get_fpu_rounding_mode ();
++ modes->underflow = get_fpu_underflow_mode ();
++ modes->halting = get_fpu_trap_exceptions ();
++}
++
++void
++__ieee_exceptions_MOD_ieee_set_modes (struct ieee_modes_type *modes)
++{
++ set_fpu_rounding_mode (modes->rounding);
++ set_fpu_underflow_mode (modes->underflow);
++ set_fpu_trap_exceptions (modes->halting, ~modes->halting);
++}
+--- libgfortran/libgfortran.h.jj 2025-05-07 19:09:53.796357782 +0200
++++ libgfortran/libgfortran.h 2025-05-09 08:18:56.895134969 +0200
+@@ -216,7 +216,7 @@ extern int __mingw_snprintf (char *, siz
+ # define internal_proto(x) sym_rename(x, IPREFIX(x))
+ #endif
+
+-#if defined(HAVE_ATTRIBUTE_VISIBILITY) && defined(HAVE_ATTRIBUTE_ALIAS)
++#if defined(HAVE_ATTRIBUTE_VISIBILITY) && defined(HAVE_ATTRIBUTE_ALIAS) && !defined(LIBGFORTRAN_NONSHARED)
+ # define export_proto(x) sym_rename(x, PREFIX(x))
+ # define export_proto_np(x) extern char swallow_semicolon
+ # define iexport_proto(x) internal_proto(x)
+@@ -291,6 +291,10 @@ typedef GFC_UINTEGER_4 gfc_char4_t;
+ simply equal to the kind parameter itself. */
+ #define GFC_SIZE_OF_CHAR_KIND(kind) (kind)
+
++#ifdef LIBGFORTRAN_NONSHARED
++#define big_endian (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__)
++#endif
++
+ #define GFOR_POINTER_TO_L1(p, kind) \
+ ((__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ ? 1: 0) * (kind - 1) + (GFC_LOGICAL_1 *)(p))
+
+@@ -2061,4 +2065,63 @@ extern int __snprintfieee128 (char *, si
+
+ #endif
+
++#ifdef LIBGFORTRAN_NONSHARED
++#include
++#include
++#include
++
++#define internal_malloc_size nonshared_internal_malloc_size
++#define xmalloc nonshared_internal_xmalloc
++#define xmallocarray nonshared_internal_xmallocarray
++#define reshape_packed nonshared_reshape_packed
++static inline __attribute__((__always_inline__, __unused__))
++void *
++internal_malloc_size (size_t size)
++{
++ void *p;
++
++ if (size == 0)
++ return NULL;
++
++ p = (void *) malloc (size);
++ if (p == NULL)
++ os_error ("Memory allocation failed");
++ return p;
++}
++
++static inline __attribute__((__always_inline__, __unused__))
++void *
++xmalloc (size_t size)
++{
++ return internal_malloc_size (size ? size : 1);
++}
++
++static inline __attribute__((__always_inline__, __unused__))
++void *
++xmallocarray (size_t nmemb, size_t size)
++{
++ if (!nmemb || !size)
++ size = nmemb = 1;
++ else if (__builtin_expect ((nmemb | size)
++ >= (((size_t) 1) << (__CHAR_BIT__
++ * sizeof (size_t) / 2)), 0)
++ && nmemb > __SIZE_MAX__ / size)
++ {
++ errno = ENOMEM;
++ os_error ("Integer overflow in xmallocarray");
++ }
++
++ return internal_malloc_size (nmemb * size);
++}
++
++static inline __attribute__((__always_inline__, __unused__))
++#include "intrinsics/reshape_packed.c"
++
++struct no_bounds_check { int bounds_check; };
++#define compile_options ((struct no_bounds_check) { .bounds_check = 0 })
++
++#define internal_error(x, y...) runtime_error (y)
++
++#endif
++
+ #endif /* LIBGFOR_H */
+--- libgfortran/caf/single.c.jj 2025-04-17 12:55:00.124652698 +0200
++++ libgfortran/caf/single.c 2025-05-09 11:58:54.362883951 +0200
+@@ -296,46 +296,29 @@ _gfortran_caf_sync_images (int count __a
+ }
+
+ extern void _gfortran_report_exception (void);
++extern _Noreturn void _gfortran_stop_numeric (int, bool);
++extern _Noreturn void _gfortran_stop_string (const char *, size_t, bool);
++extern _Noreturn void _gfortran_error_stop_string (const char *, size_t, bool);
++extern _Noreturn void _gfortran_error_stop_numeric (int, bool);
+
+ void
+ _gfortran_caf_stop_numeric(int stop_code, bool quiet)
+ {
+- if (!quiet)
+- {
+- _gfortran_report_exception ();
+- fprintf (stderr, "STOP %d\n", stop_code);
+- }
+- exit (stop_code);
++ _gfortran_stop_numeric (stop_code, quiet);
+ }
+
+
+ void
+ _gfortran_caf_stop_str(const char *string, size_t len, bool quiet)
+ {
+- if (!quiet)
+- {
+- _gfortran_report_exception ();
+- fputs ("STOP ", stderr);
+- while (len--)
+- fputc (*(string++), stderr);
+- fputs ("\n", stderr);
+- }
+- exit (0);
++ _gfortran_stop_string (string, len, quiet);
+ }
+
+
+ void
+ _gfortran_caf_error_stop_str (const char *string, size_t len, bool quiet)
+ {
+- if (!quiet)
+- {
+- _gfortran_report_exception ();
+- fputs ("ERROR STOP ", stderr);
+- while (len--)
+- fputc (*(string++), stderr);
+- fputs ("\n", stderr);
+- }
+- exit (1);
++ _gfortran_error_stop_string (string, len, quiet);
+ }
+
+
+@@ -410,12 +393,7 @@ _gfortran_caf_stopped_images (gfc_descri
+ void
+ _gfortran_caf_error_stop (int error, bool quiet)
+ {
+- if (!quiet)
+- {
+- _gfortran_report_exception ();
+- fprintf (stderr, "ERROR STOP %d\n", error);
+- }
+- exit (error);
++ _gfortran_error_stop_numeric (error, quiet);
+ }
+
+
+--- libgfortran/runtime/nonshared-stop.c.jj 2025-05-09 12:02:05.154260405 +0200
++++ libgfortran/runtime/nonshared-stop.c 2025-05-09 12:01:50.833457328 +0200
+@@ -0,0 +1,50 @@
++/* Implementation of the STOP statement.
++ Copyright (C) 2002-2025 Free Software Foundation, Inc.
++ Contributed by Paul Brook
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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 of the License, or (at your option) any later version.
++
++Libgfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++#include "libgfortran.h"
++
++#ifdef HAVE_UNISTD_H
++#include
++#endif
++
++#include
++
++/* Fortran 2008 demands: If any exception (14) is signaling on that image, the
++ processor shall issue a warning indicating which exceptions are signaling;
++ this warning shall be on the unit identified by the named constant
++ ERROR_UNIT (13.8.2.8). In line with other compilers, we do not report
++ inexact - and we optionally ignore underflow, cf. thread starting at
++ http://mailman.j3-fortran.org/pipermail/j3/2013-June/006452.html. */
++
++extern void report_exception (void);
++iexport_proto (report_exception);
++
++void
++report_exception (void)
++{
++ /* Unfortunately compile_options is not accessible outside of the library,
++ so we can't report anything. */
++}
++iexport (report_exception);
+--- libgfortran/runtime/nonshared-in_pack_class.c.jj 2025-05-09 10:37:04.228371135 +0200
++++ libgfortran/runtime/nonshared-in_pack_class.c 2025-05-09 11:17:05.500430705 +0200
+@@ -0,0 +1,57 @@
++/* Class specific helper function for repacking arrays.
++ Copyright (C) 2003-2025 Free Software Foundation, Inc.
++ Contributed by Paul Brook
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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 of the License, or (at your option) any later version.
++
++Libgfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++#include "libgfortran.h"
++#include
++#include
++
++extern _Noreturn void os_error_int (const char *);
++sym_rename(os_error_int, PREFIX(os_error));
++#define os_error os_error_int
++#define xmallocarray xmallocarray_int
++
++static void *
++xmallocarray (size_t nmemb, size_t size)
++{
++ void *p;
++ size_t prod;
++
++ if (!nmemb || !size)
++ prod = 1;
++ else if (__builtin_mul_overflow (nmemb, size, &prod))
++ {
++ errno = ENOMEM;
++ os_error ("Integer overflow in xmallocarray");
++ }
++
++ p = malloc (prod);
++
++ if (!p)
++ os_error ("Memory allocation failed in xmallocarray");
++
++ return p;
++}
++
++#include "in_pack_class.c"
+--- libgfortran/runtime/nonshared-error.c.jj 2025-05-09 08:18:56.905134830 +0200
++++ libgfortran/runtime/nonshared-error.c 2025-05-09 08:18:56.905134830 +0200
+@@ -0,0 +1,56 @@
++/* Copyright (C) 2020-2025 Free Software Foundation, Inc.
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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.
++
++Libgfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++
++#define LIBGFORTRAN_NONSHARED
++#include "libgfortran.h"
++#include "io.h"
++#include "async.h"
++
++#include
++#include
++
++/* Improved version of os_error with a printf style format string and
++ a locus. */
++
++void
++os_error_at (const char *where, const char *message, ...)
++{
++ char buf[4096];
++ size_t len = strlen (where);
++ int written;
++ va_list ap;
++
++ if (len >= 2048)
++ os_error ("Unknown error");
++ memcpy (buf, where, len);
++ memcpy (buf + len, ": ", 2);
++ va_start (ap, message);
++ written = vsnprintf (buf + len + 2, 4095 - len - 2, message, ap);
++ va_end (ap);
++ if (written < 0)
++ written = 0;
++ buf[len + 2 + written] = '\0';
++ os_error (buf);
++}
++iexport(os_error_at);
+--- libgfortran/intrinsics/nonshared-random.c.jj 2025-05-09 08:42:22.659619461 +0200
++++ libgfortran/intrinsics/nonshared-random.c 2025-05-09 09:08:58.647469048 +0200
+@@ -0,0 +1,481 @@
++/* Implementation of the RANDOM intrinsics
++ Copyright (C) 2002-2025 Free Software Foundation, Inc.
++ Contributed by Lars Segerlund ,
++ Steve Kargl and Janne Blomqvist.
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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 of the License, or (at your option) any later version.
++
++Ligbfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++#include "libgfortran.h"
++
++extern void random_r8 (GFC_REAL_8 *);
++export_proto(random_r8);
++
++#ifdef HAVE_GFC_REAL_10
++
++extern void random_r10 (GFC_REAL_10 *);
++export_proto(random_r10);
++
++#endif
++
++extern void random_m1 (GFC_UINTEGER_1 *);
++export_proto (random_m1);
++
++extern void random_m2 (GFC_UINTEGER_2 *);
++export_proto (random_m2);
++
++extern void random_m4 (GFC_UINTEGER_4 *);
++export_proto (random_m4);
++
++extern void random_m8 (GFC_UINTEGER_8 *);
++export_proto (random_m8);
++
++#ifdef HAVE_GFC_UINTEGER_16
++extern void random_m16 (GFC_UINTEGER_16 *);
++export_proto (random_m16);
++
++#endif
++
++extern void arandom_m1 (gfc_array_m1 *);
++export_proto (arandom_m1);
++
++extern void arandom_m2 (gfc_array_m2 *);
++export_proto (arandom_m2);
++
++extern void arandom_m4 (gfc_array_m4 *);
++export_proto (arandom_m4);
++
++extern void arandom_m8 (gfc_array_m8 *);
++export_proto (arandom_m8);
++
++#ifdef HAVE_GFC_UINTEGER_16
++
++extern void arandom_m16 (gfc_array_m16 *);
++export_proto (arandom_m16);
++
++#endif
++
++static uint64_t
++prng_next (void)
++{
++#ifdef HAVE_GFC_REAL_10
++ GFC_REAL_10 r;
++ random_r10 (&r);
++#if GFC_REAL_10_DIGITS != 64
++#errir Unexpected GFC_REAL_10_DIGITS
++#endif
++ r /= GFC_REAL_10_LITERAL(0x1.p-64);
++ return r;
++#else
++ GFC_REAL_8 r;
++ random_r8 (&r);
++#if GFC_REAL_8_DIGITS != 53
++#errir Unexpected GFC_REAL_8_DIGITS
++#endif
++ r /= GFC_REAL_8_LITERAL(0x1.p-64);
++ return r;
++#endif
++}
++
++
++/* Versions for unsigned numbers. */
++
++/* Returns a random byte. */
++
++void
++random_m1 (GFC_UINTEGER_1 *x)
++{
++ GFC_UINTEGER_8 r = prng_next ();
++
++ *x = r >> 56;
++}
++
++/* A random 16-bit number. */
++
++void
++random_m2 (GFC_UINTEGER_2 *x)
++{
++ GFC_UINTEGER_8 r = prng_next ();
++
++ *x = r >> 48;
++}
++
++/* A random 32-bit number. */
++
++void
++random_m4 (GFC_UINTEGER_4 *x)
++{
++ GFC_UINTEGER_8 r = prng_next ();
++
++ *x = r >> 32;
++}
++
++/* A random 64-bit number. */
++
++void
++random_m8 (GFC_UINTEGER_8 *x)
++{
++ GFC_UINTEGER_8 r = prng_next ();
++
++#ifndef HAVE_GFC_REAL_10
++ r |= prng_next () >> GFC_REAL_8_DIGITS;
++#endif
++ *x = r;
++}
++
++/* ... and a random 128-bit number, if we have the type. */
++
++#ifdef HAVE_GFC_UINTEGER_16
++void
++random_m16 (GFC_UINTEGER_16 *x)
++{
++ GFC_UINTEGER_8 r1 = prng_next ();
++ GFC_UINTEGER_8 r2 = prng_next ();
++
++#ifndef HAVE_GFC_REAL_10
++ GFC_UINTEGER_8 r3 = prng_next ();
++ *x = (((GFC_UINTEGER_16) r1) << 64)
++ | (((GFC_UINTEGER_16) r2) << (64 - GFC_REAL_8_DIGITS))
++ | ((GFC_UINTEGER_16) (r3 >> (64 - (64 - GFC_REAL_8_DIGITS) * 2)));
++#else
++ *x = (((GFC_UINTEGER_16) r1) << 64) | (GFC_UINTEGER_16) r2;
++#endif
++}
++#endif
++
++/* Fill an unsigned array with random bytes. */
++
++void
++arandom_m1 (gfc_array_m1 *x)
++{
++ index_type count[GFC_MAX_DIMENSIONS];
++ index_type extent[GFC_MAX_DIMENSIONS];
++ index_type stride[GFC_MAX_DIMENSIONS];
++ index_type stride0;
++ index_type dim;
++ GFC_UINTEGER_1 *dest;
++
++ dest = x->base_addr;
++
++ dim = GFC_DESCRIPTOR_RANK (x);
++
++ for (index_type n = 0; n < dim; n++)
++ {
++ count[n] = 0;
++ stride[n] = GFC_DESCRIPTOR_STRIDE(x,n);
++ extent[n] = GFC_DESCRIPTOR_EXTENT(x,n);
++ if (extent[n] <= 0)
++ return;
++ }
++
++ stride0 = stride[0];
++
++ while (dest)
++ {
++ /* random_m1 (dest); */
++ uint64_t r = prng_next ();
++ *dest = r >> 56;
++
++ /* Advance to the next element. */
++ dest += stride0;
++ count[0]++;
++ /* Advance to the next source element. */
++ index_type n = 0;
++ while (count[n] == extent[n])
++ {
++ /* When we get to the end of a dimension, reset it and increment
++ the next dimension. */
++ count[n] = 0;
++ /* We could precalculate these products, but this is a less
++ frequently used path so probably not worth it. */
++ dest -= stride[n] * extent[n];
++ n++;
++ if (n == dim)
++ {
++ dest = NULL;
++ break;
++ }
++ else
++ {
++ count[n]++;
++ dest += stride[n];
++ }
++ }
++ }
++}
++
++/* Fill an unsigned array with random 16-bit unsigneds. */
++
++void
++arandom_m2 (gfc_array_m2 *x)
++{
++ index_type count[GFC_MAX_DIMENSIONS];
++ index_type extent[GFC_MAX_DIMENSIONS];
++ index_type stride[GFC_MAX_DIMENSIONS];
++ index_type stride0;
++ index_type dim;
++ GFC_UINTEGER_2 *dest;
++
++ dest = x->base_addr;
++
++ dim = GFC_DESCRIPTOR_RANK (x);
++
++ for (index_type n = 0; n < dim; n++)
++ {
++ count[n] = 0;
++ stride[n] = GFC_DESCRIPTOR_STRIDE(x,n);
++ extent[n] = GFC_DESCRIPTOR_EXTENT(x,n);
++ if (extent[n] <= 0)
++ return;
++ }
++
++ stride0 = stride[0];
++
++ while (dest)
++ {
++ /* random_m1 (dest); */
++ uint64_t r = prng_next ();
++ *dest = r >> 48;
++
++ /* Advance to the next element. */
++ dest += stride0;
++ count[0]++;
++ /* Advance to the next source element. */
++ index_type n = 0;
++ while (count[n] == extent[n])
++ {
++ /* When we get to the end of a dimension, reset it and increment
++ the next dimension. */
++ count[n] = 0;
++ /* We could precalculate these products, but this is a less
++ frequently used path so probably not worth it. */
++ dest -= stride[n] * extent[n];
++ n++;
++ if (n == dim)
++ {
++ dest = NULL;
++ break;
++ }
++ else
++ {
++ count[n]++;
++ dest += stride[n];
++ }
++ }
++ }
++}
++
++/* Fill an array with random 32-bit unsigneds. */
++
++void
++arandom_m4 (gfc_array_m4 *x)
++{
++ index_type count[GFC_MAX_DIMENSIONS];
++ index_type extent[GFC_MAX_DIMENSIONS];
++ index_type stride[GFC_MAX_DIMENSIONS];
++ index_type stride0;
++ index_type dim;
++ GFC_UINTEGER_4 *dest;
++
++ dest = x->base_addr;
++
++ dim = GFC_DESCRIPTOR_RANK (x);
++
++ for (index_type n = 0; n < dim; n++)
++ {
++ count[n] = 0;
++ stride[n] = GFC_DESCRIPTOR_STRIDE(x,n);
++ extent[n] = GFC_DESCRIPTOR_EXTENT(x,n);
++ if (extent[n] <= 0)
++ return;
++ }
++
++ stride0 = stride[0];
++
++ while (dest)
++ {
++ /* random_m4 (dest); */
++ uint64_t r = prng_next ();
++ *dest = r >> 32;
++
++ /* Advance to the next element. */
++ dest += stride0;
++ count[0]++;
++ /* Advance to the next source element. */
++ index_type n = 0;
++ while (count[n] == extent[n])
++ {
++ /* When we get to the end of a dimension, reset it and increment
++ the next dimension. */
++ count[n] = 0;
++ /* We could precalculate these products, but this is a less
++ frequently used path so probably not worth it. */
++ dest -= stride[n] * extent[n];
++ n++;
++ if (n == dim)
++ {
++ dest = NULL;
++ break;
++ }
++ else
++ {
++ count[n]++;
++ dest += stride[n];
++ }
++ }
++ }
++}
++
++/* Fill an array with random 64-bit unsigneds. */
++
++void
++arandom_m8 (gfc_array_m8 *x)
++{
++ index_type count[GFC_MAX_DIMENSIONS];
++ index_type extent[GFC_MAX_DIMENSIONS];
++ index_type stride[GFC_MAX_DIMENSIONS];
++ index_type stride0;
++ index_type dim;
++ GFC_UINTEGER_8 *dest;
++
++ dest = x->base_addr;
++
++ dim = GFC_DESCRIPTOR_RANK (x);
++
++ for (index_type n = 0; n < dim; n++)
++ {
++ count[n] = 0;
++ stride[n] = GFC_DESCRIPTOR_STRIDE(x,n);
++ extent[n] = GFC_DESCRIPTOR_EXTENT(x,n);
++ if (extent[n] <= 0)
++ return;
++ }
++
++ stride0 = stride[0];
++
++ while (dest)
++ {
++ /* random_m8 (dest); */
++ uint64_t r = prng_next ();
++#ifndef HAVE_GFC_REAL_10
++ r |= prng_next () >> GFC_REAL_8_DIGITS;
++#endif
++ *dest = r;
++
++ /* Advance to the next element. */
++ dest += stride0;
++ count[0]++;
++ /* Advance to the next source element. */
++ index_type n = 0;
++ while (count[n] == extent[n])
++ {
++ /* When we get to the end of a dimension, reset it and increment
++ the next dimension. */
++ count[n] = 0;
++ /* We could precalculate these products, but this is a less
++ frequently used path so probably not worth it. */
++ dest -= stride[n] * extent[n];
++ n++;
++ if (n == dim)
++ {
++ dest = NULL;
++ break;
++ }
++ else
++ {
++ count[n]++;
++ dest += stride[n];
++ }
++ }
++ }
++}
++
++#ifdef HAVE_GFC_UINTEGER_16
++
++/* Fill an unsigned array with random bytes. */
++
++void
++arandom_m16 (gfc_array_m16 *x)
++{
++ index_type count[GFC_MAX_DIMENSIONS];
++ index_type extent[GFC_MAX_DIMENSIONS];
++ index_type stride[GFC_MAX_DIMENSIONS];
++ index_type stride0;
++ index_type dim;
++ GFC_UINTEGER_16 *dest;
++
++ dest = x->base_addr;
++
++ dim = GFC_DESCRIPTOR_RANK (x);
++
++ for (index_type n = 0; n < dim; n++)
++ {
++ count[n] = 0;
++ stride[n] = GFC_DESCRIPTOR_STRIDE(x,n);
++ extent[n] = GFC_DESCRIPTOR_EXTENT(x,n);
++ if (extent[n] <= 0)
++ return;
++ }
++
++ stride0 = stride[0];
++
++ while (dest)
++ {
++ /* random_m16 (dest); */
++ uint64_t r1 = prng_next (), r2 = prng_next ();
++#ifndef HAVE_GFC_REAL_10
++ uint64_t r3 = prng_next ();
++ *dest = (((GFC_UINTEGER_16) r1) << 64)
++ | (((GFC_UINTEGER_16) r2) << (64 - GFC_REAL_8_DIGITS))
++ | ((GFC_UINTEGER_16) (r3 >> (64 - (64 - GFC_REAL_8_DIGITS) * 2)));
++#else
++ *dest = (((GFC_UINTEGER_16) r1) << 64) | (GFC_UINTEGER_16) r2;
++#endif
++
++ /* Advance to the next element. */
++ dest += stride0;
++ count[0]++;
++ /* Advance to the next source element. */
++ index_type n = 0;
++ while (count[n] == extent[n])
++ {
++ /* When we get to the end of a dimension, reset it and increment
++ the next dimension. */
++ count[n] = 0;
++ /* We could precalculate these products, but this is a less
++ frequently used path so probably not worth it. */
++ dest -= stride[n] * extent[n];
++ n++;
++ if (n == dim)
++ {
++ dest = NULL;
++ break;
++ }
++ else
++ {
++ count[n]++;
++ dest += stride[n];
++ }
++ }
++ }
++}
++
++#endif
+--- libgfortran/intrinsics/nonshared-selected_int_kind.f90.jj 2025-05-09 10:46:57.287241956 +0200
++++ libgfortran/intrinsics/nonshared-selected_int_kind.f90 2025-05-09 10:48:35.932894223 +0200
+@@ -0,0 +1,48 @@
++! Copyright (C) 2003-2025 Free Software Foundation, Inc.
++! Contributed by Kejia Zhao
++!
++!This file is part of the GNU Fortran 95 runtime library (libgfortran).
++!
++!Libgfortran 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 of the License, or (at your option) any later version.
++!
++!Libgfortran 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.
++!
++!Under Section 7 of GPL version 3, you are granted additional
++!permissions described in the GCC Runtime Library Exception, version
++!3.1, as published by the Free Software Foundation.
++!
++!You should have received a copy of the GNU General Public License and
++!a copy of the GCC Runtime Library Exception along with this program;
++!see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++!.
++
++! At this time, our logical and integer kinds are the same
++
++function _gfortran_selected_logical_kind (bits)
++ implicit none
++ integer, intent(in) :: bits
++ integer :: _gfortran_selected_logical_kind
++ integer :: i
++ ! Integer kind_range table
++ type :: int_info
++ integer :: kind
++ integer :: range
++ end type int_info
++
++ include "selected_int_kind.inc"
++
++ do i = 1, c
++ if (bits <= 8 * int_infos(i)%kind) then
++ _gfortran_selected_logical_kind = int_infos(i)%kind
++ return
++ end if
++ end do
++ _gfortran_selected_logical_kind = -1
++ return
++end function
+--- libgfortran/intrinsics/nonshared-reduce.c.jj 2025-05-09 10:58:04.845121550 +0200
++++ libgfortran/intrinsics/nonshared-reduce.c 2025-05-09 11:02:01.816868737 +0200
+@@ -0,0 +1,35 @@
++/* Generic implementation of the reduce intrinsic
++ Copyright (C) 2002-2025 Free Software Foundation, Inc.
++ Contributed by Paul Thomas
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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 of the License, or (at your option) any later version.
++
++Ligbfortran is distributed in the hope that it will be useful,
++but WITHOUT ANY WarrayANTY; without even the implied warrayanty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++GNU General Public License for more details.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++#include "libgfortran.h"
++#include
++#include
++
++extern _Noreturn void runtime_error_int (const char *, ...)
++ __attribute__ ((format (gfc_printf, 1, 2)));
++sym_rename(runtime_error_int, PREFIX(runtime_error));
++#define runtime_error runtime_error_int
++
++#include "reduce.c"
+--- libgfortran/Makefile.am.jj 2025-05-08 10:51:58.952842105 +0200
++++ libgfortran/Makefile.am 2025-05-09 12:25:30.990929726 +0200
+@@ -49,6 +49,8 @@ LTLDFLAGS = $(shell $(SHELL) $(top_srcdi
+ $(lt_host_flags)
+
+ toolexeclib_LTLIBRARIES = libgfortran.la
++noinst_LTLIBRARIES = libgfortran_nonshared80.la libgfortran_nonshared110.la \
++ libgfortran_nonshared140.la
+ toolexeclib_DATA = libgfortran.spec
+ libgfortran_la_LINK = $(LINK) $(libgfortran_la_LDFLAGS)
+ libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
+@@ -1227,6 +1229,231 @@ BUILT_SOURCES=$(gfor_built_src) $(gfor_b
+ libgfortran_la_SOURCES = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
+ $(gfor_helper_src) $(gfor_ieee_src) $(gfor_io_headers) $(gfor_specific_src)
+
++intrinsics/nonshared-selected_int_kind.lo: AM_FCFLAGS += -fallow-leading-underscore -fbuilding-libgfortran
++
++$(patsubst %.c,%.lo,$(nonshared_generated_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/generated/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_generated_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/generated/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/intrinsics/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/intrinsics/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_runtime_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/runtime/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_runtime_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/runtime/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_ieee_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/ieee/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_ieee_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/ieee/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_io_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/io/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_io_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/io/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.f90,%.lo,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/intrinsics/%.f90
++ $(LTPPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
++
++$(patsubst %.f90,%.o,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/intrinsics/%.f90
++ $(PPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
++
++nonshared_runtime_C_SRC = \
++nonshared-ISO_Fortran_binding.c \
++nonshared-in_unpack_class.c
++
++nonshared_generated_80_C_SRC = \
++nonshared-findloc0_i1.c \
++nonshared-findloc0_i2.c \
++nonshared-findloc0_i4.c \
++nonshared-findloc0_i8.c \
++nonshared-findloc0_i16.c \
++nonshared-findloc0_r4.c \
++nonshared-findloc0_r8.c \
++nonshared-findloc0_r10.c \
++nonshared-findloc0_r16.c \
++nonshared-findloc0_c4.c \
++nonshared-findloc0_c8.c \
++nonshared-findloc0_c10.c \
++nonshared-findloc0_c16.c \
++nonshared-findloc0_s1.c \
++nonshared-findloc0_s4.c \
++nonshared-findloc1_i1.c \
++nonshared-findloc1_i2.c \
++nonshared-findloc1_i4.c \
++nonshared-findloc1_i8.c \
++nonshared-findloc1_i16.c \
++nonshared-findloc1_r4.c \
++nonshared-findloc1_r8.c \
++nonshared-findloc1_r10.c \
++nonshared-findloc1_r16.c \
++nonshared-findloc1_c4.c \
++nonshared-findloc1_c8.c \
++nonshared-findloc1_c10.c \
++nonshared-findloc1_c16.c \
++nonshared-findloc1_s1.c \
++nonshared-findloc1_s4.c \
++nonshared-findloc2_s1.c \
++nonshared-findloc2_s4.c
++
++nonshared_generated_all_C_SRC = \
++nonshared-maxloc0_4_m1.c \
++nonshared-maxloc0_4_m2.c \
++nonshared-maxloc0_4_m4.c \
++nonshared-maxloc0_4_m8.c \
++nonshared-maxloc0_4_m16.c \
++nonshared-maxloc0_8_m1.c \
++nonshared-maxloc0_8_m2.c \
++nonshared-maxloc0_8_m4.c \
++nonshared-maxloc0_8_m8.c \
++nonshared-maxloc0_8_m16.c \
++nonshared-maxloc0_16_m1.c \
++nonshared-maxloc0_16_m2.c \
++nonshared-maxloc0_16_m4.c \
++nonshared-maxloc0_16_m8.c \
++nonshared-maxloc0_16_m16.c \
++nonshared-maxloc1_4_m1.c \
++nonshared-maxloc1_4_m2.c \
++nonshared-maxloc1_4_m4.c \
++nonshared-maxloc1_4_m8.c \
++nonshared-maxloc1_4_m16.c \
++nonshared-maxloc1_8_m1.c \
++nonshared-maxloc1_8_m2.c \
++nonshared-maxloc1_8_m4.c \
++nonshared-maxloc1_8_m8.c \
++nonshared-maxloc1_8_m16.c \
++nonshared-maxloc1_16_m1.c \
++nonshared-maxloc1_16_m2.c \
++nonshared-maxloc1_16_m4.c \
++nonshared-maxloc1_16_m8.c \
++nonshared-maxloc1_16_m16.c \
++nonshared-maxval_m1.c \
++nonshared-maxval_m2.c \
++nonshared-maxval_m4.c \
++nonshared-maxval_m8.c \
++nonshared-maxval_m16.c \
++nonshared-minloc0_4_m1.c \
++nonshared-minloc0_4_m2.c \
++nonshared-minloc0_4_m4.c \
++nonshared-minloc0_4_m8.c \
++nonshared-minloc0_4_m16.c \
++nonshared-minloc0_8_m1.c \
++nonshared-minloc0_8_m2.c \
++nonshared-minloc0_8_m4.c \
++nonshared-minloc0_8_m8.c \
++nonshared-minloc0_8_m16.c \
++nonshared-minloc0_16_m1.c \
++nonshared-minloc0_16_m2.c \
++nonshared-minloc0_16_m4.c \
++nonshared-minloc0_16_m8.c \
++nonshared-minloc0_16_m16.c \
++nonshared-minloc1_4_m1.c \
++nonshared-minloc1_4_m2.c \
++nonshared-minloc1_4_m4.c \
++nonshared-minloc1_4_m8.c \
++nonshared-minloc1_4_m16.c \
++nonshared-minloc1_8_m1.c \
++nonshared-minloc1_8_m2.c \
++nonshared-minloc1_8_m4.c \
++nonshared-minloc1_8_m8.c \
++nonshared-minloc1_8_m16.c \
++nonshared-minloc1_16_m1.c \
++nonshared-minloc1_16_m2.c \
++nonshared-minloc1_16_m4.c \
++nonshared-minloc1_16_m8.c \
++nonshared-minloc1_16_m16.c \
++nonshared-minval_m1.c \
++nonshared-minval_m2.c \
++nonshared-minval_m4.c \
++nonshared-minval_m8.c \
++nonshared-minval_m16.c \
++nonshared-pow_m1_m1.c \
++nonshared-pow_m1_m2.c \
++nonshared-pow_m1_m4.c \
++nonshared-pow_m1_m8.c \
++nonshared-pow_m1_m16.c \
++nonshared-pow_m2_m1.c \
++nonshared-pow_m2_m2.c \
++nonshared-pow_m2_m4.c \
++nonshared-pow_m2_m8.c \
++nonshared-pow_m2_m16.c \
++nonshared-pow_m4_m1.c \
++nonshared-pow_m4_m2.c \
++nonshared-pow_m4_m4.c \
++nonshared-pow_m4_m8.c \
++nonshared-pow_m4_m16.c \
++nonshared-pow_m8_m1.c \
++nonshared-pow_m8_m2.c \
++nonshared-pow_m8_m4.c \
++nonshared-pow_m8_m8.c \
++nonshared-pow_m8_m16.c \
++nonshared-pow_m16_m1.c \
++nonshared-pow_m16_m2.c \
++nonshared-pow_m16_m4.c \
++nonshared-pow_m16_m8.c \
++nonshared-pow_m16_m16.c
++
++nonshared_generated_C_SRC = \
++$(nonshared_generated_80_C_SRC) \
++$(nonshared_generated_all_C_SRC)
++
++nonshared_intrinsics_C_SRC = \
++nonshared-is_contiguous.c \
++nonshared-trigd.c
++
++nonshared_intrinsics_f90_SRC = \
++nonshared-random_init.f90
++
++common_nonshared_SRCs = \
++intrinsics/nonshared-random.c \
++intrinsics/nonshared-reduce.c \
++intrinsics/nonshared-selected_int_kind.f90 \
++runtime/nonshared-stop.c \
++runtime/nonshared-in_pack_class.c
++
++libgfortran_nonshared80_la_SOURCES = \
++$(nonshared_runtime_C_SRC) \
++$(nonshared_generated_C_SRC) \
++$(nonshared_intrinsics_C_SRC) \
++$(nonshared_intrinsics_f90_SRC) \
++ieee/nonshared-ieee_arithmetic.c \
++ieee/nonshared-ieee_exceptions.c \
++io/nonshared-transfer.c \
++runtime/nonshared-error.c \
++$(common_nonshared_SRCs)
++
++libgfortran_nonshared110_la_SOURCES = \
++$(nonshared_generated_all_C_SRC) \
++ieee/nonshared-ieee_exceptions.c \
++$(common_nonshared_SRCs) \
++nonshared-in_unpack_class.c
++
++libgfortran_nonshared140_la_SOURCES = \
++$(nonshared_generated_all_C_SRC) \
++$(common_nonshared_SRCs) \
++nonshared-in_unpack_class.c
++
+ I_M4_DEPS=m4/iparm.m4 m4/mtype.m4
+ I_M4_DEPS0=$(I_M4_DEPS) m4/iforeach.m4
+ I_M4_DEPS1=$(I_M4_DEPS) m4/ifunction.m4
+--- libgfortran/Makefile.in.jj 2025-05-08 10:51:58.953842091 +0200
++++ libgfortran/Makefile.in 2025-05-09 12:25:49.801672216 +0200
+@@ -216,7 +216,8 @@ am__uninstall_files_from_dir = { \
+ am__installdirs = "$(DESTDIR)$(cafexeclibdir)" \
+ "$(DESTDIR)$(toolexeclibdir)" "$(DESTDIR)$(toolexeclibdir)" \
+ "$(DESTDIR)$(gfor_cdir)" "$(DESTDIR)$(fincludedir)"
+-LTLIBRARIES = $(cafexeclib_LTLIBRARIES) $(toolexeclib_LTLIBRARIES)
++LTLIBRARIES = $(cafexeclib_LTLIBRARIES) $(noinst_LTLIBRARIES) \
++ $(toolexeclib_LTLIBRARIES)
+ libcaf_single_la_LIBADD =
+ am__dirstamp = $(am__leading_dot)dirstamp
+ am_libcaf_single_la_OBJECTS = caf/single.lo
+@@ -718,6 +719,102 @@ am_libgfortran_la_OBJECTS = $(am__object
+ $(am__objects_56) $(am__objects_59) $(am__objects_60) \
+ $(am__objects_61) $(am__objects_65)
+ libgfortran_la_OBJECTS = $(am_libgfortran_la_OBJECTS)
++libgfortran_nonshared110_la_LIBADD =
++am__objects_66 = nonshared-maxloc0_4_m1.lo nonshared-maxloc0_4_m2.lo \
++ nonshared-maxloc0_4_m4.lo nonshared-maxloc0_4_m8.lo \
++ nonshared-maxloc0_4_m16.lo nonshared-maxloc0_8_m1.lo \
++ nonshared-maxloc0_8_m2.lo nonshared-maxloc0_8_m4.lo \
++ nonshared-maxloc0_8_m8.lo nonshared-maxloc0_8_m16.lo \
++ nonshared-maxloc0_16_m1.lo nonshared-maxloc0_16_m2.lo \
++ nonshared-maxloc0_16_m4.lo nonshared-maxloc0_16_m8.lo \
++ nonshared-maxloc0_16_m16.lo nonshared-maxloc1_4_m1.lo \
++ nonshared-maxloc1_4_m2.lo nonshared-maxloc1_4_m4.lo \
++ nonshared-maxloc1_4_m8.lo nonshared-maxloc1_4_m16.lo \
++ nonshared-maxloc1_8_m1.lo nonshared-maxloc1_8_m2.lo \
++ nonshared-maxloc1_8_m4.lo nonshared-maxloc1_8_m8.lo \
++ nonshared-maxloc1_8_m16.lo nonshared-maxloc1_16_m1.lo \
++ nonshared-maxloc1_16_m2.lo nonshared-maxloc1_16_m4.lo \
++ nonshared-maxloc1_16_m8.lo nonshared-maxloc1_16_m16.lo \
++ nonshared-maxval_m1.lo nonshared-maxval_m2.lo \
++ nonshared-maxval_m4.lo nonshared-maxval_m8.lo \
++ nonshared-maxval_m16.lo nonshared-minloc0_4_m1.lo \
++ nonshared-minloc0_4_m2.lo nonshared-minloc0_4_m4.lo \
++ nonshared-minloc0_4_m8.lo nonshared-minloc0_4_m16.lo \
++ nonshared-minloc0_8_m1.lo nonshared-minloc0_8_m2.lo \
++ nonshared-minloc0_8_m4.lo nonshared-minloc0_8_m8.lo \
++ nonshared-minloc0_8_m16.lo nonshared-minloc0_16_m1.lo \
++ nonshared-minloc0_16_m2.lo nonshared-minloc0_16_m4.lo \
++ nonshared-minloc0_16_m8.lo nonshared-minloc0_16_m16.lo \
++ nonshared-minloc1_4_m1.lo nonshared-minloc1_4_m2.lo \
++ nonshared-minloc1_4_m4.lo nonshared-minloc1_4_m8.lo \
++ nonshared-minloc1_4_m16.lo nonshared-minloc1_8_m1.lo \
++ nonshared-minloc1_8_m2.lo nonshared-minloc1_8_m4.lo \
++ nonshared-minloc1_8_m8.lo nonshared-minloc1_8_m16.lo \
++ nonshared-minloc1_16_m1.lo nonshared-minloc1_16_m2.lo \
++ nonshared-minloc1_16_m4.lo nonshared-minloc1_16_m8.lo \
++ nonshared-minloc1_16_m16.lo nonshared-minval_m1.lo \
++ nonshared-minval_m2.lo nonshared-minval_m4.lo \
++ nonshared-minval_m8.lo nonshared-minval_m16.lo \
++ nonshared-pow_m1_m1.lo nonshared-pow_m1_m2.lo \
++ nonshared-pow_m1_m4.lo nonshared-pow_m1_m8.lo \
++ nonshared-pow_m1_m16.lo nonshared-pow_m2_m1.lo \
++ nonshared-pow_m2_m2.lo nonshared-pow_m2_m4.lo \
++ nonshared-pow_m2_m8.lo nonshared-pow_m2_m16.lo \
++ nonshared-pow_m4_m1.lo nonshared-pow_m4_m2.lo \
++ nonshared-pow_m4_m4.lo nonshared-pow_m4_m8.lo \
++ nonshared-pow_m4_m16.lo nonshared-pow_m8_m1.lo \
++ nonshared-pow_m8_m2.lo nonshared-pow_m8_m4.lo \
++ nonshared-pow_m8_m8.lo nonshared-pow_m8_m16.lo \
++ nonshared-pow_m16_m1.lo nonshared-pow_m16_m2.lo \
++ nonshared-pow_m16_m4.lo nonshared-pow_m16_m8.lo \
++ nonshared-pow_m16_m16.lo
++am__objects_67 = intrinsics/nonshared-random.lo \
++ intrinsics/nonshared-reduce.lo \
++ intrinsics/nonshared-selected_int_kind.lo \
++ runtime/nonshared-stop.lo runtime/nonshared-in_pack_class.lo
++am_libgfortran_nonshared110_la_OBJECTS = $(am__objects_66) \
++ ieee/nonshared-ieee_exceptions.lo $(am__objects_67) \
++ nonshared-in_unpack_class.lo
++libgfortran_nonshared110_la_OBJECTS = \
++ $(am_libgfortran_nonshared110_la_OBJECTS)
++AM_V_lt = $(am__v_lt_@AM_V@)
++am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
++am__v_lt_0 = --silent
++am__v_lt_1 =
++libgfortran_nonshared140_la_LIBADD =
++am_libgfortran_nonshared140_la_OBJECTS = $(am__objects_66) \
++ $(am__objects_67) nonshared-in_unpack_class.lo
++libgfortran_nonshared140_la_OBJECTS = \
++ $(am_libgfortran_nonshared140_la_OBJECTS)
++libgfortran_nonshared80_la_LIBADD =
++am__objects_68 = nonshared-ISO_Fortran_binding.lo \
++ nonshared-in_unpack_class.lo
++am__objects_69 = nonshared-findloc0_i1.lo nonshared-findloc0_i2.lo \
++ nonshared-findloc0_i4.lo nonshared-findloc0_i8.lo \
++ nonshared-findloc0_i16.lo nonshared-findloc0_r4.lo \
++ nonshared-findloc0_r8.lo nonshared-findloc0_r10.lo \
++ nonshared-findloc0_r16.lo nonshared-findloc0_c4.lo \
++ nonshared-findloc0_c8.lo nonshared-findloc0_c10.lo \
++ nonshared-findloc0_c16.lo nonshared-findloc0_s1.lo \
++ nonshared-findloc0_s4.lo nonshared-findloc1_i1.lo \
++ nonshared-findloc1_i2.lo nonshared-findloc1_i4.lo \
++ nonshared-findloc1_i8.lo nonshared-findloc1_i16.lo \
++ nonshared-findloc1_r4.lo nonshared-findloc1_r8.lo \
++ nonshared-findloc1_r10.lo nonshared-findloc1_r16.lo \
++ nonshared-findloc1_c4.lo nonshared-findloc1_c8.lo \
++ nonshared-findloc1_c10.lo nonshared-findloc1_c16.lo \
++ nonshared-findloc1_s1.lo nonshared-findloc1_s4.lo \
++ nonshared-findloc2_s1.lo nonshared-findloc2_s4.lo
++am__objects_70 = $(am__objects_69) $(am__objects_66)
++am__objects_71 = nonshared-is_contiguous.lo nonshared-trigd.lo
++am__objects_72 = nonshared-random_init.lo
++am_libgfortran_nonshared80_la_OBJECTS = $(am__objects_68) \
++ $(am__objects_70) $(am__objects_71) $(am__objects_72) \
++ ieee/nonshared-ieee_arithmetic.lo \
++ ieee/nonshared-ieee_exceptions.lo io/nonshared-transfer.lo \
++ runtime/nonshared-error.lo $(am__objects_67)
++libgfortran_nonshared80_la_OBJECTS = \
++ $(am_libgfortran_nonshared80_la_OBJECTS)
+ AM_V_P = $(am__v_P_@AM_V@)
+ am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+ am__v_P_0 = false
+@@ -736,10 +833,6 @@ am__depfiles_maybe = depfiles
+ am__mv = mv -f
+ PPFCCOMPILE = $(FC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_FCFLAGS) $(FCFLAGS)
+-AM_V_lt = $(am__v_lt_@AM_V@)
+-am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+-am__v_lt_0 = --silent
+-am__v_lt_1 =
+ LTPPFCCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=FC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=compile $(FC) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+@@ -781,7 +874,10 @@ AM_V_FC = $(am__v_FC_@AM_V@)
+ am__v_FC_ = $(am__v_FC_@AM_DEFAULT_V@)
+ am__v_FC_0 = @echo " FC " $@;
+ am__v_FC_1 =
+-SOURCES = $(libcaf_single_la_SOURCES) $(libgfortran_la_SOURCES)
++SOURCES = $(libcaf_single_la_SOURCES) $(libgfortran_la_SOURCES) \
++ $(libgfortran_nonshared110_la_SOURCES) \
++ $(libgfortran_nonshared140_la_SOURCES) \
++ $(libgfortran_nonshared80_la_SOURCES)
+ am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+@@ -988,6 +1084,9 @@ LTLDFLAGS = $(shell $(SHELL) $(top_srcdi
+ $(lt_host_flags)
+
+ toolexeclib_LTLIBRARIES = libgfortran.la
++noinst_LTLIBRARIES = libgfortran_nonshared80.la libgfortran_nonshared110.la \
++ libgfortran_nonshared140.la
++
+ toolexeclib_DATA = libgfortran.spec
+ libgfortran_la_LINK = $(LINK) $(libgfortran_la_LDFLAGS)
+ libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
+@@ -1988,6 +2087,181 @@ BUILT_SOURCES = $(gfor_built_src) $(gfor
+ libgfortran_la_SOURCES = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
+ $(gfor_helper_src) $(gfor_ieee_src) $(gfor_io_headers) $(gfor_specific_src)
+
++nonshared_runtime_C_SRC = \
++nonshared-ISO_Fortran_binding.c \
++nonshared-in_unpack_class.c
++
++nonshared_generated_80_C_SRC = \
++nonshared-findloc0_i1.c \
++nonshared-findloc0_i2.c \
++nonshared-findloc0_i4.c \
++nonshared-findloc0_i8.c \
++nonshared-findloc0_i16.c \
++nonshared-findloc0_r4.c \
++nonshared-findloc0_r8.c \
++nonshared-findloc0_r10.c \
++nonshared-findloc0_r16.c \
++nonshared-findloc0_c4.c \
++nonshared-findloc0_c8.c \
++nonshared-findloc0_c10.c \
++nonshared-findloc0_c16.c \
++nonshared-findloc0_s1.c \
++nonshared-findloc0_s4.c \
++nonshared-findloc1_i1.c \
++nonshared-findloc1_i2.c \
++nonshared-findloc1_i4.c \
++nonshared-findloc1_i8.c \
++nonshared-findloc1_i16.c \
++nonshared-findloc1_r4.c \
++nonshared-findloc1_r8.c \
++nonshared-findloc1_r10.c \
++nonshared-findloc1_r16.c \
++nonshared-findloc1_c4.c \
++nonshared-findloc1_c8.c \
++nonshared-findloc1_c10.c \
++nonshared-findloc1_c16.c \
++nonshared-findloc1_s1.c \
++nonshared-findloc1_s4.c \
++nonshared-findloc2_s1.c \
++nonshared-findloc2_s4.c
++
++nonshared_generated_all_C_SRC = \
++nonshared-maxloc0_4_m1.c \
++nonshared-maxloc0_4_m2.c \
++nonshared-maxloc0_4_m4.c \
++nonshared-maxloc0_4_m8.c \
++nonshared-maxloc0_4_m16.c \
++nonshared-maxloc0_8_m1.c \
++nonshared-maxloc0_8_m2.c \
++nonshared-maxloc0_8_m4.c \
++nonshared-maxloc0_8_m8.c \
++nonshared-maxloc0_8_m16.c \
++nonshared-maxloc0_16_m1.c \
++nonshared-maxloc0_16_m2.c \
++nonshared-maxloc0_16_m4.c \
++nonshared-maxloc0_16_m8.c \
++nonshared-maxloc0_16_m16.c \
++nonshared-maxloc1_4_m1.c \
++nonshared-maxloc1_4_m2.c \
++nonshared-maxloc1_4_m4.c \
++nonshared-maxloc1_4_m8.c \
++nonshared-maxloc1_4_m16.c \
++nonshared-maxloc1_8_m1.c \
++nonshared-maxloc1_8_m2.c \
++nonshared-maxloc1_8_m4.c \
++nonshared-maxloc1_8_m8.c \
++nonshared-maxloc1_8_m16.c \
++nonshared-maxloc1_16_m1.c \
++nonshared-maxloc1_16_m2.c \
++nonshared-maxloc1_16_m4.c \
++nonshared-maxloc1_16_m8.c \
++nonshared-maxloc1_16_m16.c \
++nonshared-maxval_m1.c \
++nonshared-maxval_m2.c \
++nonshared-maxval_m4.c \
++nonshared-maxval_m8.c \
++nonshared-maxval_m16.c \
++nonshared-minloc0_4_m1.c \
++nonshared-minloc0_4_m2.c \
++nonshared-minloc0_4_m4.c \
++nonshared-minloc0_4_m8.c \
++nonshared-minloc0_4_m16.c \
++nonshared-minloc0_8_m1.c \
++nonshared-minloc0_8_m2.c \
++nonshared-minloc0_8_m4.c \
++nonshared-minloc0_8_m8.c \
++nonshared-minloc0_8_m16.c \
++nonshared-minloc0_16_m1.c \
++nonshared-minloc0_16_m2.c \
++nonshared-minloc0_16_m4.c \
++nonshared-minloc0_16_m8.c \
++nonshared-minloc0_16_m16.c \
++nonshared-minloc1_4_m1.c \
++nonshared-minloc1_4_m2.c \
++nonshared-minloc1_4_m4.c \
++nonshared-minloc1_4_m8.c \
++nonshared-minloc1_4_m16.c \
++nonshared-minloc1_8_m1.c \
++nonshared-minloc1_8_m2.c \
++nonshared-minloc1_8_m4.c \
++nonshared-minloc1_8_m8.c \
++nonshared-minloc1_8_m16.c \
++nonshared-minloc1_16_m1.c \
++nonshared-minloc1_16_m2.c \
++nonshared-minloc1_16_m4.c \
++nonshared-minloc1_16_m8.c \
++nonshared-minloc1_16_m16.c \
++nonshared-minval_m1.c \
++nonshared-minval_m2.c \
++nonshared-minval_m4.c \
++nonshared-minval_m8.c \
++nonshared-minval_m16.c \
++nonshared-pow_m1_m1.c \
++nonshared-pow_m1_m2.c \
++nonshared-pow_m1_m4.c \
++nonshared-pow_m1_m8.c \
++nonshared-pow_m1_m16.c \
++nonshared-pow_m2_m1.c \
++nonshared-pow_m2_m2.c \
++nonshared-pow_m2_m4.c \
++nonshared-pow_m2_m8.c \
++nonshared-pow_m2_m16.c \
++nonshared-pow_m4_m1.c \
++nonshared-pow_m4_m2.c \
++nonshared-pow_m4_m4.c \
++nonshared-pow_m4_m8.c \
++nonshared-pow_m4_m16.c \
++nonshared-pow_m8_m1.c \
++nonshared-pow_m8_m2.c \
++nonshared-pow_m8_m4.c \
++nonshared-pow_m8_m8.c \
++nonshared-pow_m8_m16.c \
++nonshared-pow_m16_m1.c \
++nonshared-pow_m16_m2.c \
++nonshared-pow_m16_m4.c \
++nonshared-pow_m16_m8.c \
++nonshared-pow_m16_m16.c
++
++nonshared_generated_C_SRC = \
++$(nonshared_generated_80_C_SRC) \
++$(nonshared_generated_all_C_SRC)
++
++nonshared_intrinsics_C_SRC = \
++nonshared-is_contiguous.c \
++nonshared-trigd.c
++
++nonshared_intrinsics_f90_SRC = \
++nonshared-random_init.f90
++
++common_nonshared_SRCs = \
++intrinsics/nonshared-random.c \
++intrinsics/nonshared-reduce.c \
++intrinsics/nonshared-selected_int_kind.f90 \
++runtime/nonshared-stop.c \
++runtime/nonshared-in_pack_class.c
++
++libgfortran_nonshared80_la_SOURCES = \
++$(nonshared_runtime_C_SRC) \
++$(nonshared_generated_C_SRC) \
++$(nonshared_intrinsics_C_SRC) \
++$(nonshared_intrinsics_f90_SRC) \
++ieee/nonshared-ieee_arithmetic.c \
++ieee/nonshared-ieee_exceptions.c \
++io/nonshared-transfer.c \
++runtime/nonshared-error.c \
++$(common_nonshared_SRCs)
++
++libgfortran_nonshared110_la_SOURCES = \
++$(nonshared_generated_all_C_SRC) \
++ieee/nonshared-ieee_exceptions.c \
++$(common_nonshared_SRCs) \
++nonshared-in_unpack_class.c
++
++libgfortran_nonshared140_la_SOURCES = \
++$(nonshared_generated_all_C_SRC) \
++$(common_nonshared_SRCs) \
++nonshared-in_unpack_class.c
++
+ I_M4_DEPS = m4/iparm.m4 m4/mtype.m4
+ I_M4_DEPS0 = $(I_M4_DEPS) m4/iforeach.m4
+ I_M4_DEPS1 = $(I_M4_DEPS) m4/ifunction.m4
+@@ -2098,6 +2372,17 @@ clean-cafexeclibLTLIBRARIES:
+ rm -f $${locs}; \
+ }
+
++clean-noinstLTLIBRARIES:
++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
++ @list='$(noinst_LTLIBRARIES)'; \
++ locs=`for p in $$list; do echo $$p; done | \
++ sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
++ sort -u`; \
++ test -z "$$locs" || { \
++ echo rm -f $${locs}; \
++ rm -f $${locs}; \
++ }
++
+ install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \
+@@ -3940,6 +4225,33 @@ intrinsics/random_init.lo: intrinsics/$(
+
+ libgfortran.la: $(libgfortran_la_OBJECTS) $(libgfortran_la_DEPENDENCIES) $(EXTRA_libgfortran_la_DEPENDENCIES)
+ $(AM_V_GEN)$(libgfortran_la_LINK) -rpath $(toolexeclibdir) $(libgfortran_la_OBJECTS) $(libgfortran_la_LIBADD) $(LIBS)
++ieee/nonshared-ieee_exceptions.lo: ieee/$(am__dirstamp) \
++ ieee/$(DEPDIR)/$(am__dirstamp)
++intrinsics/nonshared-random.lo: intrinsics/$(am__dirstamp) \
++ intrinsics/$(DEPDIR)/$(am__dirstamp)
++intrinsics/nonshared-reduce.lo: intrinsics/$(am__dirstamp) \
++ intrinsics/$(DEPDIR)/$(am__dirstamp)
++intrinsics/nonshared-selected_int_kind.lo: intrinsics/$(am__dirstamp) \
++ intrinsics/$(DEPDIR)/$(am__dirstamp)
++runtime/nonshared-stop.lo: runtime/$(am__dirstamp) \
++ runtime/$(DEPDIR)/$(am__dirstamp)
++runtime/nonshared-in_pack_class.lo: runtime/$(am__dirstamp) \
++ runtime/$(DEPDIR)/$(am__dirstamp)
++
++libgfortran_nonshared110.la: $(libgfortran_nonshared110_la_OBJECTS) $(libgfortran_nonshared110_la_DEPENDENCIES) $(EXTRA_libgfortran_nonshared110_la_DEPENDENCIES)
++ $(AM_V_FCLD)$(FCLINK) $(libgfortran_nonshared110_la_OBJECTS) $(libgfortran_nonshared110_la_LIBADD) $(LIBS)
++
++libgfortran_nonshared140.la: $(libgfortran_nonshared140_la_OBJECTS) $(libgfortran_nonshared140_la_DEPENDENCIES) $(EXTRA_libgfortran_nonshared140_la_DEPENDENCIES)
++ $(AM_V_FCLD)$(FCLINK) $(libgfortran_nonshared140_la_OBJECTS) $(libgfortran_nonshared140_la_LIBADD) $(LIBS)
++ieee/nonshared-ieee_arithmetic.lo: ieee/$(am__dirstamp) \
++ ieee/$(DEPDIR)/$(am__dirstamp)
++io/nonshared-transfer.lo: io/$(am__dirstamp) \
++ io/$(DEPDIR)/$(am__dirstamp)
++runtime/nonshared-error.lo: runtime/$(am__dirstamp) \
++ runtime/$(DEPDIR)/$(am__dirstamp)
++
++libgfortran_nonshared80.la: $(libgfortran_nonshared80_la_OBJECTS) $(libgfortran_nonshared80_la_DEPENDENCIES) $(EXTRA_libgfortran_nonshared80_la_DEPENDENCIES)
++ $(AM_V_FCLD)$(FCLINK) $(libgfortran_nonshared80_la_OBJECTS) $(libgfortran_nonshared80_la_LIBADD) $(LIBS)
+
+ mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+@@ -3959,6 +4271,137 @@ mostlyclean-compile:
+ distclean-compile:
+ -rm -f *.tab.c
+
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-ISO_Fortran_binding.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c10.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_c8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_i8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r10.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_r8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_s1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc0_s4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c10.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_c8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_i8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r10.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_r8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_s1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc1_s4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc2_s1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-findloc2_s4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-in_unpack_class.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-is_contiguous.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_16_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_16_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_16_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_16_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_16_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_4_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_4_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_4_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_4_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_4_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_8_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_8_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_8_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_8_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc0_8_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_16_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_16_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_16_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_16_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_16_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_4_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_4_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_4_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_4_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_4_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_8_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_8_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_8_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_8_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxloc1_8_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxval_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxval_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxval_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxval_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-maxval_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_16_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_16_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_16_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_16_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_16_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_4_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_4_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_4_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_4_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_4_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_8_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_8_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_8_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_8_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc0_8_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_16_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_16_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_16_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_16_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_16_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_4_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_4_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_4_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_4_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_4_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_8_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_8_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_8_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_8_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minloc1_8_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minval_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minval_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minval_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minval_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-minval_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m16_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m16_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m16_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m16_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m16_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m1_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m1_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m1_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m1_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m1_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m2_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m2_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m2_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m2_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m2_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m4_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m4_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m4_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m4_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m4_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m8_m1.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m8_m16.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m8_m2.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m8_m4.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-pow_m8_m8.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nonshared-trigd.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@caf/$(DEPDIR)/single.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@generated/$(DEPDIR)/all_l1.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@generated/$(DEPDIR)/all_l16.Plo@am__quote@
+@@ -4582,6 +5025,8 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote@generated/$(DEPDIR)/unpack_r4.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@generated/$(DEPDIR)/unpack_r8.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@ieee/$(DEPDIR)/ieee_helper.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@ieee/$(DEPDIR)/nonshared-ieee_arithmetic.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@ieee/$(DEPDIR)/nonshared-ieee_exceptions.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/abort.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/access.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/args.Plo@am__quote@
+@@ -4616,6 +5061,8 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/link.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/move_alloc.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/mvbits.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/nonshared-random.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/nonshared-reduce.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/pack_generic.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/perror.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@intrinsics/$(DEPDIR)/rand.Plo@am__quote@
+@@ -4648,6 +5095,7 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/intrinsics.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/list_read.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/lock.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/nonshared-transfer.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/open.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/read.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@io/$(DEPDIR)/size_from_kind.Plo@am__quote@
+@@ -4671,6 +5119,9 @@ distclean-compile:
+ @AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/main.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/memory.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/minimal.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/nonshared-error.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/nonshared-in_pack_class.Plo@am__quote@
++@AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/nonshared-stop.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/pause.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/select.Plo@am__quote@
+ @AMDEP_TRUE@@am__include@ @am__quote@runtime/$(DEPDIR)/stop.Plo@am__quote@
+@@ -4909,11 +5360,12 @@ maintainer-clean-generic:
+ clean: clean-am
+
+ clean-am: clean-cafexeclibLTLIBRARIES clean-generic clean-libtool \
+- clean-local clean-toolexeclibLTLIBRARIES mostlyclean-am
++ clean-local clean-noinstLTLIBRARIES \
++ clean-toolexeclibLTLIBRARIES mostlyclean-am
+
+ distclean: distclean-am
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+- -rm -rf caf/$(DEPDIR) generated/$(DEPDIR) ieee/$(DEPDIR) intrinsics/$(DEPDIR) io/$(DEPDIR) runtime/$(DEPDIR)
++ -rm -rf ./$(DEPDIR) caf/$(DEPDIR) generated/$(DEPDIR) ieee/$(DEPDIR) intrinsics/$(DEPDIR) io/$(DEPDIR) runtime/$(DEPDIR)
+ -rm -f Makefile
+ distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-hdr distclean-libtool distclean-local distclean-tags
+@@ -4962,7 +5414,7 @@ installcheck-am:
+ maintainer-clean: maintainer-clean-am
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+- -rm -rf caf/$(DEPDIR) generated/$(DEPDIR) ieee/$(DEPDIR) intrinsics/$(DEPDIR) io/$(DEPDIR) runtime/$(DEPDIR)
++ -rm -rf ./$(DEPDIR) caf/$(DEPDIR) generated/$(DEPDIR) ieee/$(DEPDIR) intrinsics/$(DEPDIR) io/$(DEPDIR) runtime/$(DEPDIR)
+ -rm -f Makefile
+ maintainer-clean-am: distclean-am maintainer-clean-generic \
+ maintainer-clean-local
+@@ -4989,14 +5441,15 @@ uninstall-am: uninstall-cafexeclibLTLIBR
+ .PHONY: CTAGS GTAGS TAGS all all-am all-local am--refresh check \
+ check-am clean clean-cafexeclibLTLIBRARIES clean-cscope \
+ clean-generic clean-libtool clean-local \
+- clean-toolexeclibLTLIBRARIES cscope cscopelist-am ctags \
+- ctags-am distclean distclean-compile distclean-generic \
+- distclean-hdr distclean-libtool distclean-local distclean-tags \
+- dvi dvi-am html html-am info info-am install install-am \
+- install-cafexeclibLTLIBRARIES install-data install-data-am \
+- install-dvi install-dvi-am install-exec install-exec-am \
+- install-exec-local install-gfor_cHEADERS install-html \
+- install-html-am install-info install-info-am install-man \
++ clean-noinstLTLIBRARIES clean-toolexeclibLTLIBRARIES cscope \
++ cscopelist-am ctags ctags-am distclean distclean-compile \
++ distclean-generic distclean-hdr distclean-libtool \
++ distclean-local distclean-tags dvi dvi-am html html-am info \
++ info-am install install-am install-cafexeclibLTLIBRARIES \
++ install-data install-data-am install-dvi install-dvi-am \
++ install-exec install-exec-am install-exec-local \
++ install-gfor_cHEADERS install-html install-html-am \
++ install-info install-info-am install-man \
+ install-nodist_fincludeHEADERS install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip install-toolexeclibDATA \
+ install-toolexeclibLTLIBRARIES installcheck installcheck-am \
+@@ -5062,6 +5515,56 @@ ieee_exceptions.mod: ieee/ieee_exception
+ ieee_arithmetic.mod: ieee/ieee_arithmetic.lo
+ :
+
++intrinsics/nonshared-selected_int_kind.lo: AM_FCFLAGS += -fallow-leading-underscore -fbuilding-libgfortran
++
++$(patsubst %.c,%.lo,$(nonshared_generated_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/generated/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_generated_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/generated/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/intrinsics/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_intrinsics_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/intrinsics/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_runtime_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/runtime/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_runtime_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/runtime/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_ieee_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/ieee/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_ieee_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/ieee/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.lo,$(nonshared_io_C_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/io/%.c
++ $(LTCOMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.c,%.o,$(nonshared_io_C_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/io/%.c
++ $(COMPILE) -c -o $@ $< -DLIBGFORTRAN_NONSHARED
++
++$(patsubst %.f90,%.lo,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
++nonshared-%.lo: $(srcdir)/intrinsics/%.f90
++ $(LTPPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
++
++$(patsubst %.f90,%.o,$(nonshared_intrinsics_f90_SRC) $(nonshared)): \
++nonshared-%.o: $(srcdir)/intrinsics/%.f90
++ $(PPFCCOMPILE) -c -o $@ $< -fallow-leading-underscore
++
+ kinds.h: $(srcdir)/mk-kinds-h.sh
+ $(SHELL) $(srcdir)/mk-kinds-h.sh '@LIBGOMP_CHECKED_INT_KINDS@' \
+ '@LIBGOMP_CHECKED_REAL_KINDS@' \
+--- libgfortran/io/nonshared-transfer.c.jj 2025-05-09 08:18:56.918134650 +0200
++++ libgfortran/io/nonshared-transfer.c 2025-05-09 08:18:56.918134650 +0200
+@@ -0,0 +1,42 @@
++/* Copyright (C) 2002-2025 Free Software Foundation, Inc.
++ Contributed by Andy Vaught
++ Namelist transfer functions contributed by Paul Thomas
++ F2003 I/O support contributed by Jerry DeLisle
++
++This file is part of the GNU Fortran runtime library (libgfortran).
++
++Libgfortran 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.
++
++Libgfortran 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.
++
++Under Section 7 of GPL version 3, you are granted additional
++permissions described in the GCC Runtime Library Exception, version
++3.1, as published by the Free Software Foundation.
++
++You should have received a copy of the GNU General Public License and
++a copy of the GCC Runtime Library Exception along with this program;
++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++. */
++
++
++/* transfer.c -- Top level handling of data transfer statements. */
++
++#include "io.h"
++#include "fbuf.h"
++#include "format.h"
++#include "unix.h"
++#include "async.h"
++#include
++#include
++
++void
++st_wait_async (st_parameter_wait *wtp)
++{
++ (void) wtp;
++}
diff --git a/gcc14-libgomp-omp_h-multilib.patch b/gcc15-libgomp-omp_h-multilib.patch
similarity index 100%
rename from gcc14-libgomp-omp_h-multilib.patch
rename to gcc15-libgomp-omp_h-multilib.patch
diff --git a/gcc14-libstdc++-compat.patch b/gcc15-libstdc++-compat.patch
similarity index 89%
rename from gcc14-libstdc++-compat.patch
rename to gcc15-libstdc++-compat.patch
index 44bb4e3..7f4608f 100644
--- a/gcc14-libstdc++-compat.patch
+++ b/gcc15-libstdc++-compat.patch
@@ -1,5 +1,5 @@
---- libstdc++-v3/config/locale/gnu/c_locale.cc.jj 2024-04-26 11:47:03.719148373 +0200
-+++ libstdc++-v3/config/locale/gnu/c_locale.cc 2024-07-18 16:10:38.322406800 +0200
+--- libstdc++-v3/config/locale/gnu/c_locale.cc.jj 2025-04-17 12:55:02.630620059 +0200
++++ libstdc++-v3/config/locale/gnu/c_locale.cc 2025-05-06 15:48:48.555749404 +0200
@@ -41,6 +41,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -29,8 +29,8 @@
_GLIBCXX_LDBL_COMPAT(_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct, _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct);
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
+#endif
---- libstdc++-v3/libsupc++/eh_exception.cc.jj 2024-04-26 11:47:04.098143120 +0200
-+++ libstdc++-v3/libsupc++/eh_exception.cc 2024-07-18 16:10:38.322406800 +0200
+--- libstdc++-v3/libsupc++/eh_exception.cc.jj 2025-04-17 12:55:03.364610499 +0200
++++ libstdc++-v3/libsupc++/eh_exception.cc 2025-05-06 15:48:48.564749282 +0200
@@ -26,6 +26,7 @@
#include "exception"
#include
@@ -47,10 +47,10 @@
// Transactional clones for the destructors and what().
// what() is effectively transaction_pure, but we do not want to annotate it
---- libstdc++-v3/src/nonshared98/ios_failure.cc.jj 2024-07-18 16:10:38.324406775 +0200
-+++ libstdc++-v3/src/nonshared98/ios_failure.cc 2024-07-19 12:00:50.982161134 +0200
+--- libstdc++-v3/src/nonshared98/ios_failure.cc.jj 2025-05-06 15:48:48.581749052 +0200
++++ libstdc++-v3/src/nonshared98/ios_failure.cc 2025-05-06 15:48:48.581749052 +0200
@@ -0,0 +1,27 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -77,10 +77,10 @@
+asm (".hidden _ZSt21__destroy_ios_failurePv");
+asm (".hidden _ZSt23__construct_ios_failurePvPKc");
+asm (".hidden _ZSt24__is_ios_failure_handlerPKN10__cxxabiv117__class_type_infoE");
---- libstdc++-v3/src/nonshared98/char8_t-rtti.S.jj 2024-07-18 16:10:38.323406788 +0200
-+++ libstdc++-v3/src/nonshared98/char8_t-rtti.S 2024-07-18 18:09:02.165562213 +0200
+--- libstdc++-v3/src/nonshared98/char8_t-rtti.S.jj 2025-05-06 15:48:48.581749052 +0200
++++ libstdc++-v3/src/nonshared98/char8_t-rtti.S 2025-05-06 15:48:48.581749052 +0200
@@ -0,0 +1,166 @@
-+/* Copyright (C) 2012-2024 Free Software Foundation, Inc.
++/* Copyright (C) 2012-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
@@ -246,10 +246,10 @@
+ STRING "Du"
+#endif
+ .section .note.GNU-stack,"",@progbits
---- libstdc++-v3/src/nonshared98/extfloat.S.jj 2024-07-18 16:10:38.323406788 +0200
-+++ libstdc++-v3/src/nonshared98/extfloat.S 2024-07-18 18:09:02.166562200 +0200
+--- libstdc++-v3/src/nonshared98/extfloat.S.jj 2025-05-06 15:48:48.582749039 +0200
++++ libstdc++-v3/src/nonshared98/extfloat.S 2025-05-06 15:48:48.582749039 +0200
@@ -0,0 +1,547 @@
-+/* Copyright (C) 2012-2024 Free Software Foundation, Inc.
++/* Copyright (C) 2012-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
@@ -796,10 +796,10 @@
+_ZTSDF128_:
+ STRING "DF128_"
+ .section .note.GNU-stack,"",@progbits
---- libstdc++-v3/src/nonshared98/locale_facets.cc.jj 2024-07-18 16:10:38.323406788 +0200
-+++ libstdc++-v3/src/nonshared98/locale_facets.cc 2024-07-18 18:09:02.166562200 +0200
+--- libstdc++-v3/src/nonshared98/locale_facets.cc.jj 2025-05-06 15:48:48.582749039 +0200
++++ libstdc++-v3/src/nonshared98/locale_facets.cc 2025-05-06 15:48:48.582749039 +0200
@@ -0,0 +1,24 @@
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -823,10 +823,10 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_80
+#include "../c++98/locale_facets.cc"
---- libstdc++-v3/src/nonshared98/ios_init.cc.jj 2024-07-18 16:10:38.324406775 +0200
-+++ libstdc++-v3/src/nonshared98/ios_init.cc 2024-07-18 18:09:02.166562200 +0200
-@@ -0,0 +1,38 @@
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
+--- libstdc++-v3/src/nonshared98/ios_init.cc.jj 2025-05-06 15:48:48.582749039 +0200
++++ libstdc++-v3/src/nonshared98/ios_init.cc 2025-05-06 16:30:07.769197494 +0200
+@@ -0,0 +1,41 @@
++// Copyright (C) 1997-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
@@ -858,18 +858,21 @@
+{
+_GLIBCXX_BEGIN_NAMESPACE_VERSION
+
-+#include "../c++98/ios_base_init.h"
++#if _GLIBCXX_USE_INIT_PRIORITY_ATTRIBUTE
++#pragma GCC diagnostic ignored "-Wprio-ctor-dtor"
++static ios_base::Init __ioinit __attribute__((init_priority(90)));
++#endif
+
+ void ios_base_library_init() {}
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared98/Makefile.am.jj 2024-07-18 16:10:38.324406775 +0200
-+++ libstdc++-v3/src/nonshared98/Makefile.am 2024-07-19 12:01:12.820878679 +0200
-@@ -0,0 +1,102 @@
+--- libstdc++-v3/src/nonshared98/Makefile.am.jj 2025-05-06 15:48:48.582749039 +0200
++++ libstdc++-v3/src/nonshared98/Makefile.am 2025-05-06 15:54:56.823765247 +0200
+@@ -0,0 +1,105 @@
+## Makefile for the C++03 sources of the GNU C++ Standard library.
+##
-+## Copyright (C) 1997-2024 Free Software Foundation, Inc.
++## Copyright (C) 1997-2025 Free Software Foundation, Inc.
+##
+## This file is part of the libstdc++ version 3 distribution.
+## Process this file with automake to produce Makefile.in.
@@ -893,7 +896,8 @@
+
+# Convenience library for C++98 runtime.
+noinst_LTLIBRARIES = libnonshared98convenience80.la \
-+ libnonshared98convenience110.la
++ libnonshared98convenience110.la \
++ libnonshared98convenience140.la
+
+headers =
+
@@ -912,12 +916,14 @@
+ char8_t-rtti.S \
+ ios_failure.cc
+sources110 =
++sources140 =
+
+vpath % $(top_srcdir)/src/nonshared98
+vpath % $(top_srcdir)
+
+libnonshared98convenience80_la_SOURCES = $(sources) $(sources80)
+libnonshared98convenience110_la_SOURCES = $(sources) $(sources110)
++libnonshared98convenience140_la_SOURCES = $(sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -969,9 +975,9 @@
+ --mode=link $(CXX) \
+ $(VTV_CXXLINKFLAGS) \
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
---- libstdc++-v3/src/nonshared98/Makefile.in.jj 2024-07-18 16:10:38.325406762 +0200
-+++ libstdc++-v3/src/nonshared98/Makefile.in 2024-07-19 14:22:11.456880043 +0200
-@@ -0,0 +1,802 @@
+--- libstdc++-v3/src/nonshared98/Makefile.in.jj 2025-05-06 15:48:48.583749025 +0200
++++ libstdc++-v3/src/nonshared98/Makefile.in 2025-05-07 10:09:21.725441839 +0200
+@@ -0,0 +1,813 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
@@ -1105,6 +1111,10 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++libnonshared98convenience140_la_LIBADD =
++am_libnonshared98convenience140_la_OBJECTS = $(am__objects_2)
++libnonshared98convenience140_la_OBJECTS = \
++ $(am_libnonshared98convenience140_la_OBJECTS)
+libnonshared98convenience80_la_LIBADD =
+am__objects_3 = char8_t-rtti.lo ios_failure.lo
+am_libnonshared98convenience80_la_OBJECTS = $(am__objects_1) \
@@ -1166,6 +1176,7 @@
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
+SOURCES = $(libnonshared98convenience110_la_SOURCES) \
++ $(libnonshared98convenience140_la_SOURCES) \
+ $(libnonshared98convenience80_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
@@ -1436,7 +1447,8 @@
+
+# Convenience library for C++98 runtime.
+noinst_LTLIBRARIES = libnonshared98convenience80.la \
-+ libnonshared98convenience110.la
++ libnonshared98convenience110.la \
++ libnonshared98convenience140.la
+
+headers =
+
@@ -1458,8 +1470,10 @@
+ ios_failure.cc
+
+sources110 =
++sources140 =
+libnonshared98convenience80_la_SOURCES = $(sources) $(sources80)
+libnonshared98convenience110_la_SOURCES = $(sources) $(sources110)
++libnonshared98convenience140_la_SOURCES = $(sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -1562,6 +1576,9 @@
+libnonshared98convenience110.la: $(libnonshared98convenience110_la_OBJECTS) $(libnonshared98convenience110_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience110_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared98convenience110_la_OBJECTS) $(libnonshared98convenience110_la_LIBADD) $(LIBS)
+
++libnonshared98convenience140.la: $(libnonshared98convenience140_la_OBJECTS) $(libnonshared98convenience140_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience140_la_DEPENDENCIES)
++ $(AM_V_CCLD)$(LINK) $(libnonshared98convenience140_la_OBJECTS) $(libnonshared98convenience140_la_LIBADD) $(LIBS)
++
+libnonshared98convenience80.la: $(libnonshared98convenience80_la_OBJECTS) $(libnonshared98convenience80_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience80_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared98convenience80_la_OBJECTS) $(libnonshared98convenience80_la_LIBADD) $(LIBS)
+
@@ -1774,12 +1791,12 @@
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
---- libstdc++-v3/src/nonshared11/string-inst80.cc.jj 2024-07-18 16:10:38.326406749 +0200
-+++ libstdc++-v3/src/nonshared11/string-inst80.cc 2024-07-19 13:09:07.689159469 +0200
-@@ -0,0 +1,68 @@
+--- libstdc++-v3/src/nonshared11/string-inst80.cc.jj 2025-05-06 15:48:48.584749012 +0200
++++ libstdc++-v3/src/nonshared11/string-inst80.cc 2025-05-07 09:38:08.959126239 +0200
+@@ -0,0 +1,76 @@
+// Components for manipulating sequences of characters -*- C++ -*-
+
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -1827,6 +1844,7 @@
+
+ typedef basic_string S;
+
++#ifndef _GLIBCXX_NONSHARED_CXX11_140
+#ifndef _GLIBCXX_NONSHARED_CXX11_110
+ template
+ S::iterator
@@ -1842,15 +1860,22 @@
+
+ template
+ S::pointer S::_S_allocate(S::allocator_type &, size_type);
++#endif
++
++ template
++ void S::_M_construct(const C*, size_t);
++
++ template
++ void S::_M_construct(const C*, size_t);
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared11/debug110.cc.jj 2024-07-18 16:10:38.326406749 +0200
-+++ libstdc++-v3/src/nonshared11/debug110.cc 2024-07-18 18:09:02.168562174 +0200
+--- libstdc++-v3/src/nonshared11/debug110.cc.jj 2025-05-06 15:48:48.584749012 +0200
++++ libstdc++-v3/src/nonshared11/debug110.cc 2025-05-06 15:48:48.584749012 +0200
@@ -0,0 +1,30 @@
+// Locale support -*- C++ -*-
+
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -1878,10 +1903,10 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_110
+#include "debug.cc"
---- libstdc++-v3/src/nonshared11/cxx11-wlocale-inst80.cc.jj 2024-07-18 16:10:38.326406749 +0200
-+++ libstdc++-v3/src/nonshared11/cxx11-wlocale-inst80.cc 2024-07-19 14:06:55.082550905 +0200
+--- libstdc++-v3/src/nonshared11/cxx11-wlocale-inst80.cc.jj 2025-05-06 15:48:48.584749012 +0200
++++ libstdc++-v3/src/nonshared11/cxx11-wlocale-inst80.cc 2025-05-06 15:48:48.584749012 +0200
@@ -0,0 +1,30 @@
-+// Copyright (C) 2022-2024 Free Software Foundation, Inc.
++// Copyright (C) 2022-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
@@ -1911,12 +1936,12 @@
+#include "cxx11-locale-inst80.cc"
+#endif
+asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE6_M_getEv");
---- libstdc++-v3/src/nonshared11/istream-inst80.cc.jj 2024-07-18 16:10:38.326406749 +0200
-+++ libstdc++-v3/src/nonshared11/istream-inst80.cc 2024-07-18 18:09:02.168562174 +0200
+--- libstdc++-v3/src/nonshared11/istream-inst80.cc.jj 2025-05-06 15:48:48.584749012 +0200
++++ libstdc++-v3/src/nonshared11/istream-inst80.cc 2025-05-06 15:48:48.584749012 +0200
@@ -0,0 +1,121 @@
+// Explicit instantiation file.
+
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -2035,10 +2060,10 @@
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared11/limits.cc.jj 2024-07-18 16:10:38.326406749 +0200
-+++ libstdc++-v3/src/nonshared11/limits.cc 2024-07-18 18:09:02.169562162 +0200
+--- libstdc++-v3/src/nonshared11/limits.cc.jj 2025-05-06 15:48:48.584749012 +0200
++++ libstdc++-v3/src/nonshared11/limits.cc 2025-05-06 15:48:48.584749012 +0200
@@ -0,0 +1,57 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -2095,12 +2120,12 @@
+#endif // _GLIBCXX_USE_CHAR8_T
+
+}
---- libstdc++-v3/src/nonshared11/streambuf-inst.cc.jj 2024-07-18 16:10:38.326406749 +0200
-+++ libstdc++-v3/src/nonshared11/streambuf-inst.cc 2024-07-18 18:09:02.169562162 +0200
+--- libstdc++-v3/src/nonshared11/streambuf-inst.cc.jj 2025-05-06 15:48:48.585748998 +0200
++++ libstdc++-v3/src/nonshared11/streambuf-inst.cc 2025-05-06 15:48:48.585748998 +0200
@@ -0,0 +1,42 @@
+// Explicit instantiation file.
+
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -2140,10 +2165,10 @@
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared11/cxx11-wlocale-inst110.cc.jj 2024-07-19 10:04:26.420926178 +0200
-+++ libstdc++-v3/src/nonshared11/cxx11-wlocale-inst110.cc 2024-07-19 14:05:44.748442948 +0200
+--- libstdc++-v3/src/nonshared11/cxx11-wlocale-inst110.cc.jj 2025-05-06 15:48:48.585748998 +0200
++++ libstdc++-v3/src/nonshared11/cxx11-wlocale-inst110.cc 2025-05-06 15:48:48.585748998 +0200
@@ -0,0 +1,30 @@
-+// Copyright (C) 2022-2024 Free Software Foundation, Inc.
++// Copyright (C) 2022-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
@@ -2173,12 +2198,12 @@
+#include "cxx11-locale-inst80.cc"
+#endif
+asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE6_M_getEv");
---- libstdc++-v3/src/nonshared11/cow-string-inst80.cc.jj 2024-07-18 16:10:38.327406737 +0200
-+++ libstdc++-v3/src/nonshared11/cow-string-inst80.cc 2024-07-18 18:09:02.169562162 +0200
+--- libstdc++-v3/src/nonshared11/cow-string-inst80.cc.jj 2025-05-06 15:48:48.585748998 +0200
++++ libstdc++-v3/src/nonshared11/cow-string-inst80.cc 2025-05-06 15:48:48.585748998 +0200
@@ -0,0 +1,52 @@
+// Components for manipulating sequences of characters -*- C++ -*-
+
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -2228,11 +2253,11 @@
+ template
+ void S::reserve();
+}
---- libstdc++-v3/src/nonshared11/eh_ptr80.cc.jj 2024-07-18 16:10:38.327406737 +0200
-+++ libstdc++-v3/src/nonshared11/eh_ptr80.cc 2024-07-18 18:09:02.170562149 +0200
+--- libstdc++-v3/src/nonshared11/eh_ptr80.cc.jj 2025-05-06 15:48:48.585748998 +0200
++++ libstdc++-v3/src/nonshared11/eh_ptr80.cc 2025-05-06 15:48:48.585748998 +0200
@@ -0,0 +1,64 @@
+// -*- C++ -*- Implement the members of exception_ptr.
-+// Copyright (C) 2008-2024 Free Software Foundation, Inc.
++// Copyright (C) 2008-2025 Free Software Foundation, Inc.
+//
+// This file is part of GCC.
+//
@@ -2295,12 +2320,12 @@
+ }
+}
+
---- libstdc++-v3/src/nonshared11/cxx11-locale-inst110.cc.jj 2024-07-18 16:10:38.328406724 +0200
-+++ libstdc++-v3/src/nonshared11/cxx11-locale-inst110.cc 2024-07-18 18:09:02.170562149 +0200
+--- libstdc++-v3/src/nonshared11/cxx11-locale-inst110.cc.jj 2025-05-06 15:48:48.585748998 +0200
++++ libstdc++-v3/src/nonshared11/cxx11-locale-inst110.cc 2025-05-06 15:48:48.585748998 +0200
@@ -0,0 +1,33 @@
+// Locale support -*- C++ -*-
+
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -2331,12 +2356,12 @@
+asm (".hidden _ZNKSt5ctypeIcE9do_narrowEcc");
+asm (".hidden _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc");
+asm (".hidden _ZNKSt19istreambuf_iteratorIcSt11char_traitsIcEE6_M_getEv");
---- libstdc++-v3/src/nonshared11/cow-wstring-inst80.cc.jj 2024-07-18 16:10:38.328406724 +0200
-+++ libstdc++-v3/src/nonshared11/cow-wstring-inst80.cc 2024-07-18 18:09:02.170562149 +0200
+--- libstdc++-v3/src/nonshared11/cow-wstring-inst80.cc.jj 2025-05-06 15:48:48.586748985 +0200
++++ libstdc++-v3/src/nonshared11/cow-wstring-inst80.cc 2025-05-06 15:48:48.586748985 +0200
@@ -0,0 +1,35 @@
+// wide string support -*- C++ -*-
+
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -2369,10 +2394,10 @@
+#define C wchar_t
+#include "cow-string-inst80.cc"
+#endif
---- libstdc++-v3/src/nonshared11/wlocale-inst80.cc.jj 2024-07-18 16:10:38.328406724 +0200
-+++ libstdc++-v3/src/nonshared11/wlocale-inst80.cc 2024-07-19 14:06:29.178879442 +0200
+--- libstdc++-v3/src/nonshared11/wlocale-inst80.cc.jj 2025-05-06 15:48:48.586748985 +0200
++++ libstdc++-v3/src/nonshared11/wlocale-inst80.cc 2025-05-06 15:48:48.586748985 +0200
@@ -0,0 +1,31 @@
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -2403,12 +2428,12 @@
+#include "locale-inst80.cc"
+#endif
+asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE6_M_getEv");
---- libstdc++-v3/src/nonshared11/condition_variable80.cc.jj 2024-07-18 16:10:38.329406711 +0200
-+++ libstdc++-v3/src/nonshared11/condition_variable80.cc 2024-07-18 18:09:02.171562136 +0200
+--- libstdc++-v3/src/nonshared11/condition_variable80.cc.jj 2025-05-06 15:48:48.586748985 +0200
++++ libstdc++-v3/src/nonshared11/condition_variable80.cc 2025-05-06 15:48:48.586748985 +0200
@@ -0,0 +1,44 @@
+// condition_variable -*- C++ -*-
+
-+// Copyright (C) 2008-2024 Free Software Foundation, Inc.
++// Copyright (C) 2008-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
@@ -2450,12 +2475,12 @@
+
+#endif // _GLIBCXX_HAS_GTHREADS
+asm (".hidden _ZNSt18condition_variable4waitERSt11unique_lockISt5mutexE");
---- libstdc++-v3/src/nonshared11/wstring-inst110.cc.jj 2024-07-18 16:10:38.329406711 +0200
-+++ libstdc++-v3/src/nonshared11/wstring-inst110.cc 2024-07-19 13:10:43.393925247 +0200
+--- libstdc++-v3/src/nonshared11/wstring-inst110.cc.jj 2025-05-06 15:48:48.586748985 +0200
++++ libstdc++-v3/src/nonshared11/wstring-inst110.cc 2025-05-07 09:36:45.047277727 +0200
@@ -0,0 +1,26 @@
+// Components for manipulating sequences of characters -*- C++ -*-
+
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -2479,12 +2504,12 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_110
+#include "wstring-inst80.cc"
---- libstdc++-v3/src/nonshared11/locale-inst80.cc.jj 2024-07-18 16:10:38.329406711 +0200
-+++ libstdc++-v3/src/nonshared11/locale-inst80.cc 2024-07-18 18:09:02.171562136 +0200
+--- libstdc++-v3/src/nonshared11/locale-inst80.cc.jj 2025-05-06 15:48:48.586748985 +0200
++++ libstdc++-v3/src/nonshared11/locale-inst80.cc 2025-05-06 15:48:48.586748985 +0200
@@ -0,0 +1,99 @@
+// Locale support -*- C++ -*-
+
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -2582,10 +2607,10 @@
+#endif
+#endif
\ No newline at end of file
---- libstdc++-v3/src/nonshared11/codecvt80.cc.jj 2024-07-18 16:10:38.330406698 +0200
-+++ libstdc++-v3/src/nonshared11/codecvt80.cc 2024-07-18 18:09:02.172562123 +0200
+--- libstdc++-v3/src/nonshared11/codecvt80.cc.jj 2025-05-06 15:48:48.587748971 +0200
++++ libstdc++-v3/src/nonshared11/codecvt80.cc 2025-05-06 15:48:48.587748971 +0200
@@ -0,0 +1,38 @@
-+// Copyright (C) 2012-2024 Free Software Foundation, Inc.
++// Copyright (C) 2012-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
@@ -2623,12 +2648,12 @@
+asm (".hidden _ZTSSt23__codecvt_abstract_baseIDsDu11__mbstate_tE");
+asm (".hidden _ZTVSt23__codecvt_abstract_baseIDiDu11__mbstate_tE");
+asm (".hidden _ZTVSt23__codecvt_abstract_baseIDsDu11__mbstate_tE");
---- libstdc++-v3/src/nonshared11/sstream-inst80.cc.jj 2024-07-18 16:10:38.331406686 +0200
-+++ libstdc++-v3/src/nonshared11/sstream-inst80.cc 2024-07-18 18:09:02.172562123 +0200
+--- libstdc++-v3/src/nonshared11/sstream-inst80.cc.jj 2025-05-06 15:48:48.587748971 +0200
++++ libstdc++-v3/src/nonshared11/sstream-inst80.cc 2025-05-06 15:48:48.587748971 +0200
@@ -0,0 +1,55 @@
+// Explicit instantiation file.
+
-+// Copyright (C) 2014-2024 Free Software Foundation, Inc.
++// Copyright (C) 2014-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
@@ -2681,12 +2706,12 @@
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEED0Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEED1Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEED2Ev");
---- libstdc++-v3/src/nonshared11/Makefile.am.jj 2024-07-18 16:10:38.331406686 +0200
-+++ libstdc++-v3/src/nonshared11/Makefile.am 2024-07-19 12:38:52.885625905 +0200
-@@ -0,0 +1,139 @@
+--- libstdc++-v3/src/nonshared11/Makefile.am.jj 2025-05-06 15:48:48.587748971 +0200
++++ libstdc++-v3/src/nonshared11/Makefile.am 2025-05-07 09:39:16.201203574 +0200
+@@ -0,0 +1,149 @@
+## Makefile for the C++03 sources of the GNU C++ Standard library.
+##
-+## Copyright (C) 1997-2024 Free Software Foundation, Inc.
++## Copyright (C) 1997-2025 Free Software Foundation, Inc.
+##
+## This file is part of the libstdc++ version 3 distribution.
+## Process this file with automake to produce Makefile.in.
@@ -2710,7 +2735,8 @@
+
+# Convenience library for C++11 runtime.
+noinst_LTLIBRARIES = libnonshared11convenience80.la \
-+ libnonshared11convenience110.la
++ libnonshared11convenience110.la \
++ libnonshared11convenience140.la
+
+headers =
+
@@ -2726,14 +2752,18 @@
+ cxx11-ios_failure80.cc \
+ condition_variable80.cc \
+ basic_file.cc \
++ sso_string.cc \
+ $(inst_sources80)
+
+sources110 = \
+ debug110.cc \
+ condition_variable80.cc \
+ basic_file.cc \
++ sso_string.cc \
+ $(inst_sources110)
+
++sources140 = sso_string.cc $(inst_sources140)
++
+if ENABLE_EXTERN_TEMPLATE
+# XTEMPLATE_FLAGS = -fno-implicit-templates
+inst_sources80 = \
@@ -2755,10 +2785,14 @@
+ wstring-inst110.cc \
+ cxx11-locale-inst110.cc \
+ cxx11-wlocale-inst110.cc
++inst_sources140 = \
++ string-inst140.cc \
++ wstring-inst140.cc
+else
+# XTEMPLATE_FLAGS =
+inst_sources80 =
+inst_sources110 =
++inst_source140 =
+endif
+
+vpath % $(top_srcdir)/src/nonshared11
@@ -2766,6 +2800,7 @@
+
+libnonshared11convenience80_la_SOURCES = $(sources80)
+libnonshared11convenience110_la_SOURCES = $(sources110)
++libnonshared11convenience140_la_SOURCES = $(sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -2823,10 +2858,10 @@
+ $(LTCXXCOMPILE) -fchar8_t -c $<
+limits.lo: limits.cc
+ $(LTCXXCOMPILE) -fchar8_t -c $<
---- libstdc++-v3/src/nonshared11/wlocale-inst110.cc.jj 2024-07-18 16:10:38.331406686 +0200
-+++ libstdc++-v3/src/nonshared11/wlocale-inst110.cc 2024-07-19 14:05:19.620761641 +0200
+--- libstdc++-v3/src/nonshared11/wlocale-inst110.cc.jj 2025-05-06 15:48:48.587748971 +0200
++++ libstdc++-v3/src/nonshared11/wlocale-inst110.cc 2025-05-06 15:48:48.587748971 +0200
@@ -0,0 +1,32 @@
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -2858,9 +2893,123 @@
+#include "locale-inst80.cc"
+#endif
+asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE6_M_getEv");
---- libstdc++-v3/src/nonshared11/Makefile.in.jj 2024-07-18 16:10:38.332406673 +0200
-+++ libstdc++-v3/src/nonshared11/Makefile.in 2024-07-19 14:22:11.356881323 +0200
-@@ -0,0 +1,816 @@
+--- libstdc++-v3/src/nonshared11/wstring-inst140.cc.jj 2025-05-07 09:38:39.793703142 +0200
++++ libstdc++-v3/src/nonshared11/wstring-inst140.cc 2025-05-07 09:38:45.511624687 +0200
+@@ -0,0 +1,26 @@
++// Components for manipulating sequences of characters -*- C++ -*-
++
++// Copyright (C) 1997-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.
++
++// Under Section 7 of GPL version 3, you are granted additional
++// permissions described in the GCC Runtime Library Exception, version
++// 3.1, as published by the Free Software Foundation.
++
++// You should have received a copy of the GNU General Public License and
++// a copy of the GCC Runtime Library Exception along with this program;
++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++// .
++
++#define _GLIBCXX_NONSHARED_CXX11_140
++#include "wstring-inst80.cc"
+--- libstdc++-v3/src/nonshared11/sso_string.cc.jj 2025-05-07 09:23:08.170487887 +0200
++++ libstdc++-v3/src/nonshared11/sso_string.cc 2025-05-07 09:23:39.711055054 +0200
+@@ -0,0 +1,82 @@
++// Helper for accessing __cxx11::string from the ABI -*- C++ -*-
++
++// Copyright (C) 2014-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.
++
++// Under Section 7 of GPL version 3, you are granted additional
++// permissions described in the GCC Runtime Library Exception, version
++// 3.1, as published by the Free Software Foundation.
++
++// You should have received a copy of the GNU General Public License and
++// a copy of the GCC Runtime Library Exception along with this program;
++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++// .
++
++
++#define _GLIBCXX_USE_CXX11_ABI 1
++#define __sso_string __sso_stringxxx
++#include
++#include
++#undef __sso_string
++
++#if ! _GLIBCXX_USE_DUAL_ABI
++# error This file should not be compiled for this configuration.
++#endif
++
++namespace std _GLIBCXX_VISIBILITY(default)
++{
++_GLIBCXX_BEGIN_NAMESPACE_VERSION
++
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wabi-tag"
++ // Redefine __sso_string so that we can define and export its members
++ // in terms of the SSO std::string.
++ struct __sso_string
++ {
++ struct __str
++ {
++ const char* _M_p;
++ size_t _M_string_length;
++ char _M_local_buf[16];
++ };
++
++ union {
++ __str _M_s;
++ char _M_bytes[sizeof(_M_s)];
++ std::string _M_str;
++ };
++
++ __sso_string();
++ __sso_string(const std::string& s);
++ __sso_string(const char*, size_t n);
++ __sso_string(const __sso_string&) noexcept;
++ __sso_string& operator=(const __sso_string&) noexcept;
++ ~__sso_string();
++ __sso_string(__sso_string&&) noexcept;
++ __sso_string& operator=(__sso_string&&) noexcept;
++ };
++#pragma GCC diagnostic pop
++
++ __sso_string::__sso_string() : _M_str() { }
++
++#if _GLIBCXX_USE_CXX11_ABI
++ static_assert(sizeof(__sso_string) == sizeof(std::string),
++ "sizeof(std::string) has changed");
++ static_assert(alignof(__sso_string) == alignof(std::string),
++ "alignof(std::string) has changed");
++#endif
++
++ __sso_string::~__sso_string() { _M_str.~basic_string(); }
++
++_GLIBCXX_END_NAMESPACE_VERSION
++} // namespace
+--- libstdc++-v3/src/nonshared11/Makefile.in.jj 2025-05-06 15:48:48.588748958 +0200
++++ libstdc++-v3/src/nonshared11/Makefile.in 2025-05-07 10:09:21.621443264 +0200
+@@ -0,0 +1,837 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
@@ -2991,7 +3140,7 @@
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-locale-inst110.lo \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst110.lo
+am__objects_2 = debug110.lo condition_variable80.lo basic_file.lo \
-+ $(am__objects_1)
++ sso_string.lo $(am__objects_1)
+am_libnonshared11convenience110_la_OBJECTS = $(am__objects_2)
+libnonshared11convenience110_la_OBJECTS = \
+ $(am_libnonshared11convenience110_la_OBJECTS)
@@ -2999,8 +3148,15 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++libnonshared11convenience140_la_LIBADD =
++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_3 = string-inst140.lo \
++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst140.lo
++am__objects_4 = sso_string.lo $(am__objects_3)
++am_libnonshared11convenience140_la_OBJECTS = $(am__objects_4)
++libnonshared11convenience140_la_OBJECTS = \
++ $(am_libnonshared11convenience140_la_OBJECTS)
+libnonshared11convenience80_la_LIBADD =
-+@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_3 = cow-sstream-inst80.lo \
++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_5 = cow-sstream-inst80.lo \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ istream-inst80.lo \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ sstream-inst80.lo \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst80.lo \
@@ -3011,11 +3167,11 @@
+@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst80.lo \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-locale-inst80.lo \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst80.lo
-+am__objects_4 = limits.lo functexcept80.lo debug.lo eh_ptr80.lo \
++am__objects_6 = limits.lo functexcept80.lo debug.lo eh_ptr80.lo \
+ futex80.lo codecvt80.lo cow-stdexcept80.lo shared_ptr80.lo \
+ cxx11-ios_failure80.lo condition_variable80.lo basic_file.lo \
-+ $(am__objects_3)
-+am_libnonshared11convenience80_la_OBJECTS = $(am__objects_4)
++ sso_string.lo $(am__objects_5)
++am_libnonshared11convenience80_la_OBJECTS = $(am__objects_6)
+libnonshared11convenience80_la_OBJECTS = \
+ $(am_libnonshared11convenience80_la_OBJECTS)
+AM_V_P = $(am__v_P_@AM_V@)
@@ -3045,6 +3201,7 @@
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
+SOURCES = $(libnonshared11convenience110_la_SOURCES) \
++ $(libnonshared11convenience140_la_SOURCES) \
+ $(libnonshared11convenience80_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
@@ -3315,7 +3472,8 @@
+
+# Convenience library for C++11 runtime.
+noinst_LTLIBRARIES = libnonshared11convenience80.la \
-+ libnonshared11convenience110.la
++ libnonshared11convenience110.la \
++ libnonshared11convenience140.la
+
+headers =
+sources80 = \
@@ -3330,14 +3488,17 @@
+ cxx11-ios_failure80.cc \
+ condition_variable80.cc \
+ basic_file.cc \
++ sso_string.cc \
+ $(inst_sources80)
+
+sources110 = \
+ debug110.cc \
+ condition_variable80.cc \
+ basic_file.cc \
++ sso_string.cc \
+ $(inst_sources110)
+
++sources140 = sso_string.cc $(inst_sources140)
+# XTEMPLATE_FLAGS =
+@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources80 =
+
@@ -3364,8 +3525,14 @@
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-locale-inst110.cc \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst110.cc
+
++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources140 = \
++@ENABLE_EXTERN_TEMPLATE_TRUE@ string-inst140.cc \
++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst140.cc
++
++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_source140 =
+libnonshared11convenience80_la_SOURCES = $(sources80)
+libnonshared11convenience110_la_SOURCES = $(sources110)
++libnonshared11convenience140_la_SOURCES = $(sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -3468,6 +3635,9 @@
+libnonshared11convenience110.la: $(libnonshared11convenience110_la_OBJECTS) $(libnonshared11convenience110_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience110_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared11convenience110_la_OBJECTS) $(libnonshared11convenience110_la_LIBADD) $(LIBS)
+
++libnonshared11convenience140.la: $(libnonshared11convenience140_la_OBJECTS) $(libnonshared11convenience140_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience140_la_DEPENDENCIES)
++ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared11convenience140_la_OBJECTS) $(libnonshared11convenience140_la_LIBADD) $(LIBS)
++
+libnonshared11convenience80.la: $(libnonshared11convenience80_la_OBJECTS) $(libnonshared11convenience80_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience80_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared11convenience80_la_OBJECTS) $(libnonshared11convenience80_la_LIBADD) $(LIBS)
+
@@ -3677,10 +3847,10 @@
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
---- libstdc++-v3/src/nonshared11/functexcept80.cc.jj 2024-07-18 16:10:38.333406660 +0200
-+++ libstdc++-v3/src/nonshared11/functexcept80.cc 2024-07-18 18:09:02.173562110 +0200
+--- libstdc++-v3/src/nonshared11/functexcept80.cc.jj 2025-05-06 15:48:48.588748958 +0200
++++ libstdc++-v3/src/nonshared11/functexcept80.cc 2025-05-06 15:48:48.588748958 +0200
@@ -0,0 +1,48 @@
-+// Copyright (C) 2001-2024 Free Software Foundation, Inc.
++// Copyright (C) 2001-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
@@ -3728,10 +3898,10 @@
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared11/debug.cc.jj 2024-07-18 16:10:38.333406660 +0200
-+++ libstdc++-v3/src/nonshared11/debug.cc 2024-07-18 18:09:02.173562110 +0200
+--- libstdc++-v3/src/nonshared11/debug.cc.jj 2025-05-06 15:48:48.588748958 +0200
++++ libstdc++-v3/src/nonshared11/debug.cc 2025-05-06 15:48:48.588748958 +0200
@@ -0,0 +1,131 @@
-+// Copyright (C) 2003-2024 Free Software Foundation, Inc.
++// Copyright (C) 2003-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
@@ -3862,10 +4032,39 @@
+asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base22_M_detach_local_singleEPNS_19_Safe_iterator_baseE");
+asm (".hidden _ZNK11__gnu_debug25_Safe_local_iterator_base16_M_get_containerEv");
+#endif
---- libstdc++-v3/src/nonshared11/cow-sstream-inst80.cc.jj 2024-07-18 16:10:38.333406660 +0200
-+++ libstdc++-v3/src/nonshared11/cow-sstream-inst80.cc 2024-07-18 18:09:02.173562110 +0200
+--- libstdc++-v3/src/nonshared11/string-inst140.cc.jj 2025-05-07 09:38:19.302984308 +0200
++++ libstdc++-v3/src/nonshared11/string-inst140.cc 2025-05-07 09:38:26.231889230 +0200
+@@ -0,0 +1,26 @@
++// Components for manipulating sequences of characters -*- C++ -*-
++
++// Copyright (C) 1997-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.
++
++// Under Section 7 of GPL version 3, you are granted additional
++// permissions described in the GCC Runtime Library Exception, version
++// 3.1, as published by the Free Software Foundation.
++
++// You should have received a copy of the GNU General Public License and
++// a copy of the GCC Runtime Library Exception along with this program;
++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++// .
++
++#define _GLIBCXX_NONSHARED_CXX11_140
++#include "string-inst80.cc"
+--- libstdc++-v3/src/nonshared11/cow-sstream-inst80.cc.jj 2025-05-06 15:48:48.589748944 +0200
++++ libstdc++-v3/src/nonshared11/cow-sstream-inst80.cc 2025-05-06 15:48:48.588748958 +0200
@@ -0,0 +1,53 @@
-+// Copyright (C) 2012-2024 Free Software Foundation, Inc.
++// Copyright (C) 2012-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
@@ -3918,12 +4117,12 @@
+asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED0Ev");
+asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED1Ev");
+asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED2Ev");
---- libstdc++-v3/src/nonshared11/cow-stdexcept80.cc.jj 2024-07-18 16:10:38.334406647 +0200
-+++ libstdc++-v3/src/nonshared11/cow-stdexcept80.cc 2024-07-18 18:09:02.174562097 +0200
+--- libstdc++-v3/src/nonshared11/cow-stdexcept80.cc.jj 2025-05-06 15:48:48.589748944 +0200
++++ libstdc++-v3/src/nonshared11/cow-stdexcept80.cc 2025-05-06 15:48:48.589748944 +0200
@@ -0,0 +1,76 @@
+// Methods for Exception Support for -*- C++ -*-
+
-+// Copyright (C) 2014-2024 Free Software Foundation, Inc.
++// Copyright (C) 2014-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
@@ -3997,10 +4196,10 @@
+#endif
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared11/cxx11-ios_failure80.cc.jj 2024-07-18 16:10:38.334406647 +0200
-+++ libstdc++-v3/src/nonshared11/cxx11-ios_failure80.cc 2024-07-19 14:11:47.692839716 +0200
+--- libstdc++-v3/src/nonshared11/cxx11-ios_failure80.cc.jj 2025-05-06 15:48:48.589748944 +0200
++++ libstdc++-v3/src/nonshared11/cxx11-ios_failure80.cc 2025-05-06 15:48:48.589748944 +0200
@@ -0,0 +1,50 @@
-+// Copyright (C) 2012-2024 Free Software Foundation, Inc.
++// Copyright (C) 2012-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
@@ -4050,10 +4249,10 @@
+asm (".hidden _ZTSNSt8ios_base7failureB5cxx11E");
+asm (".hidden _ZTINSt8ios_base7failureB5cxx11E");
+asm (".hidden _ZSt19__throw_ios_failurePKc");
---- libstdc++-v3/src/nonshared11/shared_ptr80.cc.jj 2024-07-18 16:10:38.334406647 +0200
-+++ libstdc++-v3/src/nonshared11/shared_ptr80.cc 2024-07-18 18:09:02.174562097 +0200
+--- libstdc++-v3/src/nonshared11/shared_ptr80.cc.jj 2025-05-06 15:48:48.589748944 +0200
++++ libstdc++-v3/src/nonshared11/shared_ptr80.cc 2025-05-06 15:48:48.589748944 +0200
@@ -0,0 +1,25 @@
-+// Copyright (C) 2012-2024 Free Software Foundation, Inc.
++// Copyright (C) 2012-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
@@ -4078,10 +4277,10 @@
+#define _GLIBCXX_NONSHARED_CXX11_80
+#include "../c++11/shared_ptr.cc"
+//asm (".hidden _ZTSSt19_Sp_make_shared_tag");
---- libstdc++-v3/src/nonshared11/wstring-inst80.cc.jj 2024-07-18 16:10:38.334406647 +0200
-+++ libstdc++-v3/src/nonshared11/wstring-inst80.cc 2024-07-19 13:10:40.538962063 +0200
+--- libstdc++-v3/src/nonshared11/wstring-inst80.cc.jj 2025-05-06 15:48:48.589748944 +0200
++++ libstdc++-v3/src/nonshared11/wstring-inst80.cc 2025-05-07 09:36:45.047277727 +0200
@@ -0,0 +1,29 @@
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -4110,12 +4309,12 @@
+#define C wchar_t
+#include "string-inst80.cc"
+#endif
---- libstdc++-v3/src/nonshared11/basic_file.cc.jj 2024-07-19 12:35:19.980381629 +0200
-+++ libstdc++-v3/src/nonshared11/basic_file.cc 2024-07-19 12:37:01.786063916 +0200
+--- libstdc++-v3/src/nonshared11/basic_file.cc.jj 2025-05-06 15:48:48.590748931 +0200
++++ libstdc++-v3/src/nonshared11/basic_file.cc 2025-05-06 15:48:48.590748931 +0200
@@ -0,0 +1,81 @@
+// Wrapper of C-language FILE struct -*- C++ -*-
+
-+// Copyright (C) 2000-2024 Free Software Foundation, Inc.
++// Copyright (C) 2000-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
@@ -4194,12 +4393,12 @@
+
+_GLIBCXX_END_NAMESPACE_VERSION
+} // namespace
---- libstdc++-v3/src/nonshared11/string-inst110.cc.jj 2024-07-18 16:10:38.334406647 +0200
-+++ libstdc++-v3/src/nonshared11/string-inst110.cc 2024-07-19 13:10:33.627051199 +0200
+--- libstdc++-v3/src/nonshared11/string-inst110.cc.jj 2025-05-06 15:48:48.590748931 +0200
++++ libstdc++-v3/src/nonshared11/string-inst110.cc 2025-05-06 15:48:48.590748931 +0200
@@ -0,0 +1,26 @@
+// Components for manipulating sequences of characters -*- C++ -*-
+
-+// Copyright (C) 1997-2024 Free Software Foundation, Inc.
++// Copyright (C) 1997-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
@@ -4223,10 +4422,10 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_110
+#include "string-inst80.cc"
---- libstdc++-v3/src/nonshared11/locale-inst110.cc.jj 2024-07-18 16:10:38.335406635 +0200
-+++ libstdc++-v3/src/nonshared11/locale-inst110.cc 2024-07-18 18:09:02.175562085 +0200
+--- libstdc++-v3/src/nonshared11/locale-inst110.cc.jj 2025-05-06 15:48:48.590748931 +0200
++++ libstdc++-v3/src/nonshared11/locale-inst110.cc 2025-05-06 15:48:48.590748931 +0200
@@ -0,0 +1,24 @@
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -4250,12 +4449,12 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_110
+#include "locale-inst80.cc"
---- libstdc++-v3/src/nonshared11/cxx11-locale-inst80.cc.jj 2024-07-18 16:10:38.335406635 +0200
-+++ libstdc++-v3/src/nonshared11/cxx11-locale-inst80.cc 2024-07-18 18:09:02.175562085 +0200
+--- libstdc++-v3/src/nonshared11/cxx11-locale-inst80.cc.jj 2025-05-06 15:48:48.590748931 +0200
++++ libstdc++-v3/src/nonshared11/cxx11-locale-inst80.cc 2025-05-06 15:48:48.590748931 +0200
@@ -0,0 +1,69 @@
+// Locale support -*- C++ -*-
+
-+// Copyright (C) 1999-2024 Free Software Foundation, Inc.
++// Copyright (C) 1999-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
@@ -4322,10 +4521,10 @@
+asm (".hidden _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc");
+asm (".hidden _ZNKSt19istreambuf_iteratorIcSt11char_traitsIcEE6_M_getEv");
+#endif
---- libstdc++-v3/src/nonshared11/futex80.cc.jj 2024-07-18 16:10:38.335406635 +0200
-+++ libstdc++-v3/src/nonshared11/futex80.cc 2024-07-18 18:09:02.176562072 +0200
+--- libstdc++-v3/src/nonshared11/futex80.cc.jj 2025-05-06 15:48:48.590748931 +0200
++++ libstdc++-v3/src/nonshared11/futex80.cc 2025-05-06 15:48:48.590748931 +0200
@@ -0,0 +1,24 @@
-+// Copyright (C) 2012-2024 Free Software Foundation, Inc.
++// Copyright (C) 2012-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
@@ -4349,8 +4548,8 @@
+
+#define _GLIBCXX_NONSHARED_CXX11_80
+#include "../c++11/futex.cc"
---- libstdc++-v3/src/shared/hashtable-aux.cc.jj 2024-04-26 11:47:04.208141595 +0200
-+++ libstdc++-v3/src/shared/hashtable-aux.cc 2024-07-18 16:10:38.335406635 +0200
+--- libstdc++-v3/src/shared/hashtable-aux.cc.jj 2025-04-17 12:55:03.467609158 +0200
++++ libstdc++-v3/src/shared/hashtable-aux.cc 2025-05-06 15:48:48.607748701 +0200
@@ -22,6 +22,9 @@
// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
// .
@@ -4367,9 +4566,9 @@
} // namespace __detail
+
+#endif
---- libstdc++-v3/src/nonshared20/tzdb110.cc.jj 2024-07-19 14:20:09.597439460 +0200
-+++ libstdc++-v3/src/nonshared20/tzdb110.cc 2024-07-19 15:44:37.305875058 +0200
-@@ -0,0 +1,33 @@
+--- libstdc++-v3/src/nonshared20/tzdb110.cc.jj 2025-05-06 15:48:48.608748687 +0200
++++ libstdc++-v3/src/nonshared20/tzdb110.cc 2025-05-06 17:51:28.532972148 +0200
+@@ -0,0 +1,34 @@
+// Copyright The GNU Toolchain Authors.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
@@ -4397,16 +4596,17 @@
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev");
+asm (".hidden _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev");
-+#ifndef __i386__
++#ifndef __powerpc64__
+asm (".hidden _ZSt23__atomic_wait_address_vIiZNKSt13__atomic_baseIiE4waitEiSt12memory_orderEUlvE_EvPKT_S4_T0_");
+#endif
+#ifdef __i386__
-+asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
++//asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
++asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
+#endif
---- libstdc++-v3/src/nonshared20/sstream-inst80.cc.jj 2024-07-18 16:10:38.335406635 +0200
-+++ libstdc++-v3/src/nonshared20/sstream-inst80.cc 2024-07-19 11:02:28.274530997 +0200
+--- libstdc++-v3/src/nonshared20/sstream-inst80.cc.jj 2025-05-06 15:48:48.608748687 +0200
++++ libstdc++-v3/src/nonshared20/sstream-inst80.cc 2025-05-06 15:48:48.608748687 +0200
@@ -0,0 +1,34 @@
-+// Copyright (C) 2012-2024 Free Software Foundation, Inc.
++// Copyright (C) 2012-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
@@ -4440,12 +4640,12 @@
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_disposeEv");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE10_M_disposeEv");
+//asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
---- libstdc++-v3/src/nonshared20/Makefile.am.jj 2024-07-18 16:10:38.336406622 +0200
-+++ libstdc++-v3/src/nonshared20/Makefile.am 2024-07-19 14:22:04.815965025 +0200
-@@ -0,0 +1,124 @@
+--- libstdc++-v3/src/nonshared20/Makefile.am.jj 2025-05-06 15:48:48.608748687 +0200
++++ libstdc++-v3/src/nonshared20/Makefile.am 2025-05-07 10:07:48.614718097 +0200
+@@ -0,0 +1,137 @@
+## Makefile for the C++20 sources of the GNU C++ Standard library.
+##
-+## Copyright (C) 1997-2024 Free Software Foundation, Inc.
++## Copyright (C) 1997-2025 Free Software Foundation, Inc.
+##
+## This file is part of the libstdc++ version 3 distribution.
+## Process this file with automake to produce Makefile.in.
@@ -4469,7 +4669,8 @@
+
+# Convenience library for C++20 runtime.
+noinst_LTLIBRARIES = libnonshared20convenience80.la \
-+ libnonshared20convenience110.la
++ libnonshared20convenience110.la \
++ libnonshared20convenience140.la
+
+headers =
+
@@ -4481,8 +4682,9 @@
+inst_sources80 =
+endif
+
-+sources80 = tzdb80.cc
-+sources110 = tzdb110.cc
++sources80 = format.cc tzdb80.cc
++sources110 = format.cc tzdb110.cc
++sources140 = format140.cc
+
+vpath % $(top_srcdir)/src/nonshared20
+
@@ -4503,8 +4705,19 @@
+ $(CXXCOMPILE) -I. -c $<
+endif
+
++# This needs access to std::text_encoding and to the internals of std::locale.
++format.lo: format.cc
++ $(LTCXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++format.o: format.cc
++ $(CXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++format140.lo: format140.cc
++ $(LTCXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++format140.o: format140.cc
++ $(CXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++
+libnonshared20convenience80_la_SOURCES = $(sources80) $(inst_sources80)
+libnonshared20convenience110_la_SOURCES = $(sources110)
++libnonshared20convenience140_la_SOURCES = $(sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -4567,8 +4780,8 @@
+ --mode=link $(CXX) \
+ $(VTV_CXXLINKFLAGS) \
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
---- libstdc++-v3/src/nonshared20/tzdb80.cc.jj 2024-07-18 16:10:38.336406622 +0200
-+++ libstdc++-v3/src/nonshared20/tzdb80.cc 2024-07-19 15:44:33.397924595 +0200
+--- libstdc++-v3/src/nonshared20/tzdb80.cc.jj 2025-05-06 15:48:48.609748674 +0200
++++ libstdc++-v3/src/nonshared20/tzdb80.cc 2025-05-06 17:58:58.505991971 +0200
@@ -0,0 +1,130 @@
+// Copyright The GNU Toolchain Authors.
+//
@@ -4615,28 +4828,28 @@
+asm (".hidden _ZNSt6chrono9time_zoneD1Ev");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt6chrono9tzdb_list5_NodeESaIvELN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv");
+asm (".hidden _ZSt11make_uniqueINSt6chrono9time_zone5_ImplEJRSt10shared_ptrINS0_9tzdb_list5_NodeEEEENSt8__detail9_MakeUniqIT_E15__single_objectEDpOT0_");
-+asm (".hidden _ZSt11make_uniqueINSt6chrono9time_zone5_ImplEIRSt10shared_ptrINS0_9tzdb_list5_NodeEEEENSt8__detail9_MakeUniqIT_E15__single_objectEDpOT0_");
-+asm (".hidden _ZNSt6vectorINSt6chrono9time_zoneESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
-+asm (".hidden _ZNSt6vectorINSt6chrono9time_zoneESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
++//asm (".hidden _ZSt11make_uniqueINSt6chrono9time_zone5_ImplEIRSt10shared_ptrINS0_9tzdb_list5_NodeEEEENSt8__detail9_MakeUniqIT_E15__single_objectEDpOT0_");
++//asm (".hidden _ZNSt6vectorINSt6chrono9time_zoneESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
++//asm (".hidden _ZNSt6vectorINSt6chrono9time_zoneESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
+asm (".hidden _ZNSt12_Vector_baseINSt6chrono11leap_secondESaIS1_EED2Ev");
+asm (".hidden _ZNSt12_Vector_baseINSt6chrono11leap_secondESaIS1_EED1Ev");
+asm (".hidden _ZNSt6chrono9tzdb_list5_Node20_S_read_leap_secondsEv");
-+asm (".hidden _ZNSt6vectorINSt6chrono14time_zone_linkESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
-+asm (".hidden _ZNSt6vectorINSt6chrono14time_zone_linkESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
++//asm (".hidden _ZNSt6vectorINSt6chrono14time_zone_linkESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
++//asm (".hidden _ZNSt6vectorINSt6chrono14time_zone_linkESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
+asm (".hidden _ZSt23__atomic_notify_addressIiEvPKT_b");
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessESt8identityEEDaRT_RT0_EUlOSG_OSI_E_EEEvSG_SG_SI_");
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessESt8identityEEDaRT_RT0_EUlOSG_OSI_E_EEEvSG_SG_SI_");
+asm (".hidden _ZZNSt6ranges8__detail16__make_comp_projINS_4lessEMNSt6chrono9time_zoneEKDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_ENKUlOSB_OSD_E_clIRS4_SJ_EEbSF_SG_");
+#ifndef __s390x__
-+asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
++//asm (".hidden _ZSt25__unguarded_linear_insertIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops14_Val_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SN_");
+#endif
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono9time_zoneESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SL_SN_");
+asm (".hidden _ZZNSt6ranges8__detail16__make_comp_projINS_4lessEMNSt6chrono14time_zone_linkEKDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_ENKUlOSB_OSD_E_clIRS4_SJ_EEbSF_SG_");
+asm (".hidden _ZSt16__insertion_sortIN9__gnu_cxx17__normal_iteratorIPNSt6chrono14time_zone_linkESt6vectorIS3_SaIS3_EEEENS0_5__ops15_Iter_comp_iterIZNSt6ranges8__detail16__make_comp_projINSB_4lessEMS3_KDoFSt17basic_string_viewIcSt11char_traitsIcEEvEEEDaRT_RT0_EUlOSL_OSN_E_EEEvSL_SL_SN_");
+asm (".hidden _ZSt4swapINSt6chrono9time_zoneEENSt9enable_ifIXsrSt6__and_IJSt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_");
-+asm (".hidden _ZSt4swapINSt6chrono9time_zoneEENSt9enable_ifIXsrSt6__and_IISt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_");
++//asm (".hidden _ZSt4swapINSt6chrono9time_zoneEENSt9enable_ifIXsrSt6__and_IISt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_");
+asm (".hidden _ZSt4swapINSt6chrono14time_zone_linkEENSt9enable_ifIXsrSt6__and_IJSt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_");
-+asm (".hidden _ZSt4swapINSt6chrono14time_zone_linkEENSt9enable_ifIXsrSt6__and_IISt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_");
++//asm (".hidden _ZSt4swapINSt6chrono14time_zone_linkEENSt9enable_ifIXsrSt6__and_IISt6__not_ISt15__is_tuple_likeIT_EESt21is_move_constructibleIS6_ESt18is_move_assignableIS6_EEE5valueEvE4typeERS6_SG_");
+asm (".hidden _ZTVSt23_Sp_counted_ptr_inplaceINSt6chrono9tzdb_list5_NodeESaIvELN9__gnu_cxx12_Lock_policyE2EE");
+asm (".hidden _ZNSt6chrono9tzdb_list5_Node12_S_init_tzdbEv");
+asm (".hidden _ZNSt6chrono9tzdb_list5_Node11_S_the_listE");
@@ -4653,14 +4866,14 @@
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2EPKcjRKS3_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEjjPKcj");
-+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEjjPKcj");
++//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEjjPKcj");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcj");
+#else
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EPKcmRKS3_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2EPKcmRKS3_");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7reserveEm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
-+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm");
++//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE10_M_replaceEmmPKcm");
+asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE6appendEPKcm");
+#endif
+#ifdef __i386__
@@ -4687,7 +4900,7 @@
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+#endif
+#ifdef __i386__
-+asm (".hidden _ZSt23__atomic_wait_address_vIiZNKSt13__atomic_baseIiE4waitEiSt12memory_orderEUlvE_EvPKT_S4_T0_");
++//asm (".hidden _ZSt23__atomic_wait_address_vIiZNKSt13__atomic_baseIiE4waitEiSt12memory_orderEUlvE_EvPKT_S4_T0_");
+#endif
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
@@ -4699,10 +4912,39 @@
+asm (".hidden _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag");
+asm (".hidden _ZZNSt8__detail18__waiter_pool_base6_S_forEPKvE3__w");
+asm (".hidden _ZNSt6vectorISt4pairINSt6chrono8sys_infoESt17basic_string_viewIcSt11char_traitsIcEEESaIS7_EE17_M_realloc_appendIJRS2_RS6_EEEvDpOT_");
-+asm (".hidden _ZNSt6vectorISt4pairINSt6chrono8sys_infoESt17basic_string_viewIcSt11char_traitsIcEEESaIS7_EE17_M_realloc_appendIIRS2_RS6_EEEvDpOT_");
---- libstdc++-v3/src/nonshared20/Makefile.in.jj 2024-07-18 16:10:38.336406622 +0200
-+++ libstdc++-v3/src/nonshared20/Makefile.in 2024-07-19 14:22:11.396880811 +0200
-@@ -0,0 +1,777 @@
++//asm (".hidden _ZNSt6vectorISt4pairINSt6chrono8sys_infoESt17basic_string_viewIcSt11char_traitsIcEEESaIS7_EE17_M_realloc_appendIIRS2_RS6_EEEvDpOT_");
+--- libstdc++-v3/src/nonshared20/format140.cc.jj 2025-05-07 10:06:37.553692117 +0200
++++ libstdc++-v3/src/nonshared20/format140.cc 2025-05-07 10:07:06.573294349 +0200
+@@ -0,0 +1,26 @@
++// Definitions for formatting -*- C++ -*-
++
++// Copyright The GNU Toolchain Authors.
++//
++// 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.
++
++// Under Section 7 of GPL version 3, you are granted additional
++// permissions described in the GCC Runtime Library Exception, version
++// 3.1, as published by the Free Software Foundation.
++
++// You should have received a copy of the GNU General Public License and
++// a copy of the GCC Runtime Library Exception along with this program;
++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++// .
++
++#include "format.cc"
++asm (".hidden _ZNSt8__detail31__from_chars_alnum_to_val_tableILb0EE5valueE");
+--- libstdc++-v3/src/nonshared20/Makefile.in.jj 2025-05-06 15:48:48.609748674 +0200
++++ libstdc++-v3/src/nonshared20/Makefile.in 2025-05-07 10:09:21.663442688 +0200
+@@ -0,0 +1,799 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
@@ -4826,7 +5068,7 @@
+CONFIG_CLEAN_VPATH_FILES =
+LTLIBRARIES = $(noinst_LTLIBRARIES)
+libnonshared20convenience110_la_LIBADD =
-+am__objects_1 = tzdb110.lo
++am__objects_1 = format.lo tzdb110.lo
+am_libnonshared20convenience110_la_OBJECTS = $(am__objects_1)
+libnonshared20convenience110_la_OBJECTS = \
+ $(am_libnonshared20convenience110_la_OBJECTS)
@@ -4834,11 +5076,16 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++libnonshared20convenience140_la_LIBADD =
++am__objects_2 = format140.lo
++am_libnonshared20convenience140_la_OBJECTS = $(am__objects_2)
++libnonshared20convenience140_la_OBJECTS = \
++ $(am_libnonshared20convenience140_la_OBJECTS)
+libnonshared20convenience80_la_LIBADD =
-+am__objects_2 = tzdb80.lo
-+@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_3 = sstream-inst80.lo
-+am_libnonshared20convenience80_la_OBJECTS = $(am__objects_2) \
-+ $(am__objects_3)
++am__objects_3 = format.lo tzdb80.lo
++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_4 = sstream-inst80.lo
++am_libnonshared20convenience80_la_OBJECTS = $(am__objects_3) \
++ $(am__objects_4)
+libnonshared20convenience80_la_OBJECTS = \
+ $(am_libnonshared20convenience80_la_OBJECTS)
+AM_V_P = $(am__v_P_@AM_V@)
@@ -4868,6 +5115,7 @@
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
+SOURCES = $(libnonshared20convenience110_la_SOURCES) \
++ $(libnonshared20convenience140_la_SOURCES) \
+ $(libnonshared20convenience80_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
@@ -5138,7 +5386,8 @@
+
+# Convenience library for C++20 runtime.
+noinst_LTLIBRARIES = libnonshared20convenience80.la \
-+ libnonshared20convenience110.la
++ libnonshared20convenience110.la \
++ libnonshared20convenience140.la
+
+headers =
+# XTEMPLATE_FLAGS =
@@ -5146,10 +5395,12 @@
+
+# XTEMPLATE_FLAGS = -fno-implicit-templates
+@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources80 = sstream-inst80.cc
-+sources80 = tzdb80.cc
-+sources110 = tzdb110.cc
++sources80 = format.cc tzdb80.cc
++sources110 = format.cc tzdb110.cc
++sources140 = format140.cc
+libnonshared20convenience80_la_SOURCES = $(sources80) $(inst_sources80)
+libnonshared20convenience110_la_SOURCES = $(sources110)
++libnonshared20convenience140_la_SOURCES = $(sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -5263,6 +5514,9 @@
+libnonshared20convenience110.la: $(libnonshared20convenience110_la_OBJECTS) $(libnonshared20convenience110_la_DEPENDENCIES) $(EXTRA_libnonshared20convenience110_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared20convenience110_la_OBJECTS) $(libnonshared20convenience110_la_LIBADD) $(LIBS)
+
++libnonshared20convenience140.la: $(libnonshared20convenience140_la_OBJECTS) $(libnonshared20convenience140_la_DEPENDENCIES) $(EXTRA_libnonshared20convenience140_la_DEPENDENCIES)
++ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared20convenience140_la_OBJECTS) $(libnonshared20convenience140_la_LIBADD) $(LIBS)
++
+libnonshared20convenience80.la: $(libnonshared20convenience80_la_OBJECTS) $(libnonshared20convenience80_la_DEPENDENCIES) $(EXTRA_libnonshared20convenience80_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared20convenience80_la_OBJECTS) $(libnonshared20convenience80_la_LIBADD) $(LIBS)
+
@@ -5477,11 +5731,56 @@
+@USE_STATIC_TZDATA_TRUE@tzdb110.o: tzdb110.cc tzdata.zi.h
+@USE_STATIC_TZDATA_TRUE@ $(CXXCOMPILE) -I. -c $<
+
++# This needs access to std::text_encoding and to the internals of std::locale.
++format.lo: format.cc
++ $(LTCXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++format.o: format.cc
++ $(CXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++format140.lo: format140.cc
++ $(LTCXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++format140.o: format140.cc
++ $(CXXCOMPILE) -std=gnu++26 -fno-access-control -c $<
++
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
---- libstdc++-v3/src/c++98/ios_failure.cc.jj 2024-04-26 11:47:04.174142066 +0200
-+++ libstdc++-v3/src/c++98/ios_failure.cc 2024-07-18 16:10:38.336406622 +0200
+--- libstdc++-v3/src/nonshared20/format.cc.jj 2025-05-07 09:12:33.146212369 +0200
++++ libstdc++-v3/src/nonshared20/format.cc 2025-05-07 10:06:24.771867318 +0200
+@@ -0,0 +1,32 @@
++// Definitions for formatting -*- C++ -*-
++
++// Copyright The GNU Toolchain Authors.
++//
++// 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.
++
++// Under Section 7 of GPL version 3, you are granted additional
++// permissions described in the GCC Runtime Library Exception, version
++// 3.1, as published by the Free Software Foundation.
++
++// You should have received a copy of the GNU General Public License and
++// a copy of the GCC Runtime Library Exception along with this program;
++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
++// .
++
++#include "../c++20/format.cc"
++asm (".hidden _ZNKSt13text_encoding17_M_is_environmentEv");
++asm (".hidden _ZNKSt6locale8encodingEv");
++asm (".hidden _ZNSt13text_encoding11environmentEv");
++asm (".hidden _ZNSt13text_encoding7_S_repsE");
++#if defined(__s390x__)
++asm (".hidden _ZNSt13text_encoding12_S_find_nameESt17basic_string_viewIcSt11char_traitsIcEE");
++#endif
+--- libstdc++-v3/src/c++98/ios_failure.cc.jj 2025-04-17 12:55:03.460609249 +0200
++++ libstdc++-v3/src/c++98/ios_failure.cc 2025-05-06 15:48:48.628748416 +0200
@@ -45,6 +45,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -5498,8 +5797,8 @@
#if _GLIBCXX_USE_DUAL_ABI
// When the dual ABI is enabled __throw_ios_failure() is defined in
---- libstdc++-v3/src/c++98/locale_facets.cc.jj 2024-04-26 11:47:04.175142052 +0200
-+++ libstdc++-v3/src/c++98/locale_facets.cc 2024-07-18 16:10:38.336406622 +0200
+--- libstdc++-v3/src/c++98/locale_facets.cc.jj 2025-04-17 12:55:03.461609236 +0200
++++ libstdc++-v3/src/c++98/locale_facets.cc 2025-05-06 15:48:48.640748254 +0200
@@ -27,6 +27,8 @@ namespace std _GLIBCXX_VISIBILITY(defaul
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -5509,15 +5808,15 @@
// Definitions for static const data members of time_base.
template<>
const char*
-@@ -97,6 +99,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
- *__fptr++ = (__flags & ios_base::uppercase) ? 'G' : 'g';
+@@ -100,6 +102,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+ *__fptr++ = __upper ? 'G' : 'g';
*__fptr = '\0';
}
+#endif
// This function is not exported but is needed internally, by the versions
// of __verify_grouping below and in src/c++11/cxx11-locale-inst.cc
-@@ -125,6 +128,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+@@ -128,6 +131,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
return __test;
}
@@ -5525,7 +5824,7 @@
bool
__verify_grouping(const char* __grouping, size_t __grouping_size,
const string& __grouping_tmp) throw()
-@@ -133,6 +137,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+@@ -136,6 +140,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__grouping_tmp.c_str(),
__grouping_tmp.size());
}
@@ -5534,10 +5833,10 @@
namespace
{
---- libstdc++-v3/src/nonshared26/text_encoding.cc.jj 2024-07-18 18:07:43.729566579 +0200
-+++ libstdc++-v3/src/nonshared26/text_encoding.cc 2024-07-18 18:07:53.408442639 +0200
+--- libstdc++-v3/src/nonshared26/text_encoding.cc.jj 2025-05-06 15:48:48.661747970 +0200
++++ libstdc++-v3/src/nonshared26/text_encoding.cc 2025-05-06 15:48:48.661747970 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2023-2024 Free Software Foundation, Inc.
++// Copyright (C) 2023-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
@@ -5560,12 +5859,12 @@
+// .
+
+#include "../c++26/text_encoding.cc"
---- libstdc++-v3/src/nonshared26/Makefile.am.jj 2024-07-18 18:01:30.854341218 +0200
-+++ libstdc++-v3/src/nonshared26/Makefile.am 2024-07-19 12:38:22.310021662 +0200
-@@ -0,0 +1,106 @@
+--- libstdc++-v3/src/nonshared26/Makefile.am.jj 2025-05-06 15:48:48.661747970 +0200
++++ libstdc++-v3/src/nonshared26/Makefile.am 2025-05-06 15:54:06.764442766 +0200
+@@ -0,0 +1,108 @@
+## Makefile for the C++26 sources of the GNU C++ Standard library.
+##
-+## Copyright (C) 1997-2024 Free Software Foundation, Inc.
++## Copyright (C) 1997-2025 Free Software Foundation, Inc.
+##
+## This file is part of the libstdc++ version 3 distribution.
+## Process this file with automake to produce Makefile.in.
@@ -5589,7 +5888,8 @@
+
+# Convenience library for C++26 runtime.
+noinst_LTLIBRARIES = libnonshared26convenience80.la \
-+ libnonshared26convenience110.la
++ libnonshared26convenience110.la \
++ libnonshared26convenience140.la
+
+headers =
+
@@ -5607,6 +5907,7 @@
+
+libnonshared26convenience80_la_SOURCES = $(sources) $(inst_sources)
+libnonshared26convenience110_la_SOURCES = $(sources) $(inst_sources)
++libnonshared26convenience140_la_SOURCES = $(sources) $(inst_sources)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -5669,9 +5970,9 @@
+ --mode=link $(CXX) \
+ $(VTV_CXXLINKFLAGS) \
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
---- libstdc++-v3/src/nonshared26/Makefile.in.jj 2024-07-18 18:01:36.210272635 +0200
-+++ libstdc++-v3/src/nonshared26/Makefile.in 2024-07-19 14:22:11.434880324 +0200
-@@ -0,0 +1,761 @@
+--- libstdc++-v3/src/nonshared26/Makefile.in.jj 2025-05-06 15:48:48.662747956 +0200
++++ libstdc++-v3/src/nonshared26/Makefile.in 2025-05-07 10:09:21.703442140 +0200
+@@ -0,0 +1,772 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
@@ -5805,6 +6106,11 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++libnonshared26convenience140_la_LIBADD =
++am_libnonshared26convenience140_la_OBJECTS = $(am__objects_1) \
++ $(am__objects_2)
++libnonshared26convenience140_la_OBJECTS = \
++ $(am_libnonshared26convenience140_la_OBJECTS)
+libnonshared26convenience80_la_LIBADD =
+am_libnonshared26convenience80_la_OBJECTS = $(am__objects_1) \
+ $(am__objects_2)
@@ -5837,6 +6143,7 @@
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
+SOURCES = $(libnonshared26convenience110_la_SOURCES) \
++ $(libnonshared26convenience140_la_SOURCES) \
+ $(libnonshared26convenience80_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
@@ -6107,7 +6414,8 @@
+
+# Convenience library for C++26 runtime.
+noinst_LTLIBRARIES = libnonshared26convenience80.la \
-+ libnonshared26convenience110.la
++ libnonshared26convenience110.la \
++ libnonshared26convenience140.la
+
+headers =
+# XTEMPLATE_FLAGS =
@@ -6118,6 +6426,7 @@
+sources = text_encoding.cc
+libnonshared26convenience80_la_SOURCES = $(sources) $(inst_sources)
+libnonshared26convenience110_la_SOURCES = $(sources) $(inst_sources)
++libnonshared26convenience140_la_SOURCES = $(sources) $(inst_sources)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -6231,6 +6540,9 @@
+libnonshared26convenience110.la: $(libnonshared26convenience110_la_OBJECTS) $(libnonshared26convenience110_la_DEPENDENCIES) $(EXTRA_libnonshared26convenience110_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared26convenience110_la_OBJECTS) $(libnonshared26convenience110_la_LIBADD) $(LIBS)
+
++libnonshared26convenience140.la: $(libnonshared26convenience140_la_OBJECTS) $(libnonshared26convenience140_la_DEPENDENCIES) $(EXTRA_libnonshared26convenience140_la_DEPENDENCIES)
++ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared26convenience140_la_OBJECTS) $(libnonshared26convenience140_la_LIBADD) $(LIBS)
++
+libnonshared26convenience80.la: $(libnonshared26convenience80_la_OBJECTS) $(libnonshared26convenience80_la_DEPENDENCIES) $(EXTRA_libnonshared26convenience80_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared26convenience80_la_OBJECTS) $(libnonshared26convenience80_la_LIBADD) $(LIBS)
+
@@ -6433,10 +6745,10 @@
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
---- libstdc++-v3/src/nonshared23/stacktrace.cc.jj 2024-07-18 18:07:00.328122333 +0200
-+++ libstdc++-v3/src/nonshared23/stacktrace.cc 2024-07-18 18:07:05.985049896 +0200
+--- libstdc++-v3/src/nonshared23/stacktrace.cc.jj 2025-05-06 15:48:48.662747956 +0200
++++ libstdc++-v3/src/nonshared23/stacktrace.cc 2025-05-06 15:48:48.662747956 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2023-2024 Free Software Foundation, Inc.
++// Copyright (C) 2023-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
@@ -6459,10 +6771,10 @@
+// .
+
+#include "../c++23/stacktrace.cc"
---- libstdc++-v3/src/nonshared23/print.cc.jj 2024-07-18 18:06:10.043766216 +0200
-+++ libstdc++-v3/src/nonshared23/print.cc 2024-07-18 18:06:50.684245818 +0200
+--- libstdc++-v3/src/nonshared23/print.cc.jj 2025-05-06 15:48:48.662747956 +0200
++++ libstdc++-v3/src/nonshared23/print.cc 2025-05-06 15:48:48.662747956 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2023-2024 Free Software Foundation, Inc.
++// Copyright (C) 2023-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
@@ -6485,12 +6797,12 @@
+// .
+
+#include "../c++23/print.cc"
---- libstdc++-v3/src/nonshared23/Makefile.am.jj 2024-07-18 18:01:30.854341218 +0200
-+++ libstdc++-v3/src/nonshared23/Makefile.am 2024-07-18 18:09:02.177562059 +0200
-@@ -0,0 +1,112 @@
+--- libstdc++-v3/src/nonshared23/Makefile.am.jj 2025-05-06 15:48:48.663747943 +0200
++++ libstdc++-v3/src/nonshared23/Makefile.am 2025-05-06 16:12:16.549693528 +0200
+@@ -0,0 +1,114 @@
+## Makefile for the C++23 sources of the GNU C++ Standard library.
+##
-+## Copyright (C) 1997-2024 Free Software Foundation, Inc.
++## Copyright (C) 1997-2025 Free Software Foundation, Inc.
+##
+## This file is part of the libstdc++ version 3 distribution.
+## Process this file with automake to produce Makefile.in.
@@ -6514,7 +6826,8 @@
+
+# Convenience library for C++23 runtime.
+noinst_LTLIBRARIES = libnonshared23convenience80.la \
-+ libnonshared23convenience110.la
++ libnonshared23convenience110.la \
++ libnonshared23convenience140.la
+
+headers =
+
@@ -6532,6 +6845,7 @@
+
+libnonshared23convenience80_la_SOURCES = $(sources) $(inst_sources)
+libnonshared23convenience110_la_SOURCES = $(sources) $(inst_sources)
++libnonshared23convenience140_la_SOURCES = $(inst_sources)
+
+# Use C++26 so that std::filebuf::native_handle() is available.
+print80.lo: print80.cc
@@ -6600,9 +6914,9 @@
+ --mode=link $(CXX) \
+ $(VTV_CXXLINKFLAGS) \
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
---- libstdc++-v3/src/nonshared23/Makefile.in.jj 2024-07-18 18:01:36.210272635 +0200
-+++ libstdc++-v3/src/nonshared23/Makefile.in 2024-07-19 14:22:11.415880568 +0200
-@@ -0,0 +1,767 @@
+--- libstdc++-v3/src/nonshared23/Makefile.in.jj 2025-05-06 15:48:48.663747943 +0200
++++ libstdc++-v3/src/nonshared23/Makefile.in 2025-05-07 10:09:21.683442414 +0200
+@@ -0,0 +1,795 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
@@ -6736,6 +7050,10 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++libnonshared23convenience140_la_LIBADD =
++am_libnonshared23convenience140_la_OBJECTS = $(am__objects_2)
++libnonshared23convenience140_la_OBJECTS = \
++ $(am_libnonshared23convenience140_la_OBJECTS)
+libnonshared23convenience80_la_LIBADD =
+am_libnonshared23convenience80_la_OBJECTS = $(am__objects_1) \
+ $(am__objects_2)
@@ -6767,7 +7085,26 @@
+am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
++LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
++ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
++ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
++ $(AM_CFLAGS) $(CFLAGS)
++AM_V_CC = $(am__v_CC_@AM_V@)
++am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
++am__v_CC_0 = @echo " CC " $@;
++am__v_CC_1 =
++CCLD = $(CC)
++LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
++ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
++ $(AM_LDFLAGS) $(LDFLAGS) -o $@
++AM_V_CCLD = $(am__v_CCLD_@AM_V@)
++am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
++am__v_CCLD_0 = @echo " CCLD " $@;
++am__v_CCLD_1 =
+SOURCES = $(libnonshared23convenience110_la_SOURCES) \
++ $(libnonshared23convenience140_la_SOURCES) \
+ $(libnonshared23convenience80_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
@@ -7038,7 +7375,8 @@
+
+# Convenience library for C++23 runtime.
+noinst_LTLIBRARIES = libnonshared23convenience80.la \
-+ libnonshared23convenience110.la
++ libnonshared23convenience110.la \
++ libnonshared23convenience140.la
+
+headers =
+# XTEMPLATE_FLAGS =
@@ -7049,6 +7387,7 @@
+sources = stacktrace.cc print.cc
+libnonshared23convenience80_la_SOURCES = $(sources) $(inst_sources)
+libnonshared23convenience110_la_SOURCES = $(sources) $(inst_sources)
++libnonshared23convenience140_la_SOURCES = $(inst_sources)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -7162,6 +7501,9 @@
+libnonshared23convenience110.la: $(libnonshared23convenience110_la_OBJECTS) $(libnonshared23convenience110_la_DEPENDENCIES) $(EXTRA_libnonshared23convenience110_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared23convenience110_la_OBJECTS) $(libnonshared23convenience110_la_LIBADD) $(LIBS)
+
++libnonshared23convenience140.la: $(libnonshared23convenience140_la_OBJECTS) $(libnonshared23convenience140_la_DEPENDENCIES) $(EXTRA_libnonshared23convenience140_la_DEPENDENCIES)
++ $(AM_V_CCLD)$(LINK) $(libnonshared23convenience140_la_OBJECTS) $(libnonshared23convenience140_la_LIBADD) $(LIBS)
++
+libnonshared23convenience80.la: $(libnonshared23convenience80_la_OBJECTS) $(libnonshared23convenience80_la_DEPENDENCIES) $(EXTRA_libnonshared23convenience80_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared23convenience80_la_OBJECTS) $(libnonshared23convenience80_la_LIBADD) $(LIBS)
+
@@ -7370,8 +7712,8 @@
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
---- libstdc++-v3/src/c++17/floating_from_chars.cc.jj 2024-04-26 11:47:04.131142662 +0200
-+++ libstdc++-v3/src/c++17/floating_from_chars.cc 2024-07-18 16:10:38.337406609 +0200
+--- libstdc++-v3/src/c++17/floating_from_chars.cc.jj 2025-04-17 12:55:03.420609770 +0200
++++ libstdc++-v3/src/c++17/floating_from_chars.cc 2025-05-06 15:48:48.680747713 +0200
@@ -1225,6 +1225,7 @@ namespace
#if USE_LIB_FAST_FLOAT || USE_STRTOD_FOR_FROM_CHARS
@@ -7404,8 +7746,8 @@
#ifdef _GLIBCXX_LONG_DOUBLE_ALT128_COMPAT
from_chars_result
---- libstdc++-v3/src/c++17/floating_to_chars.cc.jj 2024-04-26 11:47:04.132142648 +0200
-+++ libstdc++-v3/src/c++17/floating_to_chars.cc 2024-07-18 16:10:38.337406609 +0200
+--- libstdc++-v3/src/c++17/floating_to_chars.cc.jj 2025-04-17 12:55:03.420609770 +0200
++++ libstdc++-v3/src/c++17/floating_to_chars.cc 2025-05-06 15:48:48.684747659 +0200
@@ -1767,6 +1767,7 @@ template
__builtin_unreachable();
}
@@ -7438,10 +7780,10 @@
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace std
---- libstdc++-v3/src/nonshared17/floating_from_chars.cc.jj 2024-07-18 16:10:38.337406609 +0200
-+++ libstdc++-v3/src/nonshared17/floating_from_chars.cc 2024-07-19 15:49:16.875331046 +0200
+--- libstdc++-v3/src/nonshared17/floating_from_chars.cc.jj 2025-05-06 15:48:48.684747659 +0200
++++ libstdc++-v3/src/nonshared17/floating_from_chars.cc 2025-05-06 15:48:48.684747659 +0200
@@ -0,0 +1,51 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -7492,10 +7834,10 @@
+#if !defined(__s390x__)
+asm (".hidden _ZSt10from_charsIiLi0EESt17from_chars_resultPKcS2_RT_i");
+#endif
---- libstdc++-v3/src/nonshared17/floating_from_chars110.cc.jj 2024-07-18 16:10:38.337406609 +0200
-+++ libstdc++-v3/src/nonshared17/floating_from_chars110.cc 2024-07-19 15:34:35.820500123 +0200
+--- libstdc++-v3/src/nonshared17/floating_from_chars110.cc.jj 2025-05-06 15:48:48.684747659 +0200
++++ libstdc++-v3/src/nonshared17/floating_from_chars110.cc 2025-05-06 15:48:48.684747659 +0200
@@ -0,0 +1,45 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -7540,10 +7882,10 @@
+#if defined(__aarch64__) || defined(__i386__)
+asm (".hidden _ZSt10from_charsIiLi0EESt17from_chars_resultPKcS2_RT_i");
+#endif
---- libstdc++-v3/src/nonshared17/cow-fs_ops.cc.jj 2024-07-18 16:10:38.337406609 +0200
-+++ libstdc++-v3/src/nonshared17/cow-fs_ops.cc 2024-07-19 15:47:53.954382206 +0200
-@@ -0,0 +1,82 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+--- libstdc++-v3/src/nonshared17/cow-fs_ops.cc.jj 2025-05-06 15:48:48.685747645 +0200
++++ libstdc++-v3/src/nonshared17/cow-fs_ops.cc 2025-05-07 08:24:39.541661744 +0200
+@@ -0,0 +1,83 @@
++// Copyright (C) 2019-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
@@ -7625,10 +7967,11 @@
+//asm (".hidden _ZSt4copyINSt10filesystem4path8iteratorESt15_Deque_iteratorIS1_RS1_PS1_EET0_T_S8_S7_");
+//asm (".hidden _ZNSs4swapERSs");
+#endif
---- libstdc++-v3/src/nonshared17/eh_call.cc.jj 2024-07-19 11:35:02.445197511 +0200
-+++ libstdc++-v3/src/nonshared17/eh_call.cc 2024-07-19 11:35:36.630752991 +0200
++asm (".hidden _ZNSt5dequeINSt10filesystem4pathESaIS1_EE6insertINS1_8iteratorEvEESt15_Deque_iteratorIS1_RS1_PS1_ES6_IS1_RKS1_PSA_ET_SE_");
+--- libstdc++-v3/src/nonshared17/eh_call.cc.jj 2025-05-06 15:48:48.685747645 +0200
++++ libstdc++-v3/src/nonshared17/eh_call.cc 2025-05-06 15:48:48.685747645 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2001-2024 Free Software Foundation, Inc.
++// Copyright (C) 2001-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
@@ -7651,12 +7994,12 @@
+// .
+
+#include "../../libsupc++/eh_call.cc"
---- libstdc++-v3/src/nonshared17/fs_dir110.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/fs_dir110.cc 2024-07-18 18:09:02.178562046 +0200
+--- libstdc++-v3/src/nonshared17/fs_dir110.cc.jj 2025-05-06 15:48:48.685747645 +0200
++++ libstdc++-v3/src/nonshared17/fs_dir110.cc 2025-05-06 15:48:48.685747645 +0200
@@ -0,0 +1,41 @@
+// Class filesystem::directory_entry etc. -*- C++ -*-
+
-+// Copyright (C) 2014-2024 Free Software Foundation, Inc.
++// Copyright (C) 2014-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
@@ -7695,10 +8038,10 @@
+std::__shared_ptr::operator bool () const noexcept;
+template
+std::__shared_ptr::operator bool () const noexcept;
---- libstdc++-v3/src/nonshared17/cow-fs_path.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/cow-fs_path.cc 2024-07-19 14:12:26.274350384 +0200
-@@ -0,0 +1,132 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+--- libstdc++-v3/src/nonshared17/cow-fs_path.cc.jj 2025-05-06 15:48:48.685747645 +0200
++++ libstdc++-v3/src/nonshared17/cow-fs_path.cc 2025-05-07 08:25:37.285870805 +0200
+@@ -0,0 +1,134 @@
++// Copyright (C) 2019-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
@@ -7764,8 +8107,8 @@
+asm (".hidden _ZNSt10filesystem16filesystem_error5_Impl9make_whatESt17basic_string_viewIcSt11char_traitsIcEEPKNS_4pathES8_");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED1Ev");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem4path5_List5_ImplENS2_13_Impl_deleterEED2Ev");
-+asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKSs");
-+asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKSs");
++//asm (".hidden _ZNSt12system_errorC1ESt10error_codeRKSs");
++//asm (".hidden _ZNSt12system_errorC2ESt10error_codeRKSs");
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem16filesystem_error5_ImplESaIS3_ELN9__gnu_cxx12_Lock_policyE2EEEED1Ev");
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem16filesystem_error5_ImplESaIS3_ELN9__gnu_cxx12_Lock_policyE2EEEED2Ev");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem16filesystem_error5_ImplESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev");
@@ -7777,7 +8120,7 @@
+//asm (".hidden _ZZNSt10filesystem4path10_S_convertIwEEDaPKT_S4_EN5_UCvtD0Ev");
+//asm (".hidden _ZZNSt10filesystem4path10_S_convertIwEEDaPKT_S4_EN5_UCvtD1Ev");
+//asm (".hidden _ZZNSt10filesystem4path10_S_convertIwEEDaPKT_S4_EN5_UCvtD2Ev");
-+asm (".hidden _ZNKSt10filesystem4path5_List5_Impl4copyEv");
++//asm (".hidden _ZNKSt10filesystem4path5_List5_Impl4copyEv");
+//asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv");
+//asm (".hidden _ZNSs12_M_leak_hardEv");
+//asm (".hidden _ZNSs4swapERSs");
@@ -7828,12 +8171,14 @@
+asm (".hidden _ZTVNSt10filesystem4path8_CodecvtIwEE");
+asm (".hidden _ZTVSt12codecvt_utf8IwLm1114111ELSt12codecvt_mode0EE");
+//asm (".hidden _ZNSt12_Destroy_auxILb0EE9__destroyIPNSt10filesystem4path5_CmptEEEvT_S6_");
-+asm (".hidden _ZNSt10filesystem4path5_CmptD1Ev");
-+asm (".hidden _ZNSt10filesystem4path5_CmptD2Ev");
---- libstdc++-v3/src/nonshared17/memory_resource.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/memory_resource.cc 2024-07-19 15:51:23.442726588 +0200
++//asm (".hidden _ZNSt10filesystem4path5_CmptD1Ev");
++//asm (".hidden _ZNSt10filesystem4path5_CmptD2Ev");
++asm (".hidden _ZNSt19_UninitDestroyGuardIPNSt10filesystem4path5_CmptEvED1Ev");
++asm (".hidden _ZNSt19_UninitDestroyGuardIPNSt10filesystem4path5_CmptEvED2Ev");
+--- libstdc++-v3/src/nonshared17/memory_resource.cc.jj 2025-05-06 15:48:48.686747631 +0200
++++ libstdc++-v3/src/nonshared17/memory_resource.cc 2025-05-06 17:56:26.131017045 +0200
@@ -0,0 +1,75 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -7905,13 +8250,13 @@
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIIRjS7_EEEvDpOT_");
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIJRjS7_EEEvDpOT_");
+#else
-+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIIRmS7_EEEvDpOT_");
++//asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIIRmS7_EEEvDpOT_");
+asm (".hidden _ZNSt6vectorINSt3pmr15__pool_resource9_BigBlockENS0_21polymorphic_allocatorIS2_EEE17_M_realloc_appendIJRmS7_EEEvDpOT_");
+#endif
---- libstdc++-v3/src/nonshared17/fs_dir.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/fs_dir.cc 2024-07-19 11:00:30.596051426 +0200
+--- libstdc++-v3/src/nonshared17/fs_dir.cc.jj 2025-05-06 15:48:48.686747631 +0200
++++ libstdc++-v3/src/nonshared17/fs_dir.cc 2025-05-07 08:16:13.911587479 +0200
@@ -0,0 +1,103 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -7976,8 +8321,8 @@
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx114_DirESaIS2_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx114_DirESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED0Ev");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx114_DirESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED1Ev");
-+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE12emplace_backIIS2_EEERS2_DpOT_");
-+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE12emplace_backIJS2_EEERS2_DpOT_");
++//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE12emplace_backIIS2_EEERS2_DpOT_");
++//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE12emplace_backIJS2_EEERS2_DpOT_");
+//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE16_M_push_back_auxIIRP11__dirstreamRKNS1_4pathEEEEvDpOT_");
+//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE16_M_push_back_auxIJRP11__dirstreamRKNS1_4pathEEEEvDpOT_");
+asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EED1Ev");
@@ -8000,7 +8345,7 @@
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx114_DirESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev");
+#ifndef __i386__
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
-+//asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE17_M_reallocate_mapEmb");
++asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114_DirESaIS2_EE17_M_reallocate_mapEmb");
+#endif
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED1Ev");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
@@ -8014,10 +8359,10 @@
+//asm (".hidden _ZNKSt10filesystem7__cxx114_Dir7currentEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114_DirC1ERKNS0_4pathEbbbRSt10error_code");
+//asm (".hidden _ZNSt10filesystem7__cxx114_DirC2ERKNS0_4pathEbbbRSt10error_code");
---- libstdc++-v3/src/nonshared17/fs_ops80.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/fs_ops80.cc 2024-07-19 15:49:59.793786981 +0200
-@@ -0,0 +1,103 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+--- libstdc++-v3/src/nonshared17/fs_ops80.cc.jj 2025-05-06 15:48:48.686747631 +0200
++++ libstdc++-v3/src/nonshared17/fs_ops80.cc 2025-05-07 08:26:54.435814071 +0200
+@@ -0,0 +1,105 @@
++// Copyright (C) 2019-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
@@ -8120,10 +8465,12 @@
+#else
+asm (".hidden _ZNSt10filesystem18copy_file_sendfileEiim");
+#endif
---- libstdc++-v3/src/nonshared17/fs_path80.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/fs_path80.cc 2024-07-19 13:52:03.082942673 +0200
-@@ -0,0 +1,160 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++asm (".hidden _ZNSt10filesystem11equiv_filesEPKcRK4statS1_S4_RSt10error_code");
++asm (".hidden _ZNSt5dequeINSt10filesystem7__cxx114pathESaIS2_EE6insertINS2_8iteratorEvEESt15_Deque_iteratorIS2_RS2_PS2_ES7_IS2_RKS2_PSB_ET_SF_");
+--- libstdc++-v3/src/nonshared17/fs_path80.cc.jj 2025-05-06 15:48:48.686747631 +0200
++++ libstdc++-v3/src/nonshared17/fs_path80.cc 2025-05-07 08:27:23.223419752 +0200
+@@ -0,0 +1,162 @@
++// Copyright (C) 2019-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
@@ -8188,8 +8535,8 @@
+asm (".hidden _ZTVSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1116filesystem_error5_ImplESaIS3_ELN9__gnu_cxx12_Lock_policyE2EE");
+asm (".hidden _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag");
+asm (".hidden _ZNSt10filesystem7__cxx1116filesystem_error5_Impl9make_whatESt17basic_string_viewIcSt11char_traitsIcEEPKNS0_4pathES9_");
-+asm (".hidden _ZNSt10filesystem7__cxx114path5_CmptD1Ev");
-+asm (".hidden _ZNSt10filesystem7__cxx114path5_CmptD2Ev");
++//asm (".hidden _ZNSt10filesystem7__cxx114path5_CmptD1Ev");
++//asm (".hidden _ZNSt10filesystem7__cxx114path5_CmptD2Ev");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED1Ev");
+asm (".hidden _ZNSt10unique_ptrINSt10filesystem7__cxx114path5_List5_ImplENS3_13_Impl_deleterEED2Ev");
+asm (".hidden _ZNSt15__allocated_ptrISaISt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1116filesystem_error5_ImplESaIS4_ELN9__gnu_cxx12_Lock_policyE2EEEED1Ev");
@@ -8208,10 +8555,10 @@
+//asm (".hidden _ZZNSt10filesystem7__cxx114path10_S_convertIwEEDaPKT_S5_EN5_UCvtD2Ev");
+asm (".hidden _ZNSt10filesystem7__cxx118__detail24__throw_conversion_errorEv");
+#ifdef __powerpc64__
-+asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
++//asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
+#endif
+//asm (".hidden _ZNSt12_Destroy_auxILb0EE9__destroyIPNSt10filesystem7__cxx114path5_CmptEEEvT_S7_");
-+asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
++//asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
+#if defined(__aarch64__) || defined(__s390x__)
+//asm (".hidden _ZNSt10filesystem7__cxx114path5_List5beginEv");
+//asm (".hidden _ZNSt10filesystem7__cxx114path7_Parser4nextEv");
@@ -8247,7 +8594,7 @@
+//asm (".hidden _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE9_M_mutateEmmPKcm");
+//asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+//asm (".hidden _ZNSt12_Destroy_auxILb0EE9__destroyIPNSt10filesystem7__cxx114path5_CmptEEEvT_S7_");
-+asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
++//asm (".hidden _ZNKSt10filesystem7__cxx114path5_List5_Impl4copyEv");
+#endif
+#if defined(__aarch64__) || defined(__x86_64__)
+//asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_mutateEmmPKwm");
@@ -8283,10 +8630,12 @@
+asm (".hidden _ZNSt10filesystem7__cxx114path10_S_convertIwEEDaPKT_S5_");
+asm (".hidden _ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag");
+asm (".hidden _ZNSt10filesystem7__cxx114path19preferred_separatorE");
---- libstdc++-v3/src/nonshared17/cow-fs_dir.cc.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/cow-fs_dir.cc 2024-07-19 10:55:08.223216551 +0200
++asm (".hidden _ZNSt19_UninitDestroyGuardIPNSt10filesystem7__cxx114path5_CmptEvED1Ev");
++asm (".hidden _ZNSt19_UninitDestroyGuardIPNSt10filesystem7__cxx114path5_CmptEvED2Ev");
+--- libstdc++-v3/src/nonshared17/cow-fs_dir.cc.jj 2025-05-06 15:48:48.687747618 +0200
++++ libstdc++-v3/src/nonshared17/cow-fs_dir.cc 2025-05-07 08:16:13.899587643 +0200
@@ -0,0 +1,107 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -8349,8 +8698,8 @@
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem4_DirESaIS1_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem4_DirESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED0Ev");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem4_DirESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED1Ev");
-+asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
-+asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
++//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE12emplace_backIIS1_EEERS1_DpOT_");
++//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE12emplace_backIJS1_EEERS1_DpOT_");
+//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE16_M_push_back_auxIIRP11__dirstreamRKNS0_4pathEEEEvDpOT_");
+//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE16_M_push_back_auxIJRP11__dirstreamRKNS0_4pathEEEEvDpOT_");
+asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EED1Ev");
@@ -8374,7 +8723,7 @@
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem28recursive_directory_iterator10_Dir_stackESaIS2_ELN9__gnu_cxx12_Lock_policyE2EED2Ev");
+asm (".hidden _ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem4_DirESaIS1_ELN9__gnu_cxx12_Lock_policyE2EED2Ev");
+#ifndef __i386__
-+//asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE17_M_reallocate_mapEmb");
++asm (".hidden _ZNSt5dequeINSt10filesystem4_DirESaIS1_EE17_M_reallocate_mapEmb");
+asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE24_M_release_last_use_coldEv");
+#endif
+#ifndef __powerpc64__
@@ -8393,12 +8742,12 @@
+//asm (".hidden _ZNSt10filesystem4pathD1Ev");
+//asm (".hidden _ZNSt10filesystem4pathD2Ev");
+//asm (".hidden _ZNKSt10filesystem4_Dir7currentEv");
---- libstdc++-v3/src/nonshared17/Makefile.am.jj 2024-07-18 16:10:38.338406596 +0200
-+++ libstdc++-v3/src/nonshared17/Makefile.am 2024-07-19 13:32:17.104230472 +0200
-@@ -0,0 +1,146 @@
+--- libstdc++-v3/src/nonshared17/Makefile.am.jj 2025-05-06 15:48:48.687747618 +0200
++++ libstdc++-v3/src/nonshared17/Makefile.am 2025-05-06 16:10:20.603262671 +0200
+@@ -0,0 +1,155 @@
+## Makefile for the C++17 sources of the GNU C++ Standard library.
+##
-+## Copyright (C) 1997-2024 Free Software Foundation, Inc.
++## Copyright (C) 1997-2025 Free Software Foundation, Inc.
+##
+## This file is part of the libstdc++ version 3 distribution.
+## Process this file with automake to produce Makefile.in.
@@ -8422,24 +8771,29 @@
+
+# Convenience library for C++17 runtime.
+noinst_LTLIBRARIES = libnonshared17convenience80.la \
-+ libnonshared17convenience110.la
++ libnonshared17convenience110.la \
++ libnonshared17convenience140.la
+
+headers =
+
+if ENABLE_DUAL_ABI
+extra_string_inst_sources80 = cow-string-inst.cc
+extra_string_inst_sources110 = cow-string-inst110.cc
++extra_string_inst_sources140 =
+extra_fs_sources80 = \
+ cow-fs_dir.cc \
+ cow-fs_ops.cc \
+ cow-fs_path.cc
+extra_fs_sources110 = \
+ cow-fs_dir110.cc
++extra_fs_sources140 =
+else
+extra_string_inst_sources80 =
+extra_string_inst_sources110 =
++extra_string_inst_sources140 =
+extra_fs_sources80 =
+extra_fs_sources110 =
++extra_fs_sources140 =
+endif
+
+if ENABLE_EXTERN_TEMPLATE
@@ -8452,10 +8806,12 @@
+ ostream-inst110.cc \
+ string-inst110.cc \
+ $(extra_string_inst_sources110)
++inst_sources140 =
+else
+# XTEMPLATE_FLAGS =
+inst_sources80 =
+inst_sources110 =
++inst_sources140 =
+endif
+
+sources80 = \
@@ -8475,11 +8831,13 @@
+ floating_from_chars110.cc \
+ floating_to_chars110.cc \
+ $(extra_fs_sources110)
++sources140 =
+
+vpath % $(top_srcdir)/src/nonshared17
+
+libnonshared17convenience80_la_SOURCES = $(sources80) $(inst_sources80)
+libnonshared17convenience110_la_SOURCES = $(sources110) $(inst_sources110)
++libnonshared17convenience140_la_SOURCES = $(sources140) $(inst_sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -8542,10 +8900,10 @@
+ --mode=link $(CXX) \
+ $(VTV_CXXLINKFLAGS) \
+ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@
---- libstdc++-v3/src/nonshared17/cow-string-inst.cc.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/cow-string-inst.cc 2024-07-18 18:09:02.181562008 +0200
+--- libstdc++-v3/src/nonshared17/cow-string-inst.cc.jj 2025-05-06 15:48:48.687747618 +0200
++++ libstdc++-v3/src/nonshared17/cow-string-inst.cc 2025-05-06 15:48:48.687747618 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -8568,9 +8926,9 @@
+// .
+
+#include "../c++17/cow-string-inst.cc"
---- libstdc++-v3/src/nonshared17/Makefile.in.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/Makefile.in 2024-07-19 14:22:11.377881054 +0200
-@@ -0,0 +1,817 @@
+--- libstdc++-v3/src/nonshared17/Makefile.in.jj 2025-05-06 15:48:48.688747604 +0200
++++ libstdc++-v3/src/nonshared17/Makefile.in 2025-05-07 10:09:21.643442963 +0200
+@@ -0,0 +1,854 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
@@ -8710,17 +9068,23 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++libnonshared17convenience140_la_LIBADD =
++am__objects_5 =
++am_libnonshared17convenience140_la_OBJECTS = $(am__objects_5) \
++ $(am__objects_5)
++libnonshared17convenience140_la_OBJECTS = \
++ $(am_libnonshared17convenience140_la_OBJECTS)
+libnonshared17convenience80_la_LIBADD =
-+@ENABLE_DUAL_ABI_TRUE@am__objects_5 = cow-fs_dir.lo cow-fs_ops.lo \
++@ENABLE_DUAL_ABI_TRUE@am__objects_6 = cow-fs_dir.lo cow-fs_ops.lo \
+@ENABLE_DUAL_ABI_TRUE@ cow-fs_path.lo
-+am__objects_6 = eh_call.lo eh_terminate.lo floating_from_chars.lo \
++am__objects_7 = eh_call.lo eh_terminate.lo floating_from_chars.lo \
+ floating_to_chars.lo fs_dir.lo memory_resource.lo fs_path80.lo \
-+ fs_ops80.lo $(am__objects_5)
-+@ENABLE_DUAL_ABI_TRUE@am__objects_7 = cow-string-inst.lo
-+@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_8 = ostream-inst.lo \
-+@ENABLE_EXTERN_TEMPLATE_TRUE@ string-inst.lo $(am__objects_7)
-+am_libnonshared17convenience80_la_OBJECTS = $(am__objects_6) \
-+ $(am__objects_8)
++ fs_ops80.lo $(am__objects_6)
++@ENABLE_DUAL_ABI_TRUE@am__objects_8 = cow-string-inst.lo
++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_9 = ostream-inst.lo \
++@ENABLE_EXTERN_TEMPLATE_TRUE@ string-inst.lo $(am__objects_8)
++am_libnonshared17convenience80_la_OBJECTS = $(am__objects_7) \
++ $(am__objects_9)
+libnonshared17convenience80_la_OBJECTS = \
+ $(am_libnonshared17convenience80_la_OBJECTS)
+AM_V_P = $(am__v_P_@AM_V@)
@@ -8749,7 +9113,26 @@
+am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
+am__v_CXXLD_0 = @echo " CXXLD " $@;
+am__v_CXXLD_1 =
++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
++LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
++ $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
++ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
++ $(AM_CFLAGS) $(CFLAGS)
++AM_V_CC = $(am__v_CC_@AM_V@)
++am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
++am__v_CC_0 = @echo " CC " $@;
++am__v_CC_1 =
++CCLD = $(CC)
++LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
++ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
++ $(AM_LDFLAGS) $(LDFLAGS) -o $@
++AM_V_CCLD = $(am__v_CCLD_@AM_V@)
++am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
++am__v_CCLD_0 = @echo " CCLD " $@;
++am__v_CCLD_1 =
+SOURCES = $(libnonshared17convenience110_la_SOURCES) \
++ $(libnonshared17convenience140_la_SOURCES) \
+ $(libnonshared17convenience80_la_SOURCES)
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
@@ -9020,13 +9403,16 @@
+
+# Convenience library for C++17 runtime.
+noinst_LTLIBRARIES = libnonshared17convenience80.la \
-+ libnonshared17convenience110.la
++ libnonshared17convenience110.la \
++ libnonshared17convenience140.la
+
+headers =
+@ENABLE_DUAL_ABI_FALSE@extra_string_inst_sources80 =
+@ENABLE_DUAL_ABI_TRUE@extra_string_inst_sources80 = cow-string-inst.cc
+@ENABLE_DUAL_ABI_FALSE@extra_string_inst_sources110 =
+@ENABLE_DUAL_ABI_TRUE@extra_string_inst_sources110 = cow-string-inst110.cc
++@ENABLE_DUAL_ABI_FALSE@extra_string_inst_sources140 =
++@ENABLE_DUAL_ABI_TRUE@extra_string_inst_sources140 =
+@ENABLE_DUAL_ABI_FALSE@extra_fs_sources80 =
+@ENABLE_DUAL_ABI_TRUE@extra_fs_sources80 = \
+@ENABLE_DUAL_ABI_TRUE@ cow-fs_dir.cc \
@@ -9037,6 +9423,8 @@
+@ENABLE_DUAL_ABI_TRUE@extra_fs_sources110 = \
+@ENABLE_DUAL_ABI_TRUE@ cow-fs_dir110.cc
+
++@ENABLE_DUAL_ABI_FALSE@extra_fs_sources140 =
++@ENABLE_DUAL_ABI_TRUE@extra_fs_sources140 =
+# XTEMPLATE_FLAGS =
+@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources80 =
+
@@ -9052,6 +9440,8 @@
+@ENABLE_EXTERN_TEMPLATE_TRUE@ string-inst110.cc \
+@ENABLE_EXTERN_TEMPLATE_TRUE@ $(extra_string_inst_sources110)
+
++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources140 =
++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources140 =
+sources80 = \
+ eh_call.cc \
+ eh_terminate.cc \
@@ -9071,8 +9461,10 @@
+ floating_to_chars110.cc \
+ $(extra_fs_sources110)
+
++sources140 =
+libnonshared17convenience80_la_SOURCES = $(sources80) $(inst_sources80)
+libnonshared17convenience110_la_SOURCES = $(sources110) $(inst_sources110)
++libnonshared17convenience140_la_SOURCES = $(sources140) $(inst_sources140)
+
+# AM_CXXFLAGS needs to be in each subdirectory so that it can be
+# modified in a per-library or per-sub-library way. Need to manually
@@ -9186,6 +9578,9 @@
+libnonshared17convenience110.la: $(libnonshared17convenience110_la_OBJECTS) $(libnonshared17convenience110_la_DEPENDENCIES) $(EXTRA_libnonshared17convenience110_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared17convenience110_la_OBJECTS) $(libnonshared17convenience110_la_LIBADD) $(LIBS)
+
++libnonshared17convenience140.la: $(libnonshared17convenience140_la_OBJECTS) $(libnonshared17convenience140_la_DEPENDENCIES) $(EXTRA_libnonshared17convenience140_la_DEPENDENCIES)
++ $(AM_V_CCLD)$(LINK) $(libnonshared17convenience140_la_OBJECTS) $(libnonshared17convenience140_la_LIBADD) $(LIBS)
++
+libnonshared17convenience80.la: $(libnonshared17convenience80_la_OBJECTS) $(libnonshared17convenience80_la_DEPENDENCIES) $(EXTRA_libnonshared17convenience80_la_DEPENDENCIES)
+ $(AM_V_CXXLD)$(CXXLINK) $(libnonshared17convenience80_la_OBJECTS) $(libnonshared17convenience80_la_LIBADD) $(LIBS)
+
@@ -9388,10 +9783,10 @@
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
---- libstdc++-v3/src/nonshared17/ostream-inst110.cc.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/ostream-inst110.cc 2024-07-18 18:09:02.181562008 +0200
+--- libstdc++-v3/src/nonshared17/ostream-inst110.cc.jj 2025-05-06 15:48:48.688747604 +0200
++++ libstdc++-v3/src/nonshared17/ostream-inst110.cc 2025-05-06 15:48:48.688747604 +0200
@@ -0,0 +1,25 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -9416,10 +9811,10 @@
+#include "../c++17/ostream-inst.cc"
+asm (".hidden _ZNSolsEDn");
+asm (".hidden _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEDn");
---- libstdc++-v3/src/nonshared17/ostream-inst.cc.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/ostream-inst.cc 2024-07-18 18:09:02.182561995 +0200
+--- libstdc++-v3/src/nonshared17/ostream-inst.cc.jj 2025-05-06 15:48:48.688747604 +0200
++++ libstdc++-v3/src/nonshared17/ostream-inst.cc 2025-05-06 15:48:48.688747604 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -9442,10 +9837,10 @@
+// .
+
+#include "../c++17/ostream-inst.cc"
---- libstdc++-v3/src/nonshared17/floating_to_chars.cc.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/floating_to_chars.cc 2024-07-19 15:49:40.815027569 +0200
-@@ -0,0 +1,100 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+--- libstdc++-v3/src/nonshared17/floating_to_chars.cc.jj 2025-05-06 15:48:48.689747591 +0200
++++ libstdc++-v3/src/nonshared17/floating_to_chars.cc 2025-05-07 08:26:03.148516563 +0200
+@@ -0,0 +1,101 @@
++// Copyright (C) 2019-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
@@ -9544,11 +9939,12 @@
+#endif
+#if !defined(__i386__) && !defined(__s390x__)
+asm (".hidden _ZSt12__to_chars_iIoESt15to_chars_resultPcS1_T_i");
++asm (".hidden _ZSt13__countl_zeroIoEiT_");
+#endif
---- libstdc++-v3/src/nonshared17/cow-string-inst110.cc.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/cow-string-inst110.cc 2024-07-18 18:09:02.183561982 +0200
+--- libstdc++-v3/src/nonshared17/cow-string-inst110.cc.jj 2025-05-06 15:48:48.689747591 +0200
++++ libstdc++-v3/src/nonshared17/cow-string-inst110.cc 2025-05-06 15:48:48.689747591 +0200
@@ -0,0 +1,37 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -9585,10 +9981,10 @@
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE17_S_to_string_viewESt17basic_string_viewIwS0_E");
+asm (".hidden _ZNKSbIwSt11char_traitsIwESaIwEEcvSt17basic_string_viewIwS0_EEv");
+asm (".hidden _ZNSbIwSt11char_traitsIwESaIwEE4dataEv");
---- libstdc++-v3/src/nonshared17/string-inst.cc.jj 2024-07-18 16:10:38.339406584 +0200
-+++ libstdc++-v3/src/nonshared17/string-inst.cc 2024-07-18 18:09:02.183561982 +0200
+--- libstdc++-v3/src/nonshared17/string-inst.cc.jj 2025-05-06 15:48:48.689747591 +0200
++++ libstdc++-v3/src/nonshared17/string-inst.cc 2025-05-06 15:48:48.689747591 +0200
@@ -0,0 +1,23 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -9611,11 +10007,11 @@
+// .
+
+#include "../c++17/string-inst.cc"
---- libstdc++-v3/src/nonshared17/eh_terminate.cc.jj 2024-07-19 11:45:03.202401850 +0200
-+++ libstdc++-v3/src/nonshared17/eh_terminate.cc 2024-07-19 14:04:39.331272629 +0200
+--- libstdc++-v3/src/nonshared17/eh_terminate.cc.jj 2025-05-06 15:48:48.689747591 +0200
++++ libstdc++-v3/src/nonshared17/eh_terminate.cc 2025-05-06 15:48:48.689747591 +0200
@@ -0,0 +1,46 @@
+// -*- C++ -*- std::terminate, std::unexpected and friends.
-+// Copyright (C) 1994-2024 Free Software Foundation, Inc.
++// Copyright (C) 1994-2025 Free Software Foundation, Inc.
+//
+// This file is part of GCC.
+//
@@ -9660,10 +10056,10 @@
+}
+
+asm (".hidden _ZN10__cxxabiv111__terminateEPFvvE");
---- libstdc++-v3/src/nonshared17/floating_to_chars110.cc.jj 2024-07-18 16:10:38.340406571 +0200
-+++ libstdc++-v3/src/nonshared17/floating_to_chars110.cc 2024-07-19 15:12:46.701074973 +0200
-@@ -0,0 +1,41 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
+--- libstdc++-v3/src/nonshared17/floating_to_chars110.cc.jj 2025-05-06 15:48:48.689747591 +0200
++++ libstdc++-v3/src/nonshared17/floating_to_chars110.cc 2025-05-07 08:27:48.480073807 +0200
+@@ -0,0 +1,42 @@
++// Copyright (C) 2019-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
@@ -9698,16 +10094,17 @@
+#endif
+#if !defined(__i386__) && !defined(__s390x__)
+asm (".hidden _ZSt12__to_chars_iIoESt15to_chars_resultPcS1_T_i");
++asm (".hidden _ZSt13__countl_zeroIoEiT_");
+#endif
+#if defined(__powerpc64__)
+asm (".hidden _ZSt8to_charsPcS_u9__ieee128");
+asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_format");
+asm (".hidden _ZSt8to_charsPcS_u9__ieee128St12chars_formati");
+#endif
---- libstdc++-v3/src/nonshared17/string-inst110.cc.jj 2024-07-18 16:10:38.340406571 +0200
-+++ libstdc++-v3/src/nonshared17/string-inst110.cc 2024-07-18 18:09:02.183561982 +0200
+--- libstdc++-v3/src/nonshared17/string-inst110.cc.jj 2025-05-06 15:48:48.690747577 +0200
++++ libstdc++-v3/src/nonshared17/string-inst110.cc 2025-05-06 15:48:48.690747577 +0200
@@ -0,0 +1,37 @@
-+// Copyright (C) 2019-2024 Free Software Foundation, Inc.
++// Copyright (C) 2019-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
@@ -9744,12 +10141,12 @@
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE17_S_to_string_viewESt17basic_string_viewIwS2_E");
+asm (".hidden _ZNKSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEcvSt17basic_string_viewIwS2_EEv");
+asm (".hidden _ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE4dataEv");
---- libstdc++-v3/src/nonshared17/cow-fs_dir110.cc.jj 2024-07-18 16:10:38.340406571 +0200
-+++ libstdc++-v3/src/nonshared17/cow-fs_dir110.cc 2024-07-18 18:09:02.184561969 +0200
+--- libstdc++-v3/src/nonshared17/cow-fs_dir110.cc.jj 2025-05-06 15:48:48.690747577 +0200
++++ libstdc++-v3/src/nonshared17/cow-fs_dir110.cc 2025-05-06 15:48:48.690747577 +0200
@@ -0,0 +1,26 @@
+// Class filesystem::directory_entry etc. -*- C++ -*-
+
-+// Copyright (C) 2015-2024 Free Software Foundation, Inc.
++// Copyright (C) 2015-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
@@ -9773,8 +10170,8 @@
+
+#define _GLIBCXX_USE_CXX11_ABI 0
+#include "fs_dir110.cc"
---- libstdc++-v3/src/Makefile.am.jj 2024-04-26 11:47:04.123142773 +0200
-+++ libstdc++-v3/src/Makefile.am 2024-07-18 16:13:20.385334523 +0200
+--- libstdc++-v3/src/Makefile.am.jj 2025-04-17 12:55:03.406609952 +0200
++++ libstdc++-v3/src/Makefile.am 2025-05-06 15:50:18.357534111 +0200
@@ -44,7 +44,8 @@ endif
## Keep this list sync'd with acinclude.m4:GLIBCXX_CONFIGURE.
@@ -9785,17 +10182,18 @@
# Cross compiler support.
if VTV_CYGMIN
-@@ -53,6 +54,9 @@ else
+@@ -53,6 +54,10 @@ else
toolexeclib_LTLIBRARIES = libstdc++.la
endif
+noinst_LTLIBRARIES = libstdc++_nonshared80.la \
-+ libstdc++_nonshared110.la
++ libstdc++_nonshared110.la \
++ libstdc++_nonshared140.la
+
if VTV_CYGMIN
vtv_stubs.cc:
rm -f $@
-@@ -120,6 +124,33 @@ endif
+@@ -120,6 +125,47 @@ endif
parallel_compat_sources = \
compatibility-parallel_list.cc compatibility-parallel_list-2.cc
@@ -9826,11 +10224,25 @@
+ $(top_builddir)/src/nonshared11/libnonshared11convenience110.la \
+ $(top_builddir)/src/nonshared17/libnonshared17convenience110.la \
+ $(top_builddir)/src/nonshared20/libnonshared20convenience110.la
++
++libstdc___nonshared140_la_SOURCES =
++
++libstdc___nonshared140_la_LIBADD = \
++ $(top_builddir)/src/nonshared98/libnonshared98convenience140.la \
++ $(top_builddir)/src/nonshared11/libnonshared11convenience140.la \
++ $(top_builddir)/src/nonshared17/libnonshared17convenience140.la \
++ $(top_builddir)/src/nonshared20/libnonshared20convenience140.la
++
++libstdc___nonshared140_la_DEPENDENCIES = \
++ $(top_builddir)/src/nonshared98/libnonshared98convenience140.la \
++ $(top_builddir)/src/nonshared11/libnonshared11convenience140.la \
++ $(top_builddir)/src/nonshared17/libnonshared17convenience140.la \
++ $(top_builddir)/src/nonshared20/libnonshared20convenience140.la
cxx98_sources = \
compatibility.cc \
---- libstdc++-v3/src/Makefile.in.jj 2024-04-26 11:47:04.123142773 +0200
-+++ libstdc++-v3/src/Makefile.in 2024-07-19 14:22:11.147883997 +0200
+--- libstdc++-v3/src/Makefile.in.jj 2025-04-17 12:55:03.407609939 +0200
++++ libstdc++-v3/src/Makefile.in 2025-05-07 10:09:21.407446197 +0200
@@ -147,7 +147,7 @@ am__uninstall_files_from_dir = { \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
@@ -9840,7 +10252,7 @@
am__DEPENDENCIES_1 =
@GLIBCXX_LDBL_COMPAT_TRUE@am__objects_1 = compatibility-ldbl.lo
am__objects_2 = compatibility.lo compatibility-debug_list.lo \
-@@ -167,6 +167,16 @@ am__objects_6 = $(am__objects_3) $(am__o
+@@ -167,6 +167,19 @@ am__objects_6 = $(am__objects_3) $(am__o
libstdc___la_OBJECTS = $(am_libstdc___la_OBJECTS)
@VTV_CYGMIN_FALSE@am_libstdc___la_rpath = -rpath $(toolexeclibdir)
@VTV_CYGMIN_TRUE@am_libstdc___la_rpath = -rpath $(toolexeclibdir)
@@ -9851,13 +10263,16 @@
+am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
+am__v_lt_0 = --silent
+am__v_lt_1 =
++am_libstdc___nonshared140_la_OBJECTS =
++libstdc___nonshared140_la_OBJECTS = \
++ $(am_libstdc___nonshared140_la_OBJECTS)
+am_libstdc___nonshared80_la_OBJECTS =
+libstdc___nonshared80_la_OBJECTS = \
+ $(am_libstdc___nonshared80_la_OBJECTS)
libvtv_la_LIBADD =
@VTV_CYGMIN_TRUE@am_libvtv_la_OBJECTS = vtv_stubs.lo
libvtv_la_OBJECTS = $(am_libvtv_la_OBJECTS)
-@@ -188,10 +198,6 @@ depcomp =
+@@ -188,10 +201,6 @@ depcomp =
am__depfiles_maybe =
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
@@ -9868,7 +10283,7 @@
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
-@@ -201,7 +207,26 @@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
+@@ -201,7 +210,27 @@ AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
@@ -9892,11 +10307,12 @@
+am__v_CCLD_0 = @echo " CCLD " $@;
+am__v_CCLD_1 =
+SOURCES = $(libstdc___la_SOURCES) $(libstdc___nonshared110_la_SOURCES) \
++ $(libstdc___nonshared140_la_SOURCES) \
+ $(libstdc___nonshared80_la_SOURCES) $(libvtv_la_SOURCES)
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
ctags-recursive dvi-recursive html-recursive info-recursive \
install-data-recursive install-dvi-recursive \
-@@ -242,7 +267,8 @@ am__define_uniq_tagged_files = \
+@@ -242,7 +271,8 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = c++98 c++11 c++17 c++20 c++23 c++26 filesystem \
@@ -9906,7 +10322,7 @@
ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@
ACLOCAL = @ACLOCAL@
ALLOCATOR_H = @ALLOCATOR_H@
-@@ -266,6 +292,8 @@ BACKTRACE_USES_MALLOC = @BACKTRACE_USES_
+@@ -266,6 +296,8 @@ BACKTRACE_USES_MALLOC = @BACKTRACE_USES_
BASIC_FILE_CC = @BASIC_FILE_CC@
BASIC_FILE_H = @BASIC_FILE_H@
CC = @CC@
@@ -9915,7 +10331,7 @@
CCODECVT_CC = @CCODECVT_CC@
CCOLLATE_CC = @CCOLLATE_CC@
CCTYPE_CC = @CCTYPE_CC@
-@@ -492,12 +520,16 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPF
+@@ -492,12 +524,17 @@ AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPF
@GLIBCXX_HOSTED_FALSE@experimental_dir =
@GLIBCXX_HOSTED_TRUE@experimental_dir = experimental
SUBDIRS = c++98 c++11 c++17 c++20 c++23 c++26 \
@@ -9928,12 +10344,13 @@
# Cross compiler support.
@VTV_CYGMIN_TRUE@toolexeclib_LTLIBRARIES = libvtv.la libstdc++.la
+noinst_LTLIBRARIES = libstdc++_nonshared80.la \
-+ libstdc++_nonshared110.la
++ libstdc++_nonshared110.la \
++ libstdc++_nonshared140.la
+
@VTV_CYGMIN_TRUE@libvtv_la_SOURCES = vtv_stubs.cc
@VTV_CYGMIN_TRUE@libvtv_la_LDFLAGS = $(lt_host_flags)
@VTV_CYGMIN_TRUE@libvtv_la_AM_CXXFLAGS = \
-@@ -532,6 +564,32 @@ SUBDIRS = c++98 c++11 c++17 c++20 c++23
+@@ -532,6 +569,45 @@ SUBDIRS = c++98 c++11 c++17 c++20 c++23
parallel_compat_sources = \
compatibility-parallel_list.cc compatibility-parallel_list-2.cc
@@ -9962,11 +10379,24 @@
+ $(top_builddir)/src/nonshared11/libnonshared11convenience110.la \
+ $(top_builddir)/src/nonshared17/libnonshared17convenience110.la \
+ $(top_builddir)/src/nonshared20/libnonshared20convenience110.la
++
++libstdc___nonshared140_la_SOURCES =
++libstdc___nonshared140_la_LIBADD = \
++ $(top_builddir)/src/nonshared98/libnonshared98convenience140.la \
++ $(top_builddir)/src/nonshared11/libnonshared11convenience140.la \
++ $(top_builddir)/src/nonshared17/libnonshared17convenience140.la \
++ $(top_builddir)/src/nonshared20/libnonshared20convenience140.la
++
++libstdc___nonshared140_la_DEPENDENCIES = \
++ $(top_builddir)/src/nonshared98/libnonshared98convenience140.la \
++ $(top_builddir)/src/nonshared11/libnonshared11convenience140.la \
++ $(top_builddir)/src/nonshared17/libnonshared17convenience140.la \
++ $(top_builddir)/src/nonshared20/libnonshared20convenience140.la
+
cxx98_sources = \
compatibility.cc \
compatibility-debug_list.cc \
-@@ -725,6 +783,17 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(
+@@ -725,6 +801,17 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
@@ -9984,20 +10414,23 @@
install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
@$(NORMAL_INSTALL)
@list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \
-@@ -763,6 +832,12 @@ clean-toolexeclibLTLIBRARIES:
+@@ -763,6 +850,15 @@ clean-toolexeclibLTLIBRARIES:
libstdc++.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) $(EXTRA_libstdc___la_DEPENDENCIES)
$(AM_V_GEN)$(libstdc___la_LINK) $(am_libstdc___la_rpath) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS)
+libstdc++_nonshared110.la: $(libstdc___nonshared110_la_OBJECTS) $(libstdc___nonshared110_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared110_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(libstdc___nonshared110_la_OBJECTS) $(libstdc___nonshared110_la_LIBADD) $(LIBS)
+
++libstdc++_nonshared140.la: $(libstdc___nonshared140_la_OBJECTS) $(libstdc___nonshared140_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared140_la_DEPENDENCIES)
++ $(AM_V_CCLD)$(LINK) $(libstdc___nonshared140_la_OBJECTS) $(libstdc___nonshared140_la_LIBADD) $(LIBS)
++
+libstdc++_nonshared80.la: $(libstdc___nonshared80_la_OBJECTS) $(libstdc___nonshared80_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared80_la_DEPENDENCIES)
+ $(AM_V_CCLD)$(LINK) $(libstdc___nonshared80_la_OBJECTS) $(libstdc___nonshared80_la_LIBADD) $(LIBS)
+
libvtv.la: $(libvtv_la_OBJECTS) $(libvtv_la_DEPENDENCIES) $(EXTRA_libvtv_la_DEPENDENCIES)
$(AM_V_GEN)$(libvtv_la_LINK) $(am_libvtv_la_rpath) $(libvtv_la_OBJECTS) $(libvtv_la_LIBADD) $(LIBS)
-@@ -927,7 +1002,8 @@ maintainer-clean-generic:
+@@ -927,7 +1023,8 @@ maintainer-clean-generic:
clean: clean-recursive
clean-am: clean-generic clean-libtool clean-local \
@@ -10007,7 +10440,7 @@
distclean: distclean-recursive
-rm -f Makefile
-@@ -997,14 +1073,14 @@ uninstall-am: uninstall-toolexeclibLTLIB
+@@ -997,14 +1094,14 @@ uninstall-am: uninstall-toolexeclibLTLIB
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \
check check-am clean clean-generic clean-libtool clean-local \
@@ -10030,8 +10463,8 @@
install-toolexeclibLTLIBRARIES installcheck installcheck-am \
installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
---- libstdc++-v3/src/c++11/condition_variable.cc.jj 2024-04-26 11:47:04.125142746 +0200
-+++ libstdc++-v3/src/c++11/condition_variable.cc 2024-07-18 16:10:38.341406558 +0200
+--- libstdc++-v3/src/c++11/condition_variable.cc.jj 2025-04-17 12:55:03.409609913 +0200
++++ libstdc++-v3/src/c++11/condition_variable.cc 2025-05-06 15:48:48.725747104 +0200
@@ -31,9 +31,11 @@ namespace std _GLIBCXX_VISIBILITY(defaul
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -10060,9 +10493,9 @@
extern void
__at_thread_exit(__at_thread_exit_elt*);
---- libstdc++-v3/src/c++11/system_error.cc.jj 2024-04-26 11:47:04.129142690 +0200
-+++ libstdc++-v3/src/c++11/system_error.cc 2024-07-18 16:10:38.341406558 +0200
-@@ -607,7 +607,9 @@ _GLIBCXX_BEGIN_INLINE_ABI_NAMESPACE(_V2)
+--- libstdc++-v3/src/c++11/system_error.cc.jj 2025-04-17 12:55:03.416609822 +0200
++++ libstdc++-v3/src/c++11/system_error.cc 2025-05-06 15:48:48.737746941 +0200
+@@ -611,7 +611,9 @@ _GLIBCXX_BEGIN_INLINE_ABI_NAMESPACE(_V2)
_GLIBCXX_END_INLINE_ABI_NAMESPACE(_V2)
@@ -10072,7 +10505,7 @@
error_condition
error_category::default_error_condition(int __i) const noexcept
-@@ -622,9 +624,11 @@ _GLIBCXX_END_INLINE_ABI_NAMESPACE(_V2)
+@@ -626,9 +628,11 @@ _GLIBCXX_END_INLINE_ABI_NAMESPACE(_V2)
error_category::equivalent(const error_code& __code, int __i) const noexcept
{ return *this == __code.category() && __code.value() == __i; }
@@ -10084,9 +10517,9 @@
#if _GLIBCXX_USE_CXX11_ABI
// Return error_category::message() as a COW string
---- libstdc++-v3/src/c++11/cxx11-ios_failure.cc.jj 2024-04-26 11:47:04.126142732 +0200
-+++ libstdc++-v3/src/c++11/cxx11-ios_failure.cc 2024-07-18 16:10:38.341406558 +0200
-@@ -122,9 +122,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+--- libstdc++-v3/src/c++11/cxx11-ios_failure.cc.jj 2025-04-17 12:55:03.411609887 +0200
++++ libstdc++-v3/src/c++11/cxx11-ios_failure.cc 2025-05-06 15:48:48.762746603 +0200
+@@ -124,9 +124,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
using __ios_failure = ios::failure;
#endif
@@ -10098,8 +10531,8 @@
void
__throw_ios_failure(const char* str __attribute__((unused)),
---- libstdc++-v3/src/c++11/futex.cc.jj 2024-04-26 11:47:04.127142718 +0200
-+++ libstdc++-v3/src/c++11/futex.cc 2024-07-19 10:06:32.380372592 +0200
+--- libstdc++-v3/src/c++11/futex.cc.jj 2025-04-17 12:55:03.412609874 +0200
++++ libstdc++-v3/src/c++11/futex.cc 2025-05-06 15:48:48.762746603 +0200
@@ -55,7 +55,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
namespace
@@ -10142,8 +10575,8 @@
_GLIBCXX_END_NAMESPACE_VERSION
}
---- libstdc++-v3/src/c++11/shared_ptr.cc.jj 2024-04-26 11:47:04.129142690 +0200
-+++ libstdc++-v3/src/c++11/shared_ptr.cc 2024-07-18 17:01:50.133128353 +0200
+--- libstdc++-v3/src/c++11/shared_ptr.cc.jj 2025-04-17 12:55:03.416609822 +0200
++++ libstdc++-v3/src/c++11/shared_ptr.cc 2025-05-06 15:48:48.785746292 +0200
@@ -53,6 +53,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -10160,8 +10593,8 @@
bool
_Sp_make_shared_tag::_S_eq(const type_info& ti [[gnu::unused]]) noexcept
---- libstdc++-v3/src/c++11/codecvt.cc.jj 2024-04-26 11:47:04.124142759 +0200
-+++ libstdc++-v3/src/c++11/codecvt.cc 2024-07-18 16:10:38.342406545 +0200
+--- libstdc++-v3/src/c++11/codecvt.cc.jj 2025-04-17 12:55:03.408609926 +0200
++++ libstdc++-v3/src/c++11/codecvt.cc 2025-05-06 15:48:48.787746265 +0200
@@ -744,6 +744,7 @@ namespace
}
}
@@ -10201,8 +10634,8 @@
#if defined(_GLIBCXX_USE_CHAR8_T)
inline template class __codecvt_abstract_base;
---- libstdc++-v3/src/c++11/ios.cc.jj 2024-04-26 11:47:04.128142704 +0200
-+++ libstdc++-v3/src/c++11/ios.cc 2024-07-18 16:10:38.342406545 +0200
+--- libstdc++-v3/src/c++11/ios.cc.jj 2025-04-17 12:55:03.413609861 +0200
++++ libstdc++-v3/src/c++11/ios.cc 2025-05-06 15:48:48.793746184 +0200
@@ -33,6 +33,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -10219,9 +10652,9 @@
void
ios_base::_M_move(ios_base& __rhs) noexcept
---- libstdc++-v3/configure.ac.jj 2024-04-26 11:47:03.733148179 +0200
-+++ libstdc++-v3/configure.ac 2024-07-18 16:10:38.342406545 +0200
-@@ -685,6 +685,11 @@ GLIBCXX_EXPORT_FLAGS
+--- libstdc++-v3/configure.ac.jj 2025-04-17 12:55:02.664619616 +0200
++++ libstdc++-v3/configure.ac 2025-05-06 15:48:48.797746129 +0200
+@@ -706,6 +706,11 @@ GLIBCXX_EXPORT_FLAGS
# Determine what GCC version number to use in filesystem paths.
GCC_BASE_VER
@@ -10233,8 +10666,8 @@
dnl In autoconf 2.5x, AC_OUTPUT is replaced by four AC_CONFIG_* macros,
dnl which can all be called multiple times as needed, plus one (different)
dnl AC_OUTPUT macro. This one lists the files to be created:
---- libstdc++-v3/configure.jj 2024-04-26 11:47:03.733148179 +0200
-+++ libstdc++-v3/configure 2024-07-18 18:10:09.859695396 +0200
+--- libstdc++-v3/configure.jj 2025-04-17 12:55:02.646619850 +0200
++++ libstdc++-v3/configure 2025-05-07 09:39:52.870700407 +0200
@@ -633,6 +633,8 @@ ac_subst_vars='am__EXEEXT_FALSE
am__EXEEXT_TRUE
LTLIBOBJS
@@ -10307,25 +10740,25 @@
int main()
{
typedef long long atomic_type;
-@@ -16444,7 +16446,7 @@ $as_echo "mutex" >&6; }
+@@ -16445,7 +16447,7 @@ $as_echo "mutex" >&6; }
# unnecessary for this test.
cat > conftest.$ac_ext << EOF
--#line 16447 "configure"
-+#line 16449 "configure"
+-#line 16448 "configure"
++#line 16450 "configure"
int main()
{
_Decimal32 d1;
-@@ -16486,7 +16488,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+@@ -16487,7 +16489,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
# unnecessary for this test.
cat > conftest.$ac_ext << EOF
--#line 16489 "configure"
-+#line 16491 "configure"
+-#line 16490 "configure"
++#line 16492 "configure"
template
struct same
{ typedef T2 type; };
-@@ -55690,6 +55692,11 @@ fi
+@@ -55801,6 +55803,11 @@ fi
@@ -10337,7 +10770,7 @@
ac_config_files="$ac_config_files Makefile"
ac_config_files="$ac_config_files scripts/testsuite_flags"
-@@ -55709,7 +55716,7 @@ ac_config_files="$ac_config_files src/li
+@@ -55820,7 +55827,7 @@ ac_config_files="$ac_config_files src/li
# append it here. Only modify Makefiles that have just been created.
#
# Also, get rid of this simulated-VPATH thing that automake does.
@@ -10346,7 +10779,7 @@
ac_config_commands="$ac_config_commands generate-headers"
-@@ -56970,6 +56977,12 @@ do
+@@ -57081,6 +57088,12 @@ do
"src/c++20/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++20/Makefile" ;;
"src/c++23/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++23/Makefile" ;;
"src/c++26/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++26/Makefile" ;;
@@ -10359,7 +10792,7 @@
"src/filesystem/Makefile") CONFIG_FILES="$CONFIG_FILES src/filesystem/Makefile" ;;
"src/libbacktrace/Makefile") CONFIG_FILES="$CONFIG_FILES src/libbacktrace/Makefile" ;;
"src/experimental/Makefile") CONFIG_FILES="$CONFIG_FILES src/experimental/Makefile" ;;
-@@ -58485,6 +58498,72 @@ _EOF
+@@ -58596,6 +58609,72 @@ _EOF
s!`test -f '$<' || echo '$(srcdir)/'`!!
_EOF
sed -f vpsed$$ $ac_file > tmp$$
@@ -10432,8 +10865,8 @@
mv tmp$$ $ac_file
rm vpsed$$
echo 'MULTISUBDIR =' >> $ac_file
---- libstdc++-v3/acinclude.m4.jj 2024-07-18 16:10:38.362406290 +0200
-+++ libstdc++-v3/acinclude.m4 2024-07-18 16:11:36.495662934 +0200
+--- libstdc++-v3/acinclude.m4.jj 2025-04-17 12:55:02.536621283 +0200
++++ libstdc++-v3/acinclude.m4 2025-05-06 15:48:48.847745453 +0200
@@ -49,7 +49,7 @@ AC_DEFUN([GLIBCXX_CONFIGURE], [
# Keep these sync'd with the list in Makefile.am. The first provides an
# expandable list at autoconf time; the second provides an expandable list
diff --git a/gcc14-libstdc++-docs.patch b/gcc15-libstdc++-docs.patch
similarity index 74%
rename from gcc14-libstdc++-docs.patch
rename to gcc15-libstdc++-docs.patch
index 0e0e0f9..15bb496 100644
--- a/gcc14-libstdc++-docs.patch
+++ b/gcc15-libstdc++-docs.patch
@@ -4,21 +4,21 @@
FSF
-+ Release 14.2.1
++ Release 15.1.1
+
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation
License, Version 1.2 or any later version published by the
--- libstdc++-v3/doc/html/api.html.jj 2011-01-03 12:53:21.000000000 +0100
-+++ libstdc++-v3/doc/html/api.html 2011-01-04 18:12:01.672757784 +0100
++++ libstdc++-v3/doc/html/api.html 2024-11-30 13:30:16.607594623 +0100
@@ -20,7 +20,9 @@
member functions for the library classes, finding out what is in a
particular include file, looking at inheritance diagrams, etc.
- The API documentation, rendered into HTML, can be viewed online
+ The API documentation, rendered into HTML, can be viewed locally
-+ for the 14.2.1 release,
++ for the 15.1.1 release,
+ online
- for each GCC release
+ for each GCC release
and
-
+
diff --git a/gcc14-libtool-no-rpath.patch b/gcc15-libtool-no-rpath.patch
similarity index 100%
rename from gcc14-libtool-no-rpath.patch
rename to gcc15-libtool-no-rpath.patch
diff --git a/gcc14-no-add-needed.patch b/gcc15-no-add-needed.patch
similarity index 100%
rename from gcc14-no-add-needed.patch
rename to gcc15-no-add-needed.patch
diff --git a/gcc15-pr119006.patch b/gcc15-pr119006.patch
new file mode 100644
index 0000000..dfbdaa9
--- /dev/null
+++ b/gcc15-pr119006.patch
@@ -0,0 +1,76 @@
+2025-02-27 Jakub Jelinek
+
+ PR ipa/119006
+ * ipa-icf-gimple.cc (func_checker::compare_operand): If t1 and t2
+ are ADDR_EXPRs, call operand_equal_p on their operands rather than on
+ the ADDR_EXPRs themselves. Formatting fix.
+
+ * g++.dg/opt/pr119006.C: New test.
+
+--- gcc/ipa-icf-gimple.cc.jj 2025-02-01 00:50:02.080774328 +0100
++++ gcc/ipa-icf-gimple.cc 2025-02-27 14:35:19.931183246 +0100
+@@ -437,12 +437,23 @@ func_checker::compare_operand (tree t1,
+ ("compare_ao_refs failed (dependence clique difference)");
+ gcc_unreachable ();
+ }
++ else if (TREE_CODE (t1) == ADDR_EXPR && TREE_CODE (t2) == ADDR_EXPR)
++ {
++ /* For ADDR_EXPR compare the operands of the ADDR_EXPR rather than
++ the ADDR_EXPRs themselves. operand_equal_p will compare the
++ operands with OEP_ADDRESS_OF and only care about the value
++ of the ADDR_EXPR, rather than e.g. types of MEM_REFs in there.
++ Some optimizations use such details though, see PR119006. */
++ if (operand_equal_p (TREE_OPERAND (t1, 0), TREE_OPERAND (t2, 0),
++ OEP_MATCH_SIDE_EFFECTS))
++ return true;
++ return return_false_with_msg ("operand_equal_p failed");
++ }
+ else
+ {
+ if (operand_equal_p (t1, t2, OEP_MATCH_SIDE_EFFECTS))
+ return true;
+- return return_false_with_msg
+- ("operand_equal_p failed");
++ return return_false_with_msg ("operand_equal_p failed");
+ }
+ }
+
+--- gcc/testsuite/g++.dg/opt/pr119006.C.jj 2025-02-27 14:37:05.952707350 +0100
++++ gcc/testsuite/g++.dg/opt/pr119006.C 2025-02-27 14:36:29.251218260 +0100
+@@ -0,0 +1,36 @@
++// PR ipa/119006
++// { dg-do run { target c++11 } }
++// { dg-options "-O2 -fwhole-program" }
++
++struct A {
++ bool operator== (const char *x) const { return x && !__builtin_strcmp (a, x); }
++ char a[11];
++};
++
++struct B {
++ bool operator== (const char *x) const { return x && !__builtin_strcmp (a, x); }
++ bool operator!= (const char *x) const { return !(*this == x); }
++ char a[128];
++};
++
++[[gnu::noinline,gnu::used]] int
++foo (const A& lhs, const char* rhs)
++{
++ return lhs == rhs;
++}
++
++constexpr const char *t = "abcdefghijklmno";
++
++[[gnu::noinline,gnu::used]] void
++bar (B x)
++{
++ if (x != t) __builtin_abort ();
++}
++
++int
++main ()
++{
++ B b;
++ __builtin_strcpy (b.a, t);
++ bar (b);
++}
diff --git a/gcc14-rh1574936.patch b/gcc15-rh1574936.patch
similarity index 100%
rename from gcc14-rh1574936.patch
rename to gcc15-rh1574936.patch
diff --git a/gcc14-sparc-config-detection.patch b/gcc15-sparc-config-detection.patch
similarity index 100%
rename from gcc14-sparc-config-detection.patch
rename to gcc15-sparc-config-detection.patch
diff --git a/sources b/sources
index d19db37..5bf974f 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
-SHA512 (gcc-14.2.1-20250110.tar.xz) = 9de1009fd87d3734361a3c451e0d8faac984a38b2c064bea228b1a04738e870d7dcca2ee98182be5423579b8caa5f762cd06a6576e2fe797559620619ae4e169
+SHA512 (gcc-15.1.1-20250521.tar.xz) = 86b06902e10aa6eba4ccbe54e97fee17838e21484e4f6d4aef2e93d0687b04e82f00655828ac0233f4026cd0d2df08bbdfe7dc2eeafc8908cab183584d2fb8ee
SHA512 (isl-0.24.tar.bz2) = aab3bddbda96b801d0f56d2869f943157aad52a6f6e6a61745edd740234c635c38231af20bc3f1a08d416a5e973a90e18249078ed8e4ae2f1d5de57658738e95
-SHA512 (newlib-cygwin-d45261f62a15f8abd94a1031020b9a9f455e4eed.tar.xz) = 31bfc19429797236e268e22b752c5abeabb9c0f39b1058634af8dab329b4f028fc72a35888193c9575f6cee5cf2c069669d79fcb4d4e3a4318f57413452f707d
+SHA512 (newlib-cygwin-d35cc82b5ec15bb8a5fe0fe11e183d1887992e99.tar.xz) = ef9495745a96d1d76f9f425c4a48c807fface36a1aa92351c5d024103678d144d046e8de55d195103784472c14874e29e4b9284d5d6a2e7bb27fd98c8455a881
SHA512 (nvptx-tools-87ce9dc5999e5fca2e1d3478a30888d9864c9804.tar.xz) = 941e763af8601b89f0e4ec48a2d68ae0a8e70ee1e6ba6859394b021ad7bd7d143cc529f3c35c08d7f84e5554980ddcc97cf05b6c4755c2bc36c91161b79e8cea