Commit 7bc38abc authored by ram's avatar ram
Browse files

Export new variable *ignore-extra-close-parentheses* if true (the default),

extra close parens are only a warning, not an error.

Export READER-ERROR, and change all reader code to signal this error as
appropriate (or in some cases END-OF-FILE.)

If a package is undefined, or an external symbol is missing, then signal
READER-PACKAGE-ERROR (a subtype of READER-ERROR.)  This allows #+ to suppress
this error on features without suppressing all read errors.  Changed these
errors to only be signalled after the whole token has been gobbled, so that
unwinding out of the handler won't leave the rest of the symbol unread.

Improved readtable documentation.

Fixed a number of problems with #=/##.  ## now works correctly with #S
structures, and also detects some new error conditions (such as multiply
defined labels.)  Also, we now bind the specials that control ## interaction so
that if someone happens to read some other stream inside a read macro, things
will still work.

Added Ted's changes to make INTERNAL-READ-EXTENDED-TOKEN work when there are
`|' escapes.  The main significance of this is that #+nil '|foo;bar| and
#:|foobar| now work properly.  Also change this function to recognize unquoted
colons so that #:foo:bar will error, but not #:foo\:bar.  Changed to not
gratuitously upcase the input, and for READ-EXTENDED-TOKEN to call
CASIFY-READ-BUFFER so that when READTABLE-CASE is :PRESERVE, you can #:Foo,
etc.
parent b59b2d13
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment