GHC issueshttps://gitlab.haskell.org/ghc/ghc/-/issues2019-07-07T19:07:12Zhttps://gitlab.haskell.org/ghc/ghc/-/issues/2714No match in record selector Var.tcTyVarDetails2019-07-07T19:07:12ZmorrowNo match in record selector Var.tcTyVarDetailsSummary:
```
ghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)
*** Exception: No match in record selector Var.tcTyVarDetails
```
I stumbled across this while in ghci with flags:
```
:set -fglasgow-exts -O2 -fno-print-bind-result
...Summary:
```
ghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)
*** Exception: No match in record selector Var.tcTyVarDetails
```
I stumbled across this while in ghci with flags:
```
:set -fglasgow-exts -O2 -fno-print-bind-result
:set -XQuasiQuotes -XTemplateHaskell
```
Beginning with where I came across it and proceeding
in reverse chrono order wrt ghc versions:
```
[m@ganon feio]$ ghc -V
The Glorious Glasgow Haskell Compilation System, version 6.10.0.20080927
ghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)
*** Exception: No match in record selector Var.tcTyVarDetails
```
```
[m@ganon feio]$ ghc -V
The Glorious Glasgow Haskell Compilation System, version 6.9.20080504
ghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)
*** Exception: No match in record selector Var.tcTyVarDetails
```
```
[m@ganon feio]$ /usr/bin/ghc-6.8.2 -V
The Glorious Glasgow Haskell Compilation System, version 6.8.2
ghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)
<interactive>:1:0:
Couldn't match expected type `c'
against inferred type `f (f b -> b)'
`c' is a rigid type variable bound by
the polymorphic type `forall c. c -> a' at <interactive>:1:0
Probable cause: `fmap' is applied to too few arguments
<interactive>:1:0:
Couldn't match expected type `a' against inferred type `f b'
`a' is a rigid type variable bound by
the polymorphic type
`forall a b. ((a -> b) -> b) -> forall c. c -> a'
at <interactive>:1:0
Probable cause: `fmap' is applied to too few arguments
```
```
[m@ganon feio]$ /usr/bin/ghc-6.8.1 -V
The Glorious Glasgow Haskell Compilation System, version 6.8.1
ghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)
<interactive>:1:0:
Couldn't match expected type `c'
against inferred type `f (f b -> b)'
`c' is a rigid type variable bound by
the polymorphic type `forall c. c -> a' at <interactive>:1:0
Probable cause: `fmap' is applied to too few arguments
```
Aside from filing a bug rpt, I'm curious in general about what
change to whathaveyou, some way or another, had this as a side-effect.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ----------------------- |
| Version | 6.10.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler (Type checker) |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | mjm2002@gmail.com |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"No match in record selector Var.tcTyVarDetails","status":"New","operating_system":"","component":"Compiler (Type checker)","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.10.1","keywords":["Var,","record","selector","tcTyVarDetails,"],"differentials":[],"test_case":"","architecture":"","cc":["mjm2002@gmail.com"],"type":"Bug","description":"Summary:\r\n\r\n{{{\r\nghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)\r\n*** Exception: No match in record selector Var.tcTyVarDetails\r\n}}}\r\n\r\nI stumbled across this while in ghci with flags:\r\n\r\n{{{\r\n:set -fglasgow-exts -O2 -fno-print-bind-result\r\n:set -XQuasiQuotes -XTemplateHaskell\r\n}}}\r\n\r\nBeginning with where I came across it and proceeding\r\nin reverse chrono order wrt ghc versions:\r\n\r\n{{{\r\n[m@ganon feio]$ ghc -V\r\nThe Glorious Glasgow Haskell Compilation System, version 6.10.0.20080927\r\n\r\nghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)\r\n*** Exception: No match in record selector Var.tcTyVarDetails\r\n}}}\r\n\r\n{{{\r\n[m@ganon feio]$ ghc -V\r\nThe Glorious Glasgow Haskell Compilation System, version 6.9.20080504\r\n\r\nghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)\r\n*** Exception: No match in record selector Var.tcTyVarDetails\r\n}}}\r\n\r\n\r\n{{{\r\n[m@ganon feio]$ /usr/bin/ghc-6.8.2 -V\r\nThe Glorious Glasgow Haskell Compilation System, version 6.8.2\r\n\r\nghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)\r\n\r\n<interactive>:1:0:\r\n Couldn't match expected type `c'\r\n against inferred type `f (f b -> b)'\r\n `c' is a rigid type variable bound by\r\n the polymorphic type `forall c. c -> a' at <interactive>:1:0\r\n Probable cause: `fmap' is applied to too few arguments\r\n\r\n<interactive>:1:0:\r\n Couldn't match expected type `a' against inferred type `f b'\r\n `a' is a rigid type variable bound by\r\n the polymorphic type\r\n `forall a b. ((a -> b) -> b) -> forall c. c -> a'\r\n at <interactive>:1:0\r\n Probable cause: `fmap' is applied to too few arguments\r\n}}}\r\n\r\n{{{\r\n[m@ganon feio]$ /usr/bin/ghc-6.8.1 -V\r\nThe Glorious Glasgow Haskell Compilation System, version 6.8.1\r\n\r\nghci> :t fmap :: ((a -> b) -> b) -> (forall c. c -> a)\r\n\r\n<interactive>:1:0:\r\n Couldn't match expected type `c'\r\n against inferred type `f (f b -> b)'\r\n `c' is a rigid type variable bound by\r\n the polymorphic type `forall c. c -> a' at <interactive>:1:0\r\n Probable cause: `fmap' is applied to too few arguments\r\n}}}\r\n\r\nAside from filing a bug rpt, I'm curious in general about what\r\nchange to whathaveyou, some way or another, had this as a side-effect.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1mergemergehttps://gitlab.haskell.org/ghc/ghc/-/issues/2713Fixities interact badly with TH under GHC 6.10.1 200810072019-07-07T19:07:13ZBenMoseleyFixities interact badly with TH under GHC 6.10.1 20081007```
{-# LANGUAGE TemplateHaskell #-}
module Fixity where
class MyClass a where
(.*.) :: a -> a -> a
main = putStrLn "hi"
-- $( [d| x = undefined |] )
infixr 3 .*.
```
Compiling the above with: `c:\ghc\ghc-6.10.0.20081007\bin\ghc....```
{-# LANGUAGE TemplateHaskell #-}
module Fixity where
class MyClass a where
(.*.) :: a -> a -> a
main = putStrLn "hi"
-- $( [d| x = undefined |] )
infixr 3 .*.
```
Compiling the above with: `c:\ghc\ghc-6.10.0.20081007\bin\ghc.exe
--make -ddump-hi ~/Fixity.hs` gives:
```
==================== FINAL INTERFACE ====================
interface main:Fixity 610020081007
interface hash: 791ca25a8ddea4dee47d108320bf5b50
ABI hash: c2ca52d8c1ffc89265effb15d766f4aa
export-list hash: 9613c0af035884a108b9bebc1c0b08b6
orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
where
export main:Fixity MyClass|{.*. MyClass} main
module dependencies:
package dependencies: ghc-prim integer base
orphans: base:Control.Exception.Base base:Data.Tuple base:GHC.Base
base:GHC.Float base:GHC.Num
family instance modules:
import base:Prelude eac9ca3c0ae6d00a0fc0f1832a247e5e
import base:System.IO 9fa582151667de94fbfb9074e3c0f1b4
fixities infixr 3 .*.
1bcd9343d420eae1078ef2fa9021dbf8
class MyClass a
RecFlag NonRecursive
.*. :: a -> a -> a
96fb86d3649acbcf89c1f2802a511b0e
main :: GHC.IOBase.IO ()
vectorised variables:
vectorised tycons:
vectorised reused tycons:
```
Which is fine. Uncommenting the TH line and recompiling though gives:
```
==================== FINAL INTERFACE ====================
interface main:Fixity 610020081007
interface hash: 0a7949a029127113f8c49434e22bcb71
ABI hash: 3e2e66371e835a766a2fdedd54cb2c35
export-list hash: 73f4a7845d4b5048d9321b0e99b46428
orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e
where
export main:Fixity MyClass|{.*. MyClass} main x
module dependencies:
package dependencies: ghc-prim integer base template-haskell
orphans: base:Control.Exception.Base base:Data.Tuple base:GHC.Base
base:GHC.Float base:GHC.Num
family instance modules:
import base:GHC.Err 357889242e9fa603050a70e6dac2a5e4
import base:Prelude eac9ca3c0ae6d00a0fc0f1832a247e5e
import base:System.IO 9fa582151667de94fbfb9074e3c0f1b4
852943708ad257bdcf76e94914bb84b2
class MyClass a
RecFlag NonRecursive
.*. :: a -> a -> a
96fb86d3649acbcf89c1f2802a511b0e
main :: GHC.IOBase.IO ()
41850025600a6740465944638d138bc4
x :: forall a. a
vectorised variables:
vectorised tycons:
vectorised reused tycons:
```
1. ..ie the "fixities" entry is lost.
This worked fine in 6.8.2.
http://hackage.haskell.org/trac/ghc/ticket/2632 may be related - but
that was marked as closed/merged on 4th Oct, and I'm using a GHC
20081007.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ---------------- |
| Version | 6.10.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Template Haskell |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Fixities interact badly with TH under GHC 6.10.1 20081007","status":"New","operating_system":"","component":"Template Haskell","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.10.1","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"{{{\r\n{-# LANGUAGE TemplateHaskell #-}\r\nmodule Fixity where\r\n\r\nclass MyClass a where\r\n (.*.) :: a -> a -> a\r\n\r\nmain = putStrLn \"hi\"\r\n\r\n-- $( [d| x = undefined |] )\r\n\r\ninfixr 3 .*.\r\n}}}\r\n\r\nCompiling the above with: {{{c:\\ghc\\ghc-6.10.0.20081007\\bin\\ghc.exe\r\n--make -ddump-hi ~/Fixity.hs}}} gives:\r\n\r\n{{{\r\n==================== FINAL INTERFACE ====================\r\ninterface main:Fixity 610020081007\r\n interface hash: 791ca25a8ddea4dee47d108320bf5b50\r\n ABI hash: c2ca52d8c1ffc89265effb15d766f4aa\r\n export-list hash: 9613c0af035884a108b9bebc1c0b08b6\r\n orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e\r\n where\r\nexport main:Fixity MyClass|{.*. MyClass} main\r\nmodule dependencies:\r\npackage dependencies: ghc-prim integer base\r\norphans: base:Control.Exception.Base base:Data.Tuple base:GHC.Base\r\n base:GHC.Float base:GHC.Num\r\nfamily instance modules:\r\nimport base:Prelude eac9ca3c0ae6d00a0fc0f1832a247e5e\r\nimport base:System.IO 9fa582151667de94fbfb9074e3c0f1b4\r\nfixities infixr 3 .*.\r\n1bcd9343d420eae1078ef2fa9021dbf8\r\n class MyClass a\r\n RecFlag NonRecursive\r\n .*. :: a -> a -> a\r\n96fb86d3649acbcf89c1f2802a511b0e\r\n main :: GHC.IOBase.IO ()\r\nvectorised variables:\r\nvectorised tycons:\r\nvectorised reused tycons:\r\n}}}\r\n\r\nWhich is fine. Uncommenting the TH line and recompiling though gives:\r\n\r\n{{{\r\n==================== FINAL INTERFACE ====================\r\ninterface main:Fixity 610020081007\r\n interface hash: 0a7949a029127113f8c49434e22bcb71\r\n ABI hash: 3e2e66371e835a766a2fdedd54cb2c35\r\n export-list hash: 73f4a7845d4b5048d9321b0e99b46428\r\n orphan hash: 693e9af84d3dfcc71e640e005bdc5e2e\r\n where\r\nexport main:Fixity MyClass|{.*. MyClass} main x\r\nmodule dependencies:\r\npackage dependencies: ghc-prim integer base template-haskell\r\norphans: base:Control.Exception.Base base:Data.Tuple base:GHC.Base\r\n base:GHC.Float base:GHC.Num\r\nfamily instance modules:\r\nimport base:GHC.Err 357889242e9fa603050a70e6dac2a5e4\r\nimport base:Prelude eac9ca3c0ae6d00a0fc0f1832a247e5e\r\nimport base:System.IO 9fa582151667de94fbfb9074e3c0f1b4\r\n852943708ad257bdcf76e94914bb84b2\r\n class MyClass a\r\n RecFlag NonRecursive\r\n .*. :: a -> a -> a\r\n96fb86d3649acbcf89c1f2802a511b0e\r\n main :: GHC.IOBase.IO ()\r\n41850025600a6740465944638d138bc4\r\n x :: forall a. a\r\nvectorised variables:\r\nvectorised tycons:\r\nvectorised reused tycons:\r\n}}}\r\n\r\n...ie the \"fixities\" entry is lost.\r\n\r\nThis worked fine in 6.8.2.\r\n\r\nhttp://hackage.haskell.org/trac/ghc/ticket/2632 may be related - but\r\nthat was marked as closed/merged on 4th Oct, and I'm using a GHC\r\n20081007.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2703Buffer overflow, occasional segfaults when using handles created by Network.2019-07-07T19:07:16ZsclvBuffer overflow, occasional segfaults when using handles created by Network.See attached test cases (BigSock and BigSockFail). They both implement a simple echo server that reads lines from a socket and writes them to stdout -- the working case using the underlying Network.Socket API and the failing case using h...See attached test cases (BigSock and BigSockFail). They both implement a simple echo server that reads lines from a socket and writes them to stdout -- the working case using the underlying Network.Socket API and the failing case using handles from the Network library.
If a single line of sufficient size (We used a 5MB file, but a smaller one would probably be fine) is sent to the working case, it behaves as expected, eventually writing out the line. Additional connections may be made during this, which write data to stdout as expected. Additional connections may also be made following this.
If a line of the same size is sent to the failing case, it occasionally segfaults, although this is hard to reproduce. When it does not segfault, the socket nonetheless becomes permanently nonresponsive. The large line is never output. Future connections are accepted by the binary (i.e. netcat reveals they are accepted), but the accept call in Haskell never succeeds, and no further interaction with the binary over the socket is possible.
This behavior has caused some massive grief before the cause was tracked down.
Both cases have been tested with the threaded runtime.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ----------------- |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | libraries/network |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Buffer overflow, occasional segfaults when using handles created by Network.","status":"New","operating_system":"","component":"libraries/network","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"See attached test cases (BigSock and BigSockFail). They both implement a simple echo server that reads lines from a socket and writes them to stdout -- the working case using the underlying Network.Socket API and the failing case using handles from the Network library.\r\n\r\nIf a single line of sufficient size (We used a 5MB file, but a smaller one would probably be fine) is sent to the working case, it behaves as expected, eventually writing out the line. Additional connections may be made during this, which write data to stdout as expected. Additional connections may also be made following this.\r\n\r\nIf a line of the same size is sent to the failing case, it occasionally segfaults, although this is hard to reproduce. When it does not segfault, the socket nonetheless becomes permanently nonresponsive. The large line is never output. Future connections are accepted by the binary (i.e. netcat reveals they are accepted), but the accept call in Haskell never succeeds, and no further interaction with the binary over the socket is possible.\r\n\r\nThis behavior has caused some massive grief before the cause was tracked down.\r\n\r\nBoth cases have been tested with the threaded runtime.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2701Cannot derive Data for structures containing unboxed values2019-07-07T19:07:17ZbatterseapowerCannot derive Data for structures containing unboxed valuesTrying to compile this:
```
{-# LANGUAGE MagicHash, DeriveDataTypeable #-}
module Test where
import GHC.Prim
import Data.Data
import Data.Typeable
data Foo = MkFoo Int#
deriving (Typeable, Data)
```
Results in an error:
``...Trying to compile this:
```
{-# LANGUAGE MagicHash, DeriveDataTypeable #-}
module Test where
import GHC.Prim
import Data.Data
import Data.Typeable
data Foo = MkFoo Int#
deriving (Typeable, Data)
```
Results in an error:
```
$ ghc/stage1-inplace/ghc --make ~/DerivingUnboxed.hs
[1 of 1] Compiling Test ( /Users/mbolingbroke/DerivingUnboxed.hs, /Users/mbolingbroke/DerivingUnboxed.o )
/Users/mbolingbroke/DerivingUnboxed.hs:10:29:
Couldn't match kind `#' against `*'
When matching the kinds of `Int# :: #' and `d :: *'
Expected type: d
Inferred type: Int#
In the first argument of `z', namely `MkFoo'
/Users/mbolingbroke/DerivingUnboxed.hs:10:29:
Couldn't match kind `#' against `*'
When matching the kinds of `Int# :: #' and `b :: *'
Expected type: b
Inferred type: Int#
In the first argument of `z', namely `MkFoo'
```
I'm not sure if this is really a bug or not. It might be nice if deriving Data handled this case by reboxing Int\#, or alternatively if it gave a clear error messages about not being able to handle unboxed values.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.10.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Cannot derive Data for structures containing unboxed values","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.10.1","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"Trying to compile this:\r\n\r\n{{{\r\n{-# LANGUAGE MagicHash, DeriveDataTypeable #-}\r\nmodule Test where\r\n\r\nimport GHC.Prim\r\n\r\nimport Data.Data\r\nimport Data.Typeable\r\n\r\ndata Foo = MkFoo Int#\r\n deriving (Typeable, Data)\r\n}}}\r\n\r\nResults in an error:\r\n\r\n{{{\r\n$ ghc/stage1-inplace/ghc --make ~/DerivingUnboxed.hs \r\n[1 of 1] Compiling Test ( /Users/mbolingbroke/DerivingUnboxed.hs, /Users/mbolingbroke/DerivingUnboxed.o )\r\n\r\n/Users/mbolingbroke/DerivingUnboxed.hs:10:29:\r\n Couldn't match kind `#' against `*'\r\n When matching the kinds of `Int# :: #' and `d :: *'\r\n Expected type: d\r\n Inferred type: Int#\r\n In the first argument of `z', namely `MkFoo'\r\n\r\n/Users/mbolingbroke/DerivingUnboxed.hs:10:29:\r\n Couldn't match kind `#' against `*'\r\n When matching the kinds of `Int# :: #' and `b :: *'\r\n Expected type: b\r\n Inferred type: Int#\r\n In the first argument of `z', namely `MkFoo'\r\n}}}\r\n\r\nI'm not sure if this is really a bug or not. It might be nice if deriving Data handled this case by reboxing Int#, or alternatively if it gave a clear error messages about not being able to handle unboxed values.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2700Template Haskell pretty printer arrow always associates right2019-07-07T19:07:17ZaprocterTemplate Haskell pretty printer arrow always associates rightWhen I run a Template Haskell-generated tysig declaration through pprint, the associativity for -\> comes out incorrectly, e.g.:
```
sigD (mkName "foo") [t|(Int -> Bool) -> Bool|]
```
renders as:
```
foo :: GHC.Base.Int -> GHC.Base.Bo...When I run a Template Haskell-generated tysig declaration through pprint, the associativity for -\> comes out incorrectly, e.g.:
```
sigD (mkName "foo") [t|(Int -> Bool) -> Bool|]
```
renders as:
```
foo :: GHC.Base.Int -> GHC.Base.Bool -> GHC.Base.Bool
```
(note that it's dropping the parens, associating right instead of left)6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2688GHC 6.10.0.20081007 hangs instead of giving error about missing type class co...2019-07-07T19:07:20ZPVerswyvelenGHC 6.10.0.20081007 hangs instead of giving error about missing type class constraintThe following code hangs GHC 6.10.0.20081007 on Windows
```
{-# OPTIONS_GHC -XFunctionalDependencies -XMultiParamTypeClasses #-}
class VectorSpace v s | v -> s where
(*^) :: s -> v -> v
(^/) :: v -> s -> v
v ^/ s = v...The following code hangs GHC 6.10.0.20081007 on Windows
```
{-# OPTIONS_GHC -XFunctionalDependencies -XMultiParamTypeClasses #-}
class VectorSpace v s | v -> s where
(*^) :: s -> v -> v
(^/) :: v -> s -> v
v ^/ s = v *^ (1/s)
```
it should give an error instead (1/s implies a constraint on s which I did not give)6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2685Panic in harpy with GHC 6.10 RC2019-07-07T19:07:22ZdonsPanic in harpy with GHC 6.10 RCPanic in GHC 6.10 RC.
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/harpy
Harpy dies with a panic in
```
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
```
Here's the build log,
```
Confi...Panic in GHC 6.10 RC.
http://hackage.haskell.org/cgi-bin/hackage-scripts/package/harpy
Harpy dies with a panic in
```
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
```
Here's the build log,
```
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==4.0.0.0: using base-4.0.0.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.0: using parsec-2.1.0.0
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.5.5 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-4.0.0.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.0 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
WARNING: file stranal/DmdAnal.lhs line 445
harpy-0.4:Harpy.X86Disassembler.anyWord8{v rJK} [lid]
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6419
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5545
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5570
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package parsec-2.1.0.0 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(rj, base:GHC.Base.${v rj}),
(r4J, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4J}),
(rgC, base:GHC.Ptr.castPtrToFunPtr{v rgC}),
(rLH7,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rLH7}),
(rLHx, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rLHx}),
(rLIN, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rLIN}),
(rTcX, harpy-0.4:Harpy.Call.conv[aTcP]{v rTcX}),
(rTeB, harpy-0.4:Harpy.Call.conv[aTes]{v rTeB}),
(rTkg, harpy-0.4:Harpy.Call.conv[aTk1]{v rTkg})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==3.0.3.0: using base-3.0.3.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.0: using parsec-2.1.0.0
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.5.5 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.0 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
WARNING: file stranal/DmdAnal.lhs line 445
harpy-0.4:Harpy.X86Disassembler.anyWord8{v rD8} [lid]
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6419
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5545
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5570
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package base-3.0.3.0 ... linking ... done.
Loading package parsec-2.1.0.0 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(r7, base:GHC.Base.${v r7}),
(r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),
(r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),
(rLCE,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rLCE}),
(rLD4, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rLD4}),
(rLEk, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rLEk}),
(rT8u, harpy-0.4:Harpy.Call.conv[aT8m]{v rT8u}),
(rTa8, harpy-0.4:Harpy.Call.conv[aT9Z]{v rTa8}),
(rTfN, harpy-0.4:Harpy.Call.conv[aTfy]{v rTfN})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==3.0.3.0: using base-3.0.3.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.5.5 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6413
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5539
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5564
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package base-3.0.3.0 ... linking ... done.
Loading package parsec-2.1.0.2 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(r7, base:GHC.Base.${v r7}),
(r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),
(r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),
(rO69,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),
(rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),
(rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),
(rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),
(rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),
(rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==3.0.3.0: using base-3.0.3.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.5.5 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6413
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5539
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5564
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package base-3.0.3.0 ... linking ... done.
Loading package parsec-2.1.0.2 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(r7, base:GHC.Base.${v r7}),
(r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),
(r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),
(rO69,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),
(rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),
(rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),
(rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),
(rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),
(rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==3.0.3.0: using base-3.0.3.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.5.5 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6413
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5539
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5564
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package base-3.0.3.0 ... linking ... done.
Loading package parsec-2.1.0.2 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(r7, base:GHC.Base.${v r7}),
(r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),
(r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),
(rO69,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),
(rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),
(rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),
(rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),
(rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),
(rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==3.0.3.0: using base-3.0.3.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.5.5 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6413
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5539
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5564
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package base-3.0.3.0 ... linking ... done.
Loading package parsec-2.1.0.2 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(r7, base:GHC.Base.${v r7}),
(r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),
(r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),
(rO69,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),
(rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),
(rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),
(rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),
(rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),
(rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
Configuring harpy-0.4...
Flags chosen: small_base=True
Warning: No 'build-type' specified. If you do not need a custom Setup.hs or
./configure script then use 'build-type: Simple'.
Dependency array -any && ==0.2.0.0: using array-0.2.0.0
Dependency base >=3 && ==3.0.3.0: using base-3.0.3.0
Dependency containers -any && ==0.2.0.0: using containers-0.2.0.0
Dependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1
Dependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2
Dependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0
Dependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0
Using Cabal-1.6.0.0 compiled by ghc-6.10
Using compiler: ghc-6.10.0.20081007
Using install prefix: /home/dons/.cabal
Binaries installed in: /home/dons/.cabal/bin
Libraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007
Private binaries installed in: /home/dons/.cabal/libexec
Data files installed in: /home/dons/.cabal/share/harpy-0.4
Documentation installed in: /home/dons/.cabal/share/doc/harpy-0.4
Using alex version 2.2 found on system at: /home/dons/.cabal/bin/alex
Using ar found on system at: /usr/bin/ar
Using c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs
Using cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs
No ffihugs found
Using gcc version 4.3.2 found on system at: /usr/bin/gcc
Using ghc version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc
Using ghc-pkg version 6.10.0.20081007 found on system at:
/home/dons/testing/bin/ghc-pkg
Using greencard found on system at: /home/dons/.cabal/bin/greencard
Using haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock
Using happy version 1.17 found on system at: /home/dons/.cabal/bin/happy
No hmake found
Using hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs
Using hscolour version 1.10.1 found on system at:
/home/dons/.cabal/bin/HsColour
No hugs found
No jhc found
Using ld found on system at: /usr/bin/ld
No nhc98 found
Using pkg-config version 0.23 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
Creating dist/build (and its parents)
Creating dist/build/autogen (and its parents)
Preprocessing library harpy-0.4...
Building harpy-0.4...
Building library...
Creating dist/build (and its parents)
/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators
[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word64->a"
Rule 2: "fromIntegral/a->Word32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Int16"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Int32"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word16->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word32->a"
Rule 2: "fromIntegral/a->Word64"
Rules.findBest: rule overlap (Rule 1 wins)
Rule 1: "fromIntegral/Word8->a"
Rule 2: "fromIntegral/a->Int8"
[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 6413
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5539
WARNING: file simplCore/SimplCore.lhs line 501
Simplifier still going after 4 iterations; bailing out. Size = 5564
[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Loading package syb ... linking ... done.
Loading package array-0.2.0.0 ... linking ... done.
Loading package containers-0.2.0.0 ... linking ... done.
Loading package packedstring-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package base-3.0.3.0 ... linking ... done.
Loading package parsec-2.1.0.2 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
ghc: panic! (the 'impossible' happened)
(GHC version 6.10.0.20081007 for x86_64-unknown-linux):
mkUsage
harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,
base:GHC.Base.return{v 01T}),
(32I, base:GHC.IOBase.IO{tc 32I}),
(333, base:GHC.Word.Word32{tc 333}),
(33A, base:GHC.Ptr.Ptr{tc 33A}),
(33D, base:GHC.Ptr.FunPtr{tc 33D}),
(40, ghc-prim:GHC.Unit.(){(w) tc 40}),
(6Q, base:Data.Either.Right{d 6Q}),
(r7, base:GHC.Base.${v r7}),
(r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),
(r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),
(rO69,
harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),
(rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),
(rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),
(rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),
(rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),
(rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
```
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.9 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Panic in harpy with GHC 6.10 RC","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.9","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"Panic in GHC 6.10 RC.\r\n\r\nhttp://hackage.haskell.org/cgi-bin/hackage-scripts/package/harpy\r\n\r\nHarpy dies with a panic in\r\n\r\n{{{\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\n}}}\r\n\r\nHere's the build log,\r\n\r\n{{{\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==4.0.0.0: using base-4.0.0.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.0: using parsec-2.1.0.0\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.5.5 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-4.0.0.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.0 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\nWARNING: file stranal/DmdAnal.lhs line 445\r\nharpy-0.4:Harpy.X86Disassembler.anyWord8{v rJK} [lid]\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6419\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5545\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5570\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package parsec-2.1.0.0 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (rj, base:GHC.Base.${v rj}),\r\n (r4J, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4J}),\r\n (rgC, base:GHC.Ptr.castPtrToFunPtr{v rgC}),\r\n (rLH7,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rLH7}),\r\n (rLHx, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rLHx}),\r\n (rLIN, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rLIN}),\r\n (rTcX, harpy-0.4:Harpy.Call.conv[aTcP]{v rTcX}),\r\n (rTeB, harpy-0.4:Harpy.Call.conv[aTes]{v rTeB}),\r\n (rTkg, harpy-0.4:Harpy.Call.conv[aTk1]{v rTkg})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==3.0.3.0: using base-3.0.3.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.0: using parsec-2.1.0.0\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.5.5 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.0 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\nWARNING: file stranal/DmdAnal.lhs line 445\r\nharpy-0.4:Harpy.X86Disassembler.anyWord8{v rD8} [lid]\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6419\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5545\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5570\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package base-3.0.3.0 ... linking ... done.\r\nLoading package parsec-2.1.0.0 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (r7, base:GHC.Base.${v r7}),\r\n (r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),\r\n (r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),\r\n (rLCE,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rLCE}),\r\n (rLD4, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rLD4}),\r\n (rLEk, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rLEk}),\r\n (rT8u, harpy-0.4:Harpy.Call.conv[aT8m]{v rT8u}),\r\n (rTa8, harpy-0.4:Harpy.Call.conv[aT9Z]{v rTa8}),\r\n (rTfN, harpy-0.4:Harpy.Call.conv[aTfy]{v rTfN})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==3.0.3.0: using base-3.0.3.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.5.5 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6413\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5539\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5564\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package base-3.0.3.0 ... linking ... done.\r\nLoading package parsec-2.1.0.2 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (r7, base:GHC.Base.${v r7}),\r\n (r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),\r\n (r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),\r\n (rO69,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),\r\n (rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),\r\n (rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),\r\n (rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),\r\n (rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),\r\n (rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==3.0.3.0: using base-3.0.3.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.5.5 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6413\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5539\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5564\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package base-3.0.3.0 ... linking ... done.\r\nLoading package parsec-2.1.0.2 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (r7, base:GHC.Base.${v r7}),\r\n (r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),\r\n (r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),\r\n (rO69,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),\r\n (rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),\r\n (rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),\r\n (rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),\r\n (rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),\r\n (rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==3.0.3.0: using base-3.0.3.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.5.5 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6413\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5539\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5564\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package base-3.0.3.0 ... linking ... done.\r\nLoading package parsec-2.1.0.2 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (r7, base:GHC.Base.${v r7}),\r\n (r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),\r\n (r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),\r\n (rO69,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),\r\n (rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),\r\n (rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),\r\n (rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),\r\n (rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),\r\n (rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==3.0.3.0: using base-3.0.3.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.5.5 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6413\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5539\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5564\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package base-3.0.3.0 ... linking ... done.\r\nLoading package parsec-2.1.0.2 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (r7, base:GHC.Base.${v r7}),\r\n (r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),\r\n (r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),\r\n (rO69,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),\r\n (rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),\r\n (rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),\r\n (rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),\r\n (rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),\r\n (rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n\r\nConfiguring harpy-0.4...\r\nFlags chosen: small_base=True\r\nWarning: No 'build-type' specified. If you do not need a custom Setup.hs or\r\n./configure script then use 'build-type: Simple'.\r\nDependency array -any && ==0.2.0.0: using array-0.2.0.0\r\nDependency base >=3 && ==3.0.3.0: using base-3.0.3.0\r\nDependency containers -any && ==0.2.0.0: using containers-0.2.0.0\r\nDependency mtl -any && ==1.1.0.1: using mtl-1.1.0.1\r\nDependency parsec -any && ==2.1.0.2: using parsec-2.1.0.2\r\nDependency pretty -any && ==1.0.1.0: using pretty-1.0.1.0\r\nDependency template-haskell -any && ==2.3.0.0: using template-haskell-2.3.0.0\r\nUsing Cabal-1.6.0.0 compiled by ghc-6.10\r\nUsing compiler: ghc-6.10.0.20081007\r\nUsing install prefix: /home/dons/.cabal\r\nBinaries installed in: /home/dons/.cabal/bin\r\nLibraries installed in: /home/dons/.cabal/lib/harpy-0.4/ghc-6.10.0.20081007\r\nPrivate binaries installed in: /home/dons/.cabal/libexec\r\nData files installed in: /home/dons/.cabal/share/harpy-0.4\r\nDocumentation installed in: /home/dons/.cabal/share/doc/harpy-0.4\r\nUsing alex version 2.2 found on system at: /home/dons/.cabal/bin/alex\r\nUsing ar found on system at: /usr/bin/ar\r\nUsing c2hs version 0.15.1 found on system at: /home/dons/.cabal/bin/c2hs\r\nUsing cpphs version 1.5 found on system at: /home/dons/.cabal/bin/cpphs\r\nNo ffihugs found\r\nUsing gcc version 4.3.2 found on system at: /usr/bin/gcc\r\nUsing ghc version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc\r\nUsing ghc-pkg version 6.10.0.20081007 found on system at:\r\n/home/dons/testing/bin/ghc-pkg\r\nUsing greencard found on system at: /home/dons/.cabal/bin/greencard\r\nUsing haddock version 2.2.2 found on system at: /home/dons/testing/bin/haddock\r\nUsing happy version 1.17 found on system at: /home/dons/.cabal/bin/happy\r\nNo hmake found\r\nUsing hsc2hs version 0.67 found on system at: /home/dons/testing/bin/hsc2hs\r\nUsing hscolour version 1.10.1 found on system at:\r\n/home/dons/.cabal/bin/HsColour\r\nNo hugs found\r\nNo jhc found\r\nUsing ld found on system at: /usr/bin/ld\r\nNo nhc98 found\r\nUsing pkg-config version 0.23 found on system at: /usr/bin/pkg-config\r\nUsing ranlib found on system at: /usr/bin/ranlib\r\nUsing strip found on system at: /usr/bin/strip\r\nUsing tar found on system at: /bin/tar\r\nCreating dist/build (and its parents)\r\nCreating dist/build/autogen (and its parents)\r\nPreprocessing library harpy-0.4...\r\nBuilding harpy-0.4...\r\nBuilding library...\r\nCreating dist/build (and its parents)\r\n/home/dons/testing/bin/ghc -package-name harpy-0.4 --make -hide-all-packages -i -idist/build -i. -idist/build/autogen -Idist/build/autogen -Idist/build -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package array-0.2.0.0 -package base-3.0.3.0 -package containers-0.2.0.0 -package mtl-1.1.0.1 -package parsec-2.1.0.2 -package pretty-1.0.1.0 -package template-haskell-2.3.0.0 -O2 -XForeignFunctionInterface -XMultiParamTypeClasses -XTemplateHaskell -XCPP -XFlexibleContexts -XFlexibleInstances -XRankNTypes Harpy Harpy.X86CodeGen Harpy.X86Assembler Harpy.CodeGenMonad Harpy.Call Harpy.X86Disassembler Harpy.X86CGCombinators\r\n[1 of 7] Compiling Harpy.X86Disassembler ( Harpy/X86Disassembler.hs, dist/build/Harpy/X86Disassembler.o )\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word64->a\"\r\n Rule 2: \"fromIntegral/a->Word32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Int16\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Int32\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word16->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word32->a\"\r\n Rule 2: \"fromIntegral/a->Word64\"\r\nRules.findBest: rule overlap (Rule 1 wins)\r\n Rule 1: \"fromIntegral/Word8->a\"\r\n Rule 2: \"fromIntegral/a->Int8\"\r\n[2 of 7] Compiling Harpy.CodeGenMonad ( Harpy/CodeGenMonad.hs, dist/build/Harpy/CodeGenMonad.o )\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 6413\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5539\r\n\r\nWARNING: file simplCore/SimplCore.lhs line 501\r\nSimplifier still going after 4 iterations; bailing out. Size = 5564\r\n\r\n[3 of 7] Compiling Harpy.Call ( Harpy/Call.hs, dist/build/Harpy/Call.o )\r\nLoading package ghc-prim ... linking ... done.\r\nLoading package integer ... linking ... done.\r\nLoading package base ... linking ... done.\r\nLoading package syb ... linking ... done.\r\nLoading package array-0.2.0.0 ... linking ... done.\r\nLoading package containers-0.2.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.1.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package base-3.0.3.0 ... linking ... done.\r\nLoading package parsec-2.1.0.2 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\n\r\nghc: panic! (the 'impossible' happened)\r\n (GHC version 6.10.0.20081007 for x86_64-unknown-linux):\r\n\tmkUsage\r\n harpy-0.4:Harpy.CodeGenMonad CodeGen{d} [(01T,\r\n base:GHC.Base.return{v 01T}),\r\n (32I, base:GHC.IOBase.IO{tc 32I}),\r\n (333, base:GHC.Word.Word32{tc 333}),\r\n (33A, base:GHC.Ptr.Ptr{tc 33A}),\r\n (33D, base:GHC.Ptr.FunPtr{tc 33D}),\r\n (40, ghc-prim:GHC.Unit.(){(w) tc 40}),\r\n (6Q, base:Data.Either.Right{d 6Q}),\r\n (r7, base:GHC.Base.${v r7}),\r\n (r4E, mtl-1.1.0.1:Control.Monad.Trans.liftIO{v r4E}),\r\n (r8S, base:GHC.Ptr.castPtrToFunPtr{v r8S}),\r\n (rO69,\r\n harpy-0.4:Harpy.CodeGenMonad.firstBuffer{v rO69}),\r\n (rO6z, harpy-0.4:Harpy.CodeGenMonad.CodeGen{d rO6z}),\r\n (rO7P, harpy-0.4:Harpy.CodeGenMonad.callDecl{v rO7P}),\r\n (rVBT, harpy-0.4:Harpy.Call.conv[aVBL]{v rVBT}),\r\n (rVDx, harpy-0.4:Harpy.Call.conv[aVDo]{v rVDx}),\r\n (rVJc, harpy-0.4:Harpy.Call.conv[aVIX]{v rVJc})]\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n}}}","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2674ghc panic TcPat.checkArgs2019-07-07T19:07:24Zrwbartonghc panic TcPat.checkArgsThis program using the `derive` package:
```
{-# LANGUAGE TemplateHaskell, EmptyDataDecls #-}
import Data.DeriveTH
import Data.Derive.Enum
data Void
$(derive makeEnum ''Void)
```
produces a compiler panic:
```
rwbarton@functor:~/code/...This program using the `derive` package:
```
{-# LANGUAGE TemplateHaskell, EmptyDataDecls #-}
import Data.DeriveTH
import Data.Derive.Enum
data Void
$(derive makeEnum ''Void)
```
produces a compiler panic:
```
rwbarton@functor:~/code/haskell$ ghc --make panic
[1 of 1] Compiling Main ( panic.hs, panic.o )
Loading package base ... linking ... done.
Loading package array-0.1.0.0 ... linking ... done.
Loading package packedstring-0.1.0.0 ... linking ... done.
Loading package containers-0.1.0.1 ... linking ... done.
Loading package pretty-1.0.0.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package old-locale-1.0.0.0 ... linking ... done.
Loading package old-time-1.0.0.0 ... linking ... done.
Loading package filepath-1.1.0.0 ... linking ... done.
Loading package directory-1.0.0.0 ... linking ... done.
Loading package mtl-1.1.0.1 ... linking ... done.
Loading package unix-2.3.0.0 ... linking ... done.
Loading package process-1.0.0.0 ... linking ... done.
Loading package random-1.0.0.0 ... linking ... done.
Loading package derive-0.1.1 ... linking ... done.
ghc-6.8.2: panic! (the 'impossible' happened)
(GHC version 6.8.2 for i386-unknown-linux):
TcPat.checkArgs
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
```
Matt Morrow has reproduced this in a ghc 6.10 prelease.
I don't particularly need a derived Enum instance for Void, but the error message told me to report a bug.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.8.2 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"ghc panic TcPat.checkArgs","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.2","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"This program using the `derive` package:\r\n\r\n{{{\r\n{-# LANGUAGE TemplateHaskell, EmptyDataDecls #-}\r\nimport Data.DeriveTH\r\nimport Data.Derive.Enum\r\ndata Void\r\n$(derive makeEnum ''Void)\r\n}}}\r\n\r\nproduces a compiler panic:\r\n\r\n{{{\r\nrwbarton@functor:~/code/haskell$ ghc --make panic\r\n[1 of 1] Compiling Main ( panic.hs, panic.o )\r\nLoading package base ... linking ... done.\r\nLoading package array-0.1.0.0 ... linking ... done.\r\nLoading package packedstring-0.1.0.0 ... linking ... done.\r\nLoading package containers-0.1.0.1 ... linking ... done.\r\nLoading package pretty-1.0.0.0 ... linking ... done.\r\nLoading package template-haskell ... linking ... done.\r\nLoading package old-locale-1.0.0.0 ... linking ... done.\r\nLoading package old-time-1.0.0.0 ... linking ... done.\r\nLoading package filepath-1.1.0.0 ... linking ... done.\r\nLoading package directory-1.0.0.0 ... linking ... done.\r\nLoading package mtl-1.1.0.1 ... linking ... done.\r\nLoading package unix-2.3.0.0 ... linking ... done.\r\nLoading package process-1.0.0.0 ... linking ... done.\r\nLoading package random-1.0.0.0 ... linking ... done.\r\nLoading package derive-0.1.1 ... linking ... done.\r\nghc-6.8.2: panic! (the 'impossible' happened)\r\n (GHC version 6.8.2 for i386-unknown-linux):\r\n\tTcPat.checkArgs\r\n\r\nPlease report this as a GHC bug: http://www.haskell.org/ghc/reportabug\r\n}}}\r\n\r\nMatt Morrow has reproduced this in a ghc 6.10 prelease.\r\n\r\nI don't particularly need a derived Enum instance for Void, but the error message told me to report a bug.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2668Standalone deriving doesn't do newtype deriving properly2019-07-07T19:07:26ZryaniStandalone deriving doesn't do newtype deriving properlyI'd expect the following two declarations to have identical behavior:
```
newtype S1 x y a = S1 (M S x y a) deriving IxMonad
newtype S2 x y a = S2 (M S x y a)
deriving instance IxMonad S2
```
Results:
```
$ ghc-6.11.20081005 -c deriv...I'd expect the following two declarations to have identical behavior:
```
newtype S1 x y a = S1 (M S x y a) deriving IxMonad
newtype S2 x y a = S2 (M S x y a)
deriving instance IxMonad S2
```
Results:
```
$ ghc-6.11.20081005 -c deriving.hs
deriving.hs:15:0:
Can't make a derived instance of `IxMonad S2'
(even with cunning newtype deriving:
the representation type has wrong kind)
In the stand-alone deriving instance for `IxMonad S2'
```
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.11 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Standalone deriving doesn't do newtype deriving properly","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.11","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"I'd expect the following two declarations to have identical behavior:\r\n{{{\r\nnewtype S1 x y a = S1 (M S x y a) deriving IxMonad\r\n\r\nnewtype S2 x y a = S2 (M S x y a)\r\nderiving instance IxMonad S2\r\n}}}\r\n\r\nResults:\r\n{{{\r\n$ ghc-6.11.20081005 -c deriving.hs\r\n\r\nderiving.hs:15:0:\r\n Can't make a derived instance of `IxMonad S2'\r\n (even with cunning newtype deriving:\r\n the representation type has wrong kind)\r\n In the stand-alone deriving instance for `IxMonad S2'\r\n}}}\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2663STM crash with -N2+2019-07-07T19:07:27ZSimon MarlowSTM crash with -N2+The `conc049` and `conc052` tests both crash occasionally when run on multiple processors. I haven't been able to get any useful debugging info yet, they both refuse to crash with `-debug`.
<details><summary>Trac metadata</summary>
| T...The `conc049` and `conc052` tests both crash occasionally when run on multiple processors. I haven't been able to get any useful debugging info yet, they both refuse to crash with `-debug`.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | -------------- |
| Version | 6.11 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Runtime System |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"STM crash with -N2+","status":"New","operating_system":"","component":"Runtime System","related":[],"milestone":"6.10.2","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.11","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"The `conc049` and `conc052` tests both crash occasionally when run on multiple processors. I haven't been able to get any useful debugging info yet, they both refuse to crash with `-debug`.\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2637conc032(threaded2) fails with "thread blocked indefinitely"2019-07-07T19:07:34ZSimon Marlowconc032(threaded2) fails with "thread blocked indefinitely"There's a race condition in `throwTo` where the target thread is running but just about to complete, so we end up with the source thread blocked on a `ThreadFinished` thread, and this is never noticed.
<details><summary>Trac metadata</s...There's a race condition in `throwTo` where the target thread is running but just about to complete, so we end up with the source thread blocked on a `ThreadFinished` thread, and this is never noticed.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | -------------- |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Runtime System |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"conc032(threaded2) fails with \"thread blocked indefinitely\"","status":"New","operating_system":"","component":"Runtime System","related":[],"milestone":"6.10.1","resolution":"Unresolved","owner":{"tag":"OwnedBy","contents":"simonmar"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"There's a race condition in `throwTo` where the target thread is running but just about to complete, so we end up with the source thread blocked on a `ThreadFinished` thread, and this is never noticed.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2636Error message for missing import substantially worse in 6.9/6.112019-07-07T19:07:35ZNeil MitchellError message for missing import substantially worse in 6.9/6.11Creating a file Test.hs:
```
import Foo
main = print "hello"
```
where Foo does not exist, used to give a really nice error (with 6.8.3) but with 6.9 and 6.11 gives a horrible error message:
```
$ runghc Test
*** Exception: Could not ...Creating a file Test.hs:
```
import Foo
main = print "hello"
```
where Foo does not exist, used to give a really nice error (with 6.8.3) but with 6.9 and 6.11 gives a horrible error message:
```
$ runghc Test
*** Exception: Could not find module `Foo':
Use -v to see a list of the files searched for.
$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.11.20080929
```
Compared to version 6.8.3:
```
$ runghc Test.hs
Test.hs:2:7:
Could not find module `Foo':
Use -v to see a list of the files searched for.
```
A much nicer error, importantly saying where the import was - in my case the import was in an imported module, so I didn't even know which file was causing the error.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.9 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Error message for missing import substantially worse in 6.9/6.11","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.9","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"Creating a file Test.hs:\r\n\r\n{{{\r\nimport Foo\r\nmain = print \"hello\"\r\n}}}\r\n\r\nwhere Foo does not exist, used to give a really nice error (with 6.8.3) but with 6.9 and 6.11 gives a horrible error message:\r\n\r\n{{{\r\n$ runghc Test\r\n*** Exception: Could not find module `Foo':\r\n Use -v to see a list of the files searched for.\r\n$ ghc --version\r\nThe Glorious Glasgow Haskell Compilation System, version 6.11.20080929\r\n}}}\r\n\r\nCompared to version 6.8.3:\r\n\r\n{{{\r\n$ runghc Test.hs\r\n\r\nTest.hs:2:7:\r\n Could not find module `Foo':\r\n Use -v to see a list of the files searched for.\r\n}}}\r\n\r\nA much nicer error, importantly saying where the import was - in my case the import was in an imported module, so I didn't even know which file was causing the error.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2632Template Haskell confused by operator fixity2019-07-07T19:07:36ZSimon Peyton JonesTemplate Haskell confused by operator fixityReported by JCAB
```
{-# LANGUAGE TemplateHaskell #-}
module MkData where
import Language.Haskell.TH
import Language.Haskell.TH.Syntax
op a b = a + b
decl = [d| func = 0 `op` 3 |]
```
Works with 6.8.3, but with the 6.10 beta, it die...Reported by JCAB
```
{-# LANGUAGE TemplateHaskell #-}
module MkData where
import Language.Haskell.TH
import Language.Haskell.TH.Syntax
op a b = a + b
decl = [d| func = 0 `op` 3 |]
```
Works with 6.8.3, but with the 6.10 beta, it dies with the strange message
```
C:\Users\JCAB\Haskell\THTest>ghc --make main.hs
[1 of 2] Compiling MkData ( MkData.hs, MkData.o )
attempting to use module `main:MkData' (.\MkData.hs) which is not loaded
```
When looking up `op`, GHC doesn't find the fixity correctly. (SLPJ comment: having looked at the code in `RnEnv.lookupFixity` I can't see how 6.8.3 works!)
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------------------------ |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | jcab.lists@JCABs-Rumblings.com |
| Operating system | Unknown |
| Architecture | Unknown |
</details>
<!-- {"blocked_by":[],"summary":"Template Haskell confused by operator fixity","status":"New","operating_system":"Unknown","component":"Compiler","related":[],"milestone":"6.10.1","resolution":"Unresolved","owner":{"tag":"OwnedBy","contents":"simonpj"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"Unknown","cc":["jcab.lists@JCABs-Rumblings.com"],"type":"Bug","description":"Reported by JCAB\r\n{{{\r\n{-# LANGUAGE TemplateHaskell #-}\r\nmodule MkData where\r\n\r\nimport Language.Haskell.TH\r\nimport Language.Haskell.TH.Syntax\r\n\r\nop a b = a + b\r\n\r\ndecl = [d| func = 0 `op` 3 |]\r\n}}}\r\nWorks with 6.8.3, but with the 6.10 beta, it dies with the strange message \r\n{{{\r\nC:\\Users\\JCAB\\Haskell\\THTest>ghc --make main.hs\r\n[1 of 2] Compiling MkData ( MkData.hs, MkData.o )\r\nattempting to use module `main:MkData' (.\\MkData.hs) which is not loaded\r\n}}}\r\nWhen looking up `op`, GHC doesn't find the fixity correctly. (SLPJ comment: having looked at the code in `RnEnv.lookupFixity` I can't see how 6.8.3 works!)","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2594Wrong size for Int in arguments to functions wrapped to FunPtr by FFI wrapper...2019-07-07T19:07:46ZshahnWrong size for Int in arguments to functions wrapped to FunPtr by FFI wrappers (on 64-bit machine)An operation
```
foo :: Int -> IO ()
```
is wrapped to a function pointer `ptr :: FunPtr (Int -> IO ())` (via an FFI wrapper). If you pass this pointer to a C function, that calls it with a negative parameter (e.g. -1), the operation...An operation
```
foo :: Int -> IO ()
```
is wrapped to a function pointer `ptr :: FunPtr (Int -> IO ())` (via an FFI wrapper). If you pass this pointer to a C function, that calls it with a negative parameter (e.g. -1), the operation is executed with a positive parameter (something near
`4294967295 ( == 2 ^ 32 - 1)`).
This works correctly on x86 (32-bit).
See attachment for an example.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | -------------- |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | x86_64 (amd64) |
</details>
<!-- {"blocked_by":[],"summary":"Wrong size for Int in arguments to functions wrapped to FunPtr by FFI wrappers (on 64-bit machine)","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"x86_64 (amd64)","cc":[""],"type":"Bug","description":"An operation\r\n{{{\r\n foo :: Int -> IO ()\r\n}}}\r\nis wrapped to a function pointer {{{ptr :: FunPtr (Int -> IO ())}}} (via an FFI wrapper). If you pass this pointer to a C function, that calls it with a negative parameter (e.g. -1), the operation is executed with a positive parameter (something near \r\n{{{4294967295 ( == 2 ^ 32 - 1)}}}).\r\n\r\nThis works correctly on x86 (32-bit).\r\n\r\nSee attachment for an example.\r\n\r\n\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2589ghci fails in ByteCodeGen.lhs with "nonexhaustive patterns in case"2019-07-07T19:07:47Zgwright@antiope.comghci fails in ByteCodeGen.lhs with "nonexhaustive patterns in case"When loading the attached file into ghci, it fails with:
```
redwing-dakota> ghci
GHCi, version 6.8.3: http://www.haskell.org/ghc/ :? for help
Loading package base ... linking ... done.
Prelude> :load Vector.hs
[1 of 1] Compiling Data....When loading the attached file into ghci, it fails with:
```
redwing-dakota> ghci
GHCi, version 6.8.3: http://www.haskell.org/ghc/ :? for help
Loading package base ... linking ... done.
Prelude> :load Vector.hs
[1 of 1] Compiling Data.Vector.Shore.Internal ( Vector.hs, interpreted )
*** Exception: ghci/ByteCodeGen.lhs:(1214,5)-(1221,34): Non-exhaustive patterns in case
>
```
Compiling the file is successful:
```
redwing-dakota> ghc -c Vector.hs
redwing-dakota>
```
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | MacOS X |
| Architecture | x86 |
</details>
<!-- {"blocked_by":[],"summary":"ghci fails in ByteCodeGen.lhs with \"nonexhaustive patterns in case\"","status":"New","operating_system":"MacOS X","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"x86","cc":[""],"type":"Bug","description":"When loading the attached file into ghci, it fails with:\r\n\r\n{{{\r\nredwing-dakota> ghci\r\nGHCi, version 6.8.3: http://www.haskell.org/ghc/ :? for help\r\nLoading package base ... linking ... done.\r\nPrelude> :load Vector.hs\r\n[1 of 1] Compiling Data.Vector.Shore.Internal ( Vector.hs, interpreted )\r\n*** Exception: ghci/ByteCodeGen.lhs:(1214,5)-(1221,34): Non-exhaustive patterns in case\r\n\r\n> \r\n\r\n}}}\r\n\r\n\r\nCompiling the file is successful:\r\n\r\n{{{\r\nredwing-dakota> ghc -c Vector.hs\r\nredwing-dakota> \r\n}}}\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2566"ghc -c foo.bar" silently does nothing2019-07-07T19:07:54ZIan Lynagh <igloo@earth.li>"ghc -c foo.bar" silently does nothing`ghc -c foo.bar` silently does nothing. It thinks that `foo.bar` is an extra file to link, but `-c` means "do not link".
Instead, it should give an error (or at the very least, a warning).
<details><summary>Trac metadata</summary>
| T...`ghc -c foo.bar` silently does nothing. It thinks that `foo.bar` is an extra file to link, but `-c` means "do not link".
Instead, it should give an error (or at the very least, a warning).
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Driver |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | Unknown |
| Architecture | Unknown |
</details>
<!-- {"blocked_by":[],"summary":"\"ghc -c foo.bar\" silently does nothing","status":"New","operating_system":"Unknown","component":"Driver","related":[],"milestone":"6.10.1","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"Unknown","cc":[""],"type":"Bug","description":"`ghc -c foo.bar` silently does nothing. It thinks that `foo.bar` is an extra file to link, but `-c` means \"do not link\".\r\n\r\nInstead, it should give an error (or at the very least, a warning).\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2499OPTIONS pragma silently ignored2019-07-07T19:08:18ZSimon Peyton JonesOPTIONS pragma silently ignored```
{-# OPTIONS_GHC -package blarg #-}
module Foo where
f x = x
```
This compiles, but it shouldn't because there is no such package. AND because `-package` is not an acceptable OPTIONS flag in a module.
<details><summary>Trac metadat...```
{-# OPTIONS_GHC -package blarg #-}
module Foo where
f x = x
```
This compiles, but it shouldn't because there is no such package. AND because `-package` is not an acceptable OPTIONS flag in a module.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | Unknown |
| Architecture | Unknown |
</details>
<!-- {"blocked_by":[],"summary":"OPTIONS pragma silently ignored","status":"New","operating_system":"Unknown","component":"Compiler","related":[],"milestone":"6.10.1","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"Unknown","cc":[""],"type":"Bug","description":"{{{\r\n{-# OPTIONS_GHC -package blarg #-}\r\nmodule Foo where\r\n\r\nf x = x\r\n}}}\r\n\r\nThis compiles, but it shouldn't because there is no such package. AND because `-package` is not an acceptable OPTIONS flag in a module.\r\n\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2497Weird scoping for tyvars in rules2019-07-07T19:08:19Zrl@cse.unsw.edu.auWeird scoping for tyvars in rulesThis rule:
```
{-# RULES "id" forall (x :: a). id x = x #-}
```
compiles fine with no `LANGUAGE` options but fails if I add `Rank2Types`:
```
Not in scope: type variable `a'
```
It compiles fine again if I additionally include `Scope...This rule:
```
{-# RULES "id" forall (x :: a). id x = x #-}
```
compiles fine with no `LANGUAGE` options but fails if I add `Rank2Types`:
```
Not in scope: type variable `a'
```
It compiles fine again if I additionally include `ScopedTypeVariables`. This looks wrong to me.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | Unknown |
| Architecture | Unknown |
</details>
<!-- {"blocked_by":[],"summary":"Weird scoping for tyvars in rules","status":"New","operating_system":"Unknown","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"Unknown","cc":[""],"type":"Bug","description":"This rule:\r\n\r\n{{{\r\n{-# RULES \"id\" forall (x :: a). id x = x #-}\r\n}}}\r\n\r\ncompiles fine with no `LANGUAGE` options but fails if I add `Rank2Types`:\r\n\r\n{{{\r\nNot in scope: type variable `a'\r\n}}}\r\n\r\nIt compiles fine again if I additionally include `ScopedTypeVariables`. This looks wrong to me.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2453users_guide/syntax-extns.html # 8.3.3, control.monad doc, etc, have obsolete ...2019-07-07T19:08:30Zguestusers_guide/syntax-extns.html # 8.3.3, control.monad doc, etc, have obsolete refs to www.cse.ogi.eduhttp://www.haskell.org/ghc/docs/latest/html/users_guide/syntax-extns.html
reads:
"The web page: http://www.cse.ogi.edu/PacSoft/projects/rmb/ contains up to date information on recursive monadic bindings. "
That web page no longer exis...http://www.haskell.org/ghc/docs/latest/html/users_guide/syntax-extns.html
reads:
"The web page: http://www.cse.ogi.edu/PacSoft/projects/rmb/ contains up to date information on recursive monadic bindings. "
That web page no longer exists. Please update the link, or remove it.
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------- |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Documentation |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | Unknown |
| Architecture | Unknown |
</details>
<!-- {"blocked_by":[],"summary":"users_guide/syntax-extns.html # 8.3.3 has obsolete ref to www.cse.ogi.edu/PacSoft/","status":"New","operating_system":"Unknown","component":"Documentation","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"Unknown","cc":[""],"type":"Bug","description":"http://www.haskell.org/ghc/docs/latest/html/users_guide/syntax-extns.html\r\n\r\nreads:\r\n \r\n\r\n\"The web page: http://www.cse.ogi.edu/PacSoft/projects/rmb/ contains up to date information on recursive monadic bindings. \"\r\n\r\nThat web page no longer exists. Please update the link, or remove it.","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>https://gitlab.haskell.org/ghc/ghc/-/issues/2411RaiseAsync and STM segfault with stop_at_atomically in some circumstances.2019-07-07T19:08:42ZsclvRaiseAsync and STM segfault with stop_at_atomically in some circumstances.x86_64 6.9 build from June 15. I can't distill it down to a single simple testcase, but the backtrace is very informative:
ASSERTION FAILED: file RaiseAsync.c, line 1015
The assertion in question is "ASSERT(stmGetEnclosingTRec(tso-\>tr...x86_64 6.9 build from June 15. I can't distill it down to a single simple testcase, but the backtrace is very informative:
ASSERTION FAILED: file RaiseAsync.c, line 1015
The assertion in question is "ASSERT(stmGetEnclosingTRec(tso-\>trec) == NO_TREC)".
This assertion is only called when we hit an ATOMICALLY_FRAME with stop_at_atomically activated.
We only do that when Schedule.c is running the garbage collector and raises an exception to retry an invalid stm transaction. I don't follow enough here to offer a real patch, but obviously there is a false assumption that the transaction we're trying to retry does not have an enclosing trec. Why this may be the case is somewhat beyond me. I'm doing various things with unsafeIOToSTM, so I think the answer may be that there is some sort of forking going on with threaded IO which means that threads may have enclosing trecs.
```
#0 0x00002b134fdb9b45 in raise () from /lib64/libc.so.6
#1 0x00002b134fdbb0e0 in abort () from /lib64/libc.so.6
#2 0x00000000009b40e0 in rtsFatalInternalErrorFn (s=0xa2c670 "ASSERTION FAILED: file %s, line %u\n",
ap=0x41000e50) at RtsMessages.c:164
#3 0x00000000009b3ca4 in barf (s=0xa2c670 "ASSERTION FAILED: file %s, line %u\n") at RtsMessages.c:40
#4 0x00000000009b3cfe in _assertFail (filename=0xa3200c "RaiseAsync.c", linenum=1015)
at RtsMessages.c:55
#5 0x00000000009e4675 in raiseAsync (cap=0xd734a0, tso=0x2b1351bdb000, exception=0x0,
stop_at_atomically=rtsTrue, stop_here=0x0) at RaiseAsync.c:1015
#6 0x00000000009e365b in throwToSingleThreaded_ (cap=0xd734a0, tso=0x2b1351bdb000, exception=0x0,
---Type <return> to continue, or q <return> to quit---
stop_at_atomically=rtsTrue, stop_here=0x0) at RaiseAsync.c:73
#7 0x00000000009b6b51 in scheduleDoGC (cap=0xd734a0, task=0xd8e750, force_major=rtsFalse)
at Schedule.c:2046
#8 0x00000000009b5a9d in schedule (initialCapability=0xd734a0, task=0xd8e750) at Schedule.c:718
#9 0x00000000009b77db in workerStart (task=0xd8e750) at Schedule.c:2537
#10 0x00002b134fb73020 in start_thread () from /lib64/libpthread.so.0
#11 0x00002b134fe4df8d in clone () from /lib64/libc.so.6
#12 0x0000000000000000 in ?? ()
```
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.8.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | Unknown |
| Architecture | Unknown |
</details>
<!-- {"blocked_by":[],"summary":"RaiseAsync and STM segfault with stop_at_atomically in some circumstances.","status":"New","operating_system":"Unknown","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.8.3","keywords":[],"differentials":[],"test_case":"","architecture":"Unknown","cc":[""],"type":"Bug","description":"x86_64 6.9 build from June 15. I can't distill it down to a single simple testcase, but the backtrace is very informative:\r\n\r\nASSERTION FAILED: file RaiseAsync.c, line 1015\r\n\r\nThe assertion in question is \"ASSERT(stmGetEnclosingTRec(tso->trec) == NO_TREC)\".\r\nThis assertion is only called when we hit an ATOMICALLY_FRAME with stop_at_atomically activated.\r\n\r\nWe only do that when Schedule.c is running the garbage collector and raises an exception to retry an invalid stm transaction. I don't follow enough here to offer a real patch, but obviously there is a false assumption that the transaction we're trying to retry does not have an enclosing trec. Why this may be the case is somewhat beyond me. I'm doing various things with unsafeIOToSTM, so I think the answer may be that there is some sort of forking going on with threaded IO which means that threads may have enclosing trecs.\r\n\r\n{{{\r\n#0 0x00002b134fdb9b45 in raise () from /lib64/libc.so.6\r\n#1 0x00002b134fdbb0e0 in abort () from /lib64/libc.so.6\r\n#2 0x00000000009b40e0 in rtsFatalInternalErrorFn (s=0xa2c670 \"ASSERTION FAILED: file %s, line %u\\n\", \r\n ap=0x41000e50) at RtsMessages.c:164\r\n#3 0x00000000009b3ca4 in barf (s=0xa2c670 \"ASSERTION FAILED: file %s, line %u\\n\") at RtsMessages.c:40\r\n#4 0x00000000009b3cfe in _assertFail (filename=0xa3200c \"RaiseAsync.c\", linenum=1015)\r\n at RtsMessages.c:55\r\n#5 0x00000000009e4675 in raiseAsync (cap=0xd734a0, tso=0x2b1351bdb000, exception=0x0, \r\n stop_at_atomically=rtsTrue, stop_here=0x0) at RaiseAsync.c:1015\r\n#6 0x00000000009e365b in throwToSingleThreaded_ (cap=0xd734a0, tso=0x2b1351bdb000, exception=0x0, \r\n---Type <return> to continue, or q <return> to quit---\r\n stop_at_atomically=rtsTrue, stop_here=0x0) at RaiseAsync.c:73\r\n#7 0x00000000009b6b51 in scheduleDoGC (cap=0xd734a0, task=0xd8e750, force_major=rtsFalse)\r\n at Schedule.c:2046\r\n#8 0x00000000009b5a9d in schedule (initialCapability=0xd734a0, task=0xd8e750) at Schedule.c:718\r\n#9 0x00000000009b77db in workerStart (task=0xd8e750) at Schedule.c:2537\r\n#10 0x00002b134fb73020 in start_thread () from /lib64/libpthread.so.0\r\n#11 0x00002b134fe4df8d in clone () from /lib64/libc.so.6\r\n#12 0x0000000000000000 in ?? ()\r\n}}}\r\n","type_of_failure":"OtherFailure","blocking":[]} -->6.10.1Ian Lynagh <igloo@earth.li>Ian Lynagh <igloo@earth.li>