Pristine Ack-5.5
[Ack-5.5.git] / lang / pc / comp / make.allocd
1 sed -e '
2 s:^.*[  ]ALLOCDEF[      ].*"\(.*\)"[    ]*\([0-9][0-9]*\).*$:\
3 /* allocation definitions of struct \1 */\
4 extern char *st_alloc();\
5 extern struct \1 *h_\1;\
6 #ifdef DEBUG\
7 extern int cnt_\1;\
8 extern char *std_alloc();\
9 #define new_\1() ((struct \1 *) std_alloc((char **)\&h_\1, sizeof(struct \1), \2, \&cnt_\1))\
10 #else\
11 #define new_\1() ((struct \1 *) st_alloc((char **)\&h_\1, sizeof(struct \1), \2))\
12 #endif\
13 #define free_\1(p) st_free(p, \&h_\1, sizeof(struct \1))\
14 :' -e '
15 s:^.*[  ]STATICALLOCDEF[        ].*"\(.*\)"[    ]*\([0-9][0-9]*\).*$:\
16 /* allocation definitions of struct \1 */\
17 extern char *st_alloc();\
18 struct \1 *h_\1;\
19 #ifdef DEBUG\
20 int cnt_\1;\
21 #define new_\1() ((struct \1 *) std_alloc((char **)\&h_\1, sizeof(struct \1), \2, \&cnt_\1))\
22 #else\
23 #define new_\1() ((struct \1 *) st_alloc((char **)\&h_\1, sizeof(struct \1), \2))\
24 #endif\
25 #define free_\1(p) st_free(p, \&h_\1, sizeof(struct \1))\
26 :'