Subject: CVS commit: pkgsrc/lang/guile
To: None <pkgsrc-changes@NetBSD.org>
From: Thomas Klausner <wiz@netbsd.org>
List: pkgsrc-changes
Date: 12/14/2003 17:14:40
Module Name: pkgsrc
Committed By: wiz
Date: Sun Dec 14 17:14:40 UTC 2003
Modified Files:
pkgsrc/lang/guile: Makefile distinfo
pkgsrc/lang/guile/patches: patch-ad patch-ae patch-af patch-ag
Log Message:
Update to 1.6.4:
XXX: Package fails the same regression test 1.6.3 failed (scfi-19).
Changes since Guile 1.6.3 (i.e. changes for 1.6.4):
* Changes to the distribution
** Various architecture (and compiler optimization) related bugs fixed.
These changes should improve the situation on at least ia64, alpha,
and powerpc.
* Changes to the stand-alone interpreter
** Readline prompt problem fixed.
Previously, the readline prompt disappeared when running Guile in
non-echoing terminal mode (for example under GDB in Emacs). This has
been fixed.
** Printing bug fixed.
Previously, the state of writingp in the print state could be altered
by recursive calls to printing functions.
** Append mode in hooks.
Append mode in hooks (adding the hook last in the list) now works
correctly.
** GOOPS/GC bug fixed.
The class layout slot, which informs the GC about which slots to GC
protect, is now initialized correctly.
** GOOPS class redefinition bug fixed.
The class redefinition protocol now properly removes the old accessor
methods from their accessors.
** GOOPS method dispatch bug fixed.
Previously, the code updating the method cache in generic functions
got confused if handed method code created in a null environment
(environment = empty list). It now stands every environment
imaginable (think about it!).
** GOOPS init-thunks can now be primitive procedures
Previously, attempts to provide something else than a closure as value
for the #:init-thunk slot option would yield a segmentation fault.
Now, it's possible to supply a primitive procedure as init-thunk.
Non-allowed values result in an error.
** Garbage collection frequency improved for large malloc heaps
The decision when to run the GC is now done in a way that avoids GCs
with a small yield for heaps with a large amount of malloced storage.
The minimum expected yield for malloc storage is now relative to the
heap size, and not a fixed amount as it was previously.
* Changes to Scheme functions and syntax
** %fast-slot-ref no longer checks slot boundness
This makes the <active-class> metaclass in (oop goops active-slot)
working again.
** eqv? and equal? are now primitive generic functions
This means that it is possible to provide custom comparisons for new
classes by specializing `eqv?' and `equal?' to those classes.
* Changes to the C interface
** New snarf macros: SCM_PRIMITIVE_GENERIC, SCM_PRIMITIVE_GENERIC_1
These provide a way of adding primitive generics which is equivalent
to SCM_DEFINE and SCM_DEFINE1.
To generate a diff of this commit:
cvs rdiff -r1.47 -r1.48 pkgsrc/lang/guile/Makefile
cvs rdiff -r1.16 -r1.17 pkgsrc/lang/guile/distinfo
cvs rdiff -r1.5 -r1.6 pkgsrc/lang/guile/patches/patch-ad
cvs rdiff -r1.7 -r1.8 pkgsrc/lang/guile/patches/patch-ae
cvs rdiff -r1.1 -r1.2 pkgsrc/lang/guile/patches/patch-af \
pkgsrc/lang/guile/patches/patch-ag
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.