Skip to content

Identification for synthetic kernel nodes #44262

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

Open
nshahan opened this issue Nov 20, 2020 · 1 comment
Open

Identification for synthetic kernel nodes #44262

nshahan opened this issue Nov 20, 2020 · 1 comment
Labels
legacy-area-front-end Legacy: Use area-dart-model instead.

Comments

@nshahan
Copy link
Contributor

nshahan commented Nov 20, 2020

@johnniwinther

Thanks for a helpful discussion about the synthetic fields that appear from the late field lowering. As we discussed I'm opening this issue to help track adding flags for all of the synthetic nodes that are created from the use of late beyond just class fields.

During the discussion some idea that came up include

  • A flag to identify synthetic nodes.
  • An API to map synthetic names to the actual name in the dart source file.

Using the existing names generated by the CFE we have a workaround that we can use for the short term so this does not have urgent priority but it will be helpful for our future efforts and to make our implementation more resilient to changes in the naming that the CFE uses.

@johnniwinther
Copy link
Member

With https://dart-review.googlesource.com/c/sdk/+/175250 local variable now have a isLowered flag and functions have been added to lowering_predicates.dart to extract the original name for lowered variables.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
legacy-area-front-end Legacy: Use area-dart-model instead.
Projects
None yet
Development

No branches or pull requests

2 participants