X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fgeneric%2Fprimtype.lisp;h=1232ca1a39a2546ecc926d50f56206eb64096210;hb=903f4432362a1e7764dfed46d35894625cc085d8;hp=4a4489aa836ba8580bb44cd28a5902abccb08b86;hpb=0aecc2b20142e08068c3434273500131cb13fe2d;p=sbcl.git diff --git a/src/compiler/generic/primtype.lisp b/src/compiler/generic/primtype.lisp index 4a4489a..1232ca1 100644 --- a/src/compiler/generic/primtype.lisp +++ b/src/compiler/generic/primtype.lisp @@ -316,17 +316,9 @@ (res (any)) (exact nil)) (dolist (type types (values res exact)) - (when (eq type (specifier-type 'function)) - ;; KLUDGE: Deal with (and function instance), both of which - ;; have an exact primitive type. - (return (part-of function))) (multiple-value-bind (ptype ptype-exact) (primitive-type type) (when ptype-exact - ;; Apart from the previous kludge exact primitive - ;; types should match, if indeed there are any. It - ;; may be that this assumption isn't really safe, - ;; but at least we'll see what breaks. -- NS 20041104 (aver (or (not exact) (eq ptype res))) (setq exact t)) (when (or ptype-exact (and (not exact) (eq res (any))))