diff --git a/INSTALL b/INSTALL index df501c6b7..1364a33cf 100644 --- a/INSTALL +++ b/INSTALL @@ -67,6 +67,44 @@ how does one specify the modules? will build shared libraries if your system supports them. Guile always builds static libraries. +--enable-debug-freelist --- Enable freelist debugging. + +This enables a debugging version of SCM_NEWCELL(), and also registers +an extra primitive, the setter `gc-set-debug-check-freelist!'. + +Configure with the --enable-debug-freelist option to enable +the gc-set-debug-check-freelist! primitive, and then use: + +(gc-set-debug-check-freelist! #t) # turn on checking of the freelist +(gc-set-debug-check-freelist! #f) # turn off checking + +Checking of the freelist forces a traversal of the freelist and +a garbage collection before each allocation of a cell. This can +slow down the interpreter dramatically, so the setter should be used to +turn on this extra processing only when necessary. + +--enable-debug-malloc --- Enable malloc debugging. + +Include code for debugging of calls to scm_must_malloc/realloc/free. + +Checks that + +1. objects freed by scm_must_free has been mallocated by scm_must_malloc +2. objects reallocated by scm_must_realloc has been allocated by + scm_must_malloc +3. reallocated objects are reallocated with the same what string + +But, most importantly, it records the number of allocated objects of +each kind. This is useful when searching for memory leaks. + +A Guile compiled with this option provides the primitive +`malloc-stats' which returns an alist with pairs of kind and the +number of objects of that kind. + +--disable-arrays --- omit array and uniform array support +--disable-posix --- omit posix interfaces +--disable-networking --- omit networking interfaces +--disable-regex --- omit regular expression interfaces Using Guile Without Installing It ========================================= diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 2cd4c7348..65e30a12a 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,5 +1,8 @@ 2000-06-12 Mikael Djurfeldt + * guile-snarf.in: Change regexp "^SCM__I" --> "^ *SCM__I". + (The preprocessor might insert spaces before the identifier.) + * Makefile.am (EXTRA_DOT_X_FILES, EXTRA_DOT_DOC_FILES): New variables. (guile-procedures.txt): Depend on EXTRA_DOT_DOC_FILES.