Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile UI as code features away before constant evaluation #36910

Closed
kmillikin opened this issue May 9, 2019 · 1 comment
Closed

Compile UI as code features away before constant evaluation #36910

kmillikin opened this issue May 9, 2019 · 1 comment
Assignees
Labels
area-front-end Use area-front-end for front end / CFE / kernel format related issues. front-end-fasta P1 A high priority bug; for example, a single project is unusable or has many test failures type-task A well-defined stand-alone task
Milestone

Comments

@kmillikin
Copy link

Currently during constant evaluation we eliminate UI as code features (spreads and control-flow in collections) by compiling them into simpler constructs. The original syntax is a Fasta-internal implementation detail that is not part of the Kernel language. That is, the AST nodes are not in package:kernel and the Kernel transformation APIs (e.g., the Visitor and Transformer classes) do not know about them. Furthermore, this syntax is impossible to serialize and deserialize.

For the Flutter Widget inspector, we would like to perform a transformation before constant evaluation and that requires compiling these features away first so the Kernel transformation APIs work. (See #36640.)

For separate compilation, we would like to serialize constant initializer expressions in outlines, without performing constant evaluation and that requires compiling these features away first so that serialization works. (See #36635.)

@kmillikin kmillikin added area-front-end Use area-front-end for front end / CFE / kernel format related issues. front-end-fasta P1 A high priority bug; for example, a single project is unusable or has many test failures type-task A well-defined stand-alone task labels May 9, 2019
@kmillikin kmillikin added this to the D24 Release milestone May 9, 2019
@askeksa-google
Copy link

CL for fix is here: https://dart-review.googlesource.com/c/sdk/+/103123

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-front-end Use area-front-end for front end / CFE / kernel format related issues. front-end-fasta P1 A high priority bug; for example, a single project is unusable or has many test failures type-task A well-defined stand-alone task
Projects
None yet
Development

No branches or pull requests

2 participants