In SBCL and Allegro, it's possible for UIOP to create a pathname for a file whose name is "*" and then we can find a file with such a(n odd) pathname.

On ABCL, though, this gives me an error:

(truename (ensure-pathname "*"))
(truename (uiop:ensure-pathname "*"))
#<THREAD "interpreter" native {21C91F12}>: Debugger invoked on condition of type FILE-ERROR
  Cannot find the TRUENAME for a wild pathname.

But actually, I don't think this is a wild pathname:

CL-USER(4): (describe (uiop:ensure-pathname "*"))
#P"*" is an object of type PATHNAME:
  HOST         NIL
  DEVICE       NIL
  DIRECTORY    NIL
  NAME         "*"
  TYPE         :UNSPECIFIC
  VERSION      NIL

this is a wild pathname:

CL-USER(5): (describe (parse-namestring "*"))
#P"*" is an object of type PATHNAME:
  HOST         NIL
  DEVICE       NIL
  DIRECTORY    NIL
  NAME         :WILD
  TYPE         NIL
  VERSION      NIL

Is this an ABCL bug, since it means ABCL cannot address a file whose name is "*"?

The interested may refer to this ASDF issue and the corresponding merge request.

Thanks!