Skip to content

seldom panic

To reproduce this bug, install GHC 6.8.20070916 and Gtk2Hs 0.9.12 as currently described on http://haskell.org/haskellwiki/Grapefruit#Building. There is a modified version of the current development version of Grapefruit attached to this bug report which is needed for bug reproduction. Sorry, but I wasn’t able to give you a small code example showing this bug in action since every time I started to reduce the code significantly, the bug vanished.

Unpack the attached file bug.tar.bz2, enter the directory named bug and run runghc Setup.lhs configure followed by runghc Setup.lhs build. Compilation should be successful. Then remove the second line of the file Haskell/Graphics/UI/Grapefruit/Adapters/Gtk2Hs/Window.hs and run runghc Setup.lhs build again. Now you should see the following error messages:

ghc-6.8.0.20070916: panic! (the 'impossible' happened)
  (GHC version 6.8.0.20070916 for i386-unknown-linux):
        tcIfaceGlobal (local): not found:
    grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoF:R8Value{tc r76}
    [(r6H,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:R8Value{tc r6H}'),
     (r6I,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:R11Rep{tc r6I}'),
     (r6J,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f9{v r6J}'),
     (r6K,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f7{v r6K}'),
     (r6L,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f6{v r6L}'),
     (r6M,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f5{v r6M}'),
     (r6N,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f4{v r6N}'),
     (r6O,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f3{v r6O}'),
     (r6P,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f10{v r6P}'),
     (r6Q,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.FromSecond{v r6Q}'),
     (r6R,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.FromFirst{v r6R}'),
     (r6S,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.FromBoth{v r6S}'),
     (r6T,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.FromSecond{d r6T}'),
     (r6U,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.FromFirst{d r6U}'),
     (r6V,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.poly_fail{v r6V}'),
     (r6W,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$w=={v r6W}'),
     (r6X,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a63{v r6X}'),
     (r6Y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a121{v r6Y}'),
     (r6Z,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a57{v r6Z}'),
     (r70,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a62{v r70}'),
     (r71,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a321{v r71}'),
     (r72,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a221{v r72}'),
     (r73,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a38{v r73}'),
     (r74,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.poly_for_{v r74}'),
     (r77,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a59{v r77}'),
     (r7c,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.lvl3{v r7c}'),
     (r7g,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.Source{v r7g}'),
     (r7i,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a52{v r7i}'),
     (r7m,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a40{v r7m}'),
     (r7n,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.poly_go{v r7n}'),
     (r7o,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a20{v r7o}'),
     (r7p,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a22{v r7p}'),
     (r7q,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a56{v r7q}'),
     (r7r,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a111{v r7r}'),
     (r7s,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a19{v r7s}'),
     (r7u,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a55{v r7u}'),
     (r7w,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a311{v r7w}'),
     (r7x,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a211{v r7x}'),
     (r7y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a18{v r7y}'),
     (r7z,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$wa4{v r7z}'),
     (r7A,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a27{v r7A}'),
     (r7B,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a47{v r7B}'),
     (r7D,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.lvl1{v r7D}'),
     (r7E,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a44{v r7E}'),
     (r7F,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a43{v r7F}'),
     (r7G,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a41{v r7G}'),
     (r7H,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a42{v r7H}'),
     (r7I,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a39{v r7I}'),
     (r7J,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a28{v r7J}'),
     (r7K,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a35{v r7K}'),
     (r7L,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a29{v r7L}'),
     (r7M,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoGeneralEventStream{tc r7M}'),
     (r7P,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a26{v r7P}'),
     (r7Q,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a25{v r7Q}'),
     (r7R,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a23{v r7R}'),
     (r7S,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a21{v r7S}'),
     (r7T,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a17{v r7T}'),
     (r7U,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a15{v r7U}'),
     (r7V,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a16{v r7V}'),
     (r7W,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.lvl{v r7W}'),
     (r7Y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a13{v r7Y}'),
     (r80,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a11{v r80}'),
     (r81,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a12{v r81}'),
     (r82,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$wa3{v r82}'),
     (r83,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$wa2{v r83}'),
     (r84,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$wa1{v r84}'),
     (r85,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a5{v r85}'),
     (r88,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.Source{d r88}'),
     (r89,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$wa{v r89}'),
     (r8g,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a{v r8g}'),
     (r8h,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.QuitReq{v r8h}'),
     (r8i,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.QuitReqRep{tc r8i}'),
     (r8j,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a60{v r8j}'),
     (r8k,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.QuitReq{tc r8k}'),
     (r8m,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$dMonoid1{v r8m}'),
     (r8n,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a3{v r8n}'),
     (r8o,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$dArrow1{v r8o}'),
     (r8p,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a14{v r8p}'),
     (r8t,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$dArrow{v r8t}'),
     (r8v,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base./={v r8v}'),
     (r8w,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.=={v r8w}'),
     (r8x,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.min{v r8x}'),
     (r8y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.max{v r8y}'),
     (r8z,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.<={v r8z}'),
     (r8A,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.>{v r8A}'),
     (r8B,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.>={v r8B}'),
     (r8C,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.<{v r8C}'),
     (r8D,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.compare{v r8D}'),
     (r8E,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f2{v r8E}'),
     (r8H,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCChange{tc r8H}'),
     (r8I,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCAdditionInfo{tc r8I}'),
     (r8J,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompCircuitIO{tc r8J}'),
     (r8L,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a32{v r8L}'),
     (r8M,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a30{v r8M}'),
     (r8N,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a24{v r8N}'),
     (r8O,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.SetupIO{tc r8O}'),
     (r8P,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a45{v r8P}'),
     (r8Q,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoCompCircuit{tc r8Q}'),
     (r8S,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a1{v r8S}'),
     (r8T,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a9{v r8T}'),
     (r8U,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCInput{tc r8U}'),
     (r8V,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCStateAccessors{tc r8V}'),
     (r8W,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a48{v r8W}'),
     (r8X,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompCircuit{tc r8X}'),
     (r8Y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a49{v r8Y}'),
     (r8Z,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a46{v r8Z}'),
     (r90,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a50{v r90}'),
     (r91,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoCompInit{tc r91}'),
     (r92,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a4{v r92}'),
     (r93,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a2{v r93}'),
     (r94,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoComp{tc r94}'),
     (r95,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a34{v r95}'),
     (r96,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.Comp{tc r96}'),
     (r97,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompInit{tc r97}'),
     (r98,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a10{v r98}'),
     (r99,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a7{v r99}'),
     (r9a,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a54{v r9a}'),
     (r9b,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.GeneralEventStream{tc r9b}'),
     (r9c,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a8{v r9c}'),
     (r9d,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a33{v r9d}'),
     (r9e,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a37{v r9e}'),
     (r9f,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoPlainCircuit{tc r9f}'),
     (r9j,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a36{v r9j}'),
     (r9k,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.PlainCircuit{tc r9k}'),
     (r9l,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.:CoEventStream{tc r9l}'),
     (r9m,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a53{v r9m}'),
     (r9n,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.EventStream{tc r9n}'),
     (r9o,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a58{v r9o}'),
     (r9p,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.OutputConnection{tc r9p}'),
     (r9q,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.EventHandler{tc r9q}'),
     (r9r,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a6{v r9r}'),
     (r9s,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.InputConnection{tc r9s}'),
     (r9t,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a61{v r9t}'),
     (r9u,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.lvl6{v r9u}'),
     (r9v,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.lvl5{v r9v}'),
     (r9x,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.lvl4{v r9x}'),
     (r9y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.$f1{v r9y}'),
     (r9A,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DSignal{d r9A}'),
     (r9B,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.MergeValue{tc r9B}'),
     (r9D,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.Source{tc r9D}'),
     (r9F,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.a51{v r9F}'),
     (r9G,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DSignal{v r9G}'),
     (r9H,
      Type constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DSignal{tc r9H}'),
     (r9I,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.emptyDSignal{v r9I}'),
     (r9J,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.mergeDSignals{v r9J}'),
     (r9K,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.statefulDSignal{v r9K}'),
     (r9L,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.dSignalIC{v r9L}'),
     (r9M,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.dSignalOC{v r9M}'),
     (r9N,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.statefulEventStream{v r9N}'),
     (r9O,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.eventStreamMerger{v r9O}'),
     (r9P,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.eventStreamMemo{v r9P}'),
     (r9Q,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.eventStreamSource{v r9Q}'),
     (r9R,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.onEvent{v r9R}'),
     (r9S,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.eventStreamOC{v r9S}'),
     (r9T,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.newGeneralEventStream{v r9T}'),
     (r9U,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.fromGeneralEventStream{v r9U}'),
     (r9V,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.raiseEvent{v r9V}'),
     (r9W,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.comp{v r9W}'),
     (r9X,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.transformNativeComp{v r9X}'),
     (r9Y,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.withInputPort{v r9Y}'),
     (r9Z,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.withOutputPort{v r9Z}'),
     (ra0,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.emptyCompInit{v ra0}'),
     (ra1,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.useComp{v ra1}'),
     (ra2,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.useCompCircuit{v ra2}'),
     (ra3,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.dccInputConnection{v ra3}'),
     (ra4,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.fromComp{v ra4}'),
     (ra5,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.fromPlainCircuit{v ra5}'),
     (ra6,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.>>|{v ra6}'),
     (ra7,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.|>>{v ra7}'),
     (ra8,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.compLoop{v ra8}'),
     (ra9,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompCircuit{d ra9}'),
     (raa,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompCircuit{v raa}'),
     (rab,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCAdditionInfo{d rab}'),
     (rac,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCAdditionInfo{v rac}'),
     (rad,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCAddition{d rad}'),
     (rae,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCAddition{v rae}'),
     (raf,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCRemoval{d raf}'),
     (rag,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCRemoval{v rag}'),
     (rah,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCMove{d rah}'),
     (rai,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCMove{v rai}'),
     (raj,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCInput{d raj}'),
     (rak,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCInput{v rak}'),
     (ral,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.handleAddition{v ral}'),
     (ram,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.handleRemoval{v ram}'),
     (ran,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.handleMove{v ran}'),
     (rao,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.getCompDataList{v rao}'),
     (rap,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCStateAccessors{d rap}'),
     (raq,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.DCCStateAccessors{v raq}'),
     (rar,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompInit{d rar}'),
     (ras,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.CompInit{v ras}'),
     (rat,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.Comp{d rat}'),
     (rau,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.Comp{v rau}'),
     (rav,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.PlainCircuit{d rav}'),
     (raw,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.PlainCircuit{v raw}'),
     (rax,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.GeneralEventStream{d rax}'),
     (ray,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.GeneralEventStream{v ray}'),
     (raz,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.EventStream{d raz}'),
     (raA,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.EventStream{v raA}'),
     (raB,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.FromBoth{d raB}'),
     (raC,
      Identifier `grapefruit-0.0:Graphics.UI.Grapefruit.Base.runCompCircuit{v raC}'),
     (raD,
      Data constructor `grapefruit-0.0:Graphics.UI.Grapefruit.Base.QuitReq{d raD}')]

Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

If you skip the first runghc Setup.hs build (i.e., the building of the unmodified version), the bug doesn’t appear.

Edited by Ian Lynagh -
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information