[cfe-dev] How to deal with mangled names matching with extern "C" ones?

Stephan Bergmann sbergman at redhat.com
Tue Jul 7 04:20:47 PDT 2015


On 07/07/2015 12:26 PM, Andrey Bokhanko wrote:
> extern "C" void _ZN1TD1Ev();
>
> struct T {
>    ~T() {}
> };
>
> int main() {
>    _ZN1TD1Ev();
>    T t;
> }
>
> crashes clang.

[lex.name]/3.1: "Each identifier that contains a double underscore __ or 
begins with an underscore followed by an
uppercase letter is reserved to the implementation for any use."



More information about the cfe-dev mailing list