summaryrefslogtreecommitdiff
path: root/libguile/procprop.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2013-11-08 14:08:42 +0100
committerAndy Wingo <wingo@pobox.com>2013-11-08 14:08:42 +0100
commit9f309e2cd9ec78408d2b0df77c46d44f7bddb368 (patch)
treef1b2f21d15b9b9dc85eb6d562c256be1b4156002 /libguile/procprop.c
parentf41accb9c26e3b4df4170bda04b8860ee962657f (diff)
downloadguile-9f309e2cd9ec78408d2b0df77c46d44f7bddb368.tar.gz
Builtins have procedure properties
* libguile/vm-builtins.h (FOR_EACH_VM_BUILTIN): Add arity information. (enum scm_vm_builtins): * libguile/vm.c (scm_vm_builtin_ref): (scm_vm_builtin_name_to_index): (scm_vm_builtin_index_to_name): Adapt to macro interface change. (scm_init_vm_builtin_properties): New helper, sets procedure properties on builtins. (scm_bootstrap_vm): Just define the builtins here. Later in the bootstrap we set their properties. (scm_sym_apply): Move definition here from expand.c. * libguile/procprop.c (scm_init_procprop): Call scm_init_vm_builtin_properties.
Diffstat (limited to 'libguile/procprop.c')
-rw-r--r--libguile/procprop.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libguile/procprop.c b/libguile/procprop.c
index 9965b451a..5bb9e6259 100644
--- a/libguile/procprop.c
+++ b/libguile/procprop.c
@@ -33,6 +33,7 @@
#include "libguile/vectors.h"
#include "libguile/weak-table.h"
#include "libguile/programs.h"
+#include "libguile/vm-builtins.h"
#include "libguile/validate.h"
#include "libguile/procprop.h"
@@ -342,6 +343,7 @@ scm_init_procprop ()
overrides = scm_c_make_weak_table (0, SCM_WEAK_TABLE_KIND_KEY);
arity_overrides = scm_c_make_weak_table (0, SCM_WEAK_TABLE_KIND_KEY);
#include "libguile/procprop.x"
+ scm_init_vm_builtin_properties ();
}