Another mangling issue
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Another mangling issue
- To: cxx-abi@xxxxxxxxxxxx
- Subject: Another mangling issue
- From: Matt Austern <austern@xxxxxxx>
- Date: Mon, 27 Mar 2000 16:11:45 -0800 (PST)
We discussed this at the very end of last week's meeting, but we
should probably also raise it on the mailing list.
The mangling for X::f() (a member function with no arguments, with
arbitrary result type) is _ZN1X1fE. The mangling for X::f (a
static member variable, of arbitrary type) is also _ZN1X1fE.
This has two disadvantages. First, a demangler doesn't know what to
do with this mangled name. Should it be demangled as a function, or
as a variable? Second, we fail to detect some easily detectable ODR
violations.
I propose that we change the mangling for a function of no arguments,
and that we mangle it as a function with a single argument of type
void. Under this proposal _ZN1X1fE would unambiguously demangle
as X::f, and the mangling for X::f() would be _ZN1X1fEv.
--Matt