David Holmes wrote:
:
In contrast, there are basically two Java compilers in general use
(javac and ecj)
and one is part of OpenJDK. Yet, the Java code does not have -Werror
enabled by default and there
are a mass of warnings there as a result.
I don't understand the point you are making here. Does javac even have
a -Werror? The bulk of javac warnings stem from legacy code being
compiled under newer compilers with new language features - the
resulting code is not erroneous hence only a warning is issued.
I think comparing C/C++ compiler warnings with javac compiler warnings
is like comparing apples and elephants.
Yes, javac has -Werror and the build has JAVAC_WARNINGS_FATAL to turn it
on. I just checked my recent build of the jdk7/jdk7 forest and javac
emits a total of 9 warnings (7 are unsafe usages of varargs methods and
the other two are unreachable catch clauses). That isn't a lot but javac
doesn't have many warnings enabled by default. A nice project for
someone would be to change the build to -Werror by default and gradually
crank up the warnings listed by -Xlint.
-Alan.