Hello!

I've managed to reduce your code to a much simpler test case (without
parsec) but I'm still not sure why this is happening:


{-# LANGUAGE MultiParamTypeClasses, FlexibleContexts #-}

data D m
  = D { bar1 :: P m ()
      , bar2 :: P m ()
      }

data P m c = P

class S m c where

foo :: S m () => P m ()
foo = undefined

emptyDef :: S m () => D m
emptyDef
  = D
    { bar1 = foo
    , bar2 = foo
    }

haskellStyle :: S m () => D m
haskellStyle
  = emptyDef
    { bar1 = foo
    , bar2 = foo
    }


Cheers,

-- 
Felipe.

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to