On 19 February 2015 at 23:44, Dennis Handly <[email protected]> wrote:

> >From: David Majnemer <[email protected]>
> >It seems that the ABI has no means to mangle the contents of string
> constants.
>
> Why is that needed?
>

See the linked message:
http://sourcerytools.com/pipermail/cxx-abi-dev/2012-January/000032.html

This is about string literals in signatures, where we need to mangle the
contents because the contents can be observed through evaluation of a
value-dependent constant expression.

The current scheme is to just number the constants in order.
> And that handles both strings and wide strings.
> And by the ODR rule the inlines must be the same.
>
> >the proposal doesn't specify how to mangle UTF-16/UTF-32 string literals.
> >Such a mangling would have to specify the endianness used to encode the
> code
> >points.
>
> Again why?  We just need mangling to make sure they match addresses.
> Do we really to check code enforcement?
> We don't do for narrow vs wide.
>
> >I am trying to figure out how we should mangle the string constant in:
> >struct X {
> >  static constexpr const char *p = "foo";
> >};
>
> I thought this was defined?


Apparently not.
_______________________________________________
cxx-abi-dev mailing list
[email protected]
http://sourcerytools.com/cgi-bin/mailman/listinfo/cxx-abi-dev

Reply via email to