equal
deleted
inserted
replaced
2676 bool ClassVerifier::is_same_or_direct_interface( |
2676 bool ClassVerifier::is_same_or_direct_interface( |
2677 InstanceKlass* klass, |
2677 InstanceKlass* klass, |
2678 VerificationType klass_type, |
2678 VerificationType klass_type, |
2679 VerificationType ref_class_type) { |
2679 VerificationType ref_class_type) { |
2680 if (ref_class_type.equals(klass_type)) return true; |
2680 if (ref_class_type.equals(klass_type)) return true; |
2681 Array<Klass*>* local_interfaces = klass->local_interfaces(); |
2681 Array<InstanceKlass*>* local_interfaces = klass->local_interfaces(); |
2682 if (local_interfaces != NULL) { |
2682 if (local_interfaces != NULL) { |
2683 for (int x = 0; x < local_interfaces->length(); x++) { |
2683 for (int x = 0; x < local_interfaces->length(); x++) { |
2684 Klass* k = local_interfaces->at(x); |
2684 InstanceKlass* k = local_interfaces->at(x); |
2685 assert (k != NULL && k->is_interface(), "invalid interface"); |
2685 assert (k != NULL && k->is_interface(), "invalid interface"); |
2686 if (ref_class_type.equals(VerificationType::reference_type(k->name()))) { |
2686 if (ref_class_type.equals(VerificationType::reference_type(k->name()))) { |
2687 return true; |
2687 return true; |
2688 } |
2688 } |
2689 } |
2689 } |