1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-14 15:40:19 +02:00

Merge from mvo-vcell-cleanup-1-branch.

This commit is contained in:
Marius Vollmer 2001-05-15 14:57:22 +00:00
parent 7c33806ae6
commit 86d31dfe7d
54 changed files with 1538 additions and 1293 deletions

View file

@ -73,7 +73,7 @@ SCM
scm_make_subr_opt (const char *name, int type, SCM (*fcn) (), int set)
{
SCM symbol;
SCM symcell;
SCM var;
register SCM z;
int entry;
@ -89,17 +89,14 @@ scm_make_subr_opt (const char *name, int type, SCM (*fcn) (), int set)
scm_subr_table_room = new_size;
}
symbol = scm_str2symbol (name);
SCM_NEWCELL (z);
if (set)
{
symcell = scm_sysintern (name, SCM_UNDEFINED);
symbol = SCM_CAR (symcell);
}
var = scm_sym2var (symbol, scm_current_module_lookup_closure (),
SCM_BOOL_T);
else
{
symcell = SCM_BOOL_F; /* to avoid warning */
symbol = scm_str2symbol (name);
}
var = SCM_BOOL_F;
entry = scm_subr_table_size;
scm_subr_table[entry].handle = z;
@ -112,7 +109,7 @@ scm_make_subr_opt (const char *name, int type, SCM (*fcn) (), int set)
scm_subr_table_size++;
if (set)
SCM_SETCDR (symcell, z);
SCM_VARIABLE_SET (var, z);
return z;
}