diff --git a/src/decoder.lisp b/src/decoder.lisp index 7686d96..f0ad423 100644 --- a/src/decoder.lisp +++ b/src/decoder.lisp @@ -103,7 +103,7 @@ as a string." (read-part Int nil #\-) (read-part Frac #\.) (read-part Exp #\e #\- #\+) - (if c (unread-char c stream)) + (when c (unread-char c stream)) (values category (coerce (cdr chars) 'string)))))) (defun read-json-name-token (stream) diff --git a/src/objects.lisp b/src/objects.lisp index 08cade0..4d56a1f 100644 --- a/src/objects.lisp +++ b/src/objects.lisp @@ -63,7 +63,8 @@ registered in the superclass." (eval-when (:compile-toplevel :load-toplevel :execute) (defclass fluid-object (standard-object) () (:documentation "Any instance of a fluid class.") - (:metaclass fluid-class))) + (:metaclass fluid-class)) + (finalize-inheritance (find-class 'fluid-object))) (defmethod compute-class-precedence-list ((class fluid-class)) "Objects of fluid classes are fluid objects."