Closed
Description
We'd like to have a source of truth to define what is required for fromEnvironment
constructors and what is the expected behavior we will support.
Since modular compilation was not even in the picture at the time the feature was introduced, we are now finding a lot of inconsistencies across the tools. The recent changes that move constant evaluation to the CFE also highlight the need to define a coherent story going forward.
Some questions that have recently come up:
- are both
const
andnew
supported? - when is evaluation supposed to take place (compile-time, link-time, runtime)?
- if evaluation is at compile-time
- how is constant consistency maintained across modular builds (are environment definitions stored so they are always consistent at the app level, or are they substituted eagerly and then forgotten?)