1 typedef struct rtx_def 2 { 3 int f1 :1; 4 int f2 :1; 5 } *rtx; 6 7 static rtx f(orig)8f (orig) 9 register rtx orig; 10 { 11 if (orig->f1 || orig->f2) 12 return orig; 13 orig->f2 = 1; 14 return orig; 15 } 16 17 void f2()18f2 () 19 { 20 abort (); 21 } 22 main()23main () 24 { 25 struct rtx_def foo; 26 rtx bar; 27 28 foo.f1 = 1; 29 foo.f2 = 0; 30 bar = f (&foo); 31 if (bar != &foo || bar->f2 != 0) 32 abort (); 33 exit (0); 34 } 35