Skip to content

Stop removing definitions of record fields in GHC.Iface.Ext.Ast

Zubin requested to merge wz1000/ghc:hie-validation into master

I think this was originally put in to prevent validation failures in rare cases involving ambiguous record names being assigned wrong/inconsistent definition spans.

ghcide needs to work around this by re-implementing the entire GHC.Iface.Ext.Ast module in tree so that go-to-definition works for record fields. Given that all the other changes that ghcide required have been merged upstream into ghc, it would be very nice not to have to again clone the entire module into ghcide for GHC 9.0.

Given that there are no tests for this, and there are other validation failures like #18425, I think this workaround should be merged. I am investigating the underlying failures and others, and will prepare a proper fix for them soon. However, that is unlikely to make it into GHC 9.0.

Backport: !4071 (closed)

Edited by Zubin

Merge request reports