【问题标题】:What causes type error in argument(s) of functor `field_name/1' in Mercury?是什么导致 Mercury 中函子“field_name/1”的参数类型错误?
【发布时间】:2019-08-09 06:15:29
【问题描述】:

当我编译我的源代码时,我收到以下错误:在仿函数 `source/1' 的参数中键入错误

编译器正确确定了参数的类型,但不断尝试使用不同记录中的字段。

怎么了?

【问题讨论】:

  • 你的源代码是什么?

标签: mercury


【解决方案1】:

问题是正在使用的数据类型缺少“:-include_module”。编译器知道类型是什么,即使你没有指定模块。

我通过使用更详细的语法找到了答案:

my_functor(Val1, Val2, Val3) = 变量

编译器清楚地告诉我 my_functor 没有定义。在这个特定的例子中,“源”字段在两个不同模块中的两个不同结构中命名,其中一个是导入的,这使得错误消息更加混乱。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 2022-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多