predlib.lsp: fix type comparisons involving gray streams
Due to gray:fundamental-stream being treated as a built-in type, subclass relationships were not checked (see added test case). Fixes #614.
This commit is contained in:
parent
cdb602e40d
commit
1effa6a160
2 changed files with 4 additions and 1 deletions
|
|
@ -1351,7 +1351,6 @@ if not possible."
|
||||||
(EXT:ANSI-STREAM (OR BROADCAST-STREAM CONCATENATED-STREAM ECHO-STREAM
|
(EXT:ANSI-STREAM (OR BROADCAST-STREAM CONCATENATED-STREAM ECHO-STREAM
|
||||||
FILE-STREAM STRING-STREAM SYNONYM-STREAM TWO-WAY-STREAM
|
FILE-STREAM STRING-STREAM SYNONYM-STREAM TWO-WAY-STREAM
|
||||||
EXT:SEQUENCE-STREAM))
|
EXT:SEQUENCE-STREAM))
|
||||||
#+clos-streams (GRAY:FUNDAMENTAL-STREAM)
|
|
||||||
(STREAM (OR EXT:ANSI-STREAM
|
(STREAM (OR EXT:ANSI-STREAM
|
||||||
#+clos-streams GRAY:FUNDAMENTAL-STREAM))
|
#+clos-streams GRAY:FUNDAMENTAL-STREAM))
|
||||||
(EXT:VIRTUAL-STREAM (OR STRING-STREAM #+clos-streams GRAY:FUNDAMENTAL-STREAM))
|
(EXT:VIRTUAL-STREAM (OR STRING-STREAM #+clos-streams GRAY:FUNDAMENTAL-STREAM))
|
||||||
|
|
|
||||||
|
|
@ -76,9 +76,13 @@
|
||||||
;;;
|
;;;
|
||||||
;;; There is a problem with SUBTYPEP and type STREAM
|
;;; There is a problem with SUBTYPEP and type STREAM
|
||||||
;;;
|
;;;
|
||||||
|
(defclass gray-stream-test (gray:fundamental-character-output-stream) ())
|
||||||
(test cmp.0005.subtypep-stream
|
(test cmp.0005.subtypep-stream
|
||||||
(is (equal (multiple-value-list
|
(is (equal (multiple-value-list
|
||||||
(subtypep (find-class 'gray:fundamental-stream) 'stream))
|
(subtypep (find-class 'gray:fundamental-stream) 'stream))
|
||||||
|
(list t t)))
|
||||||
|
(is (equal (multiple-value-list
|
||||||
|
(subtypep (find-class 'gray-stream-test) 'stream))
|
||||||
(list t t))))
|
(list t t))))
|
||||||
|
|
||||||
;;; Date: 09/07/2006 (Tim S)
|
;;; Date: 09/07/2006 (Tim S)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue