Actions

icon Post
text/html Subscribe
text/html Unsubscribe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [cxx-abi-dev] C++0x: mangling of char16_t and char32_t


  • To: Sean Perry <perry@xxxxxxxxxx>
  • Subject: Re: [cxx-abi-dev] C++0x: mangling of char16_t and char32_t
  • From: PremAnand M Rao <premanand.rao@xxxxxx>
  • Date: Wed, 26 Mar 2008 10:33:16 -0400

My reading of 3.9.1 para 5 says that they are distinct types, even though the underlying representation for wchar_t might be the same as the underlying representation for one of char16_t or char32_t. So they must be mangled differently.

PremAnand.

Sean Perry wrote:
What are the overload rules for char32_t and wchar_t?  If foo(char32_t) and
foo(wchar_t) are unique then you can't use the same mangling.
--
Sean Perry
Compiler Development
IBM Canada Lab
(905)-413-6031 (tie 313-6031), fax (905)-413-4839




             Dennis Handly
             <dhandly@xxxxxxxx
             om>                                                        To
                                       cxx-abi-dev@xxxxxxxxxxxxxxxx,
             03/25/2008 10:29          doug.gregor@xxxxxxxxx
             PM                                                         cc

                                                                   Subject
                                       Re:  [cxx-abi-dev] C++0x: mangling
                                       of char16_t and char32_t










From: "Doug Gregor" <doug.gregor@xxxxxxxxx>
We don't have a mangling for the C++0x char16_t or char32_t types. It
has been suggested that we use 'k' for char16_t and 'q' for char32_t.
Does that seem reasonable?

I was thinking for HP-UX, char32_t would be the same as wchar_t.
If we need a mangling that treats it differently, we probably need to
add some rationale words saying why we have w, c, a, h and now k/q.

From: David Vandevoorde <daveed@xxxxxxx>
Fine by me, although I'd prefer something a little more "mnemonical";
maybe W2 and W4.

I would think we would want to use something like W# just so we preserve
the one letter combinations.