* posix.c: don't include <sys/select.h> or define macros for
[bpt/guile.git] / libguile / ChangeLog
index eee821c..1ddc72c 100644 (file)
+Thu May 15 05:21:36 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * posix.c: don't include <sys/select.h> or define macros for
+       select, since they were not used in this file.
+
+*      * filesys.c (scm_select): make the fifth parameter microseconds,
+       not milliseconds.  let the fourth parameter be either a real value
+       or an integer or #f.  The first, second and third arguments can
+       now be vectors: the type of the corresponding return set will be
+       the same.
+       (set_element, get_element): new static procedures.
+
+Wed May 14 12:18:12 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * strports.c (scm_eval_string): New function.
+       (scm_eval_0str): Trivially re-implemented in terms of
+       scm_eval_string.
+       * strports.h (scm_eval_string): New extern decl.
+
+       * net_db.c (h_errno): Add extern decl for this.
+
+       * fports.c (local_pclose): New function.
+       (scm_pipob): Use it in the initializer here.
+
+       From Tim Pierce:
+       * net_db.c (scm_gethost, scm_getproto, scm_getnet, scm_getserv):
+       Use a meaningful error message when signalling an error.  For
+       this, scm_gethost must check h_errno rather than errno.
+
+Tue May 13 16:40:06 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.in: Regenerated, using automake-1.1p.
+
+Tue May 13 04:34:52 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * socket.c (scm_addr_vector): use SCM_UNDEFINED in scm_listify,
+       not SCM_UNSPECIFIED.
+
+       * script.c (scm_compile_shell_switches): don't append (quit) if
+       interactive.
+       (scm_shell): call scm_exit_status and exit on the result of the
+       evaluation.
+
+Mon May 12 17:23:58 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       Ensure that shared substrings are handled properly when passed to
+       a system call or other foreign function.  Many thanks to Tim
+       Pierce!
+       * symbols.h (SCM_COERCE_SUBSTR): new macro.
+       * filesys.c (scm_chmod, scm_rename, scm_delete_file, scm_mkdir,
+       scm_rmdir, scm_opendir, scm_chdir, scm_symlink, scm_readlink,
+       scm_lstat), ports.c (scm_sys_make_void_port), posix.c (scm_utime,
+       scm_putenv, scm_setlocale, scm_mknod), stime.c (setzone,
+       scm_strftime), vports.c (scm_make_soft_port), backtrace.c
+       (scm_display_error_message): use RO macros when strings may be RO.
+       * error.c (scm_error_scm), filesys.c (scm_chown, scm_chmod,
+       scm_rename, scm_delete_file, scm_mkdir, scm_rmdir, scm_opendir,
+       scm_chdir, scm_symlink, scm_readlink, scm_lstat), ioext.c
+       (scm_freopen, scm_duplicate_port, scm_fdopen), net_db.c
+       (scm_gethost, scm_getnet, scm_getproto, scm_getserv), ports.c
+       (scm_sys_make_void_port), posix.c (scm_getgrgid, scm_utime,
+       scm_setlocale, scm_mknod), stime.c (setzone, scm_strptime,
+       scm_strftime), vports.c (scm_make_soft_port): use
+       SCM_COERCE_SUBSTR to make sure shared substrings are
+       null-terminated.
+
+Mon May 12 15:33:10 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * error.c (scm_error): Add newline to error message.
+
+       * init.c (scm_init_standard_ports): Doc fix.
+
+Thu May  8 14:38:01 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * dynl-shl.c: Completely replaced with new code from Bernard
+       URBAN.
+
+       * script.c (scm_ice_9_already_loaded): New variable.
+       (scm_compile_shell_switches): Use it.
+
+Mon May  5 20:35:08 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * filesys.c (scm_input_waiting_p): add missing third argument to
+       scm_misc_error.
+
+       * stime.c (scm_localtime): copy the result of localtime before
+       calling gmtime in case they share a buffer.
+       (scm_localtime, scm_mktime): throw an error if neither HAVE_TM_ZONE
+       nor HAVE_TZNAME.
+
+Fri May  2 19:07:11 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * eq.c (scm_equal_p): use SCM_TYP7SD (y) not SCM_TYP7SD (x).
+       
+Thu May  1 17:01:45 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.am (check-local): New target, which causes 'make check'
+       to run gh_test_c and gh_test_repl, with some trivial input.
+       * Makefile.in: Rgnrtd.
+
+Tue Apr 29 19:00:40 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * dynl.c (print_dynl_obj): Indicate whether the dynamic object has
+       been unlinked.
+
+Mon Apr 28 06:10:14 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * async.c (scm_sys_tick_async_thunk): commented out.  I'm not
+       sure how this was supposed to work.
+       (scm_async_click): don't send SCM_TICK_SIGNAL.
+       (scm_init_async): don't initialize %tick-thunk.
+
+       * the following change doesn't affect the Scheme interface:
+       gc-thunk is called at the end of garbage collection.  however it's
+       no longer implemented by pretending it's a signal.
+       
+       * gc.c (scm_gc_end): don't call scm_take_signal.  instead mark the
+       system async corresponding to scm_gc_thunk.
+       * async.h: declare scm_gc_async.
+       * async.c (scm_sys_gc_async_thunk): apply the thunk named by
+       gc-thunk directly, instead of going through a signal handler.
+       (scm_gc_async): new variable, points to the GC system-async.
+       (scm_init_async): save the GC async as scm_gc_async instead
+       of using system_signal_asyncs.
+       (scm_gc_vcell): new variable, stores the gc-thunk vcell.
+
+Mon Apr 28 19:14:44 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.am (libpath.h, cpp_err_symbols.c, cpp_sig_symbols.c):
+       Don't screw up if we're interrupted.
+       * Makefile.in: Regeneradet.
+
+Sun Apr 27 17:57:15 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
+
+       * Makefile.am (modincludedir): Use "ice-9" instead of "@module@";
+       we're not using AM_INIT_GUILE_MODULE any more.
+       * Makefile.in: Reneregated.
+
+Thu Apr 24 00:41:08 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       Functions for finding variable bindings, grace à Tim Pierce.
+*      * gh_data.c (gh_lookup, gh_module_lookup): New functions.
+       * gh.h (gh_lookup, gh_module_lookup): New prototypes.
+
+       Get 'make dist' to work again.
+       * Makefile.am (EXTRA_DIST): Remove PLUGIN files.
+       * Makefile.in: Regenerated, like a surry without a fringe on top.
+
+       Changes for reduced Guile distribution: one configure script,
+       no plugins.
+       * configure.in, configure: Removed.
+       * acconfig.h, acinclude.m4: Moved to parent directory, where the
+       real configure script lives.
+       * Makefile.in, scmconfig.h.in: Regenerated.
+
+       * init.c: #include "script.h", to get prototype for script.c's
+       init function.
+
+Wed Apr 23 21:25:39 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * gh_data.c (gh_scm2newstr, gh_symbol2newstr): Use
+       scm_must_malloc, not raw malloc.
+
+       * script.c (scm_compile_shell_switches): Dyke out debugging output
+       code.
+
+Mon Apr 21 05:00:32 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * eq.c (scm_equal_p): use "SCM_TYP7SD", not "SCM (TYP7SD".
+
+       * stime.c: include both <sys/times.h> and <sys/timeb.h> if the
+       system has them.  Hope this is safe.  Previously
+       sys/timeb.h was included if HAVE_FTIME was defined or if
+       HAVE_SYS_TIMEB_H was defined but HAVE_SYS_TIMES_H was not,
+       but IRIX iris 5.3 apparently has ftime but not sys/timeb.h.
+
+       * ioext.c (scm_setfileno): add missing third argument to
+       scm_misc_error call.
+
+Sun Apr 20 15:09:31 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * eq.c (scm_equal_p): Correctly compare strings of different
+       varieties.  (Thanks to Tim Pierce.)
+
+Sat Apr 19 03:59:02 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * read.c (skip_scsh_block_comment): SCSH says the !# that ends a
+       #! block comment must occur on a line all by itself.
+
+        Move most of the guts of shell command processing into libguile,
+       so guile.c can be very small (and eventuallly auto-generated.  (I
+       mean, generated mechanically, not self-generated.  Hmm.))
+       * guile.c, script.c, script.h: New source files.
+       * init.c (scm_boot_guile_1): Call scm_init_script.
+       * libguile.h: #include "script.h".
+       * Makefile.am (bin_PROGRAMS, guile_SOURCES, guile_LDADD): New
+       targets, for new executable.
+       (libguile_la_SOURCES): Mention script.c.
+       (modinclude_HEADERS): Add script.h.
+       * configure.in: Always check for -lm, -lsocket, -lnsl, whether or
+       not dynamic linking is enabled.  This is because we're generating
+       executables now.  Move CY_AC_WITH_THREADS call after those, so the
+       values of cy_cv_threads_libs captures the libs chosen above.
+       * Makefile.in, configure, aclocal.m4: Regenerated.
+
+       * Makefile.am (EXTRA_DIST): Don't distribute gscm.c or gscm.h.
+       We don't maintain this interface any more, and it just confuses
+       people.
+
+       * alloca.c: #include <scmconfig.h>, not <config.h>.
+       * Makefile.am (EXTRA_libguile_la_SOURCES): Mention alloca.c, so
+       it'll get included in disties.
+
+Thu Apr 17 17:45:10 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * gscm.c, gscm.h: These aren't supported any more, and shouldn't
+       be distributed, because they confuse people.
+       * Makefile.am (EXTRA_DIST): Remove gscm.c, gscm.h.
+
+Sat Apr 19 11:56:18 1997  Tim Pierce  <twp@twp.tezcat.com>
+
+       * configure.in: check for presence of gethostent (not present on
+       OpenBSD by default).
+       * net_db.c (scm_gethost): Check HAVE_GETHOSTENT.
+       * configure, scmconfig.h.in: Regenerated.
+
+Wed Apr 16 17:52:38 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * backtrace.c (scm_backtrace): Split message string across
+       newlines properly.  GCC is more tolerant of this than other
+       compilers.
+
+Mon Apr 14 20:20:14 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       Merge threads directory into libguile.
+       * coop-defs.h, coop-threads.c, coop-threads.h, coop.c, threads.c,
+       threads.h: New source files.
+       * Makefile.am (EXTRA_libguile_la_SOURCES): Add threads.c.
+       (noinst_HEADERS): Add coop-threads.c, coop-threads.h, coop.c
+       here; see comment.
+       (modinclude_HEADERS): Add threads.h, coop-defs.h.
+       (EXTRA_DIST): Add fsu-pthreads.h, mit-pthreads.c, mit-pthreads.h,
+       coop-threads.c.cygnus, coop-threads.h.cygnus.
+       * configure.in: If we're using threads, include threads.o in
+       LIBOBJS.
+       * _scm.h, libguile.h: threads.h lives in this directory now.
+       * fsu-pthreads.h, mit-pthreads.c, mit-pthreads.h,
+       coop-threads.c.cygnus, coop-threads.h.cygnus: New files, not
+       currently used, but brought along for information's sake.
+       * ChangeLog-threads: log from old 'threads' directory.
+       * Makefile.in, configure: Rebuilt.
+
+Mon Apr 14 20:15:29 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * stime.c (scm_mktime): #ifndef HAVE_TM_ZONE, Use lt.tm_zone, not
+       lt->tm_zone.
+
+Mon Apr 14 01:32:57 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * gh_init.c (gh_standard_handler): Return SCM_BOOL_F, not garbage.
+
+       Merge GH interface library into libguile.
+       * gh.h, gh_data.c, gh_eval.c, gh_funcs.c, gh_init.c, gh_io.c,
+       gh_list.c, gh_predicates.c, gh_test_c.c, gh_test_repl.c: New files.
+       * Makefile.am (libguile_la_SOURCES): Add gh_data.c, gh_eval.c,
+       gh_funcs.c, gh_init.c, gh_io.c, gh_list.c, gh_predicates.c.  Move
+       _scm.h to ...
+       (EXTRA_libguile_la_SOURCES): ... here.
+       (pkginclude_HEADERS): Add variable, to get gh.h installed.
+       (THREAD_LIBS, check_ldadd, check_PROGRAMS, gh_test_c_SOURCES,
+       gh_test_c_LDADD, gh_test_repl_SOURCES, gh_test_repl_LDADD):
+       New variables, describing how to build the gh test programs.
+       * configure.in: Check for -lm, -lsocket, -lnsl; we need this to
+       build the test programs, and we probably should have been linking
+       libguile.la against them all along, to support AIX shared libs.
+       Add cflags for threads to CFLAGS; add libs for threads to new
+       variable THREAD_LIBS, used in Makefile.am.
+       * ChangeLog-gh: log from old `gh' subdirectory. 
+       * Makefile.in, configure, scmconfig.h.in: Rebuilt.
+
+Sun Apr 13 23:03:55 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * acconfig.h: Undo change of Apr 9; including the definition of
+       PACKAGE in the guile headers conflicts with applications' own
+       definitions.
+       * scmconfig.h.in: Regenerated.
+
+Fri Apr 11 14:12:13 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+*      * filesys.c (scm_fcntl): New function from Roland McGrath.
+       (scm_init_filesys): New symbols for use with fcntl.
+       * filesys.h: Added prototype.
+
+       * eval.c (SCM_APPLY): Set debug apply frame argument list correctly
+       when PROC is receiving no arguments.
+
+Fri Apr 11 19:39:32 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * filesys.c (S_ISSOCK): Define this if it's missing, but we do
+       have S_IFSOCK.  This is the case under Ultrix.
+
+       * posix.c (scm_status_exit_val, scm_status_exit_val,
+       scm_status_term_sig, scm_status_stop_sig): Modified to work with
+       Ultrix versions of WIFSTOPPED, etc., which assume that their
+       arguments are lvalues (hmm).
+
+Thu Apr 10 15:10:07 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * eval.c: Doc fixes.
+
+       * throw.c: Doc fixes; rearranged.
+
+       * putenv.c: #include "libguile/scmconfig.h", not <config.h>.
+
+Wed Apr  9 18:01:20 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * acconfig.h: Added entry for PACKAGE.
+       * scmconfig.h.in: Regenerated.
+
+       Changes to work with automake-1.1n, which has better libtool support.
+       * Makefile.am: Use lib_LTLIBRARIES instead of lib_PROGRAMS.
+       Use libguile_la_LIBADD instead of libguile_la_LDADD.  (What's the
+       difference here?)
+       (libguile_la_SOURCES, modinclude_HEADERS, EXTRA_DIST): Format for
+       readability.
+       * Makefile.in: Rebuild.
+
+Wed Apr  9 09:08:54 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * stime.c (scm_mktime): take an optional zone argument.
+       (scm_localtime): check putenv return value.
+       (scm_strftime, scm_strptime): moved from posix.c.  move #include
+       sequences.h too.
+       stime.h, posix.h: update prototypes.
+       (bdtime2c, setzone, restorezone): new static procedures.
+       (scm_mktime, scm_strftime): use them.
+       (scm_strftime): don't call mktime before strftime.  Use
+       filltime for return value.
+       (filltime): convert NULL zname to #f.
+*      (scm_strptime): return a count of characters consumed, not
+       the remaining string.
+
+Sun Apr  6 05:44:11 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * stime.c (scm_localtime): check HAVE_TM_ZONE and HAVE_TZNAME.
+       (scm_mktime): likewise.
+       Declare *tzname[].
+       Uncomment localtime and mktime.
+
+       * configure.in: add AC_STRUCT_TIMEZONE.
+
+Sat Apr  5 23:56:40 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * stime.c (scm_init_stime): don't define ticks/sec.
+       (scm_gettimeofday): renamed from scm_time_plus_ticks (avoids multiple
+       return value problem and is still portable.)
+
+Sat Apr  5 17:59:24 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * cpp_err_symbols.in: Renamed from cpp_err_symbols, to avoid
+       make's implicit cpp_err_symbols: cpp_err_symbols.c rule.
+       * cpp_sig_symbols.in: Renamed from cpp_sig_symbols.
+       * Makefile.am (check_errnos, check_signals, cpp_sig_symbols.c,
+       cpp_err_symbols.c): Corresponding changes.
+       * Makefile.in: Regenerated.
+
+Sat Apr  5 02:39:02 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * posix.c (scm_putenv): don't check HAVE_PUTENV.
+       * Makefile.am (EXTRA_libguile_la_SOURCES): add putenv.c.
+       * configure.in: move putenv from AC_CHECK_FUNCS to AC_REPLACE_FUNCS.
+       * putenv.c: new file, from sh-utils 1.12.
+
+       * posix.c (scm_environ): use malloc in place of scm_must_malloc
+       since allocation isn't for Scheme objects.
+       (scm_putenv): copy strings before placing in the environment.
+
+       * stime.c (scm_current_time): throw an error if time returns -1,
+       instead of returning #f.
+       (scm_get_internal_real_time, scm_get_internal_real_time): use
+       scm_long2num for return value instead of SCM_MAKINUM.
+
+       * stime.h: prototypes updated.
+
+       * stime.c (scm_time_in_msec): apparently unused, deleted.
+
+Fri Apr  4 08:53:41 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * configure.in: check for gettimeofday.
+
+       * stime.c (scm_time_plus_ticks): new procedure, an scsh interface
+       which may be more usefully portable than a gettimeofday interface.
+
+Wed Apr  2 17:11:39 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * Makefile.am (EXTRA_DIST): It's cpp_err_symbols, not
+       cpp_err_signals.
+       * Makefile.in: Regenerated.
+
+Mon Mar 31 03:22:37 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * stime.c (filltime): recovered static procedure.
+       (scm_localtime, scm_gmtime, scm_mktime, scm_tzset): recovered from
+       an earlier Guile.
+
+       * posix.h: add prototype for scm_close_pipe, remove prototypes for
+       scm_open_input_pipe, scm_open_output_pipe, change scm_mknod prototype.
+
+*      * posix.c (scm_mknod): split the mode argument into type and perms
+       arguments, like the extra fields returned by stat.
+
+       * fports.c (scm_pipob): set the close, free and print procedures.
+       (scm_close_pipe): new procedure.
+
+       * posix.c (scm_open_input_pipe, scm_open_output_pipe): deleted,
+       define them in boot-9.scm
+
+Wed Mar 26 04:10:32 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * ioext.c (scm_setfileno): throw a runtime error if SET_FILE_FD_FIELD
+       wan't defined.  Don't include fd.h.
+
+       * Previously fd.h was regenerated whenever configure was run,
+       forcing a couple of files to be recompiled.
+
+       * fd.h.in: deleted, SET_FILE_FD_FIELD moved to ioext.c.
+       * configure.in: AC_DEFINE FD_SETTER instead of HAVE_FD_SETTER.
+       Check for _fileno as well as _file.
+       Don't output fd.h.
+       * ioext.c: don't fd.h.
+       * acconfig.h: remove duplicate HAVE_FD_SETTER and change the
+       other to FD_SETTER.
+
+       * Change the stratigy for getting information about errno
+       (and now signal number) values, e.g., ENOSYS, SIGKILL.  Instead of
+       generating lists of symbols during the build process, which will
+       not always work, include comprehensive lists in the distribution.
+       To help keep the lists up to date, the "check_signals" and
+       "check_errnos" make targets can be used.
+       
+       * configure.in: don't check for a command to extract errno codes.
+       * Makefile.am: update file lists, remove errnos.list and errnos.c
+       targets, add cpp_err_symbols.c, cpp_sig_symbols.c, check_signals,
+       check_errnos targets.
+       (CLEANFILES): remove errnos.c and errnos.list, add
+       cpp_err_symbols_here cpp_err_symbols_diff cpp_err_symbols_new
+       cpp_sig_symbols_here cpp_sig_symbols_diff cpp_sig_symbols_new
+       * errnos.default: deleted.
+       * cpp_signal.c: new file.
+       * cpp_errno.c: renamed from errnos_get.c.
+       * cpp_err_symbols, cpp_sig_symbols: new files.
+       * cpp_cnvt.awk: renamed from errnos_cnvt_awk.
+       * error.c (scm_init_error): #include cpp_err_symbols instead of
+       errnos.c.
+       * posix.c (scm_init_posix): don't intern signal symbols.  #include
+       cpp_sig_symbols.c.
+
+Tue Mar 25 04:51:10 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * strop.c (scm_i_index): allow the lower bound to be equal to the
+       length of the string, so a null string doesn't always give an error.
+
+       * posix.h: new prototypes.
+       * posix.c (scm_status_exit_val, scm_status_term_sig,
+       scm_status_stop_sig): new functions, as in scsh.  They break down
+       process status values as returned by waitpid.
+
+Sat Mar 22 18:16:29 1997  Gary Houston  <ghouston@actrix.gen.nz>
+       
+       * net_db.c (scm_gethost): don't check HAVE_GETHOSTENT, since 
+       configure doesn't know about it.
+
+Fri Mar 21 23:49:28 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * snarf.h, backtrace.c: Name change SCM_GLOBAL --> SCM_VCELL.
+
+       * snarf.h: Added new macros SCM_GLOBAL_SYMBOL and SCM_GLOBAL_VCELL
+       which defines C variables with global linkage.
+
+Mon Mar 17 05:57:11 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * snarf.h (SCM_PROC1): Bugfix: Use (void) rather than (...) for
+       zero arg subrs.
+
+Sun Mar 16 11:43:49 1997  Mikael Djurfeldt  <mdj@floss.cyclic.com>
+
+       * eval.c (safe_setjmp): Temporarily use old setjmp until someone
+       has time to check why this doesn't work well with continuations.
+
+Sun Mar 16 05:09:55 1997  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * Fix shell syntax error; some shells won't tolerate 
+       multiple "fi" statements on a single line.  (Thanks to Fred Fish.)
+
+Sat Mar 15 01:11:40 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * posix.c (scm_uname): throw an error if uname fails instead
+       of returning errno.
+
+       * error.h (scm_errno, scm_perror): obsolete prototypes removed.
+
+       * error.c (err_head, scm_errno, scm_perror): obsolete procedures
+       removed.
+
+       * async.c (scm_ints_disabled): definition moved from error.c.
+
+Sat Mar 15 00:06:08 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * acconfig.h: Removed PACKAGE.
+
+       * scmconfig.h.in: Regenerated.
+
+       * snarf.h: g++ says it's non-portable not to specify the first
+       argument in a varargs declaration.  I introduced the first
+       argument by using preprocessor conditionals.
+
+Thu Mar 13 21:28:25 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * ioext.c (scm_read_delimited_x): use RO string macros for delims.
+       (scm_freopen): use RO string macros for filename and modes.
+       (scm_duplicate_port, scm_fdopen): use RO string macros for modes.
+
+       * posix.c (scm_getgrgid): simplify conversion of name to C string.
+       (scm_mknod): use RO string macros for path.
+
+       * socket.c (scm_fill_sockaddr, scm_send, scm_sendto):
+       use SCM_ROSTRINGP, SCM_ROCHARS, SCM_ROLENGTH.
+       
+       * net_db.c (scm_gethost, scm_getnet, scm_getproto, scm_getserv):
+       use SCM_ROSTRINGP and SCM_ROCHARS.
+
+Thu Mar 13 18:31:33 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * unif.c (scm_array_set_x): Cast ICHR (obj) to char if storing in
+       a scm_tc7_byvect.
+
+       * ramap.c (scm_ra_matchp, scm_ra_matchp, scm_array_fill_int, racp,
+       scm_array_index_map_x, raeql_1, scm_array_equal_p): Completed
+       support for byte vectors.
+
+       * print.c (scm_iprin1): Limit number of vector elements printed
+       according to pstate->length.
+
+Thu Mar 13 00:12:35 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * backtrace.c (scm_display_error_message): don't segv if message
+       is an immediate.
+
+       * error.h: prototype for scm_error_scm.
+
+       * error.c (scm_error_scm): new procedure, reimplements scm-error
+       in C and uses scm_error.
+
+Tue Mar 11 03:51:00 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * read.c (scm_read_hash_extend): make scm_read_hash_procedures a 
+       pointer to the Scheme variable read-hash-procedures and intern it
+       in scm_init_read. Modify scm_read_hash_extend and 
+       scm_get_hash_procedure to use the pointer.
+
+Mon Mar 10 06:28:54 1997  Gary Houston  <ghouston@actrix.gen.nz>       
+
+       * read.h (SCM_N_READ_OPTIONS): increase SCM_N_READ_OPTIONS to 4.
+       (SCM_KEYWORD_STYLE): defined.
+
+       * read.c (scm_read_opts): add a keywords option.  This isn't a
+       boolean option, in case someone wants to add support for DSSSL
+       keywords too.
+       Setup scm_keyword_prefix symbol.
+       (scm_lreadr): Only process keywords if SCM_KEYWORD_STYLE is
+       set to 'prefix.
+*      I've left keyword support disabled by default, since it doesn't
+       seem to break the module system and it gives R4RS standard behaviour.
+       It can be reactivated with (read-set! keywords 'prefix).
+
+Sun Mar  9 14:14:39 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * arbiters.c (scm_make_arbiter): Bugfix: Must SCM_DEFER_INTS
+       before constructing arbiter.
+
+       * eval.c (scm_m_define): Bugfix: Check that the object is a
+       closure before setting the procedure property!
+
+       * ports.h: Removed prototype for scm_ungetc_char_ready_p.
+
+       * ports.c: Removed `ungetc-char-ready?'.
+
+Sat Mar  8 00:27:05 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * read.c (scm_init_read): intitialise scm_read_hash_procedures
+       (idea from Mikael: make it a pair so scm_permanent object only
+       called once.)
+       (scm_read_hash_extend): don't call scm_permanent_object.
+       (ideas from Mikael): if chr is already in the list, replace its
+       procedure instead of appending it again.  If proc is #f, remove
+       it from the list.
+       (scm_get_hash_procedure): take CDR of scm_read_hash_procedures.
+
+       * strports.c (scm_read_0str, scm_eval_0str): update scm_read usage.
+
+       * gdbint.c (gdb_read): update scm_lreadr usage.
+
+       * load.h: update prototypes.
+
+       * load.c (scm_primitive_load, scm_read_and_eval_x,
+       scm_primitive_load_path): remove case_insensitive_p, sharp arguments.
+
+       * read.h: add prototype for scm_read_hash_extend.  Change args for
+       other prototypes.
+       
+       * read.c (scm_read_hash_procedures): new variable.
+       (scm_read_hash_extend): new procedure.
+       (scm_get_hash_procedure): new procedure.
+*      (scm_lreadr): use scm_get_hash_procedure instead of an argument
+       for extended # processing.
+       (scm_read, scm_lreadr, scm_lreadrecparen, scm_lreadparen,
+       scm_read_token): remove case_i, sharp arguments.  Change callers.
+
+Fri Mar  7 08:58:21 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * read.h (SCM_N_READ_OPTIONS): increase to 3.
+       (SCM_CASE_INSENSITIVE_P): define.
+
+       * read.c: add case-insensitive option to scm_read_opts.
+*      (scm_read_token): use SCM_CASE_INSENSITIVE_P instead of an argument
+       to determine whether to convert symbol case.
+       (default_case_i): definition removed.
+       * read.c (scm_read_token): if case_i, downcase ic before doing
+       anything with it.
+
+Sat Mar  8 03:49:03 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * configure.in: Added configuration option `guile-debug'.
+       Configure with --enable-guile-debug if you want a bunch of extra
+       functions used for debugging when developing Guile.
+
+       * acconfig.h: Added new preprocessor symbol GUILE_DEBUG.
+
+       * procs.c (make-cclo): New undocumented debugging procedure: Make
+       compiled closure with internal procedure PROC and length LENGTH.
+       Only compiled if GUILE_DEBUG is defined.
+
+       * debug.c: Only include `debug-hang' if GUILE_DEBUG is defined.
+
+       * print.c: Put #ifdef GUILE_DEBUG around `current-pstate'.
+
+       * ports.c: Changed preprocessor symbol DEBUG --> GUILE_DEBUG.
+
+       * eval.c (SCM_CEVAL): Added code sections for handling of rpsubrs
+       with 3 or more args internally to the evaluator.
+
+Fri Mar  7 19:38:18 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * eval.c (SCM_CEVAL): Added code sections for handling of asubrs
+       with 3 or more args internally to the evaluator.  This is mainly
+       because we don't want to pass entry and exit points of the
+       debug support twice, but it also seems to increase the speed of
+       the evaluator for such calls (e. g. (+ 1 2 3)).
+
+*      * backtrace.c (scm_display_application): New procedure:
+       display-application; Set fancy printing parameters individually
+       for different types of display (backtrace, error, application).
+       (These should of course be customizable!)
+
+       * debug.h (SCM_RESET_DEBUG_MODE): Bugfix: The old code didn't
+       clear the CHECK-flags.
+
+Thu Mar  6 00:53:02 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * tags.h, eval.c (iqq): Fixes to comments about SCM_ECONSP.
+
+Wed Mar  5 23:31:21 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * tags.h (SCM_ECONSP, SCM_NECONSP): Bugfix: Discriminate structs
+       from pairs with a GLOC in the car.
+
+       * symbols.c (msymbolize): Bugfix: Also initialize SCM_SYMBOL_HASH,
+       otherwise `symbol-hash' will behave badly.
+       (scm_symbol_hash): Bugfix: Must msymbolize if tc7_ssymbol, othwise
+       we get segmentation fault!
+
+*      * symbols.c: Added #include "weaks.h".  New functions:
+       `builtin-bindings' and `builtin-weak-bindings'.  (These will be
+       moved to an extraneous library when we split libguile.)
+
+Tue Mar  4 19:50:07 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * filesys.c (scm_stat): stat now takes fport arguments too as
+       documented in the manual.
+
+Mon Mar  3 07:11:33 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * debug.c (scm_single_step): Bugfix: Call continuation with
+       scm_call_continuation instead of throwing to it.
+
+Mon Mar  3 09:07:56 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * ports.c (scm_char_ready_p): bug fix: in SCM_PROC char-ready's
+       argument wasn't declared to be optional.
+
+Sun Mar  2 16:34:40 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * stime.c (scm_init_stime): Add feature "current-time".
+
+Sun Mar  2 06:37:31 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * throw.h: prototype for scm_exit_status.
+       * throw.c (scm_handle_by_message): if a 'quit is caught, use its
+       args to derive an exit status.  Allows (quit) to work from a
+       script.
+       (scm_exit_status): new function.
+       #include "eq.h".
+
+Sat Mar  1 00:09:15 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * eval.c (scm_deval): Removed some old code.
+       (ENTER_APPLY): Bugfix: Reset apply-frame trap on trap as is done
+       with the others.
+       (ENTER_APPLY, scm_deval): Reset trace flag on apply-frame and
+       exit-frame traps.
+
+       * symbols.c (msymbolize): Bugfix: Must initialize property list to
+       SCM_EOL.
+
+       * procs.c: Introduce the existent C function scm_thunk_p at the
+       Scheme level as well.
+
+Wed Feb 26 12:53:58 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * symbols.c, symbols.h (scm_symbol_value0): New function.  Can be
+       used from C to easily lookup the value of a symbol in the current
+       module.
+
+Tue Feb 25 00:14:10 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * unif.c (scm_init_unif): Added #include "unif.x".  (There are two
+       scm_init_unif in this file.  This will also fix a previous problem
+       with guile-snarf.)
+
+       * configure.in: Added AM_MAINTAINER_MODE
+
+Fri Feb 21 23:07:26 1997  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
+
+       * gdb_interface.h (GDB_INTERFACE): Added some (void *) casts to
+       avoid warnings.
+
+Fri Feb 21 18:00:38 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * Makefile.am (EXTRA_libguile_la_SOURCES): New variable to hold
+       source files that are not always included in libguile but should
+       have their dependencies calculated by automake.  This variable is
+       recognized by automake, no further magic is needed.
+       (libguile_la_DEPENDENCIES): Changed to @LIBLOBJS@.  Libtool wants
+       to deal exclusively with *.lo files, as it seems.  The *.o files
+       are built automatically when the corresponding *.lo file gets
+       built.
+
+Wed Feb 19 14:04:23 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * list.h (scm_list_cdr_ref): Delete prototype; function no longer
+       exists.
+
+Thu Feb 13 21:44:07 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * unif.c (scm_array_set_x): minor change to argument error checking.
+
+Tue Feb 11 18:19:47 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.am (libguile_la_SOURCES): Remove backtrace.c, debug.c,
+       inet_aton.c, srcprop.c, stacks.c, and strerror.c from this list.
+       They should only be included in the library at configure.in's
+       discretion.
+       (libguile_la_LDADD): Include the appropriate .lo files here.
+       (libguile_la_DEPENDENCIES): List the corresponding .o files here,
+       so we know when to build them (and their .lo bretheren).
+       * configure.in (LIBLOBJS): New substituted variable.  We let
+       configure decide which .o files to include in LIBOBJS, and then
+       put the corresponding list of .lo files in LIBLOBJS.  The latter
+       is what we pass to libtool.
+       * Makefile.in, configure: regenerated.
+
+Mon Feb 10 00:08:08 1997  Mikael Djurfeldt  <mdj@kenneth>
+
+       * symbols.c (scm_sysintern0): New function.  Contains the core of
+       old scm_sysintern but doesn't take a second value argument.
+       (scm_sysintern): Now uses scm_sysintern0.
+       (scm_sysintern_no_module_lookup): Renamed to
+       scm_sysintern0_no_module_lookup and doesn't take a second value
+       argument any longer.
+
+       * symbols.h (scm_sysintern0: Added declaration.
+       
+       * options.c (scm_init_opts): Use scm_sysintern0 instead of
+       scm_sysintern when interning option keys.  Otherwise we risk
+       destroying the values of already interned variables.
+
+       * symbols.c (scm_sym2vcell): Bugfix: Treat definedp as
+       scheme-level boolean (use SCM_NFALSEP).
+
+       * backtrace.c (scm_init_backtrace): Make Scheme-level variable
+       `the-last-stack'.
+       (scm_backtrace): New function. (C version of old function from
+       boot-9.scm) Motivation: Make it possible to display backtraces
+       without depending on boot-9.scm.  (I'm uncertain if this
+       motivation is good enough...)
+
+       * root.h (scm_root_state): Add member the_last_stack_var.
+       (scm_the_stack_var): Defined to scm_root->the_last_stack_var.
+
+       * root.c (mark_root): Mark scm_the_last_stack_var.
+
+       * init.c (scm_start_stack): Initialize scm_the_last_stack_var to
+       SCM_BOOL_F.
+
+Sun Feb  9 18:04:41 1997  Mikael Djurfeldt  <mdj@kenneth>
+
+       * throw.c (mark_lazy_catch, free_lazy_catch): Removed.
+       1. mark_lazy_catch didn't mark the smob.
+       2. Both functions above have standard variants:
+       (lazy_catch_funs): Changed mark_lazy_catch --> scm_mark0,
+       free_lazy_catch --> scm_free0.
+
+Fri Feb  7 17:30:26 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * throw.c (scm_internal_lazy_catch): New function.
+       (scm_lazy_catch): Rewritten to use it.
+       (scm_ithrow): Handle the new lazy catch representation.
+       Use SCM_LAZY_CATCH_P, instead of assuming that any wind list entry
+       that doesn't have a jmpbuf is a lazy catch clause.
+       (tc16_lazy_catch, struct lazy_catch, mark_lazy_catch,
+       free_lazy_catch, print_lazy_catch, lazy_catch_funs,
+       make_lazy_catch, SCM_LAZY_CATCH_P): Support funs, including a new
+       smob.
+       (scm_init_throw): Register the new lazy-catch smob type.
+       * throw.h (scm_internal_lazy_catch): decl for new function.
+
+       * throw.c (scm_internal_catch): Doc fixes.
+
+       * alloca.c: New file, needed to support the AC_FUNC_ALLOCA call in
+       configure.in.  Including this might cause problems if applications
+       that link against libguile include their own copies of alloca, but
+       if they're using autoconf, they should be adding libguile to LIBS
+       before calling AC_FUNC_ALLOCA anyway, in which case they'll find
+       the copy in libguile, and things will be okay.  (I think.)
+
+Thu Feb  6 03:10:32 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * strop.c (scm_string_upcase_x, scm_string_downcase_x): moved from
+       unif.c.
+       strop.h: move prototypes too.
+
+Wed Feb  5 08:33:00 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * posix.c (scm_init_posix): don't intern EINTR since it's now done
+       elsewhere.
+
+       * ioext.c (scm_init_ioext): don't intern stat macros, S_IRUSR
+       etc.  I deleted them from filesys.c long ago, but didn't
+       notice they were here too (although ineffective since 
+       sys/stat.h wasn't included).
+
+Tue Feb  4 18:17:50 1997  Tom Tromey  <tromey@cygnus.com>
+
+       * eval.c: Don't define alloca in GCC case.  gcc will automatically
+       use __builtin_alloca if appropriate.
+
+Tue Feb  4 16:57:40 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * eval.c (safe_setjmp): New function: trivial wrapper for setjmp.
+       (SCM_CEVAL, SCM_APPLY): Call it, instead of setjmp, to make sure
+       that values of automatic variables are preserved.  See comments
+       for safe_setjmp for details.
+
+       Change from Thomas Morgan:
+        * variable.c: Include eq.h.
+        (var_equal): New function.
+       (variable_smob): Use var_equal as the discriminator for variables.
+
+       * throw.c (s_throw): Remove extraneous declaration.
+
+       * configure.in: Call AC_FUNC_ALLOCA, to see if we have alloca.
+       * eval.c: Add necessary CPP cruft to support that.
+       * configure, Makefile.in, scmconfig.h.in: regenerated.
+
+       Change from Thomas Morgan:
+       * procprop.c (scm_procedure_properties): Convert the Scheme
+       boolean returned by scm_procedure_p into a C boolean before using
+       it as a condition for SCM_ASSERT.
+       (scm_procedure_property): Likewise.
+
+       * simpos.c (SYSTNAME): Accept both 'unix' and '__unix' as
+       indications of Unixness.
+       * stime.c: Same.
+
+Tue Feb  4 05:07:35 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+*      * net_db.c (scm_lnaof): change scheme name from lnaof to inet-lnaof.
+
+Mon Feb  3 06:12:37 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * read.c (scm_lreadr): use scm_misc_error to improve one of the 
+       "unknown # object" error messages.
+
+       * strop.c (scm_i_index, scm_i_rindex): combine into one procedure
+       (scm_i_index) and declare it static.  Add a 'direction' argument
+       to indicate what way the search should go.
+       (scm_i_index): throw out-of-range error instead of wrong-type-arg
+       if indices are bad.
+       (scm_string_index, scm_string_rindex): adjust usage of scm_i_index.
+       strop.h: remove scm_i_index, scm_i_rindex prototypes.
+
+Fri Jan 31 04:33:11 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * ioext.c, ioext.h: remove obsolete _sys_ from 9 procedure names.
+       
+*      * posix.c (scm_fork): Scheme name changed from fork to primitive-fork,
+       to avoid clash with various scsh forks.
+
+Thu Jan 30 20:14:09 1997  Mikael Djurfeldt  <mdj@syk-0606.pdc.kth.se>
+
+       The following two changes (ramap.c, throw.c) are motivated by the
+       apparent unportability of forward declarations of static arrays of
+       the form `static foo bar[];'.
+       
+       * ramap.c (scm_array_fill_x): Moved above scm_array_fill_int.
+       (ra_rpsubrs, ra_asubrs): Moved to the top of array code.
+
+       * throw.c (scm_throw): Moved above scm_ithrow.
+
+       * options.h: Removed the extern declarations of scm_yes_sym and
+       scm_no_sym since these are static.
+
+Fri Jan 24 06:16:32 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * ports.c: add SCM_PROC declarations for pt-size and pt-member.
+
+       * Makefile.am: remove AWK=@AWK@.
+       Add a rule for generating errnos.list.
+       (CLEANFILES): put errnos.list here instead of in DISTCLEANFILES.
+
+       * configure.in: add AC_SUBST(AWK) and AC_SUBST(ERRNO_EXTRACT).
+       don't extract errnos, just set a variable (avoids the
+       need to recompile error.c just because configure is run.)
+       
+       * unif.h: update prototypes.
+       * unif.c (scm_uniform_array_read,write): change the offset and
+       length arguments to start and end, for consistency.
+
+       * __scm.h: uncomment SCM_ARG6 and SCM_ARG7, I needed SCM_ARG6.
+
+       * ioext.h: update prototypes.
+*      * ioext.c (scm_read_delimited_x): replaces scm_read_line and
+       scm_read_line_x, it's a more general procedure using an
+       interface from scsh.  read-line and read-line! are now defined
+       in boot-9.scm.
+*      Note that the new read-line trims the terminator
+       by default, previously it was appended to the returned string.  An
+       optional argument specifies how to process the terminator (scsh
+       compatible).  For the old behaviour: (read-line port 'concat).
+       scm_read_line, scm_read_line_x: deleted.  (read-line port 'split)
+       returns a pair, but is converted to multiple values if the scsh
+       module is loaded.
+
+       socket.h: update prototypes.
+       * socket.c (scm_recvfrom): for consistency with other procedures,
+       take start and end as separate optional arguments.
+*      (scm_recv, scm_recvfrom): don't allow the second argument
+       to be a size, only a buffer.  Change the scheme names to
+       recv! and recvfrom!.  Don't return the buffer.
+
+       * ioext.h, posix.h: move prototypes too.
+       * ioext.c, posix.c (scm_read_line, scm_read_line_x, scm_write_line:
+       moved back from posix.c to ioext.c.  Also move #includes of "genio.h"
+       "read.h" and "unif.h".
+       * ioext.c: include "chars.h"
+
+Mon Jan 20 19:54:49 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * dynl.c: The dynamic linking and module registration functions
+       are now defined even when dynamic linking is not available for the
+       host system.  Some of their functionality can be done without
+       dynamic linking; when it's really needed, they throw errors.
+
+Thu Jan 16 16:39:29 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * configure.in: Only define DYNAMIC_LINKING when one of the system
+       dependent functions is detected.
+       * dynl.c (scm_dynamic_func): New function to get the address of a
+       function in a dynamic object.
+       (scm_dynamic_call, scm_dynamic_args_call): Accept the values
+       produced by scm_dynamic_func as the thing to call.
+
+Sun Jan 12 21:09:42 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * dynl.c, dynl-dl.c, dynl-dld.c, dynl-shl.c: Restructured.
+       (scm_register_module_xxx, scm_registered_modules,
+       scm_clear_registered_modules): New functions.
+
+Sat Jan 11 21:37:15 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * symbols.c (scm_sysintern): Renamed to
+       scm_sysintern_no_module_lookup.
+       (scm_sysintern): New function to take the place of the old
+       scm_sysintern. It uses the current toplevel lookup closure to give
+       the symbol its value.  This is a temporary hack to put packages
+       like gtcltk into their own module.
+        (scm_can_use_top_level_lookup_closure_var): New variable to tell
+       us whether `scm_top_level_lookup_closure_var' has been initialized
+       and is usable.
+       * eval.c (scm_init_eval): Set it.
+
+Sat Jan 18 00:03:31 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * fports.c (scm_open_file): pass errno to scm_syserror_msg.
+       * filesys.h: update prototypes.  Remove macros: SCM_FD_P, SCM_FD_FLAGS,
+       SCM_FD.
+       * filesys.c (scm_sys_stat, scm_sys_lstat): pass errno to
+       scm_syserror_msg.
+*      (scm_sys_read_fd, scm_sys_write_fd, scm_sys_close, scm_sys_lseek,
+       scm_sys_dup): deleted: FD capability will be added to other
+       procedures.
+*      Remove support for the FD object type: scm_tc16_fd, scm_fd_print,
+       scm_fd_free, fd_smob, scm_intern_fd.
+*      (scm_open): renamed from scm_sys_open.  Return a port instead of
+       an FD object.  Make the mode argument optional.
+*      (scm_sys_create): deleted, it's just a special case of open.
+       (scm_init_filesys): move interning of constants O_CREAT etc.,
+       here (were previously using SCM_CONST_LONG macro).
+       Add missing constants: O_RDONLY, O_WRONLY, O_RDWR, O_CREAT.
+       don't newsmob fd.
+       (numerous _sys_ procedures): remove gratuitous _sys_ from names.
+       include "fports.h" and <stdio.h>
+       (scm_stat, scm_select): don't support FD objects.
+
+       * error.h: adjust scm_syserror_msg prototype.
+       * error.c (scm_syserror_msg): take an extra argument for errno.
+       Using the global value didn't always work, since it could be
+       reset by procedure calls in the message or args arguments.
+
+       * fports.c (scm_setbuf0): call setbuf even if FIONREAD is not defined.
+       I don't understand why the check was there (and what about the
+       ultrix check?)
+       
+       * strop.c (scm_string_copy): allow shared substrings to be copied.
+
+       * unif.h: corresponding change to prototypes.
+       * unif.c (scm_uniform_array_read_x, scm_uniform_array_write_x):
+       recognize two new optional arguments: offset and length.  Allow
+       the port argument to be an integer (file descriptor, for scsh).
+       Include <unistd.h> for "read" prototype.
+
+Tue Jan 14 02:42:02 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * socket.c: don't include filesys.h.
+
+Mon Jan 13 03:47:04 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * Makefile.am: add AWK=@AWK@ (?)
+
+       * Makefile.am (EXTRA_DIST): add errnos_cnvt.awk, errnos.default,
+       errnos_get.c.
+       Add a rule to generate errnos.c from errnos.
+       * error.c (scm_init_error): include errnos.c.
+       * errnos_cnvt.awk: new file, converts the list of errno codes to
+       C expressions.
+       * errnos_get.c: new file.
+       * errnos.default: new file, contains errnos to try if they can't
+       be extracted from errno.h.
+       * configure.in: if using GCC, try and extract errno codes from
+       errno.h.
+       Added AC_PROG_AWK.
+
+Sat Jan 11 14:47:00 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * configure.in: Replaced AC_PROG_RANLIB with AM_PROG_LIBTOOL.
+       * Makefile.am: Made libguile into a libtool library.
+       * PLUGIN/guile.config: Removed "-L ../libguile" from xtra_cflags.
+       Set libtool_libs to indicate that libguile is a libtool library.
+       See guile/ChangeLog for details.
+       * .cvsignore: ignore "*.lo", the libtool library objects.
+
+Wed Jan  8 06:54:54 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * net_db.c (scm_getserv): add missing SCM_ALLOW_INTS.
+       use htons in getservbyport argument.
+
+Tue Jan  7 18:11:24 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * ports.h (SCM_PTOBNUM): Removed extraneous semicolon.
+       * smob.h: (SCM_PTOBNUM): Removed entirely; this definition is a
+       duplicate.
+
+       * objprop.c (scm_object_property): No need to take the CDR of the
+       value returned by scm_object_properties, since Aug 20 change.
+
+       * configure.in: When checking for struct linger, #include
+       <sys/types.h> as well as <sys/socket.h>.  I've never known
+       <sys/types.h> to cause any portability problems, and Solaris's
+       <sys/socket.h> needs it.
+       * configure: Rebuilt.
+
+       I think the Sun compiler has chosen a perverse way to interpret
+       ANSI declarations combined with K&R definitions.  We'll
+       appease it a little bit.  But when it invades France, we fight.
+       * print.c (scm_iprlist): Change 'tlr' argument to an int.
+       * print.h (scm_iprlist): Here too.
+       * numbers.c (scm_divbigdig): Change definition to match
+       declaration in numbers.h.
+       * unif.c (scm_makflo): Change definition to match declaration in
+       unif.h.
+
+       * init.c (scm_boot_guile): Don't return the value of
+       scm_boot_guile_1.  This function doesn't return a value;
+       scm_boot_guile_1 doesn't return a value (or return at all).
+
+       * eval.c (unmemocopy): Add a semicolon to appease the Sun
+       compiler.
+
+       * simpos.c (SYSTNAME): Add case for AIX; otherwise it won't
+       compile.  I have a feeling this function is a bad idea anyway ---
+       one should always test for features, not systems.
+
+       * smob.h (SCM_SMOBNUM, SCM_PTOBNUM): Remove extraneous
+       semicolons.  Only pure luck kept this from being noticed earlier.
+
+Tue Jan  7 15:04:06 1997  Mikael Djurfeldt  <mdj@kenneth>
+
+       * socket.c (scm_recvfrom): Added missing semicolon.
+
+Mon Jan  6 20:39:08 1997  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * socket.c (scm_recvfrom): allow buff_or_size to be a list containing
+       the buffer and start and end positions for scsh networking
+       implementation.
+
+Sun Jan  5 13:53:53 1997  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * configure.in: Revert previous change to this file; the problem
+       is due to transient automake weirdness.
+       * configure: Rebuilt.
+
+       * Makefile.am (EXTRA_DIST): Distribute PLUGIN/guile.libs.in, not
+       PLUGIN/guile.libs.  configure generates the latter from the former.
+       * Makefile.in: Rebuilt.
+       
+       * configure.in: Call AM_PROG_INSTALL; the automake manual says we
+       need this if we install scripts, like guile-snarf.
+       * configure: Rebuilt.
+
+Thu Jan  2 01:56:38 1997  Marius Vollmer  <mvo@zagadka.ping.de>
+
+       * Makefile.am (EXTRA_DIST): Added DYNAMIC-LINKING
+
 Sat Dec 28 19:14:01 1996  Gary Houston  <ghouston@actrix.gen.nz>
 
        * socket.c (scm_addr_vector): fix faulty scm_listify.
@@ -6,7 +1161,7 @@ Sat Dec 28 13:55:58 1996  Marius Vollmer  <mvo@zagadka.ping.de>
 
        * read.c (scm_lreadr): Encountering EOF after skipping a SCSH
        style block comment is no longer considered an error.
-
+       
 Fri Dec 27 13:44:23 1996  Marius Vollmer  <mvo@zagadka.ping.de>
 
        * PLUGIN/guile.libs.in: New file.
@@ -21,7 +1176,7 @@ Fri Dec 27 13:44:23 1996  Marius Vollmer  <mvo@zagadka.ping.de>
        
 Sun Dec 22 23:06:14 1996  Jim Blandy  <jimb@floss.cyclic.com>
 
-*      * list.c (scm_delq_x, scm_delv_x, scm_delete_x): Delete all
+       * list.c (scm_delq_x, scm_delv_x, scm_delete_x): Delete all
        occurrences of the given element from the list, not just the
        first.  This is how the Emacs Lisp functions behave, how the
        analogous Common Lisp functions behave, and (I believe) how the
@@ -29,7 +1184,7 @@ Sun Dec 22 23:06:14 1996  Jim Blandy  <jimb@floss.cyclic.com>
        break code, but it seemed better to break it before the Guile
        release than after.
 
-*      * gc.c (scm_protect_object, scm_unprotect_object): New functions.
+       * gc.c (scm_protect_object, scm_unprotect_object): New functions.
        Their prototypes were already present in gc.h, but they weren't
        implemented.
        (scm_init_storage): Initialize scm_protects.
@@ -246,10 +1401,10 @@ Fri Dec 13 16:12:14 1996  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
                   (string-ref (make-string 1 (integer->char 128)) 0)))
        bug found by John Kozak <jk@noontide.demon.co.uk>.
 
-*      * strports.c, strports.h: Make scm_eval_0str return the value of
+       * strports.c, strports.h: Make scm_eval_0str return the value of
        the last expression evaluated (previously, it returned void).
 
-*      * strports.c, strports.h: New function: scm_read_0str.  Does what
+       * strports.c, strports.h: New function: scm_read_0str.  Does what
        it sounds like.
 
 Tue Dec 10 23:38:43 1996  Gary Houston  <ghouston@actrix.gen.nz>
@@ -421,7 +1576,7 @@ Wed Nov  6 16:01:20 1996  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
 
 Sat Nov  2 21:01:48 1996  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
 
-*      * stacks.c, stacks.h (scm_make_stack): Now takes arbitrary
+       * stacks.c, stacks.h (scm_make_stack): Now takes arbitrary
        number of stack narrowing specifier pairs.  The first specifier in
        a pair controls inner border, the second the outer border.  A
        number means cut that number of frames, a procedure object means
@@ -429,21 +1584,21 @@ Sat Nov  2 21:01:48 1996  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
 
        * root.c (cwdr): Bugfix.
 
-*      * read.c: Recording of positions disabled by default.
+       * read.c: Recording of positions disabled by default.
 
-*      * procs.c (scm_closure_p): New function.
+       * procs.c (scm_closure_p): New function.
 
-*      * posix.c (scm_tmpnam): New function.
+       * posix.c (scm_tmpnam): New function.
 
        * load.c: Added #include "throw.h".
-*      (scm_sys_search_load_path): Bugfix: Don't add an extra '/' if path
+       (scm_sys_search_load_path): Bugfix: Don't add an extra '/' if path
        ends with '/'.
        
-*      * load.c, load.h (scm_read_and_eval_x): New function.
+       * load.c, load.h (scm_read_and_eval_x): New function.
 
-*      * eval.c: Renamed debug option "deval" to "debug".
+       * eval.c: Renamed debug option "deval" to "debug".
        
-*      (scm_eval_x): `eval!' is no longer accessible from the scheme
+       (scm_eval_x): `eval!' is no longer accessible from the scheme
        level.  Motivation: We can't allow operations which introduce
        glocs into the scheme level.  Guile's type system can't handle
        these as data.  Use `eval' or `read-and-eval!' as replacement.
@@ -455,7 +1610,7 @@ Sat Nov  2 21:01:48 1996  Mikael Djurfeldt  <mdj@mdj.nada.kth.se>
        (scm_debug_hang): New function: Useful for debugging Guile in
        certain tricky situations.  Will probably be removed later...
 
-*      * debug.h: Changed semantics of debug option "backtrace".  This
+       * debug.h: Changed semantics of debug option "backtrace".  This
        option now only indicates whether we want automatic backtrace at
        an error.
        
@@ -521,26 +1676,26 @@ Mon Oct 28 16:48:32 1996  Jim Blandy  <jimb@floss.cyclic.com>
        * Makefile.in (strports.o): Update dependencies.
        * strports.h: New prototype.
 
-*      * numbers.c (scm_integer_p): Renamed from scm_int_p; change its
+       * numbers.c (scm_integer_p): Renamed from scm_int_p; change its
        scheme name from "int?" to "integer?".  It seems to do the job.
        * numbers.h: Rename prototype too.
        * scmhob.h (intp): Change definition to refer to scm_integer_p.  I
        hope this is right.
 
-*      * numbers.c (scm_less_p, scm_gr_p, scm_leq_p, scm_geq_p,
+       * numbers.c (scm_less_p, scm_gr_p, scm_leq_p, scm_geq_p,
        scm_num_eq_p): Rename these according to R4RS conventions: call
        them <, <=, =, >, and >=, not <?, <=?, =?, >?, and >=?.  En route
        to making libguile R4RS compliant without ice-9...
 
-*      * load.c (scm_sys_search_load_path): Search for files under all
+       * load.c (scm_sys_search_load_path): Search for files under all
        extensions listed in the %load-extensions variable.  If FILENAME
        is absolute, return it unchanged, without searching the load path.
-*      (scm_loc_load_extensions): New variable, pointing to
+       (scm_loc_load_extensions): New variable, pointing to
        %load-extensions' value cell.
        (scm_init_load): Initialize it, and the value it points to.
        (scm_primitive_load_path): Improve error reporting.
 
-*      * load.c (scm_loc_load_hook): New variable, pointing to value cell
+       * load.c (scm_loc_load_hook): New variable, pointing to value cell
        of new Scheme variable %load-hook.
        (scm_primitive_load): Apply %load-hook to filename.
 
@@ -602,7 +1757,7 @@ Tue Oct 22 20:54:42 1996  Jim Blandy  <jimb@floss.cyclic.com>
        (scm_boot_guile): Call scm_set_program_arguments here, later than
        the old initialization.
 
-*      * init.c: (scm_boot_guile, scm_boot_guile_1):  New, simplified
+       * init.c: (scm_boot_guile, scm_boot_guile_1):  New, simplified
        initialization procedure.
        - Delete in, out, err arguments; there are other perfectly good
        ways to override these when desired.
@@ -630,11 +1785,11 @@ Tue Oct 22 20:54:42 1996  Jim Blandy  <jimb@floss.cyclic.com>
        visible declarations for these.
        (enum scm_boot_status): Removed; now scm_boot_guile never returns.
        
-*      * fports.c (scm_stdio_to_port): New function.  Its guts used to be
+       * fports.c (scm_stdio_to_port): New function.  Its guts used to be
        written out several times in scm_start_stack.
        * fports.h: New declaration for the above.
        
-*      * feature.c (scm_set_program_arguments): New function.
+       * feature.c (scm_set_program_arguments): New function.
        * feature.h: New declaration for the above.
 
        * ports.c: Formatting tweak.
@@ -831,7 +1986,7 @@ Mon Oct 14 04:21:51 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
        * print.h: Added declarations for scm_make_print_state,
        scm_free_print_state.
        
-*      * debug.c (scm_m_start_stack): New acro.
+       * debug.c (scm_m_start_stack): New acro.
 
        * debug.h: Small cleanup.
 
@@ -1041,7 +2196,7 @@ Tue Oct  1 00:00:10 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
        allocate the basic dynamic root object.
        (scm_boot_guile): Added call to scm_init_root.
 
-*      * root.c, root.h: Added root smob.
+       * root.c, root.h: Added root smob.
        (cwdr, scm_call_with_new_root, scm_dynamic_root, scm_app_wdr): New
        functions: Implements dynamic roots mostly according to spec in
        SCM manual.  Main difference is that the second argument is a
@@ -1122,7 +2277,7 @@ Tue Sep 24 06:48:38 1996  Gary Houston  <ghouston@actrix.gen.nz>
 
 Mon Sep 23 00:42:15 1996  Mikael Djurfeldt  <mdj@kenneth>
 
-*      * print.c (scm_iprin1, scm_prin1, scm_iprlist): Circular
+       * print.c (scm_iprin1, scm_prin1, scm_iprlist): Circular
        references now have a new appearance which is more compact and
        also gives a clue about what the target of the reference is.
        By setting parameters in the print state, more fancy printing can
@@ -1221,7 +2376,7 @@ Thu Sep 19 00:00:29 1996  Gary Houston  <ghouston@actrix.gen.nz>
 
        * error.c, error.h (scm_wrong_num_args, scm_wrong_type_arg,
        scm_memory_error): new procedures.
-*      scm_everr: deleted.  can use scm_wta, dropping first two args.
+       scm_everr: deleted.  can use scm_wta, dropping first two args.
        scm_error: convert NULL subr to SCM_BOOL_F.
 
        * __scm.h: don't define SCM_STACK_OVFLOW, SCM_EXIT, SCM_ARG6, SCM_ARG7,
@@ -1354,7 +2509,7 @@ Fri Sep 13 12:58:08 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
 
 Fri Sep 13 01:19:08 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
 
-*      * print.c: Added code for detection of circular references during
+       * print.c: Added code for detection of circular references during
        printing.  (init_ref_stack, grow_ref_stack): New functions.  Added
        a hook for printing of closures (accessible via print options).
        This leads to a split of calls to scm_iprin1 into two classes:
@@ -1807,7 +2962,7 @@ Wed Sep  4 00:55:49 1996  Jim Blandy  <jimb@floss.cyclic.com>
        * feature.c: ... #include "libpath.h" here.
        * .cvsignore: Ignore libpath.h.
 
-*      Don't install the unwashed masses of Guile header files in the
+       Don't install the unwashed masses of Guile header files in the
        main #include path; put most of them in a subdirectory called
        'libguile'.  This avoids naming conflicts between Guile header
        files and system header files (of which there were a few).
@@ -1997,19 +3152,19 @@ Tue Aug 20 18:48:40 1996  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
 
        * acconfig.h: Added symbols for debugging support.
 
-*      * configure.in: Added user option for debugging support.
+       * configure.in: Added user option for debugging support.
        --enable-debug will include the debugging code into libguile.a.
 
        * continuations.c (scm_make_cont): Enlarged the #if 0 around
        scm_relocate_chunk_to_heap.
        
-*      * debug.c: New file: low-level debugging support.  It also
+       * debug.c: New file: low-level debugging support.  It also
        includes support for debugging with gdb.  (The extensions to gdb
        are written by Per Bothner at Cygnus.)
 
        * debug.h: New file: low-level debugging support.
 
-*      * eval.c: scm_m_set and SCM_IM_SET no longer supports multiple
+       * eval.c: scm_m_set and SCM_IM_SET no longer supports multiple
        argument pairs.  Extensive modifications to the debugging
        evaluator.  Added "SECTION:" commentaries to clarify what happens
        when, during double compilation.  Renamed EVALIMP --> EVALIM.
@@ -2031,35 +3186,35 @@ Tue Aug 20 18:48:40 1996  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
        
        * libguile.h: Conditionally include debug.h
 
-*      * objprop.c (scm_object_properties, scm_set_object_properties_x):
+       * objprop.c (scm_object_properties, scm_set_object_properties_x):
        scm_object_properties shouldn't return handle.  `handle' now gets
        initialized in scm_set_object_properties_x.  scm_object_properties
        doesn't any longer create an entry in scm_object_whash.
        
-*      * options.c: New file: handling of run time options.
+       * options.c: New file: handling of run time options.
        
        * options.h: New file: handling of run time options.
 
        * posix.c (scm_getpgrp): Cast pointer to getpgrp.
        
-*      * print.c: New procedure: scm_print_options
+       * print.c: New procedure: scm_print_options
 
        * print.h: Defines for print options.
        
-*      * read.c: New procedure: scm_read_options
+       * read.c: New procedure: scm_read_options
 
        * read.h: Defines for reader options.
        
        * root.h: Added scm_source_whash among scm_sys_protects.
 
-*      * srcprop.c: New file: source properties.
+       * srcprop.c: New file: source properties.
        
        * srcprop.h: New file: source properties.
        
        * throw.c (jbsmob): Jump buffers are now correctly allocated.
        (Bug found by A. Green.)
 
-*      * weak.c: Renamed scm_weak_hash_table --> scm_weak_key_hash_table.
+       * weak.c: Renamed scm_weak_hash_table --> scm_weak_key_hash_table.
        
        * weak.h: Renamed scm_weak_hash_table --> scm_weak_key_hash_table.
 
@@ -2087,7 +3242,7 @@ Wed Aug 14 21:41:37 1996  Jim Blandy  <jimb@totoro.cyclic.com>
        
 Fri Aug  9 11:09:28 1996  Jim Blandy  <jimb@totoro.cyclic.com>
 
-*      * init.c (scm_boot_guile): Add init_func argument; call
+       * init.c (scm_boot_guile): Add init_func argument; call
        (*init_func) instead of calling scm_appinit; it's ucky to
        hard-code names for the user's procedures.
        * init.h (scm_boot_guile): Adjust declaration.
@@ -2200,16 +3355,16 @@ Sat Aug  3 01:27:14 1996  Gary Houston  <ghouston@actrix.gen.nz>
 
        * ioext.c (scm_sys_fdopen): fix the port-table assignment.
 
-*      * fports.c (scm_open_file): don't return #f, throw error.
+       * fports.c (scm_open_file): don't return #f, throw error.
 
-*      * ioext.c (fileno): renamed from %fileno.
+       * ioext.c (fileno): renamed from %fileno.
        (soft-fileno): deleted.
 
        * ports.c (scm_port_revealed): don't need to check for -1 from
        scm_revealed_count.
        (scm_set_port_revealed_x): return unspecified, not #f.
 
-*      * ioext.c (primitive-move->fdes): return #t or #f, not 1 or 0.
+       * ioext.c (primitive-move->fdes): return #t or #f, not 1 or 0.
 
        * fdsocket.c: getsockopt, setsockopt: use HAVE_STRUCT_LINGER.
 
@@ -2242,10 +3397,10 @@ Thu Aug  1 08:22:24 1996  Gary Houston  <ghouston@actrix.gen.nz>
 
 Wed Jul 31 23:43:05 1996  Gary Houston  <ghouston@actrix.gen.nz>
 
-*      * numbers.c: rename %expt -> $expt, %atan2 -> $atan2, as it must
+       * numbers.c: rename %expt -> $expt, %atan2 -> $atan2, as it must
        have been once.
 
-*      * posix.c, ioext.c, socket.c, fdsocket.c, files.c, filesys.c, simpos.c:
+       * posix.c, ioext.c, socket.c, fdsocket.c, files.c, filesys.c, simpos.c:
        Remove leading % from scheme names.
        Do not return error values, call SCM_SYSERROR or similar.