Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
To: "'Tom Tromey'" <tromey@redhat.com>
Cc: <gdb-patches@sourceware.org>
Subject: RE: [RFA] Handle cygwin wchar_t specifics
Date: Sat, 16 Apr 2011 16:05:00 -0000	[thread overview]
Message-ID: <005101cbfc50$193136b0$4b93a410$@muller@ics-cnrs.unistra.fr> (raw)
In-Reply-To: <m3ei53cres.fsf@fleche.redhat.com>



> -----Message d'origine-----
> De : gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Tom Tromey
> Envoyé : vendredi 15 avril 2011 20:15
> À : Pierre Muller
> Cc : gdb-patches@sourceware.org
> Objet : Re: [RFA] Handle cygwin wchar_t specifics
> 
> >>>>> "Pierre" == Pierre Muller <pierre.muller@ics-cnrs.unistra.fr>
writes:
> 
> Pierre> because of this, GDB uses "UCS-4LE"
> Pierre> for the macro INTERMEDIATE_ENCODING on Cygwin
> Pierre> (while "wchar_t" it uses for mingw32, which works well).
> 
> Ok, I see the problem.  I thought this:
> 
>     /* If __STDC_ISO_10646__ is defined, then the host wchar_t is UCS-4.
> 
> But this is not true!  For some values of __STDC_ISO_10646__, a 2 byte
> wide character type suffices.  In particular, Cygwin's value of 200305
> means that it corresponds to Unicode 4.0.0:
> 
>     http://www.unicode.org/versions/components-4.0.0.html
> 
> I think this might be a Cygwin bug, but it is pretty hard to wade
> through the ISO / Unicode differences and other assorted standardese to
> see.  (The reason I think it might be a bug is that Unicode 4.0.0
> defines some characters > 0xFFFF.)
> 
> Anyway, it doesn't matter if this is a Cygwin bug, since GDB's
> assumption here is wrong anyway.
OK. 
> Pierre> The patch below fixes this by
> Pierre> explicitly setting the UCS size to two for Windows targets.
> 
> I think in the __STDC_ISO_10646__ case, we should just explicitly use
> sizeof (wchar_t) somewhere to choose the intermediate encoding.  I think
> this will be more robust than testing some host define.

  Yes, but the problem is that it is not possible to use sizeof
inside a #if conditions :(
 
> Pierre> +#define wchar_size  (&(((wchar_t) (0)) + 1) - &((char *) 0))
> 
> This doesn't seem to be used.

  I googled around to see if there is a workaround to this
limitation of not being able to use sizeof inside conditionals
and then forgot to remove it...

  Do you know of any way to get the size of wchar_t?
  I suspect we will need to add this to the configure scripts...
But I am still very bad on that part.

  Help most welcome,

Pierre


  reply	other threads:[~2011-04-16 16:05 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <5928.31498147479$1302882967@news.gmane.org>
2011-04-15 18:16 ` Tom Tromey
2011-04-16 16:05   ` Pierre Muller [this message]
2011-04-16 16:25     ` Jan Kratochvil
2011-04-16 21:29       ` [RFA-v2] " Pierre Muller
2011-04-16 22:35         ` Jan Kratochvil
     [not found]       ` <000001cbfc7d$3f67f440$be37dcc0$%muller@ics-cnrs.unistra.fr>
2011-04-17  2:55         ` Eli Zaretskii
2011-04-18 10:36           ` Pierre Muller
     [not found]           ` <00a801cbfdb4$551214a0$ff363de0$%muller@ics-cnrs.unistra.fr>
2011-04-18 10:57             ` Eli Zaretskii
2011-04-18 15:14           ` [RFA-v3] " Pierre Muller
     [not found]           ` <21014.6501930014$1303139687@news.gmane.org>
2011-04-18 17:18             ` Tom Tromey
2011-04-19  9:18               ` [RFC-v4] " Pierre Muller
     [not found]               ` <004f01cbfe72$adddeb40$0999c1c0$%muller@ics-cnrs.unistra.fr>
2011-04-19  9:34                 ` Eli Zaretskii
     [not found]               ` <34716.7311156683$1303204711@news.gmane.org>
2011-04-19 13:19                 ` Tom Tromey
2011-04-19 13:56                   ` [RFC-v5] " Pierre Muller
     [not found]                   ` <16656.7281041809$1303221408@news.gmane.org>
2011-04-19 17:50                     ` Tom Tromey
2011-04-20  7:59                       ` Pierre Muller
2011-04-20 21:08                         ` Pedro Alves
2011-04-21  6:57                           ` Pierre Muller
2011-04-21  7:17                             ` [RFA-v6] " Pierre Muller
2011-04-21  9:02                               ` Pierre Muller
     [not found]                               ` <24274.3825926029$1303376558@news.gmane.org>
2011-04-21 14:14                                 ` Tom Tromey
2011-04-21 14:27                                   ` Pierre Muller
     [not found]                                   ` <4691.37052209607$1303396084@news.gmane.org>
2011-04-21 15:06                                     ` Tom Tromey
2011-04-21 16:39                                       ` Pierre Muller
     [not found]                                       ` <25400.1310132027$1303403986@news.gmane.org>
2011-04-21 20:25                                         ` Tom Tromey
2011-04-21 21:18                                           ` 7.3 commit " Pierre Muller
     [not found]                           ` <15550.7422438406$1303369059@news.gmane.org>
2011-04-21 14:10                             ` [RFC-v5] " Tom Tromey
     [not found]                       ` <420.768399681215$1303286406@news.gmane.org>
2011-04-20 20:21                         ` Tom Tromey
2011-04-16 21:24     ` [RFA] " Tom Tromey
2011-04-18 20:07   ` Corinna Vinschen
2011-04-15 15:55 Pierre Muller

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='005101cbfc50$193136b0$4b93a410$@muller@ics-cnrs.unistra.fr' \
    --to=pierre.muller@ics-cnrs.unistra.fr \
    --cc=gdb-patches@sourceware.org \
    --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