C99 parsing error?
Falk Hueffner
falk.hueffner@student.uni-tuebingen.de
Sun May 18 15:22:00 GMT 2003
Jamie Lokier <jamie@shareable.org> writes:
> Is it really not permitted to write this in C99?:
>
> while (--length >= 0)
> {
> loop:
> int byte = *data++;
>
> GCC 3.2.2 reports: parse error before "int"
> If I replace "loop:" with "loop:;", it's fine.
That is indeed not permitted. C99 allows mixing statements and
declarations within blocks, but a declaration *is* not a statement,
and a label must be followed by a statement.
--
Falk
More information about the Gcc
mailing list