Commit fb863f62 by Bryce McKinlay Committed by Bryce McKinlay

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
parent 90e5a6dc
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) ...@@ -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) ...@@ -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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment