Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1925)

Unified Diff: runtime/vm/object.cc

Issue 12260008: Reapply r18377 it was reverted due to the unrelated bug it surfaced. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/object.cc
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index 5ed01da4238e3e232df74d24283e39fa627986a4..c7c2970dde313d8a11a196207ee78e037fa05dda 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -2185,12 +2185,13 @@ bool Class::TypeTest(
// Since we do not truncate the type argument vector of a subclass (see
// below), we only check a prefix of the proper length.
// Check for covariance.
- if (other_type_arguments.IsNull() ||
- other_type_arguments.IsRawInstantiatedRaw(len)) {
+ if (other_type_arguments.IsNull() || other_type_arguments.IsRaw(len)) {
return true;
}
- if (type_arguments.IsNull() ||
- type_arguments.IsRawInstantiatedRaw(len)) {
+ if (type_arguments.IsNull() || type_arguments.IsRaw(len)) {
+ // Other type can't be more specific than this one because for that
+ // it would have to have all dynamic type arguments which is checked
+ // above.
return test_kind == kIsSubtypeOf;
}
return type_arguments.TypeTest(test_kind,

Powered by Google App Engine
This is Rietveld 408576698