Skip to content

No Skolem Info

Matthew Pickering requested to merge wip/no-skolem-info into master

This MR implements #20732 (closed).

Main change: every skolem TcTyVar has SkolemInfo attached.

Subsidiary changes

  • Major refactoring of kcCheckDeclHeader_sig; crucially including checking for duplicates (fixes #20916 (closed)) and swizzling
  • State invariants on Implication: levels and SkolemInfo in skolem tyvars matches ic_lvl and ic_info resp. Check those invariants with checkImplicationInvariants
  • Much, much more clarity around TcTyCons. See Note [TcTyCon, MonoTcTyCon, and PolyTcTyCon] in TcType
  • Kill off the nasty ClassScopedTvEnv entirely
Edited by Simon Peyton Jones

Merge request reports