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

Incremental compiler re-issuing of errors from constant evaluator #38167

Closed
jensjoha opened this issue Sep 2, 2019 · 1 comment
Closed

Incremental compiler re-issuing of errors from constant evaluator #38167

jensjoha opened this issue Sep 2, 2019 · 1 comment
Assignees
Labels
area-front-end Use area-front-end for front end / CFE / kernel format related issues. customer-flutter P1 A high priority bug; for example, a single project is unusable or has many test failures

Comments

@jensjoha
Copy link
Contributor

jensjoha commented Sep 2, 2019

Say we have the following:

  • We have a class with a constant constructor with an assert initializer
  • We compile and everything is fine because it's not initialized.
  • We add a leaf-node which initializes it, compiles and we get an error as expected.
  • We remove the leaf-node (or replace the instantiation or whatnot) and recompiles. We would expect to not see the error anymore as we are basically in the same world as before where we didn't get an error --- but we still get the error.

Reason: We re-issue all errors from libraries we didn't recompile. The error is attached to the wrong place (the library of the const constructor with the assert initializer) ---- it should have been attached to the library that cased the problem (the leaf-node that initialized it).

If this happens in flutter one would have to both fix the instantiation (e.g. remove the new code that triggered it) AND clean the old build data.

/cc @mraleph

@mraleph mraleph added P1 A high priority bug; for example, a single project is unusable or has many test failures customer-flutter labels Sep 2, 2019
@mraleph
Copy link
Member

mraleph commented Sep 2, 2019

From my understanding this has a rather negative affect on the ease of use of the hot-reload, as you get stuck in a place from which only flutter clean can get you out.

@askeksa-google could you take a look at this and asses how hard would it be to fix it?

@mit-mit mit-mit added the area-front-end Use area-front-end for front end / CFE / kernel format related issues. label Sep 2, 2019
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. customer-flutter P1 A high priority bug; for example, a single project is unusable or has many test failures
Projects
None yet
Development

No branches or pull requests

4 participants