diff options
| -rw-r--r-- | .gitignore | 5 | ||||
| -rw-r--r-- | 0001-fix-sys-ustat.h-problem.patch | 44 | ||||
| -rw-r--r-- | 0002-fix-libsanitizer-multiple-definition.patch | 42 | ||||
| -rw-r--r-- | 0003-Fix-error-size-of-array-is-negative.patch | 56 | ||||
| -rw-r--r-- | gcc-7.spec | 2870 | ||||
| -rw-r--r-- | gcc7-libstdc++-compat.patch | 9087 | ||||
| -rw-r--r-- | sources | 5 |
7 files changed, 12109 insertions, 0 deletions
@@ -0,0 +1,5 @@ +/gcc-7.3.0.tar.gz +/gmp-6.2.0.tar.bz2 +/isl-0.16.1.tar.xz +/mpc-1.2.0.tar.gz +/mpfr-4.1.0.tar.xz diff --git a/0001-fix-sys-ustat.h-problem.patch b/0001-fix-sys-ustat.h-problem.patch new file mode 100644 index 0000000..34b1522 --- /dev/null +++ b/0001-fix-sys-ustat.h-problem.patch @@ -0,0 +1,44 @@ +From 88fe8bed49ebbf86c29990bdb536171bb1ae4d3d Mon Sep 17 00:00:00 2001 +From: <zhangwuji1@huawei.com> +Date: Wed, 7 Jun 2023 14:24:43 +0000 +Subject: [PATCH] fix sys/ustat.h problem + +https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=71b55d45e4304f5e2e98ac30473c581f58fc486b +--- + .../sanitizer_common/sanitizer_platform_limits_posix.cc | 15 +++++++++++++-- + 1 file changed, 13 insertions(+), 2 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +index 858bb218450..de18e56d11c 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +@@ -157,7 +157,6 @@ typedef struct user_fpregs elf_fpregset_t; + # include <sys/procfs.h> + #endif + #include <sys/user.h> +-#include <sys/ustat.h> + #include <linux/cyclades.h> + #include <linux/if_eql.h> + #include <linux/if_plip.h> +@@ -250,7 +249,19 @@ namespace __sanitizer { + #endif // SANITIZER_LINUX || SANITIZER_FREEBSD + + #if SANITIZER_LINUX && !SANITIZER_ANDROID +- unsigned struct_ustat_sz = sizeof(struct ustat); ++ // Use pre-computed size of struct ustat to avoid <sys/ustat.h> which ++ // has been removed from glibc 2.28. ++#if defined(__aarch64__) || defined(__s390x__) || defined (__mips64) \ ++ || defined(__powerpc64__) || defined(__arch64__) || defined(__sparcv9) \ ++ || defined(__x86_64__) ++#define SIZEOF_STRUCT_USTAT 32 ++#elif defined(__arm__) || defined(__i386__) || defined(__mips__) \ ++ || defined(__powerpc__) || defined(__s390__) ++#define SIZEOF_STRUCT_USTAT 20 ++#else ++#error Unknown size of struct ustat ++#endif ++ unsigned struct_ustat_sz = SIZEOF_STRUCT_USTAT; + unsigned struct_rlimit64_sz = sizeof(struct rlimit64); + unsigned struct_statvfs64_sz = sizeof(struct statvfs64); + #endif // SANITIZER_LINUX && !SANITIZER_ANDROID +--
\ No newline at end of file diff --git a/0002-fix-libsanitizer-multiple-definition.patch b/0002-fix-libsanitizer-multiple-definition.patch new file mode 100644 index 0000000..54809cb --- /dev/null +++ b/0002-fix-libsanitizer-multiple-definition.patch @@ -0,0 +1,42 @@ +From e195f6bb86c7fb3a009eba292a78ed13f3d19dc2 Mon Sep 17 00:00:00 2001 +From: <zhangwuji1@huawei.com> +Date: Wed, 7 Jun 2023 15:34:03 +0000 +Subject: [PATCH] fix libsanitizer multiple definition + +https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=2701442d0cf6292f6624443c15813d6d1a3562fe +--- + .../sanitizer_platform_limits_posix.cc | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +index aae5ec2fe82..72277af7026 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +@@ -62,7 +62,9 @@ + #include <sys/vt.h> + #include <linux/cdrom.h> + #include <linux/fd.h> ++#if SANITIZER_ANDROID + #include <linux/fs.h> ++#endif + #include <linux/hdreg.h> + #include <linux/input.h> + #include <linux/ioctl.h> +@@ -834,10 +836,10 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT; + unsigned IOCTL_EVIOCSKEYCODE_V2 = IOCTL_NOT_PRESENT; + #endif +- unsigned IOCTL_FS_IOC_GETFLAGS = FS_IOC_GETFLAGS; +- unsigned IOCTL_FS_IOC_GETVERSION = FS_IOC_GETVERSION; +- unsigned IOCTL_FS_IOC_SETFLAGS = FS_IOC_SETFLAGS; +- unsigned IOCTL_FS_IOC_SETVERSION = FS_IOC_SETVERSION; ++ unsigned IOCTL_FS_IOC_GETFLAGS = _IOR('f', 1, long); ++ unsigned IOCTL_FS_IOC_GETVERSION = _IOR('v', 1, long); ++ unsigned IOCTL_FS_IOC_SETFLAGS = _IOW('f', 2, long); ++ unsigned IOCTL_FS_IOC_SETVERSION = _IOW('v', 2, long); + unsigned IOCTL_GIO_CMAP = GIO_CMAP; + unsigned IOCTL_GIO_FONT = GIO_FONT; + unsigned IOCTL_GIO_UNIMAP = GIO_UNIMAP; +-- +2.34.1 + diff --git a/0003-Fix-error-size-of-array-is-negative.patch b/0003-Fix-error-size-of-array-is-negative.patch new file mode 100644 index 0000000..045d997 --- /dev/null +++ b/0003-Fix-error-size-of-array-is-negative.patch @@ -0,0 +1,56 @@ +From 9e7125069ad4f7f02ebc1e7d163b438e17ab2174 Mon Sep 17 00:00:00 2001 +From: <zhangwuji1@huawei.com> +Date: Wed, 7 Jun 2023 15:54:37 +0000 +Subject: [PATCH] Fix error 'size of array is negative' + +https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=4abc46b51af5751d657764d0c44b8a4aeed06302 +--- + .../sanitizer_common/sanitizer_platform_limits_posix.cc | 5 +++-- + .../sanitizer_common/sanitizer_platform_limits_posix.h | 9 +-------- + 2 files changed, 4 insertions(+), 10 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +index aae5ec2fe82..2793ce32aa0 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc +@@ -1134,8 +1134,9 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, uid); + CHECK_SIZE_AND_OFFSET(ipc_perm, gid); + CHECK_SIZE_AND_OFFSET(ipc_perm, cuid); + CHECK_SIZE_AND_OFFSET(ipc_perm, cgid); +-#if !defined(__aarch64__) || !SANITIZER_LINUX || __GLIBC_PREREQ (2, 21) +-/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */ ++#if !SANITIZER_LINUX || __GLIBC_PREREQ (2, 31) ++/* glibc 2.30 and earlier provided 16-bit mode field instead of 32-bit ++ on many architectures. */ + CHECK_SIZE_AND_OFFSET(ipc_perm, mode); + #endif + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +index e3cd4e6bb76..a9dc64b38f2 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h +@@ -211,20 +211,13 @@ namespace __sanitizer { + unsigned long __unused1; + unsigned long __unused2; + #elif defined(__sparc__) +-# if defined(__arch64__) + unsigned mode; +- unsigned short __pad1; +-# else +- unsigned short __pad1; +- unsigned short mode; + unsigned short __pad2; +-# endif + unsigned short __seq; + unsigned long long __unused1; + unsigned long long __unused2; + #else +- unsigned short mode; +- unsigned short __pad1; ++ unsigned int mode; + unsigned short __seq; + unsigned short __pad2; + #if defined(__x86_64__) && !defined(_LP64) +-- +2.34.1 + diff --git a/gcc-7.spec b/gcc-7.spec new file mode 100644 index 0000000..96faa49 --- /dev/null +++ b/gcc-7.spec @@ -0,0 +1,2870 @@ +%global scl 1 +%global vendor %{?_vendor:%{_vendor}}%{!?_vendor:openEuler} +%global gcc_toolset_root /opt/%{vendor}/gcc-toolset-7/root + +%global gcc_major 7 + +%global _unpackaged_files_terminate_build 0 +%global _performance_build 1 +# Hardening slows the compiler way too much. +%undefine _hardened_build +%undefine _annotated_build + +%define debug_package %{nil} + +%if 0%{?__brp_strip:1} +# Something wrong with strip, so ignore errors +%global __brp_strip %{__brp_strip} || : +%endif + +%if 0%{?scl:1} +%global scl_prefix ai-toolset-gcc- +%global _prefix %{gcc_toolset_root}/usr +%global gcc_ver %{nil} +%define binsuffix %{nil} +%define __provides_exclude ^lib.*$ +%endif +%global multilib_64_archs sparc64 ppc64 ppc64p7 +%global build_ada 0 +%global build_objc 0 +%global build_fortran 0 +%global build_lto 0 +%global build_gdb_plugin 0 +%global build_isl 1 +%global build_go 0 + +%global build_libquadmath 0 +%global build_libasan 0 +%global build_libtsan 0 +%global build_liblsan 0 +%global build_libubsan 0 +%ifarch %{ix86} x86_64 +%global build_libcilkrts 0 +%else +%global build_libcilkrts 0 +%endif +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %{mips} +%global build_libatomic 1 +%else +%global build_libatomic 0 +%endif +%ifarch %{ix86} x86_64 %{arm} alpha ppc ppc64 ppc64le ppc64p7 s390 s390x aarch64 +%global build_libitm 1 +%else +%global build_libitm 0 +%endif +%ifarch %{ix86} x86_64 +%global build_libmpx 0 +%else +%global build_libmpx 0 +%endif +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 %{mips} +%global attr_ifunc 1 +%else +%global attr_ifunc 0 +%endif +%ifarch sparc64 +%global multilib_32_arch sparcv9 +%endif +%ifarch ppc64 ppc64p7 +%global multilib_32_arch ppc +%endif +%ifarch x86_64 +%global multilib_32_arch i686 +%endif + +Summary: Various compilers (C, C++, Objective-C, ...) +Name: %{?scl_prefix}gcc%{gcc_ver} +Version: 7.3.0 +Release: 4 +# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have +# GCC Runtime Exception. +License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD +Group: Development/Languages +Source0: https://atomgit.com/zhouweitong3/ai-toolset-gcc/releases/download/7.3.0/gcc-7.3.0.tar.gz +Source10: gmp-6.2.0.tar.bz2 +Source11: mpfr-4.1.0.tar.xz +Source12: mpc-1.2.0.tar.gz +Source13: isl-0.16.1.tar.xz +URL: http://gcc.gnu.org + +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: binutils >= 2.24 +BuildRequires: glibc-headers +BuildRequires: libtool, texinfo, gettext, flex, bison, chrpath +BuildRequires: bzip2, gzip, xz +BuildRequires: python3-devel +BuildRequires: gdb +BuildRequires: gcc, gcc-c++, make +BuildRequires: glibc-devel >= 2.17 +BuildRequires: ai-toolset-glibc +BuildRequires: ai-toolset-libstdc++ +%ifarch %{multilib_64_archs} sparcv9 ppc +# Ensure glibc{,-devel} is installed for both multilib arches +BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so +%endif + +%if %{build_ada} +# Ada requires Ada to build +BuildRequires: gcc-gnat >= 3.1, libgnat >= 3.1 +%endif +%ifarch ia64 +BuildRequires: libunwind >= 0.98 +%endif +Requires: %{?scl_prefix}cpp%{gcc_ver} = %{version}-%{release} +Requires: binutils >= 2.24 +Conflicts: gdb < 5.1-2 +Requires: ai-toolset-glibc +Requires: ai-toolset-libstdc++ +Requires: %{?scl_prefix}libgcc%{gcc_ver} >= %{version}-%{release} +Requires: %{?scl_prefix}libgomp%{gcc_ver} = %{version}-%{release} +%if %{build_libasan} +Requires: %{?scl_prefix}libasan%{gcc_ver} = %{version}-%{release} +%endif +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info +%global __requires_exclude ^lib.*\.so\..* +AutoReq: true +# Provides: bundled(libiberty) +Provides: %{?scl_prefix}gcc%{gcc_ver}(major) = %{gcc_major} + +Patch0: 0001-fix-sys-ustat.h-problem.patch +Patch1: 0002-fix-libsanitizer-multiple-definition.patch +Patch2: 0003-Fix-error-size-of-array-is-negative.patch +Patch3: gcc7-libstdc++-compat.patch + +# On ARM EABI systems, we do want -gnueabi to be part of the +# target triple. +%ifnarch %{arm} +%global _gnu %{nil} +%else +%global _gnu -gnueabi +%endif +%ifarch sparcv9 +%global gcc_target_platform sparc64-%{_vendor}-%{_target_os} +%endif +%ifarch ppc ppc64p7 +%global gcc_target_platform ppc64-%{_vendor}-%{_target_os} +%endif +%ifnarch sparcv9 ppc ppc64p7 +%global gcc_target_platform %{_target_platform} +%endif + +%if %{build_go} +# Avoid stripping these libraries and binaries. +%global __os_install_post \ +chmod 644 %{buildroot}%{_prefix}/%{_lib}/libgo.so.11.* \ +chmod 644 %{buildroot}%{_prefix}/bin/go.gcc \ +chmod 644 %{buildroot}%{_prefix}/bin/gofmt.gcc \ +chmod 644 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo \ +%__os_install_post \ +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgo.so.11.* \ +chmod 755 %{buildroot}%{_prefix}/bin/go.gcc \ +chmod 755 %{buildroot}%{_prefix}/bin/gofmt.gcc \ +chmod 755 %{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo \ +%{nil} +%endif + +%description +The gcc package contains the GNU Compiler Collection version 7. + +%package -n %{?scl_prefix}libgcc%{gcc_ver} +Summary: GCC version 7 shared support library +Group: System Environment/Libraries +Autoreq: false + +%description -n %{?scl_prefix}libgcc%{gcc_ver} +This package contains GCC shared support library which is needed +e.g. for exception handling support. + +%package c++ +Summary: C++ support for GCC +Group: Development/Languages +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libstdc++%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libstdc++%{gcc_ver}-devel = %{version}-%{release} +Provides: %{?scl_prefix}gcc-g++%{gcc_ver} = %{version}-%{release} +Provides: %{?scl_prefix}g++%{gcc_ver} = %{version}-%{release} +Autoreq: true + +%description c++ +This package adds C++ support to the GNU Compiler Collection. +It includes support for most of the current C++ specification, +including templates and exception handling. + +%package -n %{?scl_prefix}libstdc++%{gcc_ver} +Summary: GNU Standard C++ Library +Group: System Environment/Libraries +Autoreq: true +Requires: glibc >= 2.10.90-7 + +%description -n %{?scl_prefix}libstdc++%{gcc_ver} +The libstdc++ package contains a rewritten standard compliant GCC Standard +C++ Library. + +%package -n %{?scl_prefix}libstdc++%{gcc_ver}-devel +Summary: Header files and libraries for C++ development +Group: Development/Libraries +Requires: %{?scl_prefix}libstdc++%{gcc_ver}%{?_isa} = %{version}-%{release} +Autoreq: true + +%description -n %{?scl_prefix}libstdc++%{gcc_ver}-devel +This is the GNU implementation of the standard C++ libraries. This +package includes the header files and libraries needed for C++ +development. This includes rewritten implementation of STL. + +%package -n %{?scl_prefix}libstdc++%{gcc_ver}-static +Summary: Static libraries for the GNU standard C++ library +Group: Development/Libraries +Requires: %{?scl_prefix}libstdc++%{gcc_ver}-devel = %{version}-%{release} +Autoreq: true + +%description -n %{?scl_prefix}libstdc++%{gcc_ver}-static +Static libraries for the GNU standard C++ library. + +%package -n %{?scl_prefix}libstdc++%{gcc_ver}-docs +Summary: Documentation for the GNU standard C++ library +Group: Development/Libraries +Autoreq: true + +%description -n %{?scl_prefix}libstdc++%{gcc_ver}-docs +Manual, doxygen generated API information and Frequently Asked Questions +for the GNU standard C++ library. + +%if %{build_objc} +%package objc +Summary: Objective-C support for GCC +Group: Development/Languages +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libobjc%{gcc_ver} = %{version}-%{release} +Autoreq: true + +%description objc +gcc-objc provides Objective-C support for the GCC. +Mainly used on systems running NeXTSTEP, Objective-C is an +object-oriented derivative of the C language. + +%package objc++ +Summary: Objective-C++ support for GCC +Group: Development/Languages +Requires: %{?scl_prefix}gcc%{gcc_ver}-c++ = %{version}-%{release} +Requires: %{?scl_prefix}gcc%{gcc_ver}-objc = %{version}-%{release} +Autoreq: true + +%description objc++ +gcc-objc++ package provides Objective-C++ support for the GCC. + +%package -n %{?scl_prefix}libobjc%{gcc_ver} +Summary: Objective-C runtime +Group: System Environment/Libraries +Autoreq: true + +%description -n %{?scl_prefix}libobjc%{gcc_ver} +This package contains Objective-C shared library which is needed to run +Objective-C dynamically linked programs. +%endif + +%if %{build_fortran} +%package gfortran +Summary: Fortran support +Group: Development/Languages +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libgfortran%{gcc_ver} = %{version}-%{release} +%if %{build_libquadmath} +Requires: %{?scl_prefix}libquadmath%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libquadmath%{gcc_ver}-devel = %{version}-%{release} +%endif +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info +Autoreq: true + +%description gfortran +The gcc-gfortran package provides support for compiling Fortran +programs with the GNU Compiler Collection. + +%package -n %{?scl_prefix}libgfortran%{gcc_ver} +Summary: Fortran runtime +Group: System Environment/Libraries +Autoreq: true +%if %{build_libquadmath} +Requires: %{?scl_prefix}libquadmath%{gcc_ver} = %{version}-%{release} +%endif + +%description -n %{?scl_prefix}libgfortran%{gcc_ver} +This package contains Fortran shared library which is needed to run +Fortran dynamically linked programs. + +%package -n %{?scl_prefix}libgfortran%{gcc_ver}-static +Summary: Static Fortran libraries +Group: Development/Libraries +Requires: %{?scl_prefix}libgfortran%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} +%if %{build_libquadmath} +Requires: %{?scl_prefix}libquadmath%{gcc_ver}-static = %{version}-%{release} +%endif + +%description -n %{?scl_prefix}libgfortran%{gcc_ver}-static +This package contains static Fortran libraries. +%endif + +%package -n %{?scl_prefix}libgomp%{gcc_ver} +Summary: GCC OpenMP v4.5 shared support library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libgomp%{gcc_ver} +This package contains GCC shared support library which is needed +for OpenMP v4.5 support. + +%if %{build_gdb_plugin} +%package gdb-plugin +Summary: GCC plugin for GDB +Group: Development/Debuggers +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} + +%description gdb-plugin +This package contains GCC plugin for GDB C expression evaluation. +%endif + +%package -n %{?scl_prefix}libgccjit%{gcc_ver} +Summary: Library for embedding GCC inside programs and libraries +Group: System Environment/Libraries +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libgccjit%{gcc_ver} +This package contains shared library with GCC JIT front-end. + +%package -n %{?scl_prefix}libgccjit%{gcc_ver}-devel +Summary: Support for embedding GCC inside programs and libraries +Group: Development/Libraries +BuildRequires: python-sphinx +Requires: %{?scl_prefix}libgccjit%{gcc_ver} = %{version}-%{release} +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libgccjit%{gcc_ver}-devel +This package contains header files and documentation for GCC JIT front-end. + +%if %{build_libquadmath} +%package -n %{?scl_prefix}libquadmath%{gcc_ver} +Summary: GCC __float128 shared support library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libquadmath%{gcc_ver} +This package contains GCC shared support library which is needed +for __float128 math support and for Fortran REAL*16 support. + +%package -n %{?scl_prefix}libquadmath%{gcc_ver}-devel +Summary: GCC __float128 support +Group: Development/Libraries +Requires: %{?scl_prefix}libquadmath%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libquadmath%{gcc_ver}-devel +This package contains headers for building Fortran programs using +REAL*16 and programs using __float128 math. + +%package -n %{?scl_prefix}libquadmath%{gcc_ver}-static +Summary: Static libraries for __float128 support +Group: Development/Libraries +Requires: %{?scl_prefix}libquadmath%{gcc_ver}-devel = %{version}-%{release} + +%description -n %{?scl_prefix}libquadmath%{gcc_ver}-static +This package contains static libraries for building Fortran programs +using REAL*16 and programs using __float128 math. +%endif + +%if %{build_libitm} +%package -n %{?scl_prefix}libitm%{gcc_ver} +Summary: The GNU Transactional Memory library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libitm%{gcc_ver} +This package contains the GNU Transactional Memory library +which is a GCC transactional memory support runtime library. + +%package -n %{?scl_prefix}libitm%{gcc_ver}-devel +Summary: The GNU Transactional Memory support +Group: Development/Libraries +Requires: %{?scl_prefix}libitm%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libitm%{gcc_ver}-devel +This package contains headers and support files for the +GNU Transactional Memory library. + +%package -n %{?scl_prefix}libitm%{gcc_ver}-static +Summary: The GNU Transactional Memory static library +Group: Development/Libraries +Requires: %{?scl_prefix}libitm%{gcc_ver}-devel = %{version}-%{release} + +%description -n %{?scl_prefix}libitm%{gcc_ver}-static +This package contains GNU Transactional Memory static libraries. +%endif + +%if %{build_libatomic} +%package -n %{?scl_prefix}libatomic%{gcc_ver} +Summary: The GNU Atomic library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libatomic%{gcc_ver} +This package contains the GNU Atomic library +which is a GCC support runtime library for atomic operations not supported +by hardware. + +%package -n %{?scl_prefix}libatomic%{gcc_ver}-static +Summary: The GNU Atomic static library +Group: Development/Libraries +Requires: %{?scl_prefix}libatomic%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libatomic%{gcc_ver}-static +This package contains GNU Atomic static libraries. +%endif + +%if %{build_libasan} +%package -n %{?scl_prefix}libasan%{gcc_ver} +Summary: The Address Sanitizer runtime library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libasan%{gcc_ver} +This package contains the Address Sanitizer library +which is used for -fsanitize=address instrumented programs. + +%package -n %{?scl_prefix}libasan%{gcc_ver}-static +Summary: The Address Sanitizer static library +Group: Development/Libraries +Requires: %{?scl_prefix}libasan%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libasan%{gcc_ver}-static +This package contains Address Sanitizer static runtime library. +%endif + +%if %{build_libtsan} +%package -n %{?scl_prefix}libtsan%{gcc_ver} +Summary: The Thread Sanitizer runtime library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libtsan%{gcc_ver} +This package contains the Thread Sanitizer library +which is used for -fsanitize=thread instrumented programs. + +%package -n %{?scl_prefix}libtsan%{gcc_ver}-static +Summary: The Thread Sanitizer static library +Group: Development/Libraries +Requires: %{?scl_prefix}libtsan%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libtsan%{gcc_ver}-static +This package contains Thread Sanitizer static runtime library. +%endif + +%if %{build_libubsan} +%package -n %{?scl_prefix}libubsan%{gcc_ver} +Summary: The Undefined Behavior Sanitizer runtime library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}libubsan%{gcc_ver} +This package contains the Undefined Behavior Sanitizer library +which is used for -fsanitize=undefined instrumented programs. + +%package -n %{?scl_prefix}libubsan%{gcc_ver}-static +Summary: The Undefined Behavior Sanitizer static library +Group: Development/Libraries +Requires: %{?scl_prefix}libubsan%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}libubsan%{gcc_ver}-static +This package contains Undefined Behavior Sanitizer static runtime library. +%endif + +%if %{build_liblsan} +%package -n %{?scl_prefix}liblsan%{gcc_ver} +Summary: The Leak Sanitizer runtime library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n %{?scl_prefix}liblsan%{gcc_ver} +This package contains the Leak Sanitizer library +which is used for -fsanitize=leak instrumented programs. + +%package -n %{?scl_prefix}liblsan%{gcc_ver}-static +Summary: The Leak Sanitizer static library +Group: Development/Libraries +Requires: %{?scl_prefix}liblsan%{gcc_ver} = %{version}-%{release} + +%description -n %{?scl_prefix}liblsan%{gcc_ver}-static +This package contains Leak Sanitizer static runtime library. +%endif + +%if %{build_libcilkrts} +%package -n libcilkrts +Summary: The Cilk+ runtime library +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n libcilkrts +This package contains the Cilk+ runtime library. + +%package -n libcilkrts-static +Summary: The Cilk+ static runtime library +Group: Development/Libraries +Requires: libcilkrts = %{version}-%{release} + +%description -n libcilkrts-static +This package contains the Cilk+ static runtime library. +%endif + +%if %{build_libmpx} +%package -n libmpx +Summary: The Memory Protection Extensions runtime libraries +Group: System Environment/Libraries +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info + +%description -n libmpx +This package contains the Memory Protection Extensions runtime libraries +which is used for -fcheck-pointer-bounds -mmpx instrumented programs. + +%package -n libmpx-static +Summary: The Memory Protection Extensions static libraries +Group: Development/Libraries +Requires: libmpx = %{version}-%{release} + +%description -n libmpx-static +This package contains the Memory Protection Extensions static runtime libraries. +%endif + +%package -n %{?scl_prefix}cpp%{gcc_ver} +Summary: The C Preprocessor +Group: Development/Languages +Requires: filesystem >= 3 +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info +Autoreq: true + +%description -n %{?scl_prefix}cpp%{gcc_ver} +Cpp is the GNU C-Compatible Compiler Preprocessor. +Cpp is a macro processor which is used automatically +by the C compiler to transform your program before actual +compilation. It is called a macro processor because it allows +you to define macros, abbreviations for longer +constructs. + +The C preprocessor provides four separate functionalities: the +inclusion of header files (files of declarations that can be +substituted into your program); macro expansion (you can define macros, +and the C preprocessor will replace the macros with their definitions +throughout the program); conditional compilation (using special +preprocessing directives, you can include or exclude parts of the +program according to various conditions); and line control (if you use +a program to combine or rearrange source files into an intermediate +file which is then compiled, you can use line control to inform the +compiler about where each source line originated). + +You should install this package if you are a C programmer and you use +macros. + +%if %{build_ada} +%package gnat +Summary: Ada 83, 95, 2005 and 2012 support for GCC +Group: Development/Languages +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libgnat%{gcc_ver} = %{version}-%{release} +Requires: %{?scl_prefix}libgnat%{gcc_ver}-devel = %{version}-%{release} +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info +Autoreq: true + +%description gnat +GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes +development tools, the documents and Ada compiler. + +%package -n %{?scl_prefix}libgnat%{gcc_ver} +Summary: GNU Ada 83, 95, 2005 and 2012 runtime shared libraries +Group: System Environment/Libraries +Autoreq: true + +%description -n %{?scl_prefix}libgnat%{gcc_ver} +GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes +shared libraries, which are required to run programs compiled with the GNAT. + +%package -n %{?scl_prefix}libgnat%{gcc_ver}-devel +Summary: GNU Ada 83, 95, 2005 and 2012 libraries +Group: Development/Languages +Autoreq: true + +%description -n %{?scl_prefix}libgnat%{gcc_ver}-devel +GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes +libraries, which are required to compile with the GNAT. + +%package -n %{?scl_prefix}libgnat%{gcc_ver}-static +Summary: GNU Ada 83, 95, 2005 and 2012 static libraries +Group: Development/Languages +Requires: %{?scl_prefix}libgnat-devel%{gcc_ver} = %{version}-%{release} +Autoreq: true + +%description -n %{?scl_prefix}libgnat%{gcc_ver}-static +GNAT is a GNU Ada 83, 95, 2005 and 2012 front-end to GCC. This package includes +static libraries. +%endif + +%if %{build_go} +%package go +Summary: Go support +Group: Development/Languages +Requires: %{?scl_prefix}gcc = %{version}-%{release} +Requires: %{?scl_prefix}libgo = %{version}-%{release} +Requires: %{?scl_prefix}libgo-devel = %{version}-%{release} +Requires(post): /sbin/install-info +Requires(preun): /sbin/install-info +Requires(post): %{_sbindir}/update-alternatives +Requires(postun): %{_sbindir}/update-alternatives +Autoreq: true + +%description go +The gcc-go package provides support for compiling Go programs +with the GNU Compiler Collection. + +%package -n %{?scl_prefix}libgo +Summary: Go runtime +Group: System Environment/Libraries +Autoreq: true + +%description -n %{?scl_prefix}libgo +This package contains Go shared library which is needed to run +Go dynamically linked programs. + +%package -n %{?scl_prefix}libgo-devel +Summary: Go development libraries +Group: Development/Languages +Requires: libgo = %{version}-%{release} +Autoreq: true + +%description -n %{?scl_prefix}libgo-devel +This package includes libraries and support files for compiling +Go programs. + +%package -n %{?scl_prefix}libgo-static +Summary: Static Go libraries +Group: Development/Libraries +Requires: %{?scl_prefix}libgo = %{version}-%{release} +Requires: %{?scl_prefix}gcc = %{version}-%{release} + +%description -n %{?scl_prefix}libgo-static +This package contains static Go libraries. +%endif + +%package plugin-devel +Summary: Support for compiling GCC plugins +Group: Development/Languages +Requires: %{?scl_prefix}gcc%{gcc_ver} = %{version}-%{release} +Requires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1, libmpc-devel >= 0.8.1 + +%description plugin-devel +This package contains header files and other support files +for compiling GCC plugins. The GCC plugin ABI is currently +not stable, so plugins must be rebuilt any time GCC is updated. + + +%prep +%setup -q -n gcc-7.3.0 + +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p0 + +rm -rf gcc-prerequisites gmp mpfr mpc isl +mkdir gcc-prerequisites +tar -xf %{SOURCE10} -C gcc-prerequisites +tar -xf %{SOURCE11} -C gcc-prerequisites +tar -xf %{SOURCE12} -C gcc-prerequisites +tar -xf %{SOURCE13} -C gcc-prerequisites +ln -s gcc-prerequisites/gmp-6.2.0 gmp +ln -s gcc-prerequisites/mpfr-4.1.0 mpfr +ln -s gcc-prerequisites/mpc-1.2.0 mpc +ln -s gcc-prerequisites/isl-0.16.1 isl + +echo '%{vendor} %{version}-%{release}' > gcc/DEV-PHASE + +cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h + +./contrib/gcc_update --touch + +LC_ALL=C sed -i -e 's/\xa0/ /' gcc/doc/options.texi + +sed -i -e 's/Common Driver Var(flag_report_bug)/& Init(1)/' gcc/common.opt + +%build + +export CONFIG_SITE=NONE + +CC=gcc +CXX=g++ +OPT_FLAGS=`echo %{optflags}|sed -e 's/-flto=auto//g;s/-flto//g;s/-ffat-lto-objects//g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g;s/-m32//g;s/-m31//g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mfpmath=sse/-mfpmath=sse -msse2/g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/ -pipe / /g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-fstack-clash-protection//g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-Werror=format-security/ /g'` +%ifarch sparc +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mcpu=ultrasparc/-mtune=ultrasparc/g;s/-mcpu=v[78]//g'` +%endif +%ifarch %{ix86} +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-march=i.86//g'` +%endif +OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e 's/[[:blank:]]\+/ /g'` +case "$OPT_FLAGS" in + *-fasynchronous-unwind-tables*) + sed -i -e 's/-fno-exceptions /-fno-exceptions -fno-asynchronous-unwind-tables /' \ + libgcc/Makefile.in + ;; +esac + +rm -rf obj-%{gcc_target_platform} +mkdir obj-%{gcc_target_platform} +cd obj-%{gcc_target_platform} + +enablelgo= +enablelada= +enablelobjc= +enableld= +%if %{build_ada} +enablelada=,ada +%endif +%if %{build_go} +enablelgo=,go +%endif +CONFIGURE_OPTS="\ + --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \ + --with-sysroot=%{gcc_toolset_root} \ + --with-bugurl=https://gitee.com/src-openeuler/gcc/issues \ + --enable-shared --enable-threads=posix --enable-checking=release \ +%ifarch ppc64le + --enable-targets=powerpcle-linux \ +%endif + --disable-multilib \ + --enable-__cxa_atexit --disable-libunwind-exceptions \ + --disable-libsanitizer --disable-lto \ + --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only \ + --with-default-libstdcxx-abi=gcc4-compatible \ + --enable-libstdcxx-backtrace \ +%ifnarch %{mips} + --with-linker-hash-style=gnu \ +%endif + --enable-plugin --enable-initfini-array \ +%if %{attr_ifunc} + --enable-gnu-indirect-function \ +%endif +%if %{build_isl} + --with-isl \ +%else + --without-isl \ +%endif +%if %{build_libmpx} + --enable-libmpx \ +%else + --disable-libmpx \ +%endif +%if %{build_libquadmath} + --enable-libquadmath \ +%else + --disable-libquadmath \ +%endif +%ifarch %{arm} + --disable-sjlj-exceptions \ +%endif +%ifarch ppc ppc64 ppc64le ppc64p7 + --enable-secureplt \ +%endif +%ifarch sparc sparcv9 sparc64 ppc ppc64 ppc64le ppc64p7 s390 s390x alpha + --with-long-double-128 \ +%endif +%ifarch sparc + --disable-linux-futex \ +%endif +%ifarch sparc64 + --with-cpu=ultrasparc \ +%endif +%ifarch %{ix86} x86_64 + --with-tune=generic \ +%endif +%ifarch %{ix86} + --with-arch=x86-64 \ +%endif +%ifarch x86_64 + --with-arch_32=x86-64 \ +%endif +%ifnarch sparc sparcv9 ppc + --build=%{gcc_target_platform} \ +%endif + " + +# Add Secure Compilation Options +OPT_FLAGS="$OPT_FLAGS -O2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong -fPIE -Wl,-z,relro,-z,now" +OPT_LDFLAGS="$OPT_LDFLAGS -Wl,-z,relro,-z,now" + +# Disable bootstrap for saving compilation time +export extra_ldflags_libobjc="-Wl,-z,relro,-z,now" +export FCFLAGS="$OPT_FLAGS" +CC="$CC" CXX="$CXX" \ + CFLAGS="$OPT_FLAGS" \ + CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \ + | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \ + LDFLAGS="$OPT_LDFLAGS" \ + CFLAGS_FOR_TARGET="$OPT_FLAGS" \ + CXXFLAGS_FOR_TARGET="$OPT_FLAGS" \ + XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" GCJFLAGS="$OPT_FLAGS" \ + ../configure --disable-bootstrap \ + --enable-languages=c,c++ \ + $CONFIGURE_OPTS + +%ifarch sparc sparcv9 sparc64 +make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" +%else +make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" +%endif + +CC="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cc`" +CXX="`%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-cxx` `%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags --build-includes`" + +# Build libgccjit separately, so that normal compiler binaries aren't -fpic +# unnecessarily. +mkdir objlibgccjit +cd objlibgccjit +JIT_OPT_FLAGS="$OPT_FLAGS -fPIC" +CC="$CC" CXX="$CXX" \ + CFLAGS="$JIT_OPT_FLAGS" \ + CXXFLAGS="`echo " $JIT_OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g' \ + | sed 's/ -Wformat-security / -Wformat -Wformat-security /'`" \ + LDFLAGS="$OPT_LDFLAGS" \ + CFLAGS_FOR_TARGET="$JIT_OPT_FLAGS" \ + CXXFLAGS_FOR_TARGET="$JIT_OPT_FLAGS" \ + XCFLAGS="$JIT_OPT_FLAGS" TCFLAGS="$JIT_OPT_FLAGS" GCJFLAGS="$JIT_OPT_FLAGS" \ + ../../configure --disable-bootstrap --enable-host-shared \ + --with-pic --enable-languages=jit $CONFIGURE_OPTS +make %{?_smp_mflags} BOOT_CFLAGS="$JIT_OPT_FLAGS" all-gcc +cp -a gcc/libgccjit.so* ../gcc/ +cd ../gcc/ +ln -sf xgcc %{gcc_target_platform}-gcc-%{gcc_major} +cp -a Makefile{,.orig} +sed -i -e '/^CHECK_TARGETS/s/$/ check-jit/' Makefile +touch -r Makefile.orig Makefile +rm Makefile.orig +make jit.sphinx.html +make jit.sphinx.install-html jit_htmldir=`pwd`/../../rpm.doc/libgccjit-devel/html +cd .. + +# Make generated man pages even if Pod::Man is not new enough +perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl +for i in ../gcc/doc/*.texi; do + cp -a $i $i.orig; sed 's/ftable/table/' $i.orig > $i +done +make -C gcc generated-manpages +for i in ../gcc/doc/*.texi; do mv -f $i.orig $i; done + + +# Copy various doc files here and there +cd .. +mkdir -p rpm.doc/gfortran rpm.doc/objc +mkdir -p rpm.doc/go rpm.doc/libgo rpm.doc/libquadmath rpm.doc/libitm +mkdir -p rpm.doc/changelogs/{gcc/cp,gcc/ada,gcc/jit,libstdc++-v3,libobjc,libgomp,libcc1,libatomic,libsanitizer,libcilkrts,libmpx} + +for i in {gcc,gcc/cp,gcc/ada,gcc/jit,libstdc++-v3,libobjc,libgomp,libcc1,libatomic,libsanitizer,libcilkrts,libmpx}/ChangeLog*; do + cp -p $i rpm.doc/changelogs/$i +done + +(cd gcc/fortran; for i in ChangeLog*; do + cp -p $i ../../rpm.doc/gfortran/$i +done) +(cd libgfortran; for i in ChangeLog*; do + cp -p $i ../rpm.doc/gfortran/$i.libgfortran +done) +%if %{build_objc} +(cd libobjc; for i in README*; do + cp -p $i ../rpm.doc/objc/$i.libobjc +done) +%endif +%if %{build_libquadmath} +(cd libquadmath; for i in ChangeLog* COPYING.LIB; do + cp -p $i ../rpm.doc/libquadmath/$i.libquadmath +done) +%endif +%if %{build_libitm} +(cd libitm; for i in ChangeLog*; do + cp -p $i ../rpm.doc/libitm/$i.libitm +done) +%endif +%if %{build_go} +(cd gcc/go; for i in README* ChangeLog*; do + cp -p $i ../../rpm.doc/go/$i +done) +(cd libgo; for i in LICENSE* PATENTS* README; do + cp -p $i ../rpm.doc/libgo/$i.libgo +done) +%endif + +rm -f rpm.doc/changelogs/gcc/ChangeLog.[1-9] +find rpm.doc -name \*ChangeLog\* | xargs bzip2 -9 + +%install +rm -rf %{buildroot} + +cd obj-%{gcc_target_platform} +TARGET_PLATFORM=%{gcc_target_platform} +GCC_BUILD_DIR="`pwd`" + +# There are some MP bugs in libstdc++ Makefiles +make -C %{gcc_target_platform}/libstdc++-v3 + +make prefix=%{buildroot}%{_prefix} mandir=%{buildroot}%{_mandir} \ + infodir=%{buildroot}%{_infodir} install +%if %{build_ada} +chmod 644 %{buildroot}%{_infodir}/gnat* +%endif + +FULLPATH=%{buildroot}%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +FULLEPATH=%{buildroot}%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} + +# fix some things +ln -sf gcc%{binsuffix} %{buildroot}%{_prefix}/bin/cc +rm -f %{buildroot}%{_prefix}/lib/cpp +ln -sf ../bin/cpp%{binsuffix} %{buildroot}/%{_prefix}/lib/cpp +%if %{build_fortran} +ln -sf gfortran%{binsuffix} %{buildroot}%{_prefix}/bin/f95 +%endif +rm -f %{buildroot}%{_infodir}/dir +gzip -9 %{buildroot}%{_infodir}/*.info* +%if %{build_ada} +ln -sf gcc%{binsuffix} %{buildroot}%{_prefix}/bin/gnatgcc +%endif +%if %{build_fortran} +mkdir -p %{buildroot}%{_fmoddir} +%endif + +%if %{build_go} +mv %{buildroot}%{_prefix}/bin/go{,.gcc} +mv %{buildroot}%{_prefix}/bin/gofmt{,.gcc} +ln -sf /etc/alternatives/go %{buildroot}%{_prefix}/bin/go +ln -sf /etc/alternatives/gofmt %{buildroot}%{_prefix}/bin/gofmt +%endif + +cxxconfig="`find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h`" +for i in `find %{gcc_target_platform}/[36]*/libstdc++-v3/include -name c++config.h 2>/dev/null`; do + if ! diff -up $cxxconfig $i; then + cat > %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/c++config.h <<EOF +#ifndef _CPP_CPPCONFIG_WRAPPER +#define _CPP_CPPCONFIG_WRAPPER 1 +#include <bits/wordsize.h> +#if __WORDSIZE == 32 +%ifarch %{multilib_64_archs} +`cat $(find %{gcc_target_platform}/32/libstdc++-v3/include -name c++config.h)` +%else +`cat $(find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h)` +%endif +#else +%ifarch %{multilib_64_archs} +`cat $(find %{gcc_target_platform}/libstdc++-v3/include -name c++config.h)` +%else +`cat $(find %{gcc_target_platform}/64/libstdc++-v3/include -name c++config.h)` +%endif +#endif +#endif +EOF + break + fi +done + +for f in `find %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/ -name c++config.h`; do + for i in 1 2 4 8; do + sed -i -e 's/#define _GLIBCXX_ATOMIC_BUILTINS_'$i' 1/#ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_'$i'\ +&\ +#endif/' $f + done +done + +# Nuke bits/*.h.gch dirs +# 1) there is no bits/*.h header installed, so when gch file can't be +# used, compilation fails +# 2) sometimes it is hard to match the exact options used for building +# libstdc++-v3 or they aren't desirable +# 3) there are multilib issues, conflicts etc. with this +# 4) it is huge +# People can always precompile on their own whatever they want, but +# shipping this for everybody is unnecessary. +rm -rf %{buildroot}%{_prefix}/include/c++/%{gcc_major}/%{gcc_target_platform}/bits/*.h.gch + + +%ifarch sparcv9 sparc64 +ln -f %{buildroot}%{_prefix}/bin/%{gcc_target_platform}-gcc \ + %{buildroot}%{_prefix}/bin/sparc-%{_vendor}-%{_target_os}-gcc +%endif +%ifarch ppc ppc64 ppc64p7 +ln -f %{buildroot}%{_prefix}/bin/%{gcc_target_platform}-gcc \ + %{buildroot}%{_prefix}/bin/ppc-%{_vendor}-%{_target_os}-gcc +%endif + +FULLLSUBDIR= +%ifarch sparcv9 ppc +FULLLSUBDIR=lib32 +%endif +%ifarch sparc64 ppc64 ppc64p7 +FULLLSUBDIR=lib64 +%endif +if [ -n "$FULLLSUBDIR" ]; then + FULLLPATH=$FULLPATH/$FULLLSUBDIR + mkdir -p $FULLLPATH +else + FULLLPATH=$FULLPATH +fi + +find %{buildroot} -name \*.la | xargs rm -f + +%if %{build_fortran} +mv %{buildroot}%{_prefix}/%{_lib}/libgfortran.spec $FULLPATH/ +%endif +%if %{build_libitm} +mv %{buildroot}%{_prefix}/%{_lib}/libitm.spec $FULLPATH/ +%endif +%if %{build_libasan} +mv %{buildroot}%{_prefix}/%{_lib}/libsanitizer.spec $FULLPATH/ +%endif +%if %{build_libcilkrts} +mv %{buildroot}%{_prefix}/%{_lib}/libcilkrts.spec $FULLPATH/ +%endif +%if %{build_libmpx} +mv %{buildroot}%{_prefix}/%{_lib}/libmpx.spec $FULLPATH/ +%endif + +mkdir -p %{buildroot}/%{_lib} +mv -f %{buildroot}%{_prefix}/%{_lib}/libgcc_s.so.1 %{buildroot}%{_prefix}/%{_lib}/libgcc_s-%{gcc_major}.so.1 +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgcc_s-%{gcc_major}.so.1 +ln -sf libgcc_s-%{gcc_major}.so.1 %{buildroot}%{_prefix}/%{_lib}/libgcc_s.so.1 +rm -f $FULLPATH/libgcc_s.so +echo '/* GNU ld script + Use the toolset shared library, but some functions are only in + the static library, so try that secondarily. */ +GROUP ( /usr/%{_lib}/libgcc_s.so.1 libgcc.a )' > $FULLPATH/libgcc_s.so +%ifarch sparcv9 ppc +ln -sf /lib64/libgcc_s.so.1 $FULLPATH/64/libgcc_s.so +%endif +%ifarch %{multilib_64_archs} +ln -sf /lib/libgcc_s.so.1 $FULLPATH/32/libgcc_s.so +%endif +%ifarch ppc +rm -f $FULLPATH/libgcc_s.so +echo '/* GNU ld script + Use the shared library, but some functions are only in + the static library, so try that secondarily. */ +OUTPUT_FORMAT(elf32-powerpc) +GROUP ( /usr/%{_lib}/libgcc_s.so.1 libgcc.a )' > $FULLPATH/libgcc_s.so +%endif +%ifarch ppc64 ppc64p7 +rm -f $FULLPATH/32/libgcc_s.so +echo '/* GNU ld script + Use the shared library, but some functions are only in + the static library, so try that secondarily. */ +OUTPUT_FORMAT(elf32-powerpc) +GROUP ( /usr/lib/libgcc_s.so.1 libgcc.a )' > $FULLPATH/32/libgcc_s.so +%endif +%ifarch %{arm} +rm -f $FULLPATH/libgcc_s.so +echo '/* GNU ld script + Use the shared library, but some functions are only in + the static library, so try that secondarily. */ +OUTPUT_FORMAT(elf32-littlearm) +GROUP ( /usr/lib/libgcc_s.so.1 libgcc.a )' > $FULLPATH/libgcc_s.so +%endif + +mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.spec $FULLPATH/ + +%if %{build_ada} +mv -f $FULLPATH/adalib/libgnarl-*.so %{buildroot}%{_prefix}/%{_lib}/ +mv -f $FULLPATH/adalib/libgnat-*.so %{buildroot}%{_prefix}/%{_lib}/ +rm -f $FULLPATH/adalib/libgnarl.so* $FULLPATH/adalib/libgnat.so* +%endif + +mkdir -p %{buildroot}%{_prefix}/libexec/getconf +if gcc/xgcc -B gcc/ -E -P -dD -xc /dev/null | grep '__LONG_MAX__.*\(2147483647\|0x7fffffff\($\|[LU]\)\)'; then + ln -sf /usr/libexec/getconf/POSIX_V6_ILP32_OFF32 %{buildroot}%{_prefix}/libexec/getconf/default +else + ln -sf /usr/libexec/getconf/POSIX_V6_LP64_OFF64 %{buildroot}%{_prefix}/libexec/getconf/default +fi + +mkdir -p %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib} +mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++*gdb.py* \ + %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/ +pushd ../libstdc++-v3/python +for i in `find . -name \*.py`; do + touch -r $i %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/$i +done +touch -r hook.in %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc++*gdb.py +popd +for f in `find %{buildroot}%{_prefix}/share/gcc-%{gcc_major}/python/ \ + %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/ -name \*.py`; do + r=${f/$RPM_BUILD_ROOT/} + %{__python3} -c 'import py_compile; py_compile.compile("'$f'", dfile="'$r'")' + %{__python3} -O -c 'import py_compile; py_compile.compile("'$f'", dfile="'$r'")' +done + +rm -f $FULLEPATH/libgccjit.so +cp -a objlibgccjit/gcc/libgccjit.so* %{buildroot}%{_prefix}/%{_lib}/ +cp -a ../gcc/jit/libgccjit*.h %{buildroot}%{_prefix}/include/ +/usr/bin/install -c -m 644 objlibgccjit/gcc/doc/libgccjit.info %{buildroot}/%{_infodir}/ +gzip -9 %{buildroot}/%{_infodir}/libgccjit.info + +pushd $FULLPATH +if [ "%{_lib}" = "lib" ]; then +%if %{build_objc} +ln -sf ../../../libobjc.so.4 libobjc.so +%endif +ln -sf ../../../libstdc++.so.6.*[0-9] libstdc++.so +%if %{build_fortran} +ln -sf ../../../libgfortran.so.4.* libgfortran.so +%endif +ln -sf ../../../libgomp.so.1.* libgomp.so +%if %{build_go} +ln -sf ../../../libgo.so.11.* libgo.so +%endif +%if %{build_libquadmath} +ln -sf ../../../libquadmath.so.0.* libquadmath.so +%endif +%if %{build_libitm} +ln -sf ../../../libitm.so.1.* libitm.so +%endif +%if %{build_libatomic} +ln -sf ../../../libatomic.so.1.* libatomic.so +%endif +%if %{build_libasan} +ln -sf ../../../libasan.so.4.* libasan.so +mv ../../../libasan_preinit.o libasan_preinit.o +%endif +%if %{build_libubsan} +ln -sf ../../../libubsan.so.0.* libubsan.so +%endif +%if %{build_libcilkrts} +ln -sf ../../../libcilkrts.so.5.* libcilkrts.so +%endif +%if %{build_libmpx} +ln -sf ../../../libmpx.so.2.* libmpx.so +ln -sf ../../../libmpxwrappers.so.2.* libmpxwrappers.so +%endif +else +%if %{build_objc} +ln -sf ../../../../%{_lib}/libobjc.so.4 libobjc.so +%endif +ln -sf ../../../../%{_lib}/libstdc++.so.6.*[0-9] libstdc++.so +%if %{build_fortran} +ln -sf ../../../../%{_lib}/libgfortran.so.4.* libgfortran.so +%endif +ln -sf ../../../../%{_lib}/libgomp.so.1.* libgomp.so +%if %{build_go} +ln -sf ../../../../%{_lib}/libgo.so.11.* libgo.so +%endif +%if %{build_libquadmath} +ln -sf ../../../../%{_lib}/libquadmath.so.0.* libquadmath.so +%endif +%if %{build_libitm} +ln -sf ../../../../%{_lib}/libitm.so.1.* libitm.so +%endif +%if %{build_libatomic} +ln -sf ../../../../%{_lib}/libatomic.so.1.* libatomic.so +%endif +%if %{build_libasan} +ln -sf ../../../../%{_lib}/libasan.so.4.* libasan.so +mv ../../../../%{_lib}/libasan_preinit.o libasan_preinit.o +%endif +%if %{build_libubsan} +ln -sf ../../../../%{_lib}/libubsan.so.0.* libubsan.so +%endif +%if %{build_libcilkrts} +ln -sf ../../../../%{_lib}/libcilkrts.so.5.* libcilkrts.so +%endif +%if %{build_libmpx} +ln -sf ../../../../%{_lib}/libmpx.so.2.* libmpx.so +ln -sf ../../../../%{_lib}/libmpxwrappers.so.2.* libmpxwrappers.so +%endif +%if %{build_libtsan} +rm -f libtsan.so +echo 'INPUT ( %{_prefix}/%{_lib}/'`echo ../../../../%{_lib}/libtsan.so.0.* | sed 's,^.*libt,libt,'`' )' > libtsan.so +mv ../../../../%{_lib}/libtsan_preinit.o libtsan_preinit.o +%endif +%if %{build_liblsan} +rm -f liblsan.so +echo 'INPUT ( %{_prefix}/%{_lib}/'`echo ../../../../%{_lib}/liblsan.so.0.* | sed 's,^.*libl,libl,'`' )' > liblsan.so +%endif +fi +mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++.*a $FULLLPATH/ +mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++fs.*a $FULLLPATH/ +mv -f %{buildroot}%{_prefix}/%{_lib}/libsupc++.*a $FULLLPATH/ +%ifarch x86_64 +cp "$GCC_BUILD_DIR/%{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++_nonshared48.a" \ + libstdc++_nonshared.a +rm -f libstdc++.so +echo 'OUTPUT_FORMAT(elf64-x86-64)' > libstdc++.so +echo 'INPUT ( ./libstdc++.so.6 -lstdc++_nonshared )' >> libstdc++.so +cp %{gcc_toolset_root}/usr/%{_lib}/libstdc++.so.6.0.19 libstdc++.so.6 +%endif +%ifarch aarch64 +cp "$GCC_BUILD_DIR/%{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++_nonshared48.a" \ + libstdc++_nonshared.a +rm -f libstdc++.so +echo 'OUTPUT_FORMAT(elf64-littleaarch64)' > libstdc++.so +echo 'INPUT ( ./libstdc++.so.6 -lstdc++_nonshared )' >> libstdc++.so +cp %{gcc_toolset_root}/usr/%{_lib}/libstdc++.so.6.0.19 libstdc++.so.6 +%endif +%if %{build_fortran} +mv -f %{buildroot}%{_prefix}/%{_lib}/libgfortran.*a $FULLLPATH/ +%endif +%if %{build_objc} +mv -f %{buildroot}%{_prefix}/%{_lib}/libobjc.*a . +%endif +mv -f %{buildroot}%{_prefix}/%{_lib}/libgomp.*a . +%if %{build_libquadmath} +mv -f %{buildroot}%{_prefix}/%{_lib}/libquadmath.*a $FULLLPATH/ +%endif +%if %{build_libitm} +mv -f %{buildroot}%{_prefix}/%{_lib}/libitm.*a $FULLLPATH/ +%endif +%if %{build_libatomic} +mv -f %{buildroot}%{_prefix}/%{_lib}/libatomic.*a $FULLLPATH/ +%endif +%if %{build_libasan} +mv -f %{buildroot}%{_prefix}/%{_lib}/libasan.*a $FULLLPATH/ +%endif +%if %{build_libubsan} +mv -f %{buildroot}%{_prefix}/%{_lib}/libubsan.*a $FULLLPATH/ +%endif +%if %{build_libcilkrts} +mv -f %{buildroot}%{_prefix}/%{_lib}/libcilkrts.*a $FULLLPATH/ +%endif +%if %{build_libmpx} +mv -f %{buildroot}%{_prefix}/%{_lib}/libmpx.*a $FULLLPATH/ +mv -f %{buildroot}%{_prefix}/%{_lib}/libmpxwrappers.*a $FULLLPATH/ +%endif +%if %{build_libtsan} +mv -f %{buildroot}%{_prefix}/%{_lib}/libtsan.*a $FULLPATH/ +%endif +%if %{build_liblsan} +mv -f %{buildroot}%{_prefix}/%{_lib}/liblsan.*a $FULLPATH/ +%endif +%if %{build_go} +mv -f %{buildroot}%{_prefix}/%{_lib}/libgo.*a $FULLLPATH/ +mv -f %{buildroot}%{_prefix}/%{_lib}/libgobegin.*a $FULLLPATH/ +mv -f %{buildroot}%{_prefix}/%{_lib}/libgolibbegin.*a $FULLLPATH/ +%endif + +%if %{build_ada} +%ifarch sparcv9 ppc +rm -rf $FULLPATH/64/ada{include,lib} +%endif +%ifarch %{multilib_64_archs} +rm -rf $FULLPATH/32/ada{include,lib} +%endif +if [ "$FULLPATH" != "$FULLLPATH" ]; then +mv -f $FULLPATH/ada{include,lib} $FULLLPATH/ +pushd $FULLLPATH/adalib +if [ "%{_lib}" = "lib" ]; then +ln -sf ../../../../../libgnarl-*.so libgnarl.so +ln -sf ../../../../../libgnarl-*.so libgnarl-6.so +ln -sf ../../../../../libgnat-*.so libgnat.so +ln -sf ../../../../../libgnat-*.so libgnat-7.so +else +ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl.so +ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl-6.so +ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat.so +ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat-7.so +fi +popd +else +pushd $FULLPATH/adalib +if [ "%{_lib}" = "lib" ]; then +ln -sf ../../../../libgnarl-*.so libgnarl.so +ln -sf ../../../../libgnarl-*.so libgnarl-6.so +ln -sf ../../../../libgnat-*.so libgnat.so +ln -sf ../../../../libgnat-*.so libgnat-7.so +else +ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl.so +ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl-6.so +ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat.so +ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat-7.so +fi +popd +fi +%endif + +%ifarch sparcv9 ppc +%if %{build_objc} +ln -sf ../../../../../lib64/libobjc.so.4 64/libobjc.so +%endif +ln -sf ../`echo ../../../../lib/libstdc++.so.6.*[0-9] | sed s~/lib/~/lib64/~` 64/libstdc++.so +ln -sf ../`echo ../../../../lib/libgfortran.so.4.* | sed s~/lib/~/lib64/~` 64/libgfortran.so +ln -sf ../`echo ../../../../lib/libgomp.so.1.* | sed s~/lib/~/lib64/~` 64/libgomp.so +%if %{build_go} +rm -f libgo.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libgo.so.11.* | sed 's,^.*libg,libg,'`' )' > libgo.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libgo.so.11.* | sed 's,^.*libg,libg,'`' )' > 64/libgo.so +%endif +%if %{build_libquadmath} +rm -f libquadmath.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > libquadmath.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > 64/libquadmath.so +%endif +%if %{build_libitm} +rm -f libitm.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > libitm.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > 64/libitm.so +%endif +%if %{build_libatomic} +rm -f libatomic.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > libatomic.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > 64/libatomic.so +%endif +%if %{build_libasan} +rm -f libasan.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libasan.so.4.* | sed 's,^.*liba,liba,'`' )' > libasan.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libasan.so.4.* | sed 's,^.*liba,liba,'`' )' > 64/libasan.so +mv ../../../../lib64/libasan_preinit.o 64/libasan_preinit.o +%endif +%if %{build_libubsan} +rm -f libubsan.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libubsan.so.0.* | sed 's,^.*libu,libu,'`' )' > libubsan.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libubsan.so.0.* | sed 's,^.*libu,libu,'`' )' > 64/libubsan.so +%endif +%if %{build_libcilkrts} +rm -f libcilkrts.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libcilkrts.so.5.* | sed 's,^.*libc,libc,'`' )' > libcilkrts.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libcilkrts.so.5.* | sed 's,^.*libc,libc,'`' )' > 64/libcilkrts.so +%endif +%if %{build_libmpx} +rm -f libmpx.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libmpx.so.2.* | sed 's,^.*libm,libm,'`' )' > libmpx.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libmpx.so.2.* | sed 's,^.*libm,libm,'`' )' > 64/libmpx.so +rm -f libmpxwrappers.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib/libmpxwrappers.so.2.* | sed 's,^.*libm,libm,'`' )' > libmpxwrappers.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib/libmpxwrappers.so.2.* | sed 's,^.*libm,libm,'`' )' > 64/libmpxwrappers.so +%endif +ln -sf lib32/libgfortran.a libgfortran.a +ln -sf ../lib64/libgfortran.a 64/libgfortran.a +%if %{build_objc} +mv -f %{buildroot}%{_prefix}/lib64/libobjc.*a 64/ +%endif +mv -f %{buildroot}%{_prefix}/lib64/libgomp.*a 64/ +ln -sf lib32/libstdc++.a libstdc++.a +ln -sf ../lib64/libstdc++.a 64/libstdc++.a +ln -sf lib32/libstdc++fs.a libstdc++fs.a +ln -sf ../lib64/libstdc++fs.a 64/libstdc++fs.a +ln -sf lib32/libsupc++.a libsupc++.a +ln -sf ../lib64/libsupc++.a 64/libsupc++.a +%if %{build_libquadmath} +ln -sf lib32/libquadmath.a libquadmath.a +ln -sf ../lib64/libquadmath.a 64/libquadmath.a +%endif +%if %{build_libitm} +ln -sf lib32/libitm.a libitm.a +ln -sf ../lib64/libitm.a 64/libitm.a +%endif +%if %{build_libatomic} +ln -sf lib32/libatomic.a libatomic.a +ln -sf ../lib64/libatomic.a 64/libatomic.a +%endif +%if %{build_libasan} +ln -sf lib32/libasan.a libasan.a +ln -sf ../lib64/libasan.a 64/libasan.a +%endif +%if %{build_libubsan} +ln -sf lib32/libubsan.a libubsan.a +ln -sf ../lib64/libubsan.a 64/libubsan.a +%endif +%if %{build_libcilkrts} +ln -sf lib32/libcilkrts.a libcilkrts.a +ln -sf ../lib64/libcilkrts.a 64/libcilkrts.a +%endif +%if %{build_libmpx} +ln -sf lib32/libmpx.a libmpx.a +ln -sf ../lib64/libmpx.a 64/libmpx.a +ln -sf lib32/libmpxwrappers.a libmpxwrappers.a +ln -sf ../lib64/libmpxwrappers.a 64/libmpxwrappers.a +%endif +%if %{build_go} +ln -sf lib32/libgo.a libgo.a +ln -sf ../lib64/libgo.a 64/libgo.a +ln -sf lib32/libgobegin.a libgobegin.a +ln -sf ../lib64/libgobegin.a 64/libgobegin.a +ln -sf lib32/libgolibbegin.a libgolibbegin.a +ln -sf ../lib64/libgolibbegin.a 64/libgolibbegin.a +%endif +%if %{build_ada} +ln -sf lib32/adainclude adainclude +ln -sf ../lib64/adainclude 64/adainclude +ln -sf lib32/adalib adalib +ln -sf ../lib64/adalib 64/adalib +%endif +%endif +%ifarch %{multilib_64_archs} +mkdir -p 32 +%if %{build_objc} +ln -sf ../../../../libobjc.so.4 32/libobjc.so +%endif +ln -sf ../`echo ../../../../lib64/libstdc++.so.6.*[0-9] | sed s~/../lib64/~/~` 32/libstdc++.so +ln -sf ../`echo ../../../../lib64/libgfortran.so.4.* | sed s~/../lib64/~/~` 32/libgfortran.so +ln -sf ../`echo ../../../../lib64/libgomp.so.1.* | sed s~/../lib64/~/~` 32/libgomp.so +%if %{build_go} +rm -f libgo.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libgo.so.11.* | sed 's,^.*libg,libg,'`' )' > libgo.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libgo.so.11.* | sed 's,^.*libg,libg,'`' )' > 32/libgo.so +%endif +%if %{build_libquadmath} +rm -f libquadmath.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > libquadmath.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libquadmath.so.0.* | sed 's,^.*libq,libq,'`' )' > 32/libquadmath.so +%endif +%if %{build_libitm} +rm -f libitm.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > libitm.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libitm.so.1.* | sed 's,^.*libi,libi,'`' )' > 32/libitm.so +%endif +%if %{build_libatomic} +rm -f libatomic.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > libatomic.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libatomic.so.1.* | sed 's,^.*liba,liba,'`' )' > 32/libatomic.so +%endif +%if %{build_libasan} +rm -f libasan.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libasan.so.4.* | sed 's,^.*liba,liba,'`' )' > libasan.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libasan.so.4.* | sed 's,^.*liba,liba,'`' )' > 32/libasan.so +mv ../../../../lib/libasan_preinit.o 32/libasan_preinit.o +%endif +%if %{build_libubsan} +rm -f libubsan.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libubsan.so.0.* | sed 's,^.*libu,libu,'`' )' > libubsan.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libubsan.so.0.* | sed 's,^.*libu,libu,'`' )' > 32/libubsan.so +%endif +%if %{build_libcilkrts} +rm -f libcilkrts.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libcilkrts.so.5.* | sed 's,^.*libc,libc,'`' )' > libcilkrts.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libcilkrts.so.5.* | sed 's,^.*libc,libc,'`' )' > 32/libcilkrts.so +%endif +%if %{build_libmpx} +rm -f libmpx.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libmpx.so.2.* | sed 's,^.*libm,libm,'`' )' > libmpx.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libmpx.so.2.* | sed 's,^.*libm,libm,'`' )' > 32/libmpx.so +rm -f libmpxwrappers.so +echo 'INPUT ( %{_prefix}/lib64/'`echo ../../../../lib64/libmpxwrappers.so.2.* | sed 's,^.*libm,libm,'`' )' > libmpxwrappers.so +echo 'INPUT ( %{_prefix}/lib/'`echo ../../../../lib64/libmpxwrappers.so.2.* | sed 's,^.*libm,libm,'`' )' > 32/libmpxwrappers.so +%endif +%if %{build_objc} +mv -f %{buildroot}%{_prefix}/lib/libobjc.*a 32/ +%endif +mv -f %{buildroot}%{_prefix}/lib/libgomp.*a 32/ +%endif +%ifarch sparc64 ppc64 ppc64p7 +ln -sf ../lib32/libgfortran.a 32/libgfortran.a +ln -sf lib64/libgfortran.a libgfortran.a +ln -sf ../lib32/libstdc++.a 32/libstdc++.a +ln -sf lib64/libstdc++.a libstdc++.a +ln -sf ../lib32/libstdc++fs.a 32/libstdc++fs.a +ln -sf lib64/libstdc++fs.a libstdc++fs.a +ln -sf ../lib32/libsupc++.a 32/libsupc++.a +ln -sf lib64/libsupc++.a libsupc++.a +%if %{build_libquadmath} +ln -sf ../lib32/libquadmath.a 32/libquadmath.a +ln -sf lib64/libquadmath.a libquadmath.a +%endif +%if %{build_libitm} +ln -sf ../lib32/libitm.a 32/libitm.a +ln -sf lib64/libitm.a libitm.a +%endif +%if %{build_libatomic} +ln -sf ../lib32/libatomic.a 32/libatomic.a +ln -sf lib64/libatomic.a libatomic.a +%endif +%if %{build_libasan} +ln -sf ../lib32/libasan.a 32/libasan.a +ln -sf lib64/libasan.a libasan.a +%endif +%if %{build_libubsan} +ln -sf ../lib32/libubsan.a 32/libubsan.a +ln -sf lib64/libubsan.a libubsan.a +%endif +%if %{build_libcilkrts} +ln -sf ../lib32/libcilkrts.a 32/libcilkrts.a +ln -sf lib64/libcilkrts.a libcilkrts.a +%endif +%if %{build_libmpx} +ln -sf ../lib32/libmpx.a 32/libmpx.a +ln -sf lib64/libmpx.a libmpx.a +ln -sf ../lib32/libmpxwrappers.a 32/libmpxwrappers.a +ln -sf lib64/libmpxwrappers.a libmpxwrappers.a +%endif +%if %{build_go} +ln -sf ../lib32/libgo.a 32/libgo.a +ln -sf lib64/libgo.a libgo.a +ln -sf ../lib32/libgobegin.a 32/libgobegin.a +ln -sf lib64/libgobegin.a libgobegin.a +ln -sf ../lib32/libgolibbegin.a 32/libgolibbegin.a +ln -sf lib64/libgolibbegin.a libgolibbegin.a +%endif +%if %{build_ada} +ln -sf ../lib32/adainclude 32/adainclude +ln -sf lib64/adainclude adainclude +ln -sf ../lib32/adalib 32/adalib +ln -sf lib64/adalib adalib +%endif +%else +%ifarch %{multilib_64_archs} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgfortran.a 32/libgfortran.a +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libstdc++.a 32/libstdc++.a +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libstdc++fs.a 32/libstdc++fs.a +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libsupc++.a 32/libsupc++.a +%if %{build_libquadmath} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libquadmath.a 32/libquadmath.a +%endif +%if %{build_libitm} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libitm.a 32/libitm.a +%endif +%if %{build_libatomic} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libatomic.a 32/libatomic.a +%endif +%if %{build_libasan} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libasan.a 32/libasan.a +%endif +%if %{build_libubsan} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libubsan.a 32/libubsan.a +%endif +%if %{build_libcilkrts} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libcilkrts.a 32/libcilkrts.a +%endif +%if %{build_libmpx} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libmpx.a 32/libmpx.a +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libmpxwrappers.a 32/libmpxwrappers.a +%endif +%if %{build_go} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgo.a 32/libgo.a +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgobegin.a 32/libgobegin.a +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/libgolibbegin.a 32/libgolibbegin.a +%endif +%if %{build_ada} +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/adainclude 32/adainclude +ln -sf ../../../%{multilib_32_arch}-%{_vendor}-%{_target_os}/%{gcc_major}/adalib 32/adalib +%endif +%endif +%endif + +# If we are building a debug package then copy all of the static archives +# into the debug directory to keep them as unstripped copies. +%if 0%{?_enable_debug_packages} +for d in . $FULLLSUBDIR; do + mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/$d + for f in `find $d -maxdepth 1 -a \ + \( -name libasan.a -o -name libatomic.a \ + -o -name libcaf_single.a -o -name libcilkrts.a \ + -o -name libgcc.a -o -name libgcc_eh.a \ + -o -name libgcov.a -o -name libgfortran.a \ + -o -name libgo.a -o -name libgobegin.a \ + -o -name libgolibbegin.a -o -name libgomp.a \ + -o -name libitm.a -o -name liblsan.a \ + -o -name libmpx.a -o -name libmpxwrappers.a \ + -o -name libobjc.a \ + -o -name libquadmath.a -o -name libstdc++.a \ + -o -name libstdc++fs.a -o -name libsupc++.a \ + -o -name libtsan.a -o -name libubsan.a \) -a -type f`; do + cp -a $f $RPM_BUILD_ROOT%{_prefix}/lib/debug%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/$d/ + done +done +%endif + +# Strip debug info from Fortran/ObjC/Java static libraries +strip -g `find . \( -name libgfortran.a -o -name libobjc.a -o -name libgomp.a \ + -o -name libgcc.a -o -name libgcov.a -o -name libquadmath.a \ + -o -name libitm.a -o -name libgo.a -o -name libcaf\*.a \ + -o -name libatomic.a -o -name libasan.a -o -name libtsan.a \ + -o -name libubsan.a -o -name liblsan.a -o -name libcilkrts.a \ + -o -name libmpx.a -o -name libmpxwrappers.a -o -name libcc1.a \) \ + -a -type f` +popd +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgomp.so.1.* +%if %{build_gdb_plugin} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libcc1.so.0.* +%else +rm -f %{buildroot}%{_prefix}/%{_lib}/libcc1.so* +rm -f $FULLPATH/plugin/libcc1plugin.so* +rm -f $FULLPATH/plugin/libcp1plugin.so* +%endif +%if ! %{build_lto} +rm -f $FULLEPATH/lto1 +rm -f $FULLEPATH/lto-wrapper +rm -f $FULLEPATH/liblto_plugin.so* +%endif +%if %{build_fortran} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgfortran.so.4.* +%endif +%if %{build_libquadmath} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libquadmath.so.0.* +%endif +%if %{build_libitm} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libitm.so.1.* +%endif +%if %{build_libatomic} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libatomic.so.1.* +%endif +%if %{build_libasan} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libasan.so.4.* +%endif +%if %{build_libubsan} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libubsan.so.0.* +%endif +%if %{build_libcilkrts} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libcilkrts.so.5.* +%endif +%if %{build_libmpx} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libmpx.so.2.* +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libmpxwrappers.so.2.* +%endif +%if %{build_libtsan} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libtsan.so.0.* +%endif +%if %{build_liblsan} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/liblsan.so.0.* +%endif +%if %{build_go} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgo.so.11.* +%endif +%if %{build_objc} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libobjc.so.4.* +%endif + +%if %{build_ada} +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgnarl*so* +chmod 755 %{buildroot}%{_prefix}/%{_lib}/libgnat*so* +%endif + +mv $FULLPATH/include-fixed/syslimits.h $FULLPATH/include/syslimits.h +mv $FULLPATH/include-fixed/limits.h $FULLPATH/include/limits.h +for h in `find $FULLPATH/include -name \*.h`; do + if grep -q 'It has been auto-edited by fixincludes from' $h; then + rh=`grep -A2 'It has been auto-edited by fixincludes from' $h | tail -1 | sed 's|^.*"\(.*\)".*$|\1|'` + diff -up $rh $h || : + rm -f $h + fi +done + +cat > %{buildroot}%{_prefix}/bin/c89 <<"EOF" +#!/bin/sh +fl="-std=c89" +for opt; do + case "$opt" in + -ansi|-std=c89|-std=iso9899:1990) fl="";; + -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF +cat > %{buildroot}%{_prefix}/bin/c99 <<"EOF" +#!/bin/sh +fl="-std=c99" +for opt; do + case "$opt" in + -std=c99|-std=iso9899:1999) fl="";; + -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2 + exit 1;; + esac +done +exec gcc $fl ${1+"$@"} +EOF +chmod 755 %{buildroot}%{_prefix}/bin/c?9 + +cd .. + +# Remove binaries we will not be including, so that they don't end up in +# gcc-debuginfo +rm -f %{buildroot}%{_prefix}/%{_lib}/{libffi*,libiberty.a} || : +rm -f $FULLEPATH/install-tools/{mkheaders,fixincl} +rm -f %{buildroot}%{_prefix}/lib/{32,64}/libiberty.a +rm -f %{buildroot}%{_prefix}/%{_lib}/libssp* +rm -f %{buildroot}%{_prefix}/%{_lib}/libvtv* || : +rm -f %{buildroot}%{_prefix}/bin/gappletviewer || : +rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gfortran || : +rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gccgo || : +rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcj || : +rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-ar || : +rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-nm || : +rm -f %{buildroot}%{_prefix}/bin/%{_target_platform}-gcc-ranlib || : + +%ifarch %{multilib_64_archs} +# Remove libraries for the other arch on multilib arches +rm -f %{buildroot}%{_prefix}/lib/lib*.so* +rm -f %{buildroot}%{_prefix}/lib/lib*.a +rm -f %{buildroot}/lib/libgcc_s*.so* +%if %{build_go} +rm -rf %{buildroot}%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform} +%ifnarch sparc64 ppc64 ppc64p7 +ln -sf %{multilib_32_arch}-%{_vendor}-%{_target_os} %{buildroot}%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform} +%endif +%endif +%else +%ifarch sparcv9 ppc +rm -f %{buildroot}%{_prefix}/lib64/lib*.so* +rm -f %{buildroot}%{_prefix}/lib64/lib*.a +rm -f %{buildroot}/lib64/libgcc_s*.so* +%if %{build_go} +rm -rf %{buildroot}%{_prefix}/lib64/go/%{gcc_major}/%{gcc_target_platform} +%endif +%endif +%endif + +rm -f %{buildroot}%{mandir}/man3/ffi* + +# Help plugins find out nvra. +echo gcc-%{version}-%{release}.%{_arch} > $FULLPATH/rpmver + +# Delete rpath +for file in `find %{buildroot}%{_prefix}/%{_lib} -name lib*.so.*`; do + chrpath -d $file +done + +%check +%if 0 +cd obj-%{gcc_target_platform} + +%endif + +%clean +rm -rf %{buildroot} + +%post +if [ -f %{_infodir}/gcc.info.gz ]; then + /sbin/install-info \ + --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || : +fi + +%preun +if [ $1 = 0 -a -f %{_infodir}/gcc.info.gz ]; then + /sbin/install-info --delete \ + --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || : +fi + + +%if %{build_fortran} +%post gfortran +if [ -f %{_infodir}/gfortran.info.gz ]; then + /sbin/install-info \ + --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || : +fi + +%preun gfortran +if [ $1 = 0 -a -f %{_infodir}/gfortran.info.gz ]; then + /sbin/install-info --delete \ + --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || : +fi +%endif + +%if %{build_ada} +%post gnat +if [ -f %{_infodir}/gnat_rm.info.gz ]; then + /sbin/install-info \ + --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || : + /sbin/install-info \ + --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || : + /sbin/install-info \ + --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || : +fi + +%preun gnat +if [ $1 = 0 -a -f %{_infodir}/gnat_rm.info.gz ]; then + /sbin/install-info --delete \ + --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || : + /sbin/install-info --delete \ + --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || : + /sbin/install-info --delete \ + --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || : +fi +%endif + +%if %{build_go} +%post go +%{_sbindir}/update-alternatives --install \ + %{_prefix}/bin/go go %{_prefix}/bin/go%{binsuffix}.gcc 92 \ + --slave %{_prefix}/bin/gofmt gofmt %{_prefix}/bin/gofmt.gcc + +%preun go +if [ $1 = 0 ]; then + %{_sbindir}/update-alternatives --remove go %{_prefix}/bin/go%{binsuffix}.gcc +fi +%endif + +# Because glibc Prereq's libgcc and /sbin/ldconfig +# comes from glibc, it might not exist yet when +# libgcc is installed +%post -n %{?scl_prefix}libgcc%{gcc_ver} -p <lua> +if posix.access ("/sbin/ldconfig", "x") then + local pid = posix.fork () + if pid == 0 then + posix.exec ("/sbin/ldconfig") + elseif pid ~= -1 then + posix.wait (pid) + end +end + +%postun -n %{?scl_prefix}libgcc%{gcc_ver} -p <lua> +if posix.access ("/sbin/ldconfig", "x") then + local pid = posix.fork () + if pid == 0 then + posix.exec ("/sbin/ldconfig") + elseif pid ~= -1 then + posix.wait (pid) + end +end + +%ldconfig_scriptlets -n %{?scl_prefix}libstdc++%{gcc_ver} + +%if %{build_objc} +%ldconfig_scriptlets -n %{?scl_prefix}libobjc%{gcc_ver} +%endif + +%if %{build_fortran} +%ldconfig_scriptlets -n %{?scl_prefix}libgfortran%{gcc_ver} +%endif + +%if 0 +%ldconfig_scriptlets -n %{?scl_prefix}libgphobos%{gcc_ver} +%endif + +%if %{build_ada} +%ldconfig_scriptlets -n %{?scl_prefix}libgnat%{gcc_ver} +%endif + +%ldconfig_scriptlets -n %{?scl_prefix}libgomp%{gcc_ver} + +%if %{build_gdb_plugin} +%ldconfig_scriptlets gdb-plugin +%endif + +%ldconfig_scriptlets -n %{?scl_prefix}libgccjit%{gcc_ver} + +%if %{build_libquadmath} +%ldconfig_scriptlets -n %{?scl_prefix}libquadmath%{gcc_ver} +%endif + +%if %{build_libitm} +%ldconfig_scriptlets -n %{?scl_prefix}libitm%{gcc_ver} +%endif + +%if %{build_libatomic} +%ldconfig_scriptlets -n %{?scl_prefix}libatomic%{gcc_ver} +%endif + +%if %{build_libasan} +%ldconfig_scriptlets -n %{?scl_prefix}libasan%{gcc_ver} +%endif + +%if %{build_libubsan} +%ldconfig_scriptlets -n %{?scl_prefix}libubsan%{gcc_ver} +%endif + +%if %{build_libtsan} +%ldconfig_scriptlets -n %{?scl_prefix}libtsan%{gcc_ver} +%endif + +%if %{build_liblsan} +%ldconfig_scriptlets -n %{?scl_prefix}liblsan%{gcc_ver} +%endif + +%if %{build_go} +%ldconfig_scriptlets -n %{?scl_prefix}libgo%{gcc_ver} +%endif + +%files +%{_prefix}/bin/cc +%{_prefix}/bin/c89 +%{_prefix}/bin/c99 +%{_prefix}/bin/gcc%{binsuffix} +%{_prefix}/bin/gcov%{binsuffix} +%{_prefix}/bin/gcov-tool%{binsuffix} +%{_prefix}/bin/gcc-ar%{binsuffix} +%{_prefix}/bin/gcc-nm%{binsuffix} +%{_prefix}/bin/gcc-ranlib%{binsuffix} +%ifarch ppc +%{_prefix}/bin/%{_target_platform}-gcc%{binsuffix} +%endif +%ifarch sparc64 sparcv9 +%{_prefix}/bin/sparc-%{_vendor}-%{_target_os}-gcc%{binsuffix} +%endif +%ifarch ppc64 ppc64p7 +%{_prefix}/bin/ppc-%{_vendor}-%{_target_os}-gcc%{binsuffix} +%endif +%{_prefix}/bin/%{gcc_target_platform}-gcc* +%{_prefix}/bin/%{gcc_target_platform}-gcc-%{gcc_major} +%{_mandir}/man1/gcc%{binsuffix}.1* +%{_mandir}/man1/gcov%{binsuffix}.1* +%{_infodir}/gcc* +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include +%if %{build_lto} +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto1 +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/lto-wrapper +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so* +%endif +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/rpmver +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stddef.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdarg.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdfix.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/varargs.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/float.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/limits.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdbool.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/iso646.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/syslimits.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/omp.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/openacc.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdint-gcc.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdalign.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdnoreturn.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/stdatomic.h +%ifarch %{ix86} x86_64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xmmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/emmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/pmmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tmmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ammintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/smmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/nmmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/wmmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/immintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avxintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/x86intrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fma4intrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xopintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/lwpintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/popcntintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmiintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/tbmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia32intrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx2intrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/bmi2intrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/f16cintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fmaintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/lzcntintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/rtmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xtestintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/adxintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/prfchwintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/rdseedintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/fxsrintrin.h +%{_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 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cpuid.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cross-stdarg.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512bwintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512dqintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512ifmaintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512ifmavlintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmiintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vbmivlintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vlbwintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vldqintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/avx512vlintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clflushoptintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/clwbintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mwaitxintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/xsavecintrin.h +%{_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 +%endif +%ifarch ia64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ia64intrin.h +%endif +%ifarch ppc ppc64 ppc64le ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ppc-asm.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/altivec.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/spe.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/paired.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/ppu_intrinsics.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/si2vmx.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/spu2vmx.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vec_types.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmxlintrin.h +%endif +%ifarch %{arm} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/unwind-arm-common.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/mmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_acle.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_cmse.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h +%endif +%ifarch aarch64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_neon.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_acle.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/arm_fp16.h +%endif +%ifarch sparc sparcv9 sparc64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/visintrin.h +%endif +%ifarch s390 s390x +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/s390intrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/htmxlintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/vecintrin.h +%endif +%if %{build_libcilkrts} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/cilk +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcilkrts.spec +%endif +%if %{build_libmpx} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.spec +%endif +%if %{build_libasan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/sanitizer +%endif +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/collect2 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/crt*.o +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcov.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc_eh.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgcc_s.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.spec +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgomp.so +%if %{build_libitm} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.spec +%endif +%if %{build_libasan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsanitizer.spec +%endif +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/crt*.o +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcov.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc_eh.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgcc_s.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgomp.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgomp.so +%if %{build_libquadmath} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libquadmath.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libquadmath.so +%endif +%if %{build_libitm} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libitm.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libitm.so +%endif +%if %{build_libatomic} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.a +%endif +%if %{build_libasan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libasan_preinit.o +%endif +%if %{build_libubsan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.a +%endif +%if %{build_libcilkrts} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libcilkrts.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libcilkrts.so +%endif +%if %{build_libmpx} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpx.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpx.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpxwrappers.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libmpxwrappers.so +%endif +%endif +%ifarch %{multilib_64_archs} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/crt*.o +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcov.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc_eh.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgcc_s.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgomp.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgomp.so +%if %{build_libquadmath} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libquadmath.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libquadmath.so +%endif +%if %{build_libitm} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libitm.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libitm.so +%endif +%if %{build_libatomic} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.a +%endif +%if %{build_libasan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libasan_preinit.o +%endif +%if %{build_libubsan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.a +%endif +%if %{build_libcilkrts} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libcilkrts.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libcilkrts.so +%endif +%if %{build_libmpx} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpx.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpx.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpxwrappers.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libmpxwrappers.so +%endif +%endif +%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%if %{build_libquadmath} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.so +%endif +%if %{build_libitm} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.so +%endif +%if %{build_libatomic} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a +%endif +%if %{build_libasan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o +%endif +%if %{build_libubsan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a +%endif +%if %{build_libcilkrts} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcilkrts.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcilkrts.so +%endif +%if %{build_libmpx} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.so +%endif +%else +%if %{build_libasan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan_preinit.o +%endif +%if %{build_libcilkrts} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcilkrts.so +%endif +%if %{build_libmpx} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.so +%endif +%endif +%if %{build_libtsan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan_preinit.o +%endif +%if %{build_liblsan} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan.so +%endif +%{_prefix}/libexec/getconf/default +%doc gcc/README* rpm.doc/changelogs/gcc/ChangeLog* +%{!?_licensedir:%global license %%doc} +%license gcc/COPYING* COPYING.RUNTIME + +%files -n %{?scl_prefix}cpp%{gcc_ver} +%{_prefix}/lib/cpp +%{_prefix}/bin/cpp%{binsuffix} +%{_mandir}/man1/cpp%{binsuffix}.1* +%{_infodir}/cpp* +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1 + +%files -n %{?scl_prefix}libgcc%{gcc_ver} +%{_prefix}/%{_lib}/libgcc_s-%{gcc_major}.so.1 +%{_prefix}/%{_lib}/libgcc_s.so.1 +%{!?_licensedir:%global license %%doc} +%license gcc/COPYING* COPYING.RUNTIME + +%files c++ +%{_prefix}/bin/%{gcc_target_platform}-*++%{binsuffix} +%{_prefix}/bin/g++%{binsuffix} +%{_prefix}/bin/c++%{binsuffix} +%{_mandir}/man1/g++%{binsuffix}.1* +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1plus +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libstdc++fs.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libsupc++.a +%endif +%ifarch %{multilib_64_archs} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libstdc++fs.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libsupc++.a +%endif +%ifarch sparcv9 ppc %{multilib_64_archs} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so +%endif +%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++fs.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsupc++.a +%endif +%doc rpm.doc/changelogs/gcc/cp/ChangeLog* + +%files -n %{?scl_prefix}libstdc++%{gcc_ver} +%{_prefix}/%{_lib}/libstdc++.so.6* +%dir %{_datadir}/gdb +%dir %{_datadir}/gdb/auto-load +%dir %{_datadir}/gdb/auto-load/%{_prefix} +%dir %{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/ +%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc*gdb.py* +%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/__pycache__ +%dir %{_prefix}/share/gcc-%{gcc_major} +%dir %{_prefix}/share/gcc-%{gcc_major}/python +%{_prefix}/share/gcc-%{gcc_major}/python/libstdcxx + +%files -n %{?scl_prefix}libstdc++%{gcc_ver}-devel +%dir %{_prefix}/include/c++ +%{_prefix}/include/c++/%{gcc_major} +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifnarch sparcv9 ppc %{multilib_64_archs} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so +%endif +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libstdc++fs.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libstdc++fs.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++fs.a +%endif +%doc rpm.doc/changelogs/libstdc++-v3/ChangeLog* libstdc++-v3/README* + +%files -n %{?scl_prefix}libstdc++%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libstdc++.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libsupc++.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libstdc++.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libsupc++.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libsupc++.a +%ifarch x86_64 aarch64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++.so.6 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libstdc++_nonshared.a +%endif +%endif + +%if %{build_objc} +%files objc +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/objc +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1obj +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libobjc.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libobjc.so +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libobjc.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libobjc.so +%endif +%ifarch %{multilib_64_archs} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libobjc.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libobjc.so +%endif +%doc rpm.doc/objc/* +%doc libobjc/THREADS* rpm.doc/changelogs/libobjc/ChangeLog* + +%files objc++ +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cc1objplus + +%files -n %{?scl_prefix}libobjc%{gcc_ver} +%{_prefix}/%{_lib}/libobjc.so.4* +%endif + +%if %{build_fortran} +%files gfortran +%{_prefix}/bin/gfortran%{binsuffix} +%{_prefix}/bin/f95 +%{_mandir}/man1/gfortran%{binsuffix}.1* +%{_infodir}/gfortran* +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.f90 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib.mod +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/omp_lib_kinds.mod +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc.f90 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc.mod +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc_kinds.mod +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/openacc_lib.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_arithmetic.mod +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_exceptions.mod +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/finclude/ieee_features.mod +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/f951 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.spec +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcaf_single.a +%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.a +%endif +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.so +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libcaf_single.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgfortran.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgfortran.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/finclude +%endif +%ifarch %{multilib_64_archs} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libcaf_single.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgfortran.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgfortran.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/finclude +%endif +%dir %{_fmoddir} +%doc rpm.doc/gfortran/* + +%files -n %{?scl_prefix}libgfortran%{gcc_ver} +%{_prefix}/%{_lib}/libgfortran.so.4* + +%files -n %{?scl_prefix}libgfortran%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgfortran.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgfortran.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgfortran.a +%endif +%endif + +%if %{build_ada} +%files gnat +%{_prefix}/bin/gnat +%{_prefix}/bin/gnat[^i]* +%{_infodir}/gnat* +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/adainclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/adalib +%endif +%ifarch %{multilib_64_archs} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/adainclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/adalib +%endif +%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adainclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib +%endif +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/gnat1 +%doc rpm.doc/changelogs/gcc/ada/ChangeLog* + +%files -n %{?scl_prefix}libgnat%{gcc_ver} +%{_prefix}/%{_lib}/libgnat-*.so +%{_prefix}/%{_lib}/libgnarl-*.so + +%files -n %{?scl_prefix}libgnat%{gcc_ver}-devel +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adainclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib +%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnat.a +%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnarl.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adainclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib +%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnat.a +%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnarl.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adainclude +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib +%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnat.a +%exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnarl.a +%endif + +%files -n %{?scl_prefix}libgnat%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnat.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/adalib/libgnarl.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnat.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/adalib/libgnarl.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnat.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/adalib/libgnarl.a +%endif +%endif + +%files -n %{?scl_prefix}libgomp%{gcc_ver} +%{_prefix}/%{_lib}/libgomp.so.1* +%{_infodir}/libgomp.info* +%doc rpm.doc/changelogs/libgomp/ChangeLog* + +%if %{build_libquadmath} +%files -n %{?scl_prefix}libquadmath%{gcc_ver} +%{_prefix}/%{_lib}/libquadmath.so.0* +%{_infodir}/libquadmath.info* +%{!?_licensedir:%global license %%doc} +%license rpm.doc/libquadmath/COPYING* + +%files -n %{?scl_prefix}libquadmath%{gcc_ver}-devel +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/quadmath.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/quadmath_weak.h +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.so +%endif +%doc rpm.doc/libquadmath/ChangeLog* + +%files -n %{?scl_prefix}libquadmath%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libquadmath.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libquadmath.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libquadmath.a +%endif +%endif + +%if %{build_libitm} +%files -n %{?scl_prefix}libitm%{gcc_ver} +%{_prefix}/%{_lib}/libitm.so.1* +%{_infodir}/libitm.info* + +%files -n %{?scl_prefix}libitm%{gcc_ver}-devel +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include +#%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/itm.h +#%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/include/itm_weak.h +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.so +%endif +%doc rpm.doc/libitm/ChangeLog* + +%files -n %{?scl_prefix}libitm%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libitm.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libitm.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libitm.a +%endif +%endif + +%if %{build_libatomic} +%files -n %{?scl_prefix}libatomic%{gcc_ver} +%{_prefix}/%{_lib}/libatomic.so.1* +%ifarch sparcv9 ppc +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libatomic.so +%endif +%ifarch %{multilib_64_archs} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libatomic.so +%endif +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.so + +%files -n %{?scl_prefix}libatomic%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libatomic.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libatomic.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libatomic.a +%endif +%doc rpm.doc/changelogs/libatomic/ChangeLog* +%endif + +%if %{build_libasan} +%files -n %{?scl_prefix}libasan%{gcc_ver} +%{_prefix}/%{_lib}/libasan.so.4* + +%files -n %{?scl_prefix}libasan%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libasan.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libasan.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libasan.a +%endif +%doc rpm.doc/changelogs/libsanitizer/ChangeLog* +%{!?_licensedir:%global license %%doc} +%license libsanitizer/LICENSE.TXT +%endif + +%if %{build_libubsan} +%files -n %{?scl_prefix}libubsan%{gcc_ver} +%{_prefix}/%{_lib}/libubsan.so.0* +%ifarch sparcv9 ppc +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libubsan.so +%endif +%ifarch %{multilib_64_archs} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libubsan.so +%endif +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.so + +%files -n %{?scl_prefix}libubsan%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libubsan.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libubsan.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libubsan.a +%endif +%doc rpm.doc/changelogs/libsanitizer/ChangeLog* +%{!?_licensedir:%global license %%doc} +%license libsanitizer/LICENSE.TXT +%endif + +%if %{build_libtsan} +%files -n %{?scl_prefix}libtsan%{gcc_ver} +%{_prefix}/%{_lib}/libtsan.so.0* + +%files -n %{?scl_prefix}libtsan%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libtsan.a +%doc rpm.doc/changelogs/libsanitizer/ChangeLog* +%{!?_licensedir:%global license %%doc} +%license libsanitizer/LICENSE.TXT +%endif + +%if %{build_liblsan} +%files -n %{?scl_prefix}liblsan%{gcc_ver} +%{_prefix}/%{_lib}/liblsan.so.0* + +%files -n %{?scl_prefix}liblsan%{gcc_ver}-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/liblsan.a +%doc rpm.doc/changelogs/libsanitizer/ChangeLog* +%{!?_licensedir:%global license %%doc} +%license libsanitizer/LICENSE.TXT +%endif + +%if %{build_libcilkrts} +%files -n libcilkrts +%{_prefix}/%{_lib}/libcilkrts.so.5* + +%files -n libcilkrts-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libcilkrts.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libcilkrts.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libcilkrts.a +%endif +%doc rpm.doc/changelogs/libcilkrts/ChangeLog* libcilkrts/README +%endif + +%if %{build_libmpx} +%files -n libmpx +%{_prefix}/%{_lib}/libmpx.so.2* +%{_prefix}/%{_lib}/libmpxwrappers.so.2* + +%files -n libmpx-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libmpx.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libmpxwrappers.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libmpx.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libmpxwrappers.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpx.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libmpxwrappers.a +%endif +%doc rpm.doc/changelogs/libmpx/ChangeLog* +%endif + +%if %{build_go} +%files go +%ghost %{_prefix}/bin/go +%attr(755,root,root) %{_prefix}/bin/go.gcc +%{_prefix}/bin/gccgo +%ghost %{_prefix}/bin/gofmt +%attr(755,root,root) %{_prefix}/bin/gofmt.gcc +%{_mandir}/man1/gccgo.1* +%{_mandir}/man1/go.1* +%{_mandir}/man1/gofmt.1* +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/go1 +%attr(755,root,root) %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/cgo +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgo.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgo.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgobegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/64/libgolibbegin.a +%endif +%ifarch %{multilib_64_archs} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgo.so +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgo.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgobegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/32/libgolibbegin.a +%endif +%ifarch sparcv9 ppc %{multilib_64_archs} +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.so +%endif +%ifarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgobegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgolibbegin.a +%endif +%doc rpm.doc/go/* + +%files -n %{?scl_prefix}libgo +%attr(755,root,root) %{_prefix}/%{_lib}/libgo.so.11* +%doc rpm.doc/libgo/* + +%files -n %{?scl_prefix}libgo-devel +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/%{_lib}/go +%dir %{_prefix}/%{_lib}/go/%{gcc_major} +%{_prefix}/%{_lib}/go/%{gcc_major}/%{gcc_target_platform} +%ifarch %{multilib_64_archs} +%ifnarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/go +%dir %{_prefix}/lib/go/%{gcc_major} +%{_prefix}/lib/go/%{gcc_major}/%{gcc_target_platform} +%endif +%endif +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgobegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgolibbegin.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgobegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgolibbegin.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgobegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgolibbegin.a +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.so +%endif + +%files -n %{?scl_prefix}libgo-static +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%ifarch sparcv9 ppc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib32/libgo.a +%endif +%ifarch sparc64 ppc64 ppc64p7 +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/lib64/libgo.a +%endif +%ifnarch sparcv9 sparc64 ppc ppc64 ppc64p7 +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/libgo.a +%endif +%endif + +%files -n %{?scl_prefix}libgccjit%{gcc_ver} +%{_prefix}/%{_lib}/libgccjit.so.* +%doc rpm.doc/changelogs/gcc/jit/ChangeLog* + +%files -n %{?scl_prefix}libgccjit%{gcc_ver}-devel +%{_prefix}/%{_lib}/libgccjit.so +%{_prefix}/include/libgccjit*.h +%{_infodir}/libgccjit.info* +%doc gcc/jit/docs/examples + +%files plugin-devel +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gtype.state +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/include +%dir %{_prefix}/libexec/gcc +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform} +%dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major} +%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_major}/plugin + +%if %{build_gdb_plugin} +%files gdb-plugin +%{_prefix}/%{_lib}/libcc1.so* +%dir %{_prefix}/lib/gcc +%dir %{_prefix}/lib/gcc/%{gcc_target_platform} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major} +%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcc1plugin.so* +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/libcp1plugin.so* +%doc rpm.doc/changelogs/libcc1/ChangeLog* +%endif + +%changelog +* Thu May 28 2026 liyunfei33 <liyunfei33@huawei.com> 7.3.0-4 +- Align GCC build flags with devtoolset script and add libstdc++ compatibility linker flow + +* Wed May 06 2026 liyunfei33 <liyunfei33@huawei.com> 7.3.0-3 +- fix for self-requires + +* Wed Dec 13 2023 eastb233 <xiezhiheng@huawei.com> 7.3.0-2 +- Delete rpath + +* Thu Jun 08 2023 zhangwuji1995 <zhangwuji1@huawei.com> 7.3.0-1 +- Init gcc toolset gcc 7.3.0 diff --git a/gcc7-libstdc++-compat.patch b/gcc7-libstdc++-compat.patch new file mode 100644 index 0000000..43b3f78 --- /dev/null +++ b/gcc7-libstdc++-compat.patch @@ -0,0 +1,9087 @@ +--- libstdc++-v3/config/locale/gnu/c_locale.cc.jj 2017-04-20 12:18:56.260231002 +0200 ++++ libstdc++-v3/config/locale/gnu/c_locale.cc 2017-05-31 12:11:25.200561034 +0200 +@@ -41,6 +41,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX98 + template<> + void + __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, +@@ -172,6 +173,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + return __changed; + } ++#endif + + struct _CatalogIdComp + { +@@ -255,6 +257,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + ++#ifndef _GLIBCXX_NONSHARED_CXX98 + namespace __gnu_cxx _GLIBCXX_VISIBILITY(default) + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION +@@ -293,3 +296,4 @@ _GLIBCXX_END_NAMESPACE_VERSION + extern "C" void ldbl (void) __attribute__ ((alias (#dbl))) + _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 2017-04-20 12:18:11.051840221 +0200 ++++ libstdc++-v3/libsupc++/eh_exception.cc 2017-05-31 12:11:25.200561034 +0200 +@@ -26,6 +26,7 @@ + #include "exception" + #include <cxxabi.h> + ++#ifndef _GLIBCXX_NONSHARED_CXX98 + std::exception::~exception() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT { } + + std::bad_exception::~bad_exception() _GLIBCXX_TXN_SAFE_DYN +@@ -50,6 +51,7 @@ std::bad_exception::what() const _GLIBCX + { + return "std::bad_exception"; + } ++#endif + + // Transactional clones for the destructors and what(). + // what() is effectively transaction_pure, but we do not want to annotate it +--- libstdc++-v3/src/nonshared98/sstream-inst.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/sstream-inst.cc 2017-05-31 15:26:10.374633331 +0200 +@@ -0,0 +1,39 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#include <sstream> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ template void basic_stringbuf<char>::_M_pbump(char_type*, char_type*, off_type); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_stringbuf<wchar_t>::_M_pbump(char_type*, char_type*, off_type); ++#endif ++ ++} // namespace +--- libstdc++-v3/src/nonshared98/float128.S.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/float128.S 2017-05-31 12:11:25.228560696 +0200 +@@ -0,0 +1,162 @@ ++/* Copyright (C) 2012-2017 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 ++ <http://www.gnu.org/licenses/>. */ ++ ++#if defined __x86_64__ || defined __i386__ || defined __ia64__ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++ .weak SYM(_ZTIPKg) ++ SECTION1(_ZTIPKg) ++ ALIGN1 ++ .type SYM(_ZTIPKg), OBJECT ++ .size SYM(_ZTIPKg), SIZE1 ++_ZTIPKg: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKg) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIg) ++ .weak SYM(_ZTIPg) ++ SECTION1(_ZTIPg) ++ ALIGN1 ++ .type SYM(_ZTIPg), OBJECT ++ .size SYM(_ZTIPg), SIZE1 ++_ZTIPg: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPg) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIg) ++ .weak SYM(_ZTIg) ++ SECTION2(_ZTIg) ++ ALIGN2 ++ .type SYM(_ZTIg), OBJECT ++ .size SYM(_ZTIg), SIZE2 ++_ZTIg: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSg) ++ .weak SYM(_ZTSPKg) ++ SECTION3(_ZTSPKg) ++ ALIGN3 ++ .type SYM(_ZTSPKg), OBJECT ++ .size SYM(_ZTSPKg), 4 ++_ZTSPKg: ++ STRING "PKg" ++ .weak SYM(_ZTSPg) ++ SECTION3(_ZTSPg) ++ ALIGN3 ++ .type SYM(_ZTSPg), OBJECT ++ .size SYM(_ZTSPg), 3 ++_ZTSPg: ++ STRING "Pg" ++ .weak SYM(_ZTSg) ++ SECTION3(_ZTSg) ++ ALIGN3 ++ .type SYM(_ZTSg), OBJECT ++ .size SYM(_ZTSg), 2 ++_ZTSg: ++ STRING "g" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/pure.cc.jj 2017-05-31 12:11:25.221560781 +0200 ++++ libstdc++-v3/src/nonshared98/pure.cc 2017-05-31 15:26:10.373633343 +0200 +@@ -0,0 +1,51 @@ ++// -*- C++ -*- ++// Copyright (C) 2000-2017 Free Software Foundation ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/c++config.h> ++#include <cxxabi.h> ++#include "unwind-cxx.h" ++ ++#if _GLIBCXX_HOSTED ++#ifdef _GLIBCXX_HAVE_UNISTD_H ++# include <unistd.h> ++# define writestr(str) write(2, str, sizeof(str) - 1) ++# ifdef __GNU_LIBRARY__ ++ /* Avoid forcing the library's meaning of `write' on the user program ++ by using the "internal" name (for use within the library). */ ++/*# define write(fd, buf, n) __write((fd), (buf), (n))*/ ++# endif ++#else ++# include <cstdio> ++# define writestr(str) std::fputs(str, stderr) ++#endif ++#else ++# define writestr(str) /* Empty */ ++#endif ++ ++extern "C" void ++__cxxabiv1::__cxa_deleted_virtual (void) ++{ ++ writestr ("deleted virtual method called\n"); ++ std::terminate (); ++} +--- libstdc++-v3/src/nonshared98/eh_exception.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/eh_exception.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 1994-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX98 1 ++#include "../libsupc++/eh_exception.cc" +--- libstdc++-v3/src/nonshared98/streambuf-inst.cc.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/streambuf-inst.cc 2017-05-31 15:26:10.374633331 +0200 +@@ -0,0 +1,36 @@ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <ios> ++#include <streambuf> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ template void basic_streambuf<char>::__safe_gbump(std::streamsize); ++ template void basic_streambuf<char>::__safe_pbump(std::streamsize); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_streambuf<wchar_t>::__safe_gbump(std::streamsize); ++ template void basic_streambuf<wchar_t>::__safe_pbump(std::streamsize); ++#endif ++ ++} +--- libstdc++-v3/src/nonshared98/int12848.S.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/int12848.S 2017-05-31 12:11:25.224560745 +0200 +@@ -0,0 +1,24 @@ ++/* Copyright (C) 2012-2017 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 ++ <http://www.gnu.org/licenses/>. */ ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "int128.S" +--- libstdc++-v3/src/nonshared98/eh_tm.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/eh_tm.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/eh_tm.cc" +--- libstdc++-v3/src/nonshared98/snprintf_lite-inst.cc.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/snprintf_lite-inst.cc 2017-05-31 15:26:10.373633343 +0200 +@@ -0,0 +1,41 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <locale> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ template ++ int ++ __int_to_char(char*, ++#ifdef _GLIBCXX_USE_LONG_LONG ++ unsigned long long, ++#else ++ unsigned long, ++#endif ++ const char*, ios_base::fmtflags, bool); ++} ++#ifdef _GLIBCXX_USE_LONG_LONG ++asm (".hidden _ZSt13__int_to_charIcyEiPT_T0_PKS0_St13_Ios_Fmtflagsb"); ++#else ++asm (".hidden _ZSt13__int_to_charIcmEiPT_T0_PKS0_St13_Ios_Fmtflagsb"); ++#endif +--- libstdc++-v3/src/nonshared98/locale_facets.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/locale_facets.cc 2017-05-31 15:26:10.371633366 +0200 +@@ -0,0 +1,29 @@ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++98/locale_facets.cc" ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZSt22__verify_grouping_implPKcjS0_j"); ++#else ++asm (".hidden _ZSt22__verify_grouping_implPKcmS0_m"); ++#endif +--- libstdc++-v3/src/nonshared98/misc-inst.cc.jj 2017-05-31 12:11:25.226560721 +0200 ++++ libstdc++-v3/src/nonshared98/misc-inst.cc 2017-05-31 15:26:10.372633354 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++98/misc-inst.cc" +--- libstdc++-v3/src/nonshared98/decimal-rtti.S.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/decimal-rtti.S 2017-05-31 12:11:25.227560709 +0200 +@@ -0,0 +1,274 @@ ++/* Copyright (C) 2012-2017 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 ++ <http://www.gnu.org/licenses/>. */ ++ ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ \ ++ || defined __i386__ || defined __powerpc__ || defined __s390__ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++ .weak SYM(_ZTIPKDd) ++ SECTION1(_ZTIPKDd) ++ ALIGN1 ++ .type SYM(_ZTIPKDd), OBJECT ++ .size SYM(_ZTIPKDd), SIZE1 ++_ZTIPKDd: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDd) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDd) ++ .weak SYM(_ZTIPDd) ++ SECTION1(_ZTIPDd) ++ ALIGN1 ++ .type SYM(_ZTIPDd), OBJECT ++ .size SYM(_ZTIPDd), SIZE1 ++_ZTIPDd: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDd) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDd) ++ .weak SYM(_ZTIDd) ++ SECTION2(_ZTIDd) ++ ALIGN2 ++ .type SYM(_ZTIDd), OBJECT ++ .size SYM(_ZTIDd), SIZE2 ++_ZTIDd: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDd) ++ .weak SYM(_ZTIPKDe) ++ SECTION1(_ZTIPKDe) ++ ALIGN1 ++ .type SYM(_ZTIPKDe), OBJECT ++ .size SYM(_ZTIPKDe), SIZE1 ++_ZTIPKDe: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDe) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDe) ++ .weak SYM(_ZTIPDe) ++ SECTION1(_ZTIPDe) ++ ALIGN1 ++ .type SYM(_ZTIPDe), OBJECT ++ .size SYM(_ZTIPDe), SIZE1 ++_ZTIPDe: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDe) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDe) ++ .weak SYM(_ZTIDe) ++ SECTION2(_ZTIDe) ++ ALIGN2 ++ .type SYM(_ZTIDe), OBJECT ++ .size SYM(_ZTIDe), SIZE2 ++_ZTIDe: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDe) ++ .weak SYM(_ZTIPKDf) ++ SECTION1(_ZTIPKDf) ++ ALIGN1 ++ .type SYM(_ZTIPKDf), OBJECT ++ .size SYM(_ZTIPKDf), SIZE1 ++_ZTIPKDf: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDf) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDf) ++ .weak SYM(_ZTIPDf) ++ SECTION1(_ZTIPDf) ++ ALIGN1 ++ .type SYM(_ZTIPDf), OBJECT ++ .size SYM(_ZTIPDf), SIZE1 ++_ZTIPDf: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDf) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDf) ++ .weak SYM(_ZTIDf) ++ SECTION2(_ZTIDf) ++ ALIGN2 ++ .type SYM(_ZTIDf), OBJECT ++ .size SYM(_ZTIDf), SIZE2 ++_ZTIDf: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDf) ++ .weak SYM(_ZTSPKDd) ++ .hidden SYM(_ZTSPKDd) ++ SECTION3(_ZTSPKDd) ++ ALIGN3 ++ .type SYM(_ZTSPKDd), OBJECT ++ .size SYM(_ZTSPKDd), 5 ++_ZTSPKDd: ++ STRING "PKDd" ++ .weak SYM(_ZTSPDd) ++ .hidden SYM(_ZTSPDd) ++ SECTION3(_ZTSPDd) ++ ALIGN3 ++ .type SYM(_ZTSPDd), OBJECT ++ .size SYM(_ZTSPDd), 4 ++_ZTSPDd: ++ STRING "PDd" ++ .weak SYM(_ZTSDd) ++ .hidden SYM(_ZTSDd) ++ SECTION3(_ZTSDd) ++ ALIGN3 ++ .type SYM(_ZTSDd), OBJECT ++ .size SYM(_ZTSDd), 3 ++_ZTSDd: ++ STRING "Dd" ++ .weak SYM(_ZTSPKDe) ++ .hidden SYM(_ZTSPKDe) ++ SECTION3(_ZTSPKDe) ++ ALIGN3 ++ .type SYM(_ZTSPKDe), OBJECT ++ .size SYM(_ZTSPKDe), 5 ++_ZTSPKDe: ++ STRING "PKDe" ++ .weak SYM(_ZTSPDe) ++ .hidden SYM(_ZTSPDe) ++ SECTION3(_ZTSPDe) ++ ALIGN3 ++ .type SYM(_ZTSPDe), OBJECT ++ .size SYM(_ZTSPDe), 4 ++_ZTSPDe: ++ STRING "PDe" ++ .weak SYM(_ZTSDe) ++ .hidden SYM(_ZTSDe) ++ SECTION3(_ZTSDe) ++ ALIGN3 ++ .type SYM(_ZTSDe), OBJECT ++ .size SYM(_ZTSDe), 3 ++_ZTSDe: ++ STRING "De" ++ .weak SYM(_ZTSPKDf) ++ .hidden SYM(_ZTSPKDf) ++ SECTION3(_ZTSPKDf) ++ ALIGN3 ++ .type SYM(_ZTSPKDf), OBJECT ++ .size SYM(_ZTSPKDf), 5 ++_ZTSPKDf: ++ STRING "PKDf" ++ .weak SYM(_ZTSPDf) ++ .hidden SYM(_ZTSPDf) ++ SECTION3(_ZTSPDf) ++ ALIGN3 ++ .type SYM(_ZTSPDf), OBJECT ++ .size SYM(_ZTSPDf), 4 ++_ZTSPDf: ++ STRING "PDf" ++ .weak SYM(_ZTSDf) ++ .hidden SYM(_ZTSDf) ++ SECTION3(_ZTSDf) ++ ALIGN3 ++ .type SYM(_ZTSDf), OBJECT ++ .size SYM(_ZTSDf), 3 ++_ZTSDf: ++ STRING "Df" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/locale.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared98/locale.cc 2017-05-31 15:26:10.371633366 +0200 +@@ -0,0 +1,84 @@ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include <locale> ++ ++namespace __gnu_cxx _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = ++ { ++ "LC_CTYPE", ++ "LC_NUMERIC", ++ "LC_TIME", ++ "LC_COLLATE", ++ "LC_MONETARY", ++ "LC_MESSAGES", ++ "LC_PAPER", ++ "LC_NAME", ++ "LC_ADDRESS", ++ "LC_TELEPHONE", ++ "LC_MEASUREMENT", ++ "LC_IDENTIFICATION" ++ }; ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ const char* const* const locale::_S_categories = __gnu_cxx::category_names; ++ ++ _GLIBCXX_DEFAULT_ABI_TAG ++ string ++ locale::name() const ++ { ++ string __ret; ++ if (!_M_impl->_M_names[0]) ++ __ret = '*'; ++ else if (_M_impl->_M_check_same_name()) ++ __ret = _M_impl->_M_names[0]; ++ else ++ { ++ __ret.reserve(128); ++ __ret += _S_categories[0]; ++ __ret += '='; ++ __ret += _M_impl->_M_names[0]; ++ for (size_t __i = 1; __i < _S_categories_size; ++__i) ++ { ++ __ret += ';'; ++ __ret += _S_categories[__i]; ++ __ret += '='; ++ __ret += _M_impl->_M_names[__i]; ++ } ++ } ++ return __ret; ++ } ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++asm (".hidden _ZNSt6locale13_S_categoriesE"); +--- libstdc++-v3/src/nonshared98/list.cc.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/list.cc 2017-05-31 15:26:10.370633378 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++98/list.cc" +--- libstdc++-v3/src/nonshared98/wlocale-inst.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/wlocale-inst.cc 2017-05-31 15:26:10.375633319 +0200 +@@ -0,0 +1,28 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/c++config.h> ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "locale-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared98/locale-inst.cc.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/locale-inst.cc 2017-05-31 15:26:10.371633366 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <locale> ++ ++#ifndef C ++# define C char ++#endif ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef time_get<C> S; ++ ++ template ++ S::iter_type S::_M_extract_wday_or_month(iter_type, iter_type, int&, ++ const C **, size_t, ios_base&, ++ ios_base::iostate&) const; ++ ++} ++asm (".hidden _ZNKSt5ctypeIcE8do_widenEc"); +--- libstdc++-v3/src/nonshared98/stdexcept.cc.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/stdexcept.cc 2017-05-31 15:26:10.374633331 +0200 +@@ -0,0 +1,44 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#ifdef __ARM_EABI__ ++#define RET const void * ++#else ++#define RET void ++#endif ++#define BASE_DTOR(name) \ ++extern RET _ZN##name##D1Ev (const void *t); \ ++RET _ZN##name##D2Ev (const void *t) \ ++{ \ ++ return _ZN##name##D1Ev (t); \ ++} \ ++ ++extern "C" ++{ ++ BASE_DTOR (St11range_error) ++ BASE_DTOR (St12domain_error) ++ BASE_DTOR (St12length_error) ++ BASE_DTOR (St12out_of_range) ++ BASE_DTOR (St14overflow_error) ++ BASE_DTOR (St15underflow_error) ++ BASE_DTOR (St16invalid_argument) ++} +--- libstdc++-v3/src/nonshared98/istream-string.cc.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/istream-string.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++98/istream-string.cc" +--- libstdc++-v3/src/nonshared98/c++locale.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/c++locale.cc 2017-06-01 13:07:44.806606975 +0200 +@@ -0,0 +1,33 @@ ++// Copyright (C) 2016-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX98 1 ++#include "../c++98/c++locale.cc" ++asm (".hidden _ZNKSt8Catalogs6_M_getEi"); ++asm (".hidden _ZNSt8Catalogs6_M_addEPKcSt6locale"); ++asm (".hidden _ZNSt8Catalogs8_M_eraseEi"); ++asm (".hidden _ZNSt8CatalogsD1Ev"); ++asm (".hidden _ZNSt8CatalogsD2Ev"); ++asm (".hidden _ZSt12get_catalogsv"); ++asm (".hidden _ZN9__gnu_cxx13__scoped_lockD1Ev"); ++asm (".hidden _ZN9__gnu_cxx13__scoped_lockD2Ev"); ++asm (".hidden _ZNSt6vectorIPSt12Catalog_infoSaIS1_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS1_S3_EERKS1_"); +--- libstdc++-v3/src/nonshared98/Makefile.am.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/Makefile.am 2017-05-31 12:11:25.225560733 +0200 +@@ -0,0 +1,155 @@ ++## Makefile for the C++03 sources of the GNU C++ Standard library. ++## ++## Copyright (C) 1997-2017 Free Software Foundation, Inc. ++## ++## This file is part of the libstdc++ version 3 distribution. ++## Process this file with automake to produce Makefile.in. ++ ++## This file is part of the GNU ISO C++ Library. This library is free ++## software; you can redistribute it and/or modify it under the ++## terms of the GNU General Public License as published by the ++## Free Software Foundation; either version 3, or (at your option) ++## any later version. ++ ++## This library is distributed in the hope that it will be useful, ++## but WITHOUT ANY WARRANTY; without even the implied warranty of ++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++## GNU General Public License for more details. ++ ++## You should have received a copy of the GNU General Public License along ++## with this library; see the file COPYING3. If not see ++## <http://www.gnu.org/licenses/>. ++ ++include $(top_srcdir)/fragment.am ++ ++# Convenience library for C++98 runtime. ++noinst_LTLIBRARIES = libnonshared98convenience44.la \ ++ libnonshared98convenience48.la ++ ++headers = ++ ++# Source files linked in via configuration/make substitution for a ++# particular host, but with ad hoc naming rules. ++host_sources_extra = \ ++ basic_file.cc c++locale.cc \ ++ ${ldbl_compat_sources} ${parallel_sources} ++ ++parallel_sources44 = list_associated-2.cc ++ ++if ENABLE_EXTERN_TEMPLATE ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++inst_sources = \ ++ snprintf_lite-inst.cc \ ++ misc-inst.cc ++inst_sources44 = \ ++ locale-inst.cc \ ++ wlocale-inst.cc \ ++ sstream-inst.cc \ ++ streambuf-inst.cc ++else ++# XTEMPLATE_FLAGS = ++inst_sources = ++inst_sources44 = ++endif ++ ++# Sources present in the src directory, always present. ++sources = \ ++ collate_members.cc \ ++ float128.S \ ++ istream-string.cc \ ++ locale.cc \ ++ locale_facets.cc \ ++ c++locale.cc \ ++ messages_members.cc \ ++ monetary_members.cc \ ++ numeric_members.cc \ ++ eh_exception.cc \ ++ eh_catch.cc \ ++ ${inst_sources} ++sources44 = \ ++ list-aux-2.cc \ ++ decimal-rtti.S \ ++ nullptr-rtti.S \ ++ int128.S \ ++ compatibility-debug_list-2.cc \ ++ list.cc \ ++ hash_bytes.cc \ ++ stdexcept.cc \ ++ eh_alloc.cc \ ++ eh_tm.cc \ ++ pure.cc \ ++ ${parallel_sources44} \ ++ ${inst_sources44} ++sources48 = int12848.S \ ++ eh_alloc48.cc ++ ++vpath % $(top_srcdir)/src/nonshared98 ++vpath % $(top_srcdir) ++ ++libnonshared98convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared98convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# 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 ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++98 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++collate_members.lo: collate_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++messages_members.lo: messages_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++monetary_members.lo: monetary_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++numeric_members.lo: numeric_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++# Use special rules to compile with -fimplicit-templates. ++c++locale.lo: c++locale.cc ++ $(LTCXXCOMPILE) -I. -fimplicit-templates -c $< ++c++locale.o: c++locale.cc ++ $(CXXCOMPILE) -I. -fimplicit-templates -c $< +--- libstdc++-v3/src/nonshared98/monetary_members.cc.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/monetary_members.cc 2017-05-31 15:26:10.372633354 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/monetary_members.cc" +--- libstdc++-v3/src/nonshared98/messages_members.cc.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/messages_members.cc 2017-05-31 15:26:10.372633354 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/messages_members.cc" +--- libstdc++-v3/src/nonshared98/Makefile.in.jj 2017-05-31 12:11:25.226560721 +0200 ++++ libstdc++-v3/src/nonshared98/Makefile.in 2017-06-01 12:24:32.509494130 +0200 +@@ -0,0 +1,753 @@ ++# Makefile.in generated by automake 1.11.6 from Makefile.am. ++# @configure_input@ ++ ++# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, ++# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software ++# Foundation, Inc. ++# This Makefile.in is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++# even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++# PARTICULAR PURPOSE. ++ ++@SET_MAKE@ ++ ++VPATH = @srcdir@ ++am__make_dryrun = \ ++ { \ ++ am__dry=no; \ ++ case $$MAKEFLAGS in \ ++ *\\[\ \ ]*) \ ++ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ ++ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ ++ *) \ ++ for am__flg in $$MAKEFLAGS; do \ ++ case $$am__flg in \ ++ *=*|--*) ;; \ ++ *n*) am__dry=yes; break;; \ ++ esac; \ ++ done;; \ ++ esac; \ ++ test $$am__dry = yes; \ ++ } ++pkgdatadir = $(datadir)/@PACKAGE@ ++pkgincludedir = $(includedir)/@PACKAGE@ ++pkglibdir = $(libdir)/@PACKAGE@ ++pkglibexecdir = $(libexecdir)/@PACKAGE@ ++am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd ++install_sh_DATA = $(install_sh) -c -m 644 ++install_sh_PROGRAM = $(install_sh) -c ++install_sh_SCRIPT = $(install_sh) -c ++INSTALL_HEADER = $(INSTALL_DATA) ++transform = $(program_transform_name) ++NORMAL_INSTALL = : ++PRE_INSTALL = : ++POST_INSTALL = : ++NORMAL_UNINSTALL = : ++PRE_UNINSTALL = : ++POST_UNINSTALL = : ++build_triplet = @build@ ++host_triplet = @host@ ++target_triplet = @target@ ++DIST_COMMON = $(top_srcdir)/fragment.am $(srcdir)/Makefile.in \ ++ $(srcdir)/Makefile.am ++subdir = src/nonshared98 ++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ++am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ ++ $(top_srcdir)/../config/enable.m4 \ ++ $(top_srcdir)/../config/futex.m4 \ ++ $(top_srcdir)/../config/hwcaps.m4 \ ++ $(top_srcdir)/../config/iconv.m4 \ ++ $(top_srcdir)/../config/lead-dot.m4 \ ++ $(top_srcdir)/../config/lib-ld.m4 \ ++ $(top_srcdir)/../config/lib-link.m4 \ ++ $(top_srcdir)/../config/lib-prefix.m4 \ ++ $(top_srcdir)/../config/lthostflags.m4 \ ++ $(top_srcdir)/../config/multi.m4 \ ++ $(top_srcdir)/../config/no-executables.m4 \ ++ $(top_srcdir)/../config/override.m4 \ ++ $(top_srcdir)/../config/stdint.m4 \ ++ $(top_srcdir)/../config/unwind_ipinfo.m4 \ ++ $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ ++ $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \ ++ $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/crossconfig.m4 \ ++ $(top_srcdir)/linkage.m4 $(top_srcdir)/acinclude.m4 \ ++ $(top_srcdir)/../config/gc++filt.m4 \ ++ $(top_srcdir)/../config/tls.m4 $(top_srcdir)/../config/gthr.m4 \ ++ $(top_srcdir)/configure.ac ++am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ ++ $(ACLOCAL_M4) ++CONFIG_HEADER = $(top_builddir)/config.h ++CONFIG_CLEAN_FILES = ++CONFIG_CLEAN_VPATH_FILES = ++LTLIBRARIES = $(noinst_LTLIBRARIES) ++libnonshared98convenience44_la_LIBADD = ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_1 = snprintf_lite-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ misc-inst.lo ++am__objects_2 = collate_members.lo float128.lo istream-string.lo \ ++ locale.lo locale_facets.lo c++locale.lo messages_members.lo \ ++ monetary_members.lo numeric_members.lo eh_exception.lo \ ++ eh_catch.lo $(am__objects_1) ++am__objects_3 = list_associated-2.lo ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_4 = locale-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst.lo sstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.lo ++am__objects_5 = list-aux-2.lo decimal-rtti.lo nullptr-rtti.lo \ ++ int128.lo compatibility-debug_list-2.lo list.lo hash_bytes.lo \ ++ stdexcept.lo eh_alloc.lo eh_tm.lo pure.lo $(am__objects_3) \ ++ $(am__objects_4) ++am_libnonshared98convenience44_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_5) ++libnonshared98convenience44_la_OBJECTS = \ ++ $(am_libnonshared98convenience44_la_OBJECTS) ++libnonshared98convenience48_la_LIBADD = ++am__objects_6 = int12848.lo eh_alloc48.lo ++am_libnonshared98convenience48_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_6) ++libnonshared98convenience48_la_OBJECTS = \ ++ $(am_libnonshared98convenience48_la_OBJECTS) ++DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) ++depcomp = ++am__depfiles_maybe = ++CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++LTCPPASCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) ++CXXLD = $(CXX) ++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ ++ $(LDFLAGS) -o $@ ++SOURCES = $(libnonshared98convenience44_la_SOURCES) \ ++ $(libnonshared98convenience48_la_SOURCES) ++am__can_run_installinfo = \ ++ case $$AM_UPDATE_INFO_DIR in \ ++ n|no|NO) false;; \ ++ *) (install-info --version) >/dev/null 2>&1;; \ ++ esac ++ETAGS = etags ++CTAGS = ctags ++ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@ ++ACLOCAL = @ACLOCAL@ ++ALLOCATOR_H = @ALLOCATOR_H@ ++ALLOCATOR_NAME = @ALLOCATOR_NAME@ ++AMTAR = @AMTAR@ ++AR = @AR@ ++AS = @AS@ ++ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@ ++ATOMIC_FLAGS = @ATOMIC_FLAGS@ ++ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@ ++AUTOCONF = @AUTOCONF@ ++AUTOHEADER = @AUTOHEADER@ ++AUTOMAKE = @AUTOMAKE@ ++AWK = @AWK@ ++BASIC_FILE_CC = @BASIC_FILE_CC@ ++BASIC_FILE_H = @BASIC_FILE_H@ ++CC = @CC@ ++CCAS = @CCAS@ ++CCASFLAGS = @CCASFLAGS@ ++CCODECVT_CC = @CCODECVT_CC@ ++CCOLLATE_CC = @CCOLLATE_CC@ ++CCTYPE_CC = @CCTYPE_CC@ ++CFLAGS = @CFLAGS@ ++CLOCALE_CC = @CLOCALE_CC@ ++CLOCALE_H = @CLOCALE_H@ ++CLOCALE_INTERNAL_H = @CLOCALE_INTERNAL_H@ ++CMESSAGES_CC = @CMESSAGES_CC@ ++CMESSAGES_H = @CMESSAGES_H@ ++CMONEY_CC = @CMONEY_CC@ ++CNUMERIC_CC = @CNUMERIC_CC@ ++CPP = @CPP@ ++CPPFLAGS = @CPPFLAGS@ ++CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@ ++CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@ ++CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@ ++CSTDIO_H = @CSTDIO_H@ ++CTIME_CC = @CTIME_CC@ ++CTIME_H = @CTIME_H@ ++CXX = @CXX@ ++CXXCPP = @CXXCPP@ ++CXXFILT = @CXXFILT@ ++CXXFLAGS = @CXXFLAGS@ ++CYGPATH_W = @CYGPATH_W@ ++C_INCLUDE_DIR = @C_INCLUDE_DIR@ ++DBLATEX = @DBLATEX@ ++DEBUG_FLAGS = @DEBUG_FLAGS@ ++DEFS = @DEFS@ ++DOT = @DOT@ ++DOXYGEN = @DOXYGEN@ ++DSYMUTIL = @DSYMUTIL@ ++DUMPBIN = @DUMPBIN@ ++ECHO_C = @ECHO_C@ ++ECHO_N = @ECHO_N@ ++ECHO_T = @ECHO_T@ ++EGREP = @EGREP@ ++ERROR_CONSTANTS_SRCDIR = @ERROR_CONSTANTS_SRCDIR@ ++EXEEXT = @EXEEXT@ ++EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ ++FGREP = @FGREP@ ++GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ ++GLIBCXX_LIBS = @GLIBCXX_LIBS@ ++GREP = @GREP@ ++HWCAP_CFLAGS = @HWCAP_CFLAGS@ ++INSTALL = @INSTALL@ ++INSTALL_DATA = @INSTALL_DATA@ ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ ++INSTALL_SCRIPT = @INSTALL_SCRIPT@ ++INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ ++LD = @LD@ ++LDFLAGS = @LDFLAGS@ ++LIBICONV = @LIBICONV@ ++LIBOBJS = @LIBOBJS@ ++LIBS = @LIBS@ ++LIBTOOL = @LIBTOOL@ ++LIPO = @LIPO@ ++LN_S = @LN_S@ ++LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@ ++LTLIBICONV = @LTLIBICONV@ ++LTLIBOBJS = @LTLIBOBJS@ ++MAINT = @MAINT@ ++MAKEINFO = @MAKEINFO@ ++MKDIR_P = @MKDIR_P@ ++NM = @NM@ ++NMEDIT = @NMEDIT@ ++OBJDUMP = @OBJDUMP@ ++OBJEXT = @OBJEXT@ ++OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ ++OPT_LDFLAGS = @OPT_LDFLAGS@ ++OS_INC_SRCDIR = @OS_INC_SRCDIR@ ++OTOOL = @OTOOL@ ++OTOOL64 = @OTOOL64@ ++PACKAGE = @PACKAGE@ ++PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ ++PACKAGE_NAME = @PACKAGE_NAME@ ++PACKAGE_STRING = @PACKAGE_STRING@ ++PACKAGE_TARNAME = @PACKAGE_TARNAME@ ++PACKAGE_URL = @PACKAGE_URL@ ++PACKAGE_VERSION = @PACKAGE_VERSION@ ++PATH_SEPARATOR = @PATH_SEPARATOR@ ++PDFLATEX = @PDFLATEX@ ++RANLIB = @RANLIB@ ++SECTION_FLAGS = @SECTION_FLAGS@ ++SECTION_LDFLAGS = @SECTION_LDFLAGS@ ++SED = @SED@ ++SET_MAKE = @SET_MAKE@ ++SHELL = @SHELL@ ++STRIP = @STRIP@ ++SYMVER_FILE = @SYMVER_FILE@ ++TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ++USE_NLS = @USE_NLS@ ++VERSION = @VERSION@ ++VTV_CXXFLAGS = @VTV_CXXFLAGS@ ++VTV_CXXLINKFLAGS = @VTV_CXXLINKFLAGS@ ++VTV_PCH_CXXFLAGS = @VTV_PCH_CXXFLAGS@ ++WARN_FLAGS = @WARN_FLAGS@ ++WERROR = @WERROR@ ++XMLLINT = @XMLLINT@ ++XSLTPROC = @XSLTPROC@ ++XSL_STYLE_DIR = @XSL_STYLE_DIR@ ++abs_builddir = @abs_builddir@ ++abs_srcdir = @abs_srcdir@ ++abs_top_builddir = @abs_top_builddir@ ++abs_top_srcdir = @abs_top_srcdir@ ++ac_ct_CC = @ac_ct_CC@ ++ac_ct_CXX = @ac_ct_CXX@ ++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ ++am__leading_dot = @am__leading_dot@ ++am__tar = @am__tar@ ++am__untar = @am__untar@ ++baseline_dir = @baseline_dir@ ++baseline_subdir_switch = @baseline_subdir_switch@ ++bindir = @bindir@ ++build = @build@ ++build_alias = @build_alias@ ++build_cpu = @build_cpu@ ++build_os = @build_os@ ++build_vendor = @build_vendor@ ++builddir = @builddir@ ++check_msgfmt = @check_msgfmt@ ++datadir = @datadir@ ++datarootdir = @datarootdir@ ++docdir = @docdir@ ++dvidir = @dvidir@ ++enable_shared = @enable_shared@ ++enable_static = @enable_static@ ++exec_prefix = @exec_prefix@ ++get_gcc_base_ver = @get_gcc_base_ver@ ++glibcxx_MOFILES = @glibcxx_MOFILES@ ++glibcxx_PCHFLAGS = @glibcxx_PCHFLAGS@ ++glibcxx_POFILES = @glibcxx_POFILES@ ++glibcxx_builddir = @glibcxx_builddir@ ++glibcxx_compiler_pic_flag = @glibcxx_compiler_pic_flag@ ++glibcxx_compiler_shared_flag = @glibcxx_compiler_shared_flag@ ++glibcxx_cxx98_abi = @glibcxx_cxx98_abi@ ++glibcxx_localedir = @glibcxx_localedir@ ++glibcxx_lt_pic_flag = @glibcxx_lt_pic_flag@ ++glibcxx_prefixdir = @glibcxx_prefixdir@ ++glibcxx_srcdir = @glibcxx_srcdir@ ++glibcxx_toolexecdir = @glibcxx_toolexecdir@ ++glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@ ++gxx_include_dir = @gxx_include_dir@ ++host = @host@ ++host_alias = @host_alias@ ++host_cpu = @host_cpu@ ++host_os = @host_os@ ++host_vendor = @host_vendor@ ++htmldir = @htmldir@ ++includedir = @includedir@ ++infodir = @infodir@ ++install_sh = @install_sh@ ++libdir = @libdir@ ++libexecdir = @libexecdir@ ++libtool_VERSION = @libtool_VERSION@ ++localedir = @localedir@ ++localstatedir = @localstatedir@ ++lt_host_flags = @lt_host_flags@ ++mandir = @mandir@ ++mkdir_p = @mkdir_p@ ++multi_basedir = @multi_basedir@ ++oldincludedir = @oldincludedir@ ++pdfdir = @pdfdir@ ++port_specific_symbol_files = @port_specific_symbol_files@ ++prefix = @prefix@ ++program_transform_name = @program_transform_name@ ++psdir = @psdir@ ++python_mod_dir = @python_mod_dir@ ++sbindir = @sbindir@ ++sharedstatedir = @sharedstatedir@ ++srcdir = @srcdir@ ++sysconfdir = @sysconfdir@ ++target = @target@ ++target_alias = @target_alias@ ++target_cpu = @target_cpu@ ++target_os = @target_os@ ++target_vendor = @target_vendor@ ++thread_header = @thread_header@ ++top_build_prefix = @top_build_prefix@ ++top_builddir = @top_builddir@ ++top_srcdir = @top_srcdir@ ++toplevel_builddir = @toplevel_builddir@ ++toplevel_srcdir = @toplevel_srcdir@ ++ ++# May be used by various substitution variables. ++gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) ++MAINT_CHARSET = latin1 ++mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs ++PWD_COMMAND = $${PWDCMD-pwd} ++STAMP = echo timestamp > ++toolexecdir = $(glibcxx_toolexecdir) ++toolexeclibdir = $(glibcxx_toolexeclibdir) ++@ENABLE_WERROR_FALSE@WERROR_FLAG = ++@ENABLE_WERROR_TRUE@WERROR_FLAG = $(WERROR) ++@ENABLE_EXTERN_TEMPLATE_FALSE@XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_TRUE@XTEMPLATE_FLAGS = -fno-implicit-templates ++ ++# These bits are all figured out from configure. Look in acinclude.m4 ++# or configure.ac to see how they are set. See GLIBCXX_EXPORT_FLAGS. ++CONFIG_CXXFLAGS = \ ++ $(SECTION_FLAGS) $(HWCAP_CFLAGS) -frandom-seed=$@ ++ ++WARN_CXXFLAGS = \ ++ $(WARN_FLAGS) $(WERROR_FLAG) -fdiagnostics-show-location=once ++ ++ ++# -I/-D flags to pass when compiling. ++AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) ++ ++# Convenience library for C++98 runtime. ++noinst_LTLIBRARIES = libnonshared98convenience44.la \ ++ libnonshared98convenience48.la ++ ++headers = ++ ++# Source files linked in via configuration/make substitution for a ++# particular host, but with ad hoc naming rules. ++host_sources_extra = \ ++ basic_file.cc c++locale.cc \ ++ ${ldbl_compat_sources} ${parallel_sources} ++ ++parallel_sources44 = list_associated-2.cc ++# XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources = ++ ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ snprintf_lite-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ misc-inst.cc ++ ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources44 = ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources44 = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ sstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.cc ++ ++ ++# Sources present in the src directory, always present. ++sources = \ ++ collate_members.cc \ ++ float128.S \ ++ istream-string.cc \ ++ locale.cc \ ++ locale_facets.cc \ ++ c++locale.cc \ ++ messages_members.cc \ ++ monetary_members.cc \ ++ numeric_members.cc \ ++ eh_exception.cc \ ++ eh_catch.cc \ ++ ${inst_sources} ++ ++sources44 = \ ++ list-aux-2.cc \ ++ decimal-rtti.S \ ++ nullptr-rtti.S \ ++ int128.S \ ++ compatibility-debug_list-2.cc \ ++ list.cc \ ++ hash_bytes.cc \ ++ stdexcept.cc \ ++ eh_alloc.cc \ ++ eh_tm.cc \ ++ pure.cc \ ++ ${parallel_sources44} \ ++ ${inst_sources44} ++ ++sources48 = int12848.S \ ++ eh_alloc48.cc ++ ++libnonshared98convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared98convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# 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 ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++98 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++all: all-am ++ ++.SUFFIXES: ++.SUFFIXES: .S .cc .lo .o .obj ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/fragment.am $(am__configure_deps) ++ @for dep in $?; do \ ++ case '$(am__configure_deps)' in \ ++ *$$dep*) \ ++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ ++ && { if test -f $@; then exit 0; else break; fi; }; \ ++ exit 1;; \ ++ esac; \ ++ done; \ ++ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign --ignore-deps src/nonshared98/Makefile'; \ ++ $(am__cd) $(top_srcdir) && \ ++ $(AUTOMAKE) --foreign --ignore-deps src/nonshared98/Makefile ++.PRECIOUS: Makefile ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ @case '$?' in \ ++ *config.status*) \ ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ ++ *) \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ ++ esac; ++$(top_srcdir)/fragment.am: ++ ++$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++ ++$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(am__aclocal_m4_deps): ++ ++clean-noinstLTLIBRARIES: ++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) ++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ ++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ ++ test "$$dir" != "$$p" || dir=.; \ ++ echo "rm -f \"$${dir}/so_locations\""; \ ++ rm -f "$${dir}/so_locations"; \ ++ done ++libnonshared98convenience44.la: $(libnonshared98convenience44_la_OBJECTS) $(libnonshared98convenience44_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience44_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared98convenience44_la_OBJECTS) $(libnonshared98convenience44_la_LIBADD) $(LIBS) ++libnonshared98convenience48.la: $(libnonshared98convenience48_la_OBJECTS) $(libnonshared98convenience48_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience48_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared98convenience48_la_OBJECTS) $(libnonshared98convenience48_la_LIBADD) $(LIBS) ++ ++mostlyclean-compile: ++ -rm -f *.$(OBJEXT) ++ ++distclean-compile: ++ -rm -f *.tab.c ++ ++.S.o: ++ $(CPPASCOMPILE) -c -o $@ $< ++ ++.S.obj: ++ $(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.S.lo: ++ $(LTCPPASCOMPILE) -c -o $@ $< ++ ++.cc.o: ++ $(CXXCOMPILE) -c -o $@ $< ++ ++.cc.obj: ++ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.cc.lo: ++ $(LTCXXCOMPILE) -c -o $@ $< ++ ++mostlyclean-libtool: ++ -rm -f *.lo ++ ++clean-libtool: ++ -rm -rf .libs _libs ++ ++ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ mkid -fID $$unique ++tags: TAGS ++ ++TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ set x; \ ++ here=`pwd`; \ ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ shift; \ ++ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ ++ test -n "$$unique" || unique=$$empty_fix; \ ++ if test $$# -gt 0; then \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ "$$@" $$unique; \ ++ else \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ $$unique; \ ++ fi; \ ++ fi ++ctags: CTAGS ++CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ test -z "$(CTAGS_ARGS)$$unique" \ ++ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ ++ $$unique ++ ++GTAGS: ++ here=`$(am__cd) $(top_builddir) && pwd` \ ++ && $(am__cd) $(top_srcdir) \ ++ && gtags -i $(GTAGS_ARGS) "$$here" ++ ++distclean-tags: ++ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags ++check-am: all-am ++check: check-am ++all-am: Makefile $(LTLIBRARIES) ++installdirs: ++install: install-am ++install-exec: install-exec-am ++install-data: install-data-am ++uninstall: uninstall-am ++ ++install-am: all-am ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am ++ ++installcheck: installcheck-am ++install-strip: ++ if test -z '$(STRIP)'; then \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ install; \ ++ else \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ ++ fi ++mostlyclean-generic: ++ ++clean-generic: ++ ++distclean-generic: ++ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) ++ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) ++ ++maintainer-clean-generic: ++ @echo "This command is intended for maintainers to use" ++ @echo "it deletes files that may require special tools to rebuild." ++clean: clean-am ++ ++clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ ++ mostlyclean-am ++ ++distclean: distclean-am ++ -rm -f Makefile ++distclean-am: clean-am distclean-compile distclean-generic \ ++ distclean-tags ++ ++dvi: dvi-am ++ ++dvi-am: ++ ++html: html-am ++ ++html-am: ++ ++info: info-am ++ ++info-am: ++ ++install-data-am: ++ ++install-dvi: install-dvi-am ++ ++install-dvi-am: ++ ++install-exec-am: ++ ++install-html: install-html-am ++ ++install-html-am: ++ ++install-info: install-info-am ++ ++install-info-am: ++ ++install-man: ++ ++install-pdf: install-pdf-am ++ ++install-pdf-am: ++ ++install-ps: install-ps-am ++ ++install-ps-am: ++ ++installcheck-am: ++ ++maintainer-clean: maintainer-clean-am ++ -rm -f Makefile ++maintainer-clean-am: distclean-am maintainer-clean-generic ++ ++mostlyclean: mostlyclean-am ++ ++mostlyclean-am: mostlyclean-compile mostlyclean-generic \ ++ mostlyclean-libtool ++ ++pdf: pdf-am ++ ++pdf-am: ++ ++ps: ps-am ++ ++ps-am: ++ ++uninstall-am: ++ ++.MAKE: install-am install-strip ++ ++.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ ++ clean-libtool clean-noinstLTLIBRARIES ctags distclean \ ++ distclean-compile distclean-generic distclean-libtool \ ++ distclean-tags dvi dvi-am html html-am info info-am install \ ++ install-am install-data install-data-am install-dvi \ ++ install-dvi-am install-exec install-exec-am install-html \ ++ install-html-am install-info install-info-am install-man \ ++ install-pdf install-pdf-am install-ps install-ps-am \ ++ install-strip installcheck installcheck-am installdirs \ ++ maintainer-clean maintainer-clean-generic mostlyclean \ ++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ ++ pdf pdf-am ps ps-am tags uninstall uninstall-am ++ ++ ++vpath % $(top_srcdir)/src/nonshared98 ++vpath % $(top_srcdir) ++ ++collate_members.lo: collate_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++messages_members.lo: messages_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++monetary_members.lo: monetary_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++numeric_members.lo: numeric_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++# Use special rules to compile with -fimplicit-templates. ++c++locale.lo: c++locale.cc ++ $(LTCXXCOMPILE) -I. -fimplicit-templates -c $< ++c++locale.o: c++locale.cc ++ $(CXXCOMPILE) -I. -fimplicit-templates -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/nonshared98/list_associated-2.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared98/list_associated-2.cc 2017-05-31 15:26:10.370633378 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++98/list_associated-2.cc" +--- libstdc++-v3/src/nonshared98/eh_catch.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/eh_catch.cc 2017-05-31 15:26:10.368633402 +0200 +@@ -0,0 +1,39 @@ ++// -*- C++ -*- Exception handling routines for catching. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <cstdlib> ++#include "unwind-cxx.h" ++ ++using namespace __cxxabiv1; ++ ++int ++std::uncaught_exceptions() throw() ++{ ++#if __cpp_exceptions ++ __cxa_eh_globals *globals = __cxa_get_globals (); ++ return globals->uncaughtExceptions; ++#else ++ return 0; ++#endif ++} +--- libstdc++-v3/src/nonshared98/compatibility-debug_list-2.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/compatibility-debug_list-2.cc 2017-05-31 15:26:10.367633414 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++98/compatibility-debug_list-2.cc" +--- libstdc++-v3/src/nonshared98/eh_alloc.cc.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/eh_alloc.cc 2017-05-31 15:26:10.368633402 +0200 +@@ -0,0 +1,178 @@ ++// -*- C++ -*- Allocate exception objects. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++// This is derived from the C++ ABI for IA-64. Where we diverge ++// for cross-architecture compatibility are noted with "@@@". ++ ++#include <bits/c++config.h> ++#include <cstdlib> ++#if _GLIBCXX_HOSTED ++#include <cstring> ++#endif ++#include <climits> ++#include <exception> ++#include "unwind-cxx.h" ++#include <ext/concurrence.h> ++ ++#if _GLIBCXX_HOSTED ++using std::free; ++using std::malloc; ++using std::memset; ++#else ++// In a freestanding environment, these functions may not be available ++// -- but for now, we assume that they are. ++extern "C" void *malloc (std::size_t); ++extern "C" void free(void *); ++extern "C" void *memset (void *, int, std::size_t); ++#endif ++ ++using namespace __cxxabiv1; ++ ++// ??? How to control these parameters. ++ ++// Guess from the size of basic types how large a buffer is reasonable. ++// Note that the basic c++ exception header has 13 pointers and 2 ints, ++// so on a system with PSImode pointers we're talking about 56 bytes ++// just for overhead. ++ ++#if INT_MAX == 32767 ++# define EMERGENCY_OBJ_SIZE 128 ++# define EMERGENCY_OBJ_COUNT 16 ++#elif LONG_MAX == 2147483647 ++# define EMERGENCY_OBJ_SIZE 512 ++# define EMERGENCY_OBJ_COUNT 32 ++#else ++# define EMERGENCY_OBJ_SIZE 1024 ++# define EMERGENCY_OBJ_COUNT 64 ++#endif ++ ++#ifndef __GTHREADS ++# undef EMERGENCY_OBJ_COUNT ++# define EMERGENCY_OBJ_COUNT 4 ++#endif ++ ++#if INT_MAX == 32767 || EMERGENCY_OBJ_COUNT <= 32 ++typedef unsigned int bitmask_type; ++#else ++typedef unsigned long bitmask_type; ++#endif ++ ++ ++typedef char one_buffer[EMERGENCY_OBJ_SIZE] __attribute__((aligned)); ++ ++static __cxa_dependent_exception dependents_buffer[EMERGENCY_OBJ_COUNT]; ++static bitmask_type dependents_used; ++ ++namespace ++{ ++ // A single mutex controlling emergency allocations. ++ __gnu_cxx::__mutex emergency_mutex; ++} ++ ++extern "C" __cxa_dependent_exception* ++__cxxabiv1::__cxa_allocate_dependent_exception() _GLIBCXX_NOTHROW ++{ ++ __cxa_dependent_exception *ret; ++ ++ ret = static_cast<__cxa_dependent_exception*> ++ (malloc (sizeof (__cxa_dependent_exception))); ++ ++ if (!ret) ++ { ++ __gnu_cxx::__scoped_lock sentry(emergency_mutex); ++ ++ bitmask_type used = dependents_used; ++ unsigned int which = 0; ++ ++ while (used & 1) ++ { ++ used >>= 1; ++ if (++which >= EMERGENCY_OBJ_COUNT) ++ goto failed; ++ } ++ ++ dependents_used |= (bitmask_type)1 << which; ++ ret = &dependents_buffer[which]; ++ ++ failed:; ++ ++ if (!ret) ++ std::terminate (); ++ } ++ ++ // We have an uncaught exception as soon as we allocate memory. This ++ // yields uncaught_exception() true during the copy-constructor that ++ // initializes the exception object. See Issue 475. ++ __cxa_eh_globals *globals = __cxa_get_globals (); ++ globals->uncaughtExceptions += 1; ++ ++ memset (ret, 0, sizeof (__cxa_dependent_exception)); ++ ++ return ret; ++} ++ ++ ++extern "C" void ++__cxxabiv1::__cxa_free_dependent_exception ++ (__cxa_dependent_exception *vptr) _GLIBCXX_NOTHROW ++{ ++ char *base = (char *) dependents_buffer; ++ char *ptr = (char *) vptr; ++ if (ptr >= base ++ && ptr < base + sizeof (dependents_buffer)) ++ { ++ const unsigned int which ++ = (unsigned) (ptr - base) / sizeof (__cxa_dependent_exception); ++ ++ __gnu_cxx::__scoped_lock sentry(emergency_mutex); ++ dependents_used &= ~((bitmask_type)1 << which); ++ } ++ else ++ free (vptr); ++} ++ ++namespace __gnu_cxx ++{ ++ void ++ __freeres() ++ { ++ } ++} ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared98/nullptr-rtti.S.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/nullptr-rtti.S 2017-05-31 12:11:25.224560745 +0200 +@@ -0,0 +1,166 @@ ++/* Copyright (C) 2012-2017 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 ++ <http://www.gnu.org/licenses/>. */ ++ ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ \ ++ || defined __i386__ || defined __powerpc__ || defined __s390__ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++ .weak SYM(_ZTIPKDn) ++ SECTION1(_ZTIPKDn) ++ ALIGN1 ++ .type SYM(_ZTIPKDn), OBJECT ++ .size SYM(_ZTIPKDn), SIZE1 ++_ZTIPKDn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDn) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDn) ++ .weak SYM(_ZTIPDn) ++ SECTION1(_ZTIPDn) ++ ALIGN1 ++ .type SYM(_ZTIPDn), OBJECT ++ .size SYM(_ZTIPDn), SIZE1 ++_ZTIPDn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDn) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDn) ++ .weak SYM(_ZTIDn) ++ SECTION2(_ZTIDn) ++ ALIGN2 ++ .type SYM(_ZTIDn), OBJECT ++ .size SYM(_ZTIDn), SIZE2 ++_ZTIDn: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDn) ++ .weak SYM(_ZTSPKDn) ++ .hidden SYM(_ZTSPKDn) ++ SECTION3(_ZTSPKDn) ++ ALIGN3 ++ .type SYM(_ZTSPKDn), OBJECT ++ .size SYM(_ZTSPKDn), 5 ++_ZTSPKDn: ++ STRING "PKDn" ++ .weak SYM(_ZTSPDn) ++ .hidden SYM(_ZTSPDn) ++ SECTION3(_ZTSPDn) ++ ALIGN3 ++ .type SYM(_ZTSPDn), OBJECT ++ .size SYM(_ZTSPDn), 4 ++_ZTSPDn: ++ STRING "PDn" ++ .weak SYM(_ZTSDn) ++ .hidden SYM(_ZTSDn) ++ SECTION3(_ZTSDn) ++ ALIGN3 ++ .type SYM(_ZTSDn), OBJECT ++ .size SYM(_ZTSDn), 3 ++_ZTSDn: ++ STRING "Dn" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/eh_alloc48.cc.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/eh_alloc48.cc 2017-05-31 15:26:10.367633414 +0200 +@@ -0,0 +1,36 @@ ++// -*- C++ -*- Allocate exception objects. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++// This is derived from the C++ ABI for IA-64. Where we diverge ++// for cross-architecture compatibility are noted with "@@@". ++ ++#include <bits/c++config.h> ++ ++namespace __gnu_cxx ++{ ++ void ++ __freeres() ++ { ++ } ++} +--- libstdc++-v3/src/nonshared98/int128.S.jj 2017-05-31 12:11:25.221560781 +0200 ++++ libstdc++-v3/src/nonshared98/int128.S 2017-05-31 12:11:25.221560781 +0200 +@@ -0,0 +1,216 @@ ++/* Copyright (C) 2012-2017 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 ++ <http://www.gnu.org/licenses/>. */ ++ ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ \ ++ /* || defined __i386__ || defined __powerpc__ || defined __s390__ */ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 ++ .weak SYM(_ZTIPKn) ++ SECTION1(_ZTIPKn) ++ ALIGN1 ++ .type SYM(_ZTIPKn), OBJECT ++ .size SYM(_ZTIPKn), SIZE1 ++_ZTIPKn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKn) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIn) ++ .weak SYM(_ZTIPn) ++ SECTION1(_ZTIPn) ++ ALIGN1 ++ .type SYM(_ZTIPn), OBJECT ++ .size SYM(_ZTIPn), SIZE1 ++_ZTIPn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPn) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIn) ++ .weak SYM(_ZTIn) ++ SECTION2(_ZTIn) ++ ALIGN2 ++ .type SYM(_ZTIn), OBJECT ++ .size SYM(_ZTIn), SIZE2 ++_ZTIn: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSn) ++ .weak SYM(_ZTIPKo) ++ SECTION1(_ZTIPKo) ++ ALIGN1 ++ .type SYM(_ZTIPKo), OBJECT ++ .size SYM(_ZTIPKo), SIZE1 ++_ZTIPKo: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKo) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIo) ++ .weak SYM(_ZTIPo) ++ SECTION1(_ZTIPo) ++ ALIGN1 ++ .type SYM(_ZTIPo), OBJECT ++ .size SYM(_ZTIPo), SIZE1 ++_ZTIPo: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPo) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIo) ++ .weak SYM(_ZTIo) ++ SECTION2(_ZTIo) ++ ALIGN2 ++ .type SYM(_ZTIo), OBJECT ++ .size SYM(_ZTIo), SIZE2 ++_ZTIo: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSo) ++#endif ++ .weak SYM(_ZTSPKn) ++ SECTION3(_ZTSPKn) ++ ALIGN3 ++ .type SYM(_ZTSPKn), OBJECT ++ .size SYM(_ZTSPKn), 4 ++_ZTSPKn: ++ STRING "PKn" ++ .weak SYM(_ZTSPn) ++ SECTION3(_ZTSPn) ++ ALIGN3 ++ .type SYM(_ZTSPn), OBJECT ++ .size SYM(_ZTSPn), 3 ++_ZTSPn: ++ STRING "Pn" ++ .weak SYM(_ZTSn) ++ SECTION3(_ZTSn) ++ ALIGN3 ++ .type SYM(_ZTSn), OBJECT ++ .size SYM(_ZTSn), 2 ++_ZTSn: ++ STRING "n" ++ .weak SYM(_ZTSPKo) ++ SECTION3(_ZTSPKo) ++ ALIGN3 ++ .type SYM(_ZTSPKo), OBJECT ++ .size SYM(_ZTSPKo), 4 ++_ZTSPKo: ++ STRING "PKo" ++ .weak SYM(_ZTSPo) ++ SECTION3(_ZTSPo) ++ ALIGN3 ++ .type SYM(_ZTSPo), OBJECT ++ .size SYM(_ZTSPo), 3 ++_ZTSPo: ++ STRING "Po" ++ .weak SYM(_ZTSo) ++ SECTION3(_ZTSo) ++ ALIGN3 ++ .type SYM(_ZTSo), OBJECT ++ .size SYM(_ZTSo), 2 ++_ZTSo: ++ STRING "o" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/numeric_members.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/numeric_members.cc 2017-05-31 15:26:10.373633343 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/numeric_members.cc" +--- libstdc++-v3/src/nonshared98/collate_members.cc.jj 2017-05-31 12:11:25.221560781 +0200 ++++ libstdc++-v3/src/nonshared98/collate_members.cc 2017-05-31 15:26:10.366633426 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/collate_members.cc" +--- libstdc++-v3/src/nonshared98/hash_bytes.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/hash_bytes.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/hash_bytes.cc" +--- libstdc++-v3/src/nonshared98/list-aux-2.cc.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/list-aux-2.cc 2017-05-31 15:26:10.370633378 +0200 +@@ -0,0 +1,56 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++extern "C" ++{ ++ extern void _ZNSt15_List_node_base8transferEPS_S0_(void *f, void *l) throw(); ++ ++ void ++ _ZNSt15_List_node_base11_M_transferEPS_S0_(void *f, void *l) throw() ++ { ++ _ZNSt15_List_node_base8transferEPS_S0_(f, l); ++ } ++ ++ extern void _ZNSt15_List_node_base7reverseEv() throw(); ++ ++ void ++ _ZNSt15_List_node_base10_M_reverseEv() throw() ++ { ++ _ZNSt15_List_node_base7reverseEv(); ++ } ++ ++ extern void _ZNSt15_List_node_base4hookEPS_(void *p) throw(); ++ ++ void ++ _ZNSt15_List_node_base7_M_hookEPS_(void *p) throw() ++ { ++ _ZNSt15_List_node_base4hookEPS_(p); ++ } ++ ++ extern void _ZNSt15_List_node_base6unhookEv() throw(); ++ ++ void ++ _ZNSt15_List_node_base9_M_unhookEv() throw() ++ { ++ _ZNSt15_List_node_base6unhookEv(); ++ } ++} +--- libstdc++-v3/src/nonshared11/sstream-inst.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/sstream-inst.cc 2017-05-31 15:25:50.427872475 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/sstream-inst.cc" +--- libstdc++-v3/src/nonshared11/condition_variable.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/condition_variable.cc 2017-05-31 15:25:50.408872703 +0200 +@@ -0,0 +1,27 @@ ++// condition_variable -*- C++ -*- ++ ++// Copyright (C) 2008-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/condition_variable.cc" ++asm (".hidden _ZSt16__at_thread_exitPSt20__at_thread_exit_elt"); +--- libstdc++-v3/src/nonshared11/del_opvsa.cc.jj 2017-05-31 19:11:38.681881850 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvsa.cc 2017-05-31 19:11:38.680881862 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opvsa.cc" +--- libstdc++-v3/src/nonshared11/cxx11-wlocale-inst.cc.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-wlocale-inst.cc 2017-05-31 15:40:45.362168879 +0200 +@@ -0,0 +1,57 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cxx11-wlocale-inst.cc" ++asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE6_M_getEv"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#else ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#endif ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEj"); ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEj"); ++#else ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEm"); ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEm"); ++#endif ++asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE5equalERKS2_"); ++asm (".hidden _ZSt16__convert_from_vRKP15__locale_structPciPKcz"); ++asm (".hidden _ZTISt10money_base"); ++asm (".hidden _ZTISt13messages_base"); ++asm (".hidden _ZTISt9time_base"); ++asm (".hidden _ZTSSt10money_base"); ++asm (".hidden _ZTSSt13messages_base"); ++asm (".hidden _ZTSSt9time_base"); ++#ifndef C_is_char ++asm (".hidden _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv"); ++#endif +--- libstdc++-v3/src/nonshared11/limits.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/limits.cc 2017-05-31 15:25:50.422872535 +0200 +@@ -0,0 +1,99 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <limits> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++#define const _GLIBCXX_USE_CONSTEXPR ++ ++ const int __numeric_limits_base::max_digits10; ++ const int numeric_limits<bool>::max_digits10; ++ const int numeric_limits<char>::max_digits10; ++ const int numeric_limits<signed char>::max_digits10; ++ const int numeric_limits<unsigned char>::max_digits10; ++ const int numeric_limits<wchar_t>::max_digits10; ++ const int numeric_limits<short>::max_digits10; ++ const int numeric_limits<unsigned short>::max_digits10; ++ const int numeric_limits<int>::max_digits10; ++ const int numeric_limits<unsigned int>::max_digits10; ++ const int numeric_limits<long>::max_digits10; ++ const int numeric_limits<unsigned long>::max_digits10; ++ const int numeric_limits<long long>::max_digits10; ++ const int numeric_limits<unsigned long long>::max_digits10; ++ const int numeric_limits<float>::max_digits10; ++ const int numeric_limits<double>::max_digits10; ++ const int numeric_limits<long double>::max_digits10; ++ const int numeric_limits<char16_t>::max_digits10; ++ const int numeric_limits<char32_t>::max_digits10; ++ ++#if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128) ++ const bool numeric_limits<__int128>::is_specialized; ++ const int numeric_limits<__int128>::digits; ++ const int numeric_limits<__int128>::digits10; ++ const int numeric_limits<__int128>::max_digits10; ++ const bool numeric_limits<__int128>::is_signed; ++ const bool numeric_limits<__int128>::is_integer; ++ const bool numeric_limits<__int128>::is_exact; ++ const int numeric_limits<__int128>::radix; ++ const int numeric_limits<__int128>::min_exponent; ++ const int numeric_limits<__int128>::min_exponent10; ++ const int numeric_limits<__int128>::max_exponent; ++ const int numeric_limits<__int128>::max_exponent10; ++ const bool numeric_limits<__int128>::has_infinity; ++ const bool numeric_limits<__int128>::has_quiet_NaN; ++ const bool numeric_limits<__int128>::has_signaling_NaN; ++ const float_denorm_style numeric_limits<__int128>::has_denorm; ++ const bool numeric_limits<__int128>::has_denorm_loss; ++ const bool numeric_limits<__int128>::is_iec559; ++ const bool numeric_limits<__int128>::is_bounded; ++ const bool numeric_limits<__int128>::is_modulo; ++ const bool numeric_limits<__int128>::traps; ++ const bool numeric_limits<__int128>::tinyness_before; ++ const float_round_style numeric_limits<__int128>::round_style; ++ ++ const bool numeric_limits<unsigned __int128>::is_specialized; ++ const int numeric_limits<unsigned __int128>::digits; ++ const int numeric_limits<unsigned __int128>::digits10; ++ const int numeric_limits<unsigned __int128>::max_digits10; ++ const bool numeric_limits<unsigned __int128>::is_signed; ++ const bool numeric_limits<unsigned __int128>::is_integer; ++ const bool numeric_limits<unsigned __int128>::is_exact; ++ const int numeric_limits<unsigned __int128>::radix; ++ const int numeric_limits<unsigned __int128>::min_exponent; ++ const int numeric_limits<unsigned __int128>::min_exponent10; ++ const int numeric_limits<unsigned __int128>::max_exponent; ++ const int numeric_limits<unsigned __int128>::max_exponent10; ++ const bool numeric_limits<unsigned __int128>::has_infinity; ++ const bool numeric_limits<unsigned __int128>::has_quiet_NaN; ++ const bool numeric_limits<unsigned __int128>::has_signaling_NaN; ++ const float_denorm_style numeric_limits<unsigned __int128>::has_denorm; ++ const bool numeric_limits<unsigned __int128>::has_denorm_loss; ++ const bool numeric_limits<unsigned __int128>::is_iec559; ++ const bool numeric_limits<unsigned __int128>::is_bounded; ++ const bool numeric_limits<unsigned __int128>::is_modulo; ++ const bool numeric_limits<unsigned __int128>::traps; ++ const bool numeric_limits<unsigned __int128>::tinyness_before; ++ const float_round_style numeric_limits<unsigned __int128>::round_style; ++#endif ++} +--- libstdc++-v3/src/nonshared11/locale-inst-asm.S.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/locale-inst-asm.S 2017-05-31 12:11:25.239560564 +0200 +@@ -0,0 +1,291 @@ ++/* Copyright (C) 2015-2017 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 ++ <http://www.gnu.org/licenses/>. */ ++ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#define VPTR(x) data16.ua @iplt(x) ++#define SIZE3 48 ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++#ifndef SIZE3 ++#define SIZE3 SIZE1 ++#endif ++#ifndef VPTR ++#define VPTR(x) POINTER SYM(x) ++#endif ++ ++ .weak SYM(_ZTISt18__moneypunct_cacheIcLb0EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIcLb0EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIcLb0EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIcLb0EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIcLb0EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIcLb0EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIcLb0EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIcLb0EE), 30 ++_ZTSSt18__moneypunct_cacheIcLb0EE: ++ STRING "St18__moneypunct_cacheIcLb0EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIcLb0EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIcLb0EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIcLb0EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIcLb0EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIcLb0EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIcLb0EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIcLb0EE) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb0EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb0EED0Ev) ++ .weak SYM(_ZTISt18__moneypunct_cacheIcLb1EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIcLb1EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIcLb1EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIcLb1EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIcLb1EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIcLb1EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIcLb1EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIcLb1EE), 30 ++_ZTSSt18__moneypunct_cacheIcLb1EE: ++ STRING "St18__moneypunct_cacheIcLb1EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIcLb1EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIcLb1EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIcLb1EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIcLb1EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIcLb1EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIcLb1EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIcLb1EE) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb1EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb1EED0Ev) ++ .weak SYM(_ZTISt18__moneypunct_cacheIwLb0EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIwLb0EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIwLb0EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIwLb0EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIwLb0EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIwLb0EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIwLb0EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIwLb0EE), 30 ++_ZTSSt18__moneypunct_cacheIwLb0EE: ++ STRING "St18__moneypunct_cacheIwLb0EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIwLb0EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIwLb0EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIwLb0EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIwLb0EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIwLb0EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIwLb0EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIwLb0EE) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb0EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb0EED0Ev) ++ .weak SYM(_ZTISt18__moneypunct_cacheIwLb1EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIwLb1EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIwLb1EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIwLb1EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIwLb1EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIwLb1EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIwLb1EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIwLb1EE), 30 ++_ZTSSt18__moneypunct_cacheIwLb1EE: ++ STRING "St18__moneypunct_cacheIwLb1EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIwLb1EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIwLb1EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIwLb1EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIwLb1EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIwLb1EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIwLb1EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIwLb1EE) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb1EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb1EED0Ev) ++ .weak SYM(_ZTISt16__numpunct_cacheIcE) ++ .hidden SYM(_ZTISt16__numpunct_cacheIcE) ++ SECTION1(_ZTISt16__numpunct_cacheIcE) ++ ALIGN1 ++ .type SYM(_ZTISt16__numpunct_cacheIcE), OBJECT ++ .size SYM(_ZTISt16__numpunct_cacheIcE), SIZE1+SIZE2 ++_ZTISt16__numpunct_cacheIcE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt16__numpunct_cacheIcE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt16__numpunct_cacheIcE) ++ .hidden SYM(_ZTSSt16__numpunct_cacheIcE) ++ SECTION3(_ZTSSt16__numpunct_cacheIcE) ++ ALIGN3 ++ .type SYM(_ZTSSt16__numpunct_cacheIcE), OBJECT ++ .size SYM(_ZTSSt16__numpunct_cacheIcE), 24 ++_ZTSSt16__numpunct_cacheIcE: ++ STRING "St16__numpunct_cacheIcE" ++ .weak SYM(_ZTVSt16__numpunct_cacheIcE) ++ .hidden SYM(_ZTVSt16__numpunct_cacheIcE) ++ SECTION1(_ZTVSt16__numpunct_cacheIcE) ++ ALIGN1 ++ .type SYM(_ZTVSt16__numpunct_cacheIcE), OBJECT ++ .size SYM(_ZTVSt16__numpunct_cacheIcE), SIZE3 ++_ZTVSt16__numpunct_cacheIcE: ++ POINTER 0 ++ POINTER SYM(_ZTISt16__numpunct_cacheIcE) ++ VPTR(_ZNSt16__numpunct_cacheIcED1Ev) ++ VPTR(_ZNSt16__numpunct_cacheIcED0Ev) ++ .weak SYM(_ZTISt16__numpunct_cacheIwE) ++ .hidden SYM(_ZTISt16__numpunct_cacheIwE) ++ SECTION1(_ZTISt16__numpunct_cacheIwE) ++ ALIGN1 ++ .type SYM(_ZTISt16__numpunct_cacheIwE), OBJECT ++ .size SYM(_ZTISt16__numpunct_cacheIwE), SIZE1+SIZE2 ++_ZTISt16__numpunct_cacheIwE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt16__numpunct_cacheIwE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt16__numpunct_cacheIwE) ++ .hidden SYM(_ZTSSt16__numpunct_cacheIwE) ++ SECTION3(_ZTSSt16__numpunct_cacheIwE) ++ ALIGN3 ++ .type SYM(_ZTSSt16__numpunct_cacheIwE), OBJECT ++ .size SYM(_ZTSSt16__numpunct_cacheIwE), 24 ++_ZTSSt16__numpunct_cacheIwE: ++ STRING "St16__numpunct_cacheIwE" ++ .weak SYM(_ZTVSt16__numpunct_cacheIwE) ++ .hidden SYM(_ZTVSt16__numpunct_cacheIwE) ++ SECTION1(_ZTVSt16__numpunct_cacheIwE) ++ ALIGN1 ++ .type SYM(_ZTVSt16__numpunct_cacheIwE), OBJECT ++ .size SYM(_ZTVSt16__numpunct_cacheIwE), SIZE3 ++_ZTVSt16__numpunct_cacheIwE: ++ POINTER 0 ++ POINTER SYM(_ZTISt16__numpunct_cacheIwE) ++ VPTR(_ZNSt16__numpunct_cacheIwED1Ev) ++ VPTR(_ZNSt16__numpunct_cacheIwED0Ev) ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared11/atexit_thread.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/atexit_thread.cc 2017-05-31 15:25:50.405872739 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/atexit_thread.cc" +--- libstdc++-v3/src/nonshared11/streambuf-inst.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/streambuf-inst.cc 2017-05-31 15:25:50.427872475 +0200 +@@ -0,0 +1,42 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#include <streambuf> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template void basic_streambuf<char>::swap(basic_streambuf&); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_streambuf<wchar_t>::swap(basic_streambuf&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/iostream-inst.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/iostream-inst.cc 2017-05-31 15:25:50.421872547 +0200 +@@ -0,0 +1,46 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#include <iomanip> ++#include <istream> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_iostream<char>::basic_iostream(basic_iostream&&); ++ template basic_iostream<char>& basic_iostream<char>::operator=(basic_iostream&&); ++ template void basic_iostream<char>::swap(basic_iostream&); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_iostream<wchar_t>::basic_iostream(basic_iostream&&); ++ template basic_iostream<wchar_t>& basic_iostream<wchar_t>::operator=(basic_iostream&&); ++ template void basic_iostream<wchar_t>::swap(basic_iostream&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/thread44.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/thread44.cc 2017-05-31 15:25:50.428872463 +0200 +@@ -0,0 +1,27 @@ ++// Copyright (C) 2008-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "../c++11/thread.cc" ++asm (".hidden _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv"); +--- libstdc++-v3/src/nonshared11/del_opa.cc.jj 2017-05-31 19:11:38.664882053 +0200 ++++ libstdc++-v3/src/nonshared11/del_opa.cc 2017-05-31 19:11:38.662882077 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opa.cc" +--- libstdc++-v3/src/nonshared11/cxx11-stdexcept.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-stdexcept.cc 2017-05-31 15:25:50.414872631 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cxx11-stdexcept.cc" ++asm (".hidden _ZNSt12__cow_stringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__cow_stringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); +--- libstdc++-v3/src/nonshared11/placeholders.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/placeholders.cc 2017-05-31 15:25:50.424872511 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/placeholders.cc" +--- libstdc++-v3/src/nonshared11/future.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/future.cc 2017-05-31 15:25:50.420872559 +0200 +@@ -0,0 +1,34 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <future> ++#undef _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE ++#include "../c++11/future.cc" ++const std::error_category* _ZSt15future_category = &__future_category_instance(); ++asm (".hidden _ZNSt13__future_base11_State_base15_M_run_deferredEv"); ++asm (".hidden _ZTSNSt13__future_base11_State_baseE"); ++asm (".hidden _ZTSNSt13__future_base12_Result_baseE"); ++asm (".hidden _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv"); ++asm (".hidden _ZSt16__at_thread_exitPSt20__at_thread_exit_elt"); ++asm (".hidden _ZNSt13__future_base13_State_baseV211_Make_ready6_S_runEPv"); +--- libstdc++-v3/src/nonshared11/bad_array_length.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/bad_array_length.cc 2017-05-31 15:25:50.406872727 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2014-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/bad_array_length.cc" +--- libstdc++-v3/src/nonshared11/cow-string-inst44.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/cow-string-inst44.cc 2017-06-01 09:29:41.149354454 +0200 +@@ -0,0 +1,104 @@ ++// Components for manipulating sequences of characters -*- C++ -*- ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++// Written by Jason Merrill based upon the specification by Takanori Adachi ++// in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers. ++ ++// Instantiation configuration. ++#ifndef C ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "../c++11/cow-string-inst.cc" ++# define C char ++# define NARROW ++#else ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <string> ++#endif ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef basic_string<C> S; ++ ++ template ++ S::const_iterator S::cbegin() const; ++ ++ template ++ S::const_iterator S::cend() const; ++ ++ template ++ S::const_reverse_iterator S::crbegin() const; ++ ++ template ++ S::const_reverse_iterator S::crend() const; ++ ++ template ++ S::basic_string(S&&); ++ ++ template ++ S::basic_string(const S&, size_type, const allocator_type&); ++ ++ template ++ S& S::operator=(S&&); ++ ++ template ++ S& S::assign(S&&); ++ ++ template ++ C *S::_S_construct_aux_2(size_type, C, const allocator_type&); ++ ++ template ++ void S::shrink_to_fit(); ++ ++ template ++ C *S::_S_construct<S::iterator>(iterator, iterator, const allocator_type&, forward_iterator_tag); ++ ++ template ++ C *S::_S_construct<C *>(C *, C *, const allocator_type&, forward_iterator_tag); ++ ++ template ++ C *S::_S_construct<const C *>(const C *, const C *, const allocator_type&, forward_iterator_tag); ++ ++ template ++ S::reference S::front(); ++ ++ template ++ S::const_reference S::front() const; ++ ++ template ++ S::reference S::back(); ++ ++ template ++ S::const_reference S::back() const; ++ ++ template ++ int S::_S_compare(size_type, size_type); ++ ++ template ++ void S::pop_back(); ++} +--- libstdc++-v3/src/nonshared11/future48.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/future48.cc 2017-06-01 13:10:24.688647753 +0200 +@@ -0,0 +1,29 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/future.cc" ++asm (".hidden _ZSt16__at_thread_exitPSt20__at_thread_exit_elt"); ++asm (".hidden _ZNSt13__future_base13_State_baseV211_Make_ready6_S_runEPv"); ++asm (".hidden _ZNSt12future_errorC1ESt10error_code"); ++asm (".hidden _ZNSt12future_errorC2ESt10error_code"); ++asm (".hidden _ZSt20__throw_future_errori"); +--- libstdc++-v3/src/nonshared11/cxx11-ios_failure.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-ios_failure.cc 2017-05-31 15:25:50.412872655 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cxx11-ios_failure.cc" +--- libstdc++-v3/src/nonshared11/new_opvant.cc.jj 2017-05-31 19:11:38.660882101 +0200 ++++ libstdc++-v3/src/nonshared11/new_opvant.cc 2017-05-31 19:11:38.659882113 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/new_opvant.cc" +--- libstdc++-v3/src/nonshared11/shared_ptr48.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/shared_ptr48.cc 2017-05-31 15:42:01.125263051 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/shared_ptr.cc" ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/bad_array_new.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/bad_array_new.cc 2017-05-31 15:25:50.406872727 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2014-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/bad_array_new.cc" +--- libstdc++-v3/src/nonshared11/system_error48.cc.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/system_error48.cc 2017-06-01 13:09:18.313459989 +0200 +@@ -0,0 +1,28 @@ ++// <system_error> implementation file ++ ++// Copyright (C) 2007-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/system_error.cc" ++asm (".hidden _ZTSNSt3_V214error_categoryE"); ++asm (".hidden _ZSt20__throw_system_errori"); +--- libstdc++-v3/src/nonshared11/cow-stdexcept.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/cow-stdexcept.cc 2017-05-31 15:25:50.410872679 +0200 +@@ -0,0 +1,51 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cow-stdexcept.cc" ++asm (".hidden _ZNSt12__cow_stringC1EOS_"); ++asm (".hidden _ZNSt12__cow_stringC1ERKS_"); ++asm (".hidden _ZNSt12__cow_stringC1ERKSs"); ++asm (".hidden _ZNSt12__cow_stringC1Ev"); ++asm (".hidden _ZNSt12__cow_stringC2EOS_"); ++asm (".hidden _ZNSt12__cow_stringC2ERKS_"); ++asm (".hidden _ZNSt12__cow_stringC2ERKSs"); ++asm (".hidden _ZNSt12__cow_stringC2Ev"); ++asm (".hidden _ZNSt12__cow_stringD1Ev"); ++asm (".hidden _ZNSt12__cow_stringD2Ev"); ++asm (".hidden _ZNSt12__cow_stringaSEOS_"); ++asm (".hidden _ZNSt12__cow_stringaSERKS_"); ++asm (".hidden _ZNSt12__sso_stringC1ERKSs"); ++asm (".hidden _ZNSt12__sso_stringC2ERKSs"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt12__cow_stringC1EPKcj"); ++asm (".hidden _ZNSt12__cow_stringC2EPKcj"); ++#else ++asm (".hidden _ZNSt12__cow_stringC1EPKcm"); ++asm (".hidden _ZNSt12__cow_stringC2EPKcm"); ++#endif ++asm (".hidden _Z20_txnal_cow_string_D1Pv"); ++asm (".hidden _Z23_txnal_cow_string_c_strPKv"); ++asm (".hidden _Z23_txnal_sso_string_c_strPKv"); ++asm (".hidden _Z26_txnal_logic_error_get_msgPv"); ++asm (".hidden _Z27_txnal_cow_string_D1_commitPv"); ++asm (".hidden _Z28_txnal_runtime_error_get_msgPv"); ++asm (".hidden _Z35_txnal_cow_string_C1_for_exceptionsPvPKcS_"); +--- libstdc++-v3/src/nonshared11/ext11-inst.cc.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/ext11-inst.cc 2017-05-31 15:25:50.417872595 +0200 +@@ -0,0 +1,38 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <ext/stdio_filebuf.h> ++#include <ext/stdio_sync_filebuf.h> ++ ++namespace __gnu_cxx _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template stdio_sync_filebuf<char>::stdio_sync_filebuf(stdio_sync_filebuf&&) noexcept; ++ template stdio_sync_filebuf<char>& stdio_sync_filebuf<char>::operator=(stdio_sync_filebuf&&) noexcept; ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template stdio_sync_filebuf<wchar_t>::stdio_sync_filebuf(stdio_sync_filebuf&&) noexcept; ++ template stdio_sync_filebuf<wchar_t>& stdio_sync_filebuf<wchar_t>::operator=(stdio_sync_filebuf&&) noexcept; ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/compatibility-c++0x.cc.jj 2017-05-31 12:11:25.233560636 +0200 ++++ libstdc++-v3/src/nonshared11/compatibility-c++0x.cc 2017-05-31 15:25:50.407872715 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "../c++11/compatibility-c++0x.cc" +--- libstdc++-v3/src/nonshared11/thread48.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared11/thread48.cc 2017-05-31 15:25:50.428872463 +0200 +@@ -0,0 +1,28 @@ ++// Copyright (C) 2008-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/thread.cc" ++asm (".hidden _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv"); +--- libstdc++-v3/src/nonshared11/shared_ptr44.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/shared_ptr44.cc 2017-05-31 15:42:07.106191543 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/shared_ptr.cc" ++asm (".hidden _ZTSSt12bad_weak_ptr"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/cow-wstring-inst48.cc.jj 2017-06-01 09:40:03.601500517 +0200 ++++ libstdc++-v3/src/nonshared11/cow-wstring-inst48.cc 2017-06-01 09:40:36.490085538 +0200 +@@ -0,0 +1,35 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <bits/c++config.h> ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "cow-string-inst48.cc" ++#endif +--- libstdc++-v3/src/nonshared11/ctype.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/ctype.cc 2017-05-31 15:25:50.412872655 +0200 +@@ -0,0 +1,35 @@ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <locale> ++#include <cstdlib> ++#include <cstring> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ // Definitions for static const data members of ctype_base. ++ const ctype_base::mask ctype_base::blank; ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/system_error44.cc.jj 2017-05-31 12:11:25.233560636 +0200 ++++ libstdc++-v3/src/nonshared11/system_error44.cc 2017-06-01 13:09:08.773576729 +0200 +@@ -0,0 +1,28 @@ ++// <system_error> implementation file ++ ++// Copyright (C) 2007-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/system_error.cc" ++asm (".hidden _ZTSNSt3_V214error_categoryE"); ++asm (".hidden _ZSt20__throw_system_errori"); +--- libstdc++-v3/src/nonshared11/eh_throw.cc.jj 2017-06-01 12:19:27.713260414 +0200 ++++ libstdc++-v3/src/nonshared11/eh_throw.cc 2017-06-01 12:33:23.639919386 +0200 +@@ -0,0 +1,78 @@ ++// -*- C++ -*- Exception handling routines for throwing. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/c++config.h> ++#include "unwind-cxx.h" ++#include "eh_atomics.h" ++ ++using namespace __cxxabiv1; ++ ++ ++static void ++__gxx_exception_cleanup (_Unwind_Reason_Code code, _Unwind_Exception *exc) ++{ ++ // This cleanup is set only for primaries. ++ __cxa_refcounted_exception *header ++ = __get_refcounted_exception_header_from_ue (exc); ++ ++ // We only want to be called through _Unwind_DeleteException. ++ // _Unwind_DeleteException in the HP-UX IA64 libunwind library ++ // returns _URC_NO_REASON and not _URC_FOREIGN_EXCEPTION_CAUGHT ++ // like the GCC _Unwind_DeleteException function does. ++ if (code != _URC_FOREIGN_EXCEPTION_CAUGHT && code != _URC_NO_REASON) ++ { ++ __try ++ { ++ header->exc.terminateHandler (); ++ __builtin_abort (); ++ } ++ __catch(...) ++ { __builtin_abort (); } ++ } ++ ++ if (__gnu_cxx::__eh_atomic_dec (&header->referenceCount)) ++ { ++ if (header->exc.exceptionDestructor) ++ header->exc.exceptionDestructor (header + 1); ++ ++ __cxa_free_exception (header + 1); ++ } ++} ++ ++extern "C" __cxa_refcounted_exception* ++__cxxabiv1::__cxa_init_primary_exception(void *obj, std::type_info *tinfo, ++ void (_GLIBCXX_CDTOR_CALLABI *dest) (void *)) ++{ ++ __cxa_refcounted_exception *header ++ = __get_refcounted_exception_header_from_obj (obj); ++ header->referenceCount = 0; ++ header->exc.exceptionType = tinfo; ++ header->exc.exceptionDestructor = dest; ++ header->exc.unexpectedHandler = std::get_unexpected (); ++ header->exc.terminateHandler = std::get_terminate (); ++ __GXX_INIT_PRIMARY_EXCEPTION_CLASS(header->exc.unwindHeader.exception_class); ++ header->exc.unwindHeader.exception_cleanup = __gxx_exception_cleanup; ++ ++ return header; ++} +--- libstdc++-v3/src/nonshared11/fstream-inst.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/fstream-inst.cc 2017-05-31 15:25:50.418872583 +0200 +@@ -0,0 +1,79 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include <fstream> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_filebuf<char, char_traits<char>>::basic_filebuf(basic_filebuf&&); ++ template basic_filebuf<char, char_traits<char>>& basic_filebuf<char, char_traits<char>>::operator=(basic_filebuf&&); ++ template void basic_filebuf<char, char_traits<char>>::swap(basic_filebuf&); ++ template basic_filebuf<char, char_traits<char>>::__filebuf_type* basic_filebuf<char, char_traits<char>>::open(const std::string &, ios_base::openmode); ++ template basic_ifstream<char>::basic_ifstream(basic_ifstream&&); ++ template basic_ifstream<char>& basic_ifstream<char>::operator=(basic_ifstream&&); ++ template void basic_ifstream<char>::swap(basic_ifstream&); ++ template void basic_ifstream<char>::open(const std::string &, ios_base::openmode); ++ template basic_ifstream<char>::basic_ifstream(const std::string &, ios_base::openmode); ++ template basic_ofstream<char>::basic_ofstream(basic_ofstream&&); ++ template basic_ofstream<char>& basic_ofstream<char>::operator=(basic_ofstream&&); ++ template void basic_ofstream<char>::swap(basic_ofstream&); ++ template void basic_ofstream<char>::open(const std::string &, ios_base::openmode); ++ template basic_ofstream<char>::basic_ofstream(const std::string &, ios_base::openmode); ++ template basic_fstream<char>::basic_fstream(basic_fstream&&); ++ template basic_fstream<char>& basic_fstream<char>::operator=(basic_fstream&&); ++ template void basic_fstream<char>::swap(basic_fstream&); ++ template void basic_fstream<char>::open(const std::string &, ios_base::openmode); ++ template basic_fstream<char>::basic_fstream(const std::string &, ios_base::openmode); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_filebuf<wchar_t, char_traits<wchar_t>>::basic_filebuf(basic_filebuf&&); ++ template basic_filebuf<wchar_t, char_traits<wchar_t>>& basic_filebuf<wchar_t, char_traits<wchar_t>>::operator=(basic_filebuf&&); ++ template void basic_filebuf<wchar_t, char_traits<wchar_t>>::swap(basic_filebuf&); ++ template basic_filebuf<wchar_t, char_traits<wchar_t>>::__filebuf_type* basic_filebuf<wchar_t, char_traits<wchar_t>>::open(const std::string &, ios_base::openmode); ++ template basic_ifstream<wchar_t>::basic_ifstream(basic_ifstream&&); ++ template basic_ifstream<wchar_t>& basic_ifstream<wchar_t>::operator=(basic_ifstream&&); ++ template void basic_ifstream<wchar_t>::swap(basic_ifstream&); ++ template void basic_ifstream<wchar_t>::open(const std::string &, ios_base::openmode); ++ template basic_ifstream<wchar_t>::basic_ifstream(const std::string &, ios_base::openmode); ++ template basic_ofstream<wchar_t>::basic_ofstream(basic_ofstream&&); ++ template basic_ofstream<wchar_t>& basic_ofstream<wchar_t>::operator=(basic_ofstream&&); ++ template void basic_ofstream<wchar_t>::swap(basic_ofstream&); ++ template void basic_ofstream<wchar_t>::open(const std::string &, ios_base::openmode); ++ template basic_ofstream<wchar_t>::basic_ofstream(const std::string &, ios_base::openmode); ++ template basic_fstream<wchar_t>::basic_fstream(basic_fstream&&); ++ template basic_fstream<wchar_t>& basic_fstream<wchar_t>::operator=(basic_fstream&&); ++ template void basic_fstream<wchar_t>::swap(basic_fstream&); ++ template void basic_fstream<wchar_t>::open(const std::string &, ios_base::openmode); ++ template basic_fstream<wchar_t>::basic_fstream(const std::string &, ios_base::openmode); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/regex48.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/regex48.cc 2017-06-01 13:09:49.557077659 +0200 +@@ -0,0 +1,31 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/regex.cc" ++ ++asm (".hidden _ZNSt11regex_errorD0Ev"); ++asm (".hidden _ZNSt11regex_errorD1Ev"); ++asm (".hidden _ZNSt11regex_errorD2Ev"); ++asm (".hidden _ZTSSt11regex_error"); ++asm (".hidden _ZTISt11regex_error"); ++asm (".hidden _ZTVSt11regex_error"); ++asm (".hidden _ZSt19__throw_regex_errorNSt15regex_constants10error_typeE"); +--- libstdc++-v3/src/nonshared11/cxx11-shim_facets.cc.jj 2017-05-31 12:11:25.233560636 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-shim_facets.cc 2017-05-31 15:25:50.413872643 +0200 +@@ -0,0 +1,181 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cxx11-shim_facets.cc" ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE10do_compareEPKcS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE12do_transformEPKcS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE10do_compareEPKwS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE12do_transformEPKwS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE6do_getEiiiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE7do_openERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE6do_getEiiiRKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE7do_openERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_dateESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_timeESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_yearESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE14do_get_weekdayESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE16do_get_monthnameESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_dateESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_timeESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_yearESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE14do_get_weekdayESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE16do_get_monthnameESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRNSt7__cxx1112basic_stringIcS5_SaIcEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRNSt7__cxx1112basic_stringIwS5_SaIwEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecRKNSt7__cxx1112basic_stringIcS5_SaIcEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewRKNSt7__cxx1112basic_stringIwS5_SaIwEEE"); ++asm (".hidden _ZNKSt6locale5facet11_M_sso_shimEPKNS_2idE"); ++asm (".hidden _ZNKSt6locale5facet19_M_remove_referenceEv"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basece"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewe"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++#else ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewg"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++#endif ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIcEEvPv"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIwEEvPv"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIcEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIwEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIcEENSt9time_base9dateorderESt17integral_constantIbLb1EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIwEENSt9time_base9dateorderESt17integral_constantIbLb1EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb0EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb1EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb0EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb1EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++asm (".hidden _ZTINSt6locale5facet6__shimE"); ++asm (".hidden _ZTSNSt6locale5facet6__shimE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcjRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcjRKS3_"); ++#else ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcmRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcmRKS3_"); ++#endif +--- libstdc++-v3/src/nonshared11/eh_aux_runtime.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared11/eh_aux_runtime.cc 2017-05-31 15:25:50.416872607 +0200 +@@ -0,0 +1,38 @@ ++// -*- C++ -*- Common throw conditions. ++// Copyright (C) 1994-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "typeinfo" ++#include "exception" ++#include "new" ++#include <cstdlib> ++#include "unwind-cxx.h" ++#include <bits/exception_defines.h> ++ ++extern "C" void ++__cxxabiv1::__cxa_throw_bad_array_new_length () ++{ _GLIBCXX_THROW_OR_ABORT(std::bad_array_new_length()); } ++ ++//extern "C" void ++//__cxxabiv1::__cxa_throw_bad_array_length () ++//{ _GLIBCXX_THROW_OR_ABORT(std::bad_array_length()); } +--- libstdc++-v3/src/nonshared11/compatibility-atomic-c++0x.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/compatibility-atomic-c++0x.cc 2017-05-31 15:25:50.407872715 +0200 +@@ -0,0 +1,42 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <atomic> ++ ++extern "C" ++{ ++ extern bool _ZNVSt9__atomic011atomic_flag5clearESt12memory_order (std::memory_order); ++ ++ bool ++ _ZNSt9__atomic011atomic_flag5clearESt12memory_order (std::memory_order m) ++ { ++ return _ZNVSt9__atomic011atomic_flag5clearESt12memory_order (m); ++ } ++ ++ extern void _ZNVSt9__atomic011atomic_flag12test_and_setESt12memory_order (std::memory_order); ++ ++ void ++ _ZNSt9__atomic011atomic_flag12test_and_setESt12memory_order (std::memory_order m) ++ { ++ _ZNVSt9__atomic011atomic_flag12test_and_setESt12memory_order (m); ++ } ++} +--- libstdc++-v3/src/nonshared11/hashtable_c++0x.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/hashtable_c++0x.cc 2017-05-31 15:25:50.420872559 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <initializer_list> ++#include <tuple> ++#include <ext/aligned_buffer.h> ++#include <ext/alloc_traits.h> ++#include <bits/hashtable_policy.h> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++namespace __detail ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ extern const unsigned long __prime_list[256 + (sizeof (long) == 8 ? 48 : 0) + 1]; ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace __detail ++} // namespace std ++ ++#define HASHTABLE_AUX_CC 1 ++#include "../c++11/hashtable_c++0x.cc" +--- libstdc++-v3/src/nonshared11/chrono.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/chrono.cc 2017-05-31 15:25:50.406872727 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/chrono.cc" +--- libstdc++-v3/src/nonshared11/del_opvnt.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvnt.cc 2017-05-31 15:25:50.416872607 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opvnt.cc" +--- libstdc++-v3/src/nonshared11/functexcept48.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/functexcept48.cc 2017-05-31 15:25:50.418872583 +0200 +@@ -0,0 +1,66 @@ ++// Copyright (C) 2001-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/functexcept.h> ++#include <cstdlib> ++#include <exception> ++#include <stdexcept> ++#include <new> ++#include <typeinfo> ++#include <ios> ++#include <stdarg.h> ++ ++#ifdef _GLIBCXX_USE_NLS ++# include <libintl.h> ++# define _(msgid) gettext (msgid) ++#else ++# define _(msgid) (msgid) ++#endif ++ ++namespace __gnu_cxx ++{ ++ int __snprintf_lite(char *__buf, size_t __bufsize, const char *__fmt, ++ va_list __ap); ++} ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ void ++ __throw_out_of_range_fmt(const char* __fmt, ...) ++ { ++ const size_t __len = __builtin_strlen(__fmt); ++ // We expect at most 2 numbers, and 1 short string. The additional ++ // 512 bytes should provide more than enough space for expansion. ++ const size_t __alloca_size = __len + 512; ++ char *const __s = static_cast<char*>(__builtin_alloca(__alloca_size)); ++ va_list __ap; ++ ++ va_start(__ap, __fmt); ++ __gnu_cxx::__snprintf_lite(__s, __alloca_size, __fmt, __ap); ++ _GLIBCXX_THROW_OR_ABORT(out_of_range(_(__s))); ++ va_end(__ap); // Not reached. ++ } ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/new_opva.cc.jj 2017-05-31 19:11:38.657882137 +0200 ++++ libstdc++-v3/src/nonshared11/new_opva.cc 2017-05-31 19:11:38.655882161 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/new_opva.cc" +--- libstdc++-v3/src/nonshared11/wlocale-inst.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/wlocale-inst.cc 2017-05-31 15:25:50.429872451 +0200 +@@ -0,0 +1,36 @@ ++// Locale support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 22.1 Locales ++// ++ ++// Instantiate locales using COW std::wstring ABI ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <bits/c++config.h> ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "locale-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared11/wstring-inst.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/wstring-inst.cc 2017-05-31 15:25:50.429872451 +0200 +@@ -0,0 +1,31 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#include "../c++11/wstring-inst.cc" ++asm (".hidden _ZN9__gnu_cxxeqIPKwNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEEEbRKNS_17__normal_iteratorIT_T0_EESE_"); ++asm (".hidden _ZN9__gnu_cxxeqIPwNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEEEbRKNS_17__normal_iteratorIT_T0_EESD_"); +--- libstdc++-v3/src/nonshared11/istream-inst.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/istream-inst.cc 2017-05-31 15:25:50.421872547 +0200 +@@ -0,0 +1,46 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#include <istream> ++#include <iomanip> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_istream<char>::basic_istream(basic_istream&&); ++ template basic_istream<char>& basic_istream<char>::operator=(basic_istream&&); ++ template void basic_istream<char>::swap(basic_istream&); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_istream<wchar_t>::basic_istream(basic_istream&&); ++ template basic_istream<wchar_t>& basic_istream<wchar_t>::operator=(basic_istream&&); ++ template void basic_istream<wchar_t>::swap(basic_istream&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/new_opa.cc.jj 2017-05-31 19:11:38.650882221 +0200 ++++ libstdc++-v3/src/nonshared11/new_opa.cc 2017-05-31 19:11:38.648882245 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/new_opa.cc" +--- libstdc++-v3/src/nonshared11/futex.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/futex.cc 2017-05-31 15:25:50.419872571 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/futex.cc" +--- libstdc++-v3/src/nonshared11/del_ops.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/del_ops.cc 2017-05-31 15:25:50.415872619 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_ops.cc" +--- libstdc++-v3/src/nonshared11/new_opant.cc.jj 2017-05-31 19:11:38.653882185 +0200 ++++ libstdc++-v3/src/nonshared11/new_opant.cc 2017-05-31 19:11:38.652882197 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/new_opant.cc" +--- libstdc++-v3/src/nonshared11/nested_exception.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/nested_exception.cc 2017-05-31 15:25:50.423872523 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/nested_exception.cc" ++asm (".hidden _ZTSSt16nested_exception"); +--- libstdc++-v3/src/nonshared11/eh_ptr.cc.jj 2017-06-01 11:58:33.495843422 +0200 ++++ libstdc++-v3/src/nonshared11/eh_ptr.cc 2017-06-01 13:06:50.205282874 +0200 +@@ -0,0 +1,47 @@ ++// -*- C++ -*- Implement the members of exception_ptr. ++// Copyright (C) 2008-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/c++config.h> ++#include "eh_atomics.h" ++ ++#define _GLIBCXX_EH_PTR_COMPAT ++ ++#include <exception> ++#include <bits/exception_ptr.h> ++#include "unwind-cxx.h" ++ ++using namespace __cxxabiv1; ++ ++std::__exception_ptr::exception_ptr::exception_ptr(void* obj) noexcept ++: _M_exception_object(obj) ++{ ++ if (_M_exception_object) ++ { ++ __cxa_refcounted_exception *eh = ++ __get_refcounted_exception_header_from_obj (_M_exception_object); ++ __gnu_cxx::__eh_atomic_inc (&eh->referenceCount); ++ } ++} ++ ++asm (".hidden _ZNSt15__exception_ptr13exception_ptrC2EPv"); +--- libstdc++-v3/src/nonshared11/functional.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/functional.cc 2017-05-31 15:25:50.419872571 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/functional.cc" ++asm (".hidden _ZTSSt17bad_function_call"); +--- libstdc++-v3/src/nonshared11/codecvt.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/codecvt.cc 2017-05-31 15:25:50.407872715 +0200 +@@ -0,0 +1,31 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/codecvt.cc" ++asm (".hidden _ZTISt12codecvt_base"); ++asm (".hidden _ZTSSt12codecvt_base"); ++asm (".hidden _ZTISt23__codecvt_abstract_baseIDic11__mbstate_tE"); ++asm (".hidden _ZTISt23__codecvt_abstract_baseIDsc11__mbstate_tE"); ++asm (".hidden _ZTSSt23__codecvt_abstract_baseIDic11__mbstate_tE"); ++asm (".hidden _ZTSSt23__codecvt_abstract_baseIDsc11__mbstate_tE"); ++asm (".hidden _ZTVSt23__codecvt_abstract_baseIDic11__mbstate_tE"); ++asm (".hidden _ZTVSt23__codecvt_abstract_baseIDsc11__mbstate_tE"); +--- libstdc++-v3/src/nonshared11/cow-sstream-inst44.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/cow-sstream-inst44.cc 2017-05-31 15:25:50.410872679 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "cow-sstream-inst.cc" +--- libstdc++-v3/src/nonshared11/compatibility-thread-c++0x.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/compatibility-thread-c++0x.cc 2017-05-31 15:25:50.408872703 +0200 +@@ -0,0 +1,39 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/c++config.h> ++#if defined(_GLIBCXX_HAVE_TLS) && defined(PIC) ++#define _GLIBCXX_ASYNC_ABI_COMPAT ++#endif ++ ++#include <future> ++#include <mutex> ++ ++#undef _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE ++#include "../c++11/compatibility-thread-c++0x.cc" ++ ++asm (".hidden _ZSt9call_onceIMSt6threadFvvEJSt17reference_wrapperIS0_EEEvRSt9once_flagOT_DpOT0_"); ++asm (".hidden _ZZSt9call_onceIMSt6threadFvvEJSt17reference_wrapperIS0_EEEvRSt9once_flagOT_DpOT0_ENKUlvE0_clEv"); ++asm (".hidden _ZZSt9call_onceIMSt6threadFvvEJSt17reference_wrapperIS0_EEEvRSt9once_flagOT_DpOT0_ENUlvE0_4_FUNEv"); ++asm (".hidden _ZSt13__bind_simpleIMSt6threadFvvEJSt17reference_wrapperIS0_EEENSt19_Bind_simple_helperIT_JDpT0_EE6__typeEOS6_DpOS7_"); ++asm (".hidden _ZNSt13__future_base19_Async_state_common15_M_run_deferredEv"); ++asm (".hidden _ZNSt13__future_base7_ResultIvE10_M_destroyEv"); +--- libstdc++-v3/src/nonshared11/locale-inst.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/locale-inst.cc 2017-05-31 15:25:50.422872535 +0200 +@@ -0,0 +1,84 @@ ++// Locale support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 22.1 Locales ++// ++ ++#ifndef _GLIBCXX_USE_CXX11_ABI ++// Instantiations in this file use the old COW std::string ABI unless included ++// by another file which defines _GLIBCXX_USE_CXX11_ABI=1. Some instantiations ++// are guarded by a check for !_GLIBCXX_USE_CXX11_ABI so that they are only ++// instantiated once, because they are not tagged with abi_tag so should not ++// be instantiated twice. ++# define _GLIBCXX_USE_CXX11_ABI 0 ++#endif ++ ++#include <locale> ++ ++// Instantiation configuration. ++#ifndef C ++# define C char ++# define C_is_char ++#endif ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ template time_get<C, istreambuf_iterator<C>>::iter_type time_get<C, istreambuf_iterator<C>>::_M_extract_wday_or_month(iter_type, iter_type, int&, const C**, size_t, ios_base&, ios_base::iostate&) const; ++#endif ++ ++ template C* __add_grouping<C>(C*, C, char const*, size_t, C const*, C const*); ++ ++ template moneypunct_byname<C, false>::moneypunct_byname(const string&, size_t); ++ template moneypunct_byname<C, true>::moneypunct_byname(const string&, size_t); ++ template numpunct_byname<C>::numpunct_byname(const string&, size_t); ++ template time_put_byname<C>::time_put_byname(const string&, size_t); ++ template time_get_byname<C>::time_get_byname(const string&, size_t); ++ template time_get<C, istreambuf_iterator<C>>::iter_type time_get<C, istreambuf_iterator<C>>::get(iter_type, iter_type, ios_base&, ios_base::iostate&, tm*, const C*, const C*) const; ++ template time_get<C, istreambuf_iterator<C>>::iter_type time_get<C, istreambuf_iterator<C>>::do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, tm*, char, char) const; ++ template messages_byname<C>::messages_byname(const string&, size_t); ++ ctype_byname<C>::ctype_byname(const string& __s, size_t __refs) ++ : ctype_byname(__s.c_str(), __refs) { } ++ template codecvt_byname<C, char, mbstate_t>::codecvt_byname(const string&, size_t); ++// template collate_byname<C>::collate_byname(const string&, size_t); ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++#ifdef C_is_char ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZSt14__add_groupingIcEPT_S1_S0_PKcjPKS0_S5_"); ++#else ++asm (".hidden _ZSt14__add_groupingIcEPT_S1_S0_PKcmPKS0_S5_"); ++#endif ++#else ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZSt14__add_groupingIwEPT_S1_S0_PKcjPKS0_S5_"); ++#else ++asm (".hidden _ZSt14__add_groupingIwEPT_S1_S0_PKcmPKS0_S5_"); ++#endif ++#endif +--- libstdc++-v3/src/nonshared11/cow-wstring-inst44.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/cow-wstring-inst44.cc 2017-06-01 09:37:08.518709666 +0200 +@@ -0,0 +1,35 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <bits/c++config.h> ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "cow-string-inst44.cc" ++#endif +--- libstdc++-v3/src/nonshared11/cow-string-inst48.cc.jj 2017-06-01 09:37:37.379345510 +0200 ++++ libstdc++-v3/src/nonshared11/cow-string-inst48.cc 2017-06-01 09:41:04.366733798 +0200 +@@ -0,0 +1,46 @@ ++// Components for manipulating sequences of characters -*- C++ -*- ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++// Written by Jason Merrill based upon the specification by Takanori Adachi ++// in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers. ++ ++// Instantiation configuration. ++#ifndef C ++# define _GLIBCXX_USE_CXX11_ABI 0 ++# define C char ++#endif ++#include <string> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef basic_string<C> S; ++ ++ template ++ S::basic_string(const S&, size_type, const allocator_type&); ++} +--- libstdc++-v3/src/nonshared11/ios-inst.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/ios-inst.cc 2017-05-31 15:25:50.420872559 +0200 +@@ -0,0 +1,49 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#include <ios> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template void basic_ios<char>::move(basic_ios&&); ++ template void basic_ios<char>::move(basic_ios&); ++ template void basic_ios<char>::swap(basic_ios&); ++ template void basic_ios<char>::set_rdbuf(basic_streambuf<char, traits_type>*); ++ template basic_ios<char>::operator bool() const; ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_ios<wchar_t>::move(basic_ios&&); ++ template void basic_ios<wchar_t>::move(basic_ios&); ++ template void basic_ios<wchar_t>::swap(basic_ios&); ++ template void basic_ios<wchar_t>::set_rdbuf(basic_streambuf<wchar_t, traits_type>*); ++ template basic_ios<wchar_t>::operator bool() const; ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/ios.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/ios.cc 2017-06-01 13:08:25.700103825 +0200 +@@ -0,0 +1,32 @@ ++// Iostreams base classes -*- C++ -*- ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 27.4 Iostreams base classes ++// ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/ios.cc" ++ ++asm (".hidden _ZSt19__throw_ios_failurePKc"); +--- libstdc++-v3/src/nonshared11/Makefile.am.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/Makefile.am 2017-06-01 12:24:18.989661190 +0200 +@@ -0,0 +1,218 @@ ++## Makefile for the C++03 sources of the GNU C++ Standard library. ++## ++## Copyright (C) 1997-2017 Free Software Foundation, Inc. ++## ++## This file is part of the libstdc++ version 3 distribution. ++## Process this file with automake to produce Makefile.in. ++ ++## This file is part of the GNU ISO C++ Library. This library is free ++## software; you can redistribute it and/or modify it under the ++## terms of the GNU General Public License as published by the ++## Free Software Foundation; either version 3, or (at your option) ++## any later version. ++ ++## This library is distributed in the hope that it will be useful, ++## but WITHOUT ANY WARRANTY; without even the implied warranty of ++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++## GNU General Public License for more details. ++ ++## You should have received a copy of the GNU General Public License along ++## with this library; see the file COPYING3. If not see ++## <http://www.gnu.org/licenses/>. ++ ++include $(top_srcdir)/fragment.am ++ ++# Convenience library for C++11 runtime. ++noinst_LTLIBRARIES = libnonshared11convenience44.la \ ++ libnonshared11convenience48.la ++ ++headers = ++ ++sources = \ ++ bad_array_length.cc \ ++ bad_array_new.cc \ ++ codecvt.cc \ ++ condition_variable.cc \ ++ cow-shim_facets.cc \ ++ cow-stdexcept.cc \ ++ ctype.cc \ ++ cxx11-hash_tr1.cc \ ++ cxx11-ios_failure.cc \ ++ cxx11-shim_facets.cc \ ++ cxx11-stdexcept.cc \ ++ del_ops.cc \ ++ del_opvs.cc \ ++ new_opa.cc \ ++ new_opant.cc \ ++ new_opva.cc \ ++ new_opvant.cc \ ++ del_opa.cc \ ++ del_opant.cc \ ++ del_opsa.cc \ ++ del_opva.cc \ ++ del_opvant.cc \ ++ del_opvsa.cc \ ++ eh_aux_runtime.cc \ ++ eh_terminate.cc \ ++ eh_ptr.cc \ ++ eh_throw.cc \ ++ futex.cc \ ++ ios.cc \ ++ new_handler.cc \ ++ snprintf_lite.cc \ ++ $(inst_sources) ++ ++sources44 = \ ++ limits.cc \ ++ future.cc \ ++ functexcept.cc \ ++ placeholders.cc \ ++ regex.cc \ ++ functional.cc \ ++ shared_ptr44.cc \ ++ nested_exception.cc \ ++ debug.cc \ ++ compatibility-thread-c++0x.cc \ ++ atexit_thread.cc \ ++ random.cc \ ++ chrono.cc \ ++ compatibility-atomic-c++0x.cc \ ++ compatibility-c++0x.cc \ ++ hashtable_c++0x.cc \ ++ system_error44.cc \ ++ thread44.cc \ ++ $(inst_sources44) ++ ++sources48 = \ ++ functexcept48.cc \ ++ future48.cc \ ++ random48.cc \ ++ regex48.cc \ ++ shared_ptr48.cc \ ++ system_error48.cc \ ++ thread48.cc \ ++ $(inst_sources48) ++ ++if ENABLE_EXTERN_TEMPLATE ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++inst_sources = \ ++ cxx11-locale-inst.cc \ ++ cxx11-wlocale-inst.cc \ ++ ext11-inst.cc \ ++ fstream-inst.cc \ ++ ios-inst.cc \ ++ iostream-inst.cc \ ++ istream-inst.cc \ ++ locale-inst-asm.S \ ++ ostream-inst.cc \ ++ sstream-inst.cc \ ++ streambuf-inst.cc \ ++ string-inst.cc \ ++ wstring-inst.cc \ ++ string-io-inst.cc \ ++ wstring-io-inst.cc \ ++ sso_string.cc ++inst_sources44 = \ ++ cow-sstream-inst44.cc \ ++ cow-string-inst44.cc \ ++ cow-wstring-inst44.cc \ ++ cow-fstream-inst.cc \ ++ locale-inst44.cc \ ++ wlocale-inst44.cc ++inst_sources48 = \ ++ cow-sstream-inst.cc \ ++ cow-string-inst48.cc \ ++ cow-wstring-inst48.cc \ ++ locale-inst.cc \ ++ wlocale-inst.cc ++else ++# XTEMPLATE_FLAGS = ++inst_sources = ++inst_sources44 = ++inst_sources48 = ++endif ++ ++vpath % $(top_srcdir)/src/nonshared11 ++vpath % $(top_srcdir) ++ ++libnonshared11convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared11convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# 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 ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++11 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++# Use special rules for the C++14 sources so that the proper flags are passed. ++del_ops.lo: del_ops.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++del_opvs.lo: del_opvs.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++ ++# Use special rules for the C++17 sources so that the proper flags are passed. ++new_opa.lo: new_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opant.lo: new_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opva.lo: new_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opvant.lo: new_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opa.lo: del_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opant.lo: del_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opsa.lo: del_opsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opva.lo: del_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvant.lo: del_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvsa.lo: del_opvsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< +--- libstdc++-v3/src/nonshared11/random48.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/random48.cc 2017-05-31 15:25:50.424872511 +0200 +@@ -0,0 +1,95 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/random.cc" ++ ++#if __WORDSIZE == 64 ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE4seedEm"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC1Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC2Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEclEv"); ++#elif defined(__s390__) ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE4seedEj"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EEC1Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EEC2Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EEclEv"); ++#else ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE4seedEj"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC1Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC2Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEclEv"); ++#endif +--- libstdc++-v3/src/nonshared11/string-io-inst.cc.jj 2017-06-01 10:36:29.259980928 +0200 ++++ libstdc++-v3/src/nonshared11/string-io-inst.cc 2017-06-01 11:06:52.072383101 +0200 +@@ -0,0 +1,54 @@ ++// SSO string instantiations for I/O -*- C++ -*- ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#ifndef C ++# define _GLIBCXX_USE_CXX11_ABI 1 ++# define C char ++# define NARROW ++#endif ++#include <istream> ++#include <ostream> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ // string related to iostreams. ++ typedef basic_istream<C> I; ++ typedef basic_ostream<C> O; ++ typedef basic_string<C> S; ++ ++#ifndef NARROW ++ template ++ I& operator>>(I&, S&); ++#endif ++ ++ template ++ O& operator<<(O&, const S&); ++ ++ template ++ I& getline(I&, S&); ++} +--- libstdc++-v3/src/nonshared11/cow-shim_facets.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/cow-shim_facets.cc 2017-05-31 15:25:50.409872691 +0200 +@@ -0,0 +1,181 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cow-shim_facets.cc" ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE10do_compareEPKcS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE12do_transformEPKcS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE10do_compareEPKwS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE12do_transformEPKwS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE6do_getEiiiRKSs"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE7do_openERKSsRKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE6do_getEiiiRKSbIwSt11char_traitsIwESaIwEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE7do_openERKSsRKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_dateESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_timeESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_yearESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE14do_get_weekdayESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE16do_get_monthnameESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_dateESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_timeESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_yearESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE14do_get_weekdayESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE16do_get_monthnameESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRSs"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRSbIwS5_SaIwEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecRKSs"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewRKSbIwS5_SaIwEE"); ++asm (".hidden _ZNKSt6locale5facet11_M_cow_shimEPKNS_2idE"); ++asm (".hidden _ZNKSt6locale5facet19_M_remove_referenceEv"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basece"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewe"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++#else ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewg"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++#endif ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIcEEvPv"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIwEEvPv"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIcEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIwEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIcEENSt9time_base9dateorderESt17integral_constantIbLb0EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIwEENSt9time_base9dateorderESt17integral_constantIbLb0EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb0EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb1EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb0EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb1EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++asm (".hidden _ZTINSt6locale5facet6__shimE"); ++asm (".hidden _ZTSNSt6locale5facet6__shimE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcjRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcjRKS3_"); ++#else ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcmRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcmRKS3_"); ++#endif +--- libstdc++-v3/src/nonshared11/sso_string.cc.jj 2017-05-31 15:22:41.353139321 +0200 ++++ libstdc++-v3/src/nonshared11/sso_string.cc 2017-05-31 15:25:50.426872487 +0200 +@@ -0,0 +1,48 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 2014-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#include "../c++11/sso_string.cc" ++asm (".hidden _ZNSt12__sso_stringC1EOS_"); ++asm (".hidden _ZNSt12__sso_stringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__sso_stringC1ERKS_"); ++asm (".hidden _ZNSt12__sso_stringC1Ev"); ++asm (".hidden _ZNSt12__sso_stringC2EOS_"); ++asm (".hidden _ZNSt12__sso_stringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__sso_stringC2ERKS_"); ++asm (".hidden _ZNSt12__sso_stringC2Ev"); ++asm (".hidden _ZNSt12__sso_stringD1Ev"); ++asm (".hidden _ZNSt12__sso_stringD2Ev"); ++asm (".hidden _ZNSt12__sso_stringaSEOS_"); ++asm (".hidden _ZNSt12__sso_stringaSERKS_"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt12__sso_stringC1EPKcj"); ++asm (".hidden _ZNSt12__sso_stringC2EPKcj"); ++#else ++asm (".hidden _ZNSt12__sso_stringC1EPKcm"); ++asm (".hidden _ZNSt12__sso_stringC2EPKcm"); ++#endif +--- libstdc++-v3/src/nonshared11/del_opv.cc.jj 2017-05-31 12:11:25.242560528 +0200 ++++ libstdc++-v3/src/nonshared11/del_opv.cc 2017-05-31 15:25:50.415872619 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opv.cc" +--- libstdc++-v3/src/nonshared11/Makefile.in.jj 2017-05-31 12:11:25.242560528 +0200 ++++ libstdc++-v3/src/nonshared11/Makefile.in 2017-06-01 12:24:32.476494537 +0200 +@@ -0,0 +1,836 @@ ++# Makefile.in generated by automake 1.11.6 from Makefile.am. ++# @configure_input@ ++ ++# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, ++# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software ++# Foundation, Inc. ++# This Makefile.in is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++# even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++# PARTICULAR PURPOSE. ++ ++@SET_MAKE@ ++ ++VPATH = @srcdir@ ++am__make_dryrun = \ ++ { \ ++ am__dry=no; \ ++ case $$MAKEFLAGS in \ ++ *\\[\ \ ]*) \ ++ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ ++ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ ++ *) \ ++ for am__flg in $$MAKEFLAGS; do \ ++ case $$am__flg in \ ++ *=*|--*) ;; \ ++ *n*) am__dry=yes; break;; \ ++ esac; \ ++ done;; \ ++ esac; \ ++ test $$am__dry = yes; \ ++ } ++pkgdatadir = $(datadir)/@PACKAGE@ ++pkgincludedir = $(includedir)/@PACKAGE@ ++pkglibdir = $(libdir)/@PACKAGE@ ++pkglibexecdir = $(libexecdir)/@PACKAGE@ ++am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd ++install_sh_DATA = $(install_sh) -c -m 644 ++install_sh_PROGRAM = $(install_sh) -c ++install_sh_SCRIPT = $(install_sh) -c ++INSTALL_HEADER = $(INSTALL_DATA) ++transform = $(program_transform_name) ++NORMAL_INSTALL = : ++PRE_INSTALL = : ++POST_INSTALL = : ++NORMAL_UNINSTALL = : ++PRE_UNINSTALL = : ++POST_UNINSTALL = : ++build_triplet = @build@ ++host_triplet = @host@ ++target_triplet = @target@ ++DIST_COMMON = $(top_srcdir)/fragment.am $(srcdir)/Makefile.in \ ++ $(srcdir)/Makefile.am ++subdir = src/nonshared11 ++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ++am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ ++ $(top_srcdir)/../config/enable.m4 \ ++ $(top_srcdir)/../config/futex.m4 \ ++ $(top_srcdir)/../config/hwcaps.m4 \ ++ $(top_srcdir)/../config/iconv.m4 \ ++ $(top_srcdir)/../config/lead-dot.m4 \ ++ $(top_srcdir)/../config/lib-ld.m4 \ ++ $(top_srcdir)/../config/lib-link.m4 \ ++ $(top_srcdir)/../config/lib-prefix.m4 \ ++ $(top_srcdir)/../config/lthostflags.m4 \ ++ $(top_srcdir)/../config/multi.m4 \ ++ $(top_srcdir)/../config/no-executables.m4 \ ++ $(top_srcdir)/../config/override.m4 \ ++ $(top_srcdir)/../config/stdint.m4 \ ++ $(top_srcdir)/../config/unwind_ipinfo.m4 \ ++ $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ ++ $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \ ++ $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/crossconfig.m4 \ ++ $(top_srcdir)/linkage.m4 $(top_srcdir)/acinclude.m4 \ ++ $(top_srcdir)/../config/gc++filt.m4 \ ++ $(top_srcdir)/../config/tls.m4 $(top_srcdir)/../config/gthr.m4 \ ++ $(top_srcdir)/configure.ac ++am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ ++ $(ACLOCAL_M4) ++CONFIG_HEADER = $(top_builddir)/config.h ++CONFIG_CLEAN_FILES = ++CONFIG_CLEAN_VPATH_FILES = ++LTLIBRARIES = $(noinst_LTLIBRARIES) ++libnonshared11convenience44_la_LIBADD = ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_1 = cxx11-locale-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ext11-inst.lo fstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ios-inst.lo iostream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ istream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst-asm.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ostream-inst.lo sstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.lo string-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst.lo string-io-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-io-inst.lo sso_string.lo ++am__objects_2 = bad_array_length.lo bad_array_new.lo codecvt.lo \ ++ condition_variable.lo cow-shim_facets.lo cow-stdexcept.lo \ ++ ctype.lo cxx11-hash_tr1.lo cxx11-ios_failure.lo \ ++ cxx11-shim_facets.lo cxx11-stdexcept.lo del_ops.lo del_opvs.lo \ ++ new_opa.lo new_opant.lo new_opva.lo new_opvant.lo del_opa.lo \ ++ del_opant.lo del_opsa.lo del_opva.lo del_opvant.lo \ ++ del_opvsa.lo eh_aux_runtime.lo eh_terminate.lo eh_ptr.lo \ ++ eh_throw.lo futex.lo ios.lo new_handler.lo snprintf_lite.lo \ ++ $(am__objects_1) ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_3 = cow-sstream-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-fstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst44.lo ++am__objects_4 = limits.lo future.lo functexcept.lo placeholders.lo \ ++ regex.lo functional.lo shared_ptr44.lo nested_exception.lo \ ++ debug.lo compatibility-thread-c++0x.lo atexit_thread.lo \ ++ random.lo chrono.lo compatibility-atomic-c++0x.lo \ ++ compatibility-c++0x.lo hashtable_c++0x.lo system_error44.lo \ ++ thread44.lo $(am__objects_3) ++am_libnonshared11convenience44_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_4) ++libnonshared11convenience44_la_OBJECTS = \ ++ $(am_libnonshared11convenience44_la_OBJECTS) ++libnonshared11convenience48_la_LIBADD = ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_5 = cow-sstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst48.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst48.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst.lo wlocale-inst.lo ++am__objects_6 = functexcept48.lo future48.lo random48.lo regex48.lo \ ++ shared_ptr48.lo system_error48.lo thread48.lo $(am__objects_5) ++am_libnonshared11convenience48_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_6) ++libnonshared11convenience48_la_OBJECTS = \ ++ $(am_libnonshared11convenience48_la_OBJECTS) ++DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) ++depcomp = ++am__depfiles_maybe = ++CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++LTCPPASCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) ++CXXLD = $(CXX) ++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ ++ $(LDFLAGS) -o $@ ++SOURCES = $(libnonshared11convenience44_la_SOURCES) \ ++ $(libnonshared11convenience48_la_SOURCES) ++am__can_run_installinfo = \ ++ case $$AM_UPDATE_INFO_DIR in \ ++ n|no|NO) false;; \ ++ *) (install-info --version) >/dev/null 2>&1;; \ ++ esac ++ETAGS = etags ++CTAGS = ctags ++ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@ ++ACLOCAL = @ACLOCAL@ ++ALLOCATOR_H = @ALLOCATOR_H@ ++ALLOCATOR_NAME = @ALLOCATOR_NAME@ ++AMTAR = @AMTAR@ ++AR = @AR@ ++AS = @AS@ ++ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@ ++ATOMIC_FLAGS = @ATOMIC_FLAGS@ ++ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@ ++AUTOCONF = @AUTOCONF@ ++AUTOHEADER = @AUTOHEADER@ ++AUTOMAKE = @AUTOMAKE@ ++AWK = @AWK@ ++BASIC_FILE_CC = @BASIC_FILE_CC@ ++BASIC_FILE_H = @BASIC_FILE_H@ ++CC = @CC@ ++CCAS = @CCAS@ ++CCASFLAGS = @CCASFLAGS@ ++CCODECVT_CC = @CCODECVT_CC@ ++CCOLLATE_CC = @CCOLLATE_CC@ ++CCTYPE_CC = @CCTYPE_CC@ ++CFLAGS = @CFLAGS@ ++CLOCALE_CC = @CLOCALE_CC@ ++CLOCALE_H = @CLOCALE_H@ ++CLOCALE_INTERNAL_H = @CLOCALE_INTERNAL_H@ ++CMESSAGES_CC = @CMESSAGES_CC@ ++CMESSAGES_H = @CMESSAGES_H@ ++CMONEY_CC = @CMONEY_CC@ ++CNUMERIC_CC = @CNUMERIC_CC@ ++CPP = @CPP@ ++CPPFLAGS = @CPPFLAGS@ ++CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@ ++CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@ ++CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@ ++CSTDIO_H = @CSTDIO_H@ ++CTIME_CC = @CTIME_CC@ ++CTIME_H = @CTIME_H@ ++CXX = @CXX@ ++CXXCPP = @CXXCPP@ ++CXXFILT = @CXXFILT@ ++CXXFLAGS = @CXXFLAGS@ ++CYGPATH_W = @CYGPATH_W@ ++C_INCLUDE_DIR = @C_INCLUDE_DIR@ ++DBLATEX = @DBLATEX@ ++DEBUG_FLAGS = @DEBUG_FLAGS@ ++DEFS = @DEFS@ ++DOT = @DOT@ ++DOXYGEN = @DOXYGEN@ ++DSYMUTIL = @DSYMUTIL@ ++DUMPBIN = @DUMPBIN@ ++ECHO_C = @ECHO_C@ ++ECHO_N = @ECHO_N@ ++ECHO_T = @ECHO_T@ ++EGREP = @EGREP@ ++ERROR_CONSTANTS_SRCDIR = @ERROR_CONSTANTS_SRCDIR@ ++EXEEXT = @EXEEXT@ ++EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ ++FGREP = @FGREP@ ++GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ ++GLIBCXX_LIBS = @GLIBCXX_LIBS@ ++GREP = @GREP@ ++HWCAP_CFLAGS = @HWCAP_CFLAGS@ ++INSTALL = @INSTALL@ ++INSTALL_DATA = @INSTALL_DATA@ ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ ++INSTALL_SCRIPT = @INSTALL_SCRIPT@ ++INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ ++LD = @LD@ ++LDFLAGS = @LDFLAGS@ ++LIBICONV = @LIBICONV@ ++LIBOBJS = @LIBOBJS@ ++LIBS = @LIBS@ ++LIBTOOL = @LIBTOOL@ ++LIPO = @LIPO@ ++LN_S = @LN_S@ ++LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@ ++LTLIBICONV = @LTLIBICONV@ ++LTLIBOBJS = @LTLIBOBJS@ ++MAINT = @MAINT@ ++MAKEINFO = @MAKEINFO@ ++MKDIR_P = @MKDIR_P@ ++NM = @NM@ ++NMEDIT = @NMEDIT@ ++OBJDUMP = @OBJDUMP@ ++OBJEXT = @OBJEXT@ ++OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ ++OPT_LDFLAGS = @OPT_LDFLAGS@ ++OS_INC_SRCDIR = @OS_INC_SRCDIR@ ++OTOOL = @OTOOL@ ++OTOOL64 = @OTOOL64@ ++PACKAGE = @PACKAGE@ ++PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ ++PACKAGE_NAME = @PACKAGE_NAME@ ++PACKAGE_STRING = @PACKAGE_STRING@ ++PACKAGE_TARNAME = @PACKAGE_TARNAME@ ++PACKAGE_URL = @PACKAGE_URL@ ++PACKAGE_VERSION = @PACKAGE_VERSION@ ++PATH_SEPARATOR = @PATH_SEPARATOR@ ++PDFLATEX = @PDFLATEX@ ++RANLIB = @RANLIB@ ++SECTION_FLAGS = @SECTION_FLAGS@ ++SECTION_LDFLAGS = @SECTION_LDFLAGS@ ++SED = @SED@ ++SET_MAKE = @SET_MAKE@ ++SHELL = @SHELL@ ++STRIP = @STRIP@ ++SYMVER_FILE = @SYMVER_FILE@ ++TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ++USE_NLS = @USE_NLS@ ++VERSION = @VERSION@ ++VTV_CXXFLAGS = @VTV_CXXFLAGS@ ++VTV_CXXLINKFLAGS = @VTV_CXXLINKFLAGS@ ++VTV_PCH_CXXFLAGS = @VTV_PCH_CXXFLAGS@ ++WARN_FLAGS = @WARN_FLAGS@ ++WERROR = @WERROR@ ++XMLLINT = @XMLLINT@ ++XSLTPROC = @XSLTPROC@ ++XSL_STYLE_DIR = @XSL_STYLE_DIR@ ++abs_builddir = @abs_builddir@ ++abs_srcdir = @abs_srcdir@ ++abs_top_builddir = @abs_top_builddir@ ++abs_top_srcdir = @abs_top_srcdir@ ++ac_ct_CC = @ac_ct_CC@ ++ac_ct_CXX = @ac_ct_CXX@ ++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ ++am__leading_dot = @am__leading_dot@ ++am__tar = @am__tar@ ++am__untar = @am__untar@ ++baseline_dir = @baseline_dir@ ++baseline_subdir_switch = @baseline_subdir_switch@ ++bindir = @bindir@ ++build = @build@ ++build_alias = @build_alias@ ++build_cpu = @build_cpu@ ++build_os = @build_os@ ++build_vendor = @build_vendor@ ++builddir = @builddir@ ++check_msgfmt = @check_msgfmt@ ++datadir = @datadir@ ++datarootdir = @datarootdir@ ++docdir = @docdir@ ++dvidir = @dvidir@ ++enable_shared = @enable_shared@ ++enable_static = @enable_static@ ++exec_prefix = @exec_prefix@ ++get_gcc_base_ver = @get_gcc_base_ver@ ++glibcxx_MOFILES = @glibcxx_MOFILES@ ++glibcxx_PCHFLAGS = @glibcxx_PCHFLAGS@ ++glibcxx_POFILES = @glibcxx_POFILES@ ++glibcxx_builddir = @glibcxx_builddir@ ++glibcxx_compiler_pic_flag = @glibcxx_compiler_pic_flag@ ++glibcxx_compiler_shared_flag = @glibcxx_compiler_shared_flag@ ++glibcxx_cxx98_abi = @glibcxx_cxx98_abi@ ++glibcxx_localedir = @glibcxx_localedir@ ++glibcxx_lt_pic_flag = @glibcxx_lt_pic_flag@ ++glibcxx_prefixdir = @glibcxx_prefixdir@ ++glibcxx_srcdir = @glibcxx_srcdir@ ++glibcxx_toolexecdir = @glibcxx_toolexecdir@ ++glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@ ++gxx_include_dir = @gxx_include_dir@ ++host = @host@ ++host_alias = @host_alias@ ++host_cpu = @host_cpu@ ++host_os = @host_os@ ++host_vendor = @host_vendor@ ++htmldir = @htmldir@ ++includedir = @includedir@ ++infodir = @infodir@ ++install_sh = @install_sh@ ++libdir = @libdir@ ++libexecdir = @libexecdir@ ++libtool_VERSION = @libtool_VERSION@ ++localedir = @localedir@ ++localstatedir = @localstatedir@ ++lt_host_flags = @lt_host_flags@ ++mandir = @mandir@ ++mkdir_p = @mkdir_p@ ++multi_basedir = @multi_basedir@ ++oldincludedir = @oldincludedir@ ++pdfdir = @pdfdir@ ++port_specific_symbol_files = @port_specific_symbol_files@ ++prefix = @prefix@ ++program_transform_name = @program_transform_name@ ++psdir = @psdir@ ++python_mod_dir = @python_mod_dir@ ++sbindir = @sbindir@ ++sharedstatedir = @sharedstatedir@ ++srcdir = @srcdir@ ++sysconfdir = @sysconfdir@ ++target = @target@ ++target_alias = @target_alias@ ++target_cpu = @target_cpu@ ++target_os = @target_os@ ++target_vendor = @target_vendor@ ++thread_header = @thread_header@ ++top_build_prefix = @top_build_prefix@ ++top_builddir = @top_builddir@ ++top_srcdir = @top_srcdir@ ++toplevel_builddir = @toplevel_builddir@ ++toplevel_srcdir = @toplevel_srcdir@ ++ ++# May be used by various substitution variables. ++gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) ++MAINT_CHARSET = latin1 ++mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs ++PWD_COMMAND = $${PWDCMD-pwd} ++STAMP = echo timestamp > ++toolexecdir = $(glibcxx_toolexecdir) ++toolexeclibdir = $(glibcxx_toolexeclibdir) ++@ENABLE_WERROR_FALSE@WERROR_FLAG = ++@ENABLE_WERROR_TRUE@WERROR_FLAG = $(WERROR) ++@ENABLE_EXTERN_TEMPLATE_FALSE@XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_TRUE@XTEMPLATE_FLAGS = -fno-implicit-templates ++ ++# These bits are all figured out from configure. Look in acinclude.m4 ++# or configure.ac to see how they are set. See GLIBCXX_EXPORT_FLAGS. ++CONFIG_CXXFLAGS = \ ++ $(SECTION_FLAGS) $(HWCAP_CFLAGS) -frandom-seed=$@ ++ ++WARN_CXXFLAGS = \ ++ $(WARN_FLAGS) $(WERROR_FLAG) -fdiagnostics-show-location=once ++ ++ ++# -I/-D flags to pass when compiling. ++AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) ++ ++# Convenience library for C++11 runtime. ++noinst_LTLIBRARIES = libnonshared11convenience44.la \ ++ libnonshared11convenience48.la ++ ++headers = ++sources = \ ++ bad_array_length.cc \ ++ bad_array_new.cc \ ++ codecvt.cc \ ++ condition_variable.cc \ ++ cow-shim_facets.cc \ ++ cow-stdexcept.cc \ ++ ctype.cc \ ++ cxx11-hash_tr1.cc \ ++ cxx11-ios_failure.cc \ ++ cxx11-shim_facets.cc \ ++ cxx11-stdexcept.cc \ ++ del_ops.cc \ ++ del_opvs.cc \ ++ new_opa.cc \ ++ new_opant.cc \ ++ new_opva.cc \ ++ new_opvant.cc \ ++ del_opa.cc \ ++ del_opant.cc \ ++ del_opsa.cc \ ++ del_opva.cc \ ++ del_opvant.cc \ ++ del_opvsa.cc \ ++ eh_aux_runtime.cc \ ++ eh_terminate.cc \ ++ eh_ptr.cc \ ++ eh_throw.cc \ ++ futex.cc \ ++ ios.cc \ ++ new_handler.cc \ ++ snprintf_lite.cc \ ++ $(inst_sources) ++ ++sources44 = \ ++ limits.cc \ ++ future.cc \ ++ functexcept.cc \ ++ placeholders.cc \ ++ regex.cc \ ++ functional.cc \ ++ shared_ptr44.cc \ ++ nested_exception.cc \ ++ debug.cc \ ++ compatibility-thread-c++0x.cc \ ++ atexit_thread.cc \ ++ random.cc \ ++ chrono.cc \ ++ compatibility-atomic-c++0x.cc \ ++ compatibility-c++0x.cc \ ++ hashtable_c++0x.cc \ ++ system_error44.cc \ ++ thread44.cc \ ++ $(inst_sources44) ++ ++sources48 = \ ++ functexcept48.cc \ ++ future48.cc \ ++ random48.cc \ ++ regex48.cc \ ++ shared_ptr48.cc \ ++ system_error48.cc \ ++ thread48.cc \ ++ $(inst_sources48) ++ ++# XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources = ++ ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-locale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ext11-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ fstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ios-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ iostream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ istream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst-asm.S \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ostream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ sstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ string-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ string-io-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-io-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ sso_string.cc ++ ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources44 = ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources44 = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-sstream-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-fstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst44.cc ++ ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources48 = ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources48 = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-sstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst48.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst48.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst.cc ++ ++libnonshared11convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared11convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# 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 ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++11 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++all: all-am ++ ++.SUFFIXES: ++.SUFFIXES: .S .cc .lo .o .obj ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/fragment.am $(am__configure_deps) ++ @for dep in $?; do \ ++ case '$(am__configure_deps)' in \ ++ *$$dep*) \ ++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ ++ && { if test -f $@; then exit 0; else break; fi; }; \ ++ exit 1;; \ ++ esac; \ ++ done; \ ++ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign --ignore-deps src/nonshared11/Makefile'; \ ++ $(am__cd) $(top_srcdir) && \ ++ $(AUTOMAKE) --foreign --ignore-deps src/nonshared11/Makefile ++.PRECIOUS: Makefile ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ @case '$?' in \ ++ *config.status*) \ ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ ++ *) \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ ++ esac; ++$(top_srcdir)/fragment.am: ++ ++$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++ ++$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(am__aclocal_m4_deps): ++ ++clean-noinstLTLIBRARIES: ++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) ++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ ++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ ++ test "$$dir" != "$$p" || dir=.; \ ++ echo "rm -f \"$${dir}/so_locations\""; \ ++ rm -f "$${dir}/so_locations"; \ ++ done ++libnonshared11convenience44.la: $(libnonshared11convenience44_la_OBJECTS) $(libnonshared11convenience44_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience44_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared11convenience44_la_OBJECTS) $(libnonshared11convenience44_la_LIBADD) $(LIBS) ++libnonshared11convenience48.la: $(libnonshared11convenience48_la_OBJECTS) $(libnonshared11convenience48_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience48_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared11convenience48_la_OBJECTS) $(libnonshared11convenience48_la_LIBADD) $(LIBS) ++ ++mostlyclean-compile: ++ -rm -f *.$(OBJEXT) ++ ++distclean-compile: ++ -rm -f *.tab.c ++ ++.S.o: ++ $(CPPASCOMPILE) -c -o $@ $< ++ ++.S.obj: ++ $(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.S.lo: ++ $(LTCPPASCOMPILE) -c -o $@ $< ++ ++.cc.o: ++ $(CXXCOMPILE) -c -o $@ $< ++ ++.cc.obj: ++ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.cc.lo: ++ $(LTCXXCOMPILE) -c -o $@ $< ++ ++mostlyclean-libtool: ++ -rm -f *.lo ++ ++clean-libtool: ++ -rm -rf .libs _libs ++ ++ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ mkid -fID $$unique ++tags: TAGS ++ ++TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ set x; \ ++ here=`pwd`; \ ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ shift; \ ++ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ ++ test -n "$$unique" || unique=$$empty_fix; \ ++ if test $$# -gt 0; then \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ "$$@" $$unique; \ ++ else \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ $$unique; \ ++ fi; \ ++ fi ++ctags: CTAGS ++CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ test -z "$(CTAGS_ARGS)$$unique" \ ++ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ ++ $$unique ++ ++GTAGS: ++ here=`$(am__cd) $(top_builddir) && pwd` \ ++ && $(am__cd) $(top_srcdir) \ ++ && gtags -i $(GTAGS_ARGS) "$$here" ++ ++distclean-tags: ++ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags ++check-am: all-am ++check: check-am ++all-am: Makefile $(LTLIBRARIES) ++installdirs: ++install: install-am ++install-exec: install-exec-am ++install-data: install-data-am ++uninstall: uninstall-am ++ ++install-am: all-am ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am ++ ++installcheck: installcheck-am ++install-strip: ++ if test -z '$(STRIP)'; then \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ install; \ ++ else \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ ++ fi ++mostlyclean-generic: ++ ++clean-generic: ++ ++distclean-generic: ++ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) ++ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) ++ ++maintainer-clean-generic: ++ @echo "This command is intended for maintainers to use" ++ @echo "it deletes files that may require special tools to rebuild." ++clean: clean-am ++ ++clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ ++ mostlyclean-am ++ ++distclean: distclean-am ++ -rm -f Makefile ++distclean-am: clean-am distclean-compile distclean-generic \ ++ distclean-tags ++ ++dvi: dvi-am ++ ++dvi-am: ++ ++html: html-am ++ ++html-am: ++ ++info: info-am ++ ++info-am: ++ ++install-data-am: ++ ++install-dvi: install-dvi-am ++ ++install-dvi-am: ++ ++install-exec-am: ++ ++install-html: install-html-am ++ ++install-html-am: ++ ++install-info: install-info-am ++ ++install-info-am: ++ ++install-man: ++ ++install-pdf: install-pdf-am ++ ++install-pdf-am: ++ ++install-ps: install-ps-am ++ ++install-ps-am: ++ ++installcheck-am: ++ ++maintainer-clean: maintainer-clean-am ++ -rm -f Makefile ++maintainer-clean-am: distclean-am maintainer-clean-generic ++ ++mostlyclean: mostlyclean-am ++ ++mostlyclean-am: mostlyclean-compile mostlyclean-generic \ ++ mostlyclean-libtool ++ ++pdf: pdf-am ++ ++pdf-am: ++ ++ps: ps-am ++ ++ps-am: ++ ++uninstall-am: ++ ++.MAKE: install-am install-strip ++ ++.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ ++ clean-libtool clean-noinstLTLIBRARIES ctags distclean \ ++ distclean-compile distclean-generic distclean-libtool \ ++ distclean-tags dvi dvi-am html html-am info info-am install \ ++ install-am install-data install-data-am install-dvi \ ++ install-dvi-am install-exec install-exec-am install-html \ ++ install-html-am install-info install-info-am install-man \ ++ install-pdf install-pdf-am install-ps install-ps-am \ ++ install-strip installcheck installcheck-am installdirs \ ++ maintainer-clean maintainer-clean-generic mostlyclean \ ++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ ++ pdf pdf-am ps ps-am tags uninstall uninstall-am ++ ++ ++vpath % $(top_srcdir)/src/nonshared11 ++vpath % $(top_srcdir) ++ ++# Use special rules for the C++14 sources so that the proper flags are passed. ++del_ops.lo: del_ops.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++del_opvs.lo: del_opvs.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++ ++# Use special rules for the C++17 sources so that the proper flags are passed. ++new_opa.lo: new_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opant.lo: new_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opva.lo: new_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opvant.lo: new_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opa.lo: del_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opant.lo: del_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opsa.lo: del_opsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opva.lo: del_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvant.lo: del_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvsa.lo: del_opvsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -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/nonshared11/snprintf_lite.cc.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/snprintf_lite.cc 2017-05-31 15:25:50.426872487 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2014-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/snprintf_lite.cc" ++#ifdef __powerpc64__ ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcmm"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcmPKcS0_"); ++#elif defined(__i386__) ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcjj"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcjPKcS0_"); ++#elif defined(__powerpc__) ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcjj"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcjPKcP13__va_list_tag"); ++#elif defined(__aarch64__) ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcmm"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcmPKcSt9__va_list"); ++#else ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcmm"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcmPKcP13__va_list_tag"); ++#endif ++asm (".hidden _ZN9__gnu_cxx26__throw_insufficient_spaceEPKcS1_"); +--- libstdc++-v3/src/nonshared11/new_handler.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/new_handler.cc 2017-05-31 15:25:50.423872523 +0200 +@@ -0,0 +1,72 @@ ++// Implementation file for the -*- C++ -*- dynamic memory management header. ++ ++// Copyright (C) 1996-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <new> ++#include <ext/concurrence.h> ++ ++// This is inherently thread-unsafe, but so is libstdc++ < 4.9 ++// std::set_new_handler and this hopefully doesn't make things much worse ++// than that. ++namespace ++{ ++ __gnu_cxx::__mutex mx; ++ std::new_handler handler; ++ ++ void new_handler_wrapper () ++ { ++ std::new_handler h; ++ { ++ __gnu_cxx::__scoped_lock l(mx); ++ h = handler; ++ } ++ h (); ++ } ++} ++ ++std::new_handler ++std::get_new_handler () noexcept ++{ ++ __gnu_cxx::__scoped_lock l(mx); ++ handler = std::set_new_handler (new_handler_wrapper); ++ std::set_new_handler (handler); ++ return handler; ++} ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/cxx11-hash_tr1.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-hash_tr1.cc 2017-05-31 15:25:50.412872655 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cxx11-hash_tr1.cc" ++asm (".hidden _ZNKSt3tr14hashIRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEclES8_"); ++asm (".hidden _ZNKSt3tr14hashIRKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEEclES8_"); +--- libstdc++-v3/src/nonshared11/debug.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/debug.cc 2017-05-31 15:25:50.415872619 +0200 +@@ -0,0 +1,234 @@ ++// Copyright (C) 2003-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <debug/debug.h> ++#include <debug/safe_sequence.h> ++#include <debug/safe_unordered_container.h> ++#include <debug/safe_iterator.h> ++#include <debug/safe_local_iterator.h> ++#include <algorithm> ++#include <cassert> ++#include <cstring> ++#include <cctype> ++#include <cstdio> ++#include <cstdlib> ++ ++using namespace std; ++ ++namespace ++{ ++ void ++ swap_its(__gnu_debug::_Safe_sequence_base& __lhs, ++ __gnu_debug::_Safe_iterator_base*& __lhs_its, ++ __gnu_debug::_Safe_sequence_base& __rhs, ++ __gnu_debug::_Safe_iterator_base*& __rhs_its) ++ { ++ swap(__lhs_its, __rhs_its); ++ __gnu_debug::_Safe_iterator_base* __iter; ++ for (__iter = __rhs_its; __iter; __iter = __iter->_M_next) ++ __iter->_M_sequence = &__rhs; ++ for (__iter = __lhs_its; __iter; __iter = __iter->_M_next) ++ __iter->_M_sequence = &__lhs; ++ } ++ ++ void ++ swap_seq(__gnu_debug::_Safe_sequence_base& __lhs, ++ __gnu_debug::_Safe_sequence_base& __rhs) ++ { ++ swap(__lhs._M_version, __rhs._M_version); ++ swap_its(__lhs, __lhs._M_iterators, ++ __rhs, __rhs._M_iterators); ++ swap_its(__lhs, __lhs._M_const_iterators, ++ __rhs, __rhs._M_const_iterators); ++ } ++ ++ void ++ swap_ucont(__gnu_debug::_Safe_unordered_container_base& __lhs, ++ __gnu_debug::_Safe_unordered_container_base& __rhs) ++ { ++ swap_seq(__lhs, __rhs); ++ swap_its(__lhs, __lhs._M_local_iterators, ++ __rhs, __rhs._M_local_iterators); ++ swap_its(__lhs, __lhs._M_const_local_iterators, ++ __rhs, __rhs._M_const_local_iterators); ++ } ++ ++ void ++ detach_all(__gnu_debug::_Safe_iterator_base* __iter) ++ { ++ for (; __iter;) ++ { ++ __gnu_debug::_Safe_iterator_base* __old = __iter; ++ __iter = __iter->_M_next; ++ __old->_M_reset(); ++ } ++ } ++} // anonymous namespace ++ ++namespace __gnu_debug ++{ ++ void ++ _Safe_iterator_base:: ++ _M_reset() throw () ++ { ++ _M_sequence = 0; ++ _M_version = 0; ++ _M_prior = 0; ++ _M_next = 0; ++ } ++ ++ _Safe_unordered_container_base* ++ _Safe_local_iterator_base:: ++ _M_get_container() const _GLIBCXX_NOEXCEPT ++ { return static_cast<_Safe_unordered_container_base*>(_M_sequence); } ++ ++ void ++ _Safe_local_iterator_base:: ++ _M_attach(_Safe_sequence_base* __cont, bool __constant) ++ { ++ _M_detach(); ++ ++ // Attach to the new container (if there is one) ++ if (__cont) ++ { ++ _M_sequence = __cont; ++ _M_version = _M_sequence->_M_version; ++ _M_get_container()->_M_attach_local(this, __constant); ++ } ++ } ++ ++ void ++ _Safe_local_iterator_base:: ++ _M_detach() ++ { ++ if (_M_sequence) ++ _M_get_container()->_M_detach_local(this); ++ ++ _M_reset(); ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_detach_all() ++ { ++ __gnu_cxx::__scoped_lock sentry(_M_get_mutex()); ++ detach_all(_M_iterators); ++ _M_iterators = 0; ++ ++ detach_all(_M_const_iterators); ++ _M_const_iterators = 0; ++ ++ detach_all(_M_local_iterators); ++ _M_local_iterators = 0; ++ ++ detach_all(_M_const_local_iterators); ++ _M_const_local_iterators = 0; ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_swap(_Safe_unordered_container_base& __x) noexcept ++ { ++ // We need to lock both containers to swap ++ using namespace __gnu_cxx; ++ __mutex *__this_mutex = &_M_get_mutex(); ++ __mutex *__x_mutex = &__x._M_get_mutex(); ++ if (__this_mutex == __x_mutex) ++ { ++ __scoped_lock __lock(*__this_mutex); ++ swap_ucont(*this, __x); ++ } ++ else ++ { ++ __scoped_lock __l1(__this_mutex < __x_mutex ++ ? *__this_mutex : *__x_mutex); ++ __scoped_lock __l2(__this_mutex < __x_mutex ++ ? *__x_mutex : *__this_mutex); ++ swap_ucont(*this, __x); ++ } ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_attach_local(_Safe_iterator_base* __it, bool __constant) ++ { ++ __gnu_cxx::__scoped_lock sentry(_M_get_mutex()); ++ _M_attach_local_single(__it, __constant); ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_attach_local_single(_Safe_iterator_base* __it, bool __constant) throw () ++ { ++ _Safe_iterator_base*& __its = ++ __constant ? _M_const_local_iterators : _M_local_iterators; ++ __it->_M_next = __its; ++ if (__it->_M_next) ++ __it->_M_next->_M_prior = __it; ++ __its = __it; ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_detach_local(_Safe_iterator_base* __it) ++ { ++ // Remove __it from this container's list ++ __gnu_cxx::__scoped_lock sentry(_M_get_mutex()); ++ _M_detach_local_single(__it); ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_detach_local_single(_Safe_iterator_base* __it) throw () ++ { ++ // Remove __it from this container's list ++ __it->_M_unlink(); ++ if (_M_const_local_iterators == __it) ++ _M_const_local_iterators = __it->_M_next; ++ if (_M_local_iterators == __it) ++ _M_local_iterators = __it->_M_next; ++ } ++ ++} // namespace __gnu_debug ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZN11__gnu_debug19_Safe_iterator_base8_M_resetEv"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base15_M_attach_localEPNS_19_Safe_iterator_baseEb"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base15_M_detach_localEPNS_19_Safe_iterator_baseE"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base22_M_attach_local_singleEPNS_19_Safe_iterator_baseEb"); ++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"); +--- libstdc++-v3/src/nonshared11/del_opsa.cc.jj 2017-05-31 19:11:38.671881970 +0200 ++++ libstdc++-v3/src/nonshared11/del_opsa.cc 2017-05-31 19:11:38.669881994 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opsa.cc" +--- libstdc++-v3/src/nonshared11/wlocale-inst44.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/wlocale-inst44.cc 2017-05-31 15:25:50.429872451 +0200 +@@ -0,0 +1,31 @@ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// Instantiate locales using COW std::wstring ABI ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <bits/c++config.h> ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "locale-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared11/cow-fstream-inst.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/cow-fstream-inst.cc 2017-05-31 15:25:50.408872703 +0200 +@@ -0,0 +1,48 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <fstream> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef basic_filebuf<char> FIC; ++ ++ template ++ int FIC::_M_get_ext_pos(__state_type &); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ typedef basic_filebuf<wchar_t> FIW; ++ ++ template ++ int FIW::_M_get_ext_pos(__state_type &); ++ ++#endif ++ ++} +--- libstdc++-v3/src/nonshared11/ostream-inst.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/ostream-inst.cc 2017-05-31 15:25:50.423872523 +0200 +@@ -0,0 +1,48 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#include <ostream> ++#include <iomanip> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_ostream<char>::basic_ostream(basic_ostream&&); ++ template basic_ostream<char>& basic_ostream<char>::operator=(basic_ostream&&); ++ template void basic_ostream<char>::swap(basic_ostream&); ++ template basic_ostream<char>::basic_ostream(basic_iostream<char>&); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_ostream<wchar_t>::basic_ostream(basic_ostream&&); ++ template basic_ostream<wchar_t>& basic_ostream<wchar_t>::operator=(basic_ostream&&); ++ template void basic_ostream<wchar_t>::swap(basic_ostream&); ++ template basic_ostream<wchar_t>::basic_ostream(basic_iostream<wchar_t>&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/regex.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/regex.cc 2017-05-31 15:25:50.425872499 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/regex.cc" ++ ++asm (".hidden _ZTSSt11regex_error"); +--- libstdc++-v3/src/nonshared11/del_opvant.cc.jj 2017-05-31 19:11:38.678881886 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvant.cc 2017-05-31 19:11:38.676881910 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opvant.cc" +--- libstdc++-v3/src/nonshared11/del_opant.cc.jj 2017-05-31 19:11:38.667882018 +0200 ++++ libstdc++-v3/src/nonshared11/del_opant.cc 2017-05-31 19:11:38.666882029 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opant.cc" +--- libstdc++-v3/src/nonshared11/string-inst.cc.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/string-inst.cc 2017-05-31 15:25:50.427872475 +0200 +@@ -0,0 +1,34 @@ ++// Components for manipulating sequences of characters -*- C++ -*- ++ ++// Copyright (C) 1997-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++// Written by Jason Merrill based upon the specification by Takanori Adachi ++// in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers. ++ ++#include "../c++11/string-inst.cc" ++asm (".hidden _ZN9__gnu_cxxeqIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbRKNS_17__normal_iteratorIT_T0_EESE_"); ++asm (".hidden _ZN9__gnu_cxxeqIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbRKNS_17__normal_iteratorIT_T0_EESD_"); +--- libstdc++-v3/src/nonshared11/eh_terminate.cc.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/eh_terminate.cc 2017-05-31 15:25:50.417872595 +0200 +@@ -0,0 +1,92 @@ ++// Implementation file for the -*- C++ -*- dynamic memory management header. ++ ++// Copyright (C) 1994-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC 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. ++// ++// GCC 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <exception> ++#include <ext/concurrence.h> ++ ++// This is inherently thread-unsafe, but so is libstdc++ < 4.9 ++// std::set_terminate and std::set_unexpected and this hopefully ++// doesn't make things much worse than that. ++namespace ++{ ++ __gnu_cxx::__mutex mx; ++ std::terminate_handler thandler; ++ std::unexpected_handler uhandler; ++ ++ void terminate_handler_wrapper () ++ { ++ std::terminate_handler h; ++ { ++ __gnu_cxx::__scoped_lock l(mx); ++ h = thandler; ++ } ++ h (); ++ } ++ ++ void unexpected_handler_wrapper () ++ { ++ std::terminate_handler h; ++ { ++ __gnu_cxx::__scoped_lock l(mx); ++ h = uhandler; ++ } ++ h (); ++ } ++} ++ ++std::terminate_handler ++std::get_terminate () noexcept ++{ ++ __gnu_cxx::__scoped_lock l(mx); ++ thandler = std::set_terminate (terminate_handler_wrapper); ++ std::set_terminate (thandler); ++ return thandler; ++} ++ ++std::unexpected_handler ++std::get_unexpected () noexcept ++{ ++ __gnu_cxx::__scoped_lock l(mx); ++ uhandler = std::set_unexpected (unexpected_handler_wrapper); ++ std::set_unexpected (uhandler); ++ return uhandler; ++} ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/wstring-io-inst.cc.jj 2017-06-01 10:44:48.847697777 +0200 ++++ libstdc++-v3/src/nonshared11/wstring-io-inst.cc 2017-06-01 11:07:29.389913760 +0200 +@@ -0,0 +1,35 @@ ++// SSO string instantiations for I/O -*- C++ -*- ++ ++// Copyright (C) 2014-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include <bits/c++config.h> ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "string-io-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared11/del_opva.cc.jj 2017-05-31 19:11:38.674881934 +0200 ++++ libstdc++-v3/src/nonshared11/del_opva.cc 2017-05-31 19:11:38.673881946 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opva.cc" +--- libstdc++-v3/src/nonshared11/functexcept.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/functexcept.cc 2017-05-31 15:25:50.418872583 +0200 +@@ -0,0 +1,72 @@ ++// Copyright (C) 2001-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include <bits/functexcept.h> ++#include <cstdlib> ++#include <exception> ++#include <stdexcept> ++#include <new> ++#include <typeinfo> ++#include <ios> ++#include <system_error> ++#include <future> ++#include <functional> ++#include <bits/regex_error.h> ++#include <stdarg.h> ++ ++#ifdef _GLIBCXX_USE_NLS ++# include <libintl.h> ++# define _(msgid) gettext (msgid) ++#else ++# define _(msgid) (msgid) ++#endif ++ ++namespace __gnu_cxx ++{ ++ int __snprintf_lite(char *__buf, size_t __bufsize, const char *__fmt, ++ va_list __ap); ++} ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ void ++ __throw_out_of_range_fmt(const char* __fmt, ...) ++ { ++ const size_t __len = __builtin_strlen(__fmt); ++ // We expect at most 2 numbers, and 1 short string. The additional ++ // 512 bytes should provide more than enough space for expansion. ++ const size_t __alloca_size = __len + 512; ++ char *const __s = static_cast<char*>(__builtin_alloca(__alloca_size)); ++ va_list __ap; ++ ++ va_start(__ap, __fmt); ++ __gnu_cxx::__snprintf_lite(__s, __alloca_size, __fmt, __ap); ++ _GLIBCXX_THROW_OR_ABORT(out_of_range(_(__s))); ++ va_end(__ap); // Not reached. ++ } ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++asm (".hidden _ZNSt12future_errorC1ESt10error_code"); ++asm (".hidden _ZNSt12future_errorC2ESt10error_code"); +--- libstdc++-v3/src/nonshared11/del_opvs.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvs.cc 2017-05-31 15:25:50.416872607 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../libsupc++/del_opvs.cc" +--- libstdc++-v3/src/nonshared11/cow-sstream-inst.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/cow-sstream-inst.cc 2017-05-31 15:25:50.410872679 +0200 +@@ -0,0 +1,78 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 2014-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++// ++// ISO C++ 14882: ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include <sstream> ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_stringbuf<char>::basic_stringbuf(basic_stringbuf&&); ++ template basic_stringbuf<char>& basic_stringbuf<char>::operator=(basic_stringbuf&&); ++ template void basic_stringbuf<char>::swap(basic_stringbuf&); ++ template basic_istringstream<char>::basic_istringstream(basic_istringstream&&); ++ template basic_istringstream<char>& basic_istringstream<char>::operator=(basic_istringstream&&); ++ template void basic_istringstream<char>::swap(basic_istringstream&); ++ template basic_ostringstream<char>::basic_ostringstream(basic_ostringstream&&); ++ template basic_ostringstream<char>& basic_ostringstream<char>::operator=(basic_ostringstream&&); ++ template void basic_ostringstream<char>::swap(basic_ostringstream&); ++ template basic_stringstream<char>::basic_stringstream(basic_stringstream&&); ++ template basic_stringstream<char>& basic_stringstream<char>::operator=(basic_stringstream&&); ++ template void basic_stringstream<char>::swap(basic_stringstream&); ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ template void basic_stringbuf<char>::_M_pbump(char_type*, char_type*, off_type); ++#endif ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_stringbuf<wchar_t>::basic_stringbuf(basic_stringbuf&&); ++ template basic_stringbuf<wchar_t>& basic_stringbuf<wchar_t>::operator=(basic_stringbuf&&); ++ template void basic_stringbuf<wchar_t>::swap(basic_stringbuf&); ++ template basic_istringstream<wchar_t>::basic_istringstream(basic_istringstream&&); ++ template basic_istringstream<wchar_t>& basic_istringstream<wchar_t>::operator=(basic_istringstream&&); ++ template void basic_istringstream<wchar_t>::swap(basic_istringstream&); ++ template basic_ostringstream<wchar_t>::basic_ostringstream(basic_ostringstream&&); ++ template basic_ostringstream<wchar_t>& basic_ostringstream<wchar_t>::operator=(basic_ostringstream&&); ++ template void basic_ostringstream<wchar_t>::swap(basic_ostringstream&); ++ template basic_stringstream<wchar_t>::basic_stringstream(basic_stringstream&&); ++ template basic_stringstream<wchar_t>& basic_stringstream<wchar_t>::operator=(basic_stringstream&&); ++ template void basic_stringstream<wchar_t>::swap(basic_stringstream&); ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ template void basic_stringbuf<wchar_t>::_M_pbump(char_type*, char_type*, off_type); ++#endif ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++asm (".hidden _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED0Ev"); ++asm (".hidden _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev"); ++asm (".hidden _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED2Ev"); ++asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED0Ev"); ++asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED1Ev"); ++asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED2Ev"); +--- libstdc++-v3/src/nonshared11/cxx11-locale-inst.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-locale-inst.cc 2017-05-31 16:18:13.330258216 +0200 +@@ -0,0 +1,54 @@ ++// Copyright (C) 2012-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/cxx11-locale-inst.cc" ++asm (".hidden _ZNKSt19istreambuf_iteratorIcSt11char_traitsIcEE6_M_getEv"); ++asm (".hidden _ZNKSt5ctypeIcE5widenEPKcS2_Pc"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#else ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#endif ++asm (".hidden _ZNKSt19istreambuf_iteratorIcSt11char_traitsIcEE5equalERKS2_"); ++asm (".hidden _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc"); ++asm (".hidden _ZNKSt5ctypeIcE8do_widenEc"); ++asm (".hidden _ZNKSt5ctypeIcE9do_narrowEcc"); ++asm (".hidden _ZSt16__convert_from_vRKP15__locale_structPciPKcz"); ++asm (".hidden _ZTISt10money_base"); ++asm (".hidden _ZTISt13messages_base"); ++asm (".hidden _ZTISt9time_base"); ++asm (".hidden _ZTSSt10money_base"); ++asm (".hidden _ZTSSt13messages_base"); ++asm (".hidden _ZTSSt9time_base"); ++#ifdef C_is_char ++asm (".hidden _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv"); ++#endif +--- libstdc++-v3/src/nonshared11/random.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/random.cc 2017-05-31 15:25:50.425872499 +0200 +@@ -0,0 +1,94 @@ ++// Copyright (C) 2013-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#include "../c++11/random.cc" ++ ++#if __WORDSIZE == 64 ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE4seedEm"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC1Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC2Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEclEv"); ++#elif defined(__s390__) ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE4seedEj"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EEC1Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EEC2Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLm32ELm624ELm397ELm31ELj2567483615ELm11ELj4294967295ELm7ELj2636928640ELm15ELj4022730752ELm18ELj1812433253EEclEv"); ++#else ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE4seedEj"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC1Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC2Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEclEv"); ++#endif +--- libstdc++-v3/src/nonshared11/locale-inst44.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/locale-inst44.cc 2017-05-31 15:25:50.422872535 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 1999-2017 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 ++// <http://www.gnu.org/licenses/>. ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "locale-inst.cc" +--- libstdc++-v3/src/shared/hashtable-aux.cc.jj 2017-04-20 12:16:55.446859058 +0200 ++++ libstdc++-v3/src/shared/hashtable-aux.cc 2017-05-31 12:11:25.245560491 +0200 +@@ -22,6 +22,9 @@ + // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + // <http://www.gnu.org/licenses/>. + ++#ifndef HASHTABLE_AUX_CC ++#define HASHTABLE_AUX_CC 1 ++ + namespace __detail + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION +@@ -92,3 +95,5 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + }; + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace __detail ++ ++#endif +--- libstdc++-v3/src/c++98/locale_facets.cc.jj 2017-04-20 12:16:56.324847226 +0200 ++++ libstdc++-v3/src/c++98/locale_facets.cc 2017-05-31 12:11:25.246560479 +0200 +@@ -27,6 +27,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + // Definitions for static const data members of time_base. + template<> + const char* +@@ -97,6 +98,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + *__fptr++ = (__flags & ios_base::uppercase) ? '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 +127,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + return __test; + } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + bool + __verify_grouping(const char* __grouping, size_t __grouping_size, + const string& __grouping_tmp) throw() +@@ -133,6 +136,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __grouping_tmp.c_str(), + __grouping_tmp.size()); + } ++#endif + + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace +--- libstdc++-v3/src/Makefile.am.jj 2017-04-20 12:16:56.311847401 +0200 ++++ libstdc++-v3/src/Makefile.am 2017-05-31 12:11:25.260560311 +0200 +@@ -28,7 +28,7 @@ else + filesystem_dir = + endif + +-SUBDIRS = c++98 c++11 $(filesystem_dir) ++SUBDIRS = c++98 c++11 $(filesystem_dir) nonshared98 nonshared11 + + # Cross compiler support. + if VTV_CYGMIN +@@ -37,6 +37,8 @@ else + toolexeclib_LTLIBRARIES = libstdc++.la + endif + ++noinst_LTLIBRARIES = libstdc++_nonshared44.la libstdc++_nonshared48.la ++ + if VTV_CYGMIN + vtv_stubs.cc: + rm -f $@ +@@ -72,6 +74,25 @@ endif + parallel_compat_sources = \ + compatibility-parallel_list.cc compatibility-parallel_list-2.cc + ++libstdc___nonshared44_la_SOURCES = ++ ++libstdc___nonshared44_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared44_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared48_la_SOURCES = ++ ++libstdc___nonshared48_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la ++ ++libstdc___nonshared48_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la + + cxx98_sources = \ + compatibility.cc \ +--- libstdc++-v3/src/Makefile.in.jj 2017-04-20 12:16:55.441859125 +0200 ++++ libstdc++-v3/src/Makefile.in 2017-06-01 12:24:32.353496057 +0200 +@@ -111,7 +111,7 @@ am__uninstall_files_from_dir = { \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } + am__installdirs = "$(DESTDIR)$(toolexeclibdir)" +-LTLIBRARIES = $(toolexeclib_LTLIBRARIES) ++LTLIBRARIES = $(noinst_LTLIBRARIES) $(toolexeclib_LTLIBRARIES) + am__DEPENDENCIES_1 = + @GLIBCXX_LDBL_COMPAT_TRUE@am__objects_1 = compatibility-ldbl.lo + am__objects_2 = compatibility.lo compatibility-debug_list.lo \ +@@ -123,6 +123,12 @@ am_libstdc___la_OBJECTS = $(am__objects_ + 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) ++am_libstdc___nonshared44_la_OBJECTS = ++libstdc___nonshared44_la_OBJECTS = \ ++ $(am_libstdc___nonshared44_la_OBJECTS) ++am_libstdc___nonshared48_la_OBJECTS = ++libstdc___nonshared48_la_OBJECTS = \ ++ $(am_libstdc___nonshared48_la_OBJECTS) + libvtv_la_LIBADD = + @VTV_CYGMIN_TRUE@am_libvtv_la_OBJECTS = vtv_stubs.lo + libvtv_la_OBJECTS = $(am_libvtv_la_OBJECTS) +@@ -133,7 +139,17 @@ am__depfiles_maybe = + CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) + CXXLD = $(CXX) +-SOURCES = $(libstdc___la_SOURCES) $(libvtv_la_SOURCES) ++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ ++ $(LDFLAGS) -o $@ ++SOURCES = $(libstdc___la_SOURCES) $(libstdc___nonshared44_la_SOURCES) \ ++ $(libstdc___nonshared48_la_SOURCES) $(libvtv_la_SOURCES) + RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ +@@ -152,7 +168,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGE + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS + ETAGS = etags + CTAGS = ctags +-DIST_SUBDIRS = c++98 c++11 filesystem ++DIST_SUBDIRS = c++98 c++11 filesystem nonshared98 nonshared11 + ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@ + ACLOCAL = @ACLOCAL@ + ALLOCATOR_H = @ALLOCATOR_H@ +@@ -170,6 +186,8 @@ AWK = @AWK@ + BASIC_FILE_CC = @BASIC_FILE_CC@ + BASIC_FILE_H = @BASIC_FILE_H@ + CC = @CC@ ++CCAS = @CCAS@ ++CCASFLAGS = @CCASFLAGS@ + CCODECVT_CC = @CCODECVT_CC@ + CCOLLATE_CC = @CCOLLATE_CC@ + CCTYPE_CC = @CCTYPE_CC@ +@@ -379,11 +397,12 @@ WARN_CXXFLAGS = \ + AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) + @ENABLE_FILESYSTEM_TS_FALSE@filesystem_dir = + @ENABLE_FILESYSTEM_TS_TRUE@filesystem_dir = filesystem +-SUBDIRS = c++98 c++11 $(filesystem_dir) ++SUBDIRS = c++98 c++11 $(filesystem_dir) nonshared98 nonshared11 + @VTV_CYGMIN_FALSE@toolexeclib_LTLIBRARIES = libstdc++.la + + # Cross compiler support. + @VTV_CYGMIN_TRUE@toolexeclib_LTLIBRARIES = libvtv.la libstdc++.la ++noinst_LTLIBRARIES = libstdc++_nonshared44.la libstdc++_nonshared48.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 = \ +@@ -401,6 +420,24 @@ SUBDIRS = c++98 c++11 $(filesystem_dir) + parallel_compat_sources = \ + compatibility-parallel_list.cc compatibility-parallel_list-2.cc + ++libstdc___nonshared44_la_SOURCES = ++libstdc___nonshared44_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared44_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared48_la_SOURCES = ++libstdc___nonshared48_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la ++ ++libstdc___nonshared48_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la ++ + cxx98_sources = \ + compatibility.cc \ + compatibility-debug_list.cc \ +@@ -573,6 +610,15 @@ $(top_srcdir)/configure: @MAINTAINER_MOD + $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + $(am__aclocal_m4_deps): ++ ++clean-noinstLTLIBRARIES: ++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) ++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ ++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ ++ test "$$dir" != "$$p" || dir=.; \ ++ echo "rm -f \"$${dir}/so_locations\""; \ ++ rm -f "$${dir}/so_locations"; \ ++ done + install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \ +@@ -607,6 +653,10 @@ clean-toolexeclibLTLIBRARIES: + done + libstdc++.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) $(EXTRA_libstdc___la_DEPENDENCIES) + $(libstdc___la_LINK) $(am_libstdc___la_rpath) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS) ++libstdc++_nonshared44.la: $(libstdc___nonshared44_la_OBJECTS) $(libstdc___nonshared44_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared44_la_DEPENDENCIES) ++ $(LINK) $(libstdc___nonshared44_la_OBJECTS) $(libstdc___nonshared44_la_LIBADD) $(LIBS) ++libstdc++_nonshared48.la: $(libstdc___nonshared48_la_OBJECTS) $(libstdc___nonshared48_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared48_la_DEPENDENCIES) ++ $(LINK) $(libstdc___nonshared48_la_OBJECTS) $(libstdc___nonshared48_la_LIBADD) $(LIBS) + libvtv.la: $(libvtv_la_OBJECTS) $(libvtv_la_DEPENDENCIES) $(EXTRA_libvtv_la_DEPENDENCIES) + $(libvtv_la_LINK) $(am_libvtv_la_rpath) $(libvtv_la_OBJECTS) $(libvtv_la_LIBADD) $(LIBS) + +@@ -807,7 +857,8 @@ maintainer-clean-generic: + clean: clean-recursive + + clean-am: clean-generic clean-libtool clean-local \ +- clean-toolexeclibLTLIBRARIES mostlyclean-am ++ clean-noinstLTLIBRARIES clean-toolexeclibLTLIBRARIES \ ++ mostlyclean-am + + distclean: distclean-recursive + -rm -f Makefile +@@ -878,19 +929,19 @@ uninstall-am: uninstall-toolexeclibLTLIB + + .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am all-local check check-am clean clean-generic \ +- clean-libtool clean-local clean-toolexeclibLTLIBRARIES ctags \ +- ctags-recursive distclean distclean-compile distclean-generic \ +- distclean-libtool distclean-tags dvi dvi-am html html-am info \ +- info-am install install-am install-data install-data-am \ +- install-data-local install-dvi install-dvi-am install-exec \ +- install-exec-am install-html install-html-am install-info \ +- install-info-am install-man install-pdf install-pdf-am \ +- install-ps install-ps-am install-strip \ +- install-toolexeclibLTLIBRARIES installcheck installcheck-am \ +- installdirs installdirs-am maintainer-clean \ +- maintainer-clean-generic mostlyclean mostlyclean-compile \ +- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ +- tags tags-recursive uninstall uninstall-am \ ++ clean-libtool clean-local clean-noinstLTLIBRARIES \ ++ clean-toolexeclibLTLIBRARIES ctags ctags-recursive distclean \ ++ distclean-compile distclean-generic distclean-libtool \ ++ distclean-tags dvi dvi-am html html-am info info-am install \ ++ install-am install-data install-data-am install-data-local \ ++ install-dvi install-dvi-am install-exec install-exec-am \ ++ install-html install-html-am install-info install-info-am \ ++ install-man install-pdf install-pdf-am install-ps \ ++ install-ps-am install-strip install-toolexeclibLTLIBRARIES \ ++ installcheck installcheck-am installdirs installdirs-am \ ++ maintainer-clean maintainer-clean-generic mostlyclean \ ++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ ++ pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ + uninstall-toolexeclibLTLIBRARIES + + +--- libstdc++-v3/src/c++11/thread.cc.jj 2017-04-20 12:16:57.118836527 +0200 ++++ libstdc++-v3/src/c++11/thread.cc 2017-05-31 12:11:25.262560286 +0200 +@@ -127,6 +127,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + thread::_State::~_State() = default; + ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + void + thread::join() + { +@@ -154,6 +155,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + _M_id = id(); + } ++#endif + + void + thread::_M_start_thread(_State_ptr state, void (*)()) +@@ -167,6 +169,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + + #if _GLIBCXX_THREAD_ABI_COMPAT ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + void + thread::_M_start_thread(__shared_base_type __b) + { +@@ -180,6 +183,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + _M_start_thread(std::move(__b), nullptr); + } ++#endif + + void + thread::_M_start_thread(__shared_base_type __b, void (*)()) +@@ -197,6 +201,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + #endif + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + unsigned int + thread::hardware_concurrency() noexcept + { +@@ -205,6 +210,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __n = 0; + return __n; + } ++#endif + + _GLIBCXX_END_NAMESPACE_VERSION + +@@ -212,6 +218,7 @@ namespace this_thread + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + void + __sleep_for(chrono::seconds __s, chrono::nanoseconds __ns) + { +@@ -243,6 +250,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + ::Sleep(chrono::milliseconds(__s).count() + ms); + #endif + } ++#endif + + _GLIBCXX_END_NAMESPACE_VERSION + } +--- libstdc++-v3/src/c++11/condition_variable.cc.jj 2017-04-20 12:16:57.103836729 +0200 ++++ libstdc++-v3/src/c++11/condition_variable.cc 2017-05-31 12:11:25.260560311 +0200 +@@ -31,6 +31,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + #ifdef __GTHREAD_COND_INIT + condition_variable::condition_variable() noexcept = default; + #else +@@ -77,6 +78,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + if (__e) + __throw_system_error(__e); + } ++#endif + + extern void + __at_thread_exit(__at_thread_exit_elt*); +--- libstdc++-v3/src/c++11/system_error.cc.jj 2017-05-31 12:11:25.262560286 +0200 ++++ libstdc++-v3/src/c++11/system_error.cc 2017-05-31 12:54:20.128803019 +0200 +@@ -89,7 +89,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + const error_category& + _V2::generic_category() noexcept { return generic_category_instance; } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + system_error::~system_error() noexcept = default; ++#endif + + error_condition + error_category::default_error_condition(int __i) const noexcept +@@ -104,9 +106,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + error_category::equivalent(const error_code& __code, int __i) const noexcept + { return *this == __code.category() && __code.value() == __i; } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + error_condition + error_code::default_error_condition() const noexcept + { return category().default_error_condition(value()); } ++#endif + + #if _GLIBCXX_USE_CXX11_ABI + // Return error_category::message() as a COW string +--- libstdc++-v3/src/c++11/future.cc.jj 2017-04-20 12:16:57.108836661 +0200 ++++ libstdc++-v3/src/c++11/future.cc 2017-05-31 12:57:54.808282695 +0200 +@@ -25,6 +25,7 @@ + #include <future> + #include <bits/functexcept.h> + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + namespace + { + struct future_error_category : public std::error_category +@@ -66,6 +67,7 @@ namespace + return __fec; + } + } ++#endif + + namespace std _GLIBCXX_VISIBILITY(default) + { +@@ -75,6 +77,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __throw_future_error(int __i __attribute__((unused))) + { _GLIBCXX_THROW_OR_ABORT(future_error(make_error_code(future_errc(__i)))); } + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + const error_category& future_category() noexcept + { return __future_category_instance(); } + +@@ -82,11 +85,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + const char* + future_error::what() const noexcept { return logic_error::what(); } ++#endif + + #if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1) ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + __future_base::_Result_base::_Result_base() = default; + + __future_base::_Result_base::~_Result_base() = default; ++#endif + + void + __future_base::_State_baseV2::_Make_ready::_S_run(void* p) +--- libstdc++-v3/src/c++11/compatibility-c++0x.cc.jj 2017-04-20 12:16:57.121836486 +0200 ++++ libstdc++-v3/src/c++11/compatibility-c++0x.cc 2017-05-31 12:11:25.262560286 +0200 +@@ -44,6 +44,7 @@ + + namespace std _GLIBCXX_VISIBILITY(default) + { ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + // gcc-4.4.0 + // <mutex> exported std::lock_error + #if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1) +@@ -104,7 +105,6 @@ namespace std _GLIBCXX_VISIBILITY(defaul + hash<const wstring&>::operator()(const wstring& __s) const + { return _Hash_impl::hash(__s.data(), __s.length() * sizeof(wchar_t)); } + #endif +-#endif + + template<> + struct hash<error_code> +@@ -129,11 +129,19 @@ namespace std _GLIBCXX_VISIBILITY(defaul + }; + constexpr bool system_clock::is_monotonic; + } // namespace chrono ++#endif ++#endif + + _GLIBCXX_BEGIN_NAMESPACE_VERSION + // gcc-5 replaces this with _V2::error_category + class error_category + { ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ // Ugly hack. Ensure we don't emit the virtual table and ++ // use system libstdc++.so.6 one instead. ++ virtual void dummy(); ++#endif ++ + public: + error_category() noexcept; + +@@ -177,6 +185,7 @@ _GLIBCXX_END_NAMESPACE_VERSION + + error_category::~error_category() noexcept = default; + ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + namespace + { + using std::string; +@@ -253,6 +262,6 @@ _GLIBCXX_END_NAMESPACE_VERSION + return __code.value() == __i; + return false; + } +- ++#endif + } + #endif +--- libstdc++-v3/src/c++11/shared_ptr.cc.jj 2017-04-20 12:16:57.103836729 +0200 ++++ libstdc++-v3/src/c++11/shared_ptr.cc 2017-05-31 12:11:25.261560298 +0200 +@@ -43,11 +43,13 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + bad_weak_ptr::~bad_weak_ptr() noexcept = default; + + char const* + bad_weak_ptr::what() const noexcept + { return "bad_weak_ptr"; } ++#endif + + #ifdef __GTHREADS + namespace +--- libstdc++-v3/src/c++11/ios.cc.jj 2017-04-20 12:16:57.114836581 +0200 ++++ libstdc++-v3/src/c++11/ios.cc 2017-05-31 12:11:25.260560311 +0200 +@@ -49,6 +49,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __throw_ios_failure(const char* __s __attribute__((unused))) + { _GLIBCXX_THROW_OR_ABORT(ios_base::failure(_(__s))); } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + // Definitions for static const members of ios_base. + const ios_base::fmtflags ios_base::boolalpha; + const ios_base::fmtflags ios_base::dec; +@@ -207,6 +208,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + _M_callbacks = 0; + } ++#endif + + void + ios_base::_M_move(ios_base& __rhs) noexcept +--- libstdc++-v3/src/c++11/cow-string-inst.cc.jj 2017-04-20 12:16:57.107836675 +0200 ++++ libstdc++-v3/src/c++11/cow-string-inst.cc 2017-05-31 12:11:25.261560298 +0200 +@@ -27,7 +27,11 @@ + // + + #define _GLIBCXX_USE_CXX11_ABI 0 ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + #include "string-inst.cc" ++#else ++#include <string> ++#endif + + #if ! _GLIBCXX_USE_DUAL_ABI + # error This file should not be compiled for this configuration. +--- libstdc++-v3/src/c++11/random.cc.jj 2017-04-20 12:16:57.111836621 +0200 ++++ libstdc++-v3/src/c++11/random.cc 2017-05-31 12:11:25.262560286 +0200 +@@ -59,6 +59,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + } + + #if (defined __i386__ || defined __x86_64__) && defined _GLIBCXX_X86_RDRAND ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + unsigned int + __attribute__ ((target("rdrnd"))) + __x86_rdrand(void) +@@ -73,6 +74,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + return val; + } + #endif ++#endif + } + + void +@@ -115,6 +117,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + _M_mt.seed(_M_strtoul(token)); + } + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + void + random_device::_M_fini() + { +@@ -160,6 +163,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + return _M_mt(); + } ++#endif + + template class mersenne_twister_engine< + uint_fast32_t, +--- libstdc++-v3/configure.ac.jj 2017-04-20 12:17:29.115405348 +0200 ++++ libstdc++-v3/configure.ac 2017-05-31 12:11:25.270560190 +0200 +@@ -512,6 +512,11 @@ GLIBCXX_EXPORT_FLAGS + # Determine what GCC version number to use in filesystem paths. + GCC_BASE_VER + ++CCAS='$(CXX)' ++CCASFLAGS='$(CXXFLAGS)' ++AC_SUBST(CCAS) ++AC_SUBST(CCASFLAGS) ++ + 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 2017-04-20 12:16:54.957865647 +0200 ++++ libstdc++-v3/configure 2017-05-31 13:58:19.907825908 +0200 +@@ -602,6 +602,8 @@ ac_subst_vars='am__EXEEXT_FALSE + am__EXEEXT_TRUE + LTLIBOBJS + LIBOBJS ++CCASFLAGS ++CCAS + get_gcc_base_ver + WARN_FLAGS + OPTIMIZE_CXXFLAGS +@@ -4959,7 +4961,7 @@ $as_echo "$ac_cv_path_EGREP" >&6; } + # expandable list at autoconf time; the second provides an expandable list + # (i.e., shell variable) at configure time. + +- SUBDIRS='include libsupc++ src src/c++98 src/c++11 src/filesystem doc po testsuite python' ++ SUBDIRS='include libsupc++ src src/c++98 src/c++11 src/filesystem src/nonshared98 src/nonshared11 doc po testsuite python' + + # These need to be absolute paths, yet at the same time need to + # canonicalize only relative paths, because then amd will not unmount +@@ -11601,7 +11603,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11604 "configure" ++#line 11606 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -11707,7 +11709,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11710 "configure" ++#line 11712 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -15393,7 +15395,7 @@ $as_echo "$glibcxx_cv_atomic_long_long" + # Fake what AC_TRY_COMPILE does. + + cat > conftest.$ac_ext << EOF +-#line 15396 "configure" ++#line 15398 "configure" + int main() + { + typedef bool atomic_type; +@@ -15428,7 +15430,7 @@ $as_echo "$glibcxx_cv_atomic_bool" >&6; + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15431 "configure" ++#line 15433 "configure" + int main() + { + typedef short atomic_type; +@@ -15463,7 +15465,7 @@ $as_echo "$glibcxx_cv_atomic_short" >&6; + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15466 "configure" ++#line 15468 "configure" + int main() + { + // NB: _Atomic_word not necessarily int. +@@ -15499,7 +15501,7 @@ $as_echo "$glibcxx_cv_atomic_int" >&6; } + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15502 "configure" ++#line 15504 "configure" + int main() + { + typedef long long atomic_type; +@@ -15580,7 +15582,7 @@ $as_echo "$as_me: WARNING: Performance o + # unnecessary for this test. + + cat > conftest.$ac_ext << EOF +-#line 15583 "configure" ++#line 15585 "configure" + int main() + { + _Decimal32 d1; +@@ -15622,7 +15624,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + # unnecessary for this test. + + cat > conftest.$ac_ext << EOF +-#line 15625 "configure" ++#line 15627 "configure" + template<typename T1, typename T2> + struct same + { typedef T2 type; }; +@@ -15656,7 +15658,7 @@ $as_echo "$enable_int128" >&6; } + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15659 "configure" ++#line 15661 "configure" + template<typename T1, typename T2> + struct same + { typedef T2 type; }; +@@ -81665,6 +81667,11 @@ fi + + + ++CCAS='$(CXX)' ++CCASFLAGS='$(CXXFLAGS)' ++ ++ ++ + ac_config_files="$ac_config_files Makefile" + + ac_config_files="$ac_config_files scripts/testsuite_flags" +@@ -81682,7 +81689,7 @@ ac_config_files="$ac_config_files doc/xs + # append it here. Only modify Makefiles that have just been created. + # + # Also, get rid of this simulated-VPATH thing that automake does. +-ac_config_files="$ac_config_files include/Makefile libsupc++/Makefile src/Makefile src/c++98/Makefile src/c++11/Makefile src/filesystem/Makefile doc/Makefile po/Makefile testsuite/Makefile python/Makefile" ++ac_config_files="$ac_config_files include/Makefile libsupc++/Makefile src/Makefile src/c++98/Makefile src/c++11/Makefile src/filesystem/Makefile src/nonshared98/Makefile src/nonshared11/Makefile doc/Makefile po/Makefile testsuite/Makefile python/Makefile" + + + ac_config_commands="$ac_config_commands generate-headers" +@@ -82910,6 +82917,8 @@ do + "src/c++98/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++98/Makefile" ;; + "src/c++11/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++11/Makefile" ;; + "src/filesystem/Makefile") CONFIG_FILES="$CONFIG_FILES src/filesystem/Makefile" ;; ++ "src/nonshared98/Makefile") CONFIG_FILES="$CONFIG_FILES src/nonshared98/Makefile" ;; ++ "src/nonshared11/Makefile") CONFIG_FILES="$CONFIG_FILES src/nonshared11/Makefile" ;; + "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; + "po/Makefile") CONFIG_FILES="$CONFIG_FILES po/Makefile" ;; + "testsuite/Makefile") CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;; +@@ -84750,6 +84759,28 @@ _EOF + s!`test -f '$<' || echo '$(srcdir)/'`!! + _EOF + sed -f vpsed$$ $ac_file > tmp$$ ++ mv tmp$$ $ac_file ++ rm vpsed$$ ++ echo 'MULTISUBDIR =' >> $ac_file ++ ml_norecursion=yes ++ . ${multi_basedir}/config-ml.in ++ { ml_norecursion=; unset ml_norecursion;} ++ ;; ++ "src/nonshared98/Makefile":F) cat > vpsed$$ << \_EOF ++s!`test -f '$<' || echo '$(srcdir)/'`!! ++_EOF ++ sed -f vpsed$$ $ac_file > tmp$$ ++ mv tmp$$ $ac_file ++ rm vpsed$$ ++ echo 'MULTISUBDIR =' >> $ac_file ++ ml_norecursion=yes ++ . ${multi_basedir}/config-ml.in ++ { ml_norecursion=; unset ml_norecursion;} ++ ;; ++ "src/nonshared11/Makefile":F) cat > vpsed$$ << \_EOF ++s!`test -f '$<' || echo '$(srcdir)/'`!! ++_EOF ++ sed -f vpsed$$ $ac_file > tmp$$ + mv tmp$$ $ac_file + rm vpsed$$ + echo 'MULTISUBDIR =' >> $ac_file +--- libstdc++-v3/acinclude.m4.jj 2017-04-20 12:18:56.906222297 +0200 ++++ libstdc++-v3/acinclude.m4 2017-05-31 12:11:25.220560793 +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 + # (i.e., shell variable) at configure time. +- m4_define([glibcxx_SUBDIRS],[include libsupc++ src src/c++98 src/c++11 src/filesystem doc po testsuite python]) ++ m4_define([glibcxx_SUBDIRS],[include libsupc++ src src/c++98 src/c++11 src/filesystem src/nonshared98 src/nonshared11 doc po testsuite python]) + SUBDIRS='glibcxx_SUBDIRS' + + # These need to be absolute paths, yet at the same time need to @@ -0,0 +1,5 @@ +747d5010b7c6938b480bc6e4d7c4be9a gcc-7.3.0.tar.gz +c24161e0dd44cae78cd5f67193492a21 gmp-6.2.0.tar.bz2 +045ed3c6eb5cf6c8963d623bcf7e5031 isl-0.16.1.tar.xz +2f1ce56ac775f2be090863f364931a03 mpc-1.2.0.tar.gz +bdd3d5efba9c17da8d83a35ec552baef mpfr-4.1.0.tar.xz |
