1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-06 23:50:18 +02:00
Commit graph

2648 commits

Author SHA1 Message Date
Mikael Djurfeldt
4dc7f07fde *** empty log message *** 1999-07-08 05:58:11 +00:00
Mikael Djurfeldt
aea5b792f7 * symbols.c (scm_gensym): Bugfix. (Thanks to Johannes Hjorth.) 1999-07-08 05:55:34 +00:00
Mikael Djurfeldt
544b923292 *** empty log message *** 1999-07-07 09:44:53 +00:00
Mikael Djurfeldt
23a621512f Greg's smob patch 1999-07-07 09:44:01 +00:00
Mikael Djurfeldt
8ac40ce887 * image-type.c: Updated example to use scm_make_smob_type_mfpe,
SCM_RETURN_NEWSMOB, SCM_NEWSMOB function and macros.
1999-07-07 09:41:38 +00:00
Mikael Djurfeldt
5bdab01690 * data-rep.texi: Updated SMOB docs to talk about
scm_make_smob_type_mfpe, SCM_RETURN_NEWSMOB, SCM_NEWSMOB function
and macros.
1999-07-07 09:40:28 +00:00
Gary Houston
283a1a0e77 1999-07-04 Gary Houston <ghouston@easynet.co.uk>
* unif.c (scm_uniform_array_write): likewise.
	* ioext.c (scm_redirect_port): likewise.
	* ports.c (scm_putc): call scm_read_flush.
	(scm_puts): likewise.
	(scm_lfwrite): likewise.
	(scm_lseek): likewise.
	(scm_ftruncate): likewise.
	* ports.c (scm_fill_buffer): don't take pt argument.  change callers.
	(read_flush_void_port): new proc, for void port ptob.
	* vports.c (sf_read_flush): likewise.
	* strports.c (st_read_flush): take offset arg.
	* fports.c (local_read_flush): use offset, don't reset putback
	buffer here.
	* ports.h (scm_ptobfuns): let read_flush take an offset argument,
	which is the number of chars from the putback buffer.
	* ports.c (scm_read_flush): new procedure, resets the putback
	buffer before calling the ptob routine.
1999-07-04 11:50:54 +00:00
Gary Houston
6c9514275b 1999-07-04 Gary Houston <ghouston@easynet.co.uk>
* strports.c (scm_strprint_obj): bug fix: get pt from the port,
	not from the parameter obj.  (Thanks to Eric Moore.)
	* ports.h: SCM_CRDY, SCM_CUC, SCM_CRDYP, SCM_SETRDY, SCM_CUNGET,
	SCM_CGETUN, SCM_CLRDY, SCM_TRY_CLRDY, SCM_N_READY_CHARS: deleted.
	* strings.c (scm_make_string): throw error if 2nd arg isn't
	a char.
	* unif.c (scm_uniform_array_read_x): fix reading from a port.
	allow non-fports.
	(scm_uniform_array_write): likewise.
1999-06-29  Gary Houston  <ghouston@easynet.co.uk>
	* ports.c (scm_drain_input): rewritten.
	* fports.c (local_fclose): check putback_buf.
	(local_read_flush): likewise.
	* ports.c (scm_remove_from_port_table): maybe free putback_buf.
	* ports.h (scm_port): replace cbuf/cbufend/cp with putback_buf/
	putback_buf_size.
	(SCM_INITIAL_PUTBACK_BUF_SIZE): renamed from SCM_INITIAL_CBUF_SIZE.
	* ports.c (scm_grow_port_cbuf): deleted.
	(scm_add_to_port_table): initialise putback_buf to 0.  remove cbuf
	stuff.
	(scm_char_ready_p): check putback_buf
	(scm_fill_buffer): likewise.
	(scm_ungetc): rewritten.
1999-06-27  Gary Houston  <ghouston@easynet.co.uk>
	* fports.c (local_fclose): account for push-back buffer.
	* ports.c (scm_char_ready_p): check the push-back buffer in
	a new way.
	* ioext.c (scm_do_read_line): remove the extra code to handle
	the push-back buffer.
	* ports.c (scm_getc): don't use SCM_CRDYP etc.
	* ioext.c (scm_do_read_line): call scm_fill_buffer.
	* ports.c (scm_ungetc): don't call SCM_CUNGET.  reset the
	read buffer pointers.
	scm_fill_buffer: new procedure.
	(scm_getc): call scm_fill_buffer.
	* ports.h (struct scm_port): saved_read_buf, saved_read_pos,
	saved_read_end: new fields.
1999-07-04  Gary Houston  <ghouston@easynet.co.uk>
	* configure.in: don't check for ways to violate stdio abstraction.
1999-07-04 11:02:21 +00:00
Jim Blandy
ab41a129a8 never finished 1999-06-30 09:27:12 +00:00
Mikael Djurfeldt
40ed3fe694 *** empty log message *** 1999-06-29 10:36:08 +00:00
Mikael Djurfeldt
526e04642c * readline.scm: Bugfix: Avoid getting the continued-lines prompt
at multiple calls to read.
(promtp2): Variable for continued-lines prompt.
(make-readline-port): Use prompt2.
(set-readline-prompt!): New optional arg which sets
continued-lines prompt.
1999-06-29 10:35:36 +00:00
Mikael Djurfeldt
dd6ba90547 * boot-9.scm (top-repl): Set/clear readline prompts before/after
reading expressions.
1999-06-29 10:35:06 +00:00
Mikael Djurfeldt
0af045dfe5 *** empty log message *** 1999-06-23 16:00:30 +00:00
Mikael Djurfeldt
af1f9aa293 * dynl-dl.c (sysdep_dynl_link): Added parenthesis around the
trinary conditional in order for the flag computation to be
correct.
1999-06-23 16:00:15 +00:00
Mikael Djurfeldt
e02c763c29 *** empty log message *** 1999-06-23 12:01:04 +00:00
Mikael Djurfeldt
8b5af48ab1 *** empty log message *** 1999-06-23 11:19:45 +00:00
Mikael Djurfeldt
ff2961ec2c * tag.c (scm_tag): Base tag on vtable pointer. 1999-06-23 11:19:25 +00:00
Mikael Djurfeldt
ad1965993e * struct.c, struct.h:
(scm_struct_i_free): New hidden struct slot.  Holds destructor for
instances to this vtable.
(scm_struct_free_0): New destructor: Doesn't deallocate data.
(scm_struct_free_light): New destructor: Deallocates a light
struct (i.e. a struct without hidden slots).
(scm_struct_free_standard): New destructor: Deallocates standard
structs.
(scm_struct_free_entity): New destructor: Deallocates entity
structs.
(SCM_SET_VTABLE_DESTRUCTOR): New macro.
Changes to hidden slots:
(scm_struct_i_size): scm_struct_i_flags now shares space with
scm_struct_i_size which holds the size of light structs.
(scm_struct_i_n_words): This slot has changed meaning.  Previously
it included hidden slots.  Now it indicates visible slots.
(scm_alloc_struct): Clear flags.
(SCM_STRUCTF_MASK): 4 new flag positions added => 12 bits.
(struct_num, scm_struct_i_tag): Removed.
(scm_struct_vtable_tag): Base tag on the pointer to mallocated
memory.
(scm_struct_ihashq): Base hash value on pointer to struct handle.
1999-06-23 11:17:36 +00:00
Mikael Djurfeldt
37b83f68b0 * snarf.h (SCM_KEYWORD, SCM_GLOBAL_KEYWORD): New macros. 1999-06-23 11:16:52 +00:00
Mikael Djurfeldt
2eafbe52c6 * objects.h (SCM_SET_CLASS_DESTRUCTOR,
SCM_SET_CLASS_INSTANCE_SIZE): New macros.
1999-06-23 11:16:44 +00:00
Mikael Djurfeldt
135e76f876 * objects.c (scm_init_objects): Initialize destructor slot of the
primordial entity class.
1999-06-23 11:16:28 +00:00
Mikael Djurfeldt
d6af5a438b * libguile.h: #include "objects.h" 1999-06-23 11:16:18 +00:00
Mikael Djurfeldt
430a6cc34e * keywords.c, keywords.h (scm_c_make_keyword): New function.
(We should remove the use of the prefix '-'.)
1999-06-23 11:16:09 +00:00
Mikael Djurfeldt
f0cb1733dd * gc.c (scm_gc_sweep): Call struct free slot. 1999-06-23 11:15:58 +00:00
Marius Vollmer
3f737ec81d *** empty log message *** 1999-06-21 15:18:48 +00:00
Marius Vollmer
8e3ab00333 Resolved harmless conflict. 1999-06-21 15:16:54 +00:00
Marius Vollmer
56a19408b8 * dynl.c (DYNL_GLOBAL): New.
(sysdep_dynl_link): Added `flags' argument.
(kw_global, sym_global): New.
(scm_dynamic_link): Handle keyword arguments.  Pass suitable flags
to sysdep_dynl_link.
* dynl-dl.c (sysdep_dynl_link): Handle new `flags' argument by
conditrionally adding RTLD_GLOBAL to DLOPEN_MODES.
* dynl-shl.c (sysdep_dynl_link): Add and ignore new flags
argument.
* dynl-dld.c (sysdep_dynl_link): Add and ignore new flags
argument.
* dynl.h (scm_dynamic_link): Added rest argument.
* dynl.c (sysdep_dynl_unlink, sysdep_dynl_func): Use const
qualifier for char* argument, to match prototypes.  Thanks to Mark
Elbrecht.
1999-06-21 15:14:01 +00:00
Jim Blandy
56ef2fe230 *** empty log message *** 1999-06-21 14:50:36 +00:00
Jim Blandy
a80a90e951 * dynl.c (no_dynl_error, sysdep_dynl_link, sysdep_dynl_unlink,
sysdep_dynl_func): Use ANSI declarations, and const char *
pointers.  (Thanks to Mark Elbrecht.)
1999-06-21 14:50:19 +00:00
Jim Blandy
560f4b23a4 *** empty log message *** 1999-06-19 20:21:25 +00:00
Jim Blandy
ff4670212a Patch from Greg Harvey:
* eq.c, eval.c, list.c, ramap.c, vectors.c: Always write parens
around the condition of an `if', `while', etc., even if the
condition is a macro invocation that expands to something
surrounded by parens.  It's more readable.
1999-06-19 20:21:07 +00:00
Jim Blandy
727e010e9f *** empty log message *** 1999-06-19 17:27:01 +00:00
Jim Blandy
07cff7d7e7 *** empty log message *** 1999-06-19 17:26:09 +00:00
Jim Blandy
d9c393f5fa * eval.c (scm_map, scm_for_each): Verify that all arguments are
proper lists, and of the appropriate lengths.
(check_map_args): New function.
1999-06-19 17:25:25 +00:00
Jim Blandy
9bb7a7ef7c *** empty log message *** 1999-06-19 16:28:17 +00:00
Jim Blandy
26dd899df2 * tests/interp.test: New file. 1999-06-19 16:28:11 +00:00
Jim Blandy
98947fdca4 *** empty log message *** 1999-06-19 16:11:55 +00:00
Jim Blandy
01a119acae * guardians.c (guardian_t): `next' - new field to be used for
chaining the live guardians in a single-linked list during the GC
mark phase.
(GUARDIAN_NEXT): convenience macro to access the `next' field.
(guardians, guardians_size, n_guardians): deleted.
(first_live_guardian, current_link_field): new globals used to
point to the head of the live guardian list and current `next'
field, respectively.
(g_mark): append the guardian to the live guardian list.
(scm_guardian_gc_init): zero the live guardian list.
(scm_guardian_zombify): iterate through the live guardian list.
1999-06-19 16:11:38 +00:00
Jim Blandy
2206b7fc99 Remove spurious menu. 1999-06-19 11:02:18 +00:00
Jim Blandy
d21ffe2694 *** empty log message *** 1999-06-18 10:16:40 +00:00
Jim Blandy
67e6fa38cd * ls.scm (ls, lls): Handle no arguments as meaning to look in
`(current-module)'. (Patch from Thien-Thi Nguyen.)
1999-06-18 10:16:10 +00:00
Jim Blandy
0a27f7d30f (A Common Mistake In Allocating Smobs): New section. 1999-06-17 22:52:01 +00:00
Jim Blandy
8afdfa8eb2 *** empty log message *** 1999-06-16 13:20:43 +00:00
Jim Blandy
1cc7e8faa4 *** empty log message *** 1999-06-16 10:18:34 +00:00
Jim Blandy
a5c314c80e * gc.c (scm_mallocated): Just make this signed.
(scm_igc): Check for underflow by seeing if this is negative.
Much cleaner.
* gc.h (scm_mallocated): Fix declaration.
(Thanks to Greg Harvey.)
1999-06-16 10:18:27 +00:00
Jim Blandy
d2ab9696bb *** empty log message *** 1999-06-16 09:57:52 +00:00
Jim Blandy
0bb126ba5b Doc fix. 1999-06-16 09:05:55 +00:00
Jim Blandy
7c9310c86d *** empty log message *** 1999-06-16 09:00:35 +00:00
Jim Blandy
acdb12daa8 * ports.h: #include <sys/types.h>, to get a definition for `off_t'. 1999-06-16 08:53:46 +00:00
Jim Blandy
8044bbc8dc *** empty log message *** 1999-06-16 08:44:24 +00:00