summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libguile/ChangeLog5
-rw-r--r--libguile/snarf.h4
-rw-r--r--libguile/tag.c67
3 files changed, 44 insertions, 32 deletions
diff --git a/libguile/ChangeLog b/libguile/ChangeLog
index d16c901d1..dcda0213f 100644
--- a/libguile/ChangeLog
+++ b/libguile/ChangeLog
@@ -1,3 +1,8 @@
+2001-03-16 Keisuke Nishida <kxn30@po.cwru.edu>
+
+ * snarf.h (SCM_CONST_LONG): Deprecated.
+ * tag.c (CONST_INUM): New macro. Use it to define scm_utag_*.
+
2001-03-15 Marius Vollmer <marius.vollmer@uni-dortmund.de>
* numbers.c (scm_num2ulong): Check that a bignum is positive
diff --git a/libguile/snarf.h b/libguile/snarf.h
index 436454427..d6bcaa2be 100644
--- a/libguile/snarf.h
+++ b/libguile/snarf.h
@@ -183,9 +183,13 @@ SCM_SNARF_INIT(c_name = scm_permanent_object (scm_sysintern (scheme_name, init_v
SCM_SNARF_HERE(SCM c_name) \
SCM_SNARF_INIT(c_name = scm_permanent_object (scm_sysintern (scheme_name, init_val));)
+#if (SCM_DEBUG_DEPRECATED == 0)
+
#define SCM_CONST_LONG(c_name, scheme_name,value) \
SCM_VCELL_INIT(c_name, scheme_name, scm_long2num(value))
+#endif /* (SCM_DEBUG_DEPRECATED == 0) */
+
#ifdef SCM_MAGIC_SNARFER
#undef SCM_ASSERT
#define SCM_ASSERT(_cond, _arg, _pos, _subr) *&*&*&*SCM_ARG_BETTER_BE_IN_POSITION(_arg,_pos,__LINE__)
diff --git a/libguile/tag.c b/libguile/tag.c
index 095572d1a..f82731977 100644
--- a/libguile/tag.c
+++ b/libguile/tag.c
@@ -50,42 +50,45 @@
#include "libguile/tag.h"
-SCM_CONST_LONG (scm_utag_immediate_integer, "utag_immediate_integer", 0);
-SCM_CONST_LONG (scm_utag_immediate_char, "utag_immediate_char", 1);
-SCM_CONST_LONG (scm_utag_pair, "utag_pair", 2);
-SCM_CONST_LONG (scm_utag_closure, "utag_closure", 3);
-SCM_CONST_LONG (scm_utag_symbol, "utag_symbol", 4);
-SCM_CONST_LONG (scm_utag_vector, "utag_vector", 5);
-SCM_CONST_LONG (scm_utag_wvect, "utag_wvect", 6);
+#define CONST_INUM(c_name, scheme_name, value) \
+SCM_VCELL_INIT(c_name, scheme_name, SCM_MAKINUM (value))
+
+CONST_INUM (scm_utag_immediate_integer, "utag_immediate_integer", 0);
+CONST_INUM (scm_utag_immediate_char, "utag_immediate_char", 1);
+CONST_INUM (scm_utag_pair, "utag_pair", 2);
+CONST_INUM (scm_utag_closure, "utag_closure", 3);
+CONST_INUM (scm_utag_symbol, "utag_symbol", 4);
+CONST_INUM (scm_utag_vector, "utag_vector", 5);
+CONST_INUM (scm_utag_wvect, "utag_wvect", 6);
#ifdef HAVE_ARRAYS
-SCM_CONST_LONG (scm_utag_bvect, "utag_bvect", 7);
-SCM_CONST_LONG (scm_utag_byvect, "utag_byvect", 8);
-SCM_CONST_LONG (scm_utag_svect, "utag_svect", 9);
-SCM_CONST_LONG (scm_utag_ivect, "utag_ivect", 10);
-SCM_CONST_LONG (scm_utag_uvect, "utag_uvect", 11);
-SCM_CONST_LONG (scm_utag_fvect, "utag_fvect", 12);
-SCM_CONST_LONG (scm_utag_dvect, "utag_dvect", 13);
-SCM_CONST_LONG (scm_utag_cvect, "utag_cvect", 14);
+CONST_INUM (scm_utag_bvect, "utag_bvect", 7);
+CONST_INUM (scm_utag_byvect, "utag_byvect", 8);
+CONST_INUM (scm_utag_svect, "utag_svect", 9);
+CONST_INUM (scm_utag_ivect, "utag_ivect", 10);
+CONST_INUM (scm_utag_uvect, "utag_uvect", 11);
+CONST_INUM (scm_utag_fvect, "utag_fvect", 12);
+CONST_INUM (scm_utag_dvect, "utag_dvect", 13);
+CONST_INUM (scm_utag_cvect, "utag_cvect", 14);
#endif
-SCM_CONST_LONG (scm_utag_string, "utag_string", 15);
-SCM_CONST_LONG (scm_utag_substring, "utag_substring", 17);
-SCM_CONST_LONG (scm_utag_asubr, "utag_asubr", 19);
-SCM_CONST_LONG (scm_utag_subr_0, "utag_subr_0", 20);
-SCM_CONST_LONG (scm_utag_subr_1, "utag_subr_1", 21);
-SCM_CONST_LONG (scm_utag_cxr, "utag_cxr", 22);
-SCM_CONST_LONG (scm_utag_subr_3, "utag_subr_3", 23);
-SCM_CONST_LONG (scm_utag_subr_2, "utag_subr_2", 24);
-SCM_CONST_LONG (scm_utag_rpsubr, "utag_rpsubr", 25);
-SCM_CONST_LONG (scm_utag_subr_1o, "utag_subr_1o", 26);
-SCM_CONST_LONG (scm_utag_subr_2o, "utag_subr_2o", 27);
-SCM_CONST_LONG (scm_utag_lsubr_2, "utag_lsubr_2", 28);
-SCM_CONST_LONG (scm_utag_lsubr, "utag_lsubr", 29);
-SCM_CONST_LONG (scm_utag_smob_base, "utag_smob_base", 252);
-SCM_CONST_LONG (scm_utag_port_base, "utag_port_base", 253);
-SCM_CONST_LONG (scm_utag_flag_base, "utag_flag_base", 254);
-SCM_CONST_LONG (scm_utag_struct_base, "utag_struct_base", 255);
+CONST_INUM (scm_utag_string, "utag_string", 15);
+CONST_INUM (scm_utag_substring, "utag_substring", 17);
+CONST_INUM (scm_utag_asubr, "utag_asubr", 19);
+CONST_INUM (scm_utag_subr_0, "utag_subr_0", 20);
+CONST_INUM (scm_utag_subr_1, "utag_subr_1", 21);
+CONST_INUM (scm_utag_cxr, "utag_cxr", 22);
+CONST_INUM (scm_utag_subr_3, "utag_subr_3", 23);
+CONST_INUM (scm_utag_subr_2, "utag_subr_2", 24);
+CONST_INUM (scm_utag_rpsubr, "utag_rpsubr", 25);
+CONST_INUM (scm_utag_subr_1o, "utag_subr_1o", 26);
+CONST_INUM (scm_utag_subr_2o, "utag_subr_2o", 27);
+CONST_INUM (scm_utag_lsubr_2, "utag_lsubr_2", 28);
+CONST_INUM (scm_utag_lsubr, "utag_lsubr", 29);
+CONST_INUM (scm_utag_smob_base, "utag_smob_base", 252);
+CONST_INUM (scm_utag_port_base, "utag_port_base", 253);
+CONST_INUM (scm_utag_flag_base, "utag_flag_base", 254);
+CONST_INUM (scm_utag_struct_base, "utag_struct_base", 255);
#if (SCM_DEBUG_DEPRECATED == 0)