[project @ 1999-12-06 11:54:56 by simonpj]
Fix a major bug in exporting unfoldings involving existentials. Change core printing so that we put an '@' before type variables in case patterns. This only affects existentials. case x of C @ a x y -> ... Here 'a' is an existentially quantified type variable, and the '@' signifies this. We continue to omit kinds and type on case-bound variables; the type checker can fill them in. The reason for this change is that type variables and term variables live in a different name space, so we need to know which name space is involved when binding one. How this ever worked I will never know. While I was at it, I also arranged that -ddump-rn prints out whatever it has even if it finds errors. Adding -dppr-debug prints even the unfoldings on imported things. Simon
Showing
- ghc/compiler/coreSyn/PprCore.lhs 1 addition, 1 deletionghc/compiler/coreSyn/PprCore.lhs
- ghc/compiler/hsSyn/HsCore.lhs 11 additions, 5 deletionsghc/compiler/hsSyn/HsCore.lhs
- ghc/compiler/rename/ParseIface.y 13 additions, 2 deletionsghc/compiler/rename/ParseIface.y
- ghc/compiler/rename/Rename.lhs 22 additions, 23 deletionsghc/compiler/rename/Rename.lhs
Loading
Please register or sign in to comment