Dialyzer不喜欢在基本模块中调用函数。是否有透析器标志来跳过此错误或我做错了。
以下是类似的代码:
-module(base).
-export(foo/1).
foo(X) -> X*2.
-module(derived).
-extends(base).
-export(xyz/0).
xyz() ->
?MODULE:foo(5).
这段代码可以正常工作。我唯一关心的是透析器警告;
---。erl:41:调用缺失或未导出的函数---:--- / 3
我做错了什么或是透析器发出不必要的警告?
答案 0 :(得分:3)
Dialyzer不支持扩展模块,也没有这种扩展的计划。据我所知,模块继承甚至不是Erlang的官方特性。
...对不起