X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Freader.lisp;h=6ae6ce414e52f4ddad597a811baae4d951805a31;hb=eaec8176060e89efa39f01017df1f6204e491ecc;hp=7cdd79baeeff78fde390dfa8c17c325c28a67b78;hpb=5185986c75b5c2cbc2114e867e1a5cd64c49de06;p=sbcl.git diff --git a/src/code/reader.lisp b/src/code/reader.lisp index 7cdd79b..6ae6ce4 100644 --- a/src/code/reader.lisp +++ b/src/code/reader.lisp @@ -1577,7 +1577,7 @@ standard Lisp readtable when NIL." (define-compiler-macro read-from-string (&whole form string &rest args) ;; Check this at compile-time, and rewrite it so we're silent at runtime. - (destructuring-bind (&optional eof-error-p eof-value &rest keys) + (destructuring-bind (&optional (eof-error-p t) eof-value &rest keys) args (cond ((maybe-note-read-from-string-signature-issue eof-error-p) `(read-from-string ,string t ,eof-value ,@keys)) @@ -1598,7 +1598,7 @@ standard Lisp readtable when NIL." (:preserve-whitespace preserve-whitespace) (otherwise (return-from read-from-string form))))) - (when (assoc key seen) + (when (member key seen) (setf var (gensym "IGNORE")) (push var ignore)) (push key seen)