With the following c code,
typedef struct {
char a;
char b;
char c;
} sss;
void dump(void *p);
void ddd()
{
sss s = {.b = 'B'};
dump(&s);
}
the field .c is initialized to zero, but .a remains random value.
Please refer to the attachment for details.
duplicated to bug #2167.