[cxx-abi-dev] Mangling braced-init-list

Jason Merrill jason at redhat.com
Thu Jan 5 20:20:27 UTC 2012


On 01/03/2012 02:24 PM, Jason Merrill wrote:
> This doesn't seem to have been discussed yet, and GCC to date has just
> rejected any testcase that required such mangling. It seems
> straightforward to just represent it as a list of expressions:
>
> <expression> ::= il <expression>* E
>
> For a typed list such as T{42}, I first thought that it could be
> represented as a conversion (cv) around the above, but that would be
> ambiguous with T({42}), so I think it's better to give that form its own
> code,
>
> <expression> ::= tl <type> <expression>* E

And also add the first form to <initializer>, so

// _Z2f1IiEDTnw_T_ilEES0_
template <class T> auto f1(T t) -> decltype(new T{});

int main()
{
   f1(0);
}



More information about the cxx-abi-dev mailing list