zip 2自定义类型列表时的分段错误

时间:2015-10-14 17:18:15

标签: haskell

Parallella的GHCi 7.10.2下,我定义了一个派生Peg的数据类型Show。 当我尝试压缩两个Peg列表时,我遇到了分段错误。 有人有任何线索吗?

sid@linaro-nano:~CIS192/hw_2$ ghci
GHCi, version 7.10.2: http://haskell.org/ghc/  :? for help
Prelude>
Prelude>
Prelude> data Peg = Red | Green deriving (Show)
Prelude> zip [Red, Red] [Green, Green]
[(Red,Green),(Segmentation fault

1 个答案:

答案 0 :(得分:3)

扩展Reid Barton的评论:

a serious bug GHC对ARM CPU的支持,与ARM有两种不同的指令集模式(Arm和Thumb)。 GCC编译的运行时系统和LLVM编译的库/用户代码使用不同的默认选择。 GHCi的运行时链接器没有正确理解它们,从一种模式下编写的代码跳转到另一种模式编写的代码时会导致崩溃。

该错误刚刚修复(基本上强制Arm模式无处不在),修复应该在即将发布的GHC 7.10.3和8.0.1版本中。