The patch inlined below fixes the display of DEFTYPE lambda lists.
It's compatible enough with older SBCL - extracting the expander's arglist
is just a gensym, not technically wrong but not as useful as the
destructuring lambda list.
While this could be considered a regression, I don't think it needs
conditionalizing on SBCL release. The way to do so, in theory, is check
whether (:type :lambda-list) is a kind of info by asking for meta-info ...
except that it won't actually fix anything because current SBCL reports
that (:type :lambda-list) exists, but it never has data.
--- swank-fancy-inspector.lisp~ 2015-04-30 23:24:08.000000000 -0400
+++ swank-fancy-inspector.lisp 2015-04-30 23:34:31.000000000 -0400
@@ -119,10 +119,7 @@
(unless (eq t fun)
(append
`("Type-specifier lambda-list: "
- ,(inspector-princ
- (if (eq :primitive kind)
- (arglist fun)
- (sb-int:info :type :lambda-list symbol)))
+ ,(inspector-princ (arglist fun))
(:newline))
(multiple-value-bind (expansion ok)
(handler-case (sb-ext:typexpand-1 symbol)