Mercurial > hg > CbC > old > device
view test/test2.c @ 745:a396b346308a
i64 continue... code-gen-all.s is generated.
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 12 Nov 2010 16:38:42 +0900 |
parents | 3f1f6c0610c1 |
children | c2c709727221 |
line wrap: on
line source
#define __environment _CbC_environment #define __return _CbC_return #include <stdio.h> int sender_bit; __code (*ret)(int,void *); void *env; struct packet { int bit; char *msg; __code (*next)(); }; __code print_struct(struct packet pkt) { printf("bit: %d\n", pkt.bit); printf("message: %s\n", pkt.msg); goto ret(0, env); } __code initSender(int init_bit, struct packet pkt) { sender_bit = init_bit; pkt.next = print_struct; printf("initSender bit: %d\n", pkt.bit); printf("initSender message: %s\n", pkt.msg); printf("sender_bit: %d\n", sender_bit); goto print_struct(pkt); } int main(void) { struct packet pkt; pkt.bit = 1; pkt.msg = "hogehoge"; pkt.next = initSender; ret = __return; env = __environment; printf("main bit: %d\n", pkt.bit); printf("main message: %s\n", pkt.msg); goto initSender(0, pkt); }