Commit | Line | Data |
---|---|---|
3d5ebfa9 MV |
1 | 2004-05-10 Marius Vollmer <mvo@zagadka.de> |
2 | ||
3 | Convert floating point numbers into strings with an arbitrary | |
4 | radix. Thanks to Richard Todd! | |
5 | ||
6 | * numbers.c (FLOBUFLEN): Increase so that radix 2 strings will | |
7 | fit. | |
8 | (fx): Removed. | |
9 | (scm_dblprec, fx_per_radix, init_dblprec, init_fx_radix, | |
10 | number_chars): New, to support variable radices. | |
11 | (idbl2str): Use above instead of the old base-10 only tables. | |
12 | (iflo2str): Pass on new RADIX argument to idbl2str. | |
13 | (scm_number_to_string): Pass radix to iflo2str. | |
14 | (scm_print_real, scm_print_complex): Explicitly pass radix 10 to | |
15 | iflo2str. | |
16 | (scm_init_numbers): Call init_dblprec and init_fx_radix for all | |
17 | possible radices. | |
18 | ||
3ae69bb4 KR |
19 | 2004-05-10 Kevin Ryde <user42@zip.com.au> |
20 | ||
21 | * numbers.c (scm_logbit_p): Correction to test above the end of an | |
22 | inum. Reported by Jan Konecny. | |
23 | ||
27968825 MV |
24 | 2004-05-06 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
25 | ||
26 | * gc.h (scm_t_cell): Fields are now of type SCM instead of | |
27 | scm_t_bits. Updated all users. | |
28 | (SCM_GC_CARD_SIZE_MASK): Use SCM_GC_SIZEOF_CARD instead of | |
29 | duplicating the code. | |
30 | (SCM_CELL_OBJECT_LOC): New. | |
31 | (SCM_CARLOC, SCM_CDRLOC): Use it instead of SCM_CELL_WORD_LOC. | |
32 | (SCM_CELL_WORD_LOC): Moved to "deprecated.h". | |
33 | ||
34 | * smob.h (SCM_SMOB_DATA_2, SCM_SMOB_DATA_3, SCM_SMOB_FLAGS, | |
35 | SCM_SET_SMOB_DATA_2, SCM_SET_SMOB_DATA_3, SCM_SET_SMOB_FLAGS, | |
36 | SCM_SMOB_OBJECT, SCM_SMOB_OBJECT_2, SCM_SMOB_OBJECT_3, | |
37 | SCM_SET_SMOB_OBJECT, SCM_SET_SMOB_OBJECT_2, SCM_SET_SMOB_OBJECT_3, | |
38 | SCM_SMOB_OBJECT_LOC, SCM_SMOB_OBJECT_2_LOC, | |
39 | SCM_SMOB_OBJECT_3_LOC): New. | |
40 | * smob.c (scm_i_set_smob_flags): New function. | |
41 | ||
42 | * dynl.c, dynwind.c, eval.h, fluids.h, futures.h, hashtab.h, | |
43 | hooks.h, keywords.h, macros.h, macros.c, mallocs.c, mallocs.h, | |
44 | random.h, regex-posix.h, root.h, srcprop.h, srcprop.c, threads.h: | |
45 | Use SCM_SMOB_* instead of SCM_CELL_* as appropriate. Use | |
46 | SCM_SMOB_FLAGS and SCM_SET_SMOB_FLAGS instead of accessing the | |
47 | zeroth word directly. Use SCM_SMOB_PREDICATE as appropriate. | |
48 | ||
49 | * numbers.h (SCM_I_BIG_MPZ): Use SCM_CELL_OBJECT_LOC instead of | |
50 | taking the address of SCM_CELL_WORD_1, the latter being no longer | |
51 | an lvalue. | |
52 | ||
53 | * variable.h (SCM_VARIABLE_LOC): Use SCM_CELL_OBJECT_LOC instead | |
54 | of casting SCM_CELL_WORD_LOC. | |
55 | ||
3cf17ef0 KR |
56 | 2004-05-02 Kevin Ryde <user42@zip.com.au> |
57 | ||
37026925 KR |
58 | * eval.c (scm_macroexp): Add prototype, since it's not in eval.h under |
59 |