You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[vm/compiler] Do not assume that LoadField is performed from a record of a compatible shape
Compiler can see an unreachable code like this:
v1 <- Constant(Record (C, C))
if v1 is (C, C, C) {
v2 <- LoadField (v1.$3)
}
So it should check that record type of the receiver has enough fields
before querying field type in LoadField.
TEST=co19/LanguageFeatures/Patterns/matching_record_*
Fixes#51767
Issue #49755
Cq-Include-Trybots: luci.dart.try:vm-kernel-precomp-nnbd-linux-release-x64-try
Change-Id: Iac42c8edf3d22dce0061b6d75e8bdf51b7bf88e6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/289540
Auto-Submit: Alexander Markov <[email protected]>
Reviewed-by: Martin Kustermann <[email protected]>
Commit-Queue: Martin Kustermann <[email protected]>
0 commit comments