Add unused keyword :EXTERNAL-FORMAT to OPEN function for ANSI compatibility.

This commit is contained in:
jjgarcia 2003-07-15 15:29:41 +00:00
parent 8f434b209c
commit d53b2a5768
5 changed files with 11 additions and 2 deletions

View file

@ -1528,6 +1528,9 @@ ECLS 0.9b
- READ/WRITE-SEQUENCE implemented.
- OPEN now accepts the parameter :EXTERNAL-FORMAT, which can only be
:DEFAULT, as ECL does not support the notion of external formats
(all streams have element type (UNSIGNED-BYTE 8)).
TODO:
=====

View file

@ -347,7 +347,7 @@ FEillegal_variable_name(cl_object v)
static void
FEill_formed_input()
{
FEprogram_error("Unproper list handled to the compiler.", 0);
FEprogram_error("Improper list handled to the compiler.", 0);
}
static void

View file

@ -507,6 +507,8 @@ StdinResume()
* CLOS-STREAMS and S is an instance object, STREAM-READ-CHAR is invoked
* to retrieve the character. Then STREAM-READ-CHAR should either
* output the character, or NIL, indicating EOF.
*
* INV: ecl_getc(strm) checks the type of STRM.
*/
int
ecl_getc(cl_object strm)
@ -1580,9 +1582,13 @@ cl_output_stream_p(cl_object strm)
(element_type @'base-char')
(if_exists Cnil iesp)
(if_does_not_exist Cnil idnesp)
(external_format @':default')
&aux strm)
enum smmode smm;
@
if (external_format != @':default')
FEerror("~S is not a valid stream external format.", 1,
external_format);
/* INV: open_stream() checks types */
if (direction == @':input') {
smm = smm_input;

View file

@ -1517,7 +1517,6 @@ CANNOT_PARSE:
&optional eof_errorp eof_value)
int c;
@
assert_type_stream(binary_input_stream);
c = ecl_getc(binary_input_stream);
if (c == EOF) {
if (Null(eof_errorp))

View file

@ -1276,6 +1276,7 @@ cl_symbols[] = {
{KEY_ "EXECUTE", KEYWORD, NULL, -1},
{KEY_ "EXPECTED-TYPE", KEYWORD, NULL, -1},
{KEY_ "EXTERNAL", KEYWORD, NULL, -1},
{KEY_ "EXTERNAL-FORMAT", KEYWORD, NULL, -1},
{KEY_ "FORMAT-ARGUMENTS", KEYWORD, NULL, -1},
{KEY_ "FORMAT-CONTROL", KEYWORD, NULL, -1},
{KEY_ "FUNCTION", KEYWORD, NULL, -1},