+ (superclasses
+ (let ((superclasses (restart-case
+ (mapcar #'find-sod-class
+ (or supers (list "SodObject")))
+ (continue ()
+ (setf duff t)
+ (list (find-sod-class "SodObject"))))))
+ (find-duplicates (lambda (first second)
+ (declare (ignore second))
+ (setf duff t)
+ (cerror* "Class `~A' has duplicate ~
+ direct superclass `~A'"
+ name first))
+ superclasses)
+ (delete-duplicates superclasses)))