On 10/21/2015 03:23 PM, D. Hugh Redelmeier wrote:
Several of us don't want UTF-8 quotation marks in diagnostics in our
environment (Jove subshells). We'd like a way to turn them off. We don't
think that they are a bad idea but they are bad in our environment.
<https://gcc.gnu.org/gcc-4.0/changes.html>
English-language diagnostic messages will now use Unicode
quotation marks in UTF-8 locales. (Non-English messages
already used the quotes appropriate for the language in
previous releases.) If your terminal does not support UTF-8
but you are using a UTF-8 locale (such locales are the default
on many GNU/Linux systems) then you should set LC_CTYPE=C in
the environment to disable that locale. Programs that parse
diagnostics and expect plain ASCII English-language messages
should set LC_ALL=C. See Markus Kuhn's explanation of Unicode
quotation marks for more information.
This suggests that LC_CTYPE=C would do what we want: go back to ` and
' instead of 342\200\230 and \342\200\231.
That would go against the usual (i.e., POSIX) expected effect
of the environment variable. Specifically for GCC (or the c99
utility), POSIX requires LC_CTYPE to determine the locale used
to parse the input, and LC_MESSAGE to determine the locale of
diagnostic messages. If the c99 utility on your system doesn't
honor that I would recommend opening a bug.
Martin