xref: /llvm-project/lldb/test/API/commands/frame/diagnose/complicated-expression/main.c (revision 99451b4453688a94c6014cac233d371ab4cc342d)
1*99451b44SJordan Rupprecht struct Bar {
2*99451b44SJordan Rupprecht   int c;
3*99451b44SJordan Rupprecht   int d;
4*99451b44SJordan Rupprecht };
5*99451b44SJordan Rupprecht 
6*99451b44SJordan Rupprecht struct Foo {
7*99451b44SJordan Rupprecht   int a;
8*99451b44SJordan Rupprecht   struct Bar *b;
9*99451b44SJordan Rupprecht };
10*99451b44SJordan Rupprecht 
GetAFoo()11*99451b44SJordan Rupprecht struct Foo *GetAFoo() {
12*99451b44SJordan Rupprecht   static struct Foo f = { 0, 0 };
13*99451b44SJordan Rupprecht   return &f;
14*99451b44SJordan Rupprecht }
15*99451b44SJordan Rupprecht 
SumTwoIntegers(int x,int y)16*99451b44SJordan Rupprecht int SumTwoIntegers(int x, int y) {
17*99451b44SJordan Rupprecht   return x + y;
18*99451b44SJordan Rupprecht }
19*99451b44SJordan Rupprecht 
GetSum(struct Foo * f)20*99451b44SJordan Rupprecht int GetSum(struct Foo *f) {
21*99451b44SJordan Rupprecht   return SumTwoIntegers(f->a, f->b->d ? 0 : 1);
22*99451b44SJordan Rupprecht }
23*99451b44SJordan Rupprecht 
main()24*99451b44SJordan Rupprecht int main() {
25*99451b44SJordan Rupprecht   return GetSum(GetAFoo());
26*99451b44SJordan Rupprecht }
27