That causes repeated compilations of inlined functions to accumulate
changes made by the transform.
Thanks to Bart Botta.
(regression since 1.0.42.11-bis)
;;;; -*- coding: utf-8; fill-column: 78 -*-
+changes relative to sbcl-1.1.5:
+ * bug fix: Prevent a make-array transform from modifying source forms
+ causing problems for inlined code. Thanks to Bart Botta.
+ (regression since 1.0.42.11-bis)
+
changes in sbcl-1.1.5 relative to sbcl-1.1.4:
* minor incompatible change: SB-SPROF:WITH-PROFILING no longer loops
by default.
(values dimensions nil))))
(let ((initial-contents (getf keyargs :initial-contents)))
(when (and initial-contents rank)
- (setf (getf keyargs :initial-contents)
+ (setf keyargs (copy-list keyargs)
+ (getf keyargs :initial-contents)
(rewrite-initial-contents rank initial-contents env))))
`(locally (declare (notinline list vector))
(make-array ,new-dimensions ,@keyargs)))))