1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
|
Thu Jan 27 09:59:38 2000 Greg J. Badros <gjb@cs.washington.edu>
* strop.c (scm_i_index): Obfuscated commented-out SCM_DEFINE by
adding "x" prefix to the line so that guile-func-name-check
doesn't complain unnecessarily.
Wed Jan 26 17:33:52 2000 Greg J. Badros <gjb@cs.washington.edu>
* throw.c: Factor out an #ifdef/#else/#endif choice more finely
for maintainability.
* strop.c: Documentation added by Gregg A. Reynolds. Pasted in
from qdocs, RnRs.
Wed Jan 26 10:02:11 2000 Greg J. Badros <gjb@cs.washington.edu>
* tag.c: Added doc for `tag', but mark as deprecated since Mikael
suggests removing tag.c altogether (and using a new `class-of'
instead).
* strings.c: Added documentation from Gregg A. Reynolds. Edited
a bit by me to use FOO instead of @var{foo} and to have the
summary come before preconditions on input. Also dropped trailing
(rnrs) note.
* gsubr.c: Do not use SCM_DEFINE for `gsubr-apply'. Register the
function with scm_make_subr_opt w/ last arg of 0 so it is not
visible at the Scheme level. Mikael says that this is the right
thing because the first arg to the proc is the guts of a compiled
closure and shouldn't be exposed to the Scheme level.
Tue Jan 25 17:15:47 2000 Greg J. Badros <gjb@cs.washington.edu>
* sort.c: typo in comment fixed.
* keywords.c: Added documentation.
* guardians.c: Added documentation (could be better).
* gc.c: Added docs for gc-set-debug-check-freelist.
* eq.c: Added docs for eq?, eqv? equal? abridged from R4RS.
* boolean.c: Added docs for `not', `boolean?' (by hand).
Tue Jan 25 13:28:56 2000 Greg J. Badros <gjb@cs.washington.edu>
* random.c: Added documentation, from SLIB page:
http://angela.ctrl-c.liu.se/~calle/scheme/slib_toc.html
Mon Jan 24 17:50:20 2000 Greg J. Badros <gjb@cs.washington.edu>
* variable.c, version.c: Added documentation, written by hand
since I could not find anything already written that was
relevant.
2000-01-23 Gary Houston <ghouston@arglist.com>
* filesys.c (scm_chown): omit port/fdes support if HAVE_FCHOWN is
not defined (thanks to Richard Y. Kim).
Thu Jan 20 13:00:38 2000 Greg J. Badros <gjb@cs.washington.edu>
* Makefile.in: Removed, this is auto-generated.
Thu Jan 20 11:33:47 2000 Dirk Hermann <dirk@ida.ing.tu-bs.de> --applied 01/20/00 gjb
* list.c: Put some variable initialization code at the point of
declaration; Added a comment for list*; Formatting changes.
* load.c: use SCM_NNULLP to make sure the end of a list is not
reached yet.
2000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
* backtrace.c (scm_display_error_message): Bugfix: Don't use
result of scm_list_p as C boolean.
(scm_display_error_message, scm_set_print_params_x): Use new
validation macros. (Thanks to Dirk Herrmann.)
* net_db.c (scm_resolv_error): Cast result from hstrerror.
* strports.c (st_end_input): Inserted parenthesis to get operator
grouping correct.
* list.h (scm_init_list): Removed SCM_P around prototypes.
* fports.c, list.c, numbers.c, ports.c, stime.c, symbols.c,
filesys.c, posix.c: Converted docstrings to ANSI C format and
escaped " occurring inside string literals.
Tue Jan 18 13:21:08 2000 Mikael Djurfeldt <mdj@r11n07-s.pdc.kth.se>
* posix.c (scm_mknod): Escape " occuring inside docstring.
2000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
* alist.c, chars.c, debug.c, dynl.c, dynwind.c, error.c, eval.c,
evalext.c, filesys.c, gc.c, hash.c, hashtab.c, ioext.c,
keywords.c, list.c, load.c, macros.c, net_db.c, numbers.c,
objprop.c, ports.c, posix.c, print.c, procprop.c, procs.c,
ramap.c, regex-posix.c, root.c, scmsigs.c, simpos.c, socket.c,
stacks.c, stime.c, strings.c, strop.c, strports.c, struct.c,
symbols.c, throw.c, unif.c, vectors.c, version.c, vports.c,
weaks.c: Converted docstrings to ANSI C format.
* filesys.c (scm_chmod), simpos.c (scm_system), version
(scm_version), vports (scm_make_soft_port): Escape " occuring
inside docstring.
Mon Jan 17 11:41:22 2000 Greg J. Badros <gjb@cs.washington.edu>
* scm_validate.h: Added SCM_VALIDATE_ULONG_COPY,
SCM_VALIDATE_LONG_COPY
* numbers.c: Use SCM_VALIDATE_ULONG_COPY, instead of
SCM_VALIDATE_INUM_COPY to let bigger numbers be used. Rename a
couple of formal arguments (and fix their uses) to make arguments
match the documentation.
2000-01-14 <mstachow@alum.mit.edu>
* Makefile.am: Augment path when running guile-doc-snarf so
guile-func-name-check is found.
Fri Jan 14 09:34:55 2000 Greg J. Badros <gjb@cs.washington.edu>
* scm_validate.h (SCM_NUM2LONG_DEF): Fix this macro to just use
def, not SCM_MAKINUM(def); thanks Janis Bzerins!
Wed Jan 12 00:06:53 2000 Greg J. Badros <gjb@cs.washington.edu>
* net_db.c (s_scm_inet_makeaddr): Use SCM_NUM2ULONG since that's
the way guile-1.3.4 worked, but #if 0 out the version using
SCM_VALIDATE_INUM_COPY for stricter testing.
Tue Jan 11 18:24:18 2000 Greg J. Badros <gjb@cs.washington.edu>
* guile-doc-snarf.in: Use new $fullfilename for running
guile-func-name-check, and put "$fullfilename" and "$filename" in
quotes at uses to make sure re-splitting on whitespace does not
occur (so filenames w/ embedded whitespace would work okay, though
I sure hope we never have to deal with that! :-) ). Thanks to
Mikael for pointing out the source_dir != build_dir was broken.
Tue Jan 11 17:42:40 2000 Greg J. Badros <gjb@cs.washington.edu>
* scm_validate.h: Added SCM_NUM2LONG_DEF macro. Make
SCM_OUT_OF_RANGE use SCM_MAKINUM, not scm_long2num. Added
SCM_COERCE_ROSTRING macro. Added SCM_VALIDATE_NONEMPTYLIST
macro. Fix SCM_VALIDATE_STRINGORSUBSTR macro to not use SLOPPY
variants.
* ports.c (scm_port_closed_p): Validate that the arg is a PORT,
then return whether it's an open port (was validating that it was
an open port -- this was a bug I introduced back in December, but
my careful reading of diffs caught it).
* numbers.c: Recombine the two conditional-compilation paths for
all the log* primitives -- they were split based on #ifndef
scm_long2num; factored out a SCM_LOGOP_RETURN macro, and fixed
some bugs and inconsistencies in the two sets of implementations.
(scm_lognot) Fixed *atrocious* re-use of a SCM as an integer!
* ioext.c: Use SCM_ASSERT_RANGE in a couple places, and
SCM_VALIDATE_INUM_COPY once where it should've been used.
* fluids.c (scm_internal_with_fluids): Use
SCM_VALIDATE_LIST_COPYLEN.
* filesys.c: Use SCM_NUM2LONG instead of SCM_VALIDATE_INUM_COPY;
this is questionable as it relaxes type safety, but other changes
were useful and all SCM_NUM2LONG's should probably be
revisited. Use SCM_OUT_OF_RANGE, SCM_WRONG_TYPE_ARG.
* evalext.c: line-break change on 1 line.
* eval.c (nconc2last): Takes a non-empty list as its first
argument, not just a list.
* dynl.c: Use new SCM_COERCE_ROSTRING macro.
Tue Jan 11 15:44:23 2000 Greg J. Badros <gjb@cs.washington.edu>
* dynl.c, feature.c, filesys.c, fports.c, list.c, load.c,
net_db.c, sort.c, stacks.c, unif.c: Use SCM_WTA, SCM_MISC_ERROR
where possible.
* symbols.c (scm_sysintern0): Fixed the function name in a
scm_misc_error invocation.
* print.c (scm_simple_format): Do not need SCM_COERCE_SUBSTR, and
use scm_return_first to ward off latent GC bug that Mikael caught.
* async.c: Use SCM_VALIDATE_ASYNC_COPY one place where it wasn't
used before but should've been.
2000-01-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
* snarf.h (SCM_PROC1): Replaced SCM (*) (...) with
SCM_FUNC_CAST_ARBITRARY_ARGS.
Tue Jan 11 13:44:07 2000 Greg J. Badros <gjb@cs.washington.edu>
* guile-func-name-check.in: Added this script to statically check
#define FUNC_NAME, #undef FUNC_NAME in the source.
* sort.c, posix.c: Fix #undef FUNC_NAME lines to not have trailing
redundant comment, semicolon; caught by new guile-func-name-check
script.
* debug.c: Fix mistaken #define FUNC_NAME for scm_make_iloc.
Caught by new guile-func-name-check-script.
* Makefile.am: Added guile-func-name-check to bin_SCRIPTS
* ramap.c: Fix #if 0'd out code to be syntactically acceptable to
guile-func-name-check.
* guile-doc-snarf.in: Run guile-func-name-check on the file before
doing the snarf.
Tue Jan 11 11:31:10 2000 Greg J. Badros <gjb@cs.washington.edu>
* fports.c, ports.c, ports.h, strports.c, vports.c: Make write
port function take const void*, not void*.
Tue Jan 11 11:18:07 2000 Greg J. Badros <gjb@cs.washington.edu>
* scm_validate.h, chars.c, ports.c, print.c, read.c, strings.c,
strop.c: Use SCM_VALIDATE_ICHR, SCM_VALIDATE_ICHR_COPY instead of
SCM_VALIDATE_CHAR, SCM_VALIDATE_CHAR_COPY. Change made for
consistency with the other macros dealing with immediate
characters. (Similar to INT -> INUM change a week or so ago).
Tue Jan 11 10:41:46 2000 Greg J. Badros <gjb@cs.washington.edu>
* dynl.c, error.c, eval.c, feature.c, filesys.c, fports.c, list.c, load.c,
net_db.c, read.c, socket.c: Update error messages to use ~A for
%s, ~S for %S to work with new `simple-format' format and be
standardized better.
* print.h, print.c (scm_simple_format): Added `simple-format'
primitive. It's the old scm_display_error, with ARGS now a rest
parameter, and the destination first instead of last (and a couple
new capabilities inspired by `format' -- #t as destination means
current-output-port, #f means return the formatted text as a
string.
* gh.h, gh_data.c, ports.h, ports.c: Added some missing const specifications.
* backtrace.c (scm_display_error_message): Rewrote to use
scm_simple_format() procedure.
* __scm.h: Added commented-out #define of GUILE_DEBUG_FREELIST
2000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
Finally applied the libltdl patch from Thomas Tanner, with slight
modifications.
* DYNAMIC-LINKING: Removed because it is obsolete.
* dynl.c: Use ANSI prototypes.
(sysdep_dynl_link): Use lt_dlopenext instead of lt_dlopen.
* scmconfig.h.in: Do not change, as it is automatically generated.
1999-07-25 Thomas Tanner <tanner@ffii.org>
* dynl-dl.c, dynl-dld.c, dynl-shl.c, dynl-vms.c: deleted
(obsolete)
* Makefile.am: likewise, add INCLTDL (libltdl headers) to
INCLUDES, set dlpreopened files in LDFLAGS, link libguile
against libltdl
* dynl.c: use libltdl if DYNAMIC_LINKING is enabled,
* guile.c: register preloaded modules
* scmconfig.h.in: remove obsolete symbols
2000-01-09 Gary Houston <ghouston@arglist.com>
* These changes should make it unnecessary to call tzset from
Scheme after modifying the TZ environment variable, even if the
system date facilities cache the value.
* stime.c (setzone, scm_localtime): added comments.
(tzset): don't define a noop tzset macro if HAVE_TZSET not defined.
(setzone): don't call tzset.
(restorezone): call tzset only if HAVE_TZSET is defined.
(scm_tzset): don't define if HAVE_TZSET not defined. Change the
doc string to indicate that this procedure isn't likely to do
anything useful.
(scm_localtime, scm_strftime, scm_mktime): call tzset if
LOCALTIME_CACHE is defined.
2000-01-09 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
* posix.c (scm_sync): Return SCM_UNSPECIFIED.
2000-01-09 Gary Houston <ghouston@arglist.com>
* eval.c: define scm_unbound_variable_key ('unbound-variable).
scm_lookupcar1: throw an error with key 'unbound-variable instead
of 'misc-error when an unbound variable is encountered.
* filesys.c (scm_mkdir, scm_rmdir, scm_getcwd, scm_select,
scm_symlink, scm_readlink, scm_lstat),
posix.c (scm_setpgid, scm_setsid, scm_ctermid, scm_tcgetpgrp,
scm_tcsetpgrp, scm_uname, scm_setlocale, scm_mknod, scm_nice,
scm_sync),
simpos.c (scm_system),
stime.c (scm_times, scm_strptime):
move the HAVE_XXX feature tests out of the procedure bodies.
don't use SCM_SYSMISSING.
scm_validate.h (SCM_SYSMISSING): removed.
error.h, error.c (scm_sysmissing): comment that this is deprecated.
see ChangeLog entry for 1999-12-28.
Sat Jan 8 19:52:04 2000 Greg J. Badros <gjb@cs.washington.edu>
* scm_validate.h (SCM_VALIDATE_BOOL_COPY): Fix typo.
Sat Jan 8 17:06:46 2000 Greg J. Badros <gjb@cs.washington.edu>
* backtrace.c: Fix spelling typo in a comment.
* snarf.h: Use new SCM_DOCS macro to encapsulate the non SCM_INIT
text. Reformatted some of the expansions.
Fri Jan 7 15:50:46 2000 Greg J. Badros <gjb@cs.washington.edu>
* scm_validate.h (SCM_OUT_OF_RANGE): Use scm_out_of_range_pos to
report the position of the argument.
* error.h, error.c (scm_out_of_range_pos): Added this function to
take extra "pos" argument, the position number of the errant
argument.
* debug.c: Use SCM_OUT_OF_RANGE instead of scm_out_of_range.
* snarf.h: Use SCM_HERE and SCM_INIT as names, not SCM_NOTSNARF
and SCM_SNARFING. Also put the %%% in the SCM_INIT since Mikael
prefers that and I'm reasonably indifferent.
Fri Jan 7 15:03:32 2000 Greg J. Badros <gjb@cs.washington.edu>
* snarf.h: Factor out differences between C++ and non-C++ into
SCM_FUNC_CAST_ARBITRARY_ARGS macro. Modify all the snarf macro
definitions to use SCM_NOTSNARF and SCM_SNARFING macros (like
Mikael's macros, below, but changed names and SCM_SNARFING no
longer expands to include %%% -- that must appear in the argument
so that the token appears at the call-site as a reminder).
2000-01-07 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
* snarf.h (SCM_INSITU, SCM_INIT): New snarf macros for use in user
snarf macro definitions.
2000-01-06 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
* chars.c (scm_integer_to_char): Use Greg's nice
SCM_VALIDATE_INUM_RANGE macro for argument checking for closer
adherence to R5RS.
Thu Jan 6 11:48:49 2000 Greg J. Badros <gjb@cs.washington.edu>
* *.c, snarf.h: Replace GUILE_PROC1 with SCM_DEFINE1 throughout.
Thu Jan 6 11:22:53 2000 Greg J. Badros <gjb@cs.washington.edu>
* Makefile.am (ETAGS_ARGS): Switch to SCM_DEFINE, SCM_DEFINE1
instead of GUILE_PROC.
Thu Jan 6 11:21:49 2000 Greg J. Badros <gjb@cs.washington.edu>
* alist.c: Do not report mismatch errors on some uses of `tmp' (do
this by using SCM_ARG2 instead of `2' in the SCM_VALIDATE_CONS
macro call.
Thu Jan 6 09:54:33 2000 Dirk Herrmann <dirk@ida.ing.tu-bs.de> --gjb applied
* scm_validate.h: Remove some redundant NIMP tests.
* alist.c: minimize scope of the tmp variables, and initialize
them when declared. The strange SCM_NIMP tests are replaced by
SCM_CONSP tests that more closely reflect the intended semantics.
However, we don't get a performance penalty here, because the
SCM_CONSP test was performed by the ALISTCELL test anyway. * The
extremely ugly use of ASRTGO macros was removed: The calls to
ASRTGO were not encapsulated by "#ifndef SCM_RECKLESS", but got a
label parameter that only exists when SCM_RECKLESS is not defined.
This works, because ASRTGO itself is defined in a way that it only
makes use of the label parameter if SCM_RECKLESS is not defined
(shudder!). Does guile make at all use of the possibility to
define SCM_RECKLESS? * Codesize is likely to be reduced, since
instead of two calls to SCM_ASSERT performed by the ALISTCELL test
we now only get one test.
* list.c: Use SCM_NNULLP, not SCM_NIMP as appropriate. Also use
SCM_NULLP instead of SCM_IMP. Drop use of "register" keyword on
some variables in `list?'. Fix `reverse' and `reverse!'
primitives to handle improper lists better.
Wed Jan 5 11:24:53 2000 Greg J. Badros <gjb@cs.washington.edu>
* *.[ch]: Whitespace changes -- added space after SCM_VALIDATE_*
macros and SCM_DEFINE macros to match GNU coding standards.
Wed Jan 5 11:04:24 2000 Greg J. Badros <gjb@cs.washington.edu>
* *.[ch]: Replace GUILE_PROC w/ SCM_DEFINE.
Wed Jan 5 10:59:06 2000 Greg J. Badros <gjb@cs.washington.edu>
* *.[ch]: Replace SCM_VALIDATE_INT w/ SCM_VALIDATE_INUM for
better consistency with the names of other SCM_VALIDATE_ macros
and better conformance to guile naming policy.
Wed Jan 5 10:50:39 2000 Greg J. Badros <gjb@cs.washington.edu>
* ports.c (s_scm_close_all_ports_except): Use SCM_ARG1 in a
SCM_VALIDATE instead of 1 to avoid a check on the argument (since
it's not the actual name of the formal).
* guile-snarf.awk.in: Do argument/number mismatch checking and
print warnings in an Emacs compile-mode parseable format.
* struct.c: Use SCM_ASSERT_RANGE instead of SCM_ASSERT w/
SCM_OUTOFRANGE as 3rd argument.
* random.c: Fix argument/number mismatch (that I introduced :-( ).
* __scm.h: Do not #define SCM_ARG* when snarfing;
lets us distinguish between 1 and SCM_ARG1 when snarfing as only
the former (using the number) requires the argument to match the
formal in the current argument snarfing check.
* snarf.h: Give new definition of SCM_ASSERT when in
snarfing mode to output a lexically-identifiable sequence that the
guile-snarf.awk script uses to verify argument/position matching.
* ramap.c: Remove extraneous #undef FUNC_NAME.
Wed Jan 5 08:36:38 2000 Greg J. Badros <gjb@cs.washington.edu>
* guile-doc-snarf.awk.in: Removed -- guile-snarf.awk.in is the
current version of the same functionality; it writes the .x output
to stdout instead of directly into the file.
Wed Jan 5 08:15:04 2000 Greg J. Badros <gjb@cs.washington.edu>
* unif.c, symbols.c, strings.c, stacks.c, random.c, print.c,
posix.c: Eliminated a bunch of SCM_NIMP(..)s that are now
redundant with the safer macros. Patch from Dirk Hermann applied
by hand. Thanks Dirk!
* scm_validate.h: Added SCM_VALIDATE_VECTOR_OR_DVECTOR for some
uses in random.c.
* ramap.c: whitespace change.
Tue Jan 4 14:21:35 2000 Greg J. Badros <gjb@cs.washington.edu>
* options.c, objects.c, keywords.c, gc.c: Some redundant SCM_NIMP
removals from Dirk Hermann.
* alist.c: Rename formals to match the parameter names in the
documentation, updates to documentation. Thanks Dirk Hermann!
2000-01-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
* eval.c (SCM_CEVAL): Reverse order of
scm_stack_checking_enabled_p and SCM_STACK_OVERFLOW_P
(Thanks to Brad Knotwell.)
Mon Jan 3 08:30:02 2000 Greg Harvey <Greg.Harvey@thezone.net> (applied --01/03/00 gjb)
* gc.c (scm_debug_newcell): Added SCM_SETCAR of the newly
allocated cell.
* pairs.h: Added a comment about the need for the SCM_SETCAR in
SCM_NEWCELL macro.
Mon Jan 3 08:25:19 2000 Greg J. Badros <gjb@cs.washington.edu>
* dynl-vms.c, debug.c, coop-threads.c, backtrace.c, eval.c: More
SCM_NIMP tests that were redundant are now eliminated. Patches
from Dirk Hermann applied by hand.
The ChangeLog continues in the file: "ChangeLog-1996-1999"
|