1 2000-03-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
3 * numbers.h (SCM_SRS, SCM_INUM): Corrected SCM_ASSCM/ASWORD fixes.
5 * alist.c, eval.c, net_db.c, posix.c, print.c, snarf.h, struct.c,
6 tags.h: Fixed copyright notices.
8 * struct.c, coop-threads.c: SCM_ASSCM/ASWORD fixes.
10 2000-03-12 Marius Vollmer <mvo@zagadka.ping.de>
12 * init.c (scm_standard_stream_to_port): Check whether the file
13 descriptor is valid and substitute "/dev/null" when not.
15 2000-03-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
17 * coop-defs.h (struct timespec): Conditionally defined.
19 * coop.c (coop_condition_variable_timed_wait_mutex): Use ETIMEDOUT
22 * readline.c (match_paren): Bugfix: First arg to select is not
23 number of descriptors but the number of the highest descriptor +
26 This is a preliminary attempt at a cleanup of the threads support
27 code. It moves things to better places, makes arguments more
28 consistent with the POSIX API (which is used in GNOME's glib), and
29 adds new functionality.
31 * readline.c (scm_init_readline): Added new arg to scm_init_mutex.
33 * coop-defs.h (scm_mutex_trylock): New macro: alias for
35 (scm_cond_init): Changed definition to
36 coop_new_condition_variable_init.
38 * coop.c: #include <errno.h>
39 (coop_timeout_qinsert): Moved here from iselect.c
40 (coop_new_mutex_init, coop_new_condition_variable_init): New
41 functions. The strange names are temporary. Use scm_mutex_init
42 and scm_cond_init instead.
43 (coop_mutex_trylock): New function. Uses errno.h:EBUSY. errno.h
44 is ANSI C, but should we check for individual error codes in
46 (coop_condition_variable_timed_wait_mutex): New function.
47 (coop_key_create, coop_setspecific, coop_getspecific,
48 coop_key_delete): New functions.
50 * iselect.c (coop_timout_qinsert): Moved to coop.c
52 2000-03-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
54 * pairs.h (SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR,
55 SCM_SETOR_CDR): Corrected SCM_ASSCM/WORD fixes.
57 * tags.h (SCM_VOIDP_TEST): Renamed from VOIDP_TEST.
60 * objects.h (SCM_CLASS_FLAGS, SCM_OBJ_CLASS_FLAGS,
61 SCM_SET_CLASS_INSTANCE_SIZE), struct.h (SCM_STRUCT_VTABLE_DATA),
62 proc.h (SCM_CLOSCAR): SCM_ASSCM/WORD fixes.
64 * eval.c (scm_lookupcar1): Inserted SCM_ASWORD in expressions
67 2000-03-11 Dale P. Smith <dpsm@en.com>, applied by Greg J. Badros, <gjb@cs.washington.edu>
69 * numbers.c (scm_copy_big_dec, scm_copy_smaller, scm_big_ior,
70 scm_big_xor, scm_big_and, scm_big_test): Added new lowlevel bignum
71 logical functions from SCM.
73 (logand, logior, logxor, logtest, logbit?): Extended scheme
74 logical functions to use bignums from SCM.
76 (lognot): Removed call to `SCM_VALIDATE_INUM' that prevented
77 lognot from using bignums.
79 Thu Mar 9 11:33:25 2000 Greg J. Badros <gjb@cs.washington.edu>
81 * vectors.h (SCM_VELTS_AS_STACKITEMS): Added this macro to help in
82 eliminating some warnings.
84 * unif.c, strports.c, print.c, options.c: Fix some warnings on
87 * gc.c, gc.h: Added scm_return_first_int(), and added comment re:
88 what the scm_return_first* functions do.
90 2000-03-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>, applied by Greg J. Badros, <gjb@cs.washington.edu>
92 * libguile/*.[ch]: make a distinction between SCM as a generic
93 name for a Scheme object (now a void*), and SCM as 32 bit word for
94 storing tags and immediates (now a long int). Introduced
95 SCM_ASWORD and SCM_ASSCM for conversion. Fixed various dubious
96 code in the process: arbiter.c (use macros), unif.c (scm_array_p),
98 Wed Mar 8 10:15:59 2000 Greg J. Badros <gjb@cs.washington.edu>
100 * numbers.c: Use SCM_VALIDATE_LONG_COPY, and longs, not ints, in
101 various logXXX primitives. Thanks Eric Moore!
103 Tue Mar 7 08:05:22 2000 Greg J. Badros <gjb@cs.washington.edu>
105 * run-test, remaining-docs-needed: Added these scripts. The
106 second one is only temporary until the docstring additions are
107 complete. run-test may best live on, but is here mostly for
108 convenience and awareness for now.
110 * hash.c: Docs, minor cleanup patch from Dirk Herrman.
112 Thu Mar 2 16:06:58 2000 Greg J. Badros <gjb@cs.washington.edu>
114 * error.h, error.c: Added `scm_wrong_type_arg_msg' to support
115 displaying the expected type. Use SCM_LISTn in a couple places
116 instead of scm_cons-ing by hand.
118 * __scm.h: Added SCM_ASSERT_TYPE macro.
120 * validate.h, scm_validate.h: Added the former, as a renamed
121 version of the latter with SCM_ASSERT_TYPE used in
122 SCM_MAKE_VALIDATE (instead of just SCM_ASSERT)
124 * Makefile.am: Rename scm_validate.h to validate.h.
126 * *.c, *.h: Include validate.h, not scm_validate.h (old name's
127 prefix was superfluous).
129 Thu Mar 2 15:33:12 2000 Greg J. Badros <gjb@cs.washington.edu>
131 * hashtab.c: Improved documentation for lots of functions. Added
132 handwritten docs for `hash-fold'.
134 Thu Mar 2 15:13:25 2000 Greg J. Badros <gjb@cs.washington.edu>
136 * list.c: Added hand-written docs for `del{q,v,ete}1!'.
138 Thu Mar 2 12:38:30 2000 Greg J. Badros <gjb@cs.washington.edu>
140 * list.c: Moved append docs to append! Thanks Dirk Hermann. Also,
141 added append docs from R4RS.
143 * strings.c: Docstring typo fix, + eliminate unneeded IMP tests.
146 * chars.h: Provide SCM_CHARP, SCM_CHAR, SCM_MAKE_CHAR and
147 deprecate SCM_ICHRP, SCM_ICHR, SCM_MAKICHR. Thanks Dirk Hermann!
149 * *.h, *.c: Use SCM_CHARP, SCM_CHAR, SCM_MAKE_CHAR throughout.
150 Drop use of SCM_P for function prototypes... assume an ANSI C
151 compiler. Thanks Dirk Hermann!
153 Sat Feb 19 12:20:12 2000 Greg J. Badros <gjb@cs.washington.edu>
155 * ports.c: Made `set-port-column!' and `set-port-line!' each
156 return SCM_UNSPECIFIED instead of a (not-scheme-object) integer
157 that caused a seg fault. Also fixed `set-port-column!'s
158 docstring. Thanks Han-Wen Nienhuys for finding the bug!
160 Sun Feb 13 19:11:42 2000 Greg J. Badros <gjb@cs.washington.edu>
162 * arbiters.c, eq.c, gc.c, guardians.c, list.c, ports.c, print.c,
163 regex-posix.c, scmsigs.c, stime.c, strings.c, variable.c, stime.c,
164 strings.c, variable.c: Added lots of documentation, cleaned up
165 some existing documentation. Occasionally changed formal params
166 to match docs. Also folded an #ifdef into the inners of a
167 primitive instead of having two copies of the primitive
168 (`get-internal-real-time', from stime.c)
170 Sun Feb 13 18:12:19 2000 Greg J. Badros <gjb@cs.washington.edu>
172 * ports.c: Added docs for primitives missing them. Written by
175 Sun Feb 13 09:40:36 2000 Greg J. Badros <gjb@cs.washington.edu>
177 * guile-doc-snarf.in: Use ${AWK} -f guile-func-name-check, not
178 just execing guile-func-name-check. Thanks Michael Livshin!
180 Thu Feb 10 11:43:23 2000 Greg J. Badros <gjb@cs.washington.edu>
182 * guile-snarf.awk.in: Tweak to work with Sun/HP awk, removed some
183 dead code. Patch from Michael Livshin.
185 * guile-doc-snarf.in: Tweak to work with Sun/HP sh. Patch from
188 2000-02-09 Gary Houston <ghouston@arglist.com>
190 * init.c (scm_init_standard_ports): when stdout is a tty, make the
191 current-output-port unbuffered by default. this is less confusing
192 for interactive use. it was line-buffered because of a
193 performance problem with unbuffered ports, but I think it will be
196 2000-02-08 Gary Houston <ghouston@arglist.com>
198 * __scm.h: don't define long_long or ulong_long if HAVE_LONG_LONGS
201 * stime.c (scm_localtime, scm_mktime): if neither HAVE_TM_ZONE nor
202 HAVE_TZNAME are defined, use an empty string instead of giving two
203 spurious compile-time errors.
205 Tue Feb 8 13:57:46 2000 Greg J. Badros <gjb@cs.washington.edu>
207 * ports.c: Doc patches from Richard Kim. Pasted from MIT Scheme.
210 Mon Feb 7 09:07:31 2000 Greg J. Badros <gjb@cs.washington.edu>
212 * macros.c: Doc patches from Richard Kim. Pasted from scm.texi.
214 Sun Feb 6 20:26:21 2000 Greg J. Badros <gjb@cs.washington.edu>
216 * pairs.c: Doc patches from Richard Kim. Pasted from MIT Scheme
217 (which is GNU GPL'd).
219 2000-01-31 Gary Houston <ghouston@arglist.com>
221 * strings.h: don't use SCM_P. don't include <string.h>.
222 * error.c, gh_data.c, ports.c, script.c, strop.c: include <string.h>.
224 * strings.c (scm_string_ref): make the 2nd argument compulsory.
225 previously it defaulted to zero for no good reason that I can see.
226 use a local variable for SCM_INUM (k). replace
227 SCM_VALIDATE_INUM_DEF with SCM_VALIDATE_INUM_COPY.
229 (scm_makfromstr): cosmetic changes.
231 (scm_string): Accept only chars in the list, not strings, for
232 conformance to R5RS (particularly for list->string, which is
233 supposed to be the inverse of string->list.) remove
234 SCM_DEFER_INTS/SCM_ALLOW_INTS, which is unnecessary since
235 scm_makstr handles the cell allocation. when reporting wrong-type
236 arg, don't report the position as 1.
238 * posix.c (scm_init_posix): intern PIPE_BUF if it's defined.
240 2000-01-29 Gary Houston <ghouston@arglist.com>
242 * posix.c (scm_pipe): rewrote the docstring.
244 * filesys.c (scm_select, retrieve_select_type, get_element,
245 fill_select_type, set_element): modified so that Scheme
246 "select" tests port buffers for the ability to provide input
247 or accept output. Previously only the underlying file descriptors
248 were checked. Rewrote the docstring.
250 Thu Jan 27 10:14:25 2000 Greg J. Badros <gjb@cs.washington.edu>
252 * vectors.c, symbols.c, strorder.c: Documentation cut and pasted
253 from Gregg Reynolds. Thanks Gregg!
255 Thu Jan 27 09:59:38 2000 Greg J. Badros <gjb@cs.washington.edu>
257 * strop.c (scm_i_index): Obfuscated commented-out SCM_DEFINE by
258 adding "x" prefix to the line so that guile-func-name-check
259 doesn't complain unnecessarily.
261 Wed Jan 26 17:33:52 2000 Greg J. Badros <gjb@cs.washington.edu>
263 * throw.c: Factor out an #ifdef/#else/#endif choice more finely
266 * strop.c: Documentation added by Gregg A. Reynolds. Pasted in
269 Wed Jan 26 10:02:11 2000 Greg J. Badros <gjb@cs.washington.edu>
271 * tag.c: Added doc for `tag', but mark as deprecated since Mikael
272 suggests removing tag.c altogether (and using a new `class-of'
275 * strings.c: Added documentation from Gregg A. Reynolds. Edited
276 a bit by me to use FOO instead of @var{foo} and to have the
277 summary come before preconditions on input. Also dropped trailing
280 * gsubr.c: Do not use SCM_DEFINE for `gsubr-apply'. Register the
281 function with scm_make_subr_opt w/ last arg of 0 so it is not
282 visible at the Scheme level. Mikael says that this is the right
283 thing because the first arg to the proc is the guts of a compiled
284 closure and shouldn't be exposed to the Scheme level.
286 Tue Jan 25 17:15:47 2000 Greg J. Badros <gjb@cs.washington.edu>
288 * sort.c: typo in comment fixed.
290 * keywords.c: Added documentation.
292 * guardians.c: Added documentation (could be better).
294 * gc.c: Added docs for gc-set-debug-check-freelist.
296 * eq.c: Added docs for eq?, eqv? equal? abridged from R4RS.
298 * boolean.c: Added docs for `not', `boolean?' (by hand).
300 Tue Jan 25 13:28:56 2000 Greg J. Badros <gjb@cs.washington.edu>
302 * random.c: Added documentation, from SLIB page:
303 http://angela.ctrl-c.liu.se/~calle/scheme/slib_toc.html
305 Mon Jan 24 17:50:20 2000 Greg J. Badros <gjb@cs.washington.edu>
307 * variable.c, version.c: Added documentation, written by hand
308 since I could not find anything already written that was
311 2000-01-23 Gary Houston <ghouston@arglist.com>
313 * filesys.c (scm_chown): omit port/fdes support if HAVE_FCHOWN is
314 not defined (thanks to Richard Y. Kim).
316 Thu Jan 20 13:00:38 2000 Greg J. Badros <gjb@cs.washington.edu>
318 * Makefile.in: Removed, this is auto-generated.
320 Thu Jan 20 11:33:47 2000 Dirk Hermann <dirk@ida.ing.tu-bs.de> --applied 01/20/00 gjb
322 * list.c: Put some variable initialization code at the point of
323 declaration; Added a comment for list*; Formatting changes.
325 * load.c: use SCM_NNULLP to make sure the end of a list is not
328 2000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
330 * backtrace.c (scm_display_error_message): Bugfix: Don't use
331 result of scm_list_p as C boolean.
332 (scm_display_error_message, scm_set_print_params_x): Use new
333 validation macros. (Thanks to Dirk Herrmann.)
335 * net_db.c (scm_resolv_error): Cast result from hstrerror.
337 * strports.c (st_end_input): Inserted parenthesis to get operator
340 * list.h (scm_init_list): Removed SCM_P around prototypes.
342 * fports.c, list.c, numbers.c, ports.c, stime.c, symbols.c,
343 filesys.c, posix.c: Converted docstrings to ANSI C format and
344 escaped " occurring inside string literals.
346 Tue Jan 18 13:21:08 2000 Mikael Djurfeldt <mdj@r11n07-s.pdc.kth.se>
348 * posix.c (scm_mknod): Escape " occuring inside docstring.
350 2000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
352 * alist.c, chars.c, debug.c, dynl.c, dynwind.c, error.c, eval.c,
353 evalext.c, filesys.c, gc.c, hash.c, hashtab.c, ioext.c,
354 keywords.c, list.c, load.c, macros.c, net_db.c, numbers.c,
355 objprop.c, ports.c, posix.c, print.c, procprop.c, procs.c,
356 ramap.c, regex-posix.c, root.c, scmsigs.c, simpos.c, socket.c,
357 stacks.c, stime.c, strings.c, strop.c, strports.c, struct.c,
358 symbols.c, throw.c, unif.c, vectors.c, version.c, vports.c,
359 weaks.c: Converted docstrings to ANSI C format.
361 * filesys.c (scm_chmod), simpos.c (scm_system), version
362 (scm_version), vports (scm_make_soft_port): Escape " occuring
365 Mon Jan 17 11:41:22 2000 Greg J. Badros <gjb@cs.washington.edu>
367 * scm_validate.h: Added SCM_VALIDATE_ULONG_COPY,
368 SCM_VALIDATE_LONG_COPY
370 * numbers.c: Use SCM_VALIDATE_ULONG_COPY, instead of
371 SCM_VALIDATE_INUM_COPY to let bigger numbers be used. Rename a
372 couple of formal arguments (and fix their uses) to make arguments
373 match the documentation.
375 2000-01-14 <mstachow@alum.mit.edu>
377 * Makefile.am: Augment path when running guile-doc-snarf so
378 guile-func-name-check is found.
380 Fri Jan 14 09:34:55 2000 Greg J. Badros <gjb@cs.washington.edu>
382 * scm_validate.h (SCM_NUM2LONG_DEF): Fix this macro to just use
383 def, not SCM_MAKINUM(def); thanks Janis Bzerins!
385 Wed Jan 12 00:06:53 2000 Greg J. Badros <gjb@cs.washington.edu>
387 * net_db.c (s_scm_inet_makeaddr): Use SCM_NUM2ULONG since that's
388 the way guile-1.3.4 worked, but #if 0 out the version using
389 SCM_VALIDATE_INUM_COPY for stricter testing.
391 Tue Jan 11 18:24:18 2000 Greg J. Badros <gjb@cs.washington.edu>
393 * guile-doc-snarf.in: Use new $fullfilename for running
394 guile-func-name-check, and put "$fullfilename" and "$filename" in
395 quotes at uses to make sure re-splitting on whitespace does not
396 occur (so filenames w/ embedded whitespace would work okay, though
397 I sure hope we never have to deal with that! :-) ). Thanks to
398 Mikael for pointing out the source_dir != build_dir was broken.
400 Tue Jan 11 17:42:40 2000 Greg J. Badros <gjb@cs.washington.edu>
402 * scm_validate.h: Added SCM_NUM2LONG_DEF macro. Make
403 SCM_OUT_OF_RANGE use SCM_MAKINUM, not scm_long2num. Added
404 SCM_COERCE_ROSTRING macro. Added SCM_VALIDATE_NONEMPTYLIST
405 macro. Fix SCM_VALIDATE_STRINGORSUBSTR macro to not use SLOPPY
408 * ports.c (scm_port_closed_p): Validate that the arg is a PORT,
409 then return whether it's an open port (was validating that it was
410 an open port -- this was a bug I introduced back in December, but
411 my careful reading of diffs caught it).
413 * numbers.c: Recombine the two conditional-compilation paths for
414 all the log* primitives -- they were split based on #ifndef
415 scm_long2num; factored out a SCM_LOGOP_RETURN macro, and fixed
416 some bugs and inconsistencies in the two sets of implementations.
417 (scm_lognot) Fixed *atrocious* re-use of a SCM as an integer!
419 * ioext.c: Use SCM_ASSERT_RANGE in a couple places, and
420 SCM_VALIDATE_INUM_COPY once where it should've been used.
422 * fluids.c (scm_internal_with_fluids): Use
423 SCM_VALIDATE_LIST_COPYLEN.
425 * filesys.c: Use SCM_NUM2LONG instead of SCM_VALIDATE_INUM_COPY;
426 this is questionable as it relaxes type safety, but other changes
427 were useful and all SCM_NUM2LONG's should probably be
428 revisited. Use SCM_OUT_OF_RANGE, SCM_WRONG_TYPE_ARG.
430 * evalext.c: line-break change on 1 line.
432 * eval.c (nconc2last): Takes a non-empty list as its first
433 argument, not just a list.
435 * dynl.c: Use new SCM_COERCE_ROSTRING macro.
437 Tue Jan 11 15:44:23 2000 Greg J. Badros <gjb@cs.washington.edu>
439 * dynl.c, feature.c, filesys.c, fports.c, list.c, load.c,
440 net_db.c, sort.c, stacks.c, unif.c: Use SCM_WTA, SCM_MISC_ERROR
443 * symbols.c (scm_sysintern0): Fixed the function name in a
444 scm_misc_error invocation.
446 * print.c (scm_simple_format): Do not need SCM_COERCE_SUBSTR, and
447 use scm_return_first to ward off latent GC bug that Mikael caught.
449 * async.c: Use SCM_VALIDATE_ASYNC_COPY one place where it wasn't
450 used before but should've been.
452 2000-01-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
454 * snarf.h (SCM_PROC1): Replaced SCM (*) (...) with
455 SCM_FUNC_CAST_ARBITRARY_ARGS.
457 Tue Jan 11 13:44:07 2000 Greg J. Badros <gjb@cs.washington.edu>
459 * guile-func-name-check.in: Added this script to statically check
460 #define FUNC_NAME, #undef FUNC_NAME in the source.
462 * sort.c, posix.c: Fix #undef FUNC_NAME lines to not have trailing
463 redundant comment, semicolon; caught by new guile-func-name-check
466 * debug.c: Fix mistaken #define FUNC_NAME for scm_make_iloc.
467 Caught by new guile-func-name-check-script.
469 * Makefile.am: Added guile-func-name-check to bin_SCRIPTS
471 * ramap.c: Fix #if 0'd out code to be syntactically acceptable to
472 guile-func-name-check.
474 * guile-doc-snarf.in: Run guile-func-name-check on the file before
477 Tue Jan 11 11:31:10 2000 Greg J. Badros <gjb@cs.washington.edu>
479 * fports.c, ports.c, ports.h, strports.c, vports.c: Make write
480 port function take const void*, not void*.
482 Tue Jan 11 11:18:07 2000 Greg J. Badros <gjb@cs.washington.edu>
484 * scm_validate.h, chars.c, ports.c, print.c, read.c, strings.c,
485 strop.c: Use SCM_VALIDATE_ICHR, SCM_VALIDATE_ICHR_COPY instead of
486 SCM_VALIDATE_CHAR, SCM_VALIDATE_CHAR_COPY. Change made for
487 consistency with the other macros dealing with immediate
488 characters. (Similar to INT -> INUM change a week or so ago).
490 Tue Jan 11 10:41:46 2000 Greg J. Badros <gjb@cs.washington.edu>
492 * dynl.c, error.c, eval.c, feature.c, filesys.c, fports.c, list.c, load.c,
493 net_db.c, read.c, socket.c: Update error messages to use ~A for
494 %s, ~S for %S to work with new `simple-format' format and be
497 * print.h, print.c (scm_simple_format): Added `simple-format'
498 primitive. It's the old scm_display_error, with ARGS now a rest
499 parameter, and the destination first instead of last (and a couple
500 new capabilities inspired by `format' -- #t as destination means
501 current-output-port, #f means return the formatted text as a
504 * gh.h, gh_data.c, ports.h, ports.c: Added some missing const specifications.
506 * backtrace.c (scm_display_error_message): Rewrote to use
507 scm_simple_format() procedure.
509 * __scm.h: Added commented-out #define of GUILE_DEBUG_FREELIST
511 2000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
513 Finally applied the libltdl patch from Thomas Tanner, with slight
516 * DYNAMIC-LINKING: Removed because it is obsolete.
517 * dynl.c: Use ANSI prototypes.
518 (sysdep_dynl_link): Use lt_dlopenext instead of lt_dlopen.
519 * scmconfig.h.in: Do not change, as it is automatically generated.
521 1999-07-25 Thomas Tanner <tanner@ffii.org>
523 * dynl-dl.c, dynl-dld.c, dynl-shl.c, dynl-vms.c: deleted
525 * Makefile.am: likewise, add INCLTDL (libltdl headers) to
526 INCLUDES, set dlpreopened files in LDFLAGS, link libguile
528 * dynl.c: use libltdl if DYNAMIC_LINKING is enabled,
529 * guile.c: register preloaded modules
530 * scmconfig.h.in: remove obsolete symbols
532 2000-01-09 Gary Houston <ghouston@arglist.com>
534 * These changes should make it unnecessary to call tzset from
535 Scheme after modifying the TZ environment variable, even if the
536 system date facilities cache the value.
537 * stime.c (setzone, scm_localtime): added comments.
538 (tzset): don't define a noop tzset macro if HAVE_TZSET not defined.
539 (setzone): don't call tzset.
540 (restorezone): call tzset only if HAVE_TZSET is defined.
541 (scm_tzset): don't define if HAVE_TZSET not defined. Change the
542 doc string to indicate that this procedure isn't likely to do
544 (scm_localtime, scm_strftime, scm_mktime): call tzset if
545 LOCALTIME_CACHE is defined.
547 2000-01-09 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
549 * posix.c (scm_sync): Return SCM_UNSPECIFIED.
551 2000-01-09 Gary Houston <ghouston@arglist.com>
553 * eval.c: define scm_unbound_variable_key ('unbound-variable).
554 scm_lookupcar1: throw an error with key 'unbound-variable instead
555 of 'misc-error when an unbound variable is encountered.
557 * filesys.c (scm_mkdir, scm_rmdir, scm_getcwd, scm_select,
558 scm_symlink, scm_readlink, scm_lstat),
559 posix.c (scm_setpgid, scm_setsid, scm_ctermid, scm_tcgetpgrp,
560 scm_tcsetpgrp, scm_uname, scm_setlocale, scm_mknod, scm_nice,
562 simpos.c (scm_system),
563 stime.c (scm_times, scm_strptime):
564 move the HAVE_XXX feature tests out of the procedure bodies.
565 don't use SCM_SYSMISSING.
566 scm_validate.h (SCM_SYSMISSING): removed.
567 error.h, error.c (scm_sysmissing): comment that this is deprecated.
568 see ChangeLog entry for 1999-12-28.
570 Sat Jan 8 19:52:04 2000 Greg J. Badros <gjb@cs.washington.edu>
572 * scm_validate.h (SCM_VALIDATE_BOOL_COPY): Fix typo.
574 Sat Jan 8 17:06:46 2000 Greg J. Badros <gjb@cs.washington.edu>
576 * backtrace.c: Fix spelling typo in a comment.
578 * snarf.h: Use new SCM_DOCS macro to encapsulate the non SCM_INIT
579 text. Reformatted some of the expansions.
581 Fri Jan 7 15:50:46 2000 Greg J. Badros <gjb@cs.washington.edu>
583 * scm_validate.h (SCM_OUT_OF_RANGE): Use scm_out_of_range_pos to
584 report the position of the argument.
586 * error.h, error.c (scm_out_of_range_pos): Added this function to
587 take extra "pos" argument, the position number of the errant
590 * debug.c: Use SCM_OUT_OF_RANGE instead of scm_out_of_range.
592 * snarf.h: Use SCM_HERE and SCM_INIT as names, not SCM_NOTSNARF
593 and SCM_SNARFING. Also put the %%% in the SCM_INIT since Mikael
594 prefers that and I'm reasonably indifferent.
596 Fri Jan 7 15:03:32 2000 Greg J. Badros <gjb@cs.washington.edu>
598 * snarf.h: Factor out differences between C++ and non-C++ into
599 SCM_FUNC_CAST_ARBITRARY_ARGS macro. Modify all the snarf macro
600 definitions to use SCM_NOTSNARF and SCM_SNARFING macros (like
601 Mikael's macros, below, but changed names and SCM_SNARFING no
602 longer expands to include %%% -- that must appear in the argument
603 so that the token appears at the call-site as a reminder).
605 2000-01-07 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
607 * snarf.h (SCM_INSITU, SCM_INIT): New snarf macros for use in user
608 snarf macro definitions.
610 2000-01-06 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
612 * chars.c (scm_integer_to_char): Use Greg's nice
613 SCM_VALIDATE_INUM_RANGE macro for argument checking for closer
616 Thu Jan 6 11:48:49 2000 Greg J. Badros <gjb@cs.washington.edu>
618 * *.c, snarf.h: Replace GUILE_PROC1 with SCM_DEFINE1 throughout.
620 Thu Jan 6 11:22:53 2000 Greg J. Badros <gjb@cs.washington.edu>
622 * Makefile.am (ETAGS_ARGS): Switch to SCM_DEFINE, SCM_DEFINE1
623 instead of GUILE_PROC.
625 Thu Jan 6 11:21:49 2000 Greg J. Badros <gjb@cs.washington.edu>
627 * alist.c: Do not report mismatch errors on some uses of `tmp' (do
628 this by using SCM_ARG2 instead of `2' in the SCM_VALIDATE_CONS
631 Thu Jan 6 09:54:33 2000 Dirk Herrmann <dirk@ida.ing.tu-bs.de> --gjb applied
633 * scm_validate.h: Remove some redundant NIMP tests.
635 * alist.c: minimize scope of the tmp variables, and initialize
636 them when declared. The strange SCM_NIMP tests are replaced by
637 SCM_CONSP tests that more closely reflect the intended semantics.
638 However, we don't get a performance penalty here, because the
639 SCM_CONSP test was performed by the ALISTCELL test anyway. * The
640 extremely ugly use of ASRTGO macros was removed: The calls to
641 ASRTGO were not encapsulated by "#ifndef SCM_RECKLESS", but got a
642 label parameter that only exists when SCM_RECKLESS is not defined.
643 This works, because ASRTGO itself is defined in a way that it only
644 makes use of the label parameter if SCM_RECKLESS is not defined
645 (shudder!). Does guile make at all use of the possibility to
646 define SCM_RECKLESS? * Codesize is likely to be reduced, since
647 instead of two calls to SCM_ASSERT performed by the ALISTCELL test
648 we now only get one test.
650 * list.c: Use SCM_NNULLP, not SCM_NIMP as appropriate. Also use
651 SCM_NULLP instead of SCM_IMP. Drop use of "register" keyword on
652 some variables in `list?'. Fix `reverse' and `reverse!'
653 primitives to handle improper lists better.
655 Wed Jan 5 11:24:53 2000 Greg J. Badros <gjb@cs.washington.edu>
657 * *.[ch]: Whitespace changes -- added space after SCM_VALIDATE_*
658 macros and SCM_DEFINE macros to match GNU coding standards.
660 Wed Jan 5 11:04:24 2000 Greg J. Badros <gjb@cs.washington.edu>
662 * *.[ch]: Replace GUILE_PROC w/ SCM_DEFINE.
664 Wed Jan 5 10:59:06 2000 Greg J. Badros <gjb@cs.washington.edu>
666 * *.[ch]: Replace SCM_VALIDATE_INT w/ SCM_VALIDATE_INUM for
667 better consistency with the names of other SCM_VALIDATE_ macros
668 and better conformance to guile naming policy.
670 Wed Jan 5 10:50:39 2000 Greg J. Badros <gjb@cs.washington.edu>
672 * ports.c (s_scm_close_all_ports_except): Use SCM_ARG1 in a
673 SCM_VALIDATE instead of 1 to avoid a check on the argument (since
674 it's not the actual name of the formal).
676 * guile-snarf.awk.in: Do argument/number mismatch checking and
677 print warnings in an Emacs compile-mode parseable format.
679 * struct.c: Use SCM_ASSERT_RANGE instead of SCM_ASSERT w/
680 SCM_OUTOFRANGE as 3rd argument.
682 * random.c: Fix argument/number mismatch (that I introduced :-( ).
684 * __scm.h: Do not #define SCM_ARG* when snarfing;
685 lets us distinguish between 1 and SCM_ARG1 when snarfing as only
686 the former (using the number) requires the argument to match the
687 formal in the current argument snarfing check.
689 * snarf.h: Give new definition of SCM_ASSERT when in
690 snarfing mode to output a lexically-identifiable sequence that the
691 guile-snarf.awk script uses to verify argument/position matching.
693 * ramap.c: Remove extraneous #undef FUNC_NAME.
695 Wed Jan 5 08:36:38 2000 Greg J. Badros <gjb@cs.washington.edu>
697 * guile-doc-snarf.awk.in: Removed -- guile-snarf.awk.in is the
698 current version of the same functionality; it writes the .x output
699 to stdout instead of directly into the file.
701 Wed Jan 5 08:15:04 2000 Greg J. Badros <gjb@cs.washington.edu>
703 * unif.c, symbols.c, strings.c, stacks.c, random.c, print.c,
704 posix.c: Eliminated a bunch of SCM_NIMP(..)s that are now
705 redundant with the safer macros. Patch from Dirk Hermann applied
706 by hand. Thanks Dirk!
708 * scm_validate.h: Added SCM_VALIDATE_VECTOR_OR_DVECTOR for some
711 * ramap.c: whitespace change.
713 Tue Jan 4 14:21:35 2000 Greg J. Badros <gjb@cs.washington.edu>
715 * options.c, objects.c, keywords.c, gc.c: Some redundant SCM_NIMP
716 removals from Dirk Hermann.
718 * alist.c: Rename formals to match the parameter names in the
719 documentation, updates to documentation. Thanks Dirk Hermann!
721 2000-01-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
723 * eval.c (SCM_CEVAL): Reverse order of
724 scm_stack_checking_enabled_p and SCM_STACK_OVERFLOW_P
725 (Thanks to Brad Knotwell.)
727 Mon Jan 3 08:30:02 2000 Greg Harvey <Greg.Harvey@thezone.net> (applied --01/03/00 gjb)
729 * gc.c (scm_debug_newcell): Added SCM_SETCAR of the newly
732 * pairs.h: Added a comment about the need for the SCM_SETCAR in
735 Mon Jan 3 08:25:19 2000 Greg J. Badros <gjb@cs.washington.edu>
737 * dynl-vms.c, debug.c, coop-threads.c, backtrace.c, eval.c: More
738 SCM_NIMP tests that were redundant are now eliminated. Patches
739 from Dirk Hermann applied by hand.
741 The ChangeLog continues in the file: "ChangeLog-1996-1999"