This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/36108] New: [4.4 Regression]: revision 134865 breaks gcc bootstrap
- From: "hjl dot tools at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 2 May 2008 12:42:34 -0000
- Subject: [Bug bootstrap/36108] New: [4.4 Regression]: revision 134865 breaks gcc bootstrap
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Revision 134865:
http://gcc.gnu.org/ml/gcc-patches/2008-04/msg01945.html
breaks gcc bootstrap:
cc1: warnings being treated as errors
/export/gnu/src/gcc/gcc/gcc/real.c: In function ?real_to_integer2?:
/export/gnu/src/gcc/gcc/gcc/real.c:1387: error: array subscript is negative
/export/gnu/src/gcc/gcc/gcc/real.c: In function ?real_from_integer?:
/export/gnu/src/gcc/gcc/gcc/real.c:2066: error: array subscript is negative
make[5]: *** [real.o] Error 1
make[5]: *** Waiting for unfinished jobs....
The code looks like
if ((8 * 8) == (8 * 8))
{
high = t.sig[((128 + (8 * 8)) / (8 * 8))-1];
low = t.sig[((128 + (8 * 8)) / (8 * 8))-2];
}
else
{
((void)(!((8 * 8) == 2*(8 * 8)) ? fancy_abort
("/export/gnu/src/gcc/gcc/gcc/real.c", 1380, __FUNCTION__), 0 : 0));
high = t.sig[((128 + (8 * 8)) / (8 * 8))-1];
high = high << ((8 * 8) - 1) << 1;
high |= t.sig[((128 + (8 * 8)) / (8 * 8))-2];
low = t.sig[((128 + (8 * 8)) / (8 * 8))-3];
low = low << ((8 * 8) - 1) << 1;
low |= t.sig[((128 + (8 * 8)) / (8 * 8))-4];
}
We have
low |= t.sig[((128 + (8 * 8)) / (8 * 8))-4];
which is
low |= t.sig[-1];
But it never reached.
--
Summary: [4.4 Regression]: revision 134865 breaks gcc bootstrap
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Severity: blocker
Priority: P3
Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36108