summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikael Djurfeldt <djurfeldt@nada.kth.se>2000-03-14 06:42:48 +0000
committerMikael Djurfeldt <djurfeldt@nada.kth.se>2000-03-14 06:42:48 +0000
commit1b88bf8a84374c123dca397c34f49db277af63b0 (patch)
tree8d319329a5ec92e251619bf708a29fcd720b5ee1
parent87621a14e0ded1ebb5190b53827c7015529af011 (diff)
downloadguile-1b88bf8a84374c123dca397c34f49db277af63b0.tar.gz
* tags.h (scm_tcs_bignums): Removed.
(scm_tc16_bigpos, scm_tc16_bigneg): Replaced by scm_tc16_big. Use SCM_BIGSIGN(x) to test for sign! (scm_tc16_big): The new bignum type. (SCM_REAL_PART, SCM_IMAG_PART): Removed.
-rw-r--r--libguile/tags.h33
1 files changed, 13 insertions, 20 deletions
diff --git a/libguile/tags.h b/libguile/tags.h
index f0d953c16..dc19d0e0f 100644
--- a/libguile/tags.h
+++ b/libguile/tags.h
@@ -417,32 +417,27 @@ typedef void * SCM;
/* scm_tc_free_cell is also the 0th smob type. We place this
* in free cells to tell the conservative marker not to trace it.
*/
-#define scm_tc_free_cell 127
+#define scm_tc_free_cell 0x007f
-/* The 1st smob type:
+/* Smob type 1 (note the dependency on the predicate SCM_NUMP)
*/
-#define scm_tc16_flo 0x017f
-#define scm_tc_flo 0x017fL
-
-/* Some option bits begeinning at bit 16 of scm_tc16_flo:
- */
-#define SCM_REAL_PART (1L << 16)
-#define SCM_IMAG_PART (2L << 16)
-#define scm_tc_dblr (scm_tc16_flo | SCM_REAL_PART)
-#define scm_tc_dblc (scm_tc16_flo | SCM_REAL_PART | SCM_IMAG_PART)
-
+#define scm_tc16_big 0x017f
/* Smob types 2 and 3:
*/
-#define scm_tc16_bigpos 0x027f
-#define scm_tc16_bigneg 0x037f
+#define scm_tc16_real 0x027f
+#define scm_tc16_complex 0x037f
-/* Smob type 4: this is allocated, but not initialized cells;
+/* The following four macros are now deprecated: */
+#define scm_tc16_flo scm_tc16_real
+#define scm_tc_flo 0x017fL
+#define scm_tc_dblr scm_tc16_real
+#define scm_tc_dblc scm_tc16_complex
+
+/* Smob type 4 allocated, but not initialized cells;
this is required to prevent the gc from hosing your cells if
you have to allocate while creating the cell*/
-
-#define scm_tc16_allocated 0x047f
-
+#define scm_tc16_allocated 0x047f
/* {Immediate Values}
@@ -583,6 +578,4 @@ extern char *scm_isymnames[]; /* defined in print.c */
#define scm_tcs_symbols scm_tc7_ssymbol:case scm_tc7_msymbol
-#define scm_tcs_bignums scm_tc16_bigpos:case scm_tc16_bigneg
-
#endif /* TAGSH */