* pairs.h, eval.c, eval.h, feature.c, gc.c, list.c, load.c,
authorMikael Djurfeldt <djurfeldt@nada.kth.se>
Sun, 20 Oct 1996 03:29:38 +0000 (03:29 +0000)
committerMikael Djurfeldt <djurfeldt@nada.kth.se>
Sun, 20 Oct 1996 03:29:38 +0000 (03:29 +0000)
commit25d8012c77b335723269a490b7e0661d01fd3bab
tree5485289a106431db0df5a54a3229bd473a47ba09
parent24e68a57b9cf7bb8f0d0881911a5e233a2bc6616
* pairs.h, eval.c, eval.h, feature.c, gc.c, list.c, load.c,
ramap.c, symbols.c: Added new selectors SCM_CARLOC and SCM_CDRLOC
for obtaining the address of a car or cdr field.  Motivation:
&SCM_CXR make assumptions about the internal structure of the
SCM_CXR selectors.

* 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.)
libguile/feature.c
libguile/list.c
libguile/load.c
libguile/ramap.c
libguile/symbols.c