Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Yao Qi <yao@codesourcery.com>
To: Pedro Alves <palves@redhat.com>
Cc: Tom Tromey <tromey@redhat.com>,
	Joel Brobecker <brobecker@adacore.com>,
	<gdb-patches@sourceware.org>
Subject: Re: [ping]  [PATCH] Different outputs affected by locale
Date: Mon, 09 Jun 2014 08:37:00 -0000	[thread overview]
Message-ID: <539571C6.40605@codesourcery.com> (raw)
In-Reply-To: <539042A2.4050409@redhat.com>

On 06/05/2014 06:12 PM, Pedro Alves wrote:
> On 06/05/2014 10:56 AM, Yao Qi wrote:
>> On 06/05/2014 04:58 PM, Pedro Alves wrote:
> 
>>>>>>> Does testing GDB manually directly on a Windows console show the same
>>>>>>> issue?
>>>>>
>>>>> Yes, here is the output I got on Windows 7 (running gdb.exe in Windows console).
>>>>> However, I didn't investigate why 'ó' is printed.
>>> But was that with LC_CTYPE set to C?
>>
>> I don't know how check LC_CTYPE on Windows. :(
> 
> Try "set", and "set /?".
> 

LC_CTYPE isn't set on the Windows machine I am using.  set LC_CTYPE=C,
but the output is unchanged.

I dive into locale stuff, and find something more, in
main.c:captured_main, gdb does

#if defined (HAVE_SETLOCALE)
  setlocale (LC_CTYPE, "");
#endif

the man page of setlocale says

If locale is "", each part of the locale that should be modified is set
according to the environment variables.

That is why we can pass env var to change gdb's locale.

However, looks setlocale on Windows behaves differently when locale is
"".  The msdn about setlocale
<http://msdn.microsoft.com/en-us/library/x99tb11d.aspx> says "If locale
points to an empty string, the locale is the implementation-defined
native environment.", but it doesn't say much on the
"implementation-defined native environment".  The following example
in the same page gives me some hints,

setlocale( LC_ALL, "" );
Sets the locale to the default, which is the user-default ANSI code page
obtained from the operating system.

As far as I can see, windows doesn't consider any env var with
setlocale(FOO, "").  If I am correct, we can't set gdb's locale by means
of setting env var, instead, we have to match all the possibilities in
the testcase.  WDYT?

-- 
Yao (齐尧)


  parent reply	other threads:[~2014-06-09  8:37 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-27 12:13 Yao Qi
2014-06-04  5:32 ` [ping] " Yao Qi
2014-06-04 12:47   ` Joel Brobecker
2014-06-04 13:21     ` Yao Qi
2014-06-04 13:52       ` Joel Brobecker
2014-06-04 20:15       ` Tom Tromey
2014-06-04 20:23         ` Pedro Alves
2014-06-05  3:31           ` Yao Qi
2014-06-05  8:58             ` Pedro Alves
2014-06-05  9:58               ` Yao Qi
2014-06-05 10:12                 ` Pedro Alves
2014-06-05 15:04                   ` Eli Zaretskii
2014-06-09  8:37                   ` Yao Qi [this message]
2014-06-09 10:11                     ` Pedro Alves
2014-06-11  2:22                       ` Yao Qi
2014-06-11 16:23                         ` Eli Zaretskii
2014-06-12  0:48                           ` Yao Qi
2014-06-12  2:47                             ` Eli Zaretskii
2014-06-12  7:04                               ` Yao Qi
2014-06-12 17:03                                 ` Eli Zaretskii
2014-06-17  1:03                                   ` Yao Qi
2014-06-12 11:36                         ` Pedro Alves
2014-06-12 14:39                           ` Yao Qi
2014-06-12 17:07                             ` Eli Zaretskii
2014-06-12 17:23                             ` Pedro Alves
2014-06-12 17:48                               ` Eli Zaretskii
2014-06-17  3:46                               ` Yao Qi
2014-06-17 10:03                                 ` Pedro Alves
2014-06-17 11:39                                   ` Yao Qi
2014-06-12 17:09                           ` Eli Zaretskii
2014-06-12 17:27                             ` Pedro Alves
2014-06-12 17:50                               ` Eli Zaretskii
2014-06-12 18:06                                 ` Pedro Alves
2014-06-12 18:35                                   ` Eli Zaretskii
2014-06-16 13:58                                     ` Pedro Alves
2014-06-16 15:40                                       ` Eli Zaretskii
2014-06-16 16:23                                         ` Pedro Alves
2014-06-05 10:27                 ` Pedro Alves
2014-06-05 14:47             ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=539571C6.40605@codesourcery.com \
    --to=yao@codesourcery.com \
    --cc=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    --cc=palves@redhat.com \
    --cc=tromey@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox