On Thu, Aug 02, 2007 at 09:55:51PM +0200, Guennadi Liakhovetski wrote: > But do a > > char c[4] = "0123"; > > and - a wonder - no warning.
And this is a correct behaviour. You get a valid initialier for array; see 6.7.8[14] for details. Moreover, that kind of code is often quite deliberate. >No warning with gcc 3.3.2, 3.3.5, 3.4.5, > 4.1.2. I was told 4.2.x does produce a warning. Now do a > > struct { > char c[4]; > int i; > } t; > t.i = 0x12345678; > strcpy(t.c, c); > > and t.i is silently corrupted. Just wanted to ask if this is known, > really... strcpy() from array that doesn't contain 0 is an undefined behaviour, nothing new about that... - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/