Mangling of new-expressions


I can’t figure out how to send mails to cxx-abi-dev these days, so I can only send them here.
Mangling of new-expressions is specified in the current ABI as:

::= [gs] nw <expression>* _ <type> <initializer>         # new (expr-list) type (init)

where initializer is

<initializer> ::= pi <expression>* E                                  # parenthesized initialization

This is nice for new T(1), but it doesn’t explain how to mangle new T{1}. What we need is something like

::= bi * E # braced initialization

I think this is unambiguous, but I’m not sure.


“bl” (for braced list) is probably better, as it doesn’t share a letter with “pi”.