Lines Matching refs:str

194 	char *str = (char*)*ptr;
212 register int c = *str;
213 register char *xp=str;
216 str++;
217 c = mbchar(str);
224 while(xp=str, c=mbchar(str), isaname(c));
225 str = xp;
228 str = nv_endsubscript((Namval_t*)0,str,0);
229 c = *str;
234 if((c = *++str) !='[')
236 str = nv_endsubscript((Namval_t*)0,cp=str,NV_SUBQUOTE)-1;
238 str -=2;
243 int fsize = str- (char*)(*ptr);
278 lvalue->flag = str-lvalue->value;
281 *str = 0;
289 *str = c;
290 cp = str;
295 str = nv_endsubscript(np,str,0);
296 if((c= *str)!='[' && c!='.')
298 str = cp;
306 str++;
307 while(xp=str, c=mbchar(str), isaname(c));
308 str = xp;
311 *str = 0;
328 lvalue->flag = str-lvalue->value;
335 *str = c;
345 lvalue->flag = (str-lvalue->expr);
350 str++;
351 while(xp=str, c=mbchar(str), isaname(c));
352 c = *(str = xp);
355 str = nv_endsubscript(np,str,0);
357 while((c= *str)=='[' || c=='.');
366 r = strtonll(val,&str, &lastbase,-1);
367 if(*str=='8' || *str=='9')
371 r = strtonll(val,&str, &lastbase,-1);
385 c = *str;
390 r = strtold(val,&str);
396 if((str-val)>2*sizeof(Sflong_t))
399 rr = strtold(val,&str);
470 *ptr = str;
480 Sfdouble_t sh_strnum(register const char *str, char** ptr, int mode)
485 if(*str==0)
488 *ptr = (char*)str;
492 d = strtonll(str,&last,&base,-1);
496 d = strval(shp,str,&last,arith,mode);
498 errormsg(SH_DICT,ERROR_exit(1),e_lexbadchar,*last,str);
500 else if (!d && *str=='-')
507 Sfdouble_t sh_arith(Shell_t *shp,register const char *str)
509 return(sh_strnum(str, (char**)0, 1));
512 void *sh_arithcomp(Shell_t *shp,register char *str)
514 const char *ptr = str;
516 ep = arith_compile(shp,str,(char**)&ptr,arith,ARITH_COMP|1);
518 errormsg(SH_DICT,ERROR_exit(1),e_lexbadchar,*ptr,str);