| 38 |
|
|
| 39 |
|
extern char *ecalloc(), *savestr(), *strcpy(); |
| 40 |
|
|
| 41 |
+ |
static int hash(); |
| 42 |
+ |
|
| 43 |
|
static double dvalue(); |
| 44 |
|
|
| 45 |
|
long eclock = -1; /* value storage timer */ |
| 335 |
|
char *name; |
| 336 |
|
{ |
| 337 |
|
register VARDEF *vp; |
| 338 |
< |
LIBR *libp; |
| 338 |
> |
register LIBR *libp; |
| 339 |
|
int hv; |
| 340 |
|
|
| 341 |
|
if ((vp = varlookup(name)) != NULL) { |
| 359 |
|
hashtbl[hv] = vp; |
| 360 |
|
return(vp); |
| 361 |
|
} |
| 362 |
+ |
|
| 363 |
+ |
|
| 364 |
+ |
#ifdef FUNCTION |
| 365 |
+ |
libupdate(fn) /* update library links */ |
| 366 |
+ |
char *fn; |
| 367 |
+ |
{ |
| 368 |
+ |
register int i; |
| 369 |
+ |
register VARDEF *vp; |
| 370 |
+ |
/* if fn is NULL then relink all */ |
| 371 |
+ |
for (i = 0; i < NHASH; i++) |
| 372 |
+ |
for (vp = hashtbl[i]; vp != NULL; vp = vp->next) |
| 373 |
+ |
if (vp->lib != NULL || fn == NULL || !strcmp(fn, vp->name)) |
| 374 |
+ |
vp->lib = liblookup(vp->name); |
| 375 |
+ |
} |
| 376 |
+ |
#endif |
| 377 |
|
|
| 378 |
|
|
| 379 |
|
varfree(ln) /* release link to variable */ |