[Bug fortran/46678] [4.6 Regression] Wrong code with strings
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Nov 27 10:21:00 GMT 2010
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46678
--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> 2010-11-27 09:45:41 UTC ---
> If one looks at the original dump, the only difference is nesting:
>
> the working version has:
>
> {
> // setup .string and other initialization
> }
> [...]
> }
>
>
> the failing version uses:
>
> {
> // setup .string and other initialization
> [...]
> }
> }
I got that swapped around. Correct is: In working version the .string is set in
a block which stretches the whole function / try_block while in the failing
version it is in a separate block. That indicates an extra/too early
finish_block() rather than one too much.
While it makes a bit more sense, I admittedly still fail to understand why
int .string
{
.string = 4
}
// use .string
fails whereas the following works:
int .string
{
.string = 4
// use .string
}
More information about the Gcc-bugs
mailing list