Illegal Instruction when running byte operations in ghci
On a Debian armel machine I started ghci through cabal repl
in bytes-0.15.2 an run the following commands, which reproducibly (for me) run into a crash:
> :m Data.Word Data.Binary.Put Data.Bits Data.Bytes.Put
> runPut $ Data.Bytes.Put.putWord8 1
"\SOH"
-- Exactly the same again:
> runPut $ Data.Bytes.Put.putWord8 1
"Illegal instruction
Using Data.Binary.Put.putWord8
instead of Data.Bytes.Put.putWord8
doesn't lead to a crash, even though the only difference between the two is that the bytes version is an instance method.
Using an installed version of bytes
instead of compiling it with GHCi (in my case with cabal repl
) doesn't crash.
Some strange reactions during debugging this lead me to believe, that running some calculations between the two shown above can avert the crash, but I couldn't figure out, what exactly had to be done.
Trac metadata
Trac field | Value |
---|---|
Version | 7.10.3 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | GHCi |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |