*** TBD for Jikes future releases: It is not clear if iconv is only a little broken or totally busted. (it was totally busted by glibc2.2 as compared to glibc 2.1.x which was under development churn, some quick hackery was done for 1.14, I think I got it working on all platforms, but we'll have to wait and see... also working on a major streaming rewrite for 1.15... actually hoped for 1.14 but found more stuff broken at every turn.) Also, would it be better to convert a bunch of chars in a buffer instead of doing them one at a time? (it would, this is part of the stream changes cabbey was working on before he lost his raid, just got access back, and will continue to investigate.) Use new casting operations instead of C style casts, need to add autoconf check too. Casting up from A to B will be checked if compiler support RTTI. This could catch nasty cast errors in Jikes. http://www.sns.ias.edu/Main/computing/compilers_html/c-plusplus/c++_ug/Cast.new.doc.html const_cast 'c' same as (int) 'c' dynamic_cast(ARG) A -> B B* bp = new B(): A* ap = bp; assert( ap != NULL ); B* bp2 = dynamic_cast(ap); assert( bp2 != NULL ); (I think this is done.) Fix the problems with @files demonstrated by non-jls-argument-expansion tests in Jacks. This would be significantly easier if during input conversion, \r \r\n and \n where always converted into a single \n in the source code. This is currently implemented in LexStream but it needs to be done in a more general stream class not one that does lexing. That way, it could also be used in the Option class to process @ files. (FIXED but reverted since it caused other problems, which remain uninvestigated ) If a zip file can not be found, the error message printed should say that instead of saying it is "invalid" (implies it was corrupted). "D:\File\with\wrong\classpath\entry\rt.jar is not a valid zip file" (BAD) "D:\File\with\wrong\classpath\entry\rt.jar not found" (GOOD) *** Things that have not been done yet but should be done at some point.... remove code from header files. (please) Add a configure check to make sure folks do not attempt to build under Cygwin with the -mno-cygwin flag. (Will not fix in this release) Add the src/m4 subdir contents to the .tar file. (Don't fix, people will not be able to regenerate a working ./configure with autoconf 2.13 anyway, so this can be delayed) *** TBD at some point: Add test cases for the typos in error.cpp that were fixed just before the 1.12 release. In fact, it would be nice if we could generate a test case for every error condition and test the compiler output. Check into the fix for bug 102, we reverted it because of crashes, but it would be nice to look into the fix again. Drop OLDCSO support from the compiler, but not untill after major public discusion... there are a number of major users who swear by this feature as much as some of us swore *at* it. Stop and smell the roses. Why does jikes treat the catching of exceptions that were not thrown in the try block as a warning condition. Should these not be errors? A misleading error from Jikes: % cat unicode_1.java public class unicode_1 { void check(int num, char val) { if (num != (int) val) { System.err.println("error: mismatch for " + num); } } public static void main(String[] argv) { check(0, '\u0000'); check(0, '\u0001'); } } Error from Javac: unicode_1.java:9: Can't make static reference to method void check(int, char) in class unicode_1. check(0, '\u0000'); ^ unicode_1.java:10: Can't make static reference to method void check(int, char) in class unicode_1. check(0, '\u0001'); ^ 2 errors Error from Jikes: Found 2 semantic errors compiling "unicode_1.java": 9. check(0, ' 10. check(0, '`'); <-----------> *** Error: The method "check" does not denote a class method. Is it just me, or is this error message really misleading? The Sun error message seems a whole lot better.