diff --git a/src/cmp/cmptype.lsp b/src/cmp/cmptype.lsp index daa5c90da..eb3a5aebd 100644 --- a/src/cmp/cmptype.lsp +++ b/src/cmp/cmptype.lsp @@ -119,3 +119,8 @@ `(let* ((%value ,value)) ,(type-error-check '%value type) (the ,type %value)))))) + +(defmacro optional-type-check (&whole whole value type &environment env) + (if (policy-assume-right-type) + value + `(assert-type-if-known ,value ,type)))