verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
authorTom Tromey <tromey@redhat.com>
Fri, 16 Nov 2001 01:28:55 +0000 (01:28 +0000)
committerTom Tromey <tromey@gcc.gnu.org>
Fri, 16 Nov 2001 01:28:55 +0000 (01:28 +0000)
* verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
(type::merge): Likewise.

From-SVN: r47077

libjava/ChangeLog
libjava/verify.cc

index c62f85006a4931851ff5a5e60b127e533d297d49..d6c3dac9a73ebd89d1ec221e664858c4874df10f 100644 (file)
@@ -1,3 +1,8 @@
+2001-11-15  Tom Tromey  <tromey@redhat.com>
+
+       * verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
+       (type::merge): Likewise.
+
 2001-11-14  Hans Boehm <Hans_Boehm@hp.com>
 
        * java/lang/natString.cc: correct argument order for
index 6deb80b08d6f52d8f2777ae48e7ff638b7fe953d..2691ed378e74bc4dfb9695c0c8b72aa4add9b7f6 100644 (file)
@@ -373,7 +373,9 @@ private:
       // We must resolve both types and check assignability.
       resolve ();
       k.resolve ();
-      return data.klass->isAssignableFrom (k.data.klass);
+      // Use _Jv_IsAssignableFrom to avoid premature class
+      // initialization.
+      return _Jv_IsAssignableFrom (data.klass, k.data.klass);
     }
 
     bool isvoid () const
@@ -537,7 +539,9 @@ private:
                  // This loop will end when we hit Object.
                  while (true)
                    {
-                     if (k->isAssignableFrom (oldk))
+                     // Use _Jv_IsAssignableFrom to avoid premature
+                     // class initialization.
+                     if (_Jv_IsAssignableFrom (k, oldk))
                        break;
                      k = k->getSuperclass ();
                      changed = true;