[lto] Fix bootstrap failure
Doug Kwan (關振德)
dougkwan@google.com
Thu Sep 4 17:55:00 GMT 2008
Thanks for fixing that. Unfortunately enum is not always unsigned:
C99 6.7.2.2 (3)
Each enumerated type shall be compatible with an integer type. The
choice of type is
implementation-defined,99) but shall be capable of representing the
values of all the
members of the enumeration. The enumerated type is incomplete until
after the}that
terminates the list of enumerator declarations.
Removing the test is fine but it will not catch an error if some
version of gcc picks a signed type to represent the enums. Maybe we
should cast it to unsigned first and then test like:
gcc_assert ((unsigned) reason < CIF_N_REASON);
-Doug
2008/9/4 Diego Novillo <dnovillo@google.com>:
> No need to assert that an unsigned is >= 0. This was causing a Werror
> failure during stage2.
>
>
> Tested on x86_64. Committed.
>
>
> Diego.
>
> 2008-09-04 Diego Novillo <dnovillo@google.com>
>
> * cgraph.c (cgraph_inlined_failed_string): Fix always
> true comparison.
>
>
> Index: cgraph.c
> ===================================================================
> --- cgraph.c (revision 139983)
> +++ cgraph.c (working copy)
> @@ -1561,7 +1561,7 @@ cgraph_inline_failed_string (cgraph_inli
> #include "cif-code.def"
> };
>
> - gcc_assert (reason >= CIF_OK && reason < CIF_N_REASONS);
> + gcc_assert (reason < CIF_N_REASONS);
> return cif_string_table[reason];
> }
>
More information about the Gcc-patches
mailing list