Faré wrote:
I recommend we just let the user choose between PATHNAME-EQUAL and PATHNAME-EQUALP, or some such.
The only question about this would be whether this is visible to the user or not?
Looking into ASDF we find the following calls to PATHNAME-EQUAL:
* BINARY-OP calls PATHNAME-EQUAL to see if it will inadvertently overwrite the system .asd file * Under ECL and MKCL, when building a bundle, we use pushnew with PATHNAME-EQUAL; if this is wrong, and PATHNAME-EQUALP is right, then we could get duplicates in the bundle * FIND-SYSTEM calls PATHNAME-EQUAL to see if the system definition source file has been changed. A false positive here will cause unnecessary reloads. * SAME-PACKAGE-SYSTEM-P uses PATHNAME-EQUAL to check and see if two package-systems are the same.
I don't see how these problems can be resolved by punting to the user: the user doesn't have access to this level of control.
While I agree that a heuristic for deciding whether pathnames are case-sensitive is not ideal, I don't see an alternative to supplying one.
But perhaps there's a different way out? At any rate, we'd have to figure out how to handle the above cases.
cheers, r