Currently we error out if there is an assignment to a static final field (in a .class file) which is not in the class' static initializer. This constraint is apparently not enforced by the JDK -- meaning that we reject class files which run on the JDK. Class files like this are generated by retroweaver; see:
http://www.kallisti.net.nz/blog/2006/08/emusicj-019-released-now-with-less-mess/ and http://www.kallisti.net.nz/EMusicJ/HomePage -- Summary: assignment to static field not in class initializer Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: java AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: tromey at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28892