The file libjava/libltdl/ltdl.c come with gcc-java-3.4.5 is out of date. it has a memory leak bug. Invoking Class.forName(String) against no exisiting class in the default package (e.g., Class.forName("Foo")) hits this bug and leaks some native memory.
Libtool version 1.5.12 (dated Feb 2005) or later contains a fix to the bug, dated 2005-01-21 in the libtool's Changelog. Importing recent libltdl from libtool should solve the problem. -- Summary: Old libltdl may cause memory leak in Class.forName() Product: gcc Version: 3.4.5 Status: UNCONFIRMED Severity: major Priority: P3 Component: libgcj AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: fexx at fexx dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26441