* read.c (scm_lreadr): When user-defined hash procedure returns
SCM_UNSPECIFIED: Fall back to standard handling instead of raising an exception. (This prevents parsing of uniform vectors from interfering with parsing of numbers.) * arrays.scm (read:uniform-vector): Return *unspecified* instead of raising an exception if hash extend character isn't followed by the array list. (This prevents parsing of uniform vectors from interfering with parsing of numbers.)
This commit is contained in:
parent
ea6c2147b7
commit
89759084ab
4 changed files with 17 additions and 3 deletions
|
|
@ -1,3 +1,10 @@
|
|||
2001-10-14 Mikael Djurfeldt <mdj@linnaeus>
|
||||
|
||||
* arrays.scm (read:uniform-vector): Return *unspecified* instead
|
||||
of raising an exception if hash extend character isn't followed by
|
||||
the array list. (This prevents parsing of uniform vectors from
|
||||
interfering with parsing of numbers.)
|
||||
|
||||
2001-10-08 Mikael Djurfeldt <mdj@linnaeus>
|
||||
|
||||
* emacs.scm (%%load-port, %%emacs-load, %%emacs-eval-request,
|
||||
|
|
|
|||
|
|
@ -79,5 +79,4 @@
|
|||
|
||||
(define (read:uniform-vector proto port)
|
||||
(if (eq? #\( (peek-char port))
|
||||
(list->uniform-array 1 proto (read port))
|
||||
(error "read:uniform-vector list not found")))
|
||||
(list->uniform-array 1 proto (read port))))
|
||||
|
|
|
|||
|
|
@ -1,3 +1,10 @@
|
|||
2001-10-14 Mikael Djurfeldt <mdj@linnaeus>
|
||||
|
||||
* read.c (scm_lreadr): When user-defined hash procedure returns
|
||||
SCM_UNSPECIFIED: Fall back to standard handling instead of raising
|
||||
an exception. (This prevents parsing of uniform vectors from
|
||||
interfering with parsing of numbers.)
|
||||
|
||||
2001-10-13 Marius Vollmer <mvo@zagadka.ping.de>
|
||||
|
||||
* numbers.c: Set NO_PREPRO_MAGIC when defining our version of
|
||||
|
|
|
|||
|
|
@ -350,7 +350,7 @@ scm_lreadr (SCM *tok_buf,SCM port,SCM *copy)
|
|||
|
||||
got = scm_call_2 (sharp, SCM_MAKE_CHAR (c), port);
|
||||
if (SCM_EQ_P (got, SCM_UNSPECIFIED))
|
||||
goto unkshrp;
|
||||
goto handle_sharp;
|
||||
if (SCM_RECORD_POSITIONS_P)
|
||||
return *copy = recsexpr (got, line, column,
|
||||
SCM_FILENAME (port));
|
||||
|
|
@ -358,6 +358,7 @@ scm_lreadr (SCM *tok_buf,SCM port,SCM *copy)
|
|||
return got;
|
||||
}
|
||||
}
|
||||
handle_sharp:
|
||||
switch (c)
|
||||
{
|
||||
case '(':
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue