1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-18 09:40:25 +02:00

* alist.c, arbiters.c, continuations.c, debug.c, debug.h, eval.c,

eval.h, feature.c, filesys.c, fports.c, gc.c, gsubr.c, init.c,
ioext.c, kw.c, list.c, load.c, mallocs.c, numbers.c, numbers.h,
pairs.c, pairs.h, ports.c, ports.h, posix.c, procprop.c, procs.c,
procs.h, ramap.c, read.c, root.c, srcprop.c, srcprop.h,
strports.c, symbols.c, tags.h, throw.c, unif.c, variable.c,
vports.c: Cleaned up use of pairs: Don't make any special
assumptions about the internal structure of selectors and
mutators: SCM_CXR (<e1>) = <e2> --> SCM_SETCXR (<e1>, <e2>),
SCM_CXR (<e1>) &= <e2> --> SCM_SETAND_CXR (<e1>, <e2>) etc.
(Among other things, this change makes it easier to build Guile
with certain compilers which have problems with casted lvalues.)
This commit is contained in:
Mikael Djurfeldt 1996-10-20 03:31:08 +00:00
parent a23afe534a
commit a6c64c3c6d
23 changed files with 85 additions and 77 deletions

View file

@ -113,8 +113,8 @@ make_vcell_variable (vcell)
SCM answer;
SCM_NEWCELL(answer);
SCM_REDEFER_INTS;
SCM_CAR(answer) = scm_tc16_variable;
SCM_CDR(answer) = vcell;
SCM_SETCAR (answer, scm_tc16_variable);
SCM_SETCDR (answer, vcell);
SCM_REALLOW_INTS;
return answer;
}
@ -133,8 +133,8 @@ scm_make_variable (init, name_hint)
SCM_NEWCELL(val_cell);
SCM_DEFER_INTS;
SCM_CAR(val_cell) = name_hint;
SCM_CDR(val_cell) = init;
SCM_SETCAR (val_cell, name_hint);
SCM_SETCDR (val_cell, init);
SCM_ALLOW_INTS;
return make_vcell_variable (val_cell);
}
@ -153,8 +153,8 @@ scm_make_undefined_variable (name_hint)
SCM_NEWCELL (vcell);
SCM_DEFER_INTS;
SCM_CAR (vcell) = name_hint;
SCM_CDR (vcell) = SCM_UNDEFINED;
SCM_SETCAR (vcell, name_hint);
SCM_SETCDR (vcell, SCM_UNDEFINED);
SCM_ALLOW_INTS;
return make_vcell_variable (vcell);
}
@ -192,7 +192,7 @@ scm_variable_set_x (var, val)
SCM val;
{
SCM_ASSERT (SCM_NIMP(var) && SCM_VARIABLEP (var), var, SCM_ARG1, s_variable_set_x);
SCM_CDR (SCM_CDR (var)) = val;
SCM_SETCDR (SCM_CDR (var), val);
return SCM_UNSPECIFIED;
}
@ -217,7 +217,7 @@ scm_builtin_variable (name)
SCM_DEFER_INTS;
if ( SCM_IMP (SCM_CDR (var_slot))
|| (SCM_VARVCELL (var_slot) != vcell))
SCM_CDR (var_slot) = make_vcell_variable (vcell);
SCM_SETCDR (var_slot, make_vcell_variable (vcell));
SCM_ALLOW_INTS;
return SCM_CDR (var_slot);