From: simonpj@microsoft.com Date: Fri, 14 Apr 2006 12:03:59 +0000 (+0000) Subject: Comments only X-Git-Tag: Before_FC_branch_merge~547 X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=ab4bc0f16200a9d26272a9fcf21e669d6d19761d Comments only --- diff --git a/compiler/typecheck/TcBinds.lhs b/compiler/typecheck/TcBinds.lhs index cffcb9c..e71d920 100644 --- a/compiler/typecheck/TcBinds.lhs +++ b/compiler/typecheck/TcBinds.lhs @@ -173,6 +173,11 @@ tcValBinds top_lvl (ValBindsOut binds sigs) thing_inside ; sig_fn = mkSigFun ty_sigs } ; poly_ids <- mapM tcTySig ty_sigs + -- No recovery from bad signatures, because the type sigs + -- may bind type variables, so proceeding without them + -- can lead to a cascade of errors + -- ToDo: this means we fall over immediately if any type sig + -- is wrong, which is over-conservative, see Trac bug #745 -- Extend the envt right away with all -- the Ids declared with type signatures diff --git a/compiler/typecheck/TcSplice.lhs b/compiler/typecheck/TcSplice.lhs index beb72f1..2215c9b 100644 --- a/compiler/typecheck/TcSplice.lhs +++ b/compiler/typecheck/TcSplice.lhs @@ -390,7 +390,7 @@ runMeta convert expr -- We also do the TH -> HS syntax conversion inside the same -- exception-cacthing thing so that if there are any lurking -- exceptions in the data structure returned by hval, we'll - -- encounter them inside the tryALlM + -- encounter them inside the try either_tval <- tryAllM $ do { th_syn <- TH.runQ (unsafeCoerce# hval) ; case convert (getLoc expr) th_syn of