#14541: Stg lint failure while building ghc-stage2: compiler/stage2/build/Hoopl/Block.o -------------------------------------+------------------------------------- Reporter: duog | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.3 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- With the tree at: https://github.com/duog/ghc/tree/trac-14536 Which fixes ticket:14536 With build.mk: {{{ BuildFlavour = validate ifneq "$(BuildFlavour)" "" include mk/flavours/$(BuildFlavour).mk endif GhcStage2HcOpts += -dcore-lint -dstg-lint -dcmm-lint }}} building with: {{{ make compiler/stage2/build/Hoopl/Blocks.o }}} I get the following Stg lint error (extracts, full dump attached): {{{ <no location info>: warning: [in body of lambda with binders ds_s4dH :: a_a3as -> b_a3at, ds1_s4dI :: MaybeO ex_a3ao a_a3as] In some algebraic case alternative, number of arguments doesn't match constructor: JustO (arity 2) [a1_s4dK] }}} ... {{{ $fFunctorMaybeO_$cfmap :: forall ex a b. (a -> b) -> MaybeO ex a -> MaybeO ex b [GblId, Arity=2, Caf=NoCafRefs, Str=<L,1*C1(U)><S,1*U>, Unf=OtherCon []] = [] \r [ds_s4dH ds1_s4dI] case ds1_s4dI of { JustO a1_s4dK [Occ=Once] -> let { sat_s4dL [Occ=Once] :: b_a3at [LclId] = [ds_s4dH a1_s4dK] \u [] ds_s4dH a1_s4dK; } in JustO [sat_s4dL]; NothingO -> $WNothingO; }; }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14541> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler