[project @ 1999-03-15 15:11:03 by simonpj]
Make clear in HsType whether a for-all is explicit in the source program or not. Implicit for-alls now look like HsForAllTy Nothing ctxt ty while explicit ones look like HsForAllTy (Just tvs) ctxt ty Before this, the scope analysis stuff in RnSource was actually wrong (not that anyone had noticed), but Alex Ferguson did notice a bogus (sort-of-duplicate) error message on types like f :: Eq a => Int -> Int which led me to spot the deeper problem. Anyway, it's all cool now.
Showing
- ghc/compiler/hsSyn/HsTypes.lhs 15 additions, 5 deletionsghc/compiler/hsSyn/HsTypes.lhs
- ghc/compiler/parser/hsparser.y 2 additions, 2 deletionsghc/compiler/parser/hsparser.y
- ghc/compiler/parser/ttype.ugn 2 additions, 0 deletionsghc/compiler/parser/ttype.ugn
- ghc/compiler/reader/RdrHsSyn.lhs 12 additions, 11 deletionsghc/compiler/reader/RdrHsSyn.lhs
- ghc/compiler/reader/ReadPrefix.lhs 15 additions, 5 deletionsghc/compiler/reader/ReadPrefix.lhs
- ghc/compiler/rename/RnHsSyn.lhs 3 additions, 1 deletionghc/compiler/rename/RnHsSyn.lhs
- ghc/compiler/rename/RnSource.lhs 60 additions, 62 deletionsghc/compiler/rename/RnSource.lhs
- ghc/compiler/typecheck/TcMonoType.lhs 1 addition, 1 deletionghc/compiler/typecheck/TcMonoType.lhs
Loading
Please register or sign in to comment