diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Main.hs | 4 | 
1 files changed, 2 insertions, 2 deletions
| diff --git a/src/Main.hs b/src/Main.hs index deda34ca..0c9cdb0a 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -827,8 +827,8 @@ extractClassDecl _ _ _ d =  extractRecSel :: HsName -> Module -> HsName -> [HsName] -> [HsConDecl]                -> HsDecl  extractRecSel _ _ _ _ [] = error "extractRecSel: selector not found" -extractRecSel _ _ _ _ (d@(HsConDecl{}):_) = -    error $ "Main.extractRecSel: unexpected (con)decl" ++ show d +extractRecSel nm mdl t tvs (d@(HsConDecl{}):rest) = +    extractRecSel nm mdl t tvs rest  extractRecSel nm mdl t tvs (HsRecDecl loc _ _tvs _ fields _mb_doc : rest)    | (HsFieldDecl ns ty mb_doc : _) <- matching_fields  	= HsTypeSig loc [nm] (HsTyFun data_ty (unbang ty)) mb_doc | 
