Re-add FunTy (big patch)
With TypeInType Richard combined ForAllTy and FunTy, but that was often awkward, and yielded little benefit becuase in practice the two were always treated separately. This patch re-introduces FunTy. Specfically * New type data TyVarBinder = TvBndr TyVar VisibilityFlag This /always/ has a TyVar it. In many places that's just what what we want, so there are /lots/ of TyBinder -> TyVarBinder changes * TyBinder still exists: data TyBinder = Named TyVarBinder | Anon Type * data Type = ForAllTy TyVarBinder Type | FunTy Type Type | .... There are a LOT of knock-on changes, but they are all routine. The Haddock submodule needs to be updated too
Showing
- compiler/basicTypes/DataCon.hs 44 additions, 68 deletionscompiler/basicTypes/DataCon.hs
- compiler/basicTypes/DataCon.hs-boot 4 additions, 4 deletionscompiler/basicTypes/DataCon.hs-boot
- compiler/basicTypes/MkId.hs 7 additions, 10 deletionscompiler/basicTypes/MkId.hs
- compiler/basicTypes/PatSyn.hs 19 additions, 23 deletionscompiler/basicTypes/PatSyn.hs
- compiler/codeGen/StgCmmClosure.hs 4 additions, 4 deletionscompiler/codeGen/StgCmmClosure.hs
- compiler/coreSyn/CoreArity.hs 16 additions, 13 deletionscompiler/coreSyn/CoreArity.hs
- compiler/coreSyn/CoreFVs.hs 4 additions, 2 deletionscompiler/coreSyn/CoreFVs.hs
- compiler/coreSyn/CoreLint.hs 11 additions, 10 deletionscompiler/coreSyn/CoreLint.hs
- compiler/coreSyn/CoreUtils.hs 1 addition, 1 deletioncompiler/coreSyn/CoreUtils.hs
- compiler/coreSyn/TrieMap.hs 8 additions, 8 deletionscompiler/coreSyn/TrieMap.hs
- compiler/deSugar/DsBinds.hs 1 addition, 1 deletioncompiler/deSugar/DsBinds.hs
- compiler/deSugar/DsForeign.hs 9 additions, 19 deletionscompiler/deSugar/DsForeign.hs
- compiler/hsSyn/HsUtils.hs 2 additions, 2 deletionscompiler/hsSyn/HsUtils.hs
- compiler/iface/BuildTyCl.hs 29 additions, 31 deletionscompiler/iface/BuildTyCl.hs
- compiler/iface/IfaceSyn.hs 2 additions, 2 deletionscompiler/iface/IfaceSyn.hs
- compiler/iface/IfaceType.hs 38 additions, 38 deletionscompiler/iface/IfaceType.hs
- compiler/iface/MkIface.hs 13 additions, 10 deletionscompiler/iface/MkIface.hs
- compiler/iface/TcIface.hs 17 additions, 16 deletionscompiler/iface/TcIface.hs
- compiler/main/HscTypes.hs 4 additions, 4 deletionscompiler/main/HscTypes.hs
- compiler/prelude/TysPrim.hs 7 additions, 7 deletionscompiler/prelude/TysPrim.hs
Loading
Please register or sign in to comment