Subject: bug#29838: 26.0; Elisp manual: describe standard-error sexps

From: Drew Adams <[email-masked]>
Date: Sun, 24 Dec 2017 10:50:16 -0800 (PST)

> > Looking at the manual coverage of sequence etc. functions, you find
> > information such as this:
> >   (elt [1 2 3 4] -1)
> >      error→ Args out of range: [1 2 3 4], -1
> > But that doesn't help for understanding `(args-out-of-range 9 9)'.
> 
> Not sure what you want to explain and how.  The number of arguments
> shown by the args-out-of-range error is not fixed (although in many
> cases they are just 2), and their number and meaning are determined by
> the calling application.  It's not something fixed that can be
> described to match all the uses.

Please explain whatever _can_ be explained.  Clearly, if the
number and specific meanings of arguments cannot be known
generically then that info cannot be conveyed.  But so far,
nothing at all is told users about a sexp such as
`(args-out-of-range 9 9)'.

A start could to be to mention that an `args-out-of range'
error sexp has the form `(args-out-of-range ARG...)' or
whatever the truth is, and then say what ARG represents,
in general terms.

The error messages themselves (see above) are quite
different.  They show you the sequence/array/whatever
as well as the args that are out of range for it.

(And a user would naturally expect, I think, that
the info in something like `(args-out-of-range 9 9)'
would provide the range that the args are outside of,
as well as the arg values that are outside that range,
even if it didn't provide the sequence/array/etc.)