This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: RFC: Lose use of $ and . in [cd]tor labels
- To: Jason Merrill <jason at redhat dot com>
- Subject: Re: RFC: Lose use of $ and . in [cd]tor labels
- From: Bryce McKinlay <bryce at waitaki dot otago dot ac dot nz>
- Date: Fri, 23 Mar 2001 16:22:50 +1200
- CC: Bryce McKinlay <bryce at albatross dot co dot nz>, gcc-patches at gcc dot gnu dot org, java at gcc dot gnu dot org
- References: <3AB8174F.AC842AA7@albatross.co.nz> <u9n1ad67v1.fsf@casey.cambridge.redhat.com>
Jason Merrill wrote:
> >>>>> "Bryce" == Bryce McKinlay <bryce@albatross.co.nz> writes:
>
> > Cool, thanks for doing that. Will this be going into the branch as
> > well? Currently it is impossible to pass a Java inner class to a
> > native c++ function due to differences in how the name manglers handle
> > '$', but getting rid of NO_DOLLAR_IN_LABEL ought to fix that.
>
> Would it be appropriate to change the Java frontend to stop using '$' in
> names that get mangled?
Not really: the use of "$" as a nested class namespace separator (and as a
marker for artificial fields/parameters) is a part of the Java bytecode
ABI. I imagine that doing this differently for native compiled Java would
be a PITA for various reasons.
The problem as I see it is that Java does honor the NO_DOLLAR_IN_LABEL and
mangles the '$' into something else, but C++ does not.
regards
[ bryce ]