On Sun, 28 Mar 2010 19:08:27 -0400, Faré fahree@gmail.com wrote:
There is no portable way to distinguish between the many filesystem errors, anyway. Is there a good reason to not let LOAD report whatever error it wants?
Hmm, LOAD is specified to raise a FILE-ERROR upon failure and I missed that SBCL's SIMPLE-FILE-ERROR is a subtype of it, so we get the failed upon pathname.
The status quo is that currently ASDF provides the name of the system in the condition, which we'd have to deduce from the pathname, if we were to let LOAD do the error checking.
In the cases of SBCL, ECL and CLisp FILE-ERROR-PATHNAME on a dead symlink is reasonable and returns the pathname of the dead symlink, not what it points to.
But there is something that bothers me still, as there are those multiple-systems-per-file .asd files, which makes pathname->system mapping less trivial. How much this makes a problem in the real life I cannot tell, just that it might be one in general.
In the end, I'm not sure, it's been long since I touched desire.