* Fix SCM <--> scm_t_bits related typing problems.
[bpt/guile.git] / libguile / ChangeLog
CommitLineData
dcb410ec
DH
12001-06-08 Dirk Herrmann <D.Herrmann@tu-bs.de>
2
3 * goops.c (SCM_CLASS_REDEF): Removed.
4
5 * vectors.h (VECTORSH, SCM_VECTORS_H): Renamed <foo>H to
6 SCM_<foo>_H.
7
8 Thanks to Matthias Koeppe for reporting the bugs that correspond
9 to the following set of patches.
10
11 * goops.c (scm_sys_prep_layout_x, scm_basic_basic_make_class,
12 create_basic_classes, scm_sys_fast_slot_set_x, set_slot_value,
13 scm_sys_allocate_instance, clear_method_cache,
14 scm_sys_invalidate_method_cache_x, scm_make,
15 create_standard_classes, scm_make_port_classes, scm_make_class,
16 scm_add_slot): Use SCM_SET_SLOT to set slot values.
17
18 (prep_hashsets): Use SCM_SET_HASHSET to set class hash values.
19
20 * goops.h (SCM_SET_SLOT, SCM_SET_HASHSET): New macros.
21
22 * ramap.c (BINARY_ELTS_CODE, BINARY_PAIR_ELTS_CODE,
23 UNARY_ELTS_CODE): Remove bogus break statement.
24
25 * vectors.h (SCM_BITVEC_REF, SCM_BITVEC_SET, SCM_BITVEC_CLR):
26 Don't access bit vectors elements as SCM objects.
27
28 * weaks.c (scm_make_weak_vector, scm_make_weak_key_hash_table,
29 scm_make_weak_value_hash_table, scm_make_doubly_weak_hash_table):
30 Don't assign to an unpacked value.
31
e81d98ec
DH
322001-06-07 Dirk Herrmann <D.Herrmann@tu-bs.de>
33
34 * __scm.h (SCM_NORETURN): Moved here from error.h.
35
36 (SCM_UNUSED): New macro.
37
38 (SCM_DEBUG_PAIR_ACCESSES): New macro.
39
40 * backtrace.c (display_error_handler), continuations.c
41 (continuation_print), debug.c (debugobj_print), dynwind.c
42 (guards_print), environments.c (observer_print,
43 core_environments_finalize, leaf_environment_cell,
44 leaf_environment_print, eval_environment_print,
45 eval_environment_observer, import_environment_define,
46 import_environment_undefine, import_environment_print,
47 import_environment_observer, export_environment_define,
48 export_environment_undefine, export_environment_print,
49 export_environment_observer), eval.c (scm_m_quote, scm_m_begin,
50 scm_m_if, scm_m_set_x, scm_m_and, scm_m_or, scm_m_case,
51 scm_m_cond, scm_m_lambda, scm_m_letstar, scm_m_do, scm_m_delay,
52 scm_m_letrec1, scm_m_apply, scm_m_cont, scm_m_nil_cond,
53 scm_m_nil_ify, scm_m_t_ify, scm_m_0_cond, scm_m_0_ify,
54 scm_m_1_ify, scm_m_atfop, scm_m_at_call_with_values), evalext.c
55 (scm_m_generalized_set_x), fluids.c (fluid_print), fports.c
56 (fport_print), gc.c (gc_start_stats, scm_remember_upto_here_1,
57 scm_remember_upto_here_2, scm_remember_upto_here, mark_gc_async),
58 gh_init.c (gh_standard_handler), goops.c (get_slot_value,
59 set_slot_value, test_slot_existence, scm_change_object_class,
60 scm_m_atslot_ref, scm_m_atslot_set_x, make_struct_class,
61 default_setter), guardians.c (guardian_print, guardian_gc_init,
62 guardian_zombify, whine_about_self_centered_zombies), guile.c
63 (inner_main), init.c (stream_handler), keywords.c (keyword_print),
64 mallocs.c (malloc_print), numbers.c (scm_print_real,
65 scm_print_complex, scm_bigprint), ports.c (flush_port_default,
66 end_input_default, scm_port_print, fill_input_void_port,
67 write_void_port), root.c (root_print), smob.c (scm_mark0,
68 scm_free0, scm_smob_print, scm_smob_apply_1_error,
69 scm_smob_apply_2_error, scm_smob_apply_3_error, free_print),
70 stime.c (restorezone), strings.c (scm_makfromstr), struct.c
71 (scm_struct_free_0, scm_struct_free_standard,
72 scm_struct_free_entity, scm_struct_gc_init, scm_free_structs),
73 throw.c (jmpbuffer_print, lazy_catch_print, ss_handler,
74 scm_handle_by_throw, scm_ithrow), weaks.c
75 (scm_weak_vector_gc_init, scm_mark_weak_vector_spines,
76 scm_scan_weak_vectors), ramap.c (scm_array_fill_int), filesys.c
77 (scm_dir_print): Mark unused parameters with SCM_UNUSED.
78
79 * error.h (SCM_NORETURN): Moved to __scm.h.
80
81 * error.h (ERRORH, SCM_ERROR_H), pairs.h (PAIRSH, SCM_PAIRS_H):
82 Renamed <foo>H to SCM_<foo>_H.
83
84 * gc.c (debug_cells_gc_interval): New static variable.
85
86 (scm_assert_cell_valid): If selected by the user, perform
87 additional garbage collections.
88
89 (scm_set_debug_cell_accesses_x): Extended to let the user specify
90 if additional garbage collections are desired.
91
92 (mark_gc_async): If additional garbage collections are selected
93 by the user, don't call the after-gc-hook. Instead require the
94 user to run the hook manually.
95
96 * pairs.c (scm_error_pair_access): New function. Only compiled
97 if SCM_DEBUG_PAIR_ACCESSES is set to 1.
98
99 * pairs.h (SCM_VALIDATE_PAIR): New macro.
100
101 (SCM_CAR, SCM_CDR, SCM_SETCAR, SCM_SETCDR): If
102 SCM_DEBUG_PAIR_ACCESSES is set to 1, make sure that the argument
103 is a real pair object. (Glocs are also accepted, but that may
104 change.) If not, abort with an error message.
105
17fa3fcf
DH
1062001-06-05 Dirk Herrmann <D.Herrmann@tu-bs.de>
107
108 * eval.c (SCM_VALIDATE_NON_EMPTY_COMBINATION): New macro.
109
110 (SCM_CEVAL, SCM_APPLY): Replace calls to SCM_EVALIM2 with calls
111 to SCM_VALIDATE_NON_EMPTY_COMBINATION.
112
feeedafb
MV
1132001-06-05 Marius Vollmer <mvo@zagadka.ping.de>
114
115 * extensions.c (scm_c_register_extension): Allow NULL as library
116 name.
117 (load_extension): Ignore NULL library names when comparing.
118
119 * hash.c (scm_hasher): Use SCM_UNPACK in the case labels so that
120 non-pointers are being compared. Thanks to Alexander Klimov!
121
4bcdfe46
GH
1222001-06-04 Gary Houston <ghouston@arglist.com>
123
124 * rw.c (scm_write_string_partial): new procedure implementing
125 write-string/partial in (ice-9 rw).
126 * rw.h: declare scm_write_string_partial.
127
f480396b
MV
1282001-06-04 Marius Vollmer <mvo@zagadka.ping.de>
129
feeedafb
MV
130 * keywords.c (keyword_print): Substract 1 from length of symbol
131 name, accounting for the silly dash.
132
133 * dynl.c (scm_registered_modules, scm_clear_registered_modules):
134 Do not emit deprecation warning.
135
f480396b
MV
136 Added exception notice to all files.
137
138 * dynl.c: Include "deprecation.h".
139
c794483c
MV
1402001-06-03 Marius Vollmer <mvo@zagadka.ping.de>
141
142 * dynl.c (scm_register_module_xxx, scm_registered_modules,
143 scm_clear_registered_modules): Deprecated.
144
9454d8d5
RB
1452001-06-02 Rob Browning <rlb@cs.utexas.edu>
146
147 * .cvsignore: add guile_filter_doc_snarfage guile-snarf-docs
148 guile-snarf-docs-texi.
149
150 * fports.c: HAVE_ST_BLKSIZE changed to
151 HAVE_STRUCT_STAT_ST_BLKSIZE.
152 (scm_fport_buffer_add): HAVE_ST_BLKSIZE changed to
153 HAVE_STRUCT_STAT_ST_BLKSIZE.
154
155 * filesys.c (scm_stat2scm): HAVE_ST_RDEV changed to
156 HAVE_STRUCT_STAT_ST_RDEV.
157 (scm_stat2scm): HAVE_ST_BLKSIZE changed to
158 HAVE_STRUCT_STAT_ST_BLKSIZE.
159 (scm_stat2scm): HAVE_ST_BLOCKS changed to
160 HAVE_STRUCT_STAT_ST_BLOCKS.
161
114f9bab
MV
1622001-06-02 Marius Vollmer <mvo@zagadka.ping.de>
163
b0c16cd9
MV
164 * strports.c (scm_eval_string): Use scm_primitive_eval_x instead
165 of scm_eval_x to allow module changes between the forms in the
166 string. Set/restore module using scm_c_call_with_current_module.
167
114f9bab
MV
168 * mkstemp.c: New file, slightly modified from libiberties
169 mkstemps.c.
170
c99f9605
ML
1712001-05-31 Michael Livshin <mlivshin@bigfoot.com>
172
173 * guile-snarf-docs.in, guile-snarf-docs-texi.in,
174 filter-doc-snarfage.c: new files.
175
176 * Makefile.am: add stuff to [build,] use and distribute
177 guile-snarf-docs, guile-snarf-docs-texi, guile_filter_doc_snarfage.
178
179 * guile-snarf.in: grok the new snarf output.
180
181 * snarf.h: make the output both texttools- and `read'-friendly.
182
183 * guile-doc-snarf.in (bindir): reimplement in terms of guile-snarf
184 and guile-snarf-docs. (should also deprecate, I guess. maybe
185 not).
186
7eb5d7b2
MV
1872001-05-31 Marius Vollmer <mvo@zagadka.ping.de>
188
189 * print.c (scm_simple_format): Support "~~" and "~%". Signal
190 error for unsupported format controls and for superflous
191 arguments. Thanks to David Skarda!
192
193 * print.h, print.c (scm_print_symbol_name): Factored out of
194 scm_iprin1.
195 (scm_iprin1): Call it.
196
197 * keywords.c (keyword_print): Use scm_print_symbol_name so that
198 weird names are printed correctly.
199
200 * print.c (scm_print_symbol_name): Symbols whose name starts with
201 `#' or `:' or ends with `:' are considered weird.
202
609c3d30
MG
2032001-05-30 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
204
205 * numbers.c (scm_difference, scm_divide): Clarified comments for -
206 and /.
207
2082001-05-29 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
209
210 * debug.h: Removed prototype for scm_eval_string.
211
8d09eb04
MG
2122001-05-28 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
213
214 * symbols.c (scm_gensym): Fix buffer overrun (try `(gensym
215 (make-string 2000 #\!))' in an older version).
216
217 Change strncpy to memcpy to allow embedded NUL characters in
218 symbol prefix.
219
dd85ce47
ML
2202001-05-28 Michael Livshin <mlivshin@bigfoot.com>
221
fde50407
ML
222 * hooks.c (scm_create_hook): deprecated.
223 (make_hook): deleted.
224 (scm_make_hook): all the hook creation code is now here.
225
226 * gc.c (scm_init_gc): don't call `scm_create_hook'. instead make
227 a hook, make it permanent, and do a `scm_c_define' on it.
228
dd85ce47
ML
229 * strop.c (s_scm_string_capitalize_x): fix docstring quoting.
230
231 * socket.c (s_scm_inet_pton): fix docstring quoting.
232 (s_scm_inet_ntop): ditto.
233
234 * num2integral.i.c (INTEGRAL2NUM): cast to fix a warning.
235
236 * hashtab.c (scm_internal_hash_fold): fix argument position in
237 SCM_ASSERT.
238
239 * environments.c (s_scm_import_environment_set_imports_x): fix
240 argument position in SCM_ASSERT.
241
242 * debug.c (s_scm_make_gloc): fix SCM packing/unpacking.
243 (s_scm_make_iloc): ditto.
244
729dbac3
DH
2452001-05-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
246
247 * __scm.h (SCM_DEBUG_TYPING_STRICTNESS): Make 1 the default.
248
249 * eval.c (promise_print): Read the promise's value as an object.
250
251 (SCM_CEVAL): Don't perform side-effecting operations in macro
252 parameters.
253
254 * eval.h (SCM_EVALIM2): Fix the typing strictness of the
255 conditional expression.
256
257 * gc.c (scm_master_freelist, scm_master_freelist2): Added missing
258 initializer.
259
260 * gh_data.c (gh_set_substr): Removed redundant unsigned >= 0
261 text, removed redundant computation of effective_length and fixed
262 the overflow check.
263
264 * goops.c (test_slot_existence): Use SCM_EQ_P to compare SCM
265 values.
266
267 (wrap_init): Don't use SCM_C[AD]R for non pairs.
268
269 (hell): Make it a scm_bits_t pointer rather than a SCM pointer.
270
271 * goops.c (scm_sys_modify_class), strports.c (st_resize_port),
272 struct.h (SCM_SET_STRUCT_PRINTER): Store unpacked values.
273
274 * goops.h (SCM_ACCESSORS_OF, SCM_SLOT): Return a SCM value.
275
276 * goops.h (GOOPSH, SCM_GOOPS_H), modules.h (MODULESH,
277 SCM_MODULES_H), objects.h (OBJECTSH, SCM_OBJECTS_H), struct.h
278 (STRUCTH, SCM_STRUCT_H), symbols.h (SYMBOLSH, SCM_SYMBOLS_H),
279 __scm.h (__SCMH, SCM___SCM_H): Change <foo>H to SCM_<foo>_H.
280
281 * modules.[ch] (scm_module_tag): Make it a scm_bits_t value.
282
283 * objects.h (SCM_SET_CLASS_INSTANCE_SIZE): Fixed typing.
284
285