1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
__code pop2Test_StackTestImpl(struct StackTestImpl* stackTest, struct Stack* stack, __code next(...)) {
goto stack->pop2(pop2Test1_StackTestImpl);
}
__code pop2Test3_StackTestImpl(struct StackTestImpl* stackTest, struct Stack* stack, __code next(...)) {
String* str = NEW(String);
str->size = 200;
String* str1 = NEW(String);
str1->size = 300;
goto pop2Test1_StackTestImpl(stackTest, (union Data*)str, (union Data*)str1);
}
__code pop2Test1_StackTestImpl(struct StackTestImpl* stackTest, union Data* data, union Data* data1, struct Stack* stack, __code next(...)) {
String* str = (String*)data;
String* str2 = (String*)data1;
printf("%d\n", str->size);
printf("%d\n", str2->size);
goto next(...);
}
__code pop2Test1_StackTestImpl_stub(struct Context* context) {
struct StackTestImpl* stackTest = GearImpl(context, StackTest, stackTest);
Data* data = Gearef(context, Stack)->data;
Data* data1 = Gearef(context, Stack)->data1;
Stack* stack = Gearef(context, StackTest)->stack;
enum Code next = Gearef(context, StackTest)->next;
goto pop2Test1_StackTestImpl(context, stackTest, data, data1, stack, next);
}
|