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

Unified Diff: pkg/kernel/lib/transformations/insert_covariance_checks.dart

Issue 2623333005: Fix dispatch name of covariance-checked calls. (Closed)
Patch Set: Add test cases Created 3 years, 11 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
« no previous file with comments | « no previous file | tests/language_strong/covariant_subtyping_unsafe_call1_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/kernel/lib/transformations/insert_covariance_checks.dart
diff --git a/pkg/kernel/lib/transformations/insert_covariance_checks.dart b/pkg/kernel/lib/transformations/insert_covariance_checks.dart
index b4e1869830dbe3e57e28671fe510cd38a90f986e..662dda968f71743ec587344ba3293aa1d5307cbd 100644
--- a/pkg/kernel/lib/transformations/insert_covariance_checks.dart
+++ b/pkg/kernel/lib/transformations/insert_covariance_checks.dart
@@ -504,13 +504,21 @@ class _CallTransformer extends RecursiveVisitor {
@override
visitMethodInvocation(MethodInvocation node) {
- node.interfaceTarget = getChecked(node.receiver, node.interfaceTarget);
+ var target = getChecked(node.receiver, node.interfaceTarget);
+ if (target != null) {
+ node.interfaceTarget = target;
+ node.name = target.name;
+ }
node.visitChildren(this);
}
@override
visitPropertySet(PropertySet node) {
- node.interfaceTarget = getChecked(node.receiver, node.interfaceTarget);
+ var target = getChecked(node.receiver, node.interfaceTarget);
+ if (target != null) {
+ node.interfaceTarget = target;
+ node.name = target.name;
+ }
node.visitChildren(this);
}
}
« no previous file with comments | « no previous file | tests/language_strong/covariant_subtyping_unsafe_call1_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698