* Grammar fix.
[bpt/guile.git] / libguile / ChangeLog
CommitLineData
b858464a
MG
12001-06-27 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
2
3 * read.c (scm_lreadr): When reading a hash token, check for a
4 user-defined hash procedure first, so that overriding the builtin
5 hash characters is possible (this was needed for implementing
6 SRFI-4's read synax `f32(...)').
7
8 * num2integral.i.c: Use scm_t_signed_bits instead of scm_t_bits,
9 because the latter is unsigned now and breaks comparisons like
10 (n < (scm_t_signed_bits)MIN_VALUE).
11
d95c0b76
NJ
122001-06-26 Neil Jerram <neil@ossau.uklinux.net>
13
14 * eval.h, eval.c (scm_call_4): New function.
15
16 * eval.c (SCM_APPLY, SCM_CEVAL, ENTER_APPLY): Call trap handlers
17 directly rather than dispatching to them via scm_ithrow and a lazy
18 catch.
19
20 * eval.c (scm_evaluator_trap_table), eval.h (SCM_ENTER_FRAME_HDLR,
21 SCM_APPLY_FRAME_HDLR, SCM_EXIT_FRAME_HDLR): Add three new options
22 for trap handler procedures.
23
24 * debug.h (SCM_RESET_DEBUG_MODE): Add checks for trap handler
25 procedures not being #f.
26
30e3be5a
ML
272001-06-27 Michael Livshin <mlivshin@bigfoot.com>
28
29 * Makefile.am (c-tokenize.c): add rule to generate it.
30 (EXTRA_DIST): add c-tokenize.lex, so it gets distributed.
31
32 filter-doc-snarfage.c: remove.
33
82893676
MG
342001-06-26 Martin Grabmueller <mgrabmue@cs.tu-berlin.de>
35
36 * ports.c (scm_output_port_p): Use result of SCM_COERCE_OUTPORT.
37
38 The following set of changes makes compiling Guile under various
39 Windows compilers easier. Compilation under GNU systems should
40 not be affected at all.
41
42 Thanks to Stefan Jahn for all necessary information, patches and
43 testing.
44
45 * posix.c: Conditialize getpwent, getgrent, kill, getppid, getuid,
46 getpgrp, ttyname, primitive-fork and some header inclusion for
47 Windows.
48
49 * random.c: Define M_PI, if not predefined and use __int64 for
50 LONG64 under Windows.
51
52 * scmsigs.c: Emulate some functions (alarm, sleep, kill) under
53 Windows and conditionalize some signal names.
54
55 * socket.c (scm_getsockopt): Added missing comma.
56 Include socket library header under Windows.
57
58 * stime.c (CLKTCK): Add cast to int, to make it compile under
59 Windows.
60
61 * ports.c (truncate): New function, compiled only under Windows.
62
63 * net_db.c: Do not declare errno under Windows.
64
65 * iselect.h, inet_aton.c: Include socket library headers under
66 Windows.
67
68 * guile.c (inner_main): Under Windows, initialize socket library
69 and initialize gdb_interface data structures.
70
71 * gdb_interface.h: Under Windows, gdb_interface cannot be
72 initialized statically. Initialize at runtime instead.
73
74 * fports.c (write_all): ssize_t -> size_t.
75 (fport_print): Conditionalize call to ttyname().
76 (getflags): New function, compiled only under Windows.
77
78 * filesys.c: Conditionalize inclusion of <pwd.h>. Conditionalize
79 primitives chown, link, fcntl.
80 (scm_basename, scm_dirname): Under Windows, handle \ as well as /
81 as path seperator.
82
83 * backtrace.c: Include <io.h> under Windows.
84
85 * async.h (ASYNCH, SCM_ASYNC_H): Rename <foo>H to SCM_<foo>_H.
86
87 * _scm.h: Added preprocessor conditional for __MINGW32__ for errno
88 declaration.
89
fdc28395
KN
902001-06-27 Keisuke Nishida <kxn30@po.cwru.edu>
91
92 * eval.c (scm_call_0, scm_call_1, scm_call_2, scm_call_3,
93 scm_apply_0, scm_apply_1, scm_apply_2, scm_apply_3): New functions.
94 * eval.h (scm_call_0, scm_call_1, scm_call_2, scm_call_3,
95 scm_apply_0, scm_apply_1, scm_apply_2, scm_apply_3): Declared.
96 * async.c (scm_run_asyncs), coop-threads.c (scheme_body_bootstrip,
97 scheme_handler_bootstrip), debug.c (with_traps_inner), dynwind.c
98 (scm_dynamic_wind, scm_dowinds), environments.c
99 (import_environment_conflict), eval.c (scm_macroexp, scm_force,
100 scm_primitive_eval_x, scm_primitive_eval), fluids.c (apply_thunk),
101 goops.c (GETVAR, purgatory, make_class_from_template,
102 scm_ensure_accessor), hashtab.c (scm_ihashx, scm_sloppy_assx,
103 scm_delx_x, fold_proc), hooks.c (scm_c_run_hook), load.c
104 (scm_primitive_load), modules.c (scm_resolve_module,
105 scm_c_define_module, scm_c_use_module, scm_c_export,
106 module_variable, scm_eval_closure_lookup, scm_sym2var,
107 scm_make_module, scm_ensure_user_module, scm_load_scheme_module),
108 ports.c (scm_port_for_each), print.c (scm_printer_apply),
109 properties.c (scm_primitive_property_ref), ramap.c (ramap,
110 ramap_cxr, rafe, scm_array_index_map_x, read.c (scm_lreadr),
111 scmsigs.c (sys_deliver_signals), sort.c (applyless), strports.c
112 (scm_object_to_string, scm_call_with_output_string,
113 scm_call_with_input_string), throw.c (scm_body_thunk,
114 scm_handle_by_proc, hbpca_body), unif.c (scm_make_shared_array,
115 scm_make_shared_array), vports.c (sf_flush, sf_write,
116 sf_fill_input, sf_close): Use one of the above functions.
117 * goops.c, hashtab.c, scmsigs.c, sort.c: #include "libguile/root.h".
118
36284627
DH
1192001-06-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
120
121 * filesys.c (scm_close), ports.c (scm_close_port,
122 scm_port_closed_p), strop.c (scm_string_null_p): Use SCM_BOOL
123 instead of SCM_NEGATE_BOOL.
124
125 * filesys.c (scm_stat): Clean up type dispatch.
126
127 * filesys.c (scm_stat), ports.c (scm_input_port_p,
128 scm_output_port_p): Get rid of redundant IM type check.
129
130 * filesys.c (scm_readdir, scm_getcwd, scm_readlink), gh_data.c
131 (gh_str2scm), load.c (scm_primitive_load, scm_internal_parse_path,
132 scm_search_path), net_db.c (scm_gethost, scm_getnet, scm_getproto,
133 scm_return_entry), numbers.c (scm_number_to_string), objects.c
134 (scm_make_subclass_object), ports.c (scm_port_mode), read.c
135 (scm_lreadr), simpos.c (scm_getenv), socket.c (scm_inet_ntoa,
136 scm_addr_vector), stime.c (scm_strftime), strings.c
137 (scm_makfromstrs, scm_makfrom0str, scm_substring), strings.h
138 (SCM_STRING_COERCE_0TERMINATION_X), strop.c (string_copy,
139 scm_string_split), strports.c (scm_strport_to_string), symbols.c
140 (scm_symbol_to_string), vports.c (sf_write): Use scm_mem2string
141 instead of scm_makfromstr.
142
143 * net_db.c (scm_sethost, scm_setnet, scm_setproto, scm_setserv),
144 ports.c (scm_close_all_ports_except), read.c (scm_lreadr,
145 scm_read_hash_extend), stime.c (scm_strftime), strings.c
146 (scm_string_append, scm_string), strings.h (SCM_STRINGP,
147 SCM_STRING_COERCE_0TERMINATION_X, SCM_RWSTRINGP), strop.c
148 (string_capitalize_x): Prefer explicit type check over SCM_N?IMP,
149 !SCM_<pred> over SCM_N<pred>.
150
151 * strings.[ch] (scm_makfromstr): Deprecated.
152
153 (scm_mem2string): New function, replaces scm_makfromstr.
154
155 * strings.c (scm_substring), strop.c (string_copy,
156 scm_string_split), strports.c (scm_strport_to_string), symbols.c
157 (scm_symbol_to_string): Fix gc problem.
158
159 * strings.h (STRINGSH, SCM_STRINGS_H): Rename <foo>H to
160 SCM_<foo>_H.
161
162 * validate.h (SCM_VALIDATE_SUBSTRING_SPEC_COPY): Eliminate
163 warning about comparing signed and unsigned values. This fix is
164 not optimal, since it won't work reliably if sizeof (c_start) >
165 sizeof (size_t) or sizeof (c_end) > sizeof (size_t). A better
166 solution is to define this macro as an inline function, thus
167 allowing to specifiy the types of c_start and c_end.
168
13dcb666
DH
1692001-06-25 Dirk Herrmann <D.Herrmann@tu-bs.de>
170
171 * debug.h (SCM_DEBUGOBJ_FRAME): Deliver result as a
172 scm_t_debug_frame*.
173
174 * debug.h (DEBUGH, SCM_DEBUG_H), stacks.h (STACKSH, SCM_STACKSH):
175 Rename <foo>H to SCM_<foo>_H.
176
177 * stacks.c (NEXT_FRAME, narrow_stack): Prefer explicit type check
178 over SCM_N?IMP, !SCM_<pred> over SCM_N<pred>.
179
180 (narrow_stack): Make i unsigned. Don't use side-effecting
181 operations in conditions.
182
183 (narrow_stack, scm_make_stack, scm_stack_id,
184 scm_last_stack_frame): Get rid of redundant SCM_N?IMP checks.
185
186 (scm_make_stack, scm_stack_id, scm_last_stack_frame): Clean up
187 type dispatch. No need to cast result of SCM_DEBUGOBJ_FRAME any
188 more.
189
190 (scm_stack_ref, scm_frame_previous, scm_frame_next): Fix
191 signedness.
192
193