【发布时间】:2018-12-15 21:27:07
【问题描述】:
我正在尝试从源代码编译 Elm 编译器,但遇到了一个奇怪的问题。我已经成功地通过stack build 构建了它。但是,当我尝试stack ghci 时,它在许多将foreign 用作变量/绑定名称的地方都失败了。例如:
/Users/saurabhnanda/projects/compiler/builder/src/File/Compile.hs:142:50: error:
parse error on input ‘foreign’
|
142 | makeImports project (Plan.Info _ _ _ clean dirty foreign) =
| ^^^^^^^
Failed, 141 modules loaded.
看来foreign确实是reserved keyword。什么解释了这种行为,即在 stack build 中工作但在 stack ghci 中抛出解析错误?
【问题讨论】:
-
也许 ffi / foreignfunctioninterface 扩展名是由
stack ghci设置的 -
您使用的是什么版本的 GHC? 8.4/8.6 根本不允许我有名为
foreign的变量。 -
@Alec 8.4.3 我上次检查时。