Inlay hints may show ghost identifiers as types
module A = struct
let a1 = a2
module B : sig val b end = struct
let b1 = b2
end
let a3 = a1 B.b1
end
Ideally, we should never show ghost idents anywhere in the LSP server. I see two alternatives for inlay hints, either showing no inlay hints or somehow transforming ghost idents into actual existential types. I think the second solution should be better than the first solution.
Acceptance criteria
- Ghost identifiers are not shown as types in inlay hints, either because we hide those hints, or because we exchange them with an appropriate existential type (preferred).
- Tests added.
