[project @ 2003-01-06 15:30:14 by simonpj]
authorsimonpj <unknown>
Mon, 6 Jan 2003 15:30:17 +0000 (15:30 +0000)
committersimonpj <unknown>
Mon, 6 Jan 2003 15:30:17 +0000 (15:30 +0000)
commitfcf37c94ff61dd721daed3515b492586f47af74a
treef29ed6c148a82ec2a9499fcf1b5cd51d223e1989
parent97ee3b2415a81c20f11aea75a59a54e2556f6f12
[project @ 2003-01-06 15:30:14 by simonpj]
--------------------------------------------------------------
Several small but tiresome things shown up by Template Haskell
--------------------------------------------------------------

1. Make the 'knot' in TcRnDriver much smaller; in fact move it to
   TcIfaceSig.tcInterfaceSigs.  Reasons
a) much tidier
b) avoids a loop in Template Haskell, when we try to run
   an expression during type checking (when the knot is
   not fully tied)

   See comments in TcIfaceSig

2. Stop typechecking if tcGroup fails.  Reason: otherwise tcLookup can
   fail in the next group.

3. Catch linking errors more gracefully when running a splice (in TcSplice)
ghc/compiler/typecheck/TcEnv.lhs
ghc/compiler/typecheck/TcExpr.lhs
ghc/compiler/typecheck/TcIfaceSig.lhs
ghc/compiler/typecheck/TcRnDriver.lhs
ghc/compiler/typecheck/TcSimplify.lhs
ghc/compiler/typecheck/TcSplice.lhs