diff options
Diffstat (limited to 'cl-forth.lisp')
-rw-r--r-- | cl-forth.lisp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/cl-forth.lisp b/cl-forth.lisp index faa48a6..ec2a0f3 100644 --- a/cl-forth.lisp +++ b/cl-forth.lisp @@ -46,12 +46,12 @@ (let ((flag t)) (cond ((char= #\| next-char) (read-char line-stream) - (if (char-equal #\Space - (peek-char nil line-stream nil nil)) - (collect (make-token :pipe line-num col :identifier) - into tokens) - (progn (unread-char #\| line-stream) - (setf flag nil)))) + (let ((peeked (peek-char nil line-stream nil nil))) + (if (or (not peeked) (char-equal #\Space peeked)) + (collect (make-token :pipe line-num col :identifier) + into tokens) + (progn (unread-char #\| line-stream) + (setf flag nil))))) ((char= #\Space next-char) (read-char line-stream)) ((char= #\; next-char) ;; and not in string (finish)) |