This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [gcc-in-cxx] bootstrap fails
- From: Ian Lance Taylor <iant at google dot com>
- To: Jerry Quinn <jlquinn at optonline dot net>
- Cc: gcc at gcc dot gnu dot org
- Date: Sat, 21 Mar 2009 16:00:41 -0700
- Subject: Re: [gcc-in-cxx] bootstrap fails
- References: <49C568CA.7010301@optonline.net>
Jerry Quinn <jlquinn@optonline.net> writes:
> I just tried to bootstrap the gcc-in-cxx branch, but it fails in stage
> 2. If I expand the macros, the code looks OK to me.
>
> Any suggestions on how to go about tracking this down (if someone else
> doesn't get there first)?
Tobias SchlÃter saw the same thing; I don't know why I don't see it.
> ../.././gcc/config/i386/i386.c:3282: error: comparison is always true
> due to limited range of data type
#define IN_RANGE(VALUE, LOWER, UPPER) \
((unsigned HOST_WIDE_INT) (VALUE) - (unsigned HOST_WIDE_INT) (LOWER) \
<= (unsigned HOST_WIDE_INT) (UPPER) - (unsigned HOST_WIDE_INT) (LOWER))
enum processor_type
{
PROCESSOR_I386 = 0, /* 80386 */
PROCESSOR_I486, /* 80486DX, 80486SX, 80486DX[24] */
PROCESSOR_PENTIUM,
PROCESSOR_PENTIUMPRO,
PROCESSOR_GEODE,
PROCESSOR_K6,
PROCESSOR_ATHLON,
PROCESSOR_PENTIUM4,
PROCESSOR_K8,
PROCESSOR_NOCONA,
PROCESSOR_CORE2,
PROCESSOR_GENERIC32,
PROCESSOR_GENERIC64,
PROCESSOR_AMDFAM10,
PROCESSOR_max
};
enum processor_type ix86_arch;
gcc_assert (IN_RANGE (ix86_arch, 0, 255));
It all looks fine to me.
The way to track this down is to run g++ with the -v option, run gdb on
cc1plus, break on warning when opt == OPT_Wtype_limits, and see where
the warning is coming from and why.
Ian