aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2001-11-16 23:39:34 +0000
committerTom Tromey <tromey@gcc.gnu.org>2001-11-16 23:39:34 +0000
commitb34e9a5b9fe8113747b0e67e7b76f1da41fcb466 (patch)
treebbbdaad345a9c135fc696285bbe17a0e22c058f5 /libjava
parente13c552619f4d03723b6056b15257c629ba92bb2 (diff)
downloadgcc-b34e9a5b9fe8113747b0e67e7b76f1da41fcb466.zip
gcc-b34e9a5b9fe8113747b0e67e7b76f1da41fcb466.tar.gz
gcc-b34e9a5b9fe8113747b0e67e7b76f1da41fcb466.tar.bz2
verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle case where field has primitive type.
* verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle case where field has primitive type. From-SVN: r47112
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog3
-rw-r--r--libjava/verify.cc4
2 files changed, 6 insertions, 1 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 2d7835b..6c9cf85 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 5dc90c6..5928ef5 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,