When running the attached testcase gcj 4.1 throws a StringIndexOutOfBoundsException instead of ClassNotFoundException. GNU classpath 0.20 is not affected as jamvm 1.4.2 and cacao 0.94 and kaffe 1.1.7rc1 throw the correct exception.
Created attachment 10781 [details] testcase
I added a mauve test for this and some other cases. gcj fails a couple of them because it tries to handle array classes specially through loadClassFromSig(). See gnu.testlet.java.lang.ClassLoader.loadClass in Mauve.
Testing a patch.
Subject: Bug 26103 Author: tromey Date: Tue Mar 7 21:34:46 2006 New Revision: 111819 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=111819 Log: PR libgcj/26103: * java/lang/ClassLoader.java (loadClass): Don't throw StringIndexOutOfBoundsException if name is empty. * java/lang/natClassLoader.cc (loadClassFromSig): Throw exception if class not found. Modified: branches/gcc-4_1-branch/libjava/ChangeLog branches/gcc-4_1-branch/libjava/java/lang/ClassLoader.java branches/gcc-4_1-branch/libjava/java/lang/natClassLoader.cc
Subject: Bug 26103 Author: tromey Date: Tue Mar 7 21:39:44 2006 New Revision: 111820 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=111820 Log: PR libgcj/26103: * java/lang/ClassLoader.java (loadClass): Don't throw StringIndexOutOfBoundsException if name is empty. * java/lang/natClassLoader.cc (loadClassFromSig): Throw exception if class not found. Modified: trunk/libjava/ChangeLog trunk/libjava/java/lang/ClassLoader.java trunk/libjava/java/lang/natClassLoader.cc
Fix checked in.