the other three SLOT-VALUEish functions, but not for the setter).
* bug fix: unparsing logical pathnames with :NAME :WILD :TYPE NIL
failed with a type error. (reported by Pascal Bourguignon)
+ * bug fix: merging pathnames against defaults with :DIRECTORY
+ starting with '(:RELATIVE :BACK) should preserve the :BACK.
+ (reported by James Y Knight)
* fixed some bugs revealed by Paul Dietz' test suite:
** MISC.641: LET-conversion were not supposed to work in late
compilation stages.
(if (and (eq dir :back)
results
(not (member (car results)
- '(:back :wild-inferiors))))
+ '(:back :wild-inferiors :relative :absolute))))
(pop results)
(push dir results))))
(dolist (dir (maybe-diddle-case dir2 diddle-case))
:name :wild :type nil)))
(assert (string= (namestring pathname) "SYS:**;*"))
(assert (string= (write-to-string pathname :readably t) "#P\"SYS:**;*\"")))
-
+\f
+;;; reported by James Y Knight on sbcl-devel 2006-05-17
+(let ((p1 (make-pathname :directory '(:relative "bar")))
+ (p2 (make-pathname :directory '(:relative :back "foo"))))
+ (assert (equal (merge-pathnames p1 p2)
+ (make-pathname :directory '(:relative :back "foo" "bar")))))
+\f
;;;; success
;;; 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.9.13.4"
+"0.9.13.5"