Re: gcc fixed size char array initialization bug - known?

From: Guennadi Liakhovetski
Date: Thu Aug 02 2007 - 18:51:22 EST


On Fri, 3 Aug 2007, Stefan Richter wrote:

> Guennadi Liakhovetski wrote:
> > with
> >
> > char c[4] = "012345";
> >
> > the compiler warns, but actually allocates a 6-byte long array...
>
> Off-topic here, but: sizeof c / sizeof *c == 4.

Don't think it is OT here - kernel depends on gcc. And, what I meant, is,
that gcc places all 7 (sorry, not 6 as I said above) characters in the
.rodata section of the compiled object file. Of course, it doesn't mean,
that c is 7 characters long.

Thanks
Guennadi
---
Guennadi Liakhovetski
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/