From 750612629b4839033a2e2434bd3c59f96ab323f0 Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Fri, 8 Feb 2008 12:11:35 +0000 Subject: [PATCH] Corrected a bug caused by making Structured parameterised, where removeNesting only descended into Structureds the same type as the outer-most Structured (typically A.AST) --- transformations/Unnest.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/transformations/Unnest.hs b/transformations/Unnest.hs index 45fb139..19f2c83 100644 --- a/transformations/Unnest.hs +++ b/transformations/Unnest.hs @@ -181,12 +181,12 @@ removeNesting p return s where pullSpecs :: Data t => t -> PassM t - pullSpecs = doGeneric `extM` doStructured + pullSpecs = doGeneric `ext1M` doStructured doGeneric :: Data t => t -> PassM t doGeneric = makeGeneric pullSpecs - doStructured :: A.Structured a -> PassM (A.Structured a) + doStructured :: Data t => A.Structured t -> PassM (A.Structured t) doStructured s@(A.Spec m spec@(A.Specification _ n st) subS) = do isConst <- isConstantName n if isConst || canPull st then