1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-19 02:00:26 +02:00

* reimplementation of values, call-with-values as primitives:

* values.c, values.h: new files.  use a struct to contain multiple
	values, similar to the previous Scheme-level implementation.
	* Makefile.am: add values.c, values.h, values.x.
	* continuations.c (continuation_apply): support R5RS multiple value
	continuations.
	* init.c: call scm_init_values.
	* struct.h: define SCM_SET_STRUCT_PRINTER.
This commit is contained in:
Gary Houston 2000-11-26 18:27:49 +00:00
parent 5f144b105d
commit ce21243418
7 changed files with 242 additions and 11 deletions

View file

@ -132,6 +132,7 @@
#include "libguile/tag.h"
#include "libguile/throw.h"
#include "libguile/unif.h"
#include "libguile/values.h"
#include "libguile/variable.h"
#include "libguile/vectors.h"
#include "libguile/version.h"
@ -491,7 +492,7 @@ scm_init_guile_1 (SCM_STACKITEM *base)
scm_init_subr_table ();
scm_environments_prehistory (); /* create the root environment */
scm_init_continuations ();
scm_init_root ();
scm_init_root (); /* requires continuations */
#ifdef USE_THREADS
scm_init_threads (base);
#endif
@ -552,11 +553,12 @@ scm_init_guile_1 (SCM_STACKITEM *base)
scm_init_srcprop ();
#endif
scm_init_stackchk ();
scm_init_struct (); /* Requires struct */
scm_init_stacks ();
scm_init_struct ();
scm_init_stacks (); /* Requires struct */
scm_init_strports ();
scm_init_symbols ();
scm_init_tag ();
scm_init_values (); /* Requires struct */
scm_init_load ();
scm_init_objects (); /* Requires struct */
scm_init_print (); /* Requires struct */