aboutsummaryrefslogtreecommitdiff
path: root/libjava/verify.cc
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>2002-01-24 12:02:21 -0800
committerPer Bothner <bothner@gcc.gnu.org>2002-01-24 12:02:21 -0800
commit7ac20fe4e73b1beccfc11eb8275ab25306d5aeb5 (patch)
tree943fcca31544158694ae99a6a8333a741cc43731 /libjava/verify.cc
parent9bf25b09102dbb85b2d54b6ab1e8d8d7767fb540 (diff)
downloadgcc-7ac20fe4e73b1beccfc11eb8275ab25306d5aeb5.zip
gcc-7ac20fe4e73b1beccfc11eb8275ab25306d5aeb5.tar.gz
gcc-7ac20fe4e73b1beccfc11eb8275ab25306d5aeb5.tar.bz2
verify.cc (is_assignable_from_slow): If source is an interface, we must also check the superclass.
* verify.cc (is_assignable_from_slow): If source is an interface, we must also check the superclass. From-SVN: r49189
Diffstat (limited to 'libjava/verify.cc')
-rw-r--r--libjava/verify.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/libjava/verify.cc b/libjava/verify.cc
index 8627de5..3b033c7 100644
--- a/libjava/verify.cc
+++ b/libjava/verify.cc
@@ -261,7 +261,9 @@ private:
if (is_assignable_from_slow (target, source->interfaces[i]))
return true;
}
- return false;
+ source = source->getSuperclass ();
+ if (source == NULL)
+ return false;
}
else if (target == &java::lang::Object::class$)
return true;