1*9fe4cc18SPhilip Craig struct myfile {
2*9fe4cc18SPhilip Craig   int data;
3*9fe4cc18SPhilip Craig   void (*f)();
4*9fe4cc18SPhilip Craig } myfile;
5*9fe4cc18SPhilip Craig 
f()6*9fe4cc18SPhilip Craig void f() {}
7*9fe4cc18SPhilip Craig 
foo(struct myfile * f1)8*9fe4cc18SPhilip Craig int foo(struct myfile *f1) {
9*9fe4cc18SPhilip Craig   f1->f();
10*9fe4cc18SPhilip Craig   if (f1->data == 42)
11*9fe4cc18SPhilip Craig     return 0;
12*9fe4cc18SPhilip Craig   return 1;
13*9fe4cc18SPhilip Craig }
14*9fe4cc18SPhilip Craig 
main()15*9fe4cc18SPhilip Craig int main() {
16*9fe4cc18SPhilip Craig   struct myfile f1;
17*9fe4cc18SPhilip Craig   f1.f = &f;
18*9fe4cc18SPhilip Craig   f1.data = 42;
19*9fe4cc18SPhilip Craig   return foo(&f1);
20*9fe4cc18SPhilip Craig }
21