This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: Java: Don't mangle "$" characters in identifier names
- To: Bryce McKinlay <bryce at albatross dot co dot nz>
- Subject: Re: Java: Don't mangle "$" characters in identifier names
- From: Tom Tromey <tromey at redhat dot com>
- Date: 12 Mar 2001 10:45:56 -0700
- Cc: gcc-patches at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- References: <3AAC4A74.CE98E00@albatross.co.nz>
- Reply-To: tromey at redhat dot com
>>>>> "Bryce" == Bryce McKinlay <bryce@albatross.co.nz> writes:
Bryce> This patch changes GCJ to not do this mangling, matching the
Bryce> behaviour of C++. If the C++ compiler is correct here, and "$"
Bryce> should never be mangled, then the $ code should be removed
Bryce> entirely from GCJ. Can anyone comment on this?
NO_DOLLAR_IN_LABEL means that the assembler can't accept $ in a
label. If the C++ compiler ignores this then I imagine it will simply
fail to work on such platforms.
Here's what tm.texi says:
@findex NO_DOLLAR_IN_LABEL
@item NO_DOLLAR_IN_LABEL
Define this macro if the assembler does not accept the character
@samp{$} in label names. By default constructors and destructors in
G++ have @samp{$} in the identifiers. If this macro is defined,
@samp{.} is used instead.
This is unfortunate since using `.' instead probably isn't what we
want. But perhaps the final sentence here is simply out of date.
I think updating the C++ compiler is the right approach.
Tom