3 * libgcj now includes a bytecode interpreter. If a compiled version of a class
4 is not found in the application binary or linked shared libraries, the
5 class loader will search for a bytecode version in the CLASSPATH and execute
6 it using the interpreter. A new front end that behaves like the traditional
7 `java' command is provided: `gij'.
9 * Support for specifying java system properties. Properties can either be set
10 at runtime via the GCJ_PROPERTIES environment variable in the format
11 "<name>=<value> ..."'; or can be compiled into an application binary using
14 * Support for setjmp/longjmp (sjlj) exception handling has been added, as an
15 alternative to the existing range-table based mechanism. sljl is the default
16 on non-sparc, non-x86 targets, or can be specified with the
17 `--enable-sjlj-exceptions' configure parameter.
19 * Complete JDK 1.1 reflection support, including invocation.
21 * Throwable.printStackTrace() has been implemented.
23 * Runtime.loadLibrary() has been implemented. In addition, Class.forName()
24 will try to load a series of shared objects in order to find the requested
25 class. If a class `gnu.quux.whatever' is requested, libgcj will first look
26 for `gnu-quux-whatever.so', then `gnu-quux.so', and finally `gnu.so'.
28 * A pure-java implementation of java.math.BigInteger.
32 * First public release