------- Comment #5 from aph at gcc dot gnu dot org 2006-05-26 10:20 -------
I have found the real cause of these weird non-nested variable ranges.
It's because ecj reorganizes for loops in this way:
for (a; b; c)
{
foo;
}
becomes
goto barf;
do
{
foo;
c;
barf:
a;
if (!b)
goto x;
} forever;
x:
And this movement of the for body causes variable ranges to be discontinuous.
Duplicate variable definitions are issued.
It would be very nice if ecj could be prevented from doing this, at least for
the purpose of acting as a gcj front end.
--
aph at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |ASSIGNED
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2006-05-26 10:20:22
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27756