Open digikar99 opened 2 years ago
That definitely should not happen. It will fix it
Should be fixed in f46969b.
At least one corner case seems to remain: what if l
given to bar
is an empty-list? In this case (bar nil)
returns no value. If I understand correctly, the (or null number)
deduced by SBCL for baz
as defined above is therefore (more?) correct.
(cl-form-types:form-type '(values "" (bar nil)) nil) ;=> (VALUES (SIMPLE-ARRAY CHARACTER (0)) NUMBER)
; But should be: (VALUES (SIMPLE-ARRAY CHARACTER (0)) (OR NULL NUMBER))
;=>
In fact, you could also add an &optional
at the end? But this is... erm... optional. There might be other cases in which &optional
might be an issue; so &optional
is not urgent I think.
Example: