* Deleted obsolete bug 244;
        * optimizer for ARRAY-HEADER-P knows about 0-dimensional
          arrays;
          ... fixed bug 250.
This commit is contained in:
Alexey Dejneka 2003-05-26 14:42:23 +00:00
parent efb7317381
commit f1407e424f
9 changed files with 17 additions and 39 deletions

12
BUGS
View file

@ -1187,15 +1187,6 @@ WORKAROUND:
; caught STYLE-WARNING:
; The variable Y is defined but never used.
244: "optimizing away tests for &KEY args of type declared in DEFKNOWN"
(caught by clocc-ansi-test :EXCEPSIT-LEGACY-1050)
In sbcl-0.pre8.44, (OPEN "foo" :DIRECTION :INPUT :EXTERNAL-FORMAT 'FOO)
succeeds with no error (ignoring the bogus :EXTERNAL-FORMAT argument)
apparently because the test is optimized away. The problem doesn't
exist in sbcl-0.pre8.19. Deleting the (MEMBER :DEFAULT) declaration
for :EXTERNAL-FORMAT in DEFKNOWN OPEN (and LOAD) is a workaround for
the problem (and should be removed when the problem is fixed).
245: bugs in disassembler
a. On X86 an immediate operand for IMUL is printed incorrectly.
b. On X86 operand size prefix is not recognized.
@ -1212,9 +1203,6 @@ WORKAROUND:
(TYPEP 1 '(SYMBOL NIL)) says something about "unknown type
specifier".
250:
(make-array nil :initial-element 11) causes a warning.
251:
(defun foo (&key (a :x))
(declare (fixnum a))

View file

@ -59,7 +59,7 @@ done
# common names for editor temporary files
# TAGS, tags
# files created by GNU etags and ctags
# .#*, *.orig, .*.orig
# .#*, *.orig, .*.orig, *.rej
# rubbish left behind by CVS updates
# *.htm, *.html
# The system doc sources are SGML, any HTML is
@ -76,6 +76,7 @@ find . \( \
-name '.#*' -o \
-name '*.orig' -o \
-name '.*.orig' -o \
-name '*.rej' -o \
-name '?*.x86f' -o \
-name '?*.axpf' -o \
-name '?*.lbytef' -o \

View file

@ -253,7 +253,7 @@
(setf (%array-dimension array axis) dim)
(incf axis)))
array))))
;;; DATA-VECTOR-FROM-INITS returns a simple vector that has the
;;; specified array characteristics. Dimensions is only used to pass
;;; to FILL-DATA-VECTOR for error checking on the structure of

View file

@ -1063,14 +1063,6 @@
:IF-DOES-NOT-EXIST - one of :ERROR, :CREATE or NIL
See the manual for details."
(unless (eq external-format :default)
(error "Any external format other than :DEFAULT isn't recognized."))
;; First, make sure that DIRECTION is valid.
(ensure-one-of direction
'(:input :output :io :probe)
:direction)
;; Calculate useful stuff.
(multiple-value-bind (input output mask)
(case direction
@ -1169,7 +1161,7 @@
(logior (logandc2 mask sb!unix:o_creat)
sb!unix:o_trunc)))
(setf if-exists :supersede))))
;; Now we can try the actual Unix open(2).
(multiple-value-bind (fd errno)
(if namestring

View file

@ -154,9 +154,6 @@
"Load the file given by FILESPEC into the Lisp environment, returning
T on success."
(unless (eq external-format :default)
(error "Non-:DEFAULT EXTERNAL-FORMAT values are not supported."))
(let ((*load-depth* (1+ *load-depth*))
;; KLUDGE: I can't find in the ANSI spec where it says that
;; DECLAIM/PROCLAIM of optimization policy should have file

View file

@ -821,7 +821,7 @@
(cond ((csubtypep type (specifier-type '(simple-array * (*))))
;; no array header
nil)
((and (listp dims) (> (length dims) 1))
((and (listp dims) (/= (length dims) 1))
;; multi-dimensional array, will have a header
t)
(t

View file

@ -1148,12 +1148,7 @@
:rename-and-delete :overwrite
:append :supersede nil))
(:if-does-not-exist (member :error :create nil))
(:external-format
;; FIXME: This is logically (MEMBER :DEFAULT),
;; but as a workaround for bug 244, we don't
;; declare it (to keep the compiler from trusting
;; the declaration unchecked).
t))
(:external-format (member :default)))
(or stream null))
(defknown rename-file (pathname-designator filename)
@ -1176,11 +1171,7 @@
(:verbose t)
(:print t)
(:if-does-not-exist (member :error :create nil))
(:external-format
;; FIXME: This is logically (MEMBER :DEFAULT), but as a workaround
;; for bug 244, we don't declare it (to keep the compiler from
;; trusting the declaration unchecked).
t))
(:external-format (member :default)))
t)
(defknown directory (pathname-designator &key)

View file

@ -391,3 +391,12 @@
(assert (typep (eval `(the arithmetic-error
',(make-condition 'arithmetic-error)))
'arithmetic-error))
(assert (not (nth-value
2 (compile nil '(lambda ()
(make-array nil :initial-element 11))))))
(assert (raises-error? (funcall (eval #'open) "assertoid.lisp"
:external-format '#:nonsense)))
(assert (raises-error? (funcall (eval #'load) "assertoid.lisp"
:external-format '#:nonsense)))

View file

@ -17,4 +17,4 @@
;;; 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".)
"0.8.0.4"
"0.8.0.5"