diff --git a/NEWS b/NEWS index 01d04af58..cd1fb1d6a 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,14 @@ See the end for copying conditions. Please send Guile bug reports to bug-guile@gnu.org. +Changes since the stable branch: + +** Variables have no longer a special behavior for `equal?'. + +Previously, comparing two variables with `equal?' would recursivly +compare their values. This is no longer done. Variables are now only +`equal?' if they are `eq?'. + Changes since Guile 1.4: * Changes to the distribution diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 0d72dc1b3..6212314b0 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,19 @@ +2001-07-25 Marius Vollmer + + * tags.h (scm_tc7_variable): New. + * gc.c (scm_gc_mark): Handle scm_tc7_variable objects. + * print.c (scm_iprin1): Likewise. + + * variable.h (scm_tc16_variable): Removed. + (SCM_VARIABLEP): Test for new tc7 code. + (scm_i_variable_print): New. + * variable.c (scm_tc16_variable): Removed. + (variable_print): Renamed to scm_i_variable_print and made + non-static. + (variable_equal_p): Removed. + (make_variable): Construct a tc7 object instead of a smob. + (scm_init_variable): Do not register smob. + 2001-07-22 Marius Vollmer * tags.h: Include inttypes.h when we have it.