diff options
Diffstat (limited to 'libjava')
| -rw-r--r-- | libjava/ChangeLog | 3 | ||||
| -rw-r--r-- | libjava/verify.cc | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 2d7835b6710..6c9cf85bf9f 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,8 @@ 2001-11-16 Tom Tromey <tromey@redhat.com> + * verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle + case where field has primitive type. + * verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): New method. (type::compatible): Use it. diff --git a/libjava/verify.cc b/libjava/verify.cc index 5dc90c6ec3d..5928ef50943 100644 --- a/libjava/verify.cc +++ b/libjava/verify.cc @@ -1545,7 +1545,9 @@ private: &name, &field_type); if (class_type) *class_type = ct; - return type (field_type); + if (field_type->data[0] == '[' || field_type->data[0] == 'L') + return type (field_type); + return get_type_val_for_signature (field_type->data[0]); } type check_method_constant (int index, bool is_interface, |

