Lines Matching refs:lvalue

59 static Namval_t *scope(Shell_t *shp,register Namval_t *np,register struct lval *lvalue,int assign)  in scope()  argument
61 register int flag = lvalue->flag; in scope()
65 int nosub = lvalue->nosub; in scope()
69 lvalue->nosub = 0; in scope()
70 if(cp>=lvalue->expr && cp < lvalue->expr+lvalue->elen) in scope()
95 …if((lvalue->emode&ARITH_COMP) && dtvnext(root) && ((mp=nv_search(cp,root,flags))||(sdict && (mp=nv… in scope()
107 sub = (char*)&lvalue->expr[flag]; in scope()
113 static Sfdouble_t arith(const char **ptr, struct lval *lvalue, int type, Sfdouble_t n) in arith() argument
123 register Namval_t *np = (Namval_t*)(lvalue->value); in arith()
124 np = scope(shp,np,lvalue,1); in arith()
127 lvalue->value = (char*)np; in arith()
134 lvalue->value = (char*)0; in arith()
165 lvalue->fun = 0; in arith()
172 lvalue->fun = tp->fnptr; in arith()
173 lvalue->nargs = *tp->fname; in arith()
177 if(lvalue->fun) in arith()
179 lvalue->value = (char*)ERROR_dictionary(e_function); in arith()
182 if((lvalue->emode&ARITH_COMP) && dot) in arith()
184 lvalue->value = (char*)*ptr; in arith()
185 lvalue->flag = str-lvalue->value; in arith()
195 Dt_t *root = (lvalue->emode&ARITH_COMP)?shp->var_base:shp->var_tree; in arith()
233 lvalue->value = (char*)*ptr; in arith()
234 lvalue->flag = str-lvalue->value; in arith()
242 if(!np && lvalue->value) in arith()
244 lvalue->value = (char*)np; in arith()
247 lvalue->isfloat=1; in arith()
248 lvalue->flag = 0; in arith()
251 lvalue->flag = (str-lvalue->expr); in arith()
285 lvalue->isfloat=1; in arith()
299 lvalue->isfloat=1; in arith()
309 register Namval_t *np = (Namval_t*)(lvalue->value); in arith()
312 np = scope(shp,np,lvalue,0); in arith()
317 *ptr = lvalue->value; in arith()
322 …if(((lvalue->emode&2) || lvalue->level>1 || sh_isoption(SH_NOUNSET)) && nv_isnull(np) && !nv_isatt… in arith()
326 lvalue->value = (char*)ERROR_dictionary(e_notset); in arith()
327 lvalue->emode |= 010; in arith()
332 lvalue->isfloat= (r!=(Sflong_t)r); in arith()
334 lvalue->isfloat=1; in arith()
342 errormsg(SH_DICT,ERROR_warn(0),lvalue->value,*ptr); in arith()
345 errormsg(SH_DICT,ERROR_exit((lvalue->emode&3)!=0),lvalue->value,*ptr); in arith()