Open DarkDimius opened 8 years ago
It would be good to answer that question experimentally. Make a check and see whether it blows up.
I guess this is currently false because refinements can introduce new members and those don't get symbols: https://github.com/lampepfl/dotty/pull/3733
It used to be the case that before
Splitter
not allSelect
andIdent
nodes had a symbol set. This was because ofOr
andAnd
types. AfterSplitter
distributedAnd
andOr
types, we had an invariant that allSelect
andIdent
nodes had a symbol set. Since https://github.com/lampepfl/dotty/pull/1550 splitter no longer distributes it, as we stopped supporting those cases in typer.Is it true now that all trees should have a proper symbol? Aside from introducing one more check to TreeCheker, this would allow us to join
ElimByName
(that relies on Idents&selects having symbol) phase-group with previous one.