GCJ problem on RS/6000

Joe Buck jbuck@synopsys.COM
Fri Feb 8 15:17:00 GMT 2002


David Edelsohn writes:

> 	With a little more investigating, it appears that Sun's Java
> Compiler set the precedent of using $ as the separator for inner classes.
> I guess this is now part of some spec / ABI.  But that only defines the
> names of symbols in class files, not symbols in object files and
> executables.

Right.  And when we distinguish between the two, we are doing name
mangling.

> 	Allowing $ in identifiers is one thing, but blindly copying them
> through to assembly files when NO_DOLLAR_IN_LABEL is defined creates big
> problems for portability of GCC, G++ and GCJ.

What we need is an agreed-apon way to handle the case where a $ is in
a symbol an NO_DOLLAR_IN_LABEL is defined, ideally that is agreeable to
C++ and Java maintainers.  This extension won't break the C++ ABI because
it doesn't affect standard code.





More information about the Java mailing list