On 15.09.20 17:02, Stefan Schulze Frielinghaus wrote: > Over the last couple of months quite a few warnings about uninitialized > variables were raised while building GCC. A reason why these warnings > show up on S/390 only is due to the aggressive inlining settings here. > Some of these warnings (2c832ffedf0, b776bdca932, 2786c0221b6, > 1657178f59b) could be fixed or in case of a false positive silenced by > initializing the corresponding variable. Since the latter reoccurs and > while bootstrapping such warnings are turned into errors bootstrapping > fails on S/390 consistently. Therefore, for the moment do not turn > those warnings into errors. > > config/ChangeLog: > > * warnings.m4: Do not turn maybe-uninitialized warnings into errors > on S/390. > > fixincludes/ChangeLog: > > * configure: Regenerate. > > gcc/ChangeLog: > > * configure: Regenerate. > > libcc1/ChangeLog: > > * configure: Regenerate. > > libcpp/ChangeLog: > > * configure: Regenerate. > > libdecnumber/ChangeLog: > > * configure: Regenerate.
That change looks good to me. Could a global reviewer please comment! Andreas > --- > config/warnings.m4 | 20 ++++++++++++++------ > fixincludes/configure | 8 +++++++- > gcc/configure | 12 +++++++++--- > libcc1/configure | 8 +++++++- > libcpp/configure | 8 +++++++- > libdecnumber/configure | 8 +++++++- > 6 files changed, 51 insertions(+), 13 deletions(-) > > diff --git a/config/warnings.m4 b/config/warnings.m4 > index ce007f9b73e..d977bfb20af 100644 > --- a/config/warnings.m4 > +++ b/config/warnings.m4 > @@ -101,8 +101,10 @@ AC_ARG_ENABLE(werror-always, > AS_HELP_STRING([--enable-werror-always], > [enable -Werror despite compiler version]), > [], [enable_werror_always=no]) > -AS_IF([test $enable_werror_always = yes], > - [acx_Var="$acx_Var${acx_Var:+ }-Werror"]) > +AS_IF([test $enable_werror_always = yes], [dnl > + acx_Var="$acx_Var${acx_Var:+ }-Werror" > + AS_CASE([$host], [s390*-*-*], > + [acx_Var="$acx_Var -Wno-error=maybe-uninitialized"])]) > m4_if($1, [manual],, > [AS_VAR_PUSHDEF([acx_GCCvers], [acx_cv_prog_cc_gcc_$1_or_newer])dnl > AC_CACHE_CHECK([whether $CC is GCC >=$1], acx_GCCvers, > @@ -116,7 +118,9 @@ AS_IF([test $enable_werror_always = yes], > [AS_VAR_SET(acx_GCCvers, yes)], > [AS_VAR_SET(acx_GCCvers, no)])]) > AS_IF([test AS_VAR_GET(acx_GCCvers) = yes], > - [acx_Var="$acx_Var${acx_Var:+ }-Werror"]) > + [acx_Var="$acx_Var${acx_Var:+ }-Werror" > + AS_CASE([$host], [s390*-*-*], > + [acx_Var="$acx_Var -Wno-error=maybe-uninitialized"])]) > AS_VAR_POPDEF([acx_GCCvers])]) > m4_popdef([acx_Var])dnl > AC_LANG_POP(C) > @@ -205,8 +209,10 @@ AC_ARG_ENABLE(werror-always, > AS_HELP_STRING([--enable-werror-always], > [enable -Werror despite compiler version]), > [], [enable_werror_always=no]) > -AS_IF([test $enable_werror_always = yes], > - [acx_Var="$acx_Var${acx_Var:+ }-Werror"]) > +AS_IF([test $enable_werror_always = yes], [dnl > + acx_Var="$acx_Var${acx_Var:+ }-Werror" > + AS_CASE([$host], [s390*-*-*], > + [strict_warn="$strict_warn -Wno-error=maybe-uninitialized"])]) > m4_if($1, [manual],, > [AS_VAR_PUSHDEF([acx_GXXvers], [acx_cv_prog_cxx_gxx_$1_or_newer])dnl > AC_CACHE_CHECK([whether $CXX is G++ >=$1], acx_GXXvers, > @@ -220,7 +226,9 @@ AS_IF([test $enable_werror_always = yes], > [AS_VAR_SET(acx_GXXvers, yes)], > [AS_VAR_SET(acx_GXXvers, no)])]) > AS_IF([test AS_VAR_GET(acx_GXXvers) = yes], > - [acx_Var="$acx_Var${acx_Var:+ }-Werror"]) > + [acx_Var="$acx_Var${acx_Var:+ }-Werror" > + AS_CASE([$host], [s390*-*-*], > + [acx_Var="$acx_Var -Wno-error=maybe-uninitialized"])]) > AS_VAR_POPDEF([acx_GXXvers])]) > m4_popdef([acx_Var])dnl > AC_LANG_POP(C++) > diff --git a/fixincludes/configure b/fixincludes/configure > index 6e2d67b655b..e0d679cc18e 100755 > --- a/fixincludes/configure > +++ b/fixincludes/configure > @@ -4753,7 +4753,13 @@ else > fi > > if test $enable_werror_always = yes; then : > - WERROR="$WERROR${WERROR:+ }-Werror" > + WERROR="$WERROR${WERROR:+ }-Werror" > + case $host in #( > + s390*-*-*) : > + WERROR="$WERROR -Wno-error=maybe-uninitialized" ;; #( > + *) : > + ;; > +esac > fi > > ac_ext=c > diff --git a/gcc/configure b/gcc/configure > index 0a09777dd42..ea03581537a 100755 > --- a/gcc/configure > +++ b/gcc/configure > @@ -7064,7 +7064,13 @@ else > fi > > if test $enable_werror_always = yes; then : > - strict_warn="$strict_warn${strict_warn:+ }-Werror" > + strict_warn="$strict_warn${strict_warn:+ }-Werror" > + case $host in #( > + s390*-*-*) : > + strict_warn="$strict_warn -Wno-error=maybe-uninitialized" ;; #( > + *) : > + ;; > +esac > fi > > ac_ext=cpp > @@ -19013,7 +19019,7 @@ else > lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 > lt_status=$lt_dlunknown > cat > conftest.$ac_ext <<_LT_EOF > -#line 19016 "configure" > +#line 19022 "configure" > #include "confdefs.h" > > #if HAVE_DLFCN_H > @@ -19119,7 +19125,7 @@ else > lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 > lt_status=$lt_dlunknown > cat > conftest.$ac_ext <<_LT_EOF > -#line 19122 "configure" > +#line 19128 "configure" > #include "confdefs.h" > > #if HAVE_DLFCN_H > diff --git a/libcc1/configure b/libcc1/configure > index 3610219ba65..e95274d0d46 100755 > --- a/libcc1/configure > +++ b/libcc1/configure > @@ -14835,7 +14835,13 @@ else > fi > > if test $enable_werror_always = yes; then : > - WERROR="$WERROR${WERROR:+ }-Werror" > + WERROR="$WERROR${WERROR:+ }-Werror" > + case $host in #( > + s390*-*-*) : > + WERROR="$WERROR -Wno-error=maybe-uninitialized" ;; #( > + *) : > + ;; > +esac > fi > > ac_ext=c > diff --git a/libcpp/configure b/libcpp/configure > index 7e28606f605..db378c363ee 100755 > --- a/libcpp/configure > +++ b/libcpp/configure > @@ -5142,7 +5142,13 @@ else > fi > > if test $enable_werror_always = yes; then : > - WERROR="$WERROR${WERROR:+ }-Werror" > + WERROR="$WERROR${WERROR:+ }-Werror" > + case $host in #( > + s390*-*-*) : > + WERROR="$WERROR -Wno-error=maybe-uninitialized" ;; #( > + *) : > + ;; > +esac > fi > > ac_ext=c > diff --git a/libdecnumber/configure b/libdecnumber/configure > index 6b62f8ba665..7035aef58dd 100755 > --- a/libdecnumber/configure > +++ b/libdecnumber/configure > @@ -3661,7 +3661,13 @@ else > fi > > if test $enable_werror_always = yes; then : > - WERROR="$WERROR${WERROR:+ }-Werror" > + WERROR="$WERROR${WERROR:+ }-Werror" > + case $host in #( > + s390*-*-*) : > + WERROR="$WERROR -Wno-error=maybe-uninitialized" ;; #( > + *) : > + ;; > +esac > fi > > ac_ext=c >