Confusing error mode of translate-logical-pathname
Bug #980023 reported by
Faré
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
New
|
Undecided
|
Unassigned |
Bug Description
(setf (logical-
(translate-
==>
#P"/foo/
It took me a while to figure out what was happening.
The *.lisp.* in logical pathname context is read as :name :wild :type "lisp" :version :wild,
but in unix pathname context is read as :name #<SB-IMPL::PATTERN :MULTI-CHAR-WILD ".lisp"> :type :wild :version :newest.
Then translate-pathname, instead of declaring these two patterns as a mismatch, happily translates away.
Maybe that's on purpose. If so, it's mighty confusing. Maybe a STYLE-WARNING when setting logical-
To post a comment you must log in.
This has little to do with logical pathname translations and a lot to do with wildcard namestring syntax.