Lines Matching refs:bnext
1871 struct sh_brace *bb = 0, *blist = 0, *bstk, *bnext; in expand_arg() local
1885 for (bnext = bb; bb && bb->active; bb = (bb==blist) ? 0 : bb->prev); in expand_arg()
1887 j = 1+*bnext->commas; in expand_arg()
1888 if (old[i] && !bnext->cnt && i-j>=4) { in expand_arg()
1891 bnext->commas[2] = old[j]; in expand_arg()
1892 bnext->commas[3] = old[j+3]; in expand_arg()
1895 (sscanf(old+j+4, "..%u}%n", bnext->commas+4, &k) && k)) in expand_arg()
1896 bnext->cnt = -1; in expand_arg()
1899 if (!bnext->cnt) { in expand_arg()
1900 for (k=0, j = 1+*bnext->commas; k<3; k++, j += x) in expand_arg()
1901 if (!sscanf(old+j, "..%u%n"+2*!k, bnext->commas+2+k, &x)) break; in expand_arg()
1902 if (old[j] == '}') bnext->cnt = -2; in expand_arg()
1905 if (bnext->cnt) { in expand_arg()
1906 if (!bnext->commas[4]) bnext->commas[4] = 1; in expand_arg()
1907 if ((bnext->commas[3]-bnext->commas[2]>0) != (bnext->commas[4]>0)) in expand_arg()
1908 bnext->commas[4] *= -1; in expand_arg()
1912 if (!old[i] || !bnext->cnt) in expand_arg()
1913 free(dlist_pop((blist == bnext) ? &blist : &bnext)); in expand_arg()
1947 for (bb = blist; bb; bb = (bnext == blist) ? 0 : bnext) { in expand_arg()
1960 bstk = bnext = bb; in expand_arg()
1963 while ((bnext = (bnext->next==blist) ? 0 : bnext->next)) { in expand_arg()
1966 if ((i = bnext->commas[0])>brace_end(bb)) break; in expand_arg()
1970 bnext->active = 0; in expand_arg()
1971 bnext->stack = 0; in expand_arg()
1978 if (!bnext || bb->cnt<0 || bnext->commas[0]>bb->commas[bb->idx+1]) { in expand_arg()
1990 while (!bnext || bnext->commas[0]>brace_end(bstk)) { in expand_arg()
1995 while (bnext) { in expand_arg()
1996 if (bnext->commas[0]<j) { in expand_arg()
1997 j = bnext->commas[0];// sibling in expand_arg()
1999 } else if (brace_end(bb)>bnext->commas[0]) in expand_arg()
2000 bnext = (bnext->next == blist) ? 0 : bnext->next; in expand_arg()
2006 if (bnext && bnext->commas[0]<brace_end(bb)) break; in expand_arg()