(make-pathname :name :unspecific) isn't printed readably.
Describe the bug
(make-pathname :name :unspecific)
is printed as #p""
which is the
same output as (make-pathname)
. Thus, we don't have print/read
consistency.
To Reproduce
Steps to reproduce the behavior:
-
(make-pathname :name :unspecific)
=>#p""
-
(make-pathname)
=>#p""
- But
describe
on each of the returned paths returns something different.
Expected behavior
We should have print/read consistency.
Desktop
- OS: All
- Version: snapshot-2021-07
Additional context
Both clisp and ecl don't allow :unspecific
for the :name
. ccl and
gcl appear to behave as cmucl does. sbcl
prints
* (make-pathname :name :unspecific)
#<PATHNAME (with no namestring)
:HOST #<SB-IMPL::UNIX-HOST {1000114123}>
:DEVICE NIL
:DIRECTORY NIL
:NAME :UNSPECIFIC
:TYPE NIL
:VERSION NIL>
See also :UNSPECIFIC as a Component Value.
Also, Relation between NIL and :UNSPECIFIC indicates when converting to namestring, they're treated as empty so it doesn't appear in the namestring. So perhaps not having print/read consistency is allowed? But that's for namestrings, which isn't what we're printing here.
Edited by Raymond Toy