I'm glad you forwarded this announcement on to the Classpath list, Mark (yes,
I'm one of the main jikes hackers). The jikes project would appreciate
feedback on which new warnings are too pedantic to be on by default (for
example, naming-conventions); we enabled them this release because it is
easier to turn something off after feedback than to leave it off and people
never learn that it exists. Comments are welcome to jikes AT www-124.ibm.com.
I also recommend upgrading to jikes 1.19 when compiling classpath, because it
has fixed bugs that are present in previous releases, which may affect the
validity of Classpath code.
Mark Wielaard wrote:
Hi all,
The Jikes compiler hackers made a new release.
Some interesting new improvements:
Command line options have been improved.
Some pedantic warnings are controlled by name, so that you can
select which warnings you get (for example, not everyone wants
to know that 1L is preferred over 1l when writing a long
literal).
More switches have long names.
Default state of switches now printed with --help.
New switch -Xswitchcheck: Warn about fallthrough in switch
statements (compatible with javac).
New switch +Pnaming-convention: Warn about naming choices that
violate Java's naming conventions. This switch is currently ON
by default, +Pno-naming-convention will disable it for sites
that use a different naming convention.
New switch --noassert: Omits assertions from .class files (not
recommended for normal development, but provided to allow you to
do -source 1.4 -target 1.3).
Now supports -target 1.4.2 (compatible with javac, no changes
from -target 1.4 in emitted code).
Error text has been improved for method calls, to list the
parameter types the compiler is trying to match. Error text on
duplicate declarations tries harder to list the original
declaration.
Static checks have been added for a variety of common Java
mistakes, including empty catch and finally blocks, accidental
overloading of the equals method, classes implementing equals
but not hashCode (or the other way around), interfaces used as
enums, missing private constructors to prevent instantiation of
utility classes, overly-general throws clauses, public static
final array fields, returning null instead of a zero-length
array, and deviations from standard Java naming conventions.
See/Get it here:
http://www-124.ibm.com/developerworks/downloads/detail.php?group_id=10&what=rele&id=686
If you have time, please try it out on GNU Classpath and see if these
new warnings point out anything interesting. You want to add
+Pno-naming-convention since the new jikes otherwise generates lots and
lots of warnings.
Cheers,
Mark
--
Someday, I might put a cute statement here.
Eric Blake [EMAIL PROTECTED]
___
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath