haskell / haskell/haskell-language-server

Filling type holes can create incomplete signatures due to type variables from context

Aperta
#711 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
component: ghcide status: needs info type: bug
Lingua principale
Haskell
Stelle
3k
Fork
455
Merge medio
2g 19h
PR unite (30g)
11

Descrizione

I have for example the following situation:
```
Found type wildcard ‘_’ standing for ‘R.Dynamic t [Task] -> m ()’
Where: ‘t’, ‘m’ are rigid type variables bound by the type signature for: ...
```
It‘s not an import bug right now, but when `t` and `m` are not declared with `forall t m` and `ScopedTypeVariables` the inserted signature for the type hole will probably fail because it's lacking all constraints for `t` and `m`.

I am not sure what the correct solution is:
* One could possibly look for the right constraints in the code and insert them.
* Another (slightly crazy) possibility would be to offer to refactor used variables to explicit scoped type variables.

As I said this is not urgent and I see that a fix might be hard. Nonetheless I thought having the problem noted somewhere might help.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.