c/9163: ICE in genrtl_compound_stmt at c-semantics.c:776 with c99 mode

ehrhardt@mathematik.uni-ulm.de ehrhardt@mathematik.uni-ulm.de
Fri Jan 3 23:06:00 GMT 2003


>Number:         9163
>Category:       c
>Synopsis:       ICE in genrtl_compound_stmt at c-semantics.c:776 with c99 mode
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-illegal-code
>Submitter-Id:   net
>Arrival-Date:   Fri Jan 03 15:06:00 PST 2003
>Closed-Date:
>Last-Modified:
>Originator:     Christian Ehrhardt
>Release:        3.2.2,3.3,3.4
>Organization:
>Environment:
Tested with 3.2.2, 3.3 and 3.4 on sparc-sun-solaris and with very recent
3.4 on x86-linux.
>Description:

The following code snippet ICEs with 3.2.2, 3.3 and 3.4, 3.2-release
issued an error, i.e. this is a regression. Compile with -std=c99!

void f ()
{
	for (; int ; );
}

The ICE doesn't happen in c89 mode and is probably related to
c99 blocks because this produces the same ICE:

void foo ()
{
        while (int i);
}

ehrhardt@huon:~ > ~/gcc/install/bin/gcc -std=c99 var2.c
var2.c: In function `foo':
var2.c:3: error: parse error before "int"
var2.c:4: internal compiler error: in genrtl_compound_stmt, at c-semantics.c:726
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.

>How-To-Repeat:
See above.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the Gcc-bugs mailing list