summaryrefslogtreecommitdiff
path: root/libjava/defineclass.cc
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2005-06-15 19:11:43 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2005-06-15 19:11:43 +0000
commitbeb3619b397cda4a2bc36d3b926b653fc67627fd (patch)
treed75a57626d585261ba5d3eae3b74954aa5b37586 /libjava/defineclass.cc
parentc8c2d11079530635a3bc051c8a6ef73dd2190d29 (diff)
downloadgcc-beb3619b397cda4a2bc36d3b926b653fc67627fd.tar.gz
gcc/java/:
PR libgcj/21906: * class.c (make_method_value): Use soft_abstractmethod_node for abstract method. * java-tree.h (soft_abstractmethod_node): New define. (JTI_SOFT_ABSTRACTMETHOD_NODE): New enum constant. * decl.c (java_init_decl_processing): Initialize soft_abstractmethod_node. libjava/: PR libgcj/21906: * defineclass.cc (handleMethodsEnd): Set ncode for abstract methods. * include/jvm.h (_Jv_ThrowAbstractMethodError): Declare. * link.cc (_Jv_ThrowAbstractMethodError): Renamed. No longer static. (append_partial_itable): Use it. (set_vtable_entries): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100992 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/defineclass.cc')
-rw-r--r--libjava/defineclass.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/libjava/defineclass.cc b/libjava/defineclass.cc
index 111b1fb2ca2..7564957dc43 100644
--- a/libjava/defineclass.cc
+++ b/libjava/defineclass.cc
@@ -1288,7 +1288,7 @@ void _Jv_ClassReader::handleMethod
throw_class_format_error ("erroneous method access flags");
// FIXME: JVM spec S4.6: if ABSTRACT modifier is set, verify other
- // flags are not set. Verify flags for interface methods. Verifiy
+ // flags are not set. Verify flags for interface methods. Verify
// modifiers for initializers.
}
}
@@ -1378,6 +1378,7 @@ void _Jv_ClassReader::handleMethodsEnd ()
{
if (def_interp->interpreted_methods[i] != 0)
throw_class_format_error ("code provided for abstract method");
+ method->ncode = (void *) &_Jv_ThrowAbstractMethodError;
}
else
{