static int Static = 5; namespace NS { static int staticDataInNS = 99; struct A { static int staticData; int a = 20; int b = 30; void Foo() { Static += 1; staticDataInNS += 1; staticData++; a++; b++; } }; int A::staticData = 123; } struct Resource { int resourceType; }; struct Stack { Resource *resource; }; struct StackNode { StackNode *next; Stack v; }; struct Context { StackNode *entry_stack_first; }; int main(void) { Resource r_ = {0}; Resource *r = &r_; Stack s = {r}; StackNode n_ = {0, s}; StackNode *n = &n_; Context c_ = {n}; Context *context = &c_; // evaluate `context.entry_stack_first.v.resource.resourceType == 0xd8` int x = 0; NS::A a = {0}; a.Foo(); return 0; }