[project @ 2005-10-27 14:35:20 by simonpj]
[ghc-hetmet.git] / ghc / compiler / typecheck / TcHsSyn.lhs
index ec51813..fecc6d4 100644 (file)
@@ -278,9 +278,9 @@ zonkLocalBinds env (HsIPBinds (IPBinds binds dict_binds))
 zonkValBinds :: ZonkEnv -> HsValBinds TcId -> TcM (ZonkEnv, HsValBinds Id)
 zonkValBinds env bs@(ValBindsIn _ _) 
   = panic "zonkValBinds"       -- Not in typechecker output
-zonkValBinds env (ValBindsOut binds) 
+zonkValBinds env (ValBindsOut binds sigs) 
   = do         { (env1, new_binds) <- go env binds
-       ; return (env1, ValBindsOut new_binds) }
+       ; return (env1, ValBindsOut new_binds sigs) }
   where
     go env []         = return (env, [])
     go env ((r,b):bs) = do { (env1, b')  <- zonkRecMonoBinds env b
@@ -340,11 +340,11 @@ zonk_bind env (AbsBinds tyvars dicts exports val_binds)
          zonkIdBndr env global         `thenM` \ new_global ->
          mapM zonk_prag prags          `thenM` \ new_prags -> 
          returnM (new_tyvars, new_global, zonkIdOcc env local, new_prags)
-    zonk_prag prag@(InlinePrag _ _) = return prag
-    zonk_prag (SpecPrag expr ty ds) = do { expr' <- zonkExpr env expr 
-                                        ; ty'   <- zonkTcTypeToType env ty
-                                        ; let ds' = zonkIdOccs env ds
-                                        ; return (SpecPrag expr' ty' ds') }
+    zonk_prag prag@(InlinePrag {})  = return prag
+    zonk_prag (SpecPrag expr ty ds inl) = do { expr' <- zonkExpr env expr 
+                                            ; ty'   <- zonkTcTypeToType env ty
+                                            ; let ds' = zonkIdOccs env ds
+                                            ; return (SpecPrag expr' ty' ds' inl) }
 \end{code}
 
 %************************************************************************