corda/classpath/java/lang
Joel Dice 3d49173b0b avoid inifinite recursion if java.lang.Object is missing; refactoring
When trying to create an array class, we try to resolve
java.lang.Object so we can use its vtable in the array class.
However, if Object is missing, we'll try to create and throw a
ClassNotFoundException, which requires creating an array to store the
stack trace, which requires creating an array class, which requires
resolving Object, etc..  This commit short-circuits this process by
telling resolveClass not to create and throw an exception if it can't
find Object.

While doing the above work, I noticed that the implementations of
Classpath::makeThrowable in classpath-avian.cpp and
classpath-openjdk.cpp were identical, so I made makeThrowable a
top-level function.

Finally, I discovered that Thread.setDaemon can only be called before
the target thread has been started, which allowed me to simplify the
code to track daemon threads in the VM.
2010-12-09 19:38:12 -07:00
..
annotation support runtime-visible annotations and java.lang.reflect.Proxy 2009-09-18 18:01:54 -06:00
ref update copyright years 2010-12-05 20:21:09 -07:00
reflect update copyright years 2010-12-05 20:21:09 -07:00
Appendable.java add classes and methods needed for GNU Classpath compatibility 2009-06-02 17:14:38 -06:00
ArithmeticException.java implement ArithmeticException 2008-03-21 13:48:42 -06:00
ArrayIndexOutOfBoundsException.java more progress towards GNU Classpath compatibility 2009-06-03 16:17:55 -06:00
ArrayStoreException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
AssertionError.java Added java.lang.AssertionError 2008-08-05 14:06:37 -06:00
Boolean.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Byte.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Character.java update copyright years 2009-12-02 19:08:29 -07:00
CharSequence.java Tweaked code indentation and formatting to match existing style 2008-07-03 10:49:08 -06:00
Class.java update copyright years 2010-12-05 20:21:09 -07:00
ClassCastException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
ClassLoader.java update copyright years 2010-12-05 20:21:09 -07:00
ClassNotFoundException.java more progress towards GNU Classpath compatibility 2009-06-03 16:17:55 -06:00
Cloneable.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
CloneNotSupportedException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Comparable.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Double.java Support for floating point conversions and tests 2008-02-28 08:35:16 -07:00
Enum.java update copyright years 2010-12-05 20:21:09 -07:00
Error.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Exception.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
ExceptionInInitializerError.java more progress towards GNU Classpath compatibility 2009-06-03 16:17:55 -06:00
Float.java Support for floating point conversions and tests 2008-02-28 08:35:16 -07:00
IllegalAccessError.java add error classes 2010-08-16 09:23:48 -06:00
IllegalAccessException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
IllegalArgumentException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
IllegalMonitorStateException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
IllegalStateException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
IllegalThreadStateException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
IncompatibleClassChangeError.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
IndexOutOfBoundsException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
InheritableThreadLocal.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
InstantiationError.java add error classes 2010-08-16 09:23:48 -06:00
InstantiationException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Integer.java Add Integer valueOf(String) method 2008-10-08 13:51:19 -06:00
InterruptedException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Iterable.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
LinkageError.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Long.java update copyright years 2010-12-05 20:21:09 -07:00
Math.java implement java.util.Random and java.lang.Math.random in Java 2008-03-20 18:39:25 -06:00
NegativeArraySizeException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NoClassDefFoundError.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NoSuchFieldError.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NoSuchFieldException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NoSuchMethodError.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NoSuchMethodException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NullPointerException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Number.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
NumberFormatException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Object.java update copyright years 2010-12-05 20:21:09 -07:00
OutOfMemoryError.java update copyright years 2010-12-05 20:21:09 -07:00
Override.java prepend copyright notice and license to source files 2008-08-05 14:15:10 -06:00
Package.java update copyright years 2009-12-02 19:08:29 -07:00
Process.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Runnable.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Runtime.java update copyright years 2010-12-05 20:21:09 -07:00
RuntimeException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
SecurityException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
SecurityManager.java dummy SecurityManager and related classes added 2010-09-11 21:23:46 +02:00
Short.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
StackOverflowError.java more progress towards GNU Classpath compatibility 2009-06-03 16:17:55 -06:00
StackTraceElement.java update copyright years 2010-12-05 20:21:09 -07:00
String.java update copyright years 2010-12-05 20:21:09 -07:00
StringBuffer.java update copyright years 2009-12-02 19:08:29 -07:00
StringBuilder.java update copyright years 2009-12-02 19:08:29 -07:00
SuppressWarnings.java prepend copyright notice and license to source files 2008-08-05 14:15:10 -06:00
System.java update copyright years 2010-12-05 20:21:09 -07:00
Thread.java avoid inifinite recursion if java.lang.Object is missing; refactoring 2010-12-09 19:38:12 -07:00
ThreadDeath.java more progress towards GNU Classpath compatibility 2009-06-03 16:17:55 -06:00
ThreadGroup.java update copyright years 2010-12-05 20:21:09 -07:00
ThreadLocal.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
Throwable.java update copyright years 2009-12-02 19:08:29 -07:00
UnsatisfiedLinkError.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
UnsupportedOperationException.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00
VirtualMachineError.java more progress towards GNU Classpath compatibility 2009-06-03 16:17:55 -06:00
Void.java prepend copyright notice and license to all source files; add license.txt and readme.txt 2008-02-19 11:06:52 -07:00