Hello community,

here is the log from the commit of package gcc7 for openSUSE:Factory checked in 
at 2017-05-27 13:08:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gcc7 (Old)
 and      /work/SRC/openSUSE:Factory/.gcc7.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gcc7"

Sat May 27 13:08:45 2017 rev:2 rq:496092 version:7.1.1+r248152

Changes:
--------
--- /work/SRC/openSUSE:Factory/gcc7/cross-aarch64-gcc7.changes  2017-03-17 
14:58:08.249045637 +0100
+++ /work/SRC/openSUSE:Factory/.gcc7.new/cross-aarch64-gcc7.changes     
2017-05-27 13:09:32.770313256 +0200
@@ -1,0 +2,66 @@
+Wed May 17 12:09:04 UTC 2017 - rguent...@suse.com
+
+- Update to gcc-7-branch head (r248152)
+- Drop not working SLE-10 build support.
+- For SLE-15 make the i586 compiler generate code for architecture
+  level of x86_64.
+- Add gcc7-pr80593.patch to fix ceph build. [bnc#1025891]
+
+-------------------------------------------------------------------
+Thu May  4 10:12:09 UTC 2017 - rguent...@suse.com
+
+- Update to gcc-7-branch head (r247545)
+  * Includes GCC 7.1 release
+- For SLE15 change ppc64le tuning to power9.  [fate#322728]
+- Change tarball compression to xz, BuildRequire xz.
+
+-------------------------------------------------------------------
+Fri Apr 28 12:26:08 UTC 2017 - rguent...@suse.com
+
+- Update to gcc-7-branch head (r247368)
+  * Includes GCC 7.1 RC2
+  * Includes ARM ABI fix for PR77728, fixing ABI incompatibility
+    with GCC 4.8.
+
+-------------------------------------------------------------------
+Thu Apr 20 11:17:21 UTC 2017 - rguent...@suse.com
+
+- Update to gcc-7-branch head (r247019).
+- Always create nvptx offloading cross spec file.
+- Fix libada provides/conflicts.
+- Package gcov.h.
+- Add #!BuildIgnore: gcc-PIE.
+- Fix update-alternatives.
+
+-------------------------------------------------------------------
+Tue Apr  4 14:44:52 UTC 2017 - mli...@suse.cz
+
+- Add update-alternatives for binaries produces by cross compilers.
+- Add nospeccleaner comment, remove legacy norootforbuild and
+  icecream.
+
+-------------------------------------------------------------------
+Fri Mar 31 08:51:09 UTC 2017 - rguent...@suse.com
+
+- Update to gcc trunk head (r246609).
+- Add cross-binutils Requires to cross-gcc packages.
+
+-------------------------------------------------------------------
+Mon Mar 27 14:06:43 UTC 2017 - rguent...@suse.com
+
+- Really fix libtsan requirement on ppc.  [boo#1030623]
+- Also fix liblsan requirement on pcc.
+
+-------------------------------------------------------------------
+Thu Mar 23 09:59:21 UTC 2017 - rguent...@suse.com
+
+- Update to gcc trunk head (r246414).
+- Package gcov-dump.
+- Remove gcc7-debug-dwarf2out-ice.patch.
+- Add gcc7-remove-Wexpansion-to-defined-from-Wextra.patch to remove
+  useless warning from Wextra that causes build fails due to excessive
+  log file size.
+- Remove libtsan Requires from the gcc7-32bit package, tsan doesn't have
+  a 32bit multilib on any arch.  [boo#1030623]
+
+-------------------------------------------------------------------
cross-arm-gcc7.changes: same change
cross-avr-gcc7.changes: same change
cross-epiphany-gcc7-bootstrap.changes: same change
cross-epiphany-gcc7.changes: same change
cross-hppa-gcc7.changes: same change
cross-i386-gcc7.changes: same change
cross-m68k-gcc7.changes: same change
cross-mips-gcc7.changes: same change
cross-nvptx-gcc7.changes: same change
cross-ppc64-gcc7.changes: same change
cross-ppc64le-gcc7.changes: same change
cross-rx-gcc7-bootstrap.changes: same change
cross-rx-gcc7.changes: same change
cross-s390x-gcc7.changes: same change
cross-sparc-gcc7.changes: same change
cross-sparc64-gcc7.changes: same change
cross-x86_64-gcc7.changes: same change
gcc7-testresults.changes: same change
gcc7.changes: same change

Old:
----
  gcc-7.0.1-r246083.tar.bz2
  gcc7-debug-dwarf2out-ice.patch
  nvptx-newlib.tar.bz2

New:
----
  gcc-7.1.1-r248152.tar.xz
  gcc7-pr80593.patch
  gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
  nvptx-newlib.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cross-aarch64-gcc7.spec ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:37.397659022 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:37.401658456 +0200
@@ -29,6 +29,8 @@
 # Please submit bugfixes or comments via http://www.suse.de/feedback/
 #
 
+# nospeccleaner
+
 %define build_cp 0%{!?gcc_accel:1}
 %define build_ada 0
 %define build_libjava 0
@@ -96,6 +98,7 @@
 Name:           %{pkgname}
 %if %{cross_arch} != "nvptx"
 BuildRequires:  cross-%{binutils_target}-binutils
+Requires:       cross-%{binutils_target}-binutils
 %endif
 BuildRequires:  bison
 BuildRequires:  flex
@@ -146,34 +149,38 @@
 Provides:       %{gcc_target_arch}-gcc
 Conflicts:      %selfconflict %{gcc_target_arch}-gcc
 %endif
+BuildRequires:  update-alternatives
+Requires(post): update-alternatives
+Requires(preun): update-alternatives
 
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.0.1+r246083
+Version:        7.1.1+r248152
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
 %define gcc_snapshot_revision %(echo %version | sed 's/[3-9]\.[0-9]\.[0-6]//' 
| sed 's/+/-/')
 %define binsuffix -7
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
+Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.xz
 Source1:        change_spec
 Source3:        gcc7-rpmlintrc
 Source4:        README.First-for.SuSE.packagers
-Source5:        nvptx-newlib.tar.bz2
+Source5:        nvptx-newlib.tar.xz
 Patch2:         gcc-add-defaultsspec.diff
 Patch5:         tls-no-direct.diff
 Patch6:         gcc43-no-unwind-tables.diff
 Patch7:         gcc48-libstdc++-api-reference.patch
 Patch9:         gcc48-remove-mpfr-2.4.0-requirement.patch
 Patch10:        gcc5-no-return-gcc43-workaround.patch
+Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
+Patch12:        gcc7-pr80593.patch
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
 Patch60:        gcc44-textdomain.patch
 Patch61:        gcc44-rename-info-files.patch
-Patch100:       gcc7-debug-dwarf2out-ice.patch
 
 Summary:        The GNU C Compiler and Support Files
 License:        GPL-3.0+
@@ -241,10 +248,11 @@
 %patch9
 %endif
 %patch10
+%patch11
+%patch12
 %patch51
 %patch60
 %patch61
-%patch100
 
 #test patching end
 
@@ -391,9 +399,7 @@
 %endif
        --enable-version-specific-runtime-libs \
        --with-gcc-major-version-only \
-%if 0%{suse_version} > 1100
        --enable-linker-build-id \
-%endif
        --enable-linux-futex \
 %if %{suse_version} >= 1315
 %ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@@ -480,6 +486,10 @@
         --with-cpu=default32 \
 %endif
 %if "%{TARGET_ARCH}" == "powerpc64le"
+%if %{suse_version} >= 1350
+       --with-cpu=power8 \
+       --with-tune=power9 \
+%else
 %if %{suse_version} >= 1315 && %{suse_version} != 1320
        --with-cpu=power8 \
        --with-tune=power8 \
@@ -487,6 +497,7 @@
        --with-cpu=power7 \
        --with-tune=power7 \
 %endif
+%endif
 %else
        --with-cpu-64=power4 \
 %endif
@@ -506,7 +517,11 @@
        --with-long-double-128 \
 %endif
 %if "%{TARGET_ARCH}" == "i586"
+%if 0%{?sle_version:%sle_version} >= 150000
+       --with-arch-32=x86-64 \
+%else
        --with-arch-32=i586 \
+%endif
        --with-tune=generic \
 %endif
 %if "%{TARGET_ARCH}" == "x86_64"
@@ -640,6 +655,28 @@
 rm -r env
 %endif
 
+%post
+%if 0%{!?gcc_accel:1}
+%{_sbindir}/update-alternatives \
+  --install %{_bindir}/%{gcc_target_arch}-gcc %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} 7 \
+  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-cpp %{gcc_target_arch}-cpp 
%{_bindir}/%{gcc_target_arch}-cpp%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-g++ %{gcc_target_arch}-g++ 
%{_bindir}/%{gcc_target_arch}-g++%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcc-ar %{gcc_target_arch}-gcc-ar 
%{_bindir}/%{gcc_target_arch}-gcc-ar%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcc-nm %{gcc_target_arch}-gcc-nm 
%{_bindir}/%{gcc_target_arch}-gcc-nm%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcc-ranlib 
%{gcc_target_arch}-gcc-ranlib 
%{_bindir}/%{gcc_target_arch}-gcc-ranlib%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcov %{gcc_target_arch}-gcov 
%{_bindir}/%{gcc_target_arch}-gcov%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcov-dump %{gcc_target_arch}-gcov-dump 
%{_bindir}/%{gcc_target_arch}-gcov-dump%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcov-tool %{gcc_target_arch}-gcov-tool 
%{_bindir}/%{gcc_target_arch}-gcov-tool%{binsuffix}
+%endif
+
+%postun
+%if 0%{!?gcc_accel:1}
+if [ ! -f %{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} ] ; then
+%{_sbindir}/update-alternatives --remove %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix}
+fi
+%endif
+
 %files
 %defattr(-,root,root)
 %if 0%{?gcc_accel:1}
@@ -648,7 +685,16 @@
 %dir %{libsubdir}/accel
 %{libsubdir}/accel/%{gcc_target_arch}
 %else
-%{_prefix}/bin/%{gcc_target_arch}-*
+%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
 %endif
 %dir %{targetlibsubdir}
 %dir %{_libdir}/gcc/%{gcc_target_arch}

cross-arm-gcc7.spec: same change
cross-avr-gcc7.spec: same change
cross-epiphany-gcc7-bootstrap.spec: same change
cross-epiphany-gcc7.spec: same change
cross-hppa-gcc7.spec: same change
cross-i386-gcc7.spec: same change
cross-m68k-gcc7.spec: same change
cross-mips-gcc7.spec: same change
cross-nvptx-gcc7.spec: same change
cross-ppc64-gcc7.spec: same change
cross-ppc64le-gcc7.spec: same change
cross-rx-gcc7-bootstrap.spec: same change
cross-rx-gcc7.spec: same change
cross-s390x-gcc7.spec: same change
cross-sparc-gcc7.spec: same change
cross-sparc64-gcc7.spec: same change
cross-x86_64-gcc7.spec: same change
++++++ gcc7-testresults.spec ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:37.897588339 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:37.897588339 +0200
@@ -14,7 +14,6 @@
 
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
-# icecream 0
 
 
 %define building_testsuite 1
@@ -35,6 +34,8 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
+# nospeccleaner
+
 # Ada currently fails to build on a few platforms, enable it only
 # on those that work
 %if %{suse_version} >= 1310
@@ -169,6 +170,7 @@
 %endif
 
 Name:           gcc7-testresults
+BuildRequires:  xz
 # With generated files in src we could drop the following
 BuildRequires:  bison
 BuildRequires:  flex
@@ -217,6 +219,7 @@
 BuildRequires:  expect
 BuildRequires:  gdb
 %endif
+#!BuildIgnore: gcc-PIE
 
 %define separate_bi32 0
 %define separate_bi64 0
@@ -250,7 +253,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.0.1+r246083
+Version:        7.1.1+r248152
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -267,8 +270,10 @@
 Requires:       libasan%{libasan_sover} >= %{version}-%{release}
 %endif
 %ifarch %tsan_arch
+%if %{build_primary_64bit}
 Requires:       libtsan%{libtsan_sover} >= %{version}-%{release}
 %endif
+%endif
 %ifarch %atomic_arch
 Requires:       libatomic%{libatomic_sover} >= %{version}-%{release}
 %endif
@@ -279,8 +284,10 @@
 Requires:       libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
 %endif
 %ifarch %lsan_arch
+%if %{build_primary_64bit}
 Requires:       liblsan%{liblsan_sover} >= %{version}-%{release}
 %endif
+%endif
 %ifarch %ubsan_arch
 Requires:       libubsan%{libubsan_sover} >= %{version}-%{release}
 %endif
@@ -295,23 +302,24 @@
 %endif
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
+Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.xz
 Source1:        change_spec
 Source3:        gcc7-rpmlintrc
 Source4:        README.First-for.SuSE.packagers
-Source5:        nvptx-newlib.tar.bz2
+Source5:        nvptx-newlib.tar.xz
 Patch2:         gcc-add-defaultsspec.diff
 Patch5:         tls-no-direct.diff
 Patch6:         gcc43-no-unwind-tables.diff
 Patch7:         gcc48-libstdc++-api-reference.patch
 Patch9:         gcc48-remove-mpfr-2.4.0-requirement.patch
 Patch10:        gcc5-no-return-gcc43-workaround.patch
+Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
+Patch12:        gcc7-pr80593.patch
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
 Patch60:        gcc44-textdomain.patch
 Patch61:        gcc44-rename-info-files.patch
-Patch100:       gcc7-debug-dwarf2out-ice.patch
 
 Summary:        Testsuite results
 License:        SUSE-Public-Domain
@@ -431,10 +439,11 @@
 %patch9
 %endif
 %patch10
+%patch11
+%patch12
 %patch51
 %patch60
 %patch61
-%patch100
 
 #test patching end
 
@@ -581,9 +590,7 @@
 %endif
        --enable-version-specific-runtime-libs \
        --with-gcc-major-version-only \
-%if 0%{suse_version} > 1100
        --enable-linker-build-id \
-%endif
        --enable-linux-futex \
 %if %{suse_version} >= 1315
 %ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@@ -670,6 +677,10 @@
         --with-cpu=default32 \
 %endif
 %if "%{TARGET_ARCH}" == "powerpc64le"
+%if %{suse_version} >= 1350
+       --with-cpu=power8 \
+       --with-tune=power9 \
+%else
 %if %{suse_version} >= 1315 && %{suse_version} != 1320
        --with-cpu=power8 \
        --with-tune=power8 \
@@ -677,6 +688,7 @@
        --with-cpu=power7 \
        --with-tune=power7 \
 %endif
+%endif
 %else
        --with-cpu-64=power4 \
 %endif
@@ -696,7 +708,11 @@
        --with-long-double-128 \
 %endif
 %if "%{TARGET_ARCH}" == "i586"
+%if 0%{?sle_version:%sle_version} >= 150000
+       --with-arch-32=x86-64 \
+%else
        --with-arch-32=i586 \
+%endif
        --with-tune=generic \
 %endif
 %if "%{TARGET_ARCH}" == "x86_64"

++++++ gcc7.spec ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:37.921584946 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:37.929583816 +0200
@@ -14,9 +14,10 @@
 
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
-# icecream 0
 
 
+# nospeccleaner
+
 # Ada currently fails to build on a few platforms, enable it only
 # on those that work
 %if %{suse_version} >= 1310
@@ -151,6 +152,7 @@
 %endif
 
 Name:           gcc7
+BuildRequires:  xz
 # With generated files in src we could drop the following
 BuildRequires:  bison
 BuildRequires:  flex
@@ -199,6 +201,7 @@
 BuildRequires:  expect
 BuildRequires:  gdb
 %endif
+#!BuildIgnore: gcc-PIE
 
 %define separate_bi32 0
 %define separate_bi64 0
@@ -232,7 +235,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 Url:            http://gcc.gnu.org/
-Version:        7.0.1+r246083
+Version:        7.1.1+r248152
 Release:        0
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -249,8 +252,10 @@
 Requires:       libasan%{libasan_sover} >= %{version}-%{release}
 %endif
 %ifarch %tsan_arch
+%if %{build_primary_64bit}
 Requires:       libtsan%{libtsan_sover} >= %{version}-%{release}
 %endif
+%endif
 %ifarch %atomic_arch
 Requires:       libatomic%{libatomic_sover} >= %{version}-%{release}
 %endif
@@ -261,8 +266,10 @@
 Requires:       libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
 %endif
 %ifarch %lsan_arch
+%if %{build_primary_64bit}
 Requires:       liblsan%{liblsan_sover} >= %{version}-%{release}
 %endif
+%endif
 %ifarch %ubsan_arch
 Requires:       libubsan%{libubsan_sover} >= %{version}-%{release}
 %endif
@@ -277,23 +284,24 @@
 %endif
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
+Source:         gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.xz
 Source1:        change_spec
 Source3:        gcc7-rpmlintrc
 Source4:        README.First-for.SuSE.packagers
-Source5:        nvptx-newlib.tar.bz2
+Source5:        nvptx-newlib.tar.xz
 Patch2:         gcc-add-defaultsspec.diff
 Patch5:         tls-no-direct.diff
 Patch6:         gcc43-no-unwind-tables.diff
 Patch7:         gcc48-libstdc++-api-reference.patch
 Patch9:         gcc48-remove-mpfr-2.4.0-requirement.patch
 Patch10:        gcc5-no-return-gcc43-workaround.patch
+Patch11:        gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
+Patch12:        gcc7-pr80593.patch
 # A set of patches from the RH srpm
 Patch51:        gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
 Patch60:        gcc44-textdomain.patch
 Patch61:        gcc44-rename-info-files.patch
-Patch100:       gcc7-debug-dwarf2out-ice.patch
 
 Summary:        The GNU C Compiler and Support Files
 License:        GPL-3.0+
@@ -318,13 +326,6 @@
 %ifarch %asan_arch
 Requires:       libasan%{libasan_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %tsan_arch
-# tsan on x86_64 has no multilib
-%ifarch x86_64
-%else
-Requires:       libtsan%{libtsan_sover}-32bit >= %{version}-%{release}
-%endif
-%endif
 %ifarch %atomic_arch
 Requires:       libatomic%{libatomic_sover}-32bit >= %{version}-%{release}
 %endif
@@ -334,13 +335,6 @@
 %ifarch %cilkrts_arch
 Requires:       libcilkrts%{libcilkrts_sover}-32bit >= %{version}-%{release}
 %endif
-# lsan on x86_64 has no multilib
-%ifarch x86_64
-%else
-%ifarch %lsan_arch
-Requires:       liblsan%{liblsan_sover} >= %{version}-%{release}
-%endif
-%endif
 %ifarch %ubsan_arch
 Requires:       libubsan%{libubsan_sover}-32bit >= %{version}-%{release}
 %endif
@@ -808,7 +802,7 @@
 
 
 %package ada
-Summary:        GNU Ada95 Compiler Based on GCC (GNAT)
+Summary:        GNU Ada Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
 Group:          Development/Languages/Other
 Requires:       gcc7 = %{version}-%{release}
@@ -816,12 +810,10 @@
 Requires:       libada7 = %{version}-%{release}
 
 %description ada
-This package contains an Ada95 compiler and associated development
-tools based on the GNU GCC technology. Ada95 is the object oriented
-successor of the Ada83 language. To build this package from source you
-must have installed a binary version to bootstrap the compiler.
+This package contains an Ada compiler and associated development
+tools based on the GNU GCC technology.
 %package ada-32bit
-Summary:        GNU Ada95 Compiler Based on GCC (GNAT)
+Summary:        GNU Ada Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
 Group:          Development/Languages/Other
 Requires:       gcc7-32bit = %{version}-%{release}
@@ -829,12 +821,10 @@
 Requires:       libada7-32bit = %{version}-%{release}
 
 %description ada-32bit
-This package contains an Ada95 compiler and associated development
-tools based on the GNU GCC technology. Ada95 is the object oriented
-successor of the Ada83 language. To build this package from source you
-must have installed a binary version to bootstrap the compiler.
+This package contains an Ada compiler and associated development
+tools based on the GNU GCC technology.
 %package ada-64bit
-Summary:        GNU Ada95 Compiler Based on GCC (GNAT)
+Summary:        GNU Ada Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
 Group:          Development/Languages/Other
 Requires:       gcc7-64bit = %{version}-%{release}
@@ -842,19 +832,17 @@
 Requires:       libada7-64bit = %{version}-%{release}
 
 %description ada-64bit
-This package contains an Ada95 compiler and associated development
-tools based on the GNU GCC technology. Ada95 is the object oriented
-successor of the Ada83 language. To build this package from source you
-must have installed a binary version to bootstrap the compiler.
+This package contains an Ada compiler and associated development
+tools based on the GNU GCC technology.
 
 %package -n libada7
 Summary:        GNU Ada Runtime Libraries
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libgnarl-5 = %{version}-%{release}
-Conflicts:      %selfconflict libgnarl-5
-Provides:       libgnat-5 = %{version}-%{release}
-Conflicts:      %selfconflict libgnat-5
+Provides:       libgnarl-7 = %{version}-%{release}
+Conflicts:      %selfconflict libgnarl-7
+Provides:       libgnat-7 = %{version}-%{release}
+Conflicts:      %selfconflict libgnat-7
 
 %description -n libada7
 This package contains the shared libraries required to run programs
@@ -871,10 +859,10 @@
 Summary:        GNU Ada Runtime Libraries
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libgnarl-5-32bit = %{version}-%{release}
-Conflicts:      %selfconflict libgnarl-5-32bit
-Provides:       libgnat-5-32bit = %{version}-%{release}
-Conflicts:      %selfconflict libgnat-5-32bit
+Provides:       libgnarl-7-32bit = %{version}-%{release}
+Conflicts:      %selfconflict libgnarl-7-32bit
+Provides:       libgnat-7-32bit = %{version}-%{release}
+Conflicts:      %selfconflict libgnat-7-32bit
 
 %description -n libada7-32bit
 This package contains the shared libraries required to run programs
@@ -891,10 +879,10 @@
 Summary:        GNU Ada Runtime Libraries
 License:        GPL-3.0-with-GCC-exception
 Group:          System/Libraries
-Provides:       libgnarl-5-64bit = %{version}-%{release}
-Conflicts:      %selfconflict libgnarl-5-64bit
-Provides:       libgnat-5-64bit = %{version}-%{release}
-Conflicts:      %selfconflict libgnat-5-64bit
+Provides:       libgnarl-7-64bit = %{version}-%{release}
+Conflicts:      %selfconflict libgnarl-7-64bit
+Provides:       libgnat-7-64bit = %{version}-%{release}
+Conflicts:      %selfconflict libgnat-7-64bit
 
 %description -n libada7-64bit
 This package contains the shared libraries required to run programs
@@ -1755,10 +1743,11 @@
 %patch9
 %endif
 %patch10
+%patch11
+%patch12
 %patch51
 %patch60
 %patch61
-%patch100
 
 #test patching end
 
@@ -1905,9 +1894,7 @@
 %endif
        --enable-version-specific-runtime-libs \
        --with-gcc-major-version-only \
-%if 0%{suse_version} > 1100
        --enable-linker-build-id \
-%endif
        --enable-linux-futex \
 %if %{suse_version} >= 1315
 %ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@@ -1994,6 +1981,10 @@
         --with-cpu=default32 \
 %endif
 %if "%{TARGET_ARCH}" == "powerpc64le"
+%if %{suse_version} >= 1350
+       --with-cpu=power8 \
+       --with-tune=power9 \
+%else
 %if %{suse_version} >= 1315 && %{suse_version} != 1320
        --with-cpu=power8 \
        --with-tune=power8 \
@@ -2001,6 +1992,7 @@
        --with-cpu=power7 \
        --with-tune=power7 \
 %endif
+%endif
 %else
        --with-cpu-64=power4 \
 %endif
@@ -2020,7 +2012,11 @@
        --with-long-double-128 \
 %endif
 %if "%{TARGET_ARCH}" == "i586"
+%if 0%{?sle_version:%sle_version} >= 150000
+       --with-arch-32=x86-64 \
+%else
        --with-arch-32=i586 \
+%endif
        --with-tune=generic \
 %endif
 %if "%{TARGET_ARCH}" == "x86_64"
@@ -2418,6 +2414,7 @@
 %endif
 %{_prefix}/bin/gcc%{binsuffix}
 %{_prefix}/bin/gcov%{binsuffix}
+%{_prefix}/bin/gcov-dump%{binsuffix}
 %{_prefix}/bin/gcov-tool%{binsuffix}
 %{_prefix}/bin/gcc-ar%{binsuffix}
 %{_prefix}/bin/gcc-nm%{binsuffix}
@@ -2429,9 +2426,6 @@
 %{libsubdir}/include-fixed/README
 %{libsubdir}/include-fixed/limits.h
 %{libsubdir}/include-fixed/syslimits.h
-%if %{suse_version} < 1030
-%{libsubdir}/include-fixed/wchar.h
-%endif
 %{libsubdir}/include/omp.h
 %{libsubdir}/include/float.h
 %{libsubdir}/include/iso646.h
@@ -2447,6 +2441,7 @@
 %{libsubdir}/include/stdalign.h
 %{libsubdir}/include/stdatomic.h
 %{libsubdir}/include/openacc.h
+%{libsubdir}/include/gcov.h
 %ifarch %sparc
 %{libsubdir}/include/visintrin.h
 %endif
@@ -2619,6 +2614,8 @@
 %endif
 %doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
 %doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
+%doc %{_mandir}/man1/gcov-dump%{binsuffix}.1.gz
+%doc %{_mandir}/man1/gcov-tool%{binsuffix}.1.gz
 
 %if %{separate_biarch}
 %files -n gcc7%{separate_biarch_suffix}
@@ -3077,14 +3074,14 @@
 
 %files -n libada7
 %defattr(-,root,root)
-%mainlib libgnarl-*.so
-%mainlib libgnat-*.so
+%mainlib libgnarl%{binsuffix}.so
+%mainlib libgnat%{binsuffix}.so
 
 %if %{separate_biarch}
 %files -n libada7%{separate_biarch_suffix}
 %defattr(-,root,root)
-%biarchlib libgnarl-*.so
-%biarchlib libgnat-*.so
+%biarchlib libgnarl%{binsuffix}.so
+%biarchlib libgnat%{binsuffix}.so
 %endif
 %endif
 

++++++ change_spec ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:38.005573072 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:38.005573072 +0200
@@ -106,10 +106,11 @@
 add_cross cross-hppa-gcc$base_ver hppa hppa-suse-linux %define gcc_icecream 1
 add_newlib_cross cross-epiphany-gcc$base_ver epiphany epiphany-elf
 add_newlib_cross cross-rx-gcc$base_ver rx rx-elf
-add_cross cross-nvptx-gcc$base_ver nvptx nvptx-none %define gcc_accel 1
 #add_newlib_cross cross-rl78-gcc$base_ver rl78 rl78-elf
 #add_newlib_cross cross-nds32le-gcc$base_ver nds32le nds32le-elf
 fi
+# the nvptx cross is used for offloading
+add_cross cross-nvptx-gcc$base_ver nvptx nvptx-none %define gcc_accel 1
 
 for f in *.spec; do
   sed -i -e '/^# .*-\(BEGIN\|END\)$/d' $f

++++++ cross.spec.in ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:38.093560632 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:38.093560632 +0200
@@ -8,6 +8,8 @@
 # Please submit bugfixes or comments via http://www.suse.de/feedback/
 #
 
+# nospeccleaner
+
 %define build_cp 0%{!?gcc_accel:1}
 %define build_ada 0
 %define build_libjava 0
@@ -75,6 +77,7 @@
 Name:         %{pkgname}
 %if %{cross_arch} != "nvptx"
 BuildRequires: cross-%{binutils_target}-binutils
+Requires: cross-%{binutils_target}-binutils
 %endif
 BuildRequires: gcc-c++
 BuildRequires: bison
@@ -125,6 +128,9 @@
 Provides: %{gcc_target_arch}-gcc
 Conflicts: %selfconflict %{gcc_target_arch}-gcc
 %endif
+BuildRequires:  update-alternatives
+Requires(post): update-alternatives
+Requires(preun): update-alternatives
 
 # COMMON-BEGIN
 # COMMON-END
@@ -234,6 +240,28 @@
 rm -r env
 %endif
 
+%post
+%if 0%{!?gcc_accel:1}
+%{_sbindir}/update-alternatives \
+  --install %{_bindir}/%{gcc_target_arch}-gcc %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} @base_ver@ \
+  --slave %{_bindir}/%{gcc_target_arch}-c++ %{gcc_target_arch}-c++ 
%{_bindir}/%{gcc_target_arch}-c++%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-cpp %{gcc_target_arch}-cpp 
%{_bindir}/%{gcc_target_arch}-cpp%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-g++ %{gcc_target_arch}-g++ 
%{_bindir}/%{gcc_target_arch}-g++%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcc-ar %{gcc_target_arch}-gcc-ar 
%{_bindir}/%{gcc_target_arch}-gcc-ar%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcc-nm %{gcc_target_arch}-gcc-nm 
%{_bindir}/%{gcc_target_arch}-gcc-nm%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcc-ranlib 
%{gcc_target_arch}-gcc-ranlib 
%{_bindir}/%{gcc_target_arch}-gcc-ranlib%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcov %{gcc_target_arch}-gcov 
%{_bindir}/%{gcc_target_arch}-gcov%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcov-dump %{gcc_target_arch}-gcov-dump 
%{_bindir}/%{gcc_target_arch}-gcov-dump%{binsuffix} \
+  --slave %{_bindir}/%{gcc_target_arch}-gcov-tool %{gcc_target_arch}-gcov-tool 
%{_bindir}/%{gcc_target_arch}-gcov-tool%{binsuffix}
+%endif
+
+%postun
+%if 0%{!?gcc_accel:1}
+if [ ! -f %{_bindir}/%{gcc_target_arch}-gcc%{binsuffix} ] ; then
+%{_sbindir}/update-alternatives --remove %{gcc_target_arch}-gcc 
%{_bindir}/%{gcc_target_arch}-gcc%{binsuffix}
+fi
+%endif
+
 %files
 %defattr(-,root,root)
 %if 0%{?gcc_accel:1}
@@ -242,7 +270,16 @@
 %dir %{libsubdir}/accel
 %{libsubdir}/accel/%{gcc_target_arch}
 %else
-%{_prefix}/bin/%{gcc_target_arch}-*
+%{_prefix}/bin/%{gcc_target_arch}-gcc%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-c++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-cpp%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-g++%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcc-ar%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcc-nm%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcc-ranlib%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcov%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcov-dump%{binsuffix}
+%{_prefix}/bin/%{gcc_target_arch}-gcov-tool%{binsuffix}
 %endif
 %dir %{targetlibsubdir}
 %dir %{_libdir}/gcc/%{gcc_target_arch}

++++++ gcc.spec.in ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:38.121556674 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:38.121556674 +0200
@@ -15,8 +15,7 @@
 # Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
-# norootforbuild
-# icecream 0
+# nospeccleaner
 
 
 # Ada currently fails to build on a few platforms, enable it only
@@ -156,6 +155,7 @@
 
 
 Name:         gcc@base_ver@
+BuildRequires: xz
 # With generated files in src we could drop the following
 BuildRequires: bison
 BuildRequires: flex
@@ -204,6 +204,7 @@
 BuildRequires: expect
 BuildRequires: gdb
 %endif
+#!BuildIgnore: gcc-PIE
 
 %define separate_bi32 0
 %define separate_bi64 0
@@ -238,7 +239,7 @@
 %define biarch_targets x86_64 s390x powerpc64 powerpc sparc sparc64
 
 URL:          http://gcc.gnu.org/
-Version: 7.0.1+r246083
+Version: 7.1.1+r248152
 Release:      1
 %define gcc_version %(echo %version | sed 's/+.*//')
 %define gcc_dir_version %(echo %gcc_version | cut -d '.' -f 1)
@@ -255,8 +256,10 @@
 Requires: libasan%{libasan_sover} >= %{version}-%{release}
 %endif
 %ifarch %tsan_arch
+%if %{build_primary_64bit}
 Requires: libtsan%{libtsan_sover} >= %{version}-%{release}
 %endif
+%endif
 %ifarch %atomic_arch
 Requires: libatomic%{libatomic_sover} >= %{version}-%{release}
 %endif
@@ -267,8 +270,10 @@
 Requires: libcilkrts%{libcilkrts_sover} >= %{version}-%{release}
 %endif
 %ifarch %lsan_arch
+%if %{build_primary_64bit}
 Requires: liblsan%{liblsan_sover} >= %{version}-%{release}
 %endif
+%endif
 %ifarch %ubsan_arch
 Requires: libubsan%{libubsan_sover} >= %{version}-%{release}
 %endif
@@ -284,23 +289,24 @@
 
 # COMMON-BEGIN
 BuildRoot:     %{_tmppath}/%{name}-%{version}-build
-Source:                gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.bz2
+Source:                gcc-%{gcc_version}%{gcc_snapshot_revision}.tar.xz
 Source1:       change_spec
 Source3:       gcc7-rpmlintrc
 Source4:       README.First-for.SuSE.packagers
-Source5:       nvptx-newlib.tar.bz2
+Source5:       nvptx-newlib.tar.xz
 Patch2:                gcc-add-defaultsspec.diff
 Patch5:                tls-no-direct.diff
 Patch6:                gcc43-no-unwind-tables.diff
 Patch7:                gcc48-libstdc++-api-reference.patch
 Patch9:                gcc48-remove-mpfr-2.4.0-requirement.patch
 Patch10:       gcc5-no-return-gcc43-workaround.patch
+Patch11:       gcc7-remove-Wexpansion-to-defined-from-Wextra.patch
+Patch12:       gcc7-pr80593.patch
 # A set of patches from the RH srpm
 Patch51:       gcc41-ppc32-retaddr.patch
 # Some patches taken from Debian
 Patch60:       gcc44-textdomain.patch
 Patch61:       gcc44-rename-info-files.patch
-Patch100:      gcc7-debug-dwarf2out-ice.patch
 
 
 # GCC-TESTSUITE-DELETE-BEGIN
@@ -327,13 +333,6 @@
 %ifarch %asan_arch
 Requires: libasan%{libasan_sover}-32bit >= %{version}-%{release}
 %endif
-%ifarch %tsan_arch
-# tsan on x86_64 has no multilib
-%ifarch x86_64
-%else
-Requires: libtsan%{libtsan_sover}-32bit >= %{version}-%{release}
-%endif
-%endif
 %ifarch %atomic_arch
 Requires: libatomic%{libatomic_sover}-32bit >= %{version}-%{release}
 %endif
@@ -343,13 +342,6 @@
 %ifarch %cilkrts_arch
 Requires: libcilkrts%{libcilkrts_sover}-32bit >= %{version}-%{release}
 %endif
-# lsan on x86_64 has no multilib
-%ifarch x86_64
-%else
-%ifarch %lsan_arch
-Requires: liblsan%{liblsan_sover} >= %{version}-%{release}
-%endif
-%endif
 %ifarch %ubsan_arch
 Requires: libubsan%{libubsan_sover}-32bit >= %{version}-%{release}
 %endif
@@ -607,7 +599,7 @@
 
 # PACKAGE-BEGIN
 %package ada@variant@
-Summary:      GNU Ada95 Compiler Based on GCC (GNAT)
+Summary:      GNU Ada Compiler Based on GCC (GNAT)
 License:        GPL-3.0+
 Group:        Development/Languages/Other
 Requires: gcc@base_ver@@variant@ = %{version}-%{release}
@@ -615,10 +607,8 @@
 Requires: libada@base_ver@@variant@ = %{version}-%{release}
 
 %description ada@variant@
-This package contains an Ada95 compiler and associated development
-tools based on the GNU GCC technology. Ada95 is the object oriented
-successor of the Ada83 language. To build this package from source you
-must have installed a binary version to bootstrap the compiler.
+This package contains an Ada compiler and associated development
+tools based on the GNU GCC technology.
 # PACKAGE-END
 
 # PACKAGE-BEGIN
@@ -626,10 +616,10 @@
 Summary:      GNU Ada Runtime Libraries
 License:      GPL-3.0-with-GCC-exception
 Group:        System/Libraries
-Provides: libgnarl-5@variant@ = %{version}-%{release}
-Conflicts: %selfconflict libgnarl-5@variant@
-Provides: libgnat-5@variant@ = %{version}-%{release}
-Conflicts: %selfconflict libgnat-5@variant@
+Provides: libgnarl-@base_ver@@variant@ = %{version}-%{release}
+Conflicts: %selfconflict libgnarl-@base_ver@@variant@
+Provides: libgnat-@base_ver@@variant@ = %{version}-%{release}
+Conflicts: %selfconflict libgnat-@base_ver@@variant@
 
 %description -n libada@base_ver@@variant@
 This package contains the shared libraries required to run programs
@@ -1063,10 +1053,11 @@
 %patch9
 %endif
 %patch10
+%patch11
+%patch12
 %patch51
 %patch60
 %patch61
-%patch100
 
 #test patching end
 
@@ -1213,9 +1204,7 @@
 %endif
        --enable-version-specific-runtime-libs \
        --with-gcc-major-version-only \
-%if 0%{suse_version} > 1100
        --enable-linker-build-id \
-%endif
        --enable-linux-futex \
 %if %{suse_version} >= 1315
 %ifarch %ix86 x86_64 ppc ppc64 ppc64le %arm aarch64 s390 s390x %sparc
@@ -1302,6 +1291,10 @@
         --with-cpu=default32 \
 %endif
 %if "%{TARGET_ARCH}" == "powerpc64le"
+%if %{suse_version} >= 1350
+       --with-cpu=power8 \
+       --with-tune=power9 \
+%else
 %if %{suse_version} >= 1315 && %{suse_version} != 1320
        --with-cpu=power8 \
        --with-tune=power8 \
@@ -1309,6 +1302,7 @@
        --with-cpu=power7 \
        --with-tune=power7 \
 %endif
+%endif
 %else
        --with-cpu-64=power4 \
 %endif
@@ -1328,7 +1322,11 @@
        --with-long-double-128 \
 %endif
 %if "%{TARGET_ARCH}" == "i586"
+%if 0%{?sle_version:%sle_version} >= 150000
+       --with-arch-32=x86-64 \
+%else
        --with-arch-32=i586 \
+%endif
        --with-tune=generic \
 %endif
 %if "%{TARGET_ARCH}" == "x86_64"
@@ -1733,6 +1731,7 @@
 %endif
 %{_prefix}/bin/gcc%{binsuffix}
 %{_prefix}/bin/gcov%{binsuffix}
+%{_prefix}/bin/gcov-dump%{binsuffix}
 %{_prefix}/bin/gcov-tool%{binsuffix}
 %{_prefix}/bin/gcc-ar%{binsuffix}
 %{_prefix}/bin/gcc-nm%{binsuffix}
@@ -1744,9 +1743,6 @@
 %{libsubdir}/include-fixed/README
 %{libsubdir}/include-fixed/limits.h
 %{libsubdir}/include-fixed/syslimits.h
-%if %{suse_version} < 1030
-%{libsubdir}/include-fixed/wchar.h
-%endif
 %{libsubdir}/include/omp.h
 %{libsubdir}/include/float.h
 %{libsubdir}/include/iso646.h
@@ -1762,6 +1758,7 @@
 %{libsubdir}/include/stdalign.h
 %{libsubdir}/include/stdatomic.h
 %{libsubdir}/include/openacc.h
+%{libsubdir}/include/gcov.h
 %ifarch %sparc
 %{libsubdir}/include/visintrin.h
 %endif
@@ -1934,6 +1931,8 @@
 %endif
 %doc %{_mandir}/man1/gcc%{binsuffix}.1.gz
 %doc %{_mandir}/man1/gcov%{binsuffix}.1.gz
+%doc %{_mandir}/man1/gcov-dump%{binsuffix}.1.gz
+%doc %{_mandir}/man1/gcov-tool%{binsuffix}.1.gz
 
 %if %{separate_biarch}
 %files -n gcc@base_ver@%{separate_biarch_suffix}
@@ -2406,14 +2405,14 @@
 
 %files -n libada@base_ver@
 %defattr(-,root,root)
-%mainlib libgnarl-*.so
-%mainlib libgnat-*.so
+%mainlib libgnarl%{binsuffix}.so
+%mainlib libgnat%{binsuffix}.so
 
 %if %{separate_biarch}
 %files -n libada@base_ver@%{separate_biarch_suffix}
 %defattr(-,root,root)
-%biarchlib libgnarl-*.so
-%biarchlib libgnat-*.so
+%biarchlib libgnarl%{binsuffix}.so
+%biarchlib libgnat%{binsuffix}.so
 %endif
 %endif
 

++++++ gcc44-rename-info-files.patch ++++++
--- /var/tmp/diff_new_pack.sXicRl/_old  2017-05-27 13:09:38.137554412 +0200
+++ /var/tmp/diff_new_pack.sXicRl/_new  2017-05-27 13:09:38.141553847 +0200
@@ -85,9 +85,9 @@
 
 Index: gcc/Makefile.in
 ===================================================================
---- gcc/Makefile.in.orig       2017-02-14 09:35:01.010694197 +0100
-+++ gcc/Makefile.in    2017-02-14 09:35:05.758764358 +0100
-@@ -3057,8 +3057,27 @@ install-no-fixedincludes:
+--- gcc/Makefile.in.orig       2017-03-22 09:07:47.180401238 +0100
++++ gcc/Makefile.in    2017-03-22 09:07:50.212445405 +0100
+@@ -3066,8 +3066,27 @@ install-no-fixedincludes:
  
  doc: $(BUILD_INFO) $(GENERATED_MANPAGES)
  
@@ -117,7 +117,7 @@
  
  info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
  
-@@ -3113,21 +3132,41 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE)
+@@ -3122,21 +3141,41 @@ gcc-vers.texi: $(BASEVER) $(DEVPHASE)
  # patterns.  To use them, put each of the specific targets with its
  # specific dependencies but no build commands.
  
@@ -166,7 +166,7 @@
                        -I $(gcc_docdir)/include -o $@ $<; \
        fi
  
-@@ -3537,11 +3576,11 @@ install-driver: installdirs xgcc$(exeext
+@@ -3555,11 +3594,11 @@ install-driver: installdirs xgcc$(exeext
  # $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir
  # to do the install.
  install-info:: doc installdirs \
@@ -183,7 +183,7 @@
        lang.install-info
  
  $(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
-@@ -3755,8 +3794,11 @@ uninstall: lang.uninstall
+@@ -3780,8 +3819,11 @@ uninstall: lang.uninstall
        -rm -rf $(DESTDIR)$(bindir)/$(GCOV_INSTALL_NAME)$(exeext)
        -rm -rf $(DESTDIR)$(man1dir)/$(GCC_INSTALL_NAME)$(man1ext)
        -rm -rf $(DESTDIR)$(man1dir)/cpp$(man1ext)
@@ -199,8 +199,8 @@
          target_install_name=$(target_noncanonical)-`echo gcc-$$i|sed 
'$(program_transform_name)'`$(exeext) ; \
 Index: gcc/ada/gnat-style.texi
 ===================================================================
---- gcc/ada/gnat-style.texi.orig       2017-02-14 09:35:02.762720086 +0100
-+++ gcc/ada/gnat-style.texi    2017-02-14 09:35:05.786764771 +0100
+--- gcc/ada/gnat-style.texi.orig       2017-03-22 09:07:47.184401296 +0100
++++ gcc/ada/gnat-style.texi    2017-03-22 09:07:50.212445405 +0100
 @@ -31,7 +31,7 @@ Texts.  A copy of the license is include
  
  @dircategory Software development
@@ -212,8 +212,8 @@
  @macro syntax{element}
 Index: gcc/ada/gnat_rm.texi
 ===================================================================
---- gcc/ada/gnat_rm.texi.orig  2017-02-14 09:35:02.770720204 +0100
-+++ gcc/ada/gnat_rm.texi       2017-02-14 09:35:05.794764890 +0100
+--- gcc/ada/gnat_rm.texi.orig  2017-03-22 09:07:47.192401412 +0100
++++ gcc/ada/gnat_rm.texi       2017-03-22 09:07:50.220445522 +0100
 @@ -12,7 +12,7 @@
  @finalout
  @dircategory GNU Ada Tools 
@@ -225,8 +225,8 @@
  @definfoenclose strong,`,'
 Index: gcc/ada/gnat_ugn.texi
 ===================================================================
---- gcc/ada/gnat_ugn.texi.orig 2017-02-14 09:35:02.778720323 +0100
-+++ gcc/ada/gnat_ugn.texi      2017-02-14 09:35:05.798764949 +0100
+--- gcc/ada/gnat_ugn.texi.orig 2017-03-22 09:07:47.200401529 +0100
++++ gcc/ada/gnat_ugn.texi      2017-03-22 09:07:50.224445580 +0100
 @@ -12,7 +12,7 @@
  @finalout
  @dircategory GNU Ada Tools 
@@ -238,8 +238,8 @@
  @definfoenclose strong,`,'
 Index: gcc/doc/cpp.texi
 ===================================================================
---- gcc/doc/cpp.texi.orig      2017-02-14 09:35:02.782720382 +0100
-+++ gcc/doc/cpp.texi   2017-02-14 09:35:05.802765008 +0100
+--- gcc/doc/cpp.texi.orig      2017-03-22 09:07:47.200401529 +0100
++++ gcc/doc/cpp.texi   2017-03-22 09:07:50.228445638 +0100
 @@ -50,7 +50,7 @@ This manual contains no Invariant Sectio
  @ifinfo
  @dircategory Software development
@@ -251,8 +251,8 @@
  
 Index: gcc/doc/cppinternals.texi
 ===================================================================
---- gcc/doc/cppinternals.texi.orig     2017-02-14 09:35:02.782720382 +0100
-+++ gcc/doc/cppinternals.texi  2017-02-14 09:35:05.802765008 +0100
+--- gcc/doc/cppinternals.texi.orig     2017-03-22 09:07:47.200401529 +0100
++++ gcc/doc/cppinternals.texi  2017-03-22 09:07:50.228445638 +0100
 @@ -7,7 +7,7 @@
  @ifinfo
  @dircategory Software development
@@ -264,9 +264,9 @@
  
 Index: gcc/doc/extend.texi
 ===================================================================
---- gcc/doc/extend.texi.orig   2017-02-14 09:35:02.790720500 +0100
-+++ gcc/doc/extend.texi        2017-02-14 09:35:05.806765067 +0100
-@@ -21788,7 +21788,7 @@ want to write code that checks whether t
+--- gcc/doc/extend.texi.orig   2017-03-22 09:07:47.204401587 +0100
++++ gcc/doc/extend.texi        2017-03-22 09:07:50.232445697 +0100
+@@ -21790,7 +21790,7 @@ want to write code that checks whether t
  test for the GNU compiler the same way as for C programs: check for a
  predefined macro @code{__GNUC__}.  You can also use @code{__GNUG__} to
  test specifically for GNU C++ (@pxref{Common Predefined Macros,,
@@ -277,9 +277,9 @@
  * C++ Volatiles::       What constitutes an access to a volatile object.
 Index: gcc/doc/gcc.texi
 ===================================================================
---- gcc/doc/gcc.texi.orig      2017-02-14 09:35:02.790720500 +0100
-+++ gcc/doc/gcc.texi   2017-02-14 09:35:05.806765067 +0100
-@@ -63,10 +63,10 @@ Texts being (a) (see below), and with th
+--- gcc/doc/gcc.texi.orig      2017-03-22 09:07:47.208401645 +0100
++++ gcc/doc/gcc.texi   2017-03-22 09:10:01.702361422 +0100
+@@ -63,11 +63,11 @@ Texts being (a) (see below), and with th
  @ifnottex
  @dircategory Software development
  @direntry
@@ -287,14 +287,16 @@
 -* g++: (gcc).                  The GNU C++ compiler.
 -* gcov: (gcc) Gcov.            @command{gcov}---a test coverage program.
 -* gcov-tool: (gcc) Gcov-tool.  @command{gcov-tool}---an offline gcda profile 
processing program.
+-* gcov-dump: (gcc) Gcov-dump.  @command{gcov-dump}---an offline gcda and gcno 
profile dump tool.
 +* @value{fngcc}: (@value{fngcc}).                  The GNU Compiler 
Collection.
-+* @value{fngxx}: (@value{fngxx}).                  The GNU C++ compiler.
++* @value{fngxx}: (@value{fngcc}).                  The GNU C++ compiler.
 +* gcov: (@value{fngcc}) Gcov.            @command{gcov}---a test coverage 
program.
 +* gcov-tool: (@value{fngcc}) Gcov-tool.  @command{gcov-tool}---an offline 
gcda profile processing program.
++* gcov-dump: (@value{fngcc}) Gcov-dump.  @command{gcov-dump}---an offline 
gcda and gcno profile dump tool.
  @end direntry
  This file documents the use of the GNU compilers.
  @sp 1
-@@ -126,7 +126,7 @@ version @value{version-GCC}.
+@@ -127,7 +127,7 @@ version @value{version-GCC}.
  The internals of the GNU compilers, including how to port them to new
  targets and some information about how to write front ends for new
  languages, are documented in a separate manual.  @xref{Top,,
@@ -305,8 +307,8 @@
  * G++ and GCC::     You can compile C or C++ programs.
 Index: gcc/doc/gccint.texi
 ===================================================================
---- gcc/doc/gccint.texi.orig   2017-02-14 09:35:02.790720500 +0100
-+++ gcc/doc/gccint.texi        2017-02-14 09:35:05.806765067 +0100
+--- gcc/doc/gccint.texi.orig   2017-03-22 09:07:47.208401645 +0100
++++ gcc/doc/gccint.texi        2017-03-22 09:07:50.232445697 +0100
 @@ -49,7 +49,7 @@ Texts being (a) (see below), and with th
  @ifnottex
  @dircategory Software development
@@ -327,8 +329,8 @@
  This manual is mainly a reference manual rather than a tutorial.  It
 Index: gcc/doc/install.texi
 ===================================================================
---- gcc/doc/install.texi.orig  2017-02-14 09:35:02.794720559 +0100
-+++ gcc/doc/install.texi       2017-02-14 09:35:05.806765067 +0100
+--- gcc/doc/install.texi.orig  2017-03-22 09:07:47.208401645 +0100
++++ gcc/doc/install.texi       2017-03-22 09:07:50.232445697 +0100
 @@ -94,7 +94,7 @@ Free Documentation License}''.
  @end ifinfo
  @dircategory Software development
@@ -340,9 +342,9 @@
  @c Part 3 Titlepage and Copyright
 Index: gcc/doc/invoke.texi
 ===================================================================
---- gcc/doc/invoke.texi.orig   2017-02-14 09:35:02.806720736 +0100
-+++ gcc/doc/invoke.texi        2017-02-14 09:35:05.814765185 +0100
-@@ -7185,7 +7185,7 @@ the standard calling sequence automatica
+--- gcc/doc/invoke.texi.orig   2017-03-22 09:07:47.216401762 +0100
++++ gcc/doc/invoke.texi        2017-03-22 09:07:50.240445813 +0100
+@@ -7215,7 +7215,7 @@ the standard calling sequence automatica
  and nothing is saved by pretending it doesn't exist.  The
  machine-description macro @code{FRAME_POINTER_REQUIRED} controls
  whether a target machine supports this flag.  @xref{Registers,,Register
@@ -351,7 +353,7 @@
  
  The default setting (when not optimizing for
  size) for 32-bit GNU/Linux x86 and 32-bit Darwin x86 targets is
-@@ -11571,7 +11571,7 @@ One of the standard libraries bypassed b
+@@ -11601,7 +11601,7 @@ One of the standard libraries bypassed b
  @option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
  which GCC uses to overcome shortcomings of particular machines, or special
  needs for some languages.
@@ -360,7 +362,7 @@
  Collection (GCC) Internals},
  for more discussion of @file{libgcc.a}.)
  In most cases, you need @file{libgcc.a} even when you want to avoid
-@@ -11580,7 +11580,7 @@ or @option{-nodefaultlibs} you should us
+@@ -11610,7 +11610,7 @@ or @option{-nodefaultlibs} you should us
  This ensures that you have no unresolved references to internal GCC
  library subroutines.
  (An example of such an internal subroutine is @code{__main}, used to ensure 
C++
@@ -369,7 +371,7 @@
  GNU Compiler Collection (GCC) Internals}.)
  
  @item -pie
-@@ -26458,7 +26458,7 @@ Note that you can also specify places to
+@@ -26503,7 +26503,7 @@ Note that you can also specify places to
  @option{-B}, @option{-I} and @option{-L} (@pxref{Directory Options}).  These
  take precedence over places specified using environment variables, which
  in turn take precedence over those specified by the configuration of GCC@.
@@ -378,7 +380,7 @@
  GNU Compiler Collection (GCC) Internals}.
  
  @table @env
-@@ -26618,7 +26618,7 @@ the headers it contains change.
+@@ -26663,7 +26663,7 @@ the headers it contains change.
  
  A precompiled header file is searched for when @code{#include} is
  seen in the compilation.  As it searches for the included file
@@ -389,8 +391,8 @@
  the name specified in the @code{#include} with @samp{.gch} appended.  If
 Index: gcc/doc/libgcc.texi
 ===================================================================
---- gcc/doc/libgcc.texi.orig   2017-02-14 09:35:02.810720795 +0100
-+++ gcc/doc/libgcc.texi        2017-02-14 09:35:05.814765185 +0100
+--- gcc/doc/libgcc.texi.orig   2017-03-22 09:07:47.220401820 +0100
++++ gcc/doc/libgcc.texi        2017-03-22 09:07:50.240445813 +0100
 @@ -24,7 +24,7 @@ that needs them.
  GCC will also generate calls to C library routines, such as
  @code{memcpy} and @code{memset}, in some cases.  The set of routines
@@ -402,8 +404,8 @@
  mode, not a specific C type.  @xref{Machine Modes}, for an explanation
 Index: gcc/fortran/Make-lang.in
 ===================================================================
---- gcc/fortran/Make-lang.in.orig      2017-02-14 09:35:02.810720795 +0100
-+++ gcc/fortran/Make-lang.in   2017-02-14 09:35:05.814765185 +0100
+--- gcc/fortran/Make-lang.in.orig      2017-03-22 09:07:47.220401820 +0100
++++ gcc/fortran/Make-lang.in   2017-03-22 09:07:50.240445813 +0100
 @@ -114,7 +114,8 @@ fortran.tags: force
        cd $(srcdir)/fortran; etags -o TAGS.sub *.c *.h; \
        etags --include TAGS.sub --include ../TAGS.sub
@@ -447,8 +449,8 @@
  # Clean hooks:
 Index: gcc/fortran/gfortran.texi
 ===================================================================
---- gcc/fortran/gfortran.texi.orig     2017-02-14 09:35:02.814720854 +0100
-+++ gcc/fortran/gfortran.texi  2017-02-14 09:35:05.814765185 +0100
+--- gcc/fortran/gfortran.texi.orig     2017-03-22 09:07:47.220401820 +0100
++++ gcc/fortran/gfortran.texi  2017-03-22 09:07:50.244445871 +0100
 @@ -101,7 +101,7 @@ Texts being (a) (see below), and with th
  @ifinfo
  @dircategory Software development
@@ -460,8 +462,8 @@
  the GNU Fortran compiler, (@command{gfortran}).
 Index: libffi/Makefile.am
 ===================================================================
---- libffi/Makefile.am.orig    2017-02-14 09:35:02.814720854 +0100
-+++ libffi/Makefile.am 2017-02-14 09:35:05.814765185 +0100
+--- libffi/Makefile.am.orig    2017-03-22 09:07:47.220401820 +0100
++++ libffi/Makefile.am 2017-03-22 09:07:50.244445871 +0100
 @@ -25,6 +25,8 @@ TEXINFO_TEX   = ../gcc/doc/include/texin
  # Defines info, dvi, pdf and html targets
  MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
@@ -496,8 +498,8 @@
  ## ################################################################
 Index: libffi/Makefile.in
 ===================================================================
---- libffi/Makefile.in.orig    2017-02-14 09:35:02.814720854 +0100
-+++ libffi/Makefile.in 2017-02-14 09:35:05.818765244 +0100
+--- libffi/Makefile.in.orig    2017-03-22 09:07:47.224401878 +0100
++++ libffi/Makefile.in 2017-03-22 09:07:50.244445871 +0100
 @@ -158,7 +158,6 @@ MULTIDIRS =
  MULTISUBDIR = 
  MULTIDO = true
@@ -546,8 +548,8 @@
  @LIBAT_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE@      
          $(libffi_la_OBJECTS) $(libffi_la_LIBADD)
 Index: libffi/doc/libffi.texi
 ===================================================================
---- libffi/doc/libffi.texi.orig        2017-02-14 09:35:02.814720854 +0100
-+++ libffi/doc/libffi.texi     2017-02-14 09:35:05.818765244 +0100
+--- libffi/doc/libffi.texi.orig        2017-03-22 09:07:47.224401878 +0100
++++ libffi/doc/libffi.texi     2017-03-22 09:07:50.244445871 +0100
 @@ -33,7 +33,7 @@ section entitled ``GNU General Public Li
  
  @dircategory Development
@@ -559,8 +561,8 @@
  @titlepage
 Index: libgomp/Makefile.am
 ===================================================================
---- libgomp/Makefile.am.orig   2017-02-14 09:35:02.814720854 +0100
-+++ libgomp/Makefile.am        2017-02-14 09:35:05.818765244 +0100
+--- libgomp/Makefile.am.orig   2017-03-22 09:07:47.224401878 +0100
++++ libgomp/Makefile.am        2017-03-22 09:07:50.244445871 +0100
 @@ -125,16 +125,19 @@ endif
  
  all-local: $(STAMP_GENINSRC)
@@ -588,8 +590,8 @@
  MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
 Index: libgomp/Makefile.in
 ===================================================================
---- libgomp/Makefile.in.orig   2017-02-14 09:35:02.814720854 +0100
-+++ libgomp/Makefile.in        2017-02-14 09:35:05.818765244 +0100
+--- libgomp/Makefile.in.orig   2017-03-22 09:07:47.224401878 +0100
++++ libgomp/Makefile.in        2017-03-22 09:07:50.244445871 +0100
 @@ -487,7 +487,8 @@ info_TEXINFOS = libgomp.texi
  
  # AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
@@ -624,8 +626,8 @@
  # Tell versions [3.59,3.63) of GNU make to not export all variables.
 Index: libgomp/libgomp.texi
 ===================================================================
---- libgomp/libgomp.texi.orig  2017-02-14 09:35:02.818720914 +0100
-+++ libgomp/libgomp.texi       2017-02-14 09:35:05.818765244 +0100
+--- libgomp/libgomp.texi.orig  2017-03-22 09:07:47.224401878 +0100
++++ libgomp/libgomp.texi       2017-03-22 09:07:50.244445871 +0100
 @@ -31,7 +31,7 @@ texts being (a) (see below), and with th
  @ifinfo
  @dircategory GNU Libraries
@@ -637,8 +639,8 @@
  This manual documents libgomp, the GNU Offloading and Multi Processing
 Index: libitm/libitm.texi
 ===================================================================
---- libitm/libitm.texi.orig    2017-02-14 09:35:02.818720914 +0100
-+++ libitm/libitm.texi 2017-02-14 09:35:05.818765244 +0100
+--- libitm/libitm.texi.orig    2017-03-22 09:07:47.224401878 +0100
++++ libitm/libitm.texi 2017-03-22 09:07:50.244445871 +0100
 @@ -20,7 +20,7 @@ Free Documentation License''.
  @ifinfo
  @dircategory GNU Libraries
@@ -650,8 +652,8 @@
  This manual documents the GNU Transactional Memory Library.
 Index: libquadmath/libquadmath.texi
 ===================================================================
---- libquadmath/libquadmath.texi.orig  2017-02-14 09:35:02.818720914 +0100
-+++ libquadmath/libquadmath.texi       2017-02-14 09:35:05.818765244 +0100
+--- libquadmath/libquadmath.texi.orig  2017-03-22 09:07:47.224401878 +0100
++++ libquadmath/libquadmath.texi       2017-03-22 09:07:50.244445871 +0100
 @@ -25,7 +25,7 @@ copy and modify this GNU manual.
  @ifinfo
  @dircategory GNU Libraries

++++++ gcc7-pr80593.patch ++++++
2017-05-18  Richard Biener  <rguent...@suse.de>

        PR c++/80593
        * c-warn.c (strict_aliasing_warning): Do not warn for accesses
        to alias-set zero memory.

        * g++.dg/warn/Wstrict-aliasing-bogus-char-2.C: New testcase.
        * g++.dg/warn/Wstrict-aliasing-6.C: Adjust expected outcome.

Index: gcc/c-family/c-warn.c
===================================================================
--- gcc/c-family/c-warn.c       (revision 248179)
+++ gcc/c-family/c-warn.c       (working copy)
@@ -537,10 +537,10 @@ strict_aliasing_warning (tree otype, tre
            = get_alias_set (TREE_TYPE (TREE_OPERAND (expr, 0)));
          alias_set_type set2 = get_alias_set (TREE_TYPE (type));
 
-         if (set1 != set2 && set2 != 0
-             && (set1 == 0
-                 || (!alias_set_subset_of (set2, set1)
-                     && !alias_sets_conflict_p (set1, set2))))
+         if (set2 != 0
+             && set1 != set2
+             && !alias_set_subset_of (set2, set1)
+             && !alias_sets_conflict_p (set1, set2))
            {
              warning (OPT_Wstrict_aliasing, "dereferencing type-punned "
                       "pointer will break strict-aliasing rules");
Index: gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-char-2.C
===================================================================
--- gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-char-2.C   (nonexistent)
+++ gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-char-2.C   (working copy)
@@ -0,0 +1,19 @@
+// { dg-do compile }
+// { dg-options "-O2 -Wstrict-aliasing" }
+
+template<unsigned _Len, unsigned _Align>
+struct aligned_storage
+{
+  union type
+    {
+      unsigned char __data[_Len];
+      struct __attribute__((__aligned__((_Align)))) { } __align;
+    };
+};
+
+aligned_storage<sizeof(int), __alignof__(int)>::type storage;
+
+int main()
+{
+  *reinterpret_cast<int*>(&storage) = 42; // { dg-bogus "break 
strict-aliasing" }
+}
Index: gcc/testsuite/g++.dg/warn/Wstrict-aliasing-6.C
===================================================================
--- gcc/testsuite/g++.dg/warn/Wstrict-aliasing-6.C      (revision 248179)
+++ gcc/testsuite/g++.dg/warn/Wstrict-aliasing-6.C      (working copy)
@@ -4,6 +4,6 @@
 int foo ()
 {
   char buf[8];
-  return *((int *)buf); /* { dg-warning "strict-aliasing" } */
+  return *((int *)buf); /* { dg-bogus "strict-aliasing" } */
 }
 
++++++ gcc7-remove-Wexpansion-to-defined-from-Wextra.patch ++++++
Index: gcc/c-family/c.opt
===================================================================
--- gcc/c-family/c.opt  (revision 246224)
+++ gcc/c-family/c.opt  (working copy)
@@ -596,7 +596,7 @@ C ObjC C++ ObjC++ Var(warn_double_promot
 Warn about implicit conversions from \"float\" to \"double\".
 
 Wexpansion-to-defined
-C ObjC C++ ObjC++ CPP(warn_expansion_to_defined) 
CppReason(CPP_W_EXPANSION_TO_DEFINED) Var(cpp_warn_expansion_to_defined) 
Init(0) Warning EnabledBy(Wextra || Wpedantic)
+C ObjC C++ ObjC++ CPP(warn_expansion_to_defined) 
CppReason(CPP_W_EXPANSION_TO_DEFINED) Var(cpp_warn_expansion_to_defined) 
Init(0) Warning EnabledBy(Wpedantic)
 Warn if \"defined\" is used outside #if.
 
 Wimplicit-function-declaration

Reply via email to