natClassLoader.cc (_Jv_FindArrayClass): Call _Jv_PrepareConstantTimeTables.
2000-03-09 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Call _Jv_PrepareConstantTimeTables. * java/lang/natClass.cc (_Jv_PrepareConstantTimeTables): Array classes should have an IDT, so don't return if klass is an array class. From-SVN: r32445
This commit is contained in:
parent
90e5a6dc40
commit
fb863f625e
@ -1,3 +1,11 @@
|
|||||||
|
2000-03-09 Bryce McKinlay <bryce@albatross.co.nz>
|
||||||
|
|
||||||
|
* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Call
|
||||||
|
_Jv_PrepareConstantTimeTables.
|
||||||
|
* java/lang/natClass.cc (_Jv_PrepareConstantTimeTables): Array
|
||||||
|
classes should have an IDT, so don't return if klass is an array
|
||||||
|
class.
|
||||||
|
|
||||||
2000-03-08 Tom Tromey <tromey@cygnus.com>
|
2000-03-08 Tom Tromey <tromey@cygnus.com>
|
||||||
|
|
||||||
* java/lang/reflect/natArray.cc (newInstance): Don't allow array
|
* java/lang/reflect/natArray.cc (newInstance): Don't allow array
|
||||||
|
@ -1005,8 +1005,7 @@ _Jv_PrepareConstantTimeTables (jclass klass)
|
|||||||
klass0 = klass0->superclass;
|
klass0 = klass0->superclass;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (klass->isArray ()
|
if (java::lang::reflect::Modifier::isAbstract (klass->accflags))
|
||||||
|| java::lang::reflect::Modifier::isAbstract (klass->accflags))
|
|
||||||
return;
|
return;
|
||||||
|
|
||||||
klass->idt =
|
klass->idt =
|
||||||
|
@ -584,6 +584,9 @@ _Jv_FindArrayClass (jclass element, java::lang::ClassLoader *loader)
|
|||||||
array_class->interfaces = interfaces;
|
array_class->interfaces = interfaces;
|
||||||
array_class->interface_count = 1;
|
array_class->interface_count = 1;
|
||||||
|
|
||||||
|
// Generate the interface dispatch table.
|
||||||
|
_Jv_PrepareConstantTimeTables (array_class);
|
||||||
|
|
||||||
// as per vmspec 5.3.3.2
|
// as per vmspec 5.3.3.2
|
||||||
array_class->accflags = element->accflags;
|
array_class->accflags = element->accflags;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user