1 extern void abort (void); 2 3 struct container 4 { 5 unsigned char data[1]; 6 }; 7 8 unsigned char space[6] = {1, 2, 3, 4, 5, 6}; 9 10 int foo(struct container * p)11foo (struct container *p) 12 { 13 return p->data[4]; 14 } 15 16 int main()17main () 18 { 19 if (foo ((struct container *) space) != 5) 20 abort (); 21 return 0; 22 } 23