gnu.gcj.runtime.StringBuffer bug ???
Olivier LF
olivier@zipworld.com.au
Sun Dec 16 02:34:00 GMT 2001
Does anybody get this?
public class A
{
public static void main(String[] args)
{
String a = "01";
String b = "234567890123456789012345678901234";
a = a + b;
System.out.println(a);
}
}
tournesol$ gcj --main=A A.java
tournesol$ ./a.out
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
at 0x401e9381: java.lang.Throwable.Throwable() (/usr/local/gcc/lib/libgcj.so.2)
at 0x401dd87f: java.lang.Exception.Exception() (/usr/local/gcc/lib/libgcj.so.2)
at 0x401e213f: java.lang.RuntimeException.RuntimeException() (/usr/local/gcc/lib/libgcj.so.2)
at 0x401de63f: java.lang.IndexOutOfBoundsException.IndexOutOfBoundsException() (/usr/local/gcc/lib/libgcj.so.2)
at 0x401d8a5f: java.lang.ArrayIndexOutOfBoundsException.ArrayIndexOutOfBoundsException() (/usr/local/gcc/lib/libgcj.so.2)
at 0x401cdee7: java.lang.String.getChars(int, int, char[], int) (/usr/local/gcc/lib/libgcj.so.2)
at 0x4024bdd5: gnu.gcj.runtime.StringBuffer.append(java.lang.String) (/usr/local/gcc/lib/libgcj.so.2)
at 0x08048d62: A::main(JArray<java::lang::String*>*) (/home/olivier/ws/jdom-b7/src/samples/A.java:7)
at 0x401c3e38: gnu.gcj.runtime.FirstThread.call_main() (/usr/local/gcc/lib/libgcj.so.2)
at 0x4024b618: gnu.gcj.runtime.FirstThread.run() (/usr/local/gcc/lib/libgcj.so.2)
at 0x401d0d2c: _Jv_ThreadRun(java.lang.Thread) (/usr/local/gcc/lib/libgcj.so.2)
at 0x401a8794: _Jv_RunMain(java.lang.Class, byte const, int, byte const, boolean) (/usr/local/gcc/lib/libgcj.so.2)
at 0x401a88ed: JvRunMain (/usr/local/gcc/lib/libgcj.so.2)
at 0x08048cd0: main (/tmp/ccojeypl.i:0)
at 0x4055b65f: __libc_start_main (/lib/libc.so.6)
at 0x08048ba9: _start (??:0)
If I remove one character from String "a" or "b", the problem evaporates!
This is with gcj:
tournesol:~$ gcj -v
Reading specs from /usr/local/gcc/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs
Reading specs from /usr/local/gcc/lib/gcc-lib/i686-pc-linux-gnu/3.1/../../../libgcj.spec
rename spec lib to liborig
Configured with: ../../program/cvs/gcc/configure --prefix=/usr/local/gcc --enable-shared --enable-threads=posix --enable-languages=c++,java
Thread model: posix
gcc version 3.1 20011211 (experimental)
Olivier
--
----------------------------------------------------------------------
Olivier Louchart-Fletcher
Email: olivier@zipworld.com.au
More information about the Java
mailing list