* Fix bug reported by PFD on sbcl-devel 2003-12-04
... VALUES transform: preserve (single-valuified) derived
type;
... LET-CONVERT: flush combination derived type.
** extremely complex negations of CONS types were not being
sufficiently canonicalized, leading to inconsistencies in
SUBTYPEP.
+ ** VALUES tranformer lost derive type.
planned incompatible changes in 0.8.x:
* (not done yet, but planned:) When the profiling interface settles
(%f11 -120429363 (%f11 62362 b)))))
6714367 9645616 -637681868)
-264223548))
+
+;;; Bug reported by Paul F. Dietz caused by derive type loss in VALUE
+;;; transform
+(assert (equal (multiple-value-list
+ (funcall
+ (compile nil '(lambda ()
+ (declare (optimize (speed 1) (space 0) (safety 3) (debug 3) (compilation-speed 1)))
+ (ceiling
+ (ceiling
+ (flet ((%f16 () 0)) (%f16))))))))
+ '(0 0)))