1 struct fd
2 {
3 	unsigned char a;
4 	unsigned char b;
5 } f = { 5 };
6 
g()7 struct fd *g() { return &f; }
h()8 int h() { return -1; }
9 
main()10 int main()
11 {
12 	struct fd *f = g();
13 	f->b = h();
14 	if (((f->a & 0x7f) & ~0x10) <= 2)
15 		abort ();
16 	exit (0);
17 }
18