Subject: bug#66912: With `require', the byte compiler reports the wrong file for errors.

From: Stefan Monnier <[email-masked]>
Date: Sun, 10 Nov 2024 16:37:26 -0500

>> Because of my "A => B => compile => C => D" example: the message I want
>> to have depends on the chain from the point where I catch the error
>> (i.e. the `condition-case`) to the point where the error is signaled.
>> And I don't really care about the debugger case.
> That is no explanation as to WHY you think it's the right thing.
> The point in that chain where we catch the error is an internal
> implementation detail, of no interest to the user.

Not at all.  In the above example, the error message goes to the
compilation buffer, and it would be weird for that buffer to say "while
loading A while loading B" whereas the compiled code loads neither.

> WHY are you so unconcerned about the debugger case?

In the debugger case, I usually have direct access to the problematic
code and usually don't care that much about the further parts of the
context explaining why that code is executed.
Occasionally I do, but "loading" is not special in this respect: I will
just as often be interested to know which command was used, in which
buffer, or which hook caused that code to be run.

> I think it would be consistent to display "While loading..." the same
> in both cases.

To be honest, I don't see much value in displaying "while loading" in
the echo area in general.  I'm not opposed to it, but the only case
where I know it could be helpful is during compilation (which I'm
mostly interested to see it in the compilation buffer).

        Stefan