import RdrName
import NameSet
import Rules
-import CoreMonad ( endPass )
+import CoreMonad ( endPass, CoreToDo(..) )
import ErrUtils
import Outputable
import SrcLoc
-- things into the in-scope set before simplifying; so we get no unfolding for F#!
-- Lint result if necessary
- ; endPass dflags "Desugar" Opt_D_dump_ds ds_binds ds_rules
+ ; endPass dflags CoreDesugar ds_binds ds_rules
-- Dump output
; doIfSet (dopt Opt_D_dump_ds dflags)
[x] to build (\cn. x `c` n)
We want to leave explicit lists simply as chains
of cons's. We can achieve that slightly indirectly by
-switching off EnableRewriteRules.
+switching off EnableRewriteRules. See DsExpr.dsExplicitList.
That keeps the desugaring of list comprehensions simple too.