Skip to content

Commit 9cc7ec8

Browse files
alexmarkovcommit-bot@chromium.org
authored andcommitted
[vm/aot] Do not devirtualize calls with mismatching number of type arguments
Fixes #38254 Change-Id: I9597b1aecc5b1040d4c7e18d6ea272ab74af7ddc Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118463 Reviewed-by: Ryan Macnak <[email protected]> Reviewed-by: Régis Crelier <[email protected]> Commit-Queue: Alexander Markov <[email protected]>
1 parent acac9ab commit 9cc7ec8

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

pkg/vm/lib/transformations/devirtualization.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,11 @@ abstract class Devirtualization extends RecursiveVisitor<Null> {
6565
}
6666
}
6767

68+
if (arguments.types.isNotEmpty &&
69+
arguments.types.length != func.typeParameters.length) {
70+
return false;
71+
}
72+
6873
return true;
6974
}
7075

0 commit comments

Comments
 (0)