I've found an amibiguity in the mangling grammar I submitted a while back. To correct it, use this production for <encoding>: <encoding> ::= <function name> <bare-function-type> ::= <data name> ::= <special-name> # see below Note that an <encoding> is not a <substitution>. Regards Alex Samuel CodeSourcery LLC