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