Subject: bug#60730: 29.0.60; Free variable with :buffer keyword in ert-with-temp-file

From: Eli Zaretskii <[email-masked]>
Date: Sun, 29 Jan 2023 08:38:22 +0200

> From: "J.P." <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Sat, 28 Jan 2023 20:35:47 -0800
> 
> "J.P." <[email-masked]> writes:
> 
> > Eli Zaretskii <[email-masked]> writes:
> >
> >> Thanks, but I'm not sure I follow: coding-system's name should always
> >> be quoted, as it's a symbol.  So why things like the below:
> >>
> >>    (ert-with-temp-file myfile :coding raw-text)
> >>
> >> are relevant?  AFAIU, they are a mistake: raw-text should be quoted,
> >> as in 'raw-text.
> 
> If, as you say, an argument to `:coding' should only ever be quoted, e.g.,
> 
>   :coding 'raw-text
> 
> then `coding' will end up quoted as well, so something like this might
> be enough:

If you say so.  The `', stuff looks strange to me, but the backticks
in Emacs Lisp have always been black magic.

What we need to ensure that both

  :coding 'raw-text

and

  :coding some-coding-variable

do work as expected, including when coding-system-for-write's value is
a non-nil symbol of a coding-system.

Thanks.