From 957b762c4db8d3f2f3673e3595ec80c2d64a3274 Mon Sep 17 00:00:00 2001 From: "simonpj@microsoft.com" Date: Thu, 11 Jan 2007 09:09:22 +0000 Subject: [PATCH] Comments --- compiler/typecheck/TcDeriv.lhs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/compiler/typecheck/TcDeriv.lhs b/compiler/typecheck/TcDeriv.lhs index af53740..4bad739 100644 --- a/compiler/typecheck/TcDeriv.lhs +++ b/compiler/typecheck/TcDeriv.lhs @@ -420,6 +420,7 @@ baleOut err = addErrTc err >> returnM (Nothing, Nothing) \begin{code} mkDataTypeEqn orig gla_exts tvs cls cls_tys tycon tc_args rep_tc rep_tc_args | Just err <- checkSideConditions gla_exts cls cls_tys rep_tc + -- NB: pass the *representation* tycon to checkSideConditions = baleOut (derivingThingErr cls cls_tys (mkTyConApp tycon tc_args) err) | otherwise @@ -496,7 +497,11 @@ sideConditions (dataClassKey, cond_glaExts `andCond` cond_std) ] -type Condition = (Bool, TyCon) -> Maybe SDoc -- Nothing => OK +type Condition = (Bool, TyCon) -> Maybe SDoc + -- Bool is gla-exts flag + -- TyCon is the *representation* tycon if the + -- data type is an indexed one + -- Nothing => OK orCond :: Condition -> Condition -> Condition orCond c1 c2 tc -- 1.7.10.4