[Openmcl-devel] question regarding pathname-match-p

Ron Garret ron at flownet.com
Fri Jul 13 07:47:16 PDT 2018


This is super-simple to fix.  Just meta-point on ccl::%pathname-match-directory and then change:

	((null wild)
	 nil)

at the end to

	((null wild)
	 t)

rg

On Jul 13, 2018, at 2:43 AM, lsxvdqe <lsxvdqe at gmail.com> wrote:

> Disclaimer: I'm not a CCL dev.
> 
> On Thu, 12 Jul 2018, Ralf Stoye wrote:
> 
>> pathname-match-p behaves different on ccl than on scbl.
>> 
>> (PATHNAME-MATCH-P
>> #P"/home/rs/src/quicklisp/local-projects/hello-world/system.asd"
>> "system.asd")
>> -> nil
> 
> This looks like a bug to me. The standard says that missing components
> should be treated as wildcards. And %COMPONENT-MATCH-P does exactly that.
> But directory component is matched differently.
> 
> This should be equivalent (but isn't for CCL):
> (pathname-match-p "/foo/bar" (make-pathname :name "bar"))
> (pathname-match-p "/foo/bar" (make-pathname :directory :wild :name "bar"))
> 
> This whole wildcard buisness is a bit hairy, as some parts depend on OS and FS.
> E.g ECL doesn't treat empty type as a wildcard (unlike most implementations).
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> https://lists.clozure.com/mailman/listinfo/openmcl-devel




More information about the Openmcl-devel mailing list