[project @ 2000-03-24 17:49:29 by simonpj]
authorsimonpj <unknown>
Fri, 24 Mar 2000 17:49:31 +0000 (17:49 +0000)
committersimonpj <unknown>
Fri, 24 Mar 2000 17:49:31 +0000 (17:49 +0000)
commit6c872fff42025a842e8500ddbb13fdcca60eaf75
tree145b14186d14030d860b2dc11513ed1d12995b2d
parentaa51f1a4f7200cf701795e0e4cb01acda063cc16
[project @ 2000-03-24 17:49:29 by simonpj]
a) Small wibbles to do with inlining and floating

b) Implement Ralf's request, so that one can write

type F = forall a. a -> a

f :: Int -> F
f = ...

   The for-alls inside F are hoisted out to the top of
   the type signature for f.  This applies uniformly to
   all user-written types
22 files changed:
ghc/compiler/coreSyn/CoreUnfold.lhs
ghc/compiler/main/CmdLineOpts.lhs
ghc/compiler/main/Main.lhs
ghc/compiler/parser/Parser.y
ghc/compiler/rename/RnEnv.lhs
ghc/compiler/rename/RnIfaces.lhs
ghc/compiler/rename/RnSource.lhs
ghc/compiler/simplCore/SetLevels.lhs
ghc/compiler/simplCore/SimplUtils.lhs
ghc/compiler/simplCore/Simplify.lhs
ghc/compiler/typecheck/TcBinds.lhs
ghc/compiler/typecheck/TcClassDcl.lhs
ghc/compiler/typecheck/TcExpr.lhs
ghc/compiler/typecheck/TcHsSyn.lhs
ghc/compiler/typecheck/TcInstDcls.lhs
ghc/compiler/typecheck/TcMatches.lhs
ghc/compiler/typecheck/TcMonoType.lhs
ghc/compiler/typecheck/TcPat.lhs
ghc/compiler/typecheck/TcRules.lhs
ghc/compiler/typecheck/TcTyClsDecls.lhs
ghc/compiler/typecheck/TcTyDecls.lhs
ghc/compiler/types/Type.lhs