Mercurial > repos > rhope
comparison test/test.c @ 7:d61550e2c001
Added current work on new runtime
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 13 May 2009 00:47:40 -0400 |
parents | |
children | 8d74ef7fa357 |
comparison
equal
deleted
inserted
replaced
6:f67d9be38ddf | 7:d61550e2c001 |
---|---|
1 #include <stdio.h> | |
2 #include "builtin.h" | |
3 #include "object.h" | |
4 #include "integer.h" | |
5 | |
6 int main(int argc, char ** argv) | |
7 { | |
8 returntype ret; | |
9 calldata cdata; | |
10 register_builtin_types(); | |
11 cdata.params[0] = make_Int32(2); | |
12 cdata.params[1] = make_Int32(3); | |
13 cdata.num_params = 2; | |
14 ret = call_method(METHOD_ADD, &cdata); | |
15 while(ret == TAIL_RETURN) | |
16 ret = cdata.tail_func(&cdata); | |
17 if(ret == EXCEPTION_RETURN) { | |
18 puts("Exception!"); | |
19 exit(-1); | |
20 } | |
21 printf("After METHOD_ADD: %d\n", ((_t_Int32 *)cdata.params[0])->num); | |
22 cdata.params[1] = make_Int32(1); | |
23 ret = call_method(METHOD_SUB, &cdata); | |
24 while(ret == TAIL_RETURN) | |
25 ret = cdata.tail_func(&cdata); | |
26 if(ret == EXCEPTION_RETURN) { | |
27 puts("Exception!"); | |
28 exit(-1); | |
29 } | |
30 printf("After METHOD_ADD: %d\n", ((_t_Int32 *)cdata.params[0])->num); | |
31 return 0; | |
32 } | |
33 |