1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 03:40:34 +02:00

* list.h (scm_list_1, scm_list_2, scm_list_3, scm_list_4, scm_list_5,

scm_list_n): New functions.
	(SCM_LIST0, SCM_LIST1, SCM_LIST2, SCM_LIST3, SCM_LIST4, SCM_LIST5,
	SCM_LIST6, SCM_LIST7, SCM_LIST8, SCM_LIST9, scm_listify): Deprecated.
	(lots of files): Use the new functions.

	* goops.c (CALL_GF1, CALL_GF2, CALL_GF3, CALL_GF4): Use scm_call_N.

	* strings.c: #include "libguile/deprecation.h".
This commit is contained in:
Keisuke Nishida 2001-06-28 01:11:59 +00:00
parent 02d9f38817
commit 1afff62054
38 changed files with 368 additions and 300 deletions

View file

@ -1,3 +1,15 @@
2001-06-28 Keisuke Nishida <kxn30@po.cwru.edu>
* list.h (scm_list_1, scm_list_2, scm_list_3, scm_list_4, scm_list_5,
scm_list_n): New functions.
(SCM_LIST0, SCM_LIST1, SCM_LIST2, SCM_LIST3, SCM_LIST4, SCM_LIST5,
SCM_LIST6, SCM_LIST7, SCM_LIST8, SCM_LIST9, scm_listify): Deprecated.
(lots of files): Use the new functions.
* goops.c (CALL_GF1, CALL_GF2, CALL_GF3, CALL_GF4): Use scm_call_N.
* strings.c: #include "libguile/deprecation.h".
2001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
* read.c (scm_lreadr): When reading a hash token, check for a

View file

@ -232,7 +232,7 @@ continuation_apply (SCM cont, SCM args)
|| continuation->base != rootcont->base)
{
SCM_MISC_ERROR ("continuation from wrong top level: ~S",
SCM_LIST1 (cont));
scm_list_1 (cont));
}
scm_dowinds (continuation->dynenv,

View file

@ -66,7 +66,7 @@ scm_c_issue_deprecation_warning (const char *msg)
if (SCM_BOOLP (issued_msgs))
issued_msgs = SCM_BOOL_T;
else
scm_issue_deprecation_warning (SCM_LIST1 (scm_makfrom0str (msg)));
scm_issue_deprecation_warning (scm_list_1 (scm_makfrom0str (msg)));
}
SCM_DEFINE(scm_issue_deprecation_warning,

View file

@ -254,7 +254,7 @@ sysdep_dynl_link (const char *fname, const char *subr)
SCM_ALLOW_INTS;
fn = scm_makfrom0str (fname);
msg = scm_makfrom0str (lt_dlerror ());
scm_misc_error (subr, "file: ~S, message: ~S", SCM_LIST2 (fn, msg));
scm_misc_error (subr, "file: ~S, message: ~S", scm_list_2 (fn, msg));
}
return (void *) handle;
}

View file

@ -816,7 +816,7 @@ update_catch_handler (void *ptr, SCM tag, SCM args)
SCM observer = data->observer;
SCM message = scm_makfrom0str ("Observer `~A' signals `~A' error: ~S");
return scm_cons (message, SCM_LIST3 (observer, tag, args));
return scm_cons (message, scm_list_3 (observer, tag, args));
}

View file

@ -81,7 +81,7 @@ scm_error (SCM key, const char *subr, const char *message, SCM args, SCM rest)
message ? message : "<empty message>");
abort ();
}
arg_list = SCM_LIST4 (subr ? scm_makfrom0str (subr) : SCM_BOOL_F,
arg_list = scm_list_4 (subr ? scm_makfrom0str (subr) : SCM_BOOL_F,
message ? scm_makfrom0str (message) : SCM_BOOL_F,
args,
rest);
@ -202,7 +202,7 @@ scm_out_of_range (const char *subr, SCM bad_value)
scm_error (scm_out_of_range_key,
subr,
"Argument out of range: ~S",
SCM_LIST1(bad_value),
scm_list_1 (bad_value),
SCM_BOOL_F);
}
@ -212,7 +212,7 @@ scm_out_of_range_pos (const char *subr, SCM bad_value, SCM pos)
scm_error (scm_out_of_range_key,
subr,
"Argument ~S out of range: ~S",
SCM_LIST2(pos,bad_value),
scm_list_2 (pos,bad_value),
SCM_BOOL_F);
}
@ -224,7 +224,7 @@ scm_wrong_num_args (SCM proc)
scm_error (scm_args_number_key,
NULL,
"Wrong number of arguments to ~A",
SCM_LIST1(proc),
scm_list_1 (proc),
SCM_BOOL_F);
}
@ -235,7 +235,7 @@ scm_error_num_args_subr (const char *subr)
scm_error (scm_args_number_key,
NULL,
"Wrong number of arguments to ~A",
SCM_LIST1 (scm_makfrom0str (subr)),
scm_list_1 (scm_makfrom0str (subr)),
SCM_BOOL_F);
}
@ -248,8 +248,8 @@ scm_wrong_type_arg (const char *subr, int pos, SCM bad_value)
subr,
(pos == 0) ? "Wrong type argument: ~S"
: "Wrong type argument in position ~A: ~S",
(pos == 0) ? SCM_LIST1(bad_value)
: SCM_LIST2(SCM_MAKINUM(pos), bad_value),
(pos == 0) ? scm_list_1 (bad_value)
: scm_list_2 (SCM_MAKINUM (pos), bad_value),
SCM_BOOL_F);
}
@ -260,13 +260,13 @@ scm_wrong_type_arg_msg (const char *subr, int pos, SCM bad_value, const char *sz
if (pos == 0) {
scm_error (scm_arg_type_key,
subr, "Wrong type argument (expecting ~A): ~S",
SCM_LIST2(msg,bad_value),
scm_list_2 (msg, bad_value),
SCM_BOOL_F);
} else {
scm_error (scm_arg_type_key,
subr,
"Wrong type argument in position ~A (expecting ~A): ~S",
SCM_LIST3(SCM_MAKINUM(pos),msg,bad_value),
scm_list_3 (SCM_MAKINUM (pos), msg, bad_value),
SCM_BOOL_F);
}
}
@ -300,7 +300,7 @@ scm_wta (SCM arg, const char *pos, const char *s_subr)
if ((~0x1fL) & (long) pos)
{
/* error string supplied. */
scm_misc_error (s_subr, pos, SCM_LIST1 (arg));
scm_misc_error (s_subr, pos, scm_list_1 (arg));
}
else
{

View file

@ -2523,7 +2523,7 @@ dispatch:
proc = x;
badfun:
/* scm_everr (x, env,...) */
scm_misc_error (NULL, "Wrong type to apply: ~S", SCM_LIST1 (proc));
scm_misc_error (NULL, "Wrong type to apply: ~S", scm_list_1 (proc));
case scm_tc7_vector:
case scm_tc7_wvect:
#ifdef HAVE_ARRAYS

View file

@ -63,8 +63,8 @@ scm_m_generalized_set_x (SCM xorig, SCM env SCM_UNUSED)
if (SCM_SYMBOLP (SCM_CAR (x)))
return scm_cons (SCM_IM_SET_X, x);
else if (SCM_CONSP (SCM_CAR (x)))
return scm_cons (SCM_LIST2 (scm_sym_setter, SCM_CAAR (x)),
scm_append (SCM_LIST2 (SCM_CDAR (x), SCM_CDR (x))));
return scm_cons (scm_list_2 (scm_sym_setter, SCM_CAAR (x)),
scm_append (scm_list_2 (SCM_CDAR (x), SCM_CDR (x))));
else
scm_misc_error (scm_s_set_x, scm_s_variable, SCM_EOL);
}

View file

@ -574,7 +574,8 @@ SCM_DEFINE (scm_stat, "stat", 1, 0, 0,
int en = errno;
SCM_SYSERROR_MSG ("~A: ~S",
SCM_LIST2 (scm_makfrom0str (strerror (errno)), object),
scm_list_2 (scm_makfrom0str (strerror (errno)),
object),
en);
}
return scm_stat2scm (&stat_temp);
@ -753,7 +754,7 @@ SCM_DEFINE (scm_readdir, "readdir", 1, 0, 0,
SCM_VALIDATE_DIR (1, port);
if (!SCM_DIR_OPEN_P (port))
SCM_MISC_ERROR ("Directory ~S is not open.", SCM_LIST1 (port));
SCM_MISC_ERROR ("Directory ~S is not open.", scm_list_1 (port));
errno = 0;
SCM_SYSCALL (rdent = readdir ((DIR *) SCM_CELL_WORD_1 (port)));
@ -774,7 +775,7 @@ SCM_DEFINE (scm_rewinddir, "rewinddir", 1, 0, 0,
{
SCM_VALIDATE_DIR (1, port);
if (!SCM_DIR_OPEN_P (port))
SCM_MISC_ERROR ("Directory ~S is not open.", SCM_LIST1 (port));
SCM_MISC_ERROR ("Directory ~S is not open.", scm_list_1 (port));
rewinddir ((DIR *) SCM_CELL_WORD_1 (port));
@ -1162,7 +1163,7 @@ SCM_DEFINE (scm_select, "select", 3, 2, 0,
if (rv < 0)
SCM_SYSERROR;
}
return SCM_LIST3 (retrieve_select_type (&read_set, read_ports_ready, reads),
return scm_list_3 (retrieve_select_type (&read_set, read_ports_ready, reads),
retrieve_select_type (&write_set, write_ports_ready, writes),
retrieve_select_type (&except_set, SCM_EOL, excepts));
}
@ -1325,7 +1326,7 @@ SCM_DEFINE (scm_lstat, "lstat", 1, 0, 0,
int en = errno;
SCM_SYSERROR_MSG ("~A: ~S",
SCM_LIST2 (scm_makfrom0str (strerror (errno)), str),
scm_list_2 (scm_makfrom0str (strerror (errno)), str),
en);
}
return scm_stat2scm(&stat_temp);

View file

@ -253,7 +253,7 @@ SCM
scm_c_with_fluid (SCM fluid, SCM value, SCM (*cproc) (), void *cdata)
#define FUNC_NAME "scm_c_with_fluid"
{
return scm_c_with_fluids (SCM_LIST1 (fluid), SCM_LIST1 (value),
return scm_c_with_fluids (scm_list_1 (fluid), SCM_LIST1 (value),
cproc, cdata);
}
#undef FUNC_NAME

View file

@ -841,7 +841,7 @@ SCM_DEFINE (scm_gc_stats, "gc-stats", 0, 0, 0,
local_scm_gc_cells_swept = scm_gc_cells_swept_acc;
local_scm_gc_cells_marked = scm_gc_cells_marked_acc;
answer = scm_listify (scm_cons (sym_gc_time_taken, scm_ulong2num (local_scm_gc_time_taken)),
answer = scm_list_n (scm_cons (sym_gc_time_taken, scm_ulong2num (local_scm_gc_time_taken)),
scm_cons (sym_cells_allocated, scm_ulong2num (local_scm_cells_allocated)),
scm_cons (sym_heap_size, scm_ulong2num (local_scm_heap_size)),
scm_cons (sym_mallocated, scm_ulong2num (local_scm_mallocated)),

View file

@ -188,7 +188,7 @@ SCM gh_lookup (const char *sname);
SCM gh_module_lookup (SCM module, const char *sname);
SCM gh_cons(SCM x, SCM y);
#define gh_list scm_listify
#define gh_list scm_list_n
unsigned long gh_length(SCM l);
SCM gh_append(SCM args);
SCM gh_append2(SCM l1, SCM l2);

View file

@ -59,27 +59,27 @@ gh_length (SCM l)
them all together into a single list, which is returned. This is
equivalent to the Scheme procedure (append list1 list2 ...) */
SCM
gh_append(SCM args)
gh_append (SCM args)
{
return scm_append(args);
return scm_append (args);
}
SCM
gh_append2(SCM l1, SCM l2)
gh_append2 (SCM l1, SCM l2)
{
return scm_append(scm_listify(l1, l2, SCM_UNDEFINED));
return scm_append (scm_list_2 (l1, l2));
}
SCM
gh_append3(SCM l1, SCM l2, SCM l3)
{
return scm_append(scm_listify(l1, l2, l3, SCM_UNDEFINED));
return scm_append (scm_list_3 (l1, l2, l3));
}
SCM
gh_append4(SCM l1, SCM l2, SCM l3, SCM l4)
gh_append4 (SCM l1, SCM l2, SCM l3, SCM l4)
{
return scm_append(scm_listify(l1, l2, l3, l4, SCM_UNDEFINED));
return scm_append (scm_list_4 (l1, l2, l3, l4));
}
/* gh_reverse() is defined as a macro in gh.h */

View file

@ -76,7 +76,7 @@
#define SPEC_OF(x) SCM_SLOT (x, scm_si_specializers)
#define DEFVAR(v,val) \
{ scm_eval (SCM_LIST3 (scm_sym_define_public, (v), (val)), \
{ scm_eval (scm_list_3 (scm_sym_define_public, (v), (val)), \
scm_module_goops); }
/* Temporary hack until we get the new module system */
/*fixme* Should optimize by keeping track of the variable object itself */
@ -84,14 +84,14 @@
(v), SCM_BOOL_F)))
/* Fixme: Should use already interned symbols */
#define CALL_GF1(name,a) (scm_apply (GETVAR (scm_str2symbol (name)), \
SCM_LIST1 (a), SCM_EOL))
#define CALL_GF2(name,a,b) (scm_apply (GETVAR (scm_str2symbol (name)), \
SCM_LIST2 (a, b), SCM_EOL))
#define CALL_GF3(name,a,b,c) (scm_apply (GETVAR (scm_str2symbol (name)), \
SCM_LIST3 (a, b, c), SCM_EOL))
#define CALL_GF4(name,a,b,c,d) (scm_apply (GETVAR (scm_str2symbol (name)), \
SCM_LIST4 (a, b, c, d), SCM_EOL))
#define CALL_GF1(name,a) (scm_call_1 (GETVAR (scm_str2symbol (name)), \
a))
#define CALL_GF2(name,a,b) (scm_call_2 (GETVAR (scm_str2symbol (name)), \
a, b))
#define CALL_GF3(name,a,b,c) (scm_call_3 (GETVAR (scm_str2symbol (name)), \
a, b, c))
#define CALL_GF4(name,a,b,c,d) (scm_call_4 (GETVAR (scm_str2symbol (name)), \
a, b, c, d))
/* Class redefinition protocol:
@ -245,7 +245,7 @@ remove_duplicate_slots (SCM l, SCM res, SCM slots_already_seen)
tmp = SCM_CAAR (l);
if (!SCM_SYMBOLP (tmp))
scm_misc_error ("%compute-slots", "bad slot name ~S", SCM_LIST1 (tmp));
scm_misc_error ("%compute-slots", "bad slot name ~S", scm_list_1 (tmp));
if (SCM_FALSEP (scm_c_memq (tmp, slots_already_seen))) {
res = scm_cons (SCM_CAR (l), res);
@ -261,7 +261,8 @@ build_slots_list (SCM dslots, SCM cpl)
register SCM res = dslots;
for (cpl = SCM_CDR(cpl); SCM_NNULLP(cpl); cpl = SCM_CDR(cpl))
res = scm_append (SCM_LIST2 (SCM_SLOT (SCM_CAR (cpl), scm_si_direct_slots),
res = scm_append (scm_list_2 (SCM_SLOT (SCM_CAR (cpl),
scm_si_direct_slots),
res));
/* res contains a list of slots. Remove slots which appears more than once */
@ -323,7 +324,7 @@ compute_getters_n_setters (SCM slots)
{
init = scm_get_keyword (k_init_value, options, 0);
if (init)
init = scm_closure (SCM_LIST2 (SCM_EOL, init), SCM_EOL);
init = scm_closure (scm_list_2 (SCM_EOL, init), SCM_EOL);
else
init = scm_get_keyword (k_init_thunk, options, SCM_BOOL_F);
}
@ -353,7 +354,7 @@ scm_i_get_keyword (SCM key, SCM l, long len, SCM default_value, const char *subr
SCM obj = SCM_CAR (l);
if (!SCM_KEYWORDP (obj))
scm_misc_error (subr, "bad keyword: ~S", SCM_LIST1 (obj));
scm_misc_error (subr, "bad keyword: ~S", scm_list_1 (obj));
else if (SCM_EQ_P (obj, key))
return SCM_CADR (l);
else
@ -379,7 +380,7 @@ SCM_DEFINE (scm_get_keyword, "get-keyword", 3, 0, 0,
SCM_ASSERT (SCM_KEYWORDP (key), key, SCM_ARG1, FUNC_NAME);
len = scm_ilength (l);
if (len < 0 || len % 2 == 1)
scm_misc_error (FUNC_NAME, "Bad keyword-value list: ~S", SCM_LIST1 (l));
scm_misc_error (FUNC_NAME, "Bad keyword-value list: ~S", scm_list_1 (l));
return scm_i_get_keyword (key, l, len, default_value, FUNC_NAME);
}
@ -422,7 +423,7 @@ SCM_DEFINE (scm_sys_initialize_object, "%initialize-object", 2, 0, 0,
long n = scm_ilength (SCM_CDR (slot_name));
if (n & 1) /* odd or -1 */
SCM_MISC_ERROR ("class contains bogus slot definition: ~S",
SCM_LIST1 (slot_name));
scm_list_1 (slot_name));
tmp = scm_i_get_keyword (k_init_keyword,
SCM_CDR (slot_name),
n,
@ -434,7 +435,7 @@ SCM_DEFINE (scm_sys_initialize_object, "%initialize-object", 2, 0, 0,
/* an initarg was provided for this slot */
if (!SCM_KEYWORDP (tmp))
SCM_MISC_ERROR ("initarg must be a keyword. It was ~S",
SCM_LIST1 (tmp));
scm_list_1 (tmp));
slot_value = scm_i_get_keyword (tmp,
initargs,
n_initargs,
@ -487,12 +488,12 @@ SCM_DEFINE (scm_sys_prep_layout_x, "%prep-layout!", 1, 0, 0,
nfields = SCM_SLOT (class, scm_si_nfields);
if (!SCM_INUMP (nfields) || SCM_INUM (nfields) < 0)
SCM_MISC_ERROR ("bad value in nfields slot: ~S",
SCM_LIST1 (nfields));
scm_list_1 (nfields));
n = 2 * SCM_INUM (nfields);
if (n < sizeof (SCM_CLASS_CLASS_LAYOUT) - 1
&& SCM_SUBCLASSP (class, scm_class_class))
SCM_MISC_ERROR ("class object doesn't have enough fields: ~S",
SCM_LIST1 (nfields));
scm_list_1 (nfields));
s = n > 0 ? scm_must_malloc (n, FUNC_NAME) : 0;
for (i = 0; i < n; i += 2)
@ -606,7 +607,7 @@ scm_basic_basic_make_class (SCM class, SCM name, SCM dsupers, SCM dslots)
/* Initialize its slots */
#if 0
cpl = compute_cpl (dsupers, SCM_LIST1(z));
cpl = compute_cpl (dsupers, scm_list_1 (z));
#endif
SCM_SET_SLOT (z, scm_si_direct_supers, dsupers);
cpl = compute_cpl (z);
@ -661,45 +662,45 @@ static SCM
build_class_class_slots ()
{
return maplist (
scm_cons (SCM_LIST3 (scm_str2symbol ("layout"),
scm_cons (scm_list_3 (scm_str2symbol ("layout"),
k_class,
scm_class_protected_read_only),
scm_cons (SCM_LIST3 (scm_str2symbol ("vcell"),
scm_cons (scm_list_3 (scm_str2symbol ("vcell"),
k_class,
scm_class_opaque),
scm_cons (SCM_LIST3 (scm_str2symbol ("vtable"),
scm_cons (scm_list_3 (scm_str2symbol ("vtable"),
k_class,
scm_class_self),
scm_cons (scm_str2symbol ("print"),
scm_cons (SCM_LIST3 (scm_str2symbol ("procedure"),
scm_cons (scm_list_3 (scm_str2symbol ("procedure"),
k_class,
scm_class_protected_opaque),
scm_cons (SCM_LIST3 (scm_str2symbol ("setter"),
scm_cons (scm_list_3 (scm_str2symbol ("setter"),
k_class,
scm_class_protected_opaque),
scm_cons (scm_str2symbol ("redefined"),
scm_cons (SCM_LIST3 (scm_str2symbol ("h0"),
scm_cons (scm_list_3 (scm_str2symbol ("h0"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h1"),
scm_cons (scm_list_3 (scm_str2symbol ("h1"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h2"),
scm_cons (scm_list_3 (scm_str2symbol ("h2"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h3"),
scm_cons (scm_list_3 (scm_str2symbol ("h3"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h4"),
scm_cons (scm_list_3 (scm_str2symbol ("h4"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h5"),
scm_cons (scm_list_3 (scm_str2symbol ("h5"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h6"),
scm_cons (scm_list_3 (scm_str2symbol ("h6"),
k_class,
scm_class_int),
scm_cons (SCM_LIST3 (scm_str2symbol ("h7"),
scm_cons (scm_list_3 (scm_str2symbol ("h7"),
k_class,
scm_class_int),
scm_cons (scm_str2symbol ("name"),
@ -763,16 +764,16 @@ create_basic_classes (void)
name = scm_str2symbol ("<object>");
scm_class_object = scm_permanent_object (scm_basic_make_class (scm_class_class,
name,
SCM_LIST1 (scm_class_top),
scm_list_1 (scm_class_top),
SCM_EOL));
DEFVAR (name, scm_class_object);
/* <top> <object> and <class> were partially initialized. Correct them here */
SCM_SET_SLOT (scm_class_object, scm_si_direct_subclasses, SCM_LIST1 (scm_class_class));
SCM_SET_SLOT (scm_class_object, scm_si_direct_subclasses, scm_list_1 (scm_class_class));
SCM_SET_SLOT (scm_class_class, scm_si_direct_supers, SCM_LIST1 (scm_class_object));
SCM_SET_SLOT (scm_class_class, scm_si_cpl, SCM_LIST3 (scm_class_class, scm_class_object, scm_class_top));
SCM_SET_SLOT (scm_class_class, scm_si_direct_supers, scm_list_1 (scm_class_object));
SCM_SET_SLOT (scm_class_class, scm_si_cpl, scm_list_3 (scm_class_class, scm_class_object, scm_class_top));
}
/******************************************************************************/
@ -1065,7 +1066,7 @@ get_slot_value (SCM class SCM_UNUSED, SCM obj, SCM slotdef)
if (!SCM_CLOSUREP (code))
return SCM_SUBRF (code) (obj);
env = SCM_EXTEND_ENV (SCM_CLOSURE_FORMALS (code),
SCM_LIST1 (obj),
scm_list_1 (obj),
SCM_ENV (code));
/* Evaluate the closure body */
return scm_eval_body (SCM_CDR (SCM_CODE (code)), env);
@ -1104,7 +1105,7 @@ set_slot_value (SCM class SCM_UNUSED, SCM obj, SCM slotdef, SCM value)
else
{
env = SCM_EXTEND_ENV (SCM_CLOSURE_FORMALS (code),
SCM_LIST2 (obj, value),
scm_list_2 (obj, value),
SCM_ENV (code));
/* Evaluate the closure body */
scm_eval_body (SCM_CDR (SCM_CODE (code)), env);
@ -1521,7 +1522,7 @@ scm_change_object_class (SCM obj, SCM old_class SCM_UNUSED, SCM new_class)
{
if (!burnin (obj))
scm_internal_dynamic_wind (go_to_hell, purgatory, go_to_heaven,
(void *) SCM_LIST2 (obj, new_class),
(void *) scm_list_2 (obj, new_class),
(void *) obj);
}
@ -1552,7 +1553,9 @@ SCM_SYMBOL (scm_sym_args, "args");
SCM
scm_make_method_cache (SCM gf)
{
return SCM_LIST5 (SCM_IM_DISPATCH, scm_sym_args, SCM_MAKINUM (1),
return scm_list_5 (SCM_IM_DISPATCH,
scm_sym_args,
SCM_MAKINUM (1),
scm_c_make_vector (SCM_INITIAL_MCACHE_SIZE,
list_of_no_method),
gf);
@ -1616,7 +1619,7 @@ SCM_DEFINE (scm_enable_primitive_generic_x, "enable-primitive-generic!", 0, 0, 1
SCM_ASSERT (scm_subr_p (subr) && SCM_SUBR_GENERIC (subr),
subr, SCM_ARGn, FUNC_NAME);
*SCM_SUBR_GENERIC (subr)
= scm_make (SCM_LIST3 (scm_class_generic,
= scm_make (scm_list_3 (scm_class_generic,
k_name,
SCM_SNAME (subr)));
subrs = SCM_CDR (subrs);
@ -1915,7 +1918,7 @@ scm_m_atdispatch (SCM xorig, SCM env)
x = SCM_CDR (x);
gf = SCM_XEVALCAR (x, env);
SCM_VALIDATE_PUREGENERIC (SCM_ARG4, gf);
return SCM_LIST5 (SCM_IM_DISPATCH, args, n, v, gf);
return scm_list_5 (SCM_IM_DISPATCH, args, n, v, gf);
}
#undef FUNC_NAME
@ -2003,13 +2006,13 @@ SCM_DEFINE (scm_make, "make", 0, 0, 1,
{
#ifdef USE_THREADS
z = scm_make_struct (class, SCM_INUM0,
SCM_LIST4 (SCM_EOL,
scm_list_4 (SCM_EOL,
SCM_INUM0,
SCM_BOOL_F,
scm_make_mutex ()));
#else
z = scm_make_struct (class, SCM_INUM0,
SCM_LIST3 (SCM_EOL, SCM_INUM0, SCM_BOOL_F));
scm_list_3 (SCM_EOL, SCM_INUM0, SCM_BOOL_F));
#endif
scm_set_procedure_property_x (z, scm_sym_name,
scm_get_keyword (k_name,
@ -2092,7 +2095,7 @@ SCM_DEFINE (scm_find_method, "find-method", 0, 0, 1,
gf = SCM_CAR(l); l = SCM_CDR(l);
SCM_VALIDATE_GENERIC (1, gf);
if (SCM_NULLP (SCM_SLOT (gf, scm_si_methods)))
SCM_MISC_ERROR ("no methods for generic ~S", SCM_LIST1 (gf));
SCM_MISC_ERROR ("no methods for generic ~S", scm_list_1 (gf));
return scm_compute_applicable_methods (gf, l, len - 1, 1);
}
@ -2139,7 +2142,7 @@ make_stdcls (SCM *var, char *name, SCM meta, SCM super, SCM slots)
tmp,
SCM_CONSP (super)
? super
: SCM_LIST1 (super),
: scm_list_1 (super),
slots));
DEFVAR(tmp, *var);
}
@ -2151,28 +2154,28 @@ static void
create_standard_classes (void)
{
SCM slots;
SCM method_slots = SCM_LIST4 (scm_str2symbol ("generic-function"),
SCM method_slots = scm_list_4 (scm_str2symbol ("generic-function"),
scm_str2symbol ("specializers"),
scm_str2symbol ("procedure"),
scm_str2symbol ("code-table"));
SCM amethod_slots = SCM_LIST1 (SCM_LIST3 (scm_str2symbol ("slot-definition"),
SCM amethod_slots = scm_list_1 (scm_list_3 (scm_str2symbol ("slot-definition"),
k_init_keyword,
k_slot_definition));
#ifdef USE_THREADS
SCM mutex_slot = SCM_LIST1 (scm_str2symbol ("make-mutex"));
SCM mutex_slot = scm_list_1 (scm_str2symbol ("make-mutex"));
#else
SCM mutex_slot = SCM_BOOL_F;
#endif
SCM gf_slots = SCM_LIST4 (scm_str2symbol ("methods"),
SCM_LIST3 (scm_str2symbol ("n-specialized"),
SCM gf_slots = scm_list_4 (scm_str2symbol ("methods"),
scm_list_3 (scm_str2symbol ("n-specialized"),
k_init_value,
SCM_INUM0),
SCM_LIST3 (scm_str2symbol ("used-by"),
scm_list_3 (scm_str2symbol ("used-by"),
k_init_value,
SCM_BOOL_F),
SCM_LIST3 (scm_str2symbol ("cache-mutex"),
scm_list_3 (scm_str2symbol ("cache-mutex"),
k_init_thunk,
scm_closure (SCM_LIST2 (SCM_EOL,
scm_closure (scm_list_2 (SCM_EOL,
mutex_slot),
SCM_EOL)));
@ -2187,15 +2190,15 @@ create_standard_classes (void)
scm_class_class, scm_class_foreign_slot, SCM_EOL);
make_stdcls (&scm_class_self, "<self-slot>",
scm_class_class,
SCM_LIST2 (scm_class_foreign_slot, scm_class_read_only),
scm_list_2 (scm_class_foreign_slot, scm_class_read_only),
SCM_EOL);
make_stdcls (&scm_class_protected_opaque, "<protected-opaque-slot>",
scm_class_class,
SCM_LIST2 (scm_class_protected, scm_class_opaque),
scm_list_2 (scm_class_protected, scm_class_opaque),
SCM_EOL);
make_stdcls (&scm_class_protected_read_only, "<protected-read-only-slot>",
scm_class_class,
SCM_LIST2 (scm_class_protected, scm_class_read_only),
scm_list_2 (scm_class_protected, scm_class_read_only),
SCM_EOL);
make_stdcls (&scm_class_scm, "<scm-slot>",
scm_class_class, scm_class_protected, SCM_EOL);
@ -2216,10 +2219,10 @@ create_standard_classes (void)
make_stdcls (&scm_class_foreign_class, "<foreign-class>",
scm_class_class, scm_class_class,
SCM_LIST2 (SCM_LIST3 (scm_str2symbol ("constructor"),
scm_list_2 (scm_list_3 (scm_str2symbol ("constructor"),
k_class,
scm_class_opaque),
SCM_LIST3 (scm_str2symbol ("destructor"),
scm_list_3 (scm_str2symbol ("destructor"),
k_class,
scm_class_opaque)));
make_stdcls (&scm_class_foreign_object, "<foreign-object>",
@ -2253,12 +2256,12 @@ create_standard_classes (void)
SCM_SET_CLASS_FLAGS (scm_class_generic, SCM_CLASSF_PURE_GENERIC);
make_stdcls (&scm_class_generic_with_setter, "<generic-with-setter>",
scm_class_entity_class,
SCM_LIST2 (scm_class_generic, scm_class_entity_with_setter),
scm_list_2 (scm_class_generic, scm_class_entity_with_setter),
SCM_EOL);
#if 0
/* Patch cpl since compute_cpl doesn't support multiple inheritance. */
SCM_SET_SLOT (scm_class_generic_with_setter, scm_si_cpl,
scm_append (SCM_LIST3 (SCM_LIST2 (scm_class_generic_with_setter,
scm_append (scm_list_3 (scm_list_2 (scm_class_generic_with_setter,
scm_class_generic),
SCM_SLOT (scm_class_entity_with_setter,
scm_si_cpl),
@ -2309,7 +2312,7 @@ create_standard_classes (void)
scm_class_class, scm_class_port, SCM_EOL);
make_stdcls (&scm_class_input_output_port, "<input-output-port>",
scm_class_class,
SCM_LIST2 (scm_class_input_port, scm_class_output_port),
scm_list_2 (scm_class_input_port, scm_class_output_port),
SCM_EOL);
}
@ -2349,7 +2352,7 @@ scm_make_extended_class (char *type_name)
{
return make_class_from_template ("<%s>",
type_name,
SCM_LIST1 (scm_class_top));
scm_list_1 (scm_class_top));
}
static void
@ -2376,21 +2379,20 @@ scm_make_port_classes (long ptobnum, char *type_name)
{
SCM c, class = make_class_from_template ("<%s-port>",
type_name,
SCM_LIST1 (scm_class_port));
scm_list_1 (scm_class_port));
scm_port_class[SCM_IN_PCLASS_INDEX + ptobnum]
= make_class_from_template ("<%s-input-port>",
type_name,
SCM_LIST2 (class, scm_class_input_port));
scm_list_2 (class, scm_class_input_port));
scm_port_class[SCM_OUT_PCLASS_INDEX + ptobnum]
= make_class_from_template ("<%s-output-port>",
type_name,
SCM_LIST2 (class, scm_class_output_port));
scm_list_2 (class, scm_class_output_port));
scm_port_class[SCM_INOUT_PCLASS_INDEX + ptobnum]
= c
= make_class_from_template ("<%s-input-output-port>",
type_name,
SCM_LIST2 (class,
scm_class_input_output_port));
scm_list_2 (class, scm_class_input_output_port));
/* Patch cpl (since this tree is too complex for the C level compute-cpl) */
SCM_SET_SLOT (c, scm_si_cpl,
scm_cons2 (c, class, SCM_SLOT (scm_class_input_output_port, scm_si_cpl)));
@ -2447,7 +2449,7 @@ scm_make_foreign_object (SCM class, SCM initargs)
void * (*constructor) (SCM)
= (void * (*) (SCM)) SCM_SLOT (class, scm_si_constructor);
if (constructor == 0)
SCM_MISC_ERROR ("Can't make instances of class ~S", SCM_LIST1 (class));
SCM_MISC_ERROR ("Can't make instances of class ~S", scm_list_1 (class));
return scm_wrap_object (class, constructor (initargs));
}
#undef FUNC_NAME
@ -2469,7 +2471,7 @@ scm_make_class (SCM meta, char *s_name, SCM supers, size_t size,
SCM name, class;
name = scm_str2symbol (s_name);
if (SCM_IMP (supers))
supers = SCM_LIST1 (scm_class_foreign_object);
supers = scm_list_1 (scm_class_foreign_object);
class = scm_basic_basic_make_class (meta, name, supers, SCM_EOL);
scm_sys_inherit_magic_x (class, supers);
@ -2513,40 +2515,42 @@ scm_add_slot (SCM class, char *slot_name, SCM slot_class,
SCM get = scm_c_make_subr ("goops:get", scm_tc7_subr_1, getter);
SCM set = scm_c_make_subr ("goops:set", scm_tc7_subr_2,
setter ? setter : default_setter);
SCM getm = scm_closure (SCM_LIST2 (SCM_LIST1 (sym_o),
SCM_LIST2 (get, sym_o)),
SCM getm = scm_closure (scm_list_2 (scm_list_1 (sym_o),
scm_list_2 (get, sym_o)),
SCM_EOL);
SCM setm = scm_closure (SCM_LIST2 (SCM_LIST2 (sym_o, sym_x),
SCM_LIST3 (set, sym_o, sym_x)),
SCM setm = scm_closure (scm_list_2 (scm_list_2 (sym_o, sym_x),
scm_list_3 (set, sym_o, sym_x)),
SCM_EOL);
{
SCM name = scm_str2symbol (slot_name);
SCM aname = scm_str2symbol (accessor_name);
SCM gf = scm_ensure_accessor (aname);
SCM slot = SCM_LIST5 (name,
k_class, slot_class,
SCM slot = scm_list_5 (name,
k_class,
slot_class,
setter ? k_accessor : k_getter,
gf);
SCM gns = SCM_LIST4 (name, SCM_BOOL_F, get, set);
SCM gns = scm_list_4 (name, SCM_BOOL_F, get, set);
scm_add_method (gf, scm_make (SCM_LIST5 (scm_class_accessor,
scm_add_method (gf, scm_make (scm_list_5 (scm_class_accessor,
k_specializers,
SCM_LIST1 (class),
k_procedure, getm)));
scm_list_1 (class),
k_procedure,
getm)));
scm_add_method (scm_setter (gf),
scm_make (SCM_LIST5 (scm_class_accessor,
scm_make (scm_list_5 (scm_class_accessor,
k_specializers,
SCM_LIST2 (class,
scm_class_top),
k_procedure, setm)));
scm_list_2 (class, scm_class_top),
k_procedure,
setm)));
DEFVAR (aname, gf);
SCM_SET_SLOT (class, scm_si_slots,
scm_append_x (SCM_LIST2 (SCM_SLOT (class, scm_si_slots),
SCM_LIST1 (slot))));
scm_append_x (scm_list_2 (SCM_SLOT (class, scm_si_slots),
scm_list_1 (slot))));
SCM_SET_SLOT (class, scm_si_getters_n_setters,
scm_append_x (SCM_LIST2 (SCM_SLOT (class, scm_si_getters_n_setters),
SCM_LIST1 (gns))));
scm_append_x (scm_list_2 (SCM_SLOT (class, scm_si_getters_n_setters),
scm_list_1 (gns))));
}
}
{
@ -2589,10 +2593,9 @@ scm_ensure_accessor (SCM name)
SCM gf = scm_call_2 (SCM_TOP_LEVEL_LOOKUP_CLOSURE, name, SCM_BOOL_F);
if (!SCM_IS_A_P (gf, scm_class_generic_with_setter))
{
gf = scm_make (SCM_LIST3 (scm_class_generic, k_name, name));
gf = scm_make (SCM_LIST5 (scm_class_generic_with_setter,
k_name, name,
k_setter, gf));
gf = scm_make (scm_list_3 (scm_class_generic, k_name, name));
gf = scm_make (scm_list_5 (scm_class_generic_with_setter,
k_name, name, k_setter, gf));
}
return gf;
}
@ -2602,7 +2605,7 @@ SCM_SYMBOL (sym_internal_add_method_x, "internal-add-method!");
void
scm_add_method (SCM gf, SCM m)
{
scm_eval (SCM_LIST3 (sym_internal_add_method_x, gf, m), scm_module_goops);
scm_eval (scm_list_3 (sym_internal_add_method_x, gf, m), scm_module_goops);
}
#ifdef GUILE_DEBUG
@ -2661,7 +2664,7 @@ scm_init_goops_builtins (void)
#include "libguile/goops.x"
#endif
list_of_no_method = scm_permanent_object (SCM_LIST1 (sym_no_method));
list_of_no_method = scm_permanent_object (scm_list_1 (sym_no_method));
hell = scm_must_malloc (hell_size, "hell");
#ifdef USE_THREADS
@ -2677,7 +2680,7 @@ scm_init_goops_builtins (void)
{
SCM name = scm_str2symbol ("no-applicable-method");
scm_no_applicable_method
= scm_permanent_object (scm_make (SCM_LIST3 (scm_class_generic,
= scm_permanent_object (scm_make (scm_list_3 (scm_class_generic,
k_name,
name)));
DEFVAR (name, scm_no_applicable_method);

View file

@ -220,7 +220,7 @@ scm_gsubr_apply (SCM args)
if (n > SCM_GSUBR_MAX)
scm_misc_error (FUNC_NAME,
"Function ~S has illegal arity ~S.",
SCM_LIST2 (self, SCM_MAKINUM (n)));
scm_list_2 (self, SCM_MAKINUM (n)));
#endif
args = SCM_CDR (args);
for (i = 0; i < SCM_GSUBR_REQ (typ); i++) {

View file

@ -230,7 +230,7 @@ guardian_apply (SCM guardian, SCM obj, SCM throw_p)
{
if (DESTROYED_P (GUARDIAN (guardian)))
scm_misc_error ("guard", "attempted use of destroyed guardian: ~A",
SCM_LIST1 (guardian));
scm_list_1 (guardian));
if (!SCM_UNBNDP (obj))
return scm_guard (guardian, obj,
@ -266,7 +266,7 @@ scm_guard (SCM guardian, SCM obj, int throw_p)
if (throw_p)
scm_misc_error ("guard",
"object is already greedily guarded: ~A",
SCM_LIST1 (obj));
scm_list_1 (obj));
else
return SCM_BOOL_F;
}
@ -401,7 +401,8 @@ SCM_DEFINE (scm_destroy_guardian_x, "destroy-guardian!", 1, 0, 0,
if (DESTROYED_P (g))
{
SCM_ALLOW_INTS;
SCM_MISC_ERROR ("guardian is already destroyed: ~A", SCM_LIST1 (guardian));
SCM_MISC_ERROR ("guardian is already destroyed: ~A",
scm_list_1 (guardian));
}
if (GREEDY_P (g))

View file

@ -252,7 +252,7 @@ SCM_DEFINE (scm_add_hook_x, "add-hook!", 2, 1, 0,
rest = scm_delq_x (proc, SCM_HOOK_PROCEDURES (hook));
SCM_SET_HOOK_PROCEDURES (hook,
(!SCM_UNBNDP (append_p) && !SCM_FALSEP (append_p)
? scm_append_x (SCM_LIST2 (rest, SCM_LIST1 (proc)))
? scm_append_x (scm_list_2 (rest, scm_list_1 (proc)))
: scm_cons (proc, rest)));
return SCM_UNSPECIFIED;
}
@ -294,7 +294,7 @@ SCM_DEFINE (scm_run_hook, "run-hook", 1, 0, 1,
SCM_VALIDATE_HOOK (1,hook);
if (scm_ilength (args) != SCM_HOOK_ARITY (hook))
SCM_MISC_ERROR ("Hook ~S requires ~A arguments",
SCM_LIST2 (hook,SCM_MAKINUM (SCM_HOOK_ARITY (hook))));
scm_list_2 (hook, SCM_MAKINUM (SCM_HOOK_ARITY (hook))));
scm_c_run_hook (hook, args);
return SCM_UNSPECIFIED;
}

View file

@ -60,8 +60,54 @@
/* creating lists */
#define SCM_I_CONS(cell,x,y) \
do { \
SCM_NEWCELL (cell); \
SCM_SET_CELL_OBJECT_0 (cell, x); \
SCM_SET_CELL_OBJECT_1 (cell, y); \
} while (0)
SCM
scm_listify (SCM elt, ...)
scm_list_1 (SCM e1)
{
SCM c1;
SCM_I_CONS (c1, e1, SCM_EOL);
return c1;
}
SCM
scm_list_2 (SCM e1, SCM e2)
{
SCM c1, c2;
SCM_I_CONS (c2, e2, SCM_EOL);
SCM_I_CONS (c1, e1, c2);
return c1;
}
SCM
scm_list_3 (SCM e1, SCM e2, SCM e3)
{
SCM c1, c2, c3;
SCM_I_CONS (c3, e3, SCM_EOL);
SCM_I_CONS (c2, e2, c3);
SCM_I_CONS (c1, e1, c2);
return c1;
}
SCM
scm_list_4 (SCM e1, SCM e2, SCM e3, SCM e4)
{
return scm_cons2 (e1, e2, scm_list_2 (e3, e4));
}
SCM
scm_list_5 (SCM e1, SCM e2, SCM e3, SCM e4, SCM e5)
{
return scm_cons2 (e1, e2, scm_list_3 (e3, e4, e5));
}
SCM
scm_list_n (SCM elt, ...)
{
va_list foo;
SCM answer = SCM_EOL;
@ -286,7 +332,7 @@ SCM_DEFINE (scm_last_pair, "last-pair", 1, 0, 0,
tortoise = SCM_CDR(tortoise);
}
while (! SCM_EQ_P (hare, tortoise));
SCM_MISC_ERROR ("Circular structure in position 1: ~S", SCM_LIST1 (lst));
SCM_MISC_ERROR ("Circular structure in position 1: ~S", scm_list_1 (lst));
}
#undef FUNC_NAME
@ -315,7 +361,7 @@ SCM_DEFINE (scm_reverse, "reverse", 1, 0, 0,
tortoise = SCM_CDR (tortoise);
}
while (! SCM_EQ_P (hare, tortoise));
SCM_MISC_ERROR ("Circular structure in position 1: ~S", SCM_LIST1 (lst));
SCM_MISC_ERROR ("Circular structure in position 1: ~S", scm_list_1 (lst));
}
#undef FUNC_NAME

View file

@ -48,26 +48,13 @@
#define SCM_LIST0 SCM_EOL
#define SCM_LIST1(e0) scm_cons ((e0), SCM_EOL)
#define SCM_LIST2(e0, e1) scm_cons2 ((e0), (e1), SCM_EOL)
#define SCM_LIST3(e0, e1, e2) scm_cons ((e0), SCM_LIST2 ((e1), (e2)))
#define SCM_LIST4(e0, e1, e2, e3)\
scm_cons2 ((e0), (e1), SCM_LIST2 ((e2), (e3)))
#define SCM_LIST5(e0, e1, e2, e3, e4)\
scm_cons ((e0), SCM_LIST4 ((e1), (e2), (e3), (e4)))
#define SCM_LIST6(e0, e1, e2, e3, e4, e5)\
scm_cons2 ((e0), (e1), SCM_LIST4 ((e2), (e3), (e4), (e5)))
#define SCM_LIST7(e0, e1, e2, e3, e4, e5, e6)\
scm_cons ((e0), SCM_LIST6 ((e1), (e2), (e3), (e4), (e5), (e6)))
#define SCM_LIST8(e0, e1, e2, e3, e4, e5, e6, e7)\
scm_cons2 ((e0), (e1), SCM_LIST6 ((e2), (e3), (e4), (e5), (e6), (e7)))
#define SCM_LIST9(e0, e1, e2, e3, e4, e5, e6, e7, e8)\
scm_cons ((e0),\
SCM_LIST8 ((e1), (e2), (e3), (e4), (e5), (e6), (e7), (e8)))
extern SCM scm_list_1 (SCM e1);
extern SCM scm_list_2 (SCM e1, SCM e2);
extern SCM scm_list_3 (SCM e1, SCM e2, SCM e3);
extern SCM scm_list_4 (SCM e1, SCM e2, SCM e3, SCM e4);
extern SCM scm_list_5 (SCM e1, SCM e2, SCM e3, SCM e4, SCM e5);
extern SCM scm_list_n (SCM elt, ...);
extern SCM scm_list_head (SCM lst, SCM k);
extern SCM scm_listify (SCM elt, ...);
extern SCM scm_list (SCM objs);
extern SCM scm_cons_star (SCM arg, SCM objs);
extern SCM scm_null_p (SCM x);
@ -103,6 +90,26 @@ extern void scm_init_list (void);
#if (SCM_DEBUG_DEPRECATED == 0)
#define SCM_LIST0 SCM_EOL
#define SCM_LIST1(e0) scm_cons ((e0), SCM_EOL)
#define SCM_LIST2(e0, e1) scm_cons2 ((e0), (e1), SCM_EOL)
#define SCM_LIST3(e0, e1, e2) scm_cons ((e0), SCM_LIST2 ((e1), (e2)))
#define SCM_LIST4(e0, e1, e2, e3)\
scm_cons2 ((e0), (e1), SCM_LIST2 ((e2), (e3)))
#define SCM_LIST5(e0, e1, e2, e3, e4)\
scm_cons ((e0), SCM_LIST4 ((e1), (e2), (e3), (e4)))
#define SCM_LIST6(e0, e1, e2, e3, e4, e5)\
scm_cons2 ((e0), (e1), SCM_LIST4 ((e2), (e3), (e4), (e5)))
#define SCM_LIST7(e0, e1, e2, e3, e4, e5, e6)\
scm_cons ((e0), SCM_LIST6 ((e1), (e2), (e3), (e4), (e5), (e6)))
#define SCM_LIST8(e0, e1, e2, e3, e4, e5, e6, e7)\
scm_cons2 ((e0), (e1), SCM_LIST6 ((e2), (e3), (e4), (e5), (e6), (e7)))
#define SCM_LIST9(e0, e1, e2, e3, e4, e5, e6, e7, e8)\
scm_cons ((e0),\
SCM_LIST8 ((e1), (e2), (e3), (e4), (e5), (e6), (e7), (e8)))
#define scm_listify scm_list_n
extern SCM scm_sloppy_memq (SCM x, SCM lst);
extern SCM scm_sloppy_memv (SCM x, SCM lst);
extern SCM scm_sloppy_member (SCM x, SCM lst);

View file

@ -243,7 +243,7 @@ scm_init_load_path ()
SCM path = SCM_EOL;
#ifdef SCM_LIBRARY_DIR
path = SCM_LIST3 (scm_makfrom0str (SCM_SITE_DIR),
path = scm_list_3 (scm_makfrom0str (SCM_SITE_DIR),
scm_makfrom0str (SCM_LIBRARY_DIR),
scm_makfrom0str (SCM_PKGDATA_DIR));
#endif /* SCM_LIBRARY_DIR */
@ -453,7 +453,7 @@ SCM_DEFINE (scm_primitive_load_path, "primitive-load-path", 1, 0, 0,
SCM_MISC_ERROR ((absolute
? "Unable to load file ~S"
: "Unable to find file ~S in load path"),
SCM_LIST1 (filename));
scm_list_1 (filename));
}
return scm_primitive_load (full_filename);
@ -507,11 +507,11 @@ init_build_info ()
void
scm_init_load ()
{
scm_listofnullstr = scm_permanent_object (SCM_LIST1 (scm_nullstr));
scm_listofnullstr = scm_permanent_object (scm_list_1 (scm_nullstr));
scm_loc_load_path = SCM_VARIABLE_LOC (scm_c_define ("%load-path", SCM_EOL));
scm_loc_load_extensions
= SCM_VARIABLE_LOC (scm_c_define ("%load-extensions",
SCM_LIST2 (scm_makfrom0str (".scm"),
scm_list_2 (scm_makfrom0str (".scm"),
scm_nullstr)));
scm_loc_load_hook = SCM_VARIABLE_LOC (scm_c_define ("%load-hook", SCM_BOOL_F));

View file

@ -170,7 +170,7 @@ scm_c_define_module (const char *name,
void (*init)(void *), void *data)
{
SCM module = scm_call_1 (SCM_VARIABLE_REF (process_define_module_var),
SCM_LIST1 (convert_module_name (name)));
scm_list_1 (convert_module_name (name)));
if (init)
scm_c_call_with_current_module (module, (SCM (*)(void*))init, data);
return module;
@ -180,7 +180,7 @@ void
scm_c_use_module (const char *name)
{
scm_call_1 (SCM_VARIABLE_REF (process_use_modules_var),
SCM_LIST1 (convert_module_name (name)));
scm_list_1 (convert_module_name (name)));
}
static SCM module_export_x_var;
@ -440,7 +440,7 @@ scm_sym2var (SCM sym, SCM proc, SCM definep)
}
if (var != SCM_BOOL_F && !SCM_VARIABLEP (var))
SCM_MISC_ERROR ("~S is not bound to a variable", SCM_LIST1 (sym));
SCM_MISC_ERROR ("~S is not bound to a variable", scm_list_1 (sym));
return var;
}
@ -461,7 +461,7 @@ scm_module_lookup (SCM module, SCM sym)
var = scm_sym2var (sym, scm_module_lookup_closure (module), SCM_BOOL_F);
if (SCM_FALSEP (var))
SCM_MISC_ERROR ("unbound variable: ~S", SCM_LIST1 (sym));
SCM_MISC_ERROR ("unbound variable: ~S", scm_list_1 (sym));
return var;
}
#undef FUNC_NAME
@ -478,7 +478,7 @@ scm_lookup (SCM sym)
SCM var =
scm_sym2var (sym, scm_current_module_lookup_closure (), SCM_BOOL_F);
if (SCM_FALSEP (var))
scm_misc_error ("scm_lookup", "unbound variable: ~S", SCM_LIST1 (sym));
scm_misc_error ("scm_lookup", "unbound variable: ~S", scm_list_1 (sym));
return var;
}
@ -639,7 +639,7 @@ scm_post_boot_init_modules ()
#if SCM_DEBUG_DEPRECATED == 0
module_prefix = PERM (SCM_LIST2 (scm_sym_app, scm_sym_modules));
module_prefix = PERM (scm_list_2 (scm_sym_app, scm_sym_modules));
make_modules_in_var = PERM (scm_c_lookup ("make-modules-in"));
root_module_lookup_closure =
PERM (scm_module_lookup_closure (SCM_VARIABLE_REF (the_root_module_var)));
@ -669,7 +669,7 @@ scm_module_full_name (SCM name)
if (SCM_EQ_P (SCM_CAR (name), scm_sym_app))
return name;
else
return scm_append (SCM_LIST2 (module_prefix, name));
return scm_append (scm_list_2 (module_prefix, name));
}
SCM

View file

@ -260,7 +260,7 @@ SCM_DEFINE (scm_getnet, "getnet", 0, 1, 0,
entry = getnetbyaddr (netnum, AF_INET);
}
if (!entry)
SCM_SYSERROR_MSG ("no such network ~A", SCM_LIST1 (net), errno);
SCM_SYSERROR_MSG ("no such network ~A", scm_list_1 (net), errno);
ve[0] = scm_mem2string (entry->n_name, strlen (entry->n_name));
ve[1] = scm_makfromstrs (-1, entry->n_aliases);
ve[2] = SCM_MAKINUM (entry->n_addrtype + 0L);
@ -310,7 +310,7 @@ SCM_DEFINE (scm_getproto, "getproto", 0, 1, 0,
entry = getprotobynumber (protonum);
}
if (!entry)
SCM_SYSERROR_MSG ("no such protocol ~A", SCM_LIST1 (protocol), errno);
SCM_SYSERROR_MSG ("no such protocol ~A", scm_list_1 (protocol), errno);
ve[0] = scm_mem2string (entry->p_name, strlen (entry->p_name));
ve[1] = scm_makfromstrs (-1, entry->p_aliases);
ve[2] = SCM_MAKINUM (entry->p_proto + 0L);
@ -374,7 +374,7 @@ SCM_DEFINE (scm_getserv, "getserv", 0, 2, 0,
entry = getservbyport (htons (SCM_INUM (name)), SCM_STRING_CHARS (protocol));
}
if (!entry)
SCM_SYSERROR_MSG("no such service ~A", SCM_LIST1 (name), errno);
SCM_SYSERROR_MSG("no such service ~A", scm_list_1 (name), errno);
return scm_return_entry (entry);
}
#undef FUNC_NAME

View file

@ -344,19 +344,19 @@ scm_call_generic_0 (SCM gf)
SCM
scm_call_generic_1 (SCM gf, SCM a1)
{
return scm_apply_generic (gf, SCM_LIST1 (a1));
return scm_apply_generic (gf, scm_list_1 (a1));
}
SCM
scm_call_generic_2 (SCM gf, SCM a1, SCM a2)
{
return scm_apply_generic (gf, SCM_LIST2 (a1, a2));
return scm_apply_generic (gf, scm_list_2 (a1, a2));
}
SCM
scm_call_generic_3 (SCM gf, SCM a1, SCM a2, SCM a3)
{
return scm_apply_generic (gf, SCM_LIST3 (a1, a2, a3));
return scm_apply_generic (gf, scm_list_3 (a1, a2, a3));
}
SCM_DEFINE (scm_entity_p, "entity?", 1, 0, 0,
@ -460,7 +460,7 @@ scm_i_make_class_object (SCM meta,
SCM layout = scm_make_struct_layout (layout_string);
c = scm_make_struct (meta,
SCM_INUM0,
SCM_LIST4 (layout, SCM_BOOL_F, SCM_EOL, SCM_EOL));
scm_list_4 (layout, SCM_BOOL_F, SCM_EOL, SCM_EOL));
SCM_SET_CLASS_FLAGS (c, flags);
return c;
}
@ -493,7 +493,7 @@ SCM_DEFINE (scm_make_subclass_object, "make-subclass-object", 2, 0, 0,
/* Convert symbol->string */
pl = scm_mem2string (SCM_SYMBOL_CHARS (pl), SCM_SYMBOL_LENGTH (pl));
return scm_i_make_class_object (SCM_STRUCT_VTABLE (class),
scm_string_append (SCM_LIST2 (pl, layout)),
scm_string_append (scm_list_2 (pl, layout)),
SCM_CLASS_FLAGS (class));
}
#undef FUNC_NAME
@ -503,16 +503,16 @@ scm_init_objects ()
{
SCM ms = scm_makfrom0str (SCM_METACLASS_STANDARD_LAYOUT);
SCM mt = scm_make_vtable_vtable (ms, SCM_INUM0,
SCM_LIST3 (SCM_BOOL_F, SCM_EOL, SCM_EOL));
scm_list_3 (SCM_BOOL_F, SCM_EOL, SCM_EOL));
SCM os = scm_makfrom0str (SCM_METACLASS_OPERATOR_LAYOUT);
SCM ot = scm_make_vtable_vtable (os, SCM_INUM0,
SCM_LIST3 (SCM_BOOL_F, SCM_EOL, SCM_EOL));
scm_list_3 (SCM_BOOL_F, SCM_EOL, SCM_EOL));
SCM es = scm_makfrom0str (SCM_ENTITY_LAYOUT);
SCM el = scm_make_struct_layout (es);
SCM et = scm_make_struct (mt, SCM_INUM0,
SCM_LIST4 (el, SCM_BOOL_F, SCM_EOL, SCM_EOL));
scm_list_4 (el, SCM_BOOL_F, SCM_EOL, SCM_EOL));
scm_c_define ("<class>", mt);
scm_metaclass_standard = mt;

View file

@ -190,7 +190,7 @@ scm_options (SCM arg, scm_t_option options[], int n, const char *s)
#ifndef SCM_RECKLESS
scm_must_free ((char *) flags);
scm_misc_error (s, "Unknown mode flag: ~S",
SCM_LIST1 (SCM_CAR (new_mode)));
scm_list_1 (SCM_CAR (new_mode)));
#endif
cont:
new_mode = SCM_CDR (new_mode);

View file

@ -68,7 +68,7 @@ void scm_error_pair_access (SCM non_pair)
{
running = 1;
scm_simple_format (scm_current_error_port (),
message, SCM_LIST1 (non_pair));
message, scm_list_1 (non_pair));
abort ();
}
}

View file

@ -483,7 +483,7 @@ scm_remove_from_port_table (SCM port)
long i = p->entry;
if (i >= scm_t_portable_size)
SCM_MISC_ERROR ("Port not in table: ~S", SCM_LIST1 (port));
SCM_MISC_ERROR ("Port not in table: ~S", scm_list_1 (port));
if (p->putback_buf)
scm_must_free (p->putback_buf);
scm_must_free (p);

View file

@ -973,16 +973,15 @@ SCM_DEFINE (scm_simple_format, "simple-format", 2, 0, 1,
start = p + 1;
continue;
default:
scm_misc_error (s_scm_simple_format,
"FORMAT: Unsupported format option ~~~A - use (ice-9 format) instead",
SCM_LIST1 (SCM_MAKE_CHAR (*p)));
SCM_MISC_ERROR ("FORMAT: Unsupported format option ~~~A - use (ice-9 format) instead",
scm_list_1 (SCM_MAKE_CHAR (*p)));
}
if (!SCM_CONSP (args))
scm_misc_error (s_scm_simple_format, "FORMAT: Missing argument for ~~~A",
SCM_LIST1 (SCM_MAKE_CHAR (*p)));
SCM_MISC_ERROR ("FORMAT: Missing argument for ~~~A",
scm_list_1 (SCM_MAKE_CHAR (*p)));
scm_lfwrite (start, p - start - 1, destination);
scm_prin1 (SCM_CAR (args), destination, writingp);
@ -992,8 +991,8 @@ SCM_DEFINE (scm_simple_format, "simple-format", 2, 0, 1,
scm_lfwrite (start, p - start, destination);
if (args != SCM_EOL)
scm_misc_error (s_scm_simple_format,
"FORMAT: ~A superfluous arguments", SCM_LIST1 (scm_length (args)));
SCM_MISC_ERROR ("FORMAT: ~A superfluous arguments",
scm_list_1 (scm_length (args)));
if (fReturnString)
answer = scm_strport_to_string (destination);
@ -1110,7 +1109,7 @@ scm_init_print ()
scm_init_opts (scm_print_options, scm_print_opts, SCM_N_PRINT_OPTIONS);
vtable = scm_make_vtable_vtable (scm_nullstr, SCM_INUM0, SCM_EOL);
layout = scm_make_struct_layout (scm_makfrom0str (SCM_PRINT_STATE_LAYOUT));
type = scm_make_struct (vtable, SCM_INUM0, SCM_LIST1 (layout));
type = scm_make_struct (vtable, SCM_INUM0, scm_list_1 (layout));
scm_set_struct_vtable_name_x (type, scm_str2symbol ("print-state"));
print_state_pool = scm_permanent_object (scm_cons (type, SCM_EOL));

View file

@ -155,9 +155,7 @@ scm_i_procedure_arity (SCM proc)
default:
return SCM_BOOL_F;
}
return SCM_LIST3 (SCM_MAKINUM (a),
SCM_MAKINUM (o),
SCM_BOOL(r));
return scm_list_3 (SCM_MAKINUM (a), SCM_MAKINUM (o), SCM_BOOL(r));
}
static SCM
@ -167,7 +165,7 @@ scm_stand_in_scm_proc(SCM proc)
answer = scm_assoc (proc, scm_stand_in_procs);
if (SCM_FALSEP (answer))
{
answer = scm_closure (SCM_LIST2 (SCM_EOL, SCM_BOOL_F), SCM_EOL);
answer = scm_closure (scm_list_2 (SCM_EOL, SCM_BOOL_F), SCM_EOL);
scm_stand_in_procs = scm_acons (proc, answer, scm_stand_in_procs);
}
else

View file

@ -153,7 +153,7 @@ scm_flush_ws (SCM port, const char *eoferr)
if (!SCM_FALSEP (SCM_FILENAME (port)))
scm_misc_error (eoferr,
"end of file in ~A",
SCM_LIST1 (SCM_FILENAME (port)));
scm_list_1 (SCM_FILENAME (port)));
else
scm_misc_error (eoferr, "end of file", SCM_EOL);
}
@ -457,7 +457,7 @@ scm_lreadr (SCM *tok_buf,SCM port,SCM *copy)
}
unkshrp:
scm_misc_error (s_scm_read, "Unknown # object: ~S",
SCM_LIST1 (SCM_MAKE_CHAR (c)));
scm_list_1 (SCM_MAKE_CHAR (c)));
}
case '"':

View file

@ -565,11 +565,8 @@ scm_compile_shell_switches (int argc, char **argv)
if (scm_ilength (srfis) <= 0)
scm_shell_usage (1, "invalid SRFI specification");
srfis = scm_reverse_x (srfis, SCM_UNDEFINED);
tail = scm_cons (scm_listify
(sym_use_srfis,
scm_listify (scm_sym_quote,
srfis, SCM_UNDEFINED),
SCM_UNDEFINED),
tail = scm_cons (scm_list_2 (sym_use_srfis,
scm_list_2 (scm_sym_quote, srfis)),
tail);
}

View file

@ -200,7 +200,7 @@ scm_smob_apply_1_030 (SCM smob, SCM a1)
static SCM
scm_smob_apply_1_001 (SCM smob, SCM a1)
{
return SCM_SMOB_APPLY1 (smob, SCM_LIST1 (a1));
return SCM_SMOB_APPLY1 (smob, scm_list_1 (a1));
}
static SCM
@ -230,13 +230,13 @@ scm_smob_apply_2_030 (SCM smob, SCM a1, SCM a2)
static SCM
scm_smob_apply_2_001 (SCM smob, SCM a1, SCM a2)
{
return SCM_SMOB_APPLY1 (smob, SCM_LIST2 (a1, a2));
return SCM_SMOB_APPLY1 (smob, scm_list_2 (a1, a2));
}
static SCM
scm_smob_apply_2_011 (SCM smob, SCM a1, SCM a2)
{
return SCM_SMOB_APPLY2 (smob, a1, SCM_LIST1 (a2));
return SCM_SMOB_APPLY2 (smob, a1, scm_list_1 (a2));
}
static SCM

View file

@ -970,7 +970,7 @@ scm_addr_vector (const struct sockaddr *address, const char *proc)
#endif
default:
scm_misc_error (proc, "Unrecognised address family: ~A",
SCM_LIST1 (SCM_MAKINUM (fam)));
scm_list_1 (SCM_MAKINUM (fam)));
}
return result;
}

View file

@ -50,7 +50,9 @@
#include "libguile/chars.h"
#include "libguile/root.h"
#include "libguile/strings.h"
#include "libguile/deprecation.h"
#include "libguile/validate.h"
/* {Strings}

View file

@ -90,7 +90,7 @@ SCM_DEFINE (scm_make_struct_layout, "make-struct-layout", 1, 0, 0,
len = SCM_STRING_LENGTH (fields);
if (len % 2 == 1)
SCM_MISC_ERROR ("odd length field specification: ~S",
SCM_LIST1 (fields));
scm_list_1 (fields));
field_desc = SCM_STRING_CHARS (fields);
@ -108,7 +108,7 @@ SCM_DEFINE (scm_make_struct_layout, "make-struct-layout", 1, 0, 0,
break;
default:
SCM_MISC_ERROR ("unrecognized field type: ~S",
SCM_LIST1 (SCM_MAKE_CHAR (field_desc[x])));
scm_list_1 (SCM_MAKE_CHAR (field_desc[x])));
}
switch (field_desc[x + 1])
@ -131,14 +131,14 @@ SCM_DEFINE (scm_make_struct_layout, "make-struct-layout", 1, 0, 0,
break;
default:
SCM_MISC_ERROR ("unrecognized ref specification: ~S",
SCM_LIST1 (SCM_MAKE_CHAR (field_desc[x + 1])));
scm_list_1 (SCM_MAKE_CHAR (field_desc[x + 1])));
}
#if 0
if (field_desc[x] == 'd')
{
if (field_desc[x + 2] != '-')
SCM_MISC_ERROR ("missing dash field at position ~A",
SCM_LIST1 (SCM_MAKINUM (x / 2)));
scm_list_1 (SCM_MAKINUM (x / 2)));
x += 2;
goto recheck_ref;
}
@ -539,7 +539,8 @@ SCM_DEFINE (scm_make_vtable_vtable, "make-vtable-vtable", 2, 0, 1,
SCM_VALIDATE_INUM (2, tail_array_size);
SCM_VALIDATE_REST_ARGUMENT (init);
fields = scm_string_append (SCM_LIST2 (required_vtable_fields, user_fields));
fields = scm_string_append (scm_list_2 (required_vtable_fields,
user_fields));
layout = scm_make_struct_layout (fields);
basic_size = SCM_SYMBOL_LENGTH (layout) / 2;
tail_elts = SCM_INUM (tail_array_size);
@ -601,13 +602,13 @@ SCM_DEFINE (scm_struct_ref, "struct-ref", 2, 0, 0,
if ((ref == 'R') || (ref == 'W'))
field_type = 'u';
else
SCM_MISC_ERROR ("ref denied for field ~A", SCM_LIST1 (pos));
SCM_MISC_ERROR ("ref denied for field ~A", scm_list_1 (pos));
}
}
else if (fields_desc[SCM_SYMBOL_LENGTH (layout) - 1] != 'O')
field_type = fields_desc[SCM_SYMBOL_LENGTH (layout) - 2];
else
SCM_MISC_ERROR ("ref denied for field ~A", SCM_LIST1 (pos));
SCM_MISC_ERROR ("ref denied for field ~A", scm_list_1 (pos));
switch (field_type)
{
@ -633,7 +634,7 @@ SCM_DEFINE (scm_struct_ref, "struct-ref", 2, 0, 0,
default:
SCM_MISC_ERROR ("unrecognized field type: ~S",
SCM_LIST1 (SCM_MAKE_CHAR (field_type)));
scm_list_1 (SCM_MAKE_CHAR (field_type)));
}
return answer;
@ -673,12 +674,12 @@ SCM_DEFINE (scm_struct_set_x, "struct-set!", 3, 0, 0,
field_type = fields_desc[p * 2];
set_x = fields_desc [p * 2 + 1];
if (set_x != 'w')
SCM_MISC_ERROR ("set! denied for field ~A", SCM_LIST1 (pos));
SCM_MISC_ERROR ("set! denied for field ~A", scm_list_1 (pos));
}
else if (fields_desc[SCM_SYMBOL_LENGTH (layout) - 1] == 'W')
field_type = fields_desc[SCM_SYMBOL_LENGTH (layout) - 2];
else
SCM_MISC_ERROR ("set! denied for field ~A", SCM_LIST1 (pos));
SCM_MISC_ERROR ("set! denied for field ~A", scm_list_1 (pos));
switch (field_type)
{
@ -705,7 +706,7 @@ SCM_DEFINE (scm_struct_set_x, "struct-set!", 3, 0, 0,
default:
SCM_MISC_ERROR ("unrecognized field type: ~S",
SCM_LIST1 (SCM_MAKE_CHAR (field_type)));
scm_list_1 (SCM_MAKE_CHAR (field_type)));
}
return val;

View file

@ -112,7 +112,7 @@ scm_sym2ovcell (SCM sym, SCM obarray)
answer = scm_sym2ovcell_soft (sym, obarray);
if (!SCM_FALSEP (answer))
return answer;
SCM_MISC_ERROR ("uninterned symbol: ~S", SCM_LIST1 (sym));
SCM_MISC_ERROR ("uninterned symbol: ~S", scm_list_1 (sym));
return SCM_UNSPECIFIED; /* not reached */
}
#undef FUNC_NAME

View file

@ -2222,7 +2222,8 @@ SCM_DEFINE (scm_list_to_uniform_array, "list->uniform-array", 3, 0, 0,
if (l2ra (lst, ra, SCM_ARRAY_BASE (ra), 0))
return ra;
else
badlst:SCM_MISC_ERROR ("Bad scm_array contents list: ~S", SCM_LIST1 (lst));
badlst:SCM_MISC_ERROR ("Bad scm_array contents list: ~S",
scm_list_1 (lst));
}
#undef FUNC_NAME

View file

@ -130,7 +130,7 @@ SCM_DEFINE (scm_variable_ref, "variable-ref", 1, 0, 0,
SCM_VALIDATE_VARIABLE (1, var);
val = SCM_VARIABLE_REF (var);
if (val == SCM_UNDEFINED)
SCM_MISC_ERROR ("variable is unbound: ~S", SCM_LIST1 (var));
SCM_MISC_ERROR ("variable is unbound: ~S", scm_list_1 (var));
return val;
}
#undef FUNC_NAME

View file

@ -244,10 +244,10 @@ scm_vector_set_x (SCM v, SCM k, SCM obj)
#define FUNC_NAME s_vector_set_x
{
SCM_GASSERTn (SCM_VECTORP (v),
g_vector_set_x, SCM_LIST3 (v, k, obj),
g_vector_set_x, scm_list_3 (v, k, obj),
SCM_ARG1, s_vector_set_x);
SCM_GASSERTn (SCM_INUMP (k),
g_vector_set_x, SCM_LIST3 (v, k, obj),
g_vector_set_x, scm_list_3 (v, k, obj),
SCM_ARG2, s_vector_set_x);
SCM_ASSERT_RANGE (2, k, SCM_INUM (k) < SCM_VECTOR_LENGTH (v) && SCM_INUM (k) >= 0);
SCM_VELTS(v)[(long) SCM_INUM(k)] = obj;