mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-24 13:30:21 +02:00
*** empty log message ***
This commit is contained in:
parent
a6c64c3c6d
commit
5dbb2c62b9
1 changed files with 35 additions and 0 deletions
|
@ -1,3 +1,38 @@
|
|||
Sun Oct 20 03:29:32 1996 Mikael Djurfeldt <mdj@kenneth>
|
||||
|
||||
* 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.
|
||||
|
||||
* eval.h, eval.c: Added new selector SCM_GLOC_VAL_LOC.
|
||||
Motivation: see SCM_CXRLOC.
|
||||
|
||||
* pairs.h, eval.c, gc.c, init.c, ioext.c, ports.c, ports.h,
|
||||
srcprop.h, tags.h, throw.c, unif.c: Added new selectors
|
||||
SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR and SCM_SETOR_CDR.
|
||||
Motivation: Safer use. Some other macros are defined in terms of
|
||||
these operations. If these are defined using the SCM_SETCXR
|
||||
(<e1>, SCM_CXR (<e1>) <op> <e2>) pattern a complex <e1> will lead
|
||||
to inefficiency and an <e1> with side-effects could potentially
|
||||
break. Also, these particular operations are heavily utilized in
|
||||
the garbage collector. In unoptimized code there will be a
|
||||
measurable speedup.
|
||||
|
||||
* 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.)
|
||||
|
||||
Fri Oct 18 01:11:56 1996 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
|
||||
|
||||
* stacks.c: Improve selection of relevant stack frames when making
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue