* numbers.c: use SCM_NUM_OVERFLOW instead of scm_wta or ASSERT.
[bpt/guile.git] / libguile / ChangeLog
index 5776033..91da62b 100644 (file)
+Sat Sep 14 03:35:41 1996  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * numbers.c: use SCM_NUM_OVERFLOW instead of scm_wta or ASSERT.
+
+       * error.c, error.h: setup scm_num_overflow key.
+
+       * __scm.h: SCM_NUM_OVERFLOW: macro for reporting numerical overflow.
+       Remove definition of SCM_OVSCM_FLOW.
+
+       * fports.c (scm_open_file): use SCM_SYSERROR_M.
+
+       * __scm.h: SCM_SYSERROR_M: new macro for system errors with an
+       explicit message and args.
+
+       * error.c, error.h, __scm.h: change system_error_sym to
+       scm_system_error.
+
+       * error.c (system_error_sym): remove leading %% from the Scheme name
+       "%%system-error". 
+
+       * __scm.h (SCM_SYSMISSING): Redefine using lgh_error.
+
+Fri Sep 13 12:58:08 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * __scm.h, chars.c, debug.c, eval.c, eval.h, extchrs.c, extchrs.h,
+       fdsocket.c, feature.c, mbstrings.c, mbstrings.h, numbers.c,
+       numbers.h, print.c, scmhob.h, simpos.h, symbols.c, symbols.h,
+       tags.h, throw.c, variable.h: Name cleanup.  Lots of xxxSCM_yyy
+       renamed.  (These were introduced by unsupervised name
+       substitution.)
+
+Fri Sep 13 01:19:08 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+*      * 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:
+       elementary print operations (e. g. the code which prints a smob)
+       still use scm_iprin1 while top level calls (like scm_display) use
+       scm_prin1.  scm_prin1 begins by clearing the data structure used
+       to record reference information.
+
+       * print.h: Added declarations of scm_prin1 and scm_prlist.
+
+       * strports.c (scm_strprint_obj): scm_iprin1 --> scm_prin1
+
+       * gscm.c (gscm_portprint_obj): scm_iprin1 --> scm_prin1
+
+       * gscm.h (gscm_print_obj): scm_iprin1 --> scm_prin1
+
+       * error.c (err_head): scm_iprin1 --> scm_prin1
+
+       * debug.c: Adjusted header comment.
+
+       * tags.h: Typo.
+
+Wed Sep 11 17:55:59 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * strerror.c: Doc fix.
+
+Thu Sep 12 00:00:32 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * gdbint.c (gdb_read): Now possible to run during GC.
+       (unmark_port, remark_port): New functions.
+
+       * symbols.h (SCM_SETLENGTH): Use SCM_SETCAR.
+
+       * read.c (scm_grow_tok_buf): Use scm_vector_set_length_x instead
+       of allocating a new string object.  Also, increase size by
+       the factor 2 instead of 1.5.
+
+Wed Sep 11 15:10:38 1996  Petr Adamek  <jimb@floss.cyclic.com>
+
+       * __scm.h (SCM_P): Corrected to run under traditional C.
+
+       * _scm.h (SCM_PROC): Extraneous semicolon (outside functions)
+       removed.
+
+       * async.c: Calls to scm_sysintern corrected.
+
+       * async.h (scm_async_clock): Redundant declaration removed.
+
+       * continuations.c (scm_dynthrow): Redundant declaration removed.
+
+       * debug.c (scm_single_step, scm_memoized, scm_lookup_soft):
+       Definition typos corrected.
+
+       * debug.h: Missing declarations of functions in debug.c added
+       (lots).
+
+       * eval.h (scm_eval_args, scm_deval_args, scm_m_undefine):
+       Missing declarations to functions in eval.c added.
+
+       * filesys.c: Possibly uninitialized variable rv.
+
+       * gc.h (scm_object_addr, scm_unhash_name): Missing
+       declarations of functions defined in gc.c added.
+
+       * genio.c: Possible typos str_data -> wstr_data. ???
+
+       * genio.c: Possibly unintended shadowing of local variable
+       `int c' (gotos out of scope of inner `c'). ???
+
+       * init.c: Uninitialized `SCM last' may be used.
+
+       * ioext.h: (scm_sys_isatty_p): Typo.
+
+       * list.h (scm_list_head): Missing prototype for function in
+       list.c added.
+
+       * numbers.c (scm_two_doubles): Changed from extern to static
+       (is used only within numbers.c).
+
+       * numbers.h: Repeated declarations removed.
+
+       * ports.h (scm_close_all_ports_except): Declaration for the
+       function defined in ports.c added.
+
+       * posix.h: Missing declarations added.
+
+       * procs.h (scm_make_subr_opt): Missing declaration added.
+
+       * socket.h (scm_sys_gethost): Missing declaration added.
+
+       * socket.h: Redundant declarations removed (they are in fdsocket.h).
+
+       * srcprop.h (scm_set_source_property_x, scm_finish_srcprop):
+       Missing declarations added.
+
+       * stime.h (scm_get_internal_real_time): Repeated declarations removed.
+
+       * struct.c: Uninitialized variable `SCM answer' may be used.
+
+       * unif.c (l2ra): Declaration prototype.
+
+       * unif.c (scm_array_equal_p): Dummy definition removed (it is
+       defined in ramap.c).
+
+       * unif.h (scm_raprin1, scm_istr2bve, scm_array_equal_p):
+       Redundant declarations removed (they are in ramap.h).
+
+       * variable.h (scm_make_udvariable,
+       scm_make_undefined_variable): Declaration corrected to
+       correspond variable.c.
+
+       * vectors.h (scm_vector_move_left_x, scm_vector_move_right_x):
+       Missing declarations added.
+
+Wed Sep 11 14:38:50 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.in (distclean): Don't forget to delete fd.h.
+
+Tue Sep 10 14:01:46 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * fd.h.in, tags.h: Trivial cleanups. 
+
+       * marksweep.c, marksweep.h: Deleted; marksweep.c was empty, and
+       marksweep.h just declared functions from gc.c.
+       * gc.h, libguile.h: Don't #include "marksweep.h".
+       * Makefile.in (libobjs, inner_h_files, c_files, gen_c_files): Omit
+       marksweep.o, marksweep.h, marksweep.c, and marksweep.x.  Other
+       dependencies updated.
+
+       * libguile.h: Don't #include "files.h"; it's been deleted.
+
+       * files.c (scm_sys_delete_file): Moved to filesys.c.
+       File is now empty; deleted.
+       * files.h: Deleted.
+       * filesys.c: scm_sys_delete_file is now here.  Remove
+       #if's; they seem to rely on remnants of an old portability
+       regimen.  If the problems come up again, solve them properly,
+       using autoconf.  Specifically: Don't test M_SYSV, and #define
+       remove to be unlink if it's #defined; don't use remove just
+       because HAVE_STDC_HEADERS is #defined.
+       * filesys.h: Add declarations for scm_sys_delete_file.
+       * Makefile.in (libobjs, inner_h_files, c_files, gen_c_files): Omit
+       files.o, files.h, files.c, and files.x.
+       * init.c: Don't #include "files.h", and don't call scm_init_files.
+
+       Use SCM_P instead of PROTO; the latter intrudes on the user's
+       namespace.
+       * params.h: Deleted; definition of SCM_P moved to...
+       * __scm.h: ... here, where it replaces PROTO macro.
+       * libguile.h, smob.h: Don't #include "params.h".
+       * continuations.c, error.h, feature.h, gc.c, gc.h, init.h, load.h,
+       smob.h: Fix prototypes accordingly.
+       * Makefile.in: Update dependencies.
+       (inner_h_files): Remove params.h.
+
+       * gc.c: #include "gc.h"; every module should include its header,
+       to let the compiler cross-check the declarations against the
+       definitions.
+
+       * eq.h, files.h, hashtab.h, load.h, mallocs.h, scmsigs.h,
+       simpos.h: #include "libguile/__scm.h".
+
+Mon Sep  9 20:00:15 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * init.c: Don't forget to #include smob.h and init.h.
+       * Makefile.in: Dependencies updated.
+
+       * smob.h: Use PROTO instead of #if __STDC__.
+
+       * continuations.c (scm_dynthrow): Use PROTO, not SCM_P. 
+
+       * __scm.h: Doc fixes.
+
+       * __scm.h, libguile.h: Use "quotes" in the #includes, not
+       <angles>; this allows `make depends' to work properly.
+
+       * libguile.h: #include smob.h and pairs.h before the others; they
+       define typedefs used by other headers.
+       
+       C files should #include only the header files they need, not
+       libguile.h (which #includes all the header files); the pointless
+       recompilation was wasting my time.
+       * Makefile.in (all .o dependency lists): Regenerated.
+       * libguile.h: Don't try to get a definition for size_t here...
+       * __scm.h: Do it here.
+       * _scm.h: Since this is the internal libguile header, put things
+       here that all (or a majority) of the libguile files will want.
+       Don't #include <libguile.h> here; that generates dependencies on
+       way too much.  Instead, get "__scm.h", "error.h", "pairs.h",
+       "list.h", "gc.h", "gsubr.h", "procs.h", "numbers.h", "symbols.h",
+       "boolean.h", "strings.h", "vectors.h", "root.h", "ports.h", and
+       "async.h".
+       * alist.c: Get "eq.h", "list.h", "alist.h".
+       * append.c: Get "append.h", "list.h".
+       * arbiters.c: Get "arbiters.h", "smob.h".
+       * async.c: Get "async.h", "smob.h", "throw.h", "eval.h".
+       * boolean.c: Get "boolean.h".
+       * chars.c: Get "chars.h".
+       * continuations.c: Get "continuations.h", "dynwind.h", "debug.h",
+       "stackchk.h".
+       * debug.c: Get "debug.h", "feature.h", "read.h", "strports.h",
+       "continuations.h", "alist.h", "srcprop.h", "procprop.h", "smob.h",
+       "genio.h", "throw.h", "eval.h".
+       * dynwind.c: Get "dynwind.h", "alist.h", "eval.h".
+       * eq.c: Get "eq.h", "unif.h", "smob.h", "strorder.h",
+       "stackchk.h".
+       * error.c: Get "error.h", "throw.h", "genio.h", "pairs.h".
+       * eval.c: Get "eval.h", "stackchk.h", "srcprop.h", "debug.h",
+       "hashtab.h", "procprop.h", "markers.h", "smob.h", "throw.h",
+       "continuations.h", "eq.h", "sequences.h", "alist.h", "append.h",
+       "debug.h".
+       * fdsocket.c: Get "fdsocket.h", "unif.h", "filesys.h".
+       * feature.c: Get "feature.h".
+       * files.c: Get "files.h".
+       * filesys.c: Get "filesys.h", "smob.h", "genio.h".
+       * fports.c: Get "fports.h", "markers.h".
+       * gc.c: Get "async.h", "unif.h", "smob.h", "weaks.h",
+       "genio.h", "struct.h", "stackchk.h", "stime.h".
+       * gdbint.c: Get "gdbint.h", "chars.h", "eval.h", "print.h",
+       "read.h", "strports.h", "tag.h".
+       * genio.c: Get "genio.h", "chars.h".
+       * gsubr.c: Get "gsubr.h", "genio.h".
+       * hash.c: Get "hash.h", "chars.h".
+       * hashtab.c: Get "hashtab.h", "eval.h", "hash.h", "alist.h".
+       * init.c: Get everyone who has an scm_init_mumble function:
+       "weaks.h", "vports.h", "version.h", "vectors.h", "variable.h",
+       "unif.h", "throw.h", "tag.h", "symbols.h", "struct.h",
+       "strports.h", "strorder.h", "strop.h", "strings.h", "stime.h",
+       "stackchk.h", "srcprop.h", "socket.h", "simpos.h", "sequences.h",
+       "scmsigs.h", "read.h", "ramap.h", "procs.h", "procprop.h",
+       "print.h", "posix.h", "ports.h", "pairs.h", "options.h",
+       "objprop.h", "numbers.h", "mbstrings.h", "mallocs.h", "load.h",
+       "list.h", "kw.h", "ioext.h", "hashtab.h", "hash.h", "gsubr.h",
+       "gdbint.h", "gc.h", "fports.h", "filesys.h", "files.h",
+       "feature.h", "fdsocket.h", "eval.h", "error.h", "eq.h",
+       "dynwind.h", "debug.h", "continuations.h", "chars.h", "boolean.h",
+       "async.h", "arbiters.h", "append.h", "alist.h".
+       * ioext.c: Get "ioext.h", "fports.h".
+       * kw.c: Get "kw.h", "smob.h", "mbstrings.h", "genio.h".
+       * list.c: Get "list.h", "eq.h".
+       * load.c: Get "load.h", "eval.h", "read.h", "fports.h".
+       * mallocs.c: Get "smob.h", "genio.h".
+       * markers.c: Get "markers.h".
+       * mbstrings.c: Get "mbstrings.h", "read.h", "genio.h", "unif.h",
+       "chars.h".
+       * numbers.c: Get "unif.h", "genio.h".
+       * objprop.c: Get "objprop.h", "weaks.h", "alist.h", "hashtab.h".
+       * options.c: Get "options.h".
+       * ports.c: Get "ports.h", "vports.h", "strports.h", "fports.h",
+       "markers.h", "chars.h", "genio.h".
+       * posix.c: Get "posix.h", "sequences.h", "feature.h", "unif.h",
+       "read.h", "scmsigs.h", "genio.h", "fports.h". 
+       * print.c: Get "print.h",  "unif.h", "weaks.h", "read.h",
+       "procprop.h", "eval.h", "smob.h", "mbstrings.h", "genio.h",
+       "chars.h".
+       * procprop.c: Get "procprop.h", "eval.h", "alist.h".
+       * procs.c: Get "procs.h".
+       * ramap.c: Get "ramap.h", "feature.h", "eval.h", "eq.h",
+       "chars.h", "smob.h", "unif.h".
+       * read.c: Get "alist.h", "kw.h", "mbstrings.h", "unif.h",
+       "eval.h", "genio.h", "chars.h".
+       * root.c: Get "root.h", "stackchk.h".
+       * scmsigs.c: Get "scmsigs.h".
+       * sequences.c: Get "sequences.h".
+       * simpos.c: Get "simpos.h", "scmsigs.h".
+       * smob.c: Get "smob.h".
+       * socket.c: Get "socket.h", "feature.h".
+       * srcprop.c: Get "srcprop.h", "weaks.h", "hashtab.h", "debug.h",
+       "alist.h", "smob.h". 
+       * stackchk.c: Get "stackchk.h", "genio.h".
+       * stime.c: Get "stime.h"."libguile/continuations.h".
+       * strings.c: Get "strings.h", "chars.h".
+       * strop.c: Get "strop.h", "chars.h".
+       * strorder.c: Get "strorder.h", "chars.h".
+       * strports.c: Get "strports.h", "print.h", "eval.h", "unif.h".
+       * struct.c: Get "struct.h", "chars.h".
+       * symbols.c: Get "symbols.h", "mbstrings.h", "alist.h",
+       "variable.h", "eval.h", "chars.h". 
+       * tag.c: Get "tag.h", "struct.h", "chars.h".
+       * throw.c: Get "throw.h", "continuations.h", "debug.h",
+       "dynwind.h", "eval.h", "alist.h", "smob.h", "genio.h".
+       * unif.c: Get "unif.h", "feature.h", "strop.h", "sequences.h",
+       "smob.h", "genio.h", "eval.h", "chars.h".
+       * variable.c: Get "variable.h", "smob.h", "genio.h".
+       * vectors.c: Get "vectors.h", "eq.h".
+       * version.c: Get "version.h".
+       * vports.c: Get "vports.h", "fports.h", "chars.h", "eval.h".
+       * weaks.c: Get "weaks.h".
+
+       * stackchk.h: #include "libguile/debug.h",
+
+       * print.h, read.h: #include "options.h", since everyone who uses
+       either of these files will need that.
+
+       * smob.h: #include "ports.h", "genio.h", and "print.h", since
+       anyone who uses this file will need them to define the smob
+       printing functions.  Also, get markers.h, since people will need
+       to #define the mark functions.
+       
+       * smob.h (scm_ptobfuns, SCM_PTOBNUM): Definitions moved...
+       * ports.h: ... to here.
+
+       * ports.h (scm_port_table_size): Explicitly give type as 'int';
+       don't rely on archaic C default type rules.
+
+       * fports.h: #include "libguile/ports.h", since you need that in
+       order to parse this.
+
+       * genio.h: #include "libguile/print.h", because you need that to
+       parse this; don't bother #including "ports.h", since print.h gets
+       that.
+       
+       * error.h: Don't #include "pairs.h"; _scm.h will do that now.
+       
+       * eval.h (scm_top_level_lookup_thunk_var): Remove declaration for
+       this; it's now a reference to an element of *scm_root.
+
+       * debug.h: Don't #include "options.h"; the compiler won't be able
+       to find that once the headers are installed; instead, #include
+       "libguile/options.h".
+       * gc.h: Same, with marksweep.h.
+       * mbstrings.h: Same, with symbols.h.
+       * scmhob.h: Same, with _scm.h.
+       * smob.h: Same, with params.h.
+       
+       * Makefile.in (depends): Don't nuke scmconfig.h and the generated
+       C files; there's no need for this, and it forces recompilations
+       unnecessarily.
+
+Sat Sep  7 06:57:23 1996  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * error.c (scm_error): declare scm_error_callback.
+
+       * error.h: prototype for scm_error_callback.
+
+       * __scm.h: define lgh_error.
+       (SCM_SYSERROR): redefine using lgh_error.
+
+Thu Sep  5 22:40:06 1996  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * error.c (scm_error): new procedure.
+
+       * error.h: prototype for scm_error.
+
+       * Makefile.in (install): install scmconfig.h from the current
+       directory, not $(srcdir).
+
+Thu Sep  5 11:38:07 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * alist.h, append.h, arbiters.h, async.h, boolean.h, chars.h,
+       continuations.h, debug.h, dynwind.h, error.h, eval.h, fdsocket.h,
+       feature.h, filesys.h, fports.h, gc.h, gdbint.h, genio.h, gsubr.h,
+       hash.h, init.h, ioext.h, kw.h, list.h, markers.h, marksweep.h,
+       mbstrings.h, numbers.h, objprop.h, options.h, pairs.h, ports.h,
+       posix.h, print.h, procprop.h, procs.h, ramap.h, read.h, root.h,
+       sequences.h, smob.h, socket.h, srcprop.h, stackchk.h, stime.h,
+       strings.h, strop.h, strorder.h, strports.h, struct.h, symbols.h,
+       tag.h, throw.h, unif.h, variable.h, vectors.h, version.h,
+       vports.h, weaks.h: #include "libguile/__scm.h", not
+       <libguile/__scm.h>.  This allows 'gcc -MM' to determine which
+       dependencies are within libguile properly.
+
+Thu Sep  5 11:38:07 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.in (.c.x): Simplify; there's no need to run this rule
+       when scmconfig.h doesn't exist. 
+
+       * load.c (scm_sys_try_load): Correct spelling.
+
+       * feature.c (scm_loc_features): Make this static.
+
+       * Makefile.in (libpath.h): Omit trailing slash from path.  We
+       shouldn't require it of users, so why put it here?
+
+       Move code to initialize and search %load-path from ice-9 to C
+       code, so we can use the load-path to find the ice-9 boot code;
+       this makes it easier to run Guile without installing it.  See
+       corresponding changes in guile/Makefile.in.
+       * feature.c: Move stuff concerned with the load path to load.c.
+       (scm_compiled_library_path): Deleted.
+       Don't #include libpath.h here.
+       * feature.h: Don't mention scm_compiled_library_path.
+       * load.c: #include "libpath.h" here, as well as <sys/types.h>,
+       <sys/stat.h>, and <unistd.h> (if present).
+       (R_OK): #define if the system hasn't deigned to.
+       (scm_loc_load_path): New variable.
+       (scm_init_load_path, scm_sys_search_load_path,
+       scm_sys_try_load_path): New functions.
+       (scm_init_load): Initialize scm_loc_load_path to point to the
+       value cell of the Scheme %load-path variable.
+       * load.h: Add declarations for scm_sys_search_load_path,
+       scm_sys_try_load_path.
+       * init.c: Call scm_init_load_path.
+       * Makefile.in (feature.o, load.o): Dependencies updated.
+
+       * load.c, load.h: Rewrite using PROTO macro.
+       
+Thu Sep  5 01:54:33 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * gc.c (scm_cellp): New function: C predicate to determine if an
+       SCM value can be regarded as a pointer to a cell on the heap.
+
+       * gc.h: Added declaration of scm_cellp.
+
+       * gdb_interface.h: New file: The GDB interface header from the GDB
+       distribution.
+
+       * gdbint.c: New file: GDB interface.
+
+       * gdbint.h: New file: GDB interface.
+
+       * libguile.h: Added #include <libguile/gdbint.h>.
+
+       * init.c (scm_boot_guile): Added scm_init_gdbint.
+
+       * Makefile.in: Added gdb_interface.h, gdbint.[hc].
+       Added -I.. to INCLUDE_CFLAGS (otherwise the include files won't be
+       found if object files and source are kept separate).
+
+Wed Sep  4 14:35:02 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * feature.h, feature.c: Use PROTO macro, instead of #if __STDC__.
+
+Wed Sep  4 01:30:47 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * configure.in: Don't substitute the values of TCL_SRC_DIR and
+       TK_SRC_DIR; they're not relevant any more.
+
+       * Makefile.in (CC): Don't list -Wall here; it's a GCC-specific flag.
+       * configure.in: Instead, put it in CFLAGS here, iff we're using GCC.
+
+Wed Sep  4 00:55:49 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * PLUGIN/guile.config (xtra_cflags): Include .. in the header
+       search path, so we can find the <libguile/MUMBLE.h> headers.
+
+       * Makefile.in (ancillary): List aclocal.m4, for 'make dist'.
+
+       * Makefile.in (ALL_CFLAGS): Don't mention CFLAGS here; it's
+       implicit in the .c.o rule.
+       (.c.x): Don't mention ALL_CFLAGS here; its value is included in
+       $(CC) already.
+
+       Put the library path in a header file, instead of passing it on
+       the command line in every compilation.
+       * Makefile.in (libpath.h): New target.
+       (feature.o): Depend on libpath.h.
+       (clean): Delete libpath.h.
+       (ALL_CFLAGS): Don't use -DLIBRARY_PATH here.  Instead ...
+       * feature.c: ... #include "libpath.h" here.
+       * .cvsignore: Ignore libpath.h.
+
+*      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).
+       * Makefile.in (pkgincludedir): Deleted.
+       (innerincludedir): New variable; this and $(includedir) are enough. 
+       (INCLUDE_CFLAGS): Search for headers in "-I$(srcdir)/..".
+       (installed_h_files): Divide this up.  Now this variable lists
+       those header files which should go into $(includedir) (i.e. appear
+       directly in the #include path), and ...
+       (inner_h_files): ... this new variable says which files appear in
+       a subdirectory, and are referred to as <libguile/mumble.h>.
+       (h_files): List them both.
+       (install): Create innerincludedir, not pkgincludedir.  Put
+       the installed_h_files and inner_h_files in their proper places.
+       (uninstall): Corresponding changes.
+       * alist.h, append.h, arbiters.h, async.h, boolean.h, chars.h,
+       continuations.h, debug.h, dynwind.h, error.h, eval.h, fdsocket.h,
+       feature.h, fports.h, gc.h, genio.h, gsubr.h, hash.h, init.h,
+       ioext.h, kw.h, libguile.h, list.h, markers.h, marksweep.h,
+       mbstrings.h, numbers.h, options.h, pairs.h, ports.h, posix.h,
+       print.h, procprop.h, procs.h, ramap.h, read.h, root.h,
+       sequences.h, smob.h, socket.h, srcprop.h, stackchk.h, stime.h,
+       strings.h, strop.h, strorder.h, strports.h, struct.h, symbols.h,
+       tag.h, throw.h, unif.h, variable.h, vectors.h, version.h,
+       vports.h, weaks.h: Find __scm.h in its new location.
+       * __scm.h: Find scmconfig.h and tags.h in their new locations
+       (they're both "inner" files).
+
+Tue Sep  3 20:27:35 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.in (.c.x): Remove duplicate use of $(ALL_CFLAGS).
+
+Tue Sep  3 19:53:00 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * posix.c: Doc fixes.
+
+Mon Sep  2 15:22:40 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * socket.c: Don't include a prototype for inet_aton; just use a
+       K&R style declaration, to avoid warnings but minimize the chance
+       of conflicts with the system.
+
+       On NextStep, <utime.h> doesn't define struct utime, unless we
+       #define _POSIX_SOURCE before #including it.
+       * aclocal.m4 (GUILE_STRUCT_UTIMBUF): New test.
+       * acconfig.h: New comment text for above CPP symbol.
+       * configure.in: Call it.
+       * posix.c: #define _POSIX_SOURCE if it seems necessary.
+
+       * configure.in (AC_CHECK_HEADERS): Include sys/utime.h and utime.h
+       in the list.
+       * posix.c: Check HAVE_SYS_UTIME_H and HAVE_UTIME_H, instead of
+       testing for __EMX__.
+
+       * posix.c: #include <libc.h>, if it exists.
+
+       * posix.c: Cast the return result to GETGROUPS_T, not gid_t; we
+       don't even know if the latter exists.
+
+        * posix.c (s_sys_setpgid, s_sys_setsid, s_sys_ctermid,
+       s_sys_tcgetpgrp, s_sys_tcsetpgrp): Renamed from s_setpgid,
+       s_setsid, s_ctermid, s_tcgetpgrp, s_tcsetpgrp, for consistency.
+
+       * posix.c (R_OK, W_OK, X_OK, F_OK): #define these if the system's
+       header files don't.
+       (scm_init_posix): Use them when initializing the Scheme constants
+       of the same name.
+
+Fri Aug 30 16:01:30 1996  Jim Blandy  <jimb@floss.cyclic.com>
+
+       * Makefile.in (libdir, includedir, bindir): Use the
+       autoconf-supplied values, instead of deriving them ourselves.
+       (pkgincludedir, datadir, pkgdatadir): New variables.
+       (install, uninstall): Put the header files in a special
+       subdirectory, not in the main search path.
+
+       * Makefile.in (ALL_CFLAGS): Provide the proper value for
+       LIBRARY_PATH --- use $(pkgdatadir) instead of $(libdir). 
+
+       * Makefile.in (IMPLPATH): Deleted; never used.
+       
+       * Makefile.in (TCL_SRC_DIR, TK_SRC_DIR): Deleted; we don't depend
+       on the Tcl/Tk source any more.
+       (INCLUDE_CFLAGS): Remove references to the above.
+
+       * Makefile.in (version.o): Corrected dependencies.
+
+Thu Aug 29 23:06:19 1996  Thomas Morgan  <tmorgan@gnu.ai.mit.edu>
+
+       * libguile.h: #include "version.h"
+
+       * init.c (scm_boot_guile): Call scm_init_version.
+       * gscm.c (gscm_run_scm): Call scm_init_version.
+
+       * configure.in (GUILE_MAJOR_VERSION, GUILE_MINOR_VERSION,
+       GUILE_VERSION): AC_DEFINE these.
+       (acconfig.h): #undef the above symbols.
+
+       * Makefile.in (libobjs): Add version.o.
+       (installed_h_files): Add version.h.
+       (c_files): Add version.c.
+       (gen_c_files): Add version.x.
+       (version.o): New rule.
+       (alist.o, append.o, appinit.o, arbiters.o, async.o, boolean.o,
+       chars.o, continuations.o, dynwind.o, eq.o, error.o, eval.o,
+       fdsocket.o, feature.o, files.o, filesys.o, fports.o, gc.o,
+       genio.o, gsubr.o, hash.o, hashtab.o, init.o, kw.o, list.o, load.o,
+       mallocs.o, markers.o, marksweep.o, mbstrings.o, numbers.o,
+       objprop.o, pairs.o, ports.o, posix.o, print.o, procprop.o,
+       procs.o, ramap.o, read.o, root.o, scmsigs.o, sequences.o,
+       simpos.o, smob.o, socket.o, stackchk.o, stime.o, strings.o,
+       strop.o, strorder.o, strports.o, struct.o, symbols.o, tag.o,
+       throw.o, unif.o, variable.o, vectors.o, version.o, vports.o,
+       weaks.o): Add version.h to dependency lists.
+       (markers.o): Remove duplicate rule.
+
+       * version.h: New file.
+
+       * version.c: New file.
+
+Thu Aug 29 15:21:39 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * symbols.c (scm_strhash): scm_downcase is now a function, not an
+       array; use it appropriately.  Since GCC is quite happy to
+       subscript functions, it never warned us about this; we should use
+       -Wpointer-arith in the future.  I guess we never tested
+       case-insensitivity.
+
+Wed Aug 28 18:52:22 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * socket.c: Doc and copyright fixes.
+
+Sat Aug 24 05:29:19 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * debug.c: Fixed and improved gdb support.
+
+Fri Aug 23 18:00:16 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * socket.c: Added declaration of inet_aton to avoid compiler
+       warning.  (Hope this solution is correct.)
+
+       * stime.c: Added declaration of ftime.  (This is missing in
+       Solaris 2 headers.)
+
+Fri Aug 23 02:03:32 1996  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * configure, scmconfig.h.in: Updated, using autoconf and autoheader.
+
+       * Makefile.in (c_files): add strerror.c.
+
+       * strerror.c: new file from Emacs' sysdep.c.
+       maybe configure should also check for sys_errlist.
+
+       * configure.in (AC_REPLACE_FUNCS): add strerror.
+
+Fri Aug 23 03:02:46 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * debug.c (scm_init_debug): Added initialization for
+       scm_evaluator_traps.
+
+       * debug.h, debug.c: Various name changes.
+       (Mostly prefixing with SCM_.)  Renamed "debug-options" -->
+       "debug-options-interface".  See commentary in options.c.
+
+       * options.h, options.c: Options now have documentation strings.
+       Also added a long explanatory commentary.
+       
+       * eval.c, print.h, print.c, read.h, read.c: Modifications to
+       run-time options.
+
+       * gscm.c, init.c, root.c, throw.c: Bug fixes:
+       last_debug_info_frame is now updated in all cases.
+
+       * __scm.h, stackchk.h, stackchk.c: Guile now performs stack
+       checking.
+
+Thu Aug 22 17:34:17 1996  Mikael Djurfeldt  <mdj@woody.nada.kth.se>
+
+       * __scm.h: SCM_STACK_LIMIT removed (now a run-time option).
+       Added option STACK_CHECKING.
+
+Tue Aug 20 18:48:40 1996  Mikael Djurfeldt  <djurfeldt@nada.kth.se>
+
+       * Makefile.in: Added {debug,options,srcprop}.{h,c}
+       
+       * __scm.h: Removed symbols for debugging support.
+
+       * acconfig.h: Added symbols 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
+       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
+       argument pairs.  Extensive modifications to the debugging
+       evaluator.  Added "SECTION:" commentaries to clarify what happens
+       when, during double compilation.  Renamed EVALIMP --> EVALIM.
+       Renamed EVAL --> XEVAL.  Removed function evalcar.  Defined
+       evalcar to scm_eval_car.  Added explanation of "EVAL" symbols to
+       the beginning of the file.  New procedure: scm_unmemocopy.
+       Added some global state variables needed by the debugging
+       evaluator: scm_ceval_ptr, last_debug_info_frame, debug_mode,
+       check_entry, check_apply, check_exit, debug_options and
+       evaluator_traps.  New acro: undefine.
+       
+       * eval.h: Renamed EVAL --> XEVAL.
+
+       * gc.c (scm_init_storage): Renamed scm_make_weak_hash_table
+       --> scm_make_weak_key_hash_table.
+       
+       * init.c (scm_restart_stack, scm_boot_guile): Added initialization
+       of SCM_DFRAME.  Added calls to scm_init_{debug,options,srcprop}.
+       
+       * libguile.h: Conditionally include debug.h
+
+*      * 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.h: New file: handling of run time options.
+
+       * posix.c (scm_getpgrp): Cast pointer to getpgrp.
+       
+*      * print.c: New procedure: scm_print_options
+
+       * print.h: Defines for print 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.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.h: Renamed scm_weak_hash_table --> scm_weak_key_hash_table.
+
+Thu Aug 15 02:05:14 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * libguile.h: #include "objprop.h"; I guess this was forgotten.
+
+       * init.c (scm_boot_guile): Don't call scm_init_rgx; it's a plugin,
+       and should be called by the final client.
+
+Wed Aug 14 21:41:37 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * gc.h: Use the PROTO macro when declaring functions.
+       * gc.c: Use the PROTO macro when declaring static functions.
+       Remove the CPP hair around function definitions.
+
+       * gc.c (scm_init_storage): Initialize scm_asyncs.
+
+       * libguile.h: #include "__scm.h" before testing the STDC_HEADERS
+       preprocessor symbol; "__scm.h" is where it might get #defined.
+       * __scm.h: Similar: #include <scmconfig.h> before testing
+       HAVE_LIMITS_H.
+
+       * __scm.h: It's HAVE_LIMITS_H, not HAVE_LIMITSH.
+       
+Fri Aug  9 11:09:28 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+*      * 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.
+
+       * __scm.h (PROTO): New macro, for declaring functions with
+       prototypes.
+
+       * init.h (scm_start_stack, scm_restart_stack): Use PROTO;
+       eliminate all the __STDC__ conditionals.
+       (scm_boot_guile): Add declaration.
+       * init.c (scm_start_stack, scm_restart_stack, scm_boot_guile):
+       Remove __STDC__ conditionals around function definitions; the
+       declarations in init.h will provide the same information, more
+       usefully.
+
+       * __scm.h (SCM_SYSMISSING): When we don't have ENOSYS, don't
+       complain about it in the error message; the error message is
+       adequate without that note, and there's nothing the user can do
+       about it.
+
+Wed Aug  7 14:14:46 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       * Makefile.in (ancillary): Drop def.sed.
+
+       * posix.c (scm_init_posix): Use numeric values, rather than
+       CPP symbols, when defining the scheme values R_OK, W_OK, X_OK, and
+       F_OK.  The symbols aren't available on some systems, and I'm
+       pretty sure their values are fixed by common widespread practice.
+       * ioext.c (scm_init_ioext): Code here defined them too; remove it.
+
+       More functions unavailable on some systems.
+       * configure.in (AC_CHECK_FUNCS): Add ctermid, setpgid, setsid,
+       tcgetpgrp, tcsetpgrp, and waitpid to the list of functions to
+       check for.
+       * configure, scmconfig.h.in: Updated, using autoconf and autoheader.
+       * posix.c (scm_sys_ctermid, scm_sys_setpgid, scm_sys_setsid,
+       scm_sys_tcgetpgrp, scm_sys_tcsetpgrp, scm_sys_waitpid): Put the
+       bodies of these functions in "#ifdef HAVE_MUMBLE" clauses, with a
+       stub that signals an error as the #else.
+
+       * Makefile.in (ancillary): Drop acconfig-1.5.h; add acconfig.h.
+
+Wed Aug  7 06:28:42 1996  Gary Houston  <ghouston@actrix.gen.nz>
+
+       * Fixes motivated by Petr Adamek <adamek@mit.edu>:
+
+       * unif.c: include ramap.h.
+
+       * read.c (endif): case_insensative_p renamed case_insensitive_p.
+
+       * ramap.h: rename scm_array_copy prototypes to scm_array_copy_x.
+
+       * ports.c: include sys/ioctl.h.
+
+       * scmconfig.h.in: add HAVE_SYS_IOCTL_H.
+
+       * configure.in: check for sys/ioctl.h.
+
+       * ports.c: include <malloc.h> not "malloc.h".
+
+       * mallocs.c: include <malloc.h> not "malloc.h", likewise for unistd.h.
+
+       * fports.c: remove ttyname and tmpnam declarations.
+
+       * posix.c: fewer ttyname declarations.
+
+       * fports.c: include <string.h> not "string.h".
+
+       * init.c, ioext.c: include string.h and unistd.h.
+
+       * gc.c: include <malloc.h> not "malloc.h", likewise for unistd.h.
+
+       * async.c, strings.h, strports.c, struct.c, symbols.c, feature.c,
+       genio.c, simpos.c, vports.c: include string.h.
+
+       * socket.c, fdsocket.c: include string.h only if HAVE_STRING_H.
+
+       * fdsocket.c (getsockopt, setsockopt): change type of optlen from 
+       scm_sizet to int.
+       (scm_addr_buffer_size): change type from scm_sizet to int.
+       (accept, getsockname, getpeername, recvfrom): change type of tmp_size
+       from scm_sizet to int.
+
+       * error.c: include unistd.h.
+
+       * __scm.h: (SCM_SYSMISSING): another version in case ENOSYS isn't
+       defined.
+
+       * Makefile.in: remove references to .hd, .cd suffix and __scm.hd.
+
+       * __scm.hd, def.sed: deleted.
+
+Tue Aug  6 14:49:08 1996  Jim Blandy  <jimb@totoro.cyclic.com>
+
+       Changes for NeXT, suggested by Robert Brown.
+       * configure.in: Call AC_TYPE_MODE_T.
+       (AC_CHECK_HEADERS): Add libc.h, to get more prototypes on the
+       NeXT.  Put header file list in alphabetical order.
+       * configure, scmconfig.h.in: Regenerated.
+       * filesys.c [HAVE_LIBC_H]: #include <libc.h>.
+
+       * filesys.c [HAVE_STRING_H]: #include <string.h>, to get prototype
+       for strerror.
+       
+       * acconfig.h: New file, providing documentation for the CPP
+       symbols defined in configure.in
+       * acconfig-1.5.h: Removed; superceded by the above.
+
 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.
 
@@ -44,10 +919,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.
 
@@ -513,9 +1388,9 @@ Sat Jan 20 23:21:37 1996  Tom Lord  <lord@beehive>
 
 Wed Dec  6 02:40:49 1995  Tom Lord  <lord@beehive>
 
-       * ports.h fports.c vports.c marksweep.c gc.c strports.c: moved the STREAM
-       of ports into the port table and replaced it with a port-table
-       index.
+       * ports.h fports.c vports.c marksweep.c gc.c strports.c: moved the
+       STREAM of ports into the port table and replaced it with a
+       port-table index.
 
        * repl.c (iprin1): added tc7_mb_string -- same as tc7_string.
 
@@ -526,14 +1401,12 @@ Wed Dec  6 02:40:49 1995  Tom Lord  <lord@beehive>
        * tags.h (scm_typ7_string, scm_typ7_mb_string): added a tag
        for multi-byte strings. Moved the string tag.
 
-       * chars.h chars.c repl.c (many functions): made scm_upcase and scm_downcase
-       functions that are safe for extended character sets.  
+       * chars.h chars.c repl.c (many functions): made scm_upcase and
+       scm_downcase functions that are safe for extended character sets.
 
        Changed the range of integer->char.
 
-       Changed the tyep of SCM_ICHR.
-
-
+       Changed the type of SCM_ICHR.
 
 Tue May 16 17:49:58 1995  Mikael Djurfeldt  <mdj@sanscalc.nada.kth.se>