X-Git-Url: http://git.hcoop.net/bpt/guile.git/blobdiff_plain/818a980dafe46afc11ca93ee53522e975d3dc014..ebf7394e7287ac616a77e64e151de5e9062cdea0:/libguile/ChangeLog diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 0f1f2af8e..ce8f005a2 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,509 @@ +Tue Sep 17 01:40:56 1996 Gary Houston + + * ports.h (scm_port_table): put back file_name, it will be used to + support debugging. Undo related changes in fports.c, ioext.c, + ports.c, gc.c. + +Sun Sep 15 03:58:29 1996 Gary Houston + + * ports.h (scm_port_table): remove file_name member for now, it seems + undesirable. + * fports.c (scm_open_file): don't set file_name in PTAB. + (prinfport): don't use file_name in PTAB. + * ioext.c (scm_sys_duplicate_port): don't set file_name in PTAB. + * ports.c (scm_add_to_port_table): don't intialize file_name. + (scm_port_file_name): remove for now. + * gc.c (scm_gc_mark): don't mark PTAB file_name. + + * fports.h (scm_mkfile): prototype deleted. + * fports.c (scm_mkfile): merged into scm_open_file to simplify. + + * debug.c, unif.c: use scm_out_of_range instead of + wta for range errors (ASSERT still needs work). + + * error.c, error.h (scm_out_of_range): new procedure. + + * error.c, error.h (scm_out_of_range_key): new key. + + * posix.c (scm_sync): #else was missing. + + * error.c, error.h: append _key to names scm_num_overflow and + scm_system_error. + + * __scm.h (SCM_SYSMISSING, SCM_NUM_OVERFLOW): use SCM_BOOL_F instead + of consing an empty list. + (SCM_SYSERROR etc.): move into error.c, make them procedures instead + of macros, saves code and string space. + error.c, fports.c, numbers.c, posix.c, ioext.c, filesys.c, socket.c, + fdsocket.c, simpos.c: change names of SCM_SYSERROR etc., to + lower case. Rename scm_syserror_m to scm_syserror_msg. + error.h: prototypes for new procedures. + +Sat Sep 14 03:35:41 1996 Gary Houston + + * 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 + + * __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 + +* * 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 + + * strerror.c: Doc fix. + +Thu Sep 12 00:00:32 1996 Mikael Djurfeldt + + * 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 + + * __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 + + * Makefile.in (distclean): Don't forget to delete fd.h. + +Tue Sep 10 14:01:46 1996 Jim Blandy + + * 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 + + * 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 + ; 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 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 + + * 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 + + * 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 + + * 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 + . This allows 'gcc -MM' to determine which + dependencies are within libguile properly. + +Thu Sep 5 11:38:07 1996 Jim Blandy + + * 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 , + , and (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 + + * 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 . + + * 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 + + * feature.h, feature.c: Use PROTO macro, instead of #if __STDC__. + +Wed Sep 4 01:30:47 1996 Jim Blandy + + * 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 * PLUGIN/guile.config (xtra_cflags): Include .. in the header @@ -19,7 +525,7 @@ Wed Sep 4 00:55:49 1996 Jim Blandy * 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). @@ -52,6 +558,10 @@ Tue Sep 3 20:27:35 1996 Jim Blandy * Makefile.in (.c.x): Remove duplicate use of $(ALL_CFLAGS). +Tue Sep 3 19:53:00 1996 Jim Blandy + + * posix.c: Doc fixes. + Mon Sep 2 15:22:40 1996 Jim Blandy * socket.c: Don't include a prototype for inet_aton; just use a @@ -937,9 +1447,7 @@ Wed Dec 6 02:40:49 1995 Tom Lord 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