This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [BUILDROBOT][PATCH] Fix warnings in the mep-elf target


On Thu, Aug 28, 2014 at 3:00 PM, Jan-Benedict Glaw <jbglaw@lug-owl.de> wrote:
> Hi!
>
> The following patch silences two warnings in the mep-elf target,
> fixing the config-list.mk build:


I thought -Werror was only on when the versions of GCC match.

Thanks,
Andrew

>
>
> First one:
> ~~~~~~~~~~
> g++ -c  -DIN_GCC_FRONTEND -DIN_GCC_FRONTEND -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common  -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I/opt/cfarm/mpc/include  -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I../../../gcc/gcc/../libbacktrace -DCLOOG_INT_GMP  -DCLOOG_INT_GMP   -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I/opt/cfarm/mpc/include  -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I../../../gcc/gcc/../libbacktrace -DCLOOG_INT_GMP  -DCLOOG_INT_GMP  ../../../gcc/gcc/config/mep/mep-pragma.c
> ../../../gcc/gcc/config/mep/mep-pragma.c: In function âvoid mep_pragma_coprocessor(cpp_reader*)â:
> ../../../gcc/gcc/config/mep/mep-pragma.c:271:18: error: ârclassâ may be used uninitialized in this function [-Werror=maybe-uninitialized]
>    enum reg_class rclass;
>                   ^
> cc1plus: all warnings being treated as errors
> make[2]: *** [mep-pragma.o] Error 1
>
>
> This is actually a misbehavior of current GCC, the code itself looks 100% okay
> to me.  Shall I report that as a bug, too?
>
>
>
> Second one:
> ~~~~~~~~~~~
> g++ -c   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common  -DHAVE_CONFIG_H -I. -I. -I../../../gcc/gcc -I../../../gcc/gcc/. -I../../../gcc/gcc/../include -I../../../gcc/gcc/../libcpp/include -I/opt/cfarm/mpc/include  -I../../../gcc/gcc/../libdecnumber -I../../../gcc/gcc/../libdecnumber/dpd -I../libdecnumber -I../../../gcc/gcc/../libbacktrace    -o mep.o -MT mep.o -MMD -MP -MF ./.deps/mep.TPo ../../../gcc/gcc/config/mep/mep.c
> ../../../gcc/gcc/config/mep/mep.c:3448:0: error: "VECTOR_TYPE_P" redefined [-Werror]
>  #define VECTOR_TYPE_P(t) (TREE_CODE(t) == VECTOR_TYPE)
>  ^
> In file included from ../../../gcc/gcc/config/mep/mep.c:26:0:
> ../../../gcc/gcc/tree.h:474:0: note: this is the location of the previous definition
>  #define VECTOR_TYPE_P(TYPE) (TREE_CODE (TYPE) == VECTOR_TYPE)
>  ^
> cc1plus: all warnings being treated as errors
> make[2]: *** [mep.o] Error 1
>
>
>
>
>
> This patch should fix it. Okay to apply?
>
>
> 2014-08-28  Jan-Benedict Glaw  <jbglaw@lug-owl.de>
>
>         * config/mep/mep-pragma.c (mep_pragma_coprocessor_subclass): Rework
>         to silence warning.
>         * config/mep/mep.c (VECTOR_TYPE_P): Remove duplicate definition.
>
>
> diff --git a/gcc/config/mep/mep-pragma.c b/gcc/config/mep/mep-pragma.c
> index 632e92d..7bda297 100644
> --- a/gcc/config/mep/mep-pragma.c
> +++ b/gcc/config/mep/mep-pragma.c
> @@ -274,24 +274,21 @@ mep_pragma_coprocessor_subclass (void)
>    if (type != CPP_CHAR)
>      goto syntax_error;
>    class_letter = tree_to_uhwi (val);
> -  if (class_letter >= 'A' && class_letter <= 'D')
> -    switch (class_letter)
> -      {
> -      case 'A':
> -       rclass = USER0_REGS;
> -       break;
> -      case 'B':
> -       rclass = USER1_REGS;
> -       break;
> -      case 'C':
> -       rclass = USER2_REGS;
> -       break;
> -      case 'D':
> -       rclass = USER3_REGS;
> -       break;
> -      }
> -  else
> +  switch (class_letter)
>      {
> +    case 'A':
> +      rclass = USER0_REGS;
> +      break;
> +    case 'B':
> +      rclass = USER1_REGS;
> +      break;
> +    case 'C':
> +      rclass = USER2_REGS;
> +      break;
> +    case 'D':
> +      rclass = USER3_REGS;
> +      break;
> +    default:
>        error ("#pragma GCC coprocessor subclass letter must be in [ABCD]");
>        return;
>      }
> diff --git a/gcc/config/mep/mep.c b/gcc/config/mep/mep.c
> index 3c71b95..eb0adf8 100644
> --- a/gcc/config/mep/mep.c
> +++ b/gcc/config/mep/mep.c
> @@ -3445,8 +3445,6 @@ mep_expand_builtin_saveregs (void)
>    return XEXP (regbuf, 0);
>  }
>
> -#define VECTOR_TYPE_P(t) (TREE_CODE(t) == VECTOR_TYPE)
> -
>  static tree
>  mep_build_builtin_va_list (void)
>  {
>
>
> MfG, JBG
>
> --
>       Jan-Benedict Glaw      jbglaw@lug-owl.de              +49-172-7608481
>  Signature of:                      http://perl.plover.com/Questions.html
>  the second  :


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]