Fix for the type translation of the class corresponding to
(SIMPLE-ARRAY (UNSIGNED-BYTE 15) (*))
behaviour, and in particular no longer treats all memory as being
exhausted when many small objects point to each other in a deeply
recursive manner.
behaviour, and in particular no longer treats all memory as being
exhausted when many small objects point to each other in a deeply
recursive manner.
+ * bug fix: arrays specialized on (UNSIGNED-BYTE 15) are now
+ recognized as being TYPEP their class.
* optimization: implemented multiplication as a modular
(UNSIGNED-BYTE 32) operation on the x86 backend.
* optimization: SEARCH on simple-base-strings can now be open-coded.
* optimization: implemented multiplication as a modular
(UNSIGNED-BYTE 32) operation on the x86 backend.
* optimization: SEARCH on simple-base-strings can now be open-coded.
:inherits (vector simple-array array sequence)
:prototype-form (make-array 0 :element-type '(unsigned-byte 8)))
(simple-array-unsigned-byte-15
:inherits (vector simple-array array sequence)
:prototype-form (make-array 0 :element-type '(unsigned-byte 8)))
(simple-array-unsigned-byte-15
- :translation (simple-array (unsigned-byte 7) (*))
+ :translation (simple-array (unsigned-byte 15) (*))
:codes (#.sb!vm:simple-array-unsigned-byte-15-widetag)
:direct-superclasses (vector simple-array)
:inherits (vector simple-array array sequence)
:codes (#.sb!vm:simple-array-unsigned-byte-15-widetag)
:direct-superclasses (vector simple-array)
:inherits (vector simple-array array sequence)
;;; bug 46c
(dolist (fun '(and if))
(assert (raises-error? (coerce fun 'function) type-error)))
;;; bug 46c
(dolist (fun '(and if))
(assert (raises-error? (coerce fun 'function) type-error)))
+
+(dotimes (i 100)
+ (let ((x (make-array 0 :element-type `(unsigned-byte ,(1+ i)))))
+ (eval `(typep ,x (class-of ,x)))))
;;; 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".)
;;; 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".)