From discussion in #lisp, it seems that PROBE-FILE cannot accept
#391: "bad place for a wild pathname" on EXT:PROBE-DIRECTORY for NAME containing #\* ---------------------------+----------------------------------------------- Reporter: mevenson | Owner: Type: defect | Status: new Priority: major | Milestone: 1.5.0 Component: | Version: interpreter | Resolution: | Keywords: cl:probe-file ext:probe-directory Parent Tickets: | ---------------------------+----------------------------------------------- Comment (by mevenson): Replying to [comment:1 mevenson]: pathname designators which contain wildcards, so the #\* character should be treated as a literal #\* in our PROBE-{FILE,DIRECTORY} implementations. The problem lies in that ABCL "overloads" the meaning of #\* characters in PATHNAME objects as both designating a wildcard for a string of zero or more characters, as well as a literal #\* object. Surveying alisp, sbcl, and ccl reveal different strategies for dealing with this. For alisp, #p"foo*" is not WILD-PATHNAME-P true. sbcl replaces pathnames with wildcards with explicit objects {{{ CL-USER> (describe #p"/tmp/foo*") #P"/tmp/foo*" [structure-object] Slots with :INSTANCE allocation: HOST = #<SB-IMPL::UNIX-HOST {1000FDEC23}> DEVICE = NIL DIRECTORY = (:ABSOLUTE "tmp") NAME = #<SB-IMPL::PATTERN "foo" :MULTI-CHAR-WILD> TYPE = NIL VERSION = :NEWEST ; No value }}} Lots of factors to consider here. Need to summarize issues more succinctly. -- Ticket URL: <http://abcl.org/trac/ticket/391#comment:4> armedbear <http://abcl.org> armedbear