[project @ 2001-03-14 15:26:00 by simonpj]
authorsimonpj <unknown>
Wed, 14 Mar 2001 15:26:01 +0000 (15:26 +0000)
committersimonpj <unknown>
Wed, 14 Mar 2001 15:26:01 +0000 (15:26 +0000)
commit506278ab5a4591626aa4bd2d45983da6f06be727
tree7ab4e4ee6d1c134b977036993b445b88e09ef92c
parent6ae5ca0c2ab4281e03978a4a74cb9441793a1e9c
[project @ 2001-03-14 15:26:00 by simonpj]
-------------------------------------
Import more rules, and fix usage info
-------------------------------------

1. A rule wasn't being slurped in that should have been.
Reason: wordToWord32# was in the 'TypeEnv', because it's a primop,
so the renamer thought it was already slurped in, which is true.
But it forgot to use the TypeEnv as a source of gates when deciding
which rules to pull in.  Result: a useful rule for the primop wasn't
making it in.  Thanks to Marcin for isolating this one.

2. RnIfaces.recordTypeEnvSlurp (was recordVSlurp) was blindly adding
the name to the iVSlurp set, but the iVSlurp set is supposed to contain
only "big" names (tycons, classes, and Ids that aren't data cons,
class ops etc).  We need to get the big name from the thing.
Mildly tiresomely, this means we have to keep the Class inside
the TyCon derived from that class.   Hence updates to TyCon and Class.
ghc/compiler/main/HscTypes.lhs
ghc/compiler/rename/RnIfaces.lhs
ghc/compiler/rename/RnMonad.lhs
ghc/compiler/types/TyCon.lhs