diff options
| author | simonpj <unknown> | 1998-12-18 17:42:39 +0000 |
|---|---|---|
| committer | simonpj <unknown> | 1998-12-18 17:42:39 +0000 |
| commit | 7e602b0a11e567fcb035d1afd34015aebcf9a577 (patch) | |
| tree | 54ca13c3ec0704e343b68d0d313a29f53d6c3855 /ghc/compiler/hsSyn/HsImpExp.lhs | |
| parent | 139f0fd30e19f934aa51885a52b8e5d7c24ee460 (diff) | |
| download | haskell-7e602b0a11e567fcb035d1afd34015aebcf9a577.tar.gz | |
[project @ 1998-12-18 17:40:31 by simonpj]
Another big commit from Simon. Actually, the last one
didn't all go into the main trunk; because of a CVS glitch it
ended up in the wrong branch.
So this commit includes:
* Scoped type variables
* Warnings for unused variables should work now (they didn't before)
* Simplifier improvements:
- Much better treatment of strict arguments
- Better treatment of bottoming Ids
- No need for w/w split for fns that are merely strict
- Fewer iterations needed, I hope
* Less gratuitous renaming in interface files and abs C
* OccName is a separate module, and is an abstract data type
I think the whole Prelude and Exts libraries compile correctly.
Something isn't quite right about typechecking existentials though.
Diffstat (limited to 'ghc/compiler/hsSyn/HsImpExp.lhs')
| -rw-r--r-- | ghc/compiler/hsSyn/HsImpExp.lhs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/ghc/compiler/hsSyn/HsImpExp.lhs b/ghc/compiler/hsSyn/HsImpExp.lhs index 9083d9e18c..84dcfce862 100644 --- a/ghc/compiler/hsSyn/HsImpExp.lhs +++ b/ghc/compiler/hsSyn/HsImpExp.lhs @@ -8,8 +8,8 @@ module HsImpExp where #include "HsVersions.h" -import BasicTypes ( Module, IfaceFlavour(..) ) -import Name ( NamedThing ) +import BasicTypes ( IfaceFlavour(..) ) +import Name ( Module, NamedThing, pprModule ) import Outputable import SrcLoc ( SrcLoc ) \end{code} @@ -36,7 +36,7 @@ data ImportDecl name instance (NamedThing name, Outputable name) => Outputable (ImportDecl name) where ppr (ImportDecl mod qual as_source as spec _) = hang (hsep [ptext SLIT("import"), pp_src as_source, - pp_qual qual, ptext mod, pp_as as]) + pp_qual qual, pprModule mod, pp_as as]) 4 (pp_spec spec) where pp_src HiFile = empty @@ -46,7 +46,7 @@ instance (NamedThing name, Outputable name) => Outputable (ImportDecl name) wher pp_qual True = ptext SLIT("qualified") pp_as Nothing = empty - pp_as (Just a) = ptext SLIT("as ") <+> ptext a + pp_as (Just a) = ptext SLIT("as ") <+> pprModule a pp_spec Nothing = empty pp_spec (Just (False, spec)) @@ -86,6 +86,6 @@ instance (NamedThing name, Outputable name) => Outputable (IE name) where ppr (IEThingWith thing withs) = ppr thing <> parens (fsep (punctuate comma (map ppr withs))) ppr (IEModuleContents mod) - = ptext SLIT("module") <+> ptext mod + = ptext SLIT("module") <+> pprModule mod \end{code} |
