- (reduce #'* dims))))
- `(data-vector-set (truly-the (simple-array ,(type-specifier el-type)
- (,total-size))
- (%array-data-vector array))
- index
- new-value)))))
+ (reduce #'* dims)))
+ (type-sp `(simple-array ,(type-specifier el-type)
+ (,total-size))))
+ (if (atom dims)
+ `(let ((a (truly-the ,type-sp (%array-simp array))))
+ (data-vector-set a index new-value))
+ `(let ((a (truly-the ,type-sp (%array-data-vector array))))
+ (data-vector-set a index new-value)))))))