Eli Zaretskii 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. I shouldn't have included the keyword argument; it only muddies the waters here. The correctness of the output, what we expect to see in the expanded form, is of primary concern. > Is the problem that a coding-system symbol is not quoted? When the value of `coding-system-for-write' is non-nil, only quoting it twice survives expansion: (setq coding-system-for-write ''raw-text) (ert-with-temp-file myfile) -> (let* ((coding-system-for-write 'raw-text) ...) Otherwise, we get a free variable: (setq coding-system-for-write 'raw-text) (ert-with-temp-file myfile) -> (let* ((coding-system-for-write raw-text) ...) BTW, I'm not setting `coding-system-for-write' myself. That's being done by the diagnostic tool.