1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-02 21:10:27 +02:00
Commit graph

2151 commits

Author SHA1 Message Date
Jim Blandy
5f964025e8 *** empty log message *** 1998-10-11 18:42:32 +00:00
Jim Blandy
5ead5a91d0 * genio.c (scm_do_read_line): Count lines correctly when the file
doesn't end in a newline.
1998-10-11 18:42:17 +00:00
Jim Blandy
216d3a1e28 *** empty log message *** 1998-10-10 21:29:37 +00:00
Jim Blandy
af77c5fdf1 * genio.c (scm_do_read_line): Maintain the line count correctly. 1998-10-10 21:27:34 +00:00
Jim Blandy
e87e6f257a * GUILE-VERSION: bump to 1.2.91, since we're doing snapshots again. 1998-10-10 21:00:57 +00:00
Jim Blandy
7915032c8a *** empty log message *** 1998-10-10 21:00:45 +00:00
Jim Blandy
5ec51d1306 *** empty log message *** 1998-10-10 14:27:14 +00:00
Jim Blandy
17f8d40ce9 *** empty log message *** 1998-10-10 12:59:50 +00:00
Jim Blandy
b098016b6e * numbers.c (big2str): Protect t from garbage collection until
we're done.  (Thanks to Gary Houston.)
1998-10-10 12:59:37 +00:00
Jim Blandy
4147236a59 * gc.c (scm_return_first): Remove #ifdef __STDC__ garbage; Guile
requires ANSI now.
1998-10-10 12:59:29 +00:00
Jim Blandy
4382896de0 * Guile 1.2.90 released --- beta.
* GUILE-VERSION: Set to 1.2.90.  This would appear to be a
regression from 1.3a, but everyone knows that the next release is
1.3, I want to switch to a more coherent version numbering system,
and now is the time.
1998-10-10 12:58:00 +00:00
Jim Blandy
75d6cdf0ce *** empty log message *** 1998-10-10 12:39:22 +00:00
Jim Blandy
fb2c2b9ea2 *** empty log message *** 1998-10-10 12:37:34 +00:00
Jim Blandy
c6ff295ec8 *** empty log message *** 1998-10-09 15:25:08 +00:00
Jim Blandy
c15f9b9dbd * Makefile.am (libguile_la_LDFLAGS): Increment shared library
version number.
* Makefile.in: Regenerated.
1998-10-09 15:24:40 +00:00
Jim Blandy
c1b0211966 Go to 1.3b, for the first 1.3 beta release. 1998-10-09 15:23:33 +00:00
Jim Blandy
0e4233dcf6 Remove uses of the #/ syntax. 1998-10-09 15:13:12 +00:00
Jim Blandy
98330fd2f8 *** empty log message *** 1998-10-09 15:13:11 +00:00
Jim Blandy
bf7bc911dd * boot-9.scm (read-path-list-notation-warning): New function:
print a warning the first time we see `#/' notation.
1998-10-09 15:12:51 +00:00
Jim Blandy
093d017925 * guile-config.in: Add copyright notice. 1998-10-09 15:12:40 +00:00
Jim Blandy
332d00f658 Mention that the #/ syntax now causes warnings. 1998-10-09 15:12:26 +00:00
Jim Blandy
0445f9f28c *** empty log message *** 1998-10-09 14:25:04 +00:00
Jim Blandy
7705225986 *** empty log message *** 1998-10-09 13:56:27 +00:00
Jim Blandy
1168a720b1 * q.scm (sync-q!, q?, q-remove!, q-push!, enq!): Lots of bugs, and
(eq?  #f '()) assumptions.  Make functions that aren't documented
to return anything else return the queue itself.  (Bug report from
Michael Livshin --- thanks!)
1998-10-09 13:56:16 +00:00
Jim Blandy
31b9e7671b *** empty log message *** 1998-10-09 12:47:01 +00:00
Jim Blandy
bc45012d8f Centralize the creation of port objects based on stdio FILE * in
fports.c; don't just throw them together anywhere.
* fports.c (scm_stdio_to_port): Make NAME a SCM value, which is
what the rest of Guile wants.  Don't set the revealed count;
that's only appropriate for stdin, stdout, stderr.
(scm_standard_stream_to_port): This function does set the revealed
count.
* init.c (scm_init_standard_ports): Use	scm_standard_stream_to_port,
not scm_stdio_to_port.
* filesys.c (scm_open): Call scm_stdio_to_port; don't write it out.
* fports.c (scm_open_file): Same.
* posix.c (scm_pipe): Same.
* socket.c (scm_sock_fd_to_port): Same.
* ioext.c (scm_fdopen): Same.
(scm_freopen): Moved from here to...
* fports.c (scm_freopen): ... here.  This is really something that
munges the internals of an fport, so it should go here.
* fports.h (scm_stdio_to_port): Adjust prototype.
(scm_standard_stream_to_port, scm_freopen): New protoypes.
* ioext.h (scm_freopen): Prototype removed.
1998-10-09 12:46:31 +00:00
Jim Blandy
571031dca0 * fports.h (scm_setbuf0, scm_setvbuf, scm_setfileno,
scm_evict_ports, scm_open_file, scm_stdio_to_port): Get rid of
SCM_P macro.
Do magic to mix reads and writes on stdio FILE-based ports.
* fports.c (FPORT_READ_SAFE, FPORT_WRITE_SAFE, FPORT_ALL_OKAY):
New macros.
(pre_read, pre_write): New functions.
(local_fgetc, local_fgets, local_ffwrite, local_fputc,
local_fputs): Call them.
(local_fflush): Mark the port as ready for reading and writing.
(scm_stdio_to_port): Set the FPORT_READ_SAFE, FPORT_WRITE_SAFE
flags on new port objects.  This might not be accurate --- who
knows what state the FILE * is in when we get it --- but it won't
do extraneous calls to fflush or fseek, so it's no worse than the
behavior before this change.
* ports.h: Add comment.
Centralize the creation of port objects based on stdio FILE * in
fports.c; don't just throw them together anywhere.
* fports.c (scm_stdio_to_port): Make NAME a SCM value, which is
what the rest of Guile wants.  Don't set the revealed count;
that's only appropriate for stdin, stdout, stderr.
(scm_standard_stream_to_port): This function does set the revealed
count.
* init.c (scm_init_standard_ports): Use	scm_standard_stream_to_port,
not scm_stdio_to_port.
* filesys.c (scm_open): Call scm_stdio_to_port; don't write it out.
* fports.c (scm_open_file): Same.
* posix.c (scm_pipe): Same.
* socket.c (scm_sock_fd_to_port): Same.
* ioext.c (scm_fdopen): Same.
(scm_freopen): Moved from here to...
* fports.c (scm_freopen): ... here.  This is really something that
munges the internals of an fport, so it should go here.
* fports.h (scm_stdio_to_port): Adjust prototype.
(scm_standard_stream_to_port, scm_freopen): New protoypes.
* ioext.h (scm_freopen): Prototype removed.
1998-10-09 12:46:13 +00:00
Jim Blandy
e145dd0277 Do magic to mix reads and writes on stdio FILE-based ports.
* fports.c (FPORT_READ_SAFE, FPORT_WRITE_SAFE, FPORT_ALL_OKAY):
New macros.
(pre_read, pre_write): New functions.
(local_fgetc, local_fgets, local_ffwrite, local_fputc,
local_fputs): Call them.
(local_fflush): Mark the port as ready for reading and writing.
(scm_stdio_to_port): Set the FPORT_READ_SAFE, FPORT_WRITE_SAFE
flags on new port objects.  This might not be accurate --- who
knows what state the FILE * is in when we get it --- but it won't
do extraneous calls to fflush or fseek, so it's no worse than the
behavior before this change.
* ports.h: Add comment.
Centralize the creation of port objects based on stdio FILE * in
fports.c; don't just throw them together anywhere.
* fports.c (scm_stdio_to_port): Make NAME a SCM value, which is
what the rest of Guile wants.  Don't set the revealed count;
that's only appropriate for stdin, stdout, stderr.
(scm_standard_stream_to_port): This function does set the revealed
count.
* init.c (scm_init_standard_ports): Use	scm_standard_stream_to_port,
not scm_stdio_to_port.
* filesys.c (scm_open): Call scm_stdio_to_port; don't write it out.
* fports.c (scm_open_file): Same.
* posix.c (scm_pipe): Same.
* socket.c (scm_sock_fd_to_port): Same.
* ioext.c (scm_fdopen): Same.
(scm_freopen): Moved from here to...
* fports.c (scm_freopen): ... here.  This is really something that
munges the internals of an fport, so it should go here.
* fports.h (scm_stdio_to_port): Adjust prototype.
(scm_standard_stream_to_port, scm_freopen): New protoypes.
* ioext.h (scm_freopen): Prototype removed.
1998-10-09 12:45:20 +00:00
Jim Blandy
5621be9997 Centralize the creation of port objects based on stdio FILE * in
fports.c; don't just throw them together anywhere.
* fports.c (scm_stdio_to_port): Make NAME a SCM value, which is
what the rest of Guile wants.  Don't set the revealed count;
that's only appropriate for stdin, stdout, stderr.
(scm_standard_stream_to_port): This function does set the revealed
count.
* init.c (scm_init_standard_ports): Use	scm_standard_stream_to_port,
not scm_stdio_to_port.
* filesys.c (scm_open): Call scm_stdio_to_port; don't write it out.
* fports.c (scm_open_file): Same.
* posix.c (scm_pipe): Same.
* socket.c (scm_sock_fd_to_port): Same.
* ioext.c (scm_fdopen): Same.
(scm_freopen): Moved from here to...
* fports.c (scm_freopen): ... here.  This is really something that
munges the internals of an fport, so it should go here.
* fports.h (scm_stdio_to_port): Adjust prototype.
(scm_standard_stream_to_port, scm_freopen): New protoypes.
* ioext.h (scm_freopen): Prototype removed.
* filesys.c (set_element, get_element): This can work on both pipe
and file ports, so use SCM_FPORTP to typecheck, instead of testing
for scm_tc16_fport.
1998-10-09 12:44:37 +00:00
Jim Blandy
74d977c610 * scmconfig.h.in: Regenerated. 1998-10-09 12:44:06 +00:00
Jim Blandy
93016112cb * fports.h (scm_setbuf0, scm_setvbuf, scm_setfileno,
scm_evict_ports, scm_open_file, scm_stdio_to_port): Get rid of
SCM_P macro.
Centralize the creation of port objects based on stdio FILE * in
fports.c; don't just throw them together anywhere.
* fports.c (scm_stdio_to_port): Make NAME a SCM value, which is
what the rest of Guile wants.  Don't set the revealed count;
that's only appropriate for stdin, stdout, stderr.
(scm_standard_stream_to_port): This function does set the revealed
count.
* init.c (scm_init_standard_ports): Use	scm_standard_stream_to_port,
not scm_stdio_to_port.
* filesys.c (scm_open): Call scm_stdio_to_port; don't write it out.
* fports.c (scm_open_file): Same.
* posix.c (scm_pipe): Same.
* socket.c (scm_sock_fd_to_port): Same.
* ioext.c (scm_fdopen): Same.
(scm_freopen): Moved from here to...
* fports.c (scm_freopen): ... here.  This is really something that
munges the internals of an fport, so it should go here.
* fports.h (scm_stdio_to_port): Adjust prototype.
(scm_standard_stream_to_port, scm_freopen): New protoypes.
* ioext.h (scm_freopen): Prototype removed.
1998-10-09 12:43:51 +00:00
Jim Blandy
1ee7c452f7 *** empty log message *** 1998-10-09 12:12:33 +00:00
Jim Blandy
5e9345c384 * configure.in: Call AC_C_INLINE, so we can use inline happily in
libguile.
* configure: Regenerated.
1998-10-09 12:12:26 +00:00
Jim Blandy
1cf84ea500 *** empty log message *** 1998-10-09 11:50:21 +00:00
Jim Blandy
0f88a8f3bd Change the definition of the functions in scm_ptobfuns so that
they get passed the port object, not the port's stream.
* ports.h (scm_ptobfuns): Rename all `stream' arguments to `port'.
* gc.c (scm_gc_sweep): Pass the port itself to the free function.
* genio.c (scm_putc, scm_puts, scm_lfwrite, scm_fflush, scm_getc):
Pass the port itself to the scm_ptobs function.
* ports.c (scm_close_port, scm_force_output, scm_flush_all_ports,
scm_generic_fgets): Same.
(putc_void_port, puts_void_port, write_void_port, flush_void_port,
getc_void_port, fgets_void_port, close_void_port): Just change the
argument names; these functions don't really do anything.
* fports.c (local_fgetc, local_fgets, local_fclose, local_fflush,
local_fputc, local_fputs, local_ffwrite, local_pclose): Take the
port as an argument, and use SCM_STREAM to get the stdio FILE *.
Also, use prototyped definitions, and get rid of the extra
declarations.
(scm_fptob, scm_pipob): We don't need casts here any more.
* strports.c (prinstpt): Use prototype declarations.
(stputc, stwrite, stputs, stgetc): Take the port as an argument,
and use SCM_STREAM to get the string info.  Also, use prototyped
definitions, and get rid of the extra declarations.
* vports.c (sfputc, sfwrite, sfputs, sfflush, sfgetc, sfclose,
noop0): Same.
1998-10-09 10:02:41 +00:00
Jim Blandy
ea9fc30d4b Change the definition of the functions in scm_ptobfuns so that
they get passed the port object, not the port's stream.
* ports.h (scm_ptobfuns): Rename all `stream' arguments to `port'.
* gc.c (scm_gc_sweep): Pass the port itself to the free function.
* genio.c (scm_putc, scm_puts, scm_lfwrite, scm_fflush, scm_getc):
Pass the port itself to the scm_ptobs function.
* ports.c (scm_close_port, scm_force_output, scm_flush_all_ports,
scm_generic_fgets): Same.
(putc_void_port, puts_void_port, write_void_port, flush_void_port,
getc_void_port, fgets_void_port, close_void_port): Just change the
argument names; these functions don't really do anything.
* fports.c (local_fgetc, local_fgets, local_fclose, local_fflush,
local_fputc, local_fputs, local_ffwrite, local_pclose): Take the
port as an argument, and use SCM_STREAM to get the stdio FILE *.
Also, use prototyped definitions, and get rid of the extra
declarations.
(scm_fptob, scm_pipob): We don't need casts here any more.
* strports.c (prinstpt): Use prototype declarations.
(stputc, stwrite, stputs, stgetc): Take the port as an argument,
and use SCM_STREAM to get the string info.  Also, use prototyped
definitions, and get rid of the extra declarations.
* vports.c (sfputc, sfwrite, sfputs, sfflush, sfgetc, sfclose,
noop0): Same.
* fports.c (local_fgetc, local_fgets): Renamed from scm_fgetc and
scm_fgets, for consistency.
(scm_fptop, scm_pipob): References updated.
1998-10-09 10:01:12 +00:00
Jim Blandy
0c0669cc73 Change the definition of the functions in scm_ptobfuns so that
they get passed the port object, not the port's stream.
* ports.h (scm_ptobfuns): Rename all `stream' arguments to `port'.
* gc.c (scm_gc_sweep): Pass the port itself to the free function.
* genio.c (scm_putc, scm_puts, scm_lfwrite, scm_fflush, scm_getc):
Pass the port itself to the scm_ptobs function.
* ports.c (scm_close_port, scm_force_output, scm_flush_all_ports,
scm_generic_fgets): Same.
(putc_void_port, puts_void_port, write_void_port, flush_void_port,
getc_void_port, fgets_void_port, close_void_port): Just change the
argument names; these functions don't really do anything.
* fports.c (local_fgetc, local_fgets, local_fclose, local_fflush,
local_fputc, local_fputs, local_ffwrite, local_pclose): Take the
port as an argument, and use SCM_STREAM to get the stdio FILE *.
Also, use prototyped definitions, and get rid of the extra
declarations.
(scm_fptob, scm_pipob): We don't need casts here any more.
* strports.c (prinstpt): Use prototype declarations.
(stputc, stwrite, stputs, stgetc): Take the port as an argument,
and use SCM_STREAM to get the string info.  Also, use prototyped
definitions, and get rid of the extra declarations.
* vports.c (sfputc, sfwrite, sfputs, sfflush, sfgetc, sfclose,
noop0): Same.
* ports.h (scm_ptobfuns): Replace uses of SCM_P with a straight
prototype; it's okay (preferred, even!) to use ANSI C in Guile.
1998-10-09 10:00:55 +00:00
Jim Blandy
59619fea31 *** empty log message *** 1998-10-08 20:17:46 +00:00
Jim Blandy
79d0b5961d * .cvsignore: New file, containing data-rep.info. I'm not sure
whether we want to check this file into CVS, because it's
generated; if you find compelling reasons it should be, let me
know.
1998-10-08 20:17:38 +00:00
Jim Blandy
cc5ca0281d Adjust formatting. 1998-10-08 20:12:53 +00:00
Jim Blandy
6d921cd6cc *** empty log message *** 1998-10-08 20:12:22 +00:00
Jim Blandy
f64056d105 Include the source location in error messages for scripts.
* init.c (scm_boot_guile_1): Use scm_internal_lazy_catch, so the
stack is still there when we catch the error.
* throw.c (handler_message): If we are handling an error with a
message, then put together the proper arguments and call
scm_display_error, instead of scm_display_error_message.  That
displays source location, if it can find it.
1998-10-08 20:11:59 +00:00
Jim Blandy
a8e0500932 *** empty log message *** 1998-10-07 20:06:29 +00:00
Jim Blandy
dab7f56692 * gc.c (scm_unprotect_object): Change this so that calls to
scm_protect_object and scm_unprotect_object nest properly.
(scm_protect_object): Doc fixes.
1998-10-07 20:05:56 +00:00
Jim Blandy
a14e47910e *** empty log message *** 1998-10-07 20:00:11 +00:00
Jim Blandy
74f8751631 *** empty log message *** 1998-10-07 19:35:56 +00:00
Jim Blandy
3c0a54bd68 *** empty log message *** 1998-10-07 15:52:46 +00:00
Jim Blandy
82637e2bfe * strings.c (scm_string_set_x): Require the argument to be a
writable string, not a substring or a symbol.
* strings.h (SCM_RWSTRINGP, SCM_NRWSTRINGP): New predicates.
1998-10-07 15:52:31 +00:00
Jim Blandy
13af30488e *** empty log message *** 1998-10-07 10:16:28 +00:00
Jim Blandy
d60497159a * configure.in: Don't forget to #define HAVE_RL_GETC_FUNCTION if
we do find the rl_getc_function variable in the readline library;
AC_CHECK_FUNCS used to do this for us, but we're not using it any
more.
* acconfig.h: Add an entry for HAVE_RL_GETC_FUNCTION.
1998-10-07 10:15:57 +00:00