是什么导致Mercury中的函子“ field_name / 1”的参数类型错误?

时间:2019-03-18 19:32:44

标签: mercury

编译源代码时,出现以下错误:在函子`source / 1'的参数中键入错误

编译器可以正确确定参数的类型,但仍会尝试使用其他记录中的字段。

怎么了?

1 个答案:

答案 0 :(得分:0)

问题是所使用的数据类型缺少':-include_module'。即使您没有指定模块,编译器也知道类型是什么。

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

my_functor(Val1,Val2,Val3)=变量

编译器清楚地告诉我my_functor尚未定义。在此特定实例中,“源”字段在两个不同模块中以两个不同结构命名,其中一个被导入,从而使错误消息更加混乱。