Files
sdk/pkg/vm
Alexander Markov 9c190c5e00 [vm/aot/tfa] Tree-shake instance fields with initializers
In order to simplify removal of instance fields with initializers which
may have side effects, such field initializers are moved to constructor
initializer lists before type flow analysis.

In case of multiple generative non-redirecting constructors AST of
field initializers is cloned. Moving and cloning of initializers is
performed before the analysis to avoid maintaining and spreading
inferred TFA information attached to AST nodes.

TEST=pkg/vm/testcases/transformations/type_flow/transformer/instance_fields_with_initializers_nnbd.dart
Fixes https://github.com/dart-lang/sdk/issues/46402

Change-Id: I4dc9c44c441ece5792f0748789ece117a2814581
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/204943
Commit-Queue: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2021-06-28 18:33:43 +00:00
..
2021-04-07 10:28:38 +00:00

This package hosts VM specific Dart code and helper scripts.