0.8alpha.0.8:
[sbcl.git] / src / compiler / proclaim.lisp
index 1c154ca..a7d1ff7 100644 (file)
               (compiler-warn "ignoring unknown optimization quality ~
                                ~S in ~S"
                               quality spec))
-             ((not (and (typep raw-value 'real) (<= 0 raw-value 3)))
+             ((not (typep raw-value 'policy-quality))
               (compiler-warn "ignoring bad optimization value ~S in ~S"
                              raw-value spec))
              (t
-              (push (cons quality (rational raw-value))
+              (push (cons quality raw-value)
                     result)))))
     ;; Add any nonredundant entries from old POLICY.
     (dolist (old-entry policy)
       (freeze-type
        (dolist (type args)
         (let ((class (specifier-type type)))
-          (when (typep class 'sb!xc:class)
-            (setf (class-state class) :sealed)
-            (let ((subclasses (class-subclasses class)))
+          (when (typep class 'classoid)
+            (setf (classoid-state class) :sealed)
+            (let ((subclasses (classoid-subclasses class)))
               (when subclasses
                 (dohash (subclass layout subclasses)
                   (declare (ignore layout))
-                  (setf (class-state subclass) :sealed))))))))
+                  (setf (classoid-state subclass) :sealed))))))))
       (optimize
        (setq *policy* (process-optimize-decl form *policy*)))
       ((inline notinline maybe-inline)