1 struct b0 2 { 3 long long m0; 4 char m1; 5 }; 6 7 struct b1 8 { 9 double m0; 10 char m1; 11 }; 12 13 struct s0; 14 15 typedef int integer; 16 typedef unsigned char byte; 17 typedef integer (*mem_fun)(struct s0 *); 18 19 struct s0 20 { 21 22 struct b0 b0; 23 struct b1 b1; 24 25 integer m0; 26 byte m1; 27 mem_fun f; 28 }; 29 30 integer fun(struct s0 * s0)31fun(struct s0 *s0) 32 { 33 s0->f = fun; 34 return s0->m0 + s0->m1; 35 } 36