[project @ 1999-01-27 14:51:14 by simonpj]
authorsimonpj <unknown>
Wed, 27 Jan 1999 14:52:25 +0000 (14:52 +0000)
committersimonpj <unknown>
Wed, 27 Jan 1999 14:52:25 +0000 (14:52 +0000)
commit18976e614fd90a8d81ced2c3e9cd8e38d72a1f40
treeba006e4eab248358b818f771064df1a37e43cc16
parentf3bed25cb37981ef391f750cae58280e71cd80bc
[project @ 1999-01-27 14:51:14 by simonpj]
Finally!  This commits the ongoing saga of Simon's hygiene sweep

FUNCTIONALITY
~~~~~~~~~~~~~
a) The 'unused variable' warnings from the renamer work.
b) Better error messages here and there, esp type checker
c) Fixities for Haskell 98 (maybe I'd done that before)
d) Lazy reporting of name clashes for Haskell 98 (ditto)

HYGIENE
~~~~~~~
a) type OccName has its own module.  OccNames are represented
   by a single FastString, not three as in the last round.  This
   string is held in Z-encoded form; a decoding function decodes
   for printing in user error messages.  There's a nice tight
   encoding for (,,,,,,,,,,,,,,,,,,,,,,,,,,,,,)

b) type Module is a proper ADT, in module OccName

c) type RdrName is a proper ADT, in its own module

d) type Name has a new, somwhat tidier, representation

e) much grunting in the renamer to get Provenances right.
   This makes error messages look better (no spurious qualifiers)
82 files changed:
ghc/compiler/basicTypes/BasicTypes.lhs
ghc/compiler/basicTypes/Id.lhs
ghc/compiler/basicTypes/MkId.lhs
ghc/compiler/basicTypes/Name.lhs
ghc/compiler/basicTypes/OccName.lhs
ghc/compiler/basicTypes/SrcLoc.lhs
ghc/compiler/basicTypes/Var.hi-boot
ghc/compiler/basicTypes/Var.hi-boot-5
ghc/compiler/codeGen/CgCase.lhs
ghc/compiler/codeGen/CodeGen.lhs
ghc/compiler/coreSyn/PprCore.lhs
ghc/compiler/deSugar/Check.lhs
ghc/compiler/deSugar/Desugar.lhs
ghc/compiler/deSugar/DsBinds.lhs
ghc/compiler/deSugar/DsForeign.lhs
ghc/compiler/deSugar/DsMonad.lhs
ghc/compiler/deSugar/Match.lhs
ghc/compiler/hsSyn/HsBinds.lhs
ghc/compiler/hsSyn/HsDecls.lhs
ghc/compiler/hsSyn/HsExpr.hi-boot
ghc/compiler/hsSyn/HsExpr.lhs
ghc/compiler/hsSyn/HsImpExp.lhs
ghc/compiler/hsSyn/HsMatches.hi-boot
ghc/compiler/hsSyn/HsMatches.hi-boot-5
ghc/compiler/hsSyn/HsMatches.lhs
ghc/compiler/hsSyn/HsPat.lhs
ghc/compiler/hsSyn/HsSyn.lhs
ghc/compiler/main/ErrUtils.lhs
ghc/compiler/main/Main.lhs
ghc/compiler/main/MkIface.lhs
ghc/compiler/parser/UgenUtil.lhs
ghc/compiler/parser/id.c
ghc/compiler/prelude/PrelInfo.lhs
ghc/compiler/prelude/PrelMods.lhs
ghc/compiler/prelude/PrelVals.lhs
ghc/compiler/prelude/PrimOp.lhs
ghc/compiler/prelude/TysPrim.lhs
ghc/compiler/prelude/TysWiredIn.lhs
ghc/compiler/profiling/CostCentre.lhs
ghc/compiler/profiling/SCCfinal.lhs
ghc/compiler/reader/Lex.lhs
ghc/compiler/reader/PrefixSyn.lhs
ghc/compiler/reader/RdrHsSyn.lhs
ghc/compiler/reader/ReadPrefix.lhs
ghc/compiler/rename/ParseIface.y
ghc/compiler/rename/Rename.lhs
ghc/compiler/rename/RnBinds.lhs
ghc/compiler/rename/RnEnv.lhs
ghc/compiler/rename/RnExpr.lhs
ghc/compiler/rename/RnIfaces.lhs
ghc/compiler/rename/RnMonad.lhs
ghc/compiler/rename/RnNames.lhs
ghc/compiler/rename/RnSource.lhs
ghc/compiler/simplCore/SimplCore.lhs
ghc/compiler/specialise/Specialise.lhs
ghc/compiler/typecheck/Inst.lhs
ghc/compiler/typecheck/TcDeriv.lhs
ghc/compiler/typecheck/TcEnv.lhs
ghc/compiler/typecheck/TcExpr.lhs
ghc/compiler/typecheck/TcForeign.lhs
ghc/compiler/typecheck/TcGenDeriv.lhs
ghc/compiler/typecheck/TcInstDcls.lhs
ghc/compiler/typecheck/TcMatches.lhs
ghc/compiler/typecheck/TcMonoType.lhs
ghc/compiler/typecheck/TcPat.lhs
ghc/compiler/typecheck/TcUnify.lhs
ghc/compiler/types/PprType.lhs
ghc/compiler/types/TyCon.hi-boot
ghc/compiler/types/TyCon.hi-boot-5
ghc/compiler/types/TyCon.lhs
ghc/compiler/types/Type.lhs
ghc/compiler/utils/Outputable.lhs
ghc/includes/Prelude.h
ghc/includes/PrimOps.h
ghc/rts/Assembler.c
ghc/rts/Evaluator.c
ghc/rts/Evaluator.h
ghc/rts/PrimOps.hc
ghc/rts/RtsAPI.c
ghc/rts/RtsUtils.c
ghc/rts/StgMiscClosures.hc
ghc/rts/Updates.hc