GCJ problem on RS/6000

David Edelsohn dje@watson.ibm.com
Fri Feb 8 15:08:00 GMT 2002

	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.  Other than convenience, I do not see any reason that GCJ and
G++ need to generate $ in symbol names.  GCJ could translate everything
rot13 or EBCDIC because the spec cannot impose requirements at that level.

	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.


More information about the Java mailing list