This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: C99 parsing error?


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]