Commit(s) to merge
be6a560
Target
stable and beta
Prepared changelist for stable/beta
Stable: https://dart-review.googlesource.com/c/sdk/+/312709,
Beta: https://dart-review.googlesource.com/c/sdk/+/312710
Issue Description
Some web development compiles of libraries containing is or as with specific record types will hang and never complete.
A minimal reproduction:
main() {
Object value = 'x';
(a: 'a', b: value) as ({String a, String b});
}
What is the fix
Some record type comparison operations were not properly incrementing a loop variable when iterating the named elements. With this fix the execution can properly exit the loop and the compile succeeds.
Why cherry-pick
Some type operations using record types will cause the DDC to hang while compiling preventing use of either the record types or web development compiler.
A user reported hitting this in a flutter application and could not compile their app for web development.
Risk
low
Issue link(s)
#52817, flutter/flutter#129482
Extra Info
cc @sigmundch
Commit(s) to merge
be6a560
Target
stable and beta
Prepared changelist for stable/beta
Stable: https://dart-review.googlesource.com/c/sdk/+/312709,
Beta: https://dart-review.googlesource.com/c/sdk/+/312710
Issue Description
Some web development compiles of libraries containing
isoraswith specific record types will hang and never complete.A minimal reproduction:
What is the fix
Some record type comparison operations were not properly incrementing a loop variable when iterating the named elements. With this fix the execution can properly exit the loop and the compile succeeds.
Why cherry-pick
Some type operations using record types will cause the DDC to hang while compiling preventing use of either the record types or web development compiler.
A user reported hitting this in a flutter application and could not compile their app for web development.
Risk
low
Issue link(s)
#52817, flutter/flutter#129482
Extra Info
cc @sigmundch