| struct Bar { | |
| int c; | |
| int d; | |
| }; | |
| struct Foo { | |
| int a; | |
| struct Bar *b; | |
| }; | |
| struct Foo *GetAFoo() { | |
| static struct Foo f = { 0, 0 }; | |
| return &f; | |
| } | |
| int SumTwoIntegers(int x, int y) { | |
| return x + y; | |
| } | |
| int GetSum(struct Foo *f) { | |
| return SumTwoIntegers(f->a, f->b->d ? 0 : 1); | |
| } | |
| int main() { | |
| return GetSum(GetAFoo()); | |
| } |