Object.h (throwNoSuchMethodError): New method.
2005-12-08 Andrew Haley <aph@redhat.com> * java/lang/Object.h (throwNoSuchMethodError): New method. * java/lang/Object.java (throwNoSuchMethodError): New method. * include/jvm.h (_Jv_ThrowNoSuchFieldError): Declare. * link.cc (_Jv_ThrowNoSuchFieldError): New. (link_symbol_table): Don't throw a NoSuchFieldError if a field is missing. Instead, set the otable entry to zero. (link_symbol_table): If we don't find a nonstatic method, insert the vtable offset of Object.throwNoSuchMethodError() into the otable. From-SVN: r108231
This commit is contained in:
parent
e00388458d
commit
9edd0f5e69
5 changed files with 85 additions and 18 deletions
|
@ -506,6 +506,14 @@ public class Object
|
|||
// completeness (some day we'll be able to auto-generate Object.h).
|
||||
private final native void sync_init();
|
||||
|
||||
// If we fail to find a method at class loading time we put the
|
||||
// vtable index of this method in its place: any attempt to call
|
||||
// that method will result in an error.
|
||||
void throwNoSuchMethodError()
|
||||
{
|
||||
throw new NoSuchMethodError("in " + getClass());
|
||||
}
|
||||
|
||||
// Note that we don't mention the sync_info field here. If we do,
|
||||
// jc1 will not work correctly.
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue