Commit | Line | Data |
---|---|---|
6191ccec MV |
1 | 2004-10-22 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
2 | ||
77c2594f MV |
3 | * sort.c (quicksort, scm_merge, scm_merge_list_x, |
4 | scm_merge_list_step, scm_merge_vector_step): Inserted SCM_TICKs at | |
5 | strategic places so that the loops can be interrupted. | |
6 | ||
6191ccec MV |
7 | * Makefile.am (INCLUDES): Use @LTDLINC@ instead of |
8 | "-I$(top_srcdir)/libguile-ltdl". | |
9 | (libguile_la_LIBADD): Use @LIBLTDL@ instead of | |
10 | "../libguile-ltdl/libguile-ltdl.a". | |
11 | ||
12 | * guile.c, dynl.c: Switched to using libltdl directly. Replaced | |
13 | all references to scm_lt_* with just lt_*. Include <ltdl.h> | |
14 | instead of <libguile-ltdl.h>. | |
15 | ||
77600f3e MV |
16 | 2004-10-20 Marius Vollmer <mvo@zagadka.de> |
17 | ||
18 | * sort.c (quicksort): Copy pivot out of the array while | |
19 | constructing the partitions; it could get overwritten otherwise. | |
20 | Because of the ultimate insertion sort, this bug did not cause | |
21 | quicksort to fail, it just put all the burdon on the insertion | |
22 | sort and was thus very slow. Thanks to Rolan Orre for reporting | |
23 | the slowness! | |
24 | ||
5000379b MV |
25 | 2004-10-19 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
26 | ||
192cd792 MV |
27 | * numbers.c (scm_i_range_error): New. |
28 | * conv-integer.i.c, conv-uinteger.i.c: Use it instead of | |
29 | scm_out_of_range. | |
30 | ||
31 | * sort.c (scm_restricted_vector_sort_x): Validate startpos <= | |
6191ccec | 32 | endpos. State inclusiveness/exclusiveness of bounds in docstring. |
192cd792 MV |
33 | |
34 | * unif.c (scm_array_p): When no prototype is given, explicitely | |
35 | test for allowable types, do not simply return true. Thanks to | |
36 | Roland Orre for reporting this! | |
37 | ||
5000379b MV |
38 | * private-gc.h (SCM_DEFAULT_MAX_SEGMENT_SIZE): Increase to 20 Mib. |
39 | ||
40 | * gc-segment.c (scm_i_get_new_heap_segment): Limit size of new | |
41 | segment to scm_max_segment_size. | |
42 | ||
497eb0b7 HWN |
43 | 2004-10-08 Han-Wen Nienhuys <hanwen@xs4all.nl> |
44 | ||
45 | * inline.h (scm_double_cell): abort if GC running. | |
46 | (scm_cell): idem. | |
47 | ||
aef0bdb4 MV |
48 | 2004-10-04 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
49 | ||
50 | * error.c (scm_wrong_type_arg): Do not talk about "argument" for | |
51 | pos == 0. | |
52 | ||
53 | Keywords no longer store a 'dash symbol'. Instead, they store a | |
54 | symbol with their real name. | |
55 | ||
56 | * keywords.h, keywords.c, deprecated.h, deprecated.c | |
57 | (SCM_KEYWORDP, SCM_KEYWORDSYM): Deprecated and implemented in | |
58 | terms of scm_is_keyword and scm_keyword_dash_symbol. | |
59 | ||
60 | * keywords.h, keywords.c, discouraged.h, discouraged.c | |
61 | (scm_make_keyword_from_dash_symbol, scm_keyword_dash_symbol, | |
62 | scm_c_make_keyword): Discouraged. | |
63 | ||
64 | * keywords.h, keywords.c (scm_symbol_to_keyword, | |
65 | scm_keyword_to_symbol): Implemented in C. | |
66 | (scm_is_keyword, scm_from_locale_keyword, | |
67 | scm_from_locale_keywordn): New. | |
68 | ||
69 | * goops.c: Replaced SCM_KEYWORDP with scm_is_keyword. | |
70 | ||
71 | * snarf.h (SCM_KEYWORD, SCM_GLOBAL_KEYWORD): Use | |
72 | scm_from_locale_keyword instead of scm_c_make_keyword. | |
73 | ||
74 | * keywords.c (scm_symbol_to_keyword): Use SCM_ASSERT_TYPE for a | |
75 | better error message. | |
76 | ||
77 | * deprecated.c: Include discouraged.h and keywords.h. | |
78 | ||
79 | * read.c (scm_lreadr): Simply do (symbol->keyword (read)) after | |
80 | reading '#:' or ':'. See NEWS for consequences. | |
81 | ||
818deb11 MV |
82 | 2004-09-29 Marius Vollmer <marius.vollmer@uni-dortmund.de> |
83 | ||
43c25626 MV |
84 | * read.c (scm_lreadr): Revert change from 2004-09-22: string |
85 | literals are now read-write again (until SCM_STRING_CHARS is | |
86 | removed). | |
87 | ||
88 | * strings.c (SCM_STRING_CHARS): Explicitely reject read-only | |
89 | strings with an error message that blames SCM_STRING_CHARS. | |
90 | ||
91 | * options.c (change_option_setting): Use scm_car instead of | |
92 | explicit type check plus SCM_CAR. | |
93 | ||
94 | * print.h, print.c (SCM_PRINT_HIGHLIGHT_PREFIX, | |
95 | SCM_PRINT_HIGHLIGHT_SUFFIX): New printer options. | |
96 | (scm_iprin1): Use them instead of the previoulsy hardcoded | |
97 | strings. | |
98 | (scm_init_print): Initialize them. | |
99 | ||
100 | * backtrace.c (display_frame_expr): Do not remove control | |
101 | characters from the final string. Print it directly using | |
102 | scm_display. | |
103 | ||
818deb11 MV |
104 | * ramap.c (scm_array_equal_p): Include scm_tc7_svect in switch. |
105 | Thanks to Roland Orre! | |
106 | ||
d748089e KR |
107 | 2004-09-29 Kevin Ryde <user42@zip.com.au> |
108 | ||
109 | * regex-posix.c (scm_regexp_exec): Correction to last change, should | |
110 | be whole original string in match struct, not offsetted substring. | |
111 | ||
0ff7e3ff HWN |
112 | 2004-09-24 Han-Wen Nienhuys <hanwen@xs4all.nl> |
113 | ||
114 | * gc.c (scm_gc_unprotect_object): abort if called during GC. | |
115 | ||
ad7de4b8 MV |
116 | 2004-09-24 Marius Vollmer <mvo@zagadka.de> |
117 | ||
2edf319f MV |
118 | * Makefile.am (EXTRA_DIST): Added gettext.h. |
119 | ||
d180337b MV |
120 | * smob.c, smob.h (scm_assert_smob_type): New. |
121 | ||
05d7cf89 | 122 | * Makefile.am (guile_CFLAGS, guile_LDFLAGS, libguile_la_CFLAGS): |
ad7de4b8 MV |
123 | Include GUILE_CFLAGS. |
124 | (libguile_la_LIBADD): Removed THREAD_LIBS_LOCAL, which is unused | |
125 | now. | |
126 | (libpath.h): Put GUILE_CFLAGS in the build-info. | |
127 | ||
c9fedf8a MV |
128 | 2004-09-23 Marius Vollmer <mvo@zagadka.de> |
129 | ||
130 | * print.h (scm_print_state): Added highlight_objects. | |
131 | * print.c (make_print_state, scm_free_print_state): Initialize it | |
132 | to SCM_EOL. | |
133 | (scm_iprin1): Wrap output in '{...}' when object is contained in | |
134 | highlight_objects. | |
135 | ||
136 | * backtrace.h, backtrace.c (scm_display_backtrace_with_highlights, | |
137 | scm_backtrace_with_highlights): New. Set highlight_objects of | |
138 | printstate. | |
139 | ||
140 | * error.c (scm_error_scm): Document new meaning of data/rest | |
141 | argument for out-of-range and wrong-type-arg errors. | |
142 | (scm_out_of_range, scm_out_of_range_pos, scm_wrong_type_arg, | |
143 | scm_wrong_type_arg_msg): Pass bad_value in rest argument of | |
144 | exception so that it gets highlighted in the backtrace. | |
145 | Don't talk about "argument" when not giving a position. | |
146 | ||
147 | * throw.c (handler_message): The rest argument is the fourth | |
148 | argument, not everything after the third. Call | |
149 | scm_display_backtrace_with_highlights, passing the rest argument | |
150 | when appropriate. | |
151 | ||
d5ac9b2a MV |
152 | 2004-09-22 Marius Vollmer <mvo@zagadka.de> |
153 | ||
154 | From Jan Nieuwenhuizen <janneke@gnu.org> and Bruno Haible | |
155 | <bruno@clisp.org>: | |
156 | ||
157 | * i18n.c: Handle --disable-nls (thanks Bruno). | |
158 | ||
159 | * posix.c (scm_init_posix): Add LC_PAPER, LC_NAME, LC_ADDRESS, | |
160 | LC_TELEPHONE, LC_MEASUREMENT, LC_IDENTIFICATION. | |
161 | ||
162 | * i18n.c (scm_i_to_lc_category): New name and export. Support all | |
163 | LC categories. | |
05d7cf89 | 164 | * posix.c (scm_setlocale): Use it. |
d5ac9b2a MV |
165 | |
166 | * i18n.h, i18n.c (scm_textdomain, scm_bindtextdomain, | |
167 | scm_bind_textdomain_codeset): Make wrappers similar to C function | |
168 | they wrap. | |
169 | ||
170 | * i18n.h: New file. | |
171 | * i18n.c: New file. | |
172 | * gettext.h: New file, taken from GNU gettext. | |
173 | * init.c: Include libguile/i18n.h. | |
174 | (scm_init_guile_1): Add call to scm_init_i18n(). | |
175 | * Makefile.am (libguile_la_SOURCES): Add i18n.c. | |
176 | (DOT_X_FILES): Add i18n.x. | |
177 | (DOT_DOC_FILES): Add i18n.doc. | |
178 | (libguile_la_LDFLAGS): Add @LTLIBINTL@. | |
179 | (modinclude_HEADERS): Add i18n.h. | |
180 | ||
d2e53ed6 MV |
181 | 2004-09-22 Marius Vollmer <mvo@zagadka.de> |
182 | ||
2cdfe016 MV |
183 | * gh_list.c: Replaced SCM_CAR, etc with scm_car, etc. |
184 | ||
d2e53ed6 MV |
185 | * discouraged.h, tags.h (SCM_CONSP, SCM_NCONSP): Moved to |
186 | discouraged.h. Replaced all uses with scm_is_pair. | |
187 | (SCM_I_CONSP): New name for SCM_CONSP. | |
188 | ||
189 | * pairs.h, pairs.c (scm_is_pair, scm_is_null, scm_car, scm_cdr, | |
190 | scm_i_chase_pairs, SCM_I_A_PAT, SCM_I_D_PAT, etc, scm_caar, | |
191 | scm_cadr, etc): New. | |
192 | (SCM_NULLP, SCM_NNULLP): Moved to discouraged.h. Replaced all | |
193 | uses with scm_is_null. | |
5dd82006 | 194 | |
d2e53ed6 MV |
195 | * eval.c (scm_eval, scm_apply, call_cxr_1): Use scm_i_chase_pairs |
196 | instead of explicit code. | |
5dd82006 | 197 | |
5dfdf243 MV |
198 | 2004-09-22 Marius Vollmer <mvo@zagadka.de> |
199 | ||
b50c53e5 MV |
200 | * srfi-13.c (scm_string_contains, scm_string_contains_ci): |
201 | Reworded logic a bit so that #f is returned immediately when s1 is | |
202 | too short to contain s2. | |
203 | ||
5dfdf243 | 204 | * regex-posix.c (scm_regexp_exec): Convert string to |
05d7cf89 | 205 | zero-terminated locale string before matching against it. |
5dfdf243 MV |
206 | |
207 | * strings.h, strings.c (scm_substring_read_only, | |
208 | scm_c_substring_read_only, scm_i_substring_read_only): New. | |
209 | (RO_STRING_TAG, IS_RO_STRING): New. | |
210 | (scm_i_string_writable_chars): Bail on read-only strings. | |
211 | ||
212 | * read.c (scm_lreadr): use scm_c_substring_read_only for string | |
213 | literals, thus making them read-only as specified by R5RS. | |
214 | ||
22ab5ba3 MV |
215 | 2004-09-22 Marius Vollmer <mvo@zagadka.de> |
216 | ||
217 | * eq.c (scm_equal_p): Allow smobs with different flags to be equal | |
218 | by testing for smobs before insisting on equal SCM_CELL_TYPES. | |
219 | ||
2663421c MV |
220 | 2004-09-21 Marius Vollmer <mvo@zagadka.de> |
221 | ||
0d83cb90 MV |
222 | * numbers.h, numbers.c: Include <gmp.h> in numbers.h, not in |
223 | numbers.c. | |
224 | (scm_to_mpz, scm_from_mpz): New. | |
225 |