Ross Ridge wrote: > The correct fix is for GCC not to intentionally choose to rely on > implementation defined behaviour when using the "C" locale. GCC can't > portably assume any other locale exists, but can portibly and easily > choose to get consistant output when using the "C" locale.
Joseph S. Myers writes: >GCC is behaving properly according to the user's locale (representing >English-language diagnostics as best it can - remember that ASCII does not >allow good representation of English in all cases). This is an issue of style, but as I far as I'm concerned using these fancy quotes in English locales is unnecessary and unhelpful. >The problem here is not a bug in the compiler proper, it is an issue >with how to test the compiler portably - that is, how the testsuite can >portably set a locale with English language and ASCII character set in >order to test the output the compiler gives in such a locale. It's a design flaw in GCC. The "C" locale is the only locale that GCC can use to reliably and portably get consistant output across all ASCII systems and so should be the locale used to achieve consistant output. GCC can simply choose to restrict it's output to ASCII. It's not in any way being forced by POSIX to output non-ASCII characters, or for that matter to treat the "C" locale as an English locale. Ross Ridge