@@ -39,6 +39,9 @@ toDecls ds@(ValueDeclaration ident bs _ _ : _) = do
3939 unless (all ((== map length bs) . map length . fst) tuples) $
4040 throwError $ "Argument list lengths differ in declaration " ++ show ident
4141 return [makeCaseDeclaration ident tuples]
42+toDecls [ModuleDeclaration name decls] = do
43+ desugared <- desugarCases decls
44+ return [ModuleDeclaration name desugared]
4245toDecls ds = return ds
4346
4447toTuple :: Declaration -> ([[Binder]], (Maybe Guard, Value))