X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fcode%2Ftarget-type.lisp;h=bae3258de5880a65a3ab6c1d8dd649319b26bf36;hb=f538b5388411e980376c1b4e6ca03a1f9c0d23d7;hp=e561d872b6cf00a2c8adfd12a2fa51bb88d0cdce;hpb=148e3820ad314a9b59d0133c1d60eaac4af9118b;p=sbcl.git diff --git a/src/code/target-type.lisp b/src/code/target-type.lisp index e561d87..bae3258 100644 --- a/src/code/target-type.lisp +++ b/src/code/target-type.lisp @@ -58,6 +58,12 @@ (values nil nil)) (alien-type-type (values (alien-typep obj (alien-type-type-alien-type type)) t)) + (negation-type + (multiple-value-bind (res win) + (ctypep obj (negation-type-type type)) + (if win + (values (not res) t) + (values nil nil)))) (hairy-type ;; Now the tricky stuff. (let* ((hairy-spec (hairy-type-specifier type))