(defun loop-get-collection-info (collector class default-type)
(let ((form (loop-get-form))
- (dtype (or (loop-optional-type) default-type))
(name (when (loop-tequal (car *loop-source-code*) 'into)
(loop-pop-source)
(loop-pop-source))))
(loop-error "The value accumulation recipient name, ~S, is not a symbol." name))
(unless name
(loop-disallow-aggregate-booleans))
- (let ((cruft (find (the symbol name) *loop-collection-cruft*
+ (let ((dtype (or (loop-optional-type) default-type))
+ (cruft (find (the symbol name) *loop-collection-cruft*
:key #'loop-collector-name)))
(cond ((not cruft)
(when (and name (loop-var-p name))
(assert (null warnings-p))
(assert (null failure-p))
(assert (equal '(t t) (funcall function)))))
+
+(with-test (:name :bug-654220-regression)
+ (assert (= 32640 (loop for i to 255
+ sum i into sum of-type fixnum
+ finally (return sum)))))
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.43.71"
+"1.0.43.72"