Opened 8 years ago
Last modified 9 months ago
#371 new defect
Problems with CL:WILD-PATHNAME-P
Reported by: | Mark Evenson | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 1.9.0 |
Component: | interpreter | Version: | 1.4.0-dev |
Keywords: | ansi-compliance | Cc: | |
Parent Tickets: |
Description
Pascal notes on armedbear-devel@ :
Why do we have? (wild-pathname-p #P"*-blah") -> T (wild-pathname-p #P"*-blah" :name) -> NIL This is inconsistent (and non-conforming). Actually wild-pathname-p returns NIL for all fields: (mapcar (lambda (field) (wild-pathname-p #P"*-blah" field)) (list :host :device :directory :name :type :version))' --> (NIL NIL NIL NIL NIL NIL) If that was true, then (wild-pathname-p #P"*-blah" nil) should return NIL, not true. If field-key is not supplied or nil, wild-pathname-p returns true if pathname has any wildcard components, nil if pathname has none. If field-key is non-nil, wild-pathname-p returns true if the indicated component of pathname is a wildcard, nil if the component is not a wildcard. So we should have: (defun wild-pathname-p (path &optional field-key) (if (null field-key) (some (lambda (field-key) (wild-pathname-p path field-key)) '(:host :device :directory :name :type :version)) …))
Change History (11)
comment:1 Changed 8 years ago by
comment:6 Changed 3 years ago by
Milestone: | 1.6.2 → 1.7.0 |
---|
comment:11 Changed 9 months ago by
Milestone: | 1.8.1 → 1.9.0 |
---|
Note: See
TracTickets for help on using
tickets.
The implementation of WILD-PATHNAME-P turns out to be in Java at <http://abcl.org/trac/browser/trunk/abcl/src/org/armedbear/lisp/Pathname.java#L1889>