Lines Matching refs:catch
8 struct linestack *catch = *lls; in linestack_addstack() local
11 if (pos > catch->len) error_exit("linestack_addstack past end."); in linestack_addstack()
14 if (catch->len+throw->len >= catch->max) { in linestack_addstack()
16 catch->max = ((catch->len+throw->len)|63)+1; in linestack_addstack()
17 *lls = xmalloc(sizeof(struct linestack)+catch->max*sizeof(struct ptr_len)); in linestack_addstack()
18 memcpy(*lls, catch, sizeof(struct linestack)+pos*sizeof(struct ptr_len)); in linestack_addstack()
22 if (pos != catch->len) in linestack_addstack()
23 memmove((*lls)->idx+pos+throw->len, catch->idx+pos, in linestack_addstack()
24 (catch->len-pos)*sizeof(struct ptr_len)); in linestack_addstack()
27 if (catch != *lls) { in linestack_addstack()
28 free(catch); in linestack_addstack()
29 catch = *lls; in linestack_addstack()
32 memcpy(catch->idx+pos, throw->idx, throw->len*sizeof(struct ptr_len)); in linestack_addstack()
33 catch->len += throw->len; in linestack_addstack()